1 00:00:02,700 --> 00:00:05,090 alright we have a lot of fun material to cover today so let's get started we start with a few basic questions about well first is a topology question what is a handle in general a handle is really a transformation on the surface I thought I would demonstrate in the context of glassblowing so this is what it looks like you're making a cup you take some hot glass you attach it to your surface you cut it off your hot pipe and then you bring it around and attach it to another point and so that's that's a handle you've probably used handles before in real life in general or in the mathematical setting it's the same thing but in on a 2d surface so you have imagined you have some 2d surface you take two discs like regions on the surface and then you attach on a handle something like that so it's an operation you can do to a surface and you can keep adding handles I don't think there's a clear way to say oh this is clearly a handle except to have added it as a handle in general the nice theorem for two-dimensional surfaces so here's a coffee cup being converted into a torus because it has genus one meaning it has essentially one handle in it in general you take any orientable surface without boundary that's locally two-dimensional then it will be a sphere plus some non-negative number of handles that's a the classification theorem for orientable surfaces it's only slightly more complicated for non orientable surfaces and then 3d surfaces are even harder I'm just only recently solved but this is 2d with two-dimensional surfaces which is easy and clean there is an ax there is a way to compute genus and in some sense learn how many handles are there but it's there isn't a unique thing of oh this part is clearly a hand when you draw it this way it kind of becomes clear this is a handle this is a handle but there isn't a formal sense in which I don't know this thing is not a handle or some some weird thing I think that's all about handles hopefully that answers things of course things get more complicated when you have boundary which we usually call holes but the next question is about holes in the unfoldings and so I claim that convex polyhedra when you unfold them never have holes in the unfolded form and this is to contrast this example which is not convex but you can unfold it by cutting these two edges and you got a little hole so I showed this in lecture and natural question is why isn't as possible in for convex polyhedra so I thought I would prove that and the proof uses a cool theorem we'll probably be seeing again called the gas Benet theorem and it says that if you have some surface which is homeomorphic to a sphere so I don't want any handles for this theorem and of course convex polyhedra our sphere like they don't have handles and I take a bar in color I take a closed curve non-self intersecting closed curve on that surface that defines an interior and an exterior then what I what the gasp on a theorem says is that if you look at the curvature that's enclosed by the curve the total curvature by this closed curve on the surface and you add on the total turn angle along the curve so here the curves turning right here it's turning left right left left is positive write as- then these always add up to 360 degrees we're not going to prove this theorem but we're going to use it so this is a nice invariant for sphere like things it when you have handles this number changes i think it's 0 for a torus well i won't try to guess it because it's a little bit subtle to get right one fun consequence of this let's just get warmed up suppose you take a sphere like object and you take a closed curve this is going to be pretty abstract in this direction then it says okay the total amount of curvature in here plus the total turn angle equals 360 now suppose that i turn the curve around so i just reverse the direction like this and so now the interior is this stuff out here and then we get that the total curvature outside the curve plus the total turn angle of the blue thing equals 360 if i add those two equations together the total turn angle cancels because wherever red turns left blue turns right and so this term disappears and so what we get is that the total curvature inside the curve plus the total curvature outside the curve equals 7 20 this is a nice topological invariant of of sphere like polyhedra you add up the total curvature everywhere didn't really matter what the curve was you always get 720 and so this is kind of neat for convex polyhedra this means you have to somehow divvy up this curvature because all curvatures are positive so 720 somehow spread around but you have to add exactly that much for negative curve for affects things you can have some negative curvature that balances out a lot of positive curvature so you can have a lot of both but you have almost the same amount of each you just you have exactly seven twenty excess so that's just a fun fact we'll be using that in the future I think okay that was Gauss Benet now let's use it to prove that this can't happen for a convex polyhedron so the idea is suppose you have an unfolding with a hole in it then so this is the surface out here then I'm going to take a closed curve that walks around the hole but stays inside the unfolding and then of course I'm visualizing that really on the polyhedron okay so that I want the interior of the curve to enclose the whole or what becomes the hole now what we learned from gas benét is that the curvature enclosed by this thing plus the total turn angle of the curve equals 360 the total turn angle of the curve is 360 right it's it's a planar walk here so turn angle total turn here is 360 degrees now if we have a convex polyhedron then this curvature has to be non-negative well I mean sorry in any case here at this curvature better equals 0 for convex polyhedra this is a sum of vertex curvatures for convex polyhedra every vertex has strictly positive curvature actually I mean the zero curvature vertices aren't vertices they're just points on the surface so for convex polyhedron if you're going to have zero total curvature that means you actually have no curvature so you have no vertices enclosed in here which is a contradiction that means there wasn't a whole to open up technically you could do something weird like I don't know let's take a cube you could say ok I'm going to make a couple cuts here that do nothing this is a kind of a weird situation add those cuts and then of course you could draw this curve around it and say oh yeah look I've got lots of zero curvature vertices inside here in general whenever you have zero curvature vertices you could always just suture them back up uncut them and there'd be no difference in the unfolding so you have to assume that you've already removed pointless cuts then there'll be no vertices in there and so then in fact there was no hole for convex polyhedra for non-convex polyhedra you can have a negative curvature vertex that balances out some positive curvature vertices and so the total curvature here equals 0 but you have three vertices and that just can't happen for convex ok next quick question is when we're talking about the cut locus and the ridge tree we drew some pictures the claim is that it was a spanning tree the polyhedron and in particular the leaves of the tree the degree 1 vertices are exactly the vertices of the polyhedron and this I hadn't actually realized this but in fact that is it depends it's not really literally true it's kind of spiritually true huh vertices in fact have unique shortest paths to X so remember we have some point X on the surface and we're looking at points like this one that have non-unique shortest paths to X this is if you grow the the fire around X where does the fire meat itself and it will meet itself along this edge because you could go around this way or go around this way and it's equal length path but at the vertex there's actually a unique way to go there that's the black line so technically this point is not on the ridge tree but all of these points are so this is kind of like a limiting point of the rich tree points so we think of it as being on the ridge tree I mean you could think of it as cut or not cut it doesn't really matter but you cut right next to it so effectively the same thing but it is a neat point a subtle point that these guys are do these guys have unique shortest paths whereas these do not still we cut all the way up to the Corner alright that is that so now we have a bunch of newer and more exciting things or updates that you haven't heard of one question that we mentioned was generalizing the star and source unfoldings and there's a new paper about this this is with my PhD advisor Anna labu and this is just a warm-up to get to get started so here we have a box take a point X and let's see here we have the source unfolding from X and here we have the star unfolding just for comparison's also kind of fun to see them side-by-side they're color-coded so where you cut is the ridge tree in this case and you end up gluing along the ridge tree in the star unfolding now we're going to generalize things a little bit in that we're going to generalize the source unfolding specifically so source unfolding you have a point X and you just sort of shoot shortest paths all from X and that's what you keep and you end up cutting along the ridge tree which the Voronoi diagram at this point so I'm going to generalize that a little bit and think of this as a tiny little circle and it in general what I'm going to do is the source unfolding outside the circle and so when the circle is really tiny it is just the source unfolding but in general i'm going to do the star unfolding inside the circle okay so in this case nothing changes but next example is going to be more general instead of being a single point here I'm going to take a geodesic arc a straight line on the surface so here's an example of that we have a square base pyramid we drew a straight line on the surface if you unfold it it would be straight we're thinking of having a little I think that's called a racetrack curve in mathematics around that straight line and I'm going to do star unfolding on the inside in this case there's no vertices on the inside so nothing happens and then we do source unfolding on the outside this is actually previously known to unfold bye work and others but we have a simpler proof essentially and we're going to generalize it more but what we do is the source unfolding on the outside so you take shortest paths from every point you take its shortest path to this this geodesic that's some of these blue lines show various shortest paths that's what you keep the ridge tree is the is if you light fire simultaneously along this entire segment where does it burn out and that's the purple stuff and yeah this is the complementary diagram where you do the sort of the reverse which would be the star unfolding on the outside source unfolding on the inside so you glue along the purple stuff instead of cutting along the purple stuff and this we conjecture doesn't overlap but we don't know all right so fine that looks easy and you can prove that this doesn't overlap before you proved it because you just had shortest paths emanating in all directions around X now you have a shortest paths emanating for 180 degrees of directions around this endpoint then they're all just straight and then they rotate around hundred eighty degrees here and then they're all just straight and so there can't be anything overlapping because you're just taking a continuum of these segments of varying lengths they don't overlap here they're all parallel here they sweep nicely in general if they always turn clockwise as you walk along the curve you're fine okay here's a more general one in general what we can prove is that if you have a convex curve on the surface so it always turns to the left I think technically the angle on the left-hand side is always less than or equal to 180 degrees you have to be a little careful what it means to turn the left when you hit a vertex you've got less than 360 total so what's to the left mean just means you've got less than 180 degrees of material on your left side so this is an example of a convex curves got some circular arcs we're no longer tracking along some up whenever we're no longer just doubling along some curve here we enclose a vertex which makes a little more exciting because now we're going to do star unfolding on the inside which remember was cutting along shortest paths from every vertex to your thing in this case your thing is no longer a point it is now this convex curve so let's say this is the shortest path here might be might be more than one choice but we're going to actually know right this is the shortest path this is a root two diagonal this is length one so we're going to cut along here and that's this dashed line so it got opened up here because we had two little material here we open it up but otherwise it acts the same in particular outside this red curve it's just source unfolding you've got all these shortest paths and again what we argue and I'm not going to prove it here is that all of these shortest paths keep turning clockwise and do so exactly 360 degrees there's some jumps when you hit these gaps and you have to kind of jump over them but still you have no collision and run over here is the reverse where we would star unfolds the outside of the convex curve because it's a convex curve inside and outside are different and source unfold on the inside and this week conjecture doesn't overlap oh we don't know how to prove it this thing is a generalization of the source unfolding because when this curve is super tiny it is a source unfolding this thing would be a generalization of the star unfolding but we don't know whether it works I think one more example here this is a way to generate convex curves you start from some point X and you design it you choose a direction so that if you go straight so this curve goes straight everywhere except X if you set it up right you come back to X so this in particular is a convex curve because it's straight everywhere except X and that exits convex and so in this case we enclose a few vertices on the inside we've got v3v 7b six so each of those caught ends up getting cut here in these green lines and so like this one is a very tiny cut we just cut there if v3 the other ones are a little bigger but they open up and I guess this is the well as a few different versions of the picture here but again you look at these shortest paths here they're all parallel here they sweep here they're all parallel here jump but it's kind of like just the same as sweeping doesn't hurt you then you they're all parallel then we jump then they're all parallel in this particular example but they will always precede clockwise around the curve which here is drawn red get split up a little bit but you can show because of that sweeping they won't hit each other and so you have non overlapping unfolding so that's this week all the Sun unfolding because because of the Rays that sweep around and because we have a convex curve is kind of like the Sun so that's a new unfolding the obvious open question is the reverse when you glue around the purple sides instead of the you just it's essentially if you instead of having a convex curve you have a reflex curve exactly the opposite what happens we don't know it's a lot harder to prove because in particular it's a lot harder to prove that the star unfolding doesn't overlap and you've got to include at least that proof in any generalization of it next topic of unfolding kind of related we call zipper unfolding so these are some examples of real felt models with the zipper the goal is I want to I want an unfolding that has a single zipper you just pull the zipper and it makes your polyhedron so this is an example of an octahedron this one is actually not even a polyhedron it is to has two pyramidal pockets in it and then it's actually closed off in the middle I think we have a little video here of what it looks like to open that octahedron so what does it take to have a single zipper line that on that connects everything together well if you think about it that means that the cuts that you make must follow a single path so we want in general the cuts form a tree and a convex polyhedron we want that tree to be just a path so it's like a Hamiltonian path it's got to visit all the vertices in some order and you'd like it to unfold with that overlap so is this always possible this is a paper this is a father son mother son son paper so this is my advisor again and her two sons although we'd like to say this is the paper with her three sons because I'm her academic son uh-huh or four if you count Marty too she was his advisor as well so here are some examples of good unfolding so we have the platonic solids these are just typical unfoldings these are all zipper unfoldings so we're cutting along edges along a Hamiltonian path it doesn't overlap they all have this kind of nice snake-like shape and so all platonic solids can be made by zipper edge unfoldings next we did Archimedean solids this is a lot more work but again you get these nice s like curves and they're all zipper unfoldings they're all possible they all have these Hamiltonian paths cuts and avoid overlap but you may notice there's one missing up there the great run by cosa dead Nickey Hedra and my favorite Archimedean solid and it has a rather different looking unfolding as far as we can tell there is no s-shaped one whatever that means but you have to have a tree these examples all had path like the dual graph was roughly a path I guess it branches a little bit here here it's very tree like I guess so all Archimedean solids can be done one open question next next category up is johnson solids which are all polyhedra made with regular polygon faces convex polyhedra made by regular polygonum faces those we don't know whether they always have zipper unfoldings but we do know there are some convex polyhedra like this rhombic dodecahedron that do not have zipper unfoldings if you're only cut on the long edges because this graph has no Hamiltonian path so never mind avoiding overlap there's some polyhedra that just aren't Hamiltonian there's no path of visits every vertex exactly once and only follows edges so there's nothing you could even hope to cut along and avoid overlap so that's bad news for edge unfoldings the big open question here is for general unfoldings if you're allowed to cut anywhere a convex surface and do things like the Sun unfolding I mean edge unfoldings are we don't know how to do them anyway so if you'll have general unfoldings we've got star and folding source unfolding Sun unfolding all sorts of things but none of them are zipper unfoldings they all cut along trees like star unfolding cuts along a star the source unfolding cuts along the ridge street which is going to be a very tree like thing can you always convert a tree cut into a path cut we've tried seems quite challenging so that's the open problem does every convex polyhedron have a general zipper unfolding edge unfolding is always too much to hope for so those are some fun some fun problems to think about like super unfolding so next topic oh right one more thing to show this is a very fun talk that we gave all five of us gave this talk at Canadian conference on computational geometry and one of the props in the talk was this cardboard box and in the middle of the talk it starts jiggling and actually initially only four of the co-authors were giving the talk because the fifth one was hiding inside the box and then in the middle of the talk he just jumps out and then starts speaking as if nothing happened there was a lot of fun at this point arla so no Jonah is in the box I was fairly small he's grown up a lot since but at the time he fit nicely into this cardboard box which was maybe I don't know this this big I think we gave him a book and a flashlight and stuff to do while he was in there waiting for his slides waiting for the cue to come out there we go so those aren't folding of the cube or a box in general all right next topic is going back to edge unfolding i like this comment i thought they were pretty obvious but now you've convinced me otherwise and some of the evidence for edgmont folding being difficult was this polyhedron which we proved has no edge unfolding I didn't say it in lecture but we call it edge unfolding because it cannot be unfolded this is actually the first example we came up with I mention it only because it has fewer faces we kind of like we usually show this one because it's triangulated and that's kind of cooler this one has convex face is still so it's still topologically convex and if i push these points in they would be the polyhedron would be convex but has fewer faces it has i guess six faces / hat times for hats so 24 faces for a while this was done in 99 it turns out at exactly the same time there was this paper by Tarasov called polyhedra with no natural unfolding the paper has no figures so i had to draw one I'll show you what it looks like it's just a cube and then at each corner of the cube you cut off the corner and then then pull the point out and they proved by a pretty similar argument I mean essentially you treat each of these as a hat it's kind of a very simple hat they happen to overlap the share edges but again because of these negative curvature vertices you have to cut through the hat and that cut has to keep going around eventually forms a cycle that's what that's what I saw proved in the same year 99 and then grew in bham famous geometry in Seattle just came up with some more example so he he initially wanted to make a star-shaped example star shape means that there's a single point namely the center where you can shine a light in all directions and the light reaches the entire interior of the polyhedron he didn't know about our which had examples so he took the Tarasov example made a dodecahedron and then it is star shaped I think ours are already star shaped so that's kind of fun like some scary underwater creature and then you learned about our paper and he said all right I want to get as few faces as possible so we had 26 was it 24 this one has only 13 faces and it's also it has tetrahedral well it's not exactly tetrahedral asymmetric because this bottom spike is different from the others but it's kind of like a tire sobs example down to its very minimal amounts also star-shaped and his conjecture is that if you have 12 faces or fewer there is no uh none foldable polyhedron so he says polyhedra with 12 faces are undone foldable me what I should want to one-up us open problem is to define undone foldable but we're up to three all right so that's some uh none foldable polyhedra and some conjecture done uh none foldable he drew this is fun to say and next result which is very recent is that this is with Zack able and myself that it is np-complete to decide given a polyhedron is it unfold the ball or uh none foldable by cutting along edges these are all cutting along edges and we reduce from this problem which comes from parallel computers actually or geometry in general you want to pack a bunch of squares into a square so you have squares of different sizes and you want to pack those squares into a given square is it possible yes or no sometimes it is sometimes it isn't this proof my you know by many people long at all is from three partition which is a problem we've seen I won't go through it but essentially it's kind of like the dis packing proof which I showed in lecture some time ago related to tree maker but you you set up this tiny space and you end up having to partition a bunch of your squares into groups each with the same some groups of size three so starting from this problem of square packing how do we convert it into an unfolding problem this is a rough idea of the construction so the big picture this is initially a polyhedron with boundary later on we'll remove the boundary so just imagine a square and in the square there's a tower the tower things are not drawn the scale here the tower is super tall these this little pipe thing is very narrow and also very long I think way even way longer than anything in this picture ok so now along the side of the tower so this is an unfolding like if you cut along these edges you get a plus sign this is the tower now this grid stuff is something that I haven't shown you yet but basically think of it as water it's very malleable it can cut be cut open in many different ways and essentially you don't have to worry about it being there it's like the glue that holds everything together but then there's these square faces bb1 up to be n these are the things you need to pack so our goal is to set things up that so when you take this tower out you have a square hole that is your target square shape and then on the side of the tower you've got all these squares basically those squares have to fit into that hole so it is square packing that is our goal now the challenge for that is to make all of this stuff I get out of the way and also for these squares normally when you unfold you're very constrained and how you lay out the faces you can cut here cut here but there's this discrete set of choices our goal is to design this stuff so these squares can just basically move willy-nilly without hitting each other it's not easy to do but that's the thing this is one big face on the outside this kind of l-shaped we didn't want to go all the way around for a couple reasons one is we need a place for things to get out but also we wanted this to be topologically convex so we didn't want to face that as a donut okay so what's the next part of the construction well if we can arrange for these guys to move willy-nilly that's these very thin lines we can just imagine that if the squares are somehow packed instead of having things overlapping like this you can route all of those paths to avoid crossings so as long as there's tiny gaps between all the squares which doesn't turn out to change the square packing problem very much you can do this and then there's another issue which is there's a lot of stuff here you've got to put it somewhere so you end up it's very very tiny so in some cases you have to do this kind of wiggling just to eat up length in certain settings it gets complicated so how do we do this Wiggly stuff well at the first level there's there's a very fine grid with very small squares here and if we and we set it up so that we can follow everything along a single path we can visit all of this grid stuff along a single path occasionally we will encounter squares but the path length between any two squares is so big that these squares have room to kind of stretch out as far away from each other as they need to go now these squares are not squares they are actually this construction which we call atoms looks like a weird set of pyramids or a set of towers but in fact there's many different ways to unfold this you know there's lots of different ways to cut it open and some of them go straight some of them turn left some of them turn right these are three of the unfoldings I forget there's a few dozen unfoldings that we need that all have the right parameters is this one's clearly turning left so it's going straight in a certain sense this is coming from a left turn and then going straight so there's lots of combinations here slightly different parodies and so on but the end effect is that if you have a big grid of these and you're following them in a path you can make that the if the path Beth does some turns on the surface but you can force it to do whatever turns you want in the unfolding it so you have complete freedom to move the squares around as I showed you you can avoid crossings and it all works out maybe one detail which I didn't mention is there's there's going to be a ton of extra stuff where does it go and yeah it's going to go in it's going to fill the pipe up basically it's going to push the pipe it's going to push these guys up somewhat and this thing is so tall that there's room to put all the excess stuff in here and it's also so tall that you can't just reach all the way out and put all the squares on the outside okay so you make that super super tall none of the square none of the squares fit in here because it's too narrow and none of the squares can get up to the top because it's too long so that's how it works now that was a polyhedron with boundary without boundary the construction is almost the same you just add some some extra stuff on the outside to make it a regular polyhedron homeomorphic to a sphere but in the end you have basically the same construction of this nice square the pipe and some other stuff you proof basically it doesn't matter so that is NP completeness of edge unfolding of topologically convex polyhedra even orthogonal polyhedra which is kind of nifty from last year yep if you actually want to unfold things if you want to build things out of paper the current best heuristic on folder is called pepakura it's a free download online probably windows only you can take some weird 3d model and it uses multiple pieces in general but you can add tabs and it's quite practical and then cut it out either manually or through computer-controlled sign cutter or something and then fold up your ear pieces when when a one-piece is unfolding is possible it will typically find it but it's not guaranteed I don't know exactly what algorithm uses but some combination of brute force and just cutting into multiple pieces when it fails alright next up we have band unfolding so I talk very briefly about been unfolding I thought I'd show you some pictures about it and so remember we're talking about volcano unfoldings which is when you cut along all the edges from a point or it sort of in the vertical thing been unfolding was when you had you had some side faces you kept those intact and cut everything else away so what I have show here this was an example of a band unfolding gone wrong I guess I like to see this is in general a prism annoyed we had a top polygon a here and then below it this polygon be took the convex hull which adds all these other edges and this is an example of a bad unfolding of a prisma toyed here's an example of a bad this is really a band unfolding that has gone wrong so imagine here the top polygon is this triangle bottom polygon is this triangle that nicely nests very easy example seemingly but for whatever reason we also added this cut and you can actually force that if I make this not quite a actually maybe it's not quite a triangle it's a quadrilateral yeah and this is slightly a quadrilateral so when you take the convex hull you get that edge and if you cut along that edge and then cut along here and cut along here and you know do the band unfolding thing we're not even drawing the bottom polygon here just the band itself overlaps which is annoying nonetheless so this is an old example but nonetheless we proved that there is always one plate there's at least one place to cut the band like here would work that will avoid overlap and this is some parts of the proof in general here we're looking at the inner polygons and we cut it somewhere and then we argue about where the cut it where that vertex goes if we open up all the angles which is what happens when you squash it flat and essentially in particular we argued this vertex must stay in the gray region like in the picture on the right so it can't it can't go up here and so in general if you look at how these things unfold if if you're lucky things will be convex when you open it this is always going to be good there's this weakly convex picture where when you close the ends it's not quite convex but only at one point this week all this this is troublesome sometimes this works sometimes it doesn't if you look at this example I believe it is in the weakly convex category but I haven't told you the other one is a spiral here if you draw a 90 degree angle from this last bar then this guy is on the wrong side of that 90 degree thing this thing can't happen so that's comforting and it's related to this property but these things can cause problems like in the previous picture and so you have to argue that there's there is a place to cut where you don't get this or if when you get it it's still ok and that that's a messy argument a lot of case analysis I won't go through it here I think I'd have one picture of a nicely working example this is I guess a general prisma toyed here we have a nice cutting that works the original question that someone here posed was what about prism woods so we know the band unfolds nicely what we don't know is can you attach the top polygon and the bottom polygon to the band and get an unfolding we don't know for example whether all prism toads have edge unfoldings because we don't know how to place the top and bottom things probably possible but really hard to figure out where they would go a simpler problem is prison mines so if which this is this meant actually be a prison wine if you know that all of these edges are parallel initially so it's very nice situation then that's a more special case from prisma toys then maybe you could attach the interface in the outer face we don't know we know we know volcano unfoldings work for prism lines we don't know about band unfoldings that could be interesting open prom to work on maybe it's easy with Prince minds they seem pretty clean but I don't know for sure oh another fun thing which relates to our next topic is that then if you just unfold the band part you can do it by continuous blooming meaning there's a continuous motion from the unfolded thing to the unfolded thing or vice versa and the easy way to see that you kind of get a sense from this picture in general when you squash it all the way flat it opens like this initial grey diagram is a projection of the original thing if you instead of opening it all the way if you kind of squish it from the top and just keep lowering that top face at the end it's fully in the plane but in the middle you have a motion and you could buy the same argument and all times you are non-self intersecting so that actually gives you a continuous blooming of the band of a prism toyed that's kind of cool so the next topic is blooming this is the last topic also a bunch of people asked about continuous blooming is sort of the obvious one to learn more about so I have some algorithms and examples for you this is the paper a bunch of authors continuous blooming of convex polyhedra this problem is posed by Connolly I believe a bunch of years prior it's still not known does let's see still not known whether every unfolding continuously blooms it could it could be that every unfolding every non overlapping unfolding of a convex polyhedron continuously blooms I would guess the answer is it doesn't but it's plausible that was the original question what we found are two different ways to continuously bloom any convex polyhedron but we choose the unfolding so we have a couple of different strategies for choosing unfoldings that do continuously bloom whether they're every unfolding continuously blooms I don't know they're definitely unfoldings of non convex polyhedra that do not continuously bloom based on knitting needles type examples based on bad linkage stuff but for convex polyhedra not sure okay so what do we have first first strategy actually starts from any unfolding you have so we start here from the cross unfolding of the cube and then it refines it so similar strategy to hinge dissection although I think this was done before hinged dissection let's take some hinge structure add extra cuts and extra hinges in this case I mean the hinges are going to be the same it's just adding extra cuts so we're going to cut along the red thing and also this red dashed line the red thing is a spanning tree of the or to really the dual graph so we have the dual graph as you have a vertex for every face you connect them together if they share an edge in this case when when they share an edge we're going to cut along there so we cut along all this red stuff and the cool thing is if you walk around the red structure you get a cycle a Hamiltonian cycle two visits all the faces exactly once we want two paths not a cycle so we add one more cut so then this blue dash thing is a path and the claim is any path shaped unfolding where the faces are connected together in a path can be continuously bloomed how do you do it roll so it's a little easier for me to think about unrolling rather than rolling but they're the same thing so imagine you start with the cube and then you just roll it you unroll one face at a time so initially there was a 90 degree fold angle here just unroll it so that now they're in the same plane and there is initially a 90 degree angle here unroll that after three steps I think this guy's been flattened two three we have this picture in general I would normally draw it rotate it so that the unfolded part lives in the floor the XY plane and the polyhedron lives in Z greater than equal to 0 so lives above that plant what you know at all times is that the unfolded part is a subset of the unfolding it's a subset of this picture so it doesn't overlap itself if you start with a non-overlapping holding you do this cutting and then you just take some subset of the faces a prefix of the path then that will be a non-overlapping thing on the other hand the polyhedron that remains we haven't touched I mean it's rotating you have to make sure it stays above the plane here but it is just a subset of the faces of the cube the cube is also not self intersecting so any subset is not self intersecting so this thing doesn't help intersect this thing doesn't self intersect potentially this cube will be resting on like f1 here it's possible for this thing to unroll and just touch the plane the XY plane but it won't penetrate it just because this thing's convex and this is a plane so you can always keep this thing above keep a convex shape above or what was a convex shape a partial version of the convex shape above the plane but they can be potentially touching even along two-dimensional surfaces so if you allow touching this is the path unroll algorithm it works fine if you don't want to allow touching you need a slightly better strategy which I'll tell you it's pretty simple I won't argue that it works but well this two-step unfolding this is named after the two step dance so we alternate between two kinds of steps one is unfold edge II I to be almost coplanar sorry this should be a base face I to the almost coplanar with the previous one fi minus one so that does correspond that unfolding an edge but I'm going to think about numbering the faces almost means we unfold it to epsilon within the angle of 180 degrees then we finish unfolding the previous step f i minus 1 and then we repeat this a little funny so we're worried that if we unfold all the way flat will actually live in the plane and then we'll touch things we don't want to do that so we're going to unfold it almost all the way but when we're done we do want to be flat so I don't want to just unfold everything almost all the way that might work but it's a little tricky that almost might interact so what I'm going to do is just keep one guy almost unfolded that would be the previous one when I've almost unfolded the next guy I will finish unfolding the previous guy then it will almost unfold the next next guy and then finish unfolding the next guy and so on and this turns out to work essentially you've got you've got your fully planar part which is everything before I minus 2 that would be completely flat then the next angle will be almost flat and then the rest will be in its original state and you can argue the appropriate definitions of almost there will be no in this case there will be no two-dimensional overlap you still can get an edge resting on another thing it's still not quite perfect to make it completely perfect we need a waltz so the waltz is a three step dance no tea so the waltz we have cool tricky we unfold fi to almost complainer almost 180 degrees with fi minus one then we unfold fi plus one slightly and then we finish unfolding fi minus 1 so this is there's essentially a potential interaction between fi plus 1 and fi minus 1 we do a little bit of unfolding to prevent that from being an issue here and so you end up with this three-step waltz thing uh-huh and but Stefan langerman is a dancer so if you like this terminology I won't argue here that that works but now actually you've would all touching last picture I wanted to show you is the I said there are two ways to unfold one was you take any unfolding you make it Hamiltonian and then you unroll it using one of these three algorithms just regular unroll to step or waltz but the another strategy we know works is the source unfolding here no extra cuts required source unfolding is like the cleanest coolest unfolding it turns out if just unfolds no problem how do we unfold it we follow a post order traversal of the tree of faces meaning we completely do one sub tree and now here we're in the middle of doing this sub tree so here we have just have a cube with X being this points of the Reds of the cuts pretty simple example you just have a star of four prongs but here we've completely unfolded this subtree we've done one step of this subtree next thing we would do is flip it open then we do the next one then we do the next one essentially what we argue here in one minute is as you unfold you can think of well there's a couple things going on one is just look at a shortest path right and source unfolding is made by a star of shortest paths so just think of each each shortest path individually if for now individually if you look at a single shortest path it hits some sequence of faces those faces form a path like unfolding so you just use path unroll and that will work the only issues potential interactions between the paths and that's where you have to get into the post order traversal the other in general you want this shortest path to stay shortest what we're going to do is imagine the polyhedron in some sense is growing here so as we unfold like as we start unfolding this we can think of the interior the polyhedron is just getting bigger and in that convex polyhedron it turns out still these pads remain shortest and by that all the invariants still work out and you could argue that the paths basically don't interact with each other because of post order traversal that was very hand wavy actual purpose is a bit technical and more than I can do in 0 minutes so ha that's a sketch of continuous blooming of source unfolding pretty cool star unfolding is open whether all unfoldings of convex polyhedra work is open for non-convex polyhedra we there are a bunch of non convex polyhedra which we'll be talking about in the future lectures that we know have unfoldings do they have continuous blooming zwi have no idea this is the state of the art for blooming still a lot of interesting open questions any other questions from you all right that's it you 2 00:00:05,090 --> 00:00:07,759 alright we have a lot of fun material to cover today so let's get started we start with a few basic questions about well first is a topology question what is a handle in general a handle is really a transformation on the surface I thought I would demonstrate in the context of glassblowing so this is what it looks like you're making a cup you take some hot glass you attach it to your surface you cut it off your hot pipe and then you bring it around and attach it to another point and so that's that's a handle you've probably used handles before in real life in general or in the mathematical setting it's the same thing but in on a 2d surface so you have imagined you have some 2d surface you take two discs like regions on the surface and then you attach on a handle something like that so it's an operation you can do to a surface and you can keep adding handles I don't think there's a clear way to say oh this is clearly a handle except to have added it as a handle in general the nice theorem for two-dimensional surfaces so here's a coffee cup being converted into a torus because it has genus one meaning it has essentially one handle in it in general you take any orientable surface without boundary that's locally two-dimensional then it will be a sphere plus some non-negative number of handles that's a the classification theorem for orientable surfaces it's only slightly more complicated for non orientable surfaces and then 3d surfaces are even harder I'm just only recently solved but this is 2d with two-dimensional surfaces which is easy and clean there is an ax there is a way to compute genus and in some sense learn how many handles are there but it's there isn't a unique thing of oh this part is clearly a hand when you draw it this way it kind of becomes clear this is a handle this is a handle but there isn't a formal sense in which I don't know this thing is not a handle or some some weird thing I think that's all about handles hopefully that answers things of course things get more complicated when you have boundary which we usually call holes but the next question is about holes in the unfoldings and so I claim that convex polyhedra when you unfold them never have holes in the unfolded form and this is to contrast this example which is not convex but you can unfold it by cutting these two edges and you got a little hole so I showed this in lecture and natural question is why isn't as possible in for convex polyhedra so I thought I would prove that and the proof uses a cool theorem we'll probably be seeing again called the gas Benet theorem and it says that if you have some surface which is homeomorphic to a sphere so I don't want any handles for this theorem and of course convex polyhedra our sphere like they don't have handles and I take a bar in color I take a closed curve non-self intersecting closed curve on that surface that defines an interior and an exterior then what I what the gasp on a theorem says is that if you look at the curvature that's enclosed by the curve the total curvature by this closed curve on the surface and you add on the total turn angle along the curve so here the curves turning right here it's turning left right left left is positive write as- then these always add up to 360 degrees we're not going to prove this theorem but we're going to use it so this is a nice invariant for sphere like things it when you have handles this number changes i think it's 0 for a torus well i won't try to guess it because it's a little bit subtle to get right one fun consequence of this let's just get warmed up suppose you take a sphere like object and you take a closed curve this is going to be pretty abstract in this direction then it says okay the total amount of curvature in here plus the total turn angle equals 360 now suppose that i turn the curve around so i just reverse the direction like this and so now the interior is this stuff out here and then we get that the total curvature outside the curve plus the total turn angle of the blue thing equals 360 if i add those two equations together the total turn angle cancels because wherever red turns left blue turns right and so this term disappears and so what we get is that the total curvature inside the curve plus the total curvature outside the curve equals 7 20 this is a nice topological invariant of of sphere like polyhedra you add up the total curvature everywhere didn't really matter what the curve was you always get 720 and so this is kind of neat for convex polyhedra this means you have to somehow divvy up this curvature because all curvatures are positive so 720 somehow spread around but you have to add exactly that much for negative curve for affects things you can have some negative curvature that balances out a lot of positive curvature so you can have a lot of both but you have almost the same amount of each you just you have exactly seven twenty excess so that's just a fun fact we'll be using that in the future I think okay that was Gauss Benet now let's use it to prove that this can't happen for a convex polyhedron so the idea is suppose you have an unfolding with a hole in it then so this is the surface out here then I'm going to take a closed curve that walks around the hole but stays inside the unfolding and then of course I'm visualizing that really on the polyhedron okay so that I want the interior of the curve to enclose the whole or what becomes the hole now what we learned from gas benét is that the curvature enclosed by this thing plus the total turn angle of the curve equals 360 the total turn angle of the curve is 360 right it's it's a planar walk here so turn angle total turn here is 360 degrees now if we have a convex polyhedron then this curvature has to be non-negative well I mean sorry in any case here at this curvature better equals 0 for convex polyhedra this is a sum of vertex curvatures for convex polyhedra every vertex has strictly positive curvature actually I mean the zero curvature vertices aren't vertices they're just points on the surface so for convex polyhedron if you're going to have zero total curvature that means you actually have no curvature so you have no vertices enclosed in here which is a contradiction that means there wasn't a whole to open up technically you could do something weird like I don't know let's take a cube you could say ok I'm going to make a couple cuts here that do nothing this is a kind of a weird situation add those cuts and then of course you could draw this curve around it and say oh yeah look I've got lots of zero curvature vertices inside here in general whenever you have zero curvature vertices you could always just suture them back up uncut them and there'd be no difference in the unfolding so you have to assume that you've already removed pointless cuts then there'll be no vertices in there and so then in fact there was no hole for convex polyhedra for non-convex polyhedra you can have a negative curvature vertex that balances out some positive curvature vertices and so the total curvature here equals 0 but you have three vertices and that just can't happen for convex ok next quick question is when we're talking about the cut locus and the ridge tree we drew some pictures the claim is that it was a spanning tree the polyhedron and in particular the leaves of the tree the degree 1 vertices are exactly the vertices of the polyhedron and this I hadn't actually realized this but in fact that is it depends it's not really literally true it's kind of spiritually true huh vertices in fact have unique shortest paths to X so remember we have some point X on the surface and we're looking at points like this one that have non-unique shortest paths to X this is if you grow the the fire around X where does the fire meat itself and it will meet itself along this edge because you could go around this way or go around this way and it's equal length path but at the vertex there's actually a unique way to go there that's the black line so technically this point is not on the ridge tree but all of these points are so this is kind of like a limiting point of the rich tree points so we think of it as being on the ridge tree I mean you could think of it as cut or not cut it doesn't really matter but you cut right next to it so effectively the same thing but it is a neat point a subtle point that these guys are do these guys have unique shortest paths whereas these do not still we cut all the way up to the Corner alright that is that so now we have a bunch of newer and more exciting things or updates that you haven't heard of one question that we mentioned was generalizing the star and source unfoldings and there's a new paper about this this is with my PhD advisor Anna labu and this is just a warm-up to get to get started so here we have a box take a point X and let's see here we have the source unfolding from X and here we have the star unfolding just for comparison's also kind of fun to see them side-by-side they're color-coded so where you cut is the ridge tree in this case and you end up gluing along the ridge tree in the star unfolding now we're going to generalize things a little bit in that we're going to generalize the source unfolding specifically so source unfolding you have a point X and you just sort of shoot shortest paths all from X and that's what you keep and you end up cutting along the ridge tree which the Voronoi diagram at this point so I'm going to generalize that a little bit and think of this as a tiny little circle and it in general what I'm going to do is the source unfolding outside the circle and so when the circle is really tiny it is just the source unfolding but in general i'm going to do the star unfolding inside the circle okay so in this case nothing changes but next example is going to be more general instead of being a single point here I'm going to take a geodesic arc a straight line on the surface so here's an example of that we have a square base pyramid we drew a straight line on the surface if you unfold it it would be straight we're thinking of having a little I think that's called a racetrack curve in mathematics around that straight line and I'm going to do star unfolding on the inside in this case there's no vertices on the inside so nothing happens and then we do source unfolding on the outside this is actually previously known to unfold bye work and others but we have a simpler proof essentially and we're going to generalize it more but what we do is the source unfolding on the outside so you take shortest paths from every point you take its shortest path to this this geodesic that's some of these blue lines show various shortest paths that's what you keep the ridge tree is the is if you light fire simultaneously along this entire segment where does it burn out and that's the purple stuff and yeah this is the complementary diagram where you do the sort of the reverse which would be the star unfolding on the outside source unfolding on the inside so you glue along the purple stuff instead of cutting along the purple stuff and this we conjecture doesn't overlap but we don't know all right so fine that looks easy and you can prove that this doesn't overlap before you proved it because you just had shortest paths emanating in all directions around X now you have a shortest paths emanating for 180 degrees of directions around this endpoint then they're all just straight and then they rotate around hundred eighty degrees here and then they're all just straight and so there can't be anything overlapping because you're just taking a continuum of these segments of varying lengths they don't overlap here they're all parallel here they sweep nicely in general if they always turn clockwise as you walk along the curve you're fine okay here's a more general one in general what we can prove is that if you have a convex curve on the surface so it always turns to the left I think technically the angle on the left-hand side is always less than or equal to 180 degrees you have to be a little careful what it means to turn the left when you hit a vertex you've got less than 360 total so what's to the left mean just means you've got less than 180 degrees of material on your left side so this is an example of a convex curves got some circular arcs we're no longer tracking along some up whenever we're no longer just doubling along some curve here we enclose a vertex which makes a little more exciting because now we're going to do star unfolding on the inside which remember was cutting along shortest paths from every vertex to your thing in this case your thing is no longer a point it is now this convex curve so let's say this is the shortest path here might be might be more than one choice but we're going to actually know right this is the shortest path this is a root two diagonal this is length one so we're going to cut along here and that's this dashed line so it got opened up here because we had two little material here we open it up but otherwise it acts the same in particular outside this red curve it's just source unfolding you've got all these shortest paths and again what we argue and I'm not going to prove it here is that all of these shortest paths keep turning clockwise and do so exactly 360 degrees there's some jumps when you hit these gaps and you have to kind of jump over them but still you have no collision and run over here is the reverse where we would star unfolds the outside of the convex curve because it's a convex curve inside and outside are different and source unfold on the inside and this week conjecture doesn't overlap oh we don't know how to prove it this thing is a generalization of the source unfolding because when this curve is super tiny it is a source unfolding this thing would be a generalization of the star unfolding but we don't know whether it works I think one more example here this is a way to generate convex curves you start from some point X and you design it you choose a direction so that if you go straight so this curve goes straight everywhere except X if you set it up right you come back to X so this in particular is a convex curve because it's straight everywhere except X and that exits convex and so in this case we enclose a few vertices on the inside we've got v3v 7b six so each of those caught ends up getting cut here in these green lines and so like this one is a very tiny cut we just cut there if v3 the other ones are a little bigger but they open up and I guess this is the well as a few different versions of the picture here but again you look at these shortest paths here they're all parallel here they sweep here they're all parallel here jump but it's kind of like just the same as sweeping doesn't hurt you then you they're all parallel then we jump then they're all parallel in this particular example but they will always precede clockwise around the curve which here is drawn red get split up a little bit but you can show because of that sweeping they won't hit each other and so you have non overlapping unfolding so that's this week all the Sun unfolding because because of the Rays that sweep around and because we have a convex curve is kind of like the Sun so that's a new unfolding the obvious open question is the reverse when you glue around the purple sides instead of the you just it's essentially if you instead of having a convex curve you have a reflex curve exactly the opposite what happens we don't know it's a lot harder to prove because in particular it's a lot harder to prove that the star unfolding doesn't overlap and you've got to include at least that proof in any generalization of it next topic of unfolding kind of related we call zipper unfolding so these are some examples of real felt models with the zipper the goal is I want to I want an unfolding that has a single zipper you just pull the zipper and it makes your polyhedron so this is an example of an octahedron this one is actually not even a polyhedron it is to has two pyramidal pockets in it and then it's actually closed off in the middle I think we have a little video here of what it looks like to open that octahedron so what does it take to have a single zipper line that on that connects everything together well if you think about it that means that the cuts that you make must follow a single path so we want in general the cuts form a tree and a convex polyhedron we want that tree to be just a path so it's like a Hamiltonian path it's got to visit all the vertices in some order and you'd like it to unfold with that overlap so is this always possible this is a paper this is a father son mother son son paper so this is my advisor again and her two sons although we'd like to say this is the paper with her three sons because I'm her academic son uh-huh or four if you count Marty too she was his advisor as well so here are some examples of good unfolding so we have the platonic solids these are just typical unfoldings these are all zipper unfoldings so we're cutting along edges along a Hamiltonian path it doesn't overlap they all have this kind of nice snake-like shape and so all platonic solids can be made by zipper edge unfoldings next we did Archimedean solids this is a lot more work but again you get these nice s like curves and they're all zipper unfoldings they're all possible they all have these Hamiltonian paths cuts and avoid overlap but you may notice there's one missing up there the great run by cosa dead Nickey Hedra and my favorite Archimedean solid and it has a rather different looking unfolding as far as we can tell there is no s-shaped one whatever that means but you have to have a tree these examples all had path like the dual graph was roughly a path I guess it branches a little bit here here it's very tree like I guess so all Archimedean solids can be done one open question next next category up is johnson solids which are all polyhedra made with regular polygon faces convex polyhedra made by regular polygonum faces those we don't know whether they always have zipper unfoldings but we do know there are some convex polyhedra like this rhombic dodecahedron that do not have zipper unfoldings if you're only cut on the long edges because this graph has no Hamiltonian path so never mind avoiding overlap there's some polyhedra that just aren't Hamiltonian there's no path of visits every vertex exactly once and only follows edges so there's nothing you could even hope to cut along and avoid overlap so that's bad news for edge unfoldings the big open question here is for general unfoldings if you're allowed to cut anywhere a convex surface and do things like the Sun unfolding I mean edge unfoldings are we don't know how to do them anyway so if you'll have general unfoldings we've got star and folding source unfolding Sun unfolding all sorts of things but none of them are zipper unfoldings they all cut along trees like star unfolding cuts along a star the source unfolding cuts along the ridge street which is going to be a very tree like thing can you always convert a tree cut into a path cut we've tried seems quite challenging so that's the open problem does every convex polyhedron have a general zipper unfolding edge unfolding is always too much to hope for so those are some fun some fun problems to think about like super unfolding so next topic oh right one more thing to show this is a very fun talk that we gave all five of us gave this talk at Canadian conference on computational geometry and one of the props in the talk was this cardboard box and in the middle of the talk it starts jiggling and actually initially only four of the co-authors were giving the talk because the fifth one was hiding inside the box and then in the middle of the talk he just jumps out and then starts speaking as if nothing happened there was a lot of fun at this point arla so no Jonah is in the box I was fairly small he's grown up a lot since but at the time he fit nicely into this cardboard box which was maybe I don't know this this big I think we gave him a book and a flashlight and stuff to do while he was in there waiting for his slides waiting for the cue to come out there we go so those aren't folding of the cube or a box in general all right next topic is going back to edge unfolding i like this comment i thought they were pretty obvious but now you've convinced me otherwise and some of the evidence for edgmont folding being difficult was this polyhedron which we proved has no edge unfolding I didn't say it in lecture but we call it edge unfolding because it cannot be unfolded this is actually the first example we came up with I mention it only because it has fewer faces we kind of like we usually show this one because it's triangulated and that's kind of cooler this one has convex face is still so it's still topologically convex and if i push these points in they would be the polyhedron would be convex but has fewer faces it has i guess six faces / hat times for hats so 24 faces for a while this was done in 99 it turns out at exactly the same time there was this paper by Tarasov called polyhedra with no natural unfolding the paper has no figures so i had to draw one I'll show you what it looks like it's just a cube and then at each corner of the cube you cut off the corner and then then pull the point out and they proved by a pretty similar argument I mean essentially you treat each of these as a hat it's kind of a very simple hat they happen to overlap the share edges but again because of these negative curvature vertices you have to cut through the hat and that cut has to keep going around eventually forms a cycle that's what that's what I saw proved in the same year 99 and then grew in bham famous geometry in Seattle just came up with some more example so he he initially wanted to make a star-shaped example star shape means that there's a single point namely the center where you can shine a light in all directions and the light reaches the entire interior of the polyhedron he didn't know about our which had examples so he took the Tarasov example made a dodecahedron and then it is star shaped I think ours are already star shaped so that's kind of fun like some scary underwater creature and then you learned about our paper and he said all right I want to get as few faces as possible so we had 26 was it 24 this one has only 13 faces and it's also it has tetrahedral well it's not exactly tetrahedral asymmetric because this bottom spike is different from the others but it's kind of like a tire sobs example down to its very minimal amounts also star-shaped and his conjecture is that if you have 12 faces or fewer there is no uh none foldable polyhedron so he says polyhedra with 12 faces are undone foldable me what I should want to one-up us open problem is to define undone foldable but we're up to three all right so that's some uh none foldable polyhedra and some conjecture done uh none foldable he drew this is fun to say and next result which is very recent is that this is with Zack able and myself that it is np-complete to decide given a polyhedron is it unfold the ball or uh none foldable by cutting along edges these are all cutting along edges and we reduce from this problem which comes from parallel computers actually or geometry in general you want to pack a bunch of squares into a square so you have squares of different sizes and you want to pack those squares into a given square is it possible yes or no sometimes it is sometimes it isn't this proof my you know by many people long at all is from three partition which is a problem we've seen I won't go through it but essentially it's kind of like the dis packing proof which I showed in lecture some time ago related to tree maker but you you set up this tiny space and you end up having to partition a bunch of your squares into groups each with the same some groups of size three so starting from this problem of square packing how do we convert it into an unfolding problem this is a rough idea of the construction so the big picture this is initially a polyhedron with boundary later on we'll remove the boundary so just imagine a square and in the square there's a tower the tower things are not drawn the scale here the tower is super tall these this little pipe thing is very narrow and also very long I think way even way longer than anything in this picture ok so now along the side of the tower so this is an unfolding like if you cut along these edges you get a plus sign this is the tower now this grid stuff is something that I haven't shown you yet but basically think of it as water it's very malleable it can cut be cut open in many different ways and essentially you don't have to worry about it being there it's like the glue that holds everything together but then there's these square faces bb1 up to be n these are the things you need to pack so our goal is to set things up that so when you take this tower out you have a square hole that is your target square shape and then on the side of the tower you've got all these squares basically those squares have to fit into that hole so it is square packing that is our goal now the challenge for that is to make all of this stuff I get out of the way and also for these squares normally when you unfold you're very constrained and how you lay out the faces you can cut here cut here but there's this discrete set of choices our goal is to design this stuff so these squares can just basically move willy-nilly without hitting each other it's not easy to do but that's the thing this is one big face on the outside this kind of l-shaped we didn't want to go all the way around for a couple reasons one is we need a place for things to get out but also we wanted this to be topologically convex so we didn't want to face that as a donut okay so what's the next part of the construction well if we can arrange for these guys to move willy-nilly that's these very thin lines we can just imagine that if the squares are somehow packed instead of having things overlapping like this you can route all of those paths to avoid crossings so as long as there's tiny gaps between all the squares which doesn't turn out to change the square packing problem very much you can do this and then there's another issue which is there's a lot of stuff here you've got to put it somewhere so you end up it's very very tiny so in some cases you have to do this kind of wiggling just to eat up length in certain settings it gets complicated so how do we do this Wiggly stuff well at the first level there's there's a very fine grid with very small squares here and if we and we set it up so that we can follow everything along a single path we can visit all of this grid stuff along a single path occasionally we will encounter squares but the path length between any two squares is so big that these squares have room to kind of stretch out as far away from each other as they need to go now these squares are not squares they are actually this construction which we call atoms looks like a weird set of pyramids or a set of towers but in fact there's many different ways to unfold this you know there's lots of different ways to cut it open and some of them go straight some of them turn left some of them turn right these are three of the unfoldings I forget there's a few dozen unfoldings that we need that all have the right parameters is this one's clearly turning left so it's going straight in a certain sense this is coming from a left turn and then going straight so there's lots of combinations here slightly different parodies and so on but the end effect is that if you have a big grid of these and you're following them in a path you can make that the if the path Beth does some turns on the surface but you can force it to do whatever turns you want in the unfolding it so you have complete freedom to move the squares around as I showed you you can avoid crossings and it all works out maybe one detail which I didn't mention is there's there's going to be a ton of extra stuff where does it go and yeah it's going to go in it's going to fill the pipe up basically it's going to push the pipe it's going to push these guys up somewhat and this thing is so tall that there's room to put all the excess stuff in here and it's also so tall that you can't just reach all the way out and put all the squares on the outside okay so you make that super super tall none of the square none of the squares fit in here because it's too narrow and none of the squares can get up to the top because it's too long so that's how it works now that was a polyhedron with boundary without boundary the construction is almost the same you just add some some extra stuff on the outside to make it a regular polyhedron homeomorphic to a sphere but in the end you have basically the same construction of this nice square the pipe and some other stuff you proof basically it doesn't matter so that is NP completeness of edge unfolding of topologically convex polyhedra even orthogonal polyhedra which is kind of nifty from last year yep if you actually want to unfold things if you want to build things out of paper the current best heuristic on folder is called pepakura it's a free download online probably windows only you can take some weird 3d model and it uses multiple pieces in general but you can add tabs and it's quite practical and then cut it out either manually or through computer-controlled sign cutter or something and then fold up your ear pieces when when a one-piece is unfolding is possible it will typically find it but it's not guaranteed I don't know exactly what algorithm uses but some combination of brute force and just cutting into multiple pieces when it fails alright next up we have band unfolding so I talk very briefly about been unfolding I thought I'd show you some pictures about it and so remember we're talking about volcano unfoldings which is when you cut along all the edges from a point or it sort of in the vertical thing been unfolding was when you had you had some side faces you kept those intact and cut everything else away so what I have show here this was an example of a band unfolding gone wrong I guess I like to see this is in general a prism annoyed we had a top polygon a here and then below it this polygon be took the convex hull which adds all these other edges and this is an example of a bad unfolding of a prisma toyed here's an example of a bad this is really a band unfolding that has gone wrong so imagine here the top polygon is this triangle bottom polygon is this triangle that nicely nests very easy example seemingly but for whatever reason we also added this cut and you can actually force that if I make this not quite a actually maybe it's not quite a triangle it's a quadrilateral yeah and this is slightly a quadrilateral so when you take the convex hull you get that edge and if you cut along that edge and then cut along here and cut along here and you know do the band unfolding thing we're not even drawing the bottom polygon here just the band itself overlaps which is annoying nonetheless so this is an old example but nonetheless we proved that there is always one plate there's at least one place to cut the band like here would work that will avoid overlap and this is some parts of the proof in general here we're looking at the inner polygons and we cut it somewhere and then we argue about where the cut it where that vertex goes if we open up all the angles which is what happens when you squash it flat and essentially in particular we argued this vertex must stay in the gray region like in the picture on the right so it can't it can't go up here and so in general if you look at how these things unfold if if you're lucky things will be convex when you open it this is always going to be good there's this weakly convex picture where when you close the ends it's not quite convex but only at one point this week all this this is troublesome sometimes this works sometimes it doesn't if you look at this example I believe it is in the weakly convex category but I haven't told you the other one is a spiral here if you draw a 90 degree angle from this last bar then this guy is on the wrong side of that 90 degree thing this thing can't happen so that's comforting and it's related to this property but these things can cause problems like in the previous picture and so you have to argue that there's there is a place to cut where you don't get this or if when you get it it's still ok and that that's a messy argument a lot of case analysis I won't go through it here I think I'd have one picture of a nicely working example this is I guess a general prisma toyed here we have a nice cutting that works the original question that someone here posed was what about prism woods so we know the band unfolds nicely what we don't know is can you attach the top polygon and the bottom polygon to the band and get an unfolding we don't know for example whether all prism toads have edge unfoldings because we don't know how to place the top and bottom things probably possible but really hard to figure out where they would go a simpler problem is prison mines so if which this is this meant actually be a prison wine if you know that all of these edges are parallel initially so it's very nice situation then that's a more special case from prisma toys then maybe you could attach the interface in the outer face we don't know we know we know volcano unfoldings work for prism lines we don't know about band unfoldings that could be interesting open prom to work on maybe it's easy with Prince minds they seem pretty clean but I don't know for sure oh another fun thing which relates to our next topic is that then if you just unfold the band part you can do it by continuous blooming meaning there's a continuous motion from the unfolded thing to the unfolded thing or vice versa and the easy way to see that you kind of get a sense from this picture in general when you squash it all the way flat it opens like this initial grey diagram is a projection of the original thing if you instead of opening it all the way if you kind of squish it from the top and just keep lowering that top face at the end it's fully in the plane but in the middle you have a motion and you could buy the same argument and all times you are non-self intersecting so that actually gives you a continuous blooming of the band of a prism toyed that's kind of cool so the next topic is blooming this is the last topic also a bunch of people asked about continuous blooming is sort of the obvious one to learn more about so I have some algorithms and examples for you this is the paper a bunch of authors continuous blooming of convex polyhedra this problem is posed by Connolly I believe a bunch of years prior it's still not known does let's see still not known whether every unfolding continuously blooms it could it could be that every unfolding every non overlapping unfolding of a convex polyhedron continuously blooms I would guess the answer is it doesn't but it's plausible that was the original question what we found are two different ways to continuously bloom any convex polyhedron but we choose the unfolding so we have a couple of different strategies for choosing unfoldings that do continuously bloom whether they're every unfolding continuously blooms I don't know they're definitely unfoldings of non convex polyhedra that do not continuously bloom based on knitting needles type examples based on bad linkage stuff but for convex polyhedra not sure okay so what do we have first first strategy actually starts from any unfolding you have so we start here from the cross unfolding of the cube and then it refines it so similar strategy to hinge dissection although I think this was done before hinged dissection let's take some hinge structure add extra cuts and extra hinges in this case I mean the hinges are going to be the same it's just adding extra cuts so we're going to cut along the red thing and also this red dashed line the red thing is a spanning tree of the or to really the dual graph so we have the dual graph as you have a vertex for every face you connect them together if they share an edge in this case when when they share an edge we're going to cut along there so we cut along all this red stuff and the cool thing is if you walk around the red structure you get a cycle a Hamiltonian cycle two visits all the faces exactly once we want two paths not a cycle so we add one more cut so then this blue dash thing is a path and the claim is any path shaped unfolding where the faces are connected together in a path can be continuously bloomed how do you do it roll so it's a little easier for me to think about unrolling rather than rolling but they're the same thing so imagine you start with the cube and then you just roll it you unroll one face at a time so initially there was a 90 degree fold angle here just unroll it so that now they're in the same plane and there is initially a 90 degree angle here unroll that after three steps I think this guy's been flattened two three we have this picture in general I would normally draw it rotate it so that the unfolded part lives in the floor the XY plane and the polyhedron lives in Z greater than equal to 0 so lives above that plant what you know at all times is that the unfolded part is a subset of the unfolding it's a subset of this picture so it doesn't overlap itself if you start with a non-overlapping holding you do this cutting and then you just take some subset of the faces a prefix of the path then that will be a non-overlapping thing on the other hand the polyhedron that remains we haven't touched I mean it's rotating you have to make sure it stays above the plane here but it is just a subset of the faces of the cube the cube is also not self intersecting so any subset is not self intersecting so this thing doesn't help intersect this thing doesn't self intersect potentially this cube will be resting on like f1 here it's possible for this thing to unroll and just touch the plane the XY plane but it won't penetrate it just because this thing's convex and this is a plane so you can always keep this thing above keep a convex shape above or what was a convex shape a partial version of the convex shape above the plane but they can be potentially touching even along two-dimensional surfaces so if you allow touching this is the path unroll algorithm it works fine if you don't want to allow touching you need a slightly better strategy which I'll tell you it's pretty simple I won't argue that it works but well this two-step unfolding this is named after the two step dance so we alternate between two kinds of steps one is unfold edge II I to be almost coplanar sorry this should be a base face I to the almost coplanar with the previous one fi minus one so that does correspond that unfolding an edge but I'm going to think about numbering the faces almost means we unfold it to epsilon within the angle of 180 degrees then we finish unfolding the previous step f i minus 1 and then we repeat this a little funny so we're worried that if we unfold all the way flat will actually live in the plane and then we'll touch things we don't want to do that so we're going to unfold it almost all the way but when we're done we do want to be flat so I don't want to just unfold everything almost all the way that might work but it's a little tricky that almost might interact so what I'm going to do is just keep one guy almost unfolded that would be the previous one when I've almost unfolded the next guy I will finish unfolding the previous guy then it will almost unfold the next next guy and then finish unfolding the next guy and so on and this turns out to work essentially you've got you've got your fully planar part which is everything before I minus 2 that would be completely flat then the next angle will be almost flat and then the rest will be in its original state and you can argue the appropriate definitions of almost there will be no in this case there will be no two-dimensional overlap you still can get an edge resting on another thing it's still not quite perfect to make it completely perfect we need a waltz so the waltz is a three step dance no tea so the waltz we have cool tricky we unfold fi to almost complainer almost 180 degrees with fi minus one then we unfold fi plus one slightly and then we finish unfolding fi minus 1 so this is there's essentially a potential interaction between fi plus 1 and fi minus 1 we do a little bit of unfolding to prevent that from being an issue here and so you end up with this three-step waltz thing uh-huh and but Stefan langerman is a dancer so if you like this terminology I won't argue here that that works but now actually you've would all touching last picture I wanted to show you is the I said there are two ways to unfold one was you take any unfolding you make it Hamiltonian and then you unroll it using one of these three algorithms just regular unroll to step or waltz but the another strategy we know works is the source unfolding here no extra cuts required source unfolding is like the cleanest coolest unfolding it turns out if just unfolds no problem how do we unfold it we follow a post order traversal of the tree of faces meaning we completely do one sub tree and now here we're in the middle of doing this sub tree so here we have just have a cube with X being this points of the Reds of the cuts pretty simple example you just have a star of four prongs but here we've completely unfolded this subtree we've done one step of this subtree next thing we would do is flip it open then we do the next one then we do the next one essentially what we argue here in one minute is as you unfold you can think of well there's a couple things going on one is just look at a shortest path right and source unfolding is made by a star of shortest paths so just think of each each shortest path individually if for now individually if you look at a single shortest path it hits some sequence of faces those faces form a path like unfolding so you just use path unroll and that will work the only issues potential interactions between the paths and that's where you have to get into the post order traversal the other in general you want this shortest path to stay shortest what we're going to do is imagine the polyhedron in some sense is growing here so as we unfold like as we start unfolding this we can think of the interior the polyhedron is just getting bigger and in that convex polyhedron it turns out still these pads remain shortest and by that all the invariants still work out and you could argue that the paths basically don't interact with each other because of post order traversal that was very hand wavy actual purpose is a bit technical and more than I can do in 0 minutes so ha that's a sketch of continuous blooming of source unfolding pretty cool star unfolding is open whether all unfoldings of convex polyhedra work is open for non-convex polyhedra we there are a bunch of non convex polyhedra which we'll be talking about in the future lectures that we know have unfoldings do they have continuous blooming zwi have no idea this is the state of the art for blooming still a lot of interesting open questions any other questions from you all right that's it you 3 00:00:07,759 --> 00:00:10,390 4 00:00:10,390 --> 00:00:13,310 5 00:00:13,310 --> 00:00:17,660 6 00:00:17,660 --> 00:00:19,490 7 00:00:19,490 --> 00:00:20,750 8 00:00:20,750 --> 00:00:23,000 9 00:00:23,000 --> 00:00:24,890 10 00:00:24,890 --> 00:00:27,650 11 00:00:27,650 --> 00:00:31,730 12 00:00:31,730 --> 00:00:35,110 13 00:00:35,110 --> 00:00:39,530 14 00:00:39,530 --> 00:00:41,750 15 00:00:41,750 --> 00:00:45,860 16 00:00:45,860 --> 00:00:48,979 17 00:00:48,979 --> 00:00:52,340 18 00:00:52,340 --> 00:00:55,010 19 00:00:55,010 --> 00:00:59,420 20 00:00:59,420 --> 00:01:06,039 21 00:01:06,039 --> 00:01:09,709 22 00:01:09,709 --> 00:01:12,379 23 00:01:12,379 --> 00:01:15,080 24 00:01:15,080 --> 00:01:16,999 25 00:01:16,999 --> 00:01:18,919 26 00:01:18,919 --> 00:01:23,629 27 00:01:23,629 --> 00:01:26,020 28 00:01:26,020 --> 00:01:28,669 29 00:01:28,669 --> 00:01:30,949 30 00:01:30,949 --> 00:01:33,499 31 00:01:33,499 --> 00:01:35,480 32 00:01:35,480 --> 00:01:38,569 33 00:01:38,569 --> 00:01:42,550 34 00:01:42,550 --> 00:01:46,219 35 00:01:46,219 --> 00:01:49,190 36 00:01:49,190 --> 00:01:51,559 37 00:01:51,559 --> 00:01:53,029 38 00:01:53,029 --> 00:01:56,989 39 00:01:56,989 --> 00:02:00,559 40 00:02:00,559 --> 00:02:03,859 41 00:02:03,859 --> 00:02:07,609 42 00:02:07,609 --> 00:02:09,440 43 00:02:09,440 --> 00:02:11,149 44 00:02:11,149 --> 00:02:13,429 45 00:02:13,429 --> 00:02:15,870 46 00:02:15,870 --> 00:02:18,270 47 00:02:18,270 --> 00:02:19,710 48 00:02:19,710 --> 00:02:21,270 49 00:02:21,270 --> 00:02:25,080 50 00:02:25,080 --> 00:02:29,400 51 00:02:29,400 --> 00:02:33,060 52 00:02:33,060 --> 00:02:34,920 53 00:02:34,920 --> 00:02:37,170 54 00:02:37,170 --> 00:02:39,120 55 00:02:39,120 --> 00:02:40,890 56 00:02:40,890 --> 00:02:45,080 57 00:02:45,080 --> 00:02:47,070 58 00:02:47,070 --> 00:02:50,730 59 00:02:50,730 --> 00:02:52,620 60 00:02:52,620 --> 00:02:55,260 61 00:02:55,260 --> 00:02:57,420 62 00:02:57,420 --> 00:02:59,300 63 00:02:59,300 --> 00:03:01,500 64 00:03:01,500 --> 00:03:05,490 65 00:03:05,490 --> 00:03:07,500 66 00:03:07,500 --> 00:03:09,960 67 00:03:09,960 --> 00:03:12,090 68 00:03:12,090 --> 00:03:18,200 69 00:03:18,200 --> 00:03:22,380 70 00:03:22,380 --> 00:03:25,740 71 00:03:25,740 --> 00:03:28,200 72 00:03:28,200 --> 00:03:30,330 73 00:03:30,330 --> 00:03:36,020 74 00:03:36,020 --> 00:03:39,180 75 00:03:39,180 --> 00:03:41,990 76 00:03:41,990 --> 00:03:47,070 77 00:03:47,070 --> 00:03:52,230 78 00:03:52,230 --> 00:03:54,720 79 00:03:54,720 --> 00:04:00,140 80 00:04:00,140 --> 00:04:08,360 81 00:04:08,360 --> 00:04:11,480 82 00:04:11,480 --> 00:04:21,600 83 00:04:21,600 --> 00:04:28,890 84 00:04:28,890 --> 00:04:31,260 85 00:04:31,260 --> 00:04:35,790 86 00:04:35,790 --> 00:04:39,480 87 00:04:39,480 --> 00:04:40,620 88 00:04:40,620 --> 00:04:43,020 89 00:04:43,020 --> 00:04:45,900 90 00:04:45,900 --> 00:04:47,760 91 00:04:47,760 --> 00:04:51,180 92 00:04:51,180 --> 00:04:53,310 93 00:04:53,310 --> 00:04:55,770 94 00:04:55,770 --> 00:04:57,630 95 00:04:57,630 --> 00:04:59,730 96 00:04:59,730 --> 00:05:04,140 97 00:05:04,140 --> 00:05:06,450 98 00:05:06,450 --> 00:05:11,160 99 00:05:11,160 --> 00:05:13,290 100 00:05:13,290 --> 00:05:17,340 101 00:05:17,340 --> 00:05:21,840 102 00:05:21,840 --> 00:05:28,920 103 00:05:28,920 --> 00:05:30,540 104 00:05:30,540 --> 00:05:34,050 105 00:05:34,050 --> 00:05:37,350 106 00:05:37,350 --> 00:05:40,230 107 00:05:40,230 --> 00:05:42,480 108 00:05:42,480 --> 00:05:43,980 109 00:05:43,980 --> 00:05:46,350 110 00:05:46,350 --> 00:05:49,650 111 00:05:49,650 --> 00:05:50,940 112 00:05:50,940 --> 00:05:52,440 113 00:05:52,440 --> 00:05:54,630 114 00:05:54,630 --> 00:05:57,740 115 00:05:57,740 --> 00:06:02,220 116 00:06:02,220 --> 00:06:04,590 117 00:06:04,590 --> 00:06:07,020 118 00:06:07,020 --> 00:06:09,840 119 00:06:09,840 --> 00:06:11,280 120 00:06:11,280 --> 00:06:13,380 121 00:06:13,380 --> 00:06:15,450 122 00:06:15,450 --> 00:06:17,880 123 00:06:17,880 --> 00:06:19,740 124 00:06:19,740 --> 00:06:19,750 125 00:06:19,750 --> 00:06:20,670 126 00:06:20,670 --> 00:06:21,659 127 00:06:21,659 --> 00:06:23,340 128 00:06:23,340 --> 00:06:24,779 129 00:06:24,779 --> 00:06:26,730 130 00:06:26,730 --> 00:06:28,770 131 00:06:28,770 --> 00:06:31,260 132 00:06:31,260 --> 00:06:32,550 133 00:06:32,550 --> 00:06:39,200 134 00:06:39,200 --> 00:06:41,730 135 00:06:41,730 --> 00:06:44,129 136 00:06:44,129 --> 00:06:47,969 137 00:06:47,969 --> 00:06:52,140 138 00:06:52,140 --> 00:06:58,409 139 00:06:58,409 --> 00:07:00,810 140 00:07:00,810 --> 00:07:04,469 141 00:07:04,469 --> 00:07:06,960 142 00:07:06,960 --> 00:07:08,550 143 00:07:08,550 --> 00:07:12,089 144 00:07:12,089 --> 00:07:14,189 145 00:07:14,189 --> 00:07:17,189 146 00:07:17,189 --> 00:07:19,140 147 00:07:19,140 --> 00:07:21,360 148 00:07:21,360 --> 00:07:23,640 149 00:07:23,640 --> 00:07:26,939 150 00:07:26,939 --> 00:07:30,750 151 00:07:30,750 --> 00:07:36,570 152 00:07:36,570 --> 00:07:39,570 153 00:07:39,570 --> 00:07:41,969 154 00:07:41,969 --> 00:07:46,710 155 00:07:46,710 --> 00:07:47,909 156 00:07:47,909 --> 00:07:51,240 157 00:07:51,240 --> 00:07:53,730 158 00:07:53,730 --> 00:07:56,279 159 00:07:56,279 --> 00:07:58,409 160 00:07:58,409 --> 00:08:01,350 161 00:08:01,350 --> 00:08:04,969 162 00:08:04,969 --> 00:08:07,379 163 00:08:07,379 --> 00:08:09,240 164 00:08:09,240 --> 00:08:11,550 165 00:08:11,550 --> 00:08:14,100 166 00:08:14,100 --> 00:08:15,600 167 00:08:15,600 --> 00:08:18,600 168 00:08:18,600 --> 00:08:22,560 169 00:08:22,560 --> 00:08:26,700 170 00:08:26,700 --> 00:08:30,120 171 00:08:30,120 --> 00:08:30,130 172 00:08:30,130 --> 00:08:31,230 173 00:08:31,230 --> 00:08:35,830 174 00:08:35,830 --> 00:08:37,899 175 00:08:37,899 --> 00:08:39,610 176 00:08:39,610 --> 00:08:41,110 177 00:08:41,110 --> 00:08:43,120 178 00:08:43,120 --> 00:08:44,410 179 00:08:44,410 --> 00:08:46,300 180 00:08:46,300 --> 00:08:48,340 181 00:08:48,340 --> 00:08:50,200 182 00:08:50,200 --> 00:08:51,540 183 00:08:51,540 --> 00:08:56,230 184 00:08:56,230 --> 00:08:59,710 185 00:08:59,710 --> 00:09:02,410 186 00:09:02,410 --> 00:09:04,990 187 00:09:04,990 --> 00:09:07,330 188 00:09:07,330 --> 00:09:09,220 189 00:09:09,220 --> 00:09:12,430 190 00:09:12,430 --> 00:09:13,870 191 00:09:13,870 --> 00:09:20,320 192 00:09:20,320 --> 00:09:24,160 193 00:09:24,160 --> 00:09:27,280 194 00:09:27,280 --> 00:09:29,680 195 00:09:29,680 --> 00:09:31,180 196 00:09:31,180 --> 00:09:32,860 197 00:09:32,860 --> 00:09:35,230 198 00:09:35,230 --> 00:09:39,220 199 00:09:39,220 --> 00:09:40,870 200 00:09:40,870 --> 00:09:44,710 201 00:09:44,710 --> 00:09:46,930 202 00:09:46,930 --> 00:09:50,320 203 00:09:50,320 --> 00:09:52,630 204 00:09:52,630 --> 00:09:55,510 205 00:09:55,510 --> 00:09:57,820 206 00:09:57,820 --> 00:09:59,890 207 00:09:59,890 --> 00:10:02,410 208 00:10:02,410 --> 00:10:04,210 209 00:10:04,210 --> 00:10:06,490 210 00:10:06,490 --> 00:10:08,140 211 00:10:08,140 --> 00:10:09,550 212 00:10:09,550 --> 00:10:12,400 213 00:10:12,400 --> 00:10:13,870 214 00:10:13,870 --> 00:10:16,900 215 00:10:16,900 --> 00:10:18,790 216 00:10:18,790 --> 00:10:20,890 217 00:10:20,890 --> 00:10:24,280 218 00:10:24,280 --> 00:10:26,620 219 00:10:26,620 --> 00:10:27,970 220 00:10:27,970 --> 00:10:29,829 221 00:10:29,829 --> 00:10:32,560 222 00:10:32,560 --> 00:10:35,110 223 00:10:35,110 --> 00:10:37,750 224 00:10:37,750 --> 00:10:39,640 225 00:10:39,640 --> 00:10:42,040 226 00:10:42,040 --> 00:10:43,180 227 00:10:43,180 --> 00:10:49,750 228 00:10:49,750 --> 00:10:52,510 229 00:10:52,510 --> 00:10:56,680 230 00:10:56,680 --> 00:10:59,740 231 00:10:59,740 --> 00:11:01,360 232 00:11:01,360 --> 00:11:04,810 233 00:11:04,810 --> 00:11:08,860 234 00:11:08,860 --> 00:11:13,680 235 00:11:13,680 --> 00:11:16,110 236 00:11:16,110 --> 00:11:19,660 237 00:11:19,660 --> 00:11:21,550 238 00:11:21,550 --> 00:11:24,370 239 00:11:24,370 --> 00:11:26,170 240 00:11:26,170 --> 00:11:28,420 241 00:11:28,420 --> 00:11:30,550 242 00:11:30,550 --> 00:11:33,760 243 00:11:33,760 --> 00:11:38,200 244 00:11:38,200 --> 00:11:39,760 245 00:11:39,760 --> 00:11:41,440 246 00:11:41,440 --> 00:11:42,630 247 00:11:42,630 --> 00:11:45,460 248 00:11:45,460 --> 00:11:47,680 249 00:11:47,680 --> 00:11:49,750 250 00:11:49,750 --> 00:11:51,760 251 00:11:51,760 --> 00:11:53,350 252 00:11:53,350 --> 00:11:56,230 253 00:11:56,230 --> 00:11:57,370 254 00:11:57,370 --> 00:11:58,690 255 00:11:58,690 --> 00:12:01,870 256 00:12:01,870 --> 00:12:03,430 257 00:12:03,430 --> 00:12:05,860 258 00:12:05,860 --> 00:12:07,150 259 00:12:07,150 --> 00:12:10,480 260 00:12:10,480 --> 00:12:13,380 261 00:12:13,380 --> 00:12:17,400 262 00:12:17,400 --> 00:12:19,870 263 00:12:19,870 --> 00:12:21,760 264 00:12:21,760 --> 00:12:24,070 265 00:12:24,070 --> 00:12:27,220 266 00:12:27,220 --> 00:12:31,480 267 00:12:31,480 --> 00:12:34,450 268 00:12:34,450 --> 00:12:37,329 269 00:12:37,329 --> 00:12:40,750 270 00:12:40,750 --> 00:12:42,130 271 00:12:42,130 --> 00:12:45,490 272 00:12:45,490 --> 00:12:47,770 273 00:12:47,770 --> 00:12:48,910 274 00:12:48,910 --> 00:12:50,230 275 00:12:50,230 --> 00:12:51,880 276 00:12:51,880 --> 00:12:53,500 277 00:12:53,500 --> 00:12:56,090 278 00:12:56,090 --> 00:12:59,749 279 00:12:59,749 --> 00:13:01,370 280 00:13:01,370 --> 00:13:03,920 281 00:13:03,920 --> 00:13:05,660 282 00:13:05,660 --> 00:13:07,550 283 00:13:07,550 --> 00:13:10,879 284 00:13:10,879 --> 00:13:13,189 285 00:13:13,189 --> 00:13:15,410 286 00:13:15,410 --> 00:13:18,920 287 00:13:18,920 --> 00:13:20,509 288 00:13:20,509 --> 00:13:22,009 289 00:13:22,009 --> 00:13:26,150 290 00:13:26,150 --> 00:13:27,829 291 00:13:27,829 --> 00:13:30,980 292 00:13:30,980 --> 00:13:32,240 293 00:13:32,240 --> 00:13:34,009 294 00:13:34,009 --> 00:13:35,769 295 00:13:35,769 --> 00:13:39,110 296 00:13:39,110 --> 00:13:41,329 297 00:13:41,329 --> 00:13:45,680 298 00:13:45,680 --> 00:13:48,290 299 00:13:48,290 --> 00:13:49,879 300 00:13:49,879 --> 00:13:51,949 301 00:13:51,949 --> 00:13:53,569 302 00:13:53,569 --> 00:13:56,689 303 00:13:56,689 --> 00:14:00,290 304 00:14:00,290 --> 00:14:02,420 305 00:14:02,420 --> 00:14:04,490 306 00:14:04,490 --> 00:14:05,720 307 00:14:05,720 --> 00:14:07,400 308 00:14:07,400 --> 00:14:08,540 309 00:14:08,540 --> 00:14:10,249 310 00:14:10,249 --> 00:14:11,840 311 00:14:11,840 --> 00:14:14,480 312 00:14:14,480 --> 00:14:16,699 313 00:14:16,699 --> 00:14:19,069 314 00:14:19,069 --> 00:14:21,850 315 00:14:21,850 --> 00:14:24,230 316 00:14:24,230 --> 00:14:25,999 317 00:14:25,999 --> 00:14:30,050 318 00:14:30,050 --> 00:14:31,939 319 00:14:31,939 --> 00:14:34,160 320 00:14:34,160 --> 00:14:36,259 321 00:14:36,259 --> 00:14:38,240 322 00:14:38,240 --> 00:14:39,470 323 00:14:39,470 --> 00:14:41,179 324 00:14:41,179 --> 00:14:43,639 325 00:14:43,639 --> 00:14:45,379 326 00:14:45,379 --> 00:14:47,749 327 00:14:47,749 --> 00:14:49,579 328 00:14:49,579 --> 00:14:51,920 329 00:14:51,920 --> 00:14:53,780 330 00:14:53,780 --> 00:14:55,730 331 00:14:55,730 --> 00:14:57,319 332 00:14:57,319 --> 00:14:59,689 333 00:14:59,689 --> 00:15:01,610 334 00:15:01,610 --> 00:15:03,470 335 00:15:03,470 --> 00:15:06,679 336 00:15:06,679 --> 00:15:08,059 337 00:15:08,059 --> 00:15:08,069 338 00:15:08,069 --> 00:15:08,620 339 00:15:08,620 --> 00:15:10,990 340 00:15:10,990 --> 00:15:13,870 341 00:15:13,870 --> 00:15:16,690 342 00:15:16,690 --> 00:15:19,360 343 00:15:19,360 --> 00:15:20,530 344 00:15:20,530 --> 00:15:23,350 345 00:15:23,350 --> 00:15:24,820 346 00:15:24,820 --> 00:15:27,990 347 00:15:27,990 --> 00:15:30,280 348 00:15:30,280 --> 00:15:33,070 349 00:15:33,070 --> 00:15:35,170 350 00:15:35,170 --> 00:15:37,390 351 00:15:37,390 --> 00:15:39,520 352 00:15:39,520 --> 00:15:41,140 353 00:15:41,140 --> 00:15:43,030 354 00:15:43,030 --> 00:15:45,760 355 00:15:45,760 --> 00:15:48,550 356 00:15:48,550 --> 00:15:50,320 357 00:15:50,320 --> 00:15:53,170 358 00:15:53,170 --> 00:15:56,680 359 00:15:56,680 --> 00:16:00,460 360 00:16:00,460 --> 00:16:03,790 361 00:16:03,790 --> 00:16:05,530 362 00:16:05,530 --> 00:16:07,810 363 00:16:07,810 --> 00:16:10,300 364 00:16:10,300 --> 00:16:12,510 365 00:16:12,510 --> 00:16:14,920 366 00:16:14,920 --> 00:16:16,450 367 00:16:16,450 --> 00:16:18,400 368 00:16:18,400 --> 00:16:20,110 369 00:16:20,110 --> 00:16:21,520 370 00:16:21,520 --> 00:16:24,400 371 00:16:24,400 --> 00:16:28,180 372 00:16:28,180 --> 00:16:29,860 373 00:16:29,860 --> 00:16:32,920 374 00:16:32,920 --> 00:16:35,890 375 00:16:35,890 --> 00:16:37,330 376 00:16:37,330 --> 00:16:39,580 377 00:16:39,580 --> 00:16:42,010 378 00:16:42,010 --> 00:16:43,150 379 00:16:43,150 --> 00:16:44,770 380 00:16:44,770 --> 00:16:48,340 381 00:16:48,340 --> 00:16:51,040 382 00:16:51,040 --> 00:16:55,570 383 00:16:55,570 --> 00:16:58,350 384 00:16:58,350 --> 00:17:02,170 385 00:17:02,170 --> 00:17:04,870 386 00:17:04,870 --> 00:17:07,439 387 00:17:07,439 --> 00:17:12,429 388 00:17:12,429 --> 00:17:14,640 389 00:17:14,640 --> 00:17:16,929 390 00:17:16,929 --> 00:17:19,210 391 00:17:19,210 --> 00:17:21,189 392 00:17:21,189 --> 00:17:21,199 393 00:17:21,199 --> 00:17:22,000 394 00:17:22,000 --> 00:17:24,160 395 00:17:24,160 --> 00:17:26,740 396 00:17:26,740 --> 00:17:28,960 397 00:17:28,960 --> 00:17:30,040 398 00:17:30,040 --> 00:17:31,890 399 00:17:31,890 --> 00:17:34,600 400 00:17:34,600 --> 00:17:38,950 401 00:17:38,950 --> 00:17:40,870 402 00:17:40,870 --> 00:17:42,790 403 00:17:42,790 --> 00:17:46,690 404 00:17:46,690 --> 00:17:49,750 405 00:17:49,750 --> 00:17:51,780 406 00:17:51,780 --> 00:17:54,190 407 00:17:54,190 --> 00:17:58,660 408 00:17:58,660 --> 00:18:01,750 409 00:18:01,750 --> 00:18:03,760 410 00:18:03,760 --> 00:18:08,950 411 00:18:08,950 --> 00:18:11,080 412 00:18:11,080 --> 00:18:12,700 413 00:18:12,700 --> 00:18:15,280 414 00:18:15,280 --> 00:18:17,140 415 00:18:17,140 --> 00:18:18,340 416 00:18:18,340 --> 00:18:19,900 417 00:18:19,900 --> 00:18:21,220 418 00:18:21,220 --> 00:18:23,650 419 00:18:23,650 --> 00:18:29,560 420 00:18:29,560 --> 00:18:32,910 421 00:18:32,910 --> 00:18:35,500 422 00:18:35,500 --> 00:18:37,660 423 00:18:37,660 --> 00:18:40,360 424 00:18:40,360 --> 00:18:42,460 425 00:18:42,460 --> 00:18:44,770 426 00:18:44,770 --> 00:18:46,690 427 00:18:46,690 --> 00:18:48,550 428 00:18:48,550 --> 00:18:51,910 429 00:18:51,910 --> 00:18:54,100 430 00:18:54,100 --> 00:18:55,840 431 00:18:55,840 --> 00:18:58,030 432 00:18:58,030 --> 00:19:01,900 433 00:19:01,900 --> 00:19:06,490 434 00:19:06,490 --> 00:19:09,100 435 00:19:09,100 --> 00:19:10,900 436 00:19:10,900 --> 00:19:13,320 437 00:19:13,320 --> 00:19:16,870 438 00:19:16,870 --> 00:19:18,700 439 00:19:18,700 --> 00:19:21,310 440 00:19:21,310 --> 00:19:23,650 441 00:19:23,650 --> 00:19:26,890 442 00:19:26,890 --> 00:19:29,200 443 00:19:29,200 --> 00:19:31,560 444 00:19:31,560 --> 00:19:36,519 445 00:19:36,519 --> 00:19:40,149 446 00:19:40,149 --> 00:19:41,950 447 00:19:41,950 --> 00:19:43,149 448 00:19:43,149 --> 00:19:44,889 449 00:19:44,889 --> 00:19:48,159 450 00:19:48,159 --> 00:19:51,669 451 00:19:51,669 --> 00:19:53,889 452 00:19:53,889 --> 00:19:55,419 453 00:19:55,419 --> 00:19:57,669 454 00:19:57,669 --> 00:19:59,980 455 00:19:59,980 --> 00:20:02,529 456 00:20:02,529 --> 00:20:03,940 457 00:20:03,940 --> 00:20:06,639 458 00:20:06,639 --> 00:20:08,350 459 00:20:08,350 --> 00:20:11,230 460 00:20:11,230 --> 00:20:13,840 461 00:20:13,840 --> 00:20:17,740 462 00:20:17,740 --> 00:20:19,990 463 00:20:19,990 --> 00:20:21,820 464 00:20:21,820 --> 00:20:26,200 465 00:20:26,200 --> 00:20:28,419 466 00:20:28,419 --> 00:20:30,220 467 00:20:30,220 --> 00:20:31,930 468 00:20:31,930 --> 00:20:36,039 469 00:20:36,039 --> 00:20:37,539 470 00:20:37,539 --> 00:20:39,759 471 00:20:39,759 --> 00:20:42,759 472 00:20:42,759 --> 00:20:46,029 473 00:20:46,029 --> 00:20:47,799 474 00:20:47,799 --> 00:20:50,560 475 00:20:50,560 --> 00:20:54,129 476 00:20:54,129 --> 00:20:57,730 477 00:20:57,730 --> 00:20:59,619 478 00:20:59,619 --> 00:21:01,629 479 00:21:01,629 --> 00:21:03,970 480 00:21:03,970 --> 00:21:06,310 481 00:21:06,310 --> 00:21:07,840 482 00:21:07,840 --> 00:21:10,539 483 00:21:10,539 --> 00:21:13,029 484 00:21:13,029 --> 00:21:16,389 485 00:21:16,389 --> 00:21:20,680 486 00:21:20,680 --> 00:21:22,480 487 00:21:22,480 --> 00:21:25,029 488 00:21:25,029 --> 00:21:27,190 489 00:21:27,190 --> 00:21:28,779 490 00:21:28,779 --> 00:21:30,519 491 00:21:30,519 --> 00:21:34,409 492 00:21:34,409 --> 00:21:36,369 493 00:21:36,369 --> 00:21:39,460 494 00:21:39,460 --> 00:21:41,860 495 00:21:41,860 --> 00:21:43,180 496 00:21:43,180 --> 00:21:44,440 497 00:21:44,440 --> 00:21:44,450 498 00:21:44,450 --> 00:21:44,920 499 00:21:44,920 --> 00:21:47,170 500 00:21:47,170 --> 00:21:49,300 501 00:21:49,300 --> 00:21:51,180 502 00:21:51,180 --> 00:21:53,350 503 00:21:53,350 --> 00:21:54,490 504 00:21:54,490 --> 00:21:58,000 505 00:21:58,000 --> 00:22:00,040 506 00:22:00,040 --> 00:22:02,080 507 00:22:02,080 --> 00:22:05,080 508 00:22:05,080 --> 00:22:06,730 509 00:22:06,730 --> 00:22:09,130 510 00:22:09,130 --> 00:22:12,370 511 00:22:12,370 --> 00:22:15,040 512 00:22:15,040 --> 00:22:18,580 513 00:22:18,580 --> 00:22:20,730 514 00:22:20,730 --> 00:22:25,510 515 00:22:25,510 --> 00:22:28,330 516 00:22:28,330 --> 00:22:30,880 517 00:22:30,880 --> 00:22:37,600 518 00:22:37,600 --> 00:22:40,510 519 00:22:40,510 --> 00:22:43,630 520 00:22:43,630 --> 00:22:46,480 521 00:22:46,480 --> 00:22:48,580 522 00:22:48,580 --> 00:22:51,070 523 00:22:51,070 --> 00:22:52,630 524 00:22:52,630 --> 00:22:54,880 525 00:22:54,880 --> 00:22:57,160 526 00:22:57,160 --> 00:22:59,170 527 00:22:59,170 --> 00:23:02,260 528 00:23:02,260 --> 00:23:05,320 529 00:23:05,320 --> 00:23:07,240 530 00:23:07,240 --> 00:23:10,300 531 00:23:10,300 --> 00:23:13,390 532 00:23:13,390 --> 00:23:15,040 533 00:23:15,040 --> 00:23:18,070 534 00:23:18,070 --> 00:23:19,510 535 00:23:19,510 --> 00:23:22,660 536 00:23:22,660 --> 00:23:24,460 537 00:23:24,460 --> 00:23:26,950 538 00:23:26,950 --> 00:23:29,490 539 00:23:29,490 --> 00:23:35,750 540 00:23:35,750 --> 00:23:38,190 541 00:23:38,190 --> 00:23:42,720 542 00:23:42,720 --> 00:23:46,410 543 00:23:46,410 --> 00:23:48,210 544 00:23:48,210 --> 00:23:50,010 545 00:23:50,010 --> 00:23:52,440 546 00:23:52,440 --> 00:23:54,720 547 00:23:54,720 --> 00:23:57,060 548 00:23:57,060 --> 00:23:58,740 549 00:23:58,740 --> 00:24:01,470 550 00:24:01,470 --> 00:24:05,220 551 00:24:05,220 --> 00:24:07,140 552 00:24:07,140 --> 00:24:09,900 553 00:24:09,900 --> 00:24:11,370 554 00:24:11,370 --> 00:24:12,660 555 00:24:12,660 --> 00:24:14,880 556 00:24:14,880 --> 00:24:16,950 557 00:24:16,950 --> 00:24:18,990 558 00:24:18,990 --> 00:24:20,940 559 00:24:20,940 --> 00:24:23,660 560 00:24:23,660 --> 00:24:30,330 561 00:24:30,330 --> 00:24:35,910 562 00:24:35,910 --> 00:24:37,890 563 00:24:37,890 --> 00:24:40,590 564 00:24:40,590 --> 00:24:42,240 565 00:24:42,240 --> 00:24:44,130 566 00:24:44,130 --> 00:24:45,990 567 00:24:45,990 --> 00:24:48,600 568 00:24:48,600 --> 00:24:50,160 569 00:24:50,160 --> 00:24:53,910 570 00:24:53,910 --> 00:24:55,860 571 00:24:55,860 --> 00:24:57,900 572 00:24:57,900 --> 00:25:00,210 573 00:25:00,210 --> 00:25:02,010 574 00:25:02,010 --> 00:25:04,380 575 00:25:04,380 --> 00:25:05,730 576 00:25:05,730 --> 00:25:08,310 577 00:25:08,310 --> 00:25:09,960 578 00:25:09,960 --> 00:25:12,780 579 00:25:12,780 --> 00:25:17,390 580 00:25:17,390 --> 00:25:23,130 581 00:25:23,130 --> 00:25:24,960 582 00:25:24,960 --> 00:25:26,820 583 00:25:26,820 --> 00:25:29,700 584 00:25:29,700 --> 00:25:31,680 585 00:25:31,680 --> 00:25:33,360 586 00:25:33,360 --> 00:25:35,160 587 00:25:35,160 --> 00:25:37,650 588 00:25:37,650 --> 00:25:40,230 589 00:25:40,230 --> 00:25:42,690 590 00:25:42,690 --> 00:25:44,910 591 00:25:44,910 --> 00:25:47,820 592 00:25:47,820 --> 00:25:47,830 593 00:25:47,830 --> 00:25:48,320 594 00:25:48,320 --> 00:25:51,080 595 00:25:51,080 --> 00:25:53,180 596 00:25:53,180 --> 00:25:54,409 597 00:25:54,409 --> 00:25:58,840 598 00:25:58,840 --> 00:26:04,100 599 00:26:04,100 --> 00:26:06,200 600 00:26:06,200 --> 00:26:07,940 601 00:26:07,940 --> 00:26:09,590 602 00:26:09,590 --> 00:26:12,620 603 00:26:12,620 --> 00:26:15,529 604 00:26:15,529 --> 00:26:18,799 605 00:26:18,799 --> 00:26:21,500 606 00:26:21,500 --> 00:26:24,799 607 00:26:24,799 --> 00:26:27,830 608 00:26:27,830 --> 00:26:31,490 609 00:26:31,490 --> 00:26:36,139 610 00:26:36,139 --> 00:26:42,080 611 00:26:42,080 --> 00:26:44,090 612 00:26:44,090 --> 00:26:46,850 613 00:26:46,850 --> 00:26:49,909 614 00:26:49,909 --> 00:26:53,180 615 00:26:53,180 --> 00:26:57,649 616 00:26:57,649 --> 00:27:00,649 617 00:27:00,649 --> 00:27:03,830 618 00:27:03,830 --> 00:27:05,840 619 00:27:05,840 --> 00:27:08,120 620 00:27:08,120 --> 00:27:10,490 621 00:27:10,490 --> 00:27:13,639 622 00:27:13,639 --> 00:27:15,620 623 00:27:15,620 --> 00:27:17,480 624 00:27:17,480 --> 00:27:20,269 625 00:27:20,269 --> 00:27:22,310 626 00:27:22,310 --> 00:27:24,049 627 00:27:24,049 --> 00:27:27,139 628 00:27:27,139 --> 00:27:30,590 629 00:27:30,590 --> 00:27:33,830 630 00:27:33,830 --> 00:27:35,240 631 00:27:35,240 --> 00:27:37,279 632 00:27:37,279 --> 00:27:38,840 633 00:27:38,840 --> 00:27:40,970 634 00:27:40,970 --> 00:27:44,090 635 00:27:44,090 --> 00:27:46,370 636 00:27:46,370 --> 00:27:49,639 637 00:27:49,639 --> 00:27:53,080 638 00:27:53,080 --> 00:27:56,810 639 00:27:56,810 --> 00:27:58,370 640 00:27:58,370 --> 00:28:01,550 641 00:28:01,550 --> 00:28:03,950 642 00:28:03,950 --> 00:28:05,780 643 00:28:05,780 --> 00:28:07,490 644 00:28:07,490 --> 00:28:09,380 645 00:28:09,380 --> 00:28:11,540 646 00:28:11,540 --> 00:28:13,730 647 00:28:13,730 --> 00:28:17,570 648 00:28:17,570 --> 00:28:19,880 649 00:28:19,880 --> 00:28:23,240 650 00:28:23,240 --> 00:28:27,350 651 00:28:27,350 --> 00:28:30,740 652 00:28:30,740 --> 00:28:33,470 653 00:28:33,470 --> 00:28:35,960 654 00:28:35,960 --> 00:28:40,310 655 00:28:40,310 --> 00:28:41,720 656 00:28:41,720 --> 00:28:44,840 657 00:28:44,840 --> 00:28:47,510 658 00:28:47,510 --> 00:28:50,360 659 00:28:50,360 --> 00:28:51,440 660 00:28:51,440 --> 00:28:52,970 661 00:28:52,970 --> 00:28:55,070 662 00:28:55,070 --> 00:28:58,490 663 00:28:58,490 --> 00:29:00,560 664 00:29:00,560 --> 00:29:02,600 665 00:29:02,600 --> 00:29:04,280 666 00:29:04,280 --> 00:29:06,950 667 00:29:06,950 --> 00:29:08,870 668 00:29:08,870 --> 00:29:10,610 669 00:29:10,610 --> 00:29:12,800 670 00:29:12,800 --> 00:29:15,290 671 00:29:15,290 --> 00:29:17,060 672 00:29:17,060 --> 00:29:21,350 673 00:29:21,350 --> 00:29:22,760 674 00:29:22,760 --> 00:29:24,260 675 00:29:24,260 --> 00:29:26,120 676 00:29:26,120 --> 00:29:27,710 677 00:29:27,710 --> 00:29:29,780 678 00:29:29,780 --> 00:29:31,640 679 00:29:31,640 --> 00:29:33,440 680 00:29:33,440 --> 00:29:36,050 681 00:29:36,050 --> 00:29:38,780 682 00:29:38,780 --> 00:29:40,430 683 00:29:40,430 --> 00:29:42,230 684 00:29:42,230 --> 00:29:43,640 685 00:29:43,640 --> 00:29:45,500 686 00:29:45,500 --> 00:29:48,560 687 00:29:48,560 --> 00:29:50,330 688 00:29:50,330 --> 00:29:54,830 689 00:29:54,830 --> 00:29:56,450 690 00:29:56,450 --> 00:30:00,170 691 00:30:00,170 --> 00:30:02,480 692 00:30:02,480 --> 00:30:04,910 693 00:30:04,910 --> 00:30:08,000 694 00:30:08,000 --> 00:30:10,450 695 00:30:10,450 --> 00:30:12,980 696 00:30:12,980 --> 00:30:12,990 697 00:30:12,990 --> 00:30:14,000 698 00:30:14,000 --> 00:30:16,190 699 00:30:16,190 --> 00:30:17,900 700 00:30:17,900 --> 00:30:19,730 701 00:30:19,730 --> 00:30:24,230 702 00:30:24,230 --> 00:30:27,020 703 00:30:27,020 --> 00:30:28,400 704 00:30:28,400 --> 00:30:30,920 705 00:30:30,920 --> 00:30:33,170 706 00:30:33,170 --> 00:30:36,260 707 00:30:36,260 --> 00:30:39,980 708 00:30:39,980 --> 00:30:42,050 709 00:30:42,050 --> 00:30:47,570 710 00:30:47,570 --> 00:30:49,580 711 00:30:49,580 --> 00:30:54,140 712 00:30:54,140 --> 00:30:56,060 713 00:30:56,060 --> 00:30:58,190 714 00:30:58,190 --> 00:30:59,510 715 00:30:59,510 --> 00:31:02,170 716 00:31:02,170 --> 00:31:05,090 717 00:31:05,090 --> 00:31:07,130 718 00:31:07,130 --> 00:31:09,470 719 00:31:09,470 --> 00:31:12,100 720 00:31:12,100 --> 00:31:14,750 721 00:31:14,750 --> 00:31:16,850 722 00:31:16,850 --> 00:31:19,880 723 00:31:19,880 --> 00:31:24,100 724 00:31:24,100 --> 00:31:26,300 725 00:31:26,300 --> 00:31:28,130 726 00:31:28,130 --> 00:31:30,230 727 00:31:30,230 --> 00:31:31,730 728 00:31:31,730 --> 00:31:33,770 729 00:31:33,770 --> 00:31:36,110 730 00:31:36,110 --> 00:31:38,210 731 00:31:38,210 --> 00:31:39,980 732 00:31:39,980 --> 00:31:41,690 733 00:31:41,690 --> 00:31:44,060 734 00:31:44,060 --> 00:31:45,620 735 00:31:45,620 --> 00:31:47,330 736 00:31:47,330 --> 00:31:49,490 737 00:31:49,490 --> 00:31:52,460 738 00:31:52,460 --> 00:31:54,620 739 00:31:54,620 --> 00:31:57,200 740 00:31:57,200 --> 00:31:59,750 741 00:31:59,750 --> 00:32:02,750 742 00:32:02,750 --> 00:32:04,700 743 00:32:04,700 --> 00:32:06,200 744 00:32:06,200 --> 00:32:08,510 745 00:32:08,510 --> 00:32:10,130 746 00:32:10,130 --> 00:32:14,180 747 00:32:14,180 --> 00:32:17,030 748 00:32:17,030 --> 00:32:19,550 749 00:32:19,550 --> 00:32:25,490 750 00:32:25,490 --> 00:32:28,000 751 00:32:28,000 --> 00:32:30,500 752 00:32:30,500 --> 00:32:33,470 753 00:32:33,470 --> 00:32:34,940 754 00:32:34,940 --> 00:32:39,320 755 00:32:39,320 --> 00:32:41,570 756 00:32:41,570 --> 00:32:43,370 757 00:32:43,370 --> 00:32:45,500 758 00:32:45,500 --> 00:32:48,020 759 00:32:48,020 --> 00:32:49,520 760 00:32:49,520 --> 00:32:50,870 761 00:32:50,870 --> 00:32:52,220 762 00:32:52,220 --> 00:32:56,150 763 00:32:56,150 --> 00:32:58,700 764 00:32:58,700 --> 00:33:00,770 765 00:33:00,770 --> 00:33:03,980 766 00:33:03,980 --> 00:33:05,960 767 00:33:05,960 --> 00:33:08,270 768 00:33:08,270 --> 00:33:09,860 769 00:33:09,860 --> 00:33:11,810 770 00:33:11,810 --> 00:33:13,760 771 00:33:13,760 --> 00:33:16,910 772 00:33:16,910 --> 00:33:22,060 773 00:33:22,060 --> 00:33:24,170 774 00:33:24,170 --> 00:33:25,790 775 00:33:25,790 --> 00:33:32,990 776 00:33:32,990 --> 00:33:34,520 777 00:33:34,520 --> 00:33:37,160 778 00:33:37,160 --> 00:33:38,660 779 00:33:38,660 --> 00:33:40,910 780 00:33:40,910 --> 00:33:43,520 781 00:33:43,520 --> 00:33:45,890 782 00:33:45,890 --> 00:33:47,960 783 00:33:47,960 --> 00:33:50,990 784 00:33:50,990 --> 00:33:53,050 785 00:33:53,050 --> 00:33:55,010 786 00:33:55,010 --> 00:33:57,380 787 00:33:57,380 --> 00:34:00,680 788 00:34:00,680 --> 00:34:02,990 789 00:34:02,990 --> 00:34:05,420 790 00:34:05,420 --> 00:34:07,460 791 00:34:07,460 --> 00:34:09,890 792 00:34:09,890 --> 00:34:11,840 793 00:34:11,840 --> 00:34:18,000 794 00:34:18,000 --> 00:34:23,680 795 00:34:23,680 --> 00:34:25,330 796 00:34:25,330 --> 00:34:27,280 797 00:34:27,280 --> 00:34:29,650 798 00:34:29,650 --> 00:34:31,570 799 00:34:31,570 --> 00:34:33,970 800 00:34:33,970 --> 00:34:35,680 801 00:34:35,680 --> 00:34:37,480 802 00:34:37,480 --> 00:34:39,640 803 00:34:39,640 --> 00:34:43,419 804 00:34:43,419 --> 00:34:45,430 805 00:34:45,430 --> 00:34:50,980 806 00:34:50,980 --> 00:34:54,100 807 00:34:54,100 --> 00:34:56,680 808 00:34:56,680 --> 00:34:59,350 809 00:34:59,350 --> 00:35:01,240 810 00:35:01,240 --> 00:35:04,060 811 00:35:04,060 --> 00:35:06,850 812 00:35:06,850 --> 00:35:08,800 813 00:35:08,800 --> 00:35:12,820 814 00:35:12,820 --> 00:35:15,370 815 00:35:15,370 --> 00:35:17,380 816 00:35:17,380 --> 00:35:20,310 817 00:35:20,310 --> 00:35:22,750 818 00:35:22,750 --> 00:35:25,600 819 00:35:25,600 --> 00:35:27,910 820 00:35:27,910 --> 00:35:29,680 821 00:35:29,680 --> 00:35:31,570 822 00:35:31,570 --> 00:35:33,520 823 00:35:33,520 --> 00:35:35,470 824 00:35:35,470 --> 00:35:37,570 825 00:35:37,570 --> 00:35:40,150 826 00:35:40,150 --> 00:35:41,830 827 00:35:41,830 --> 00:35:44,170 828 00:35:44,170 --> 00:35:49,020 829 00:35:49,020 --> 00:35:52,260 830 00:35:52,260 --> 00:35:55,480 831 00:35:55,480 --> 00:35:57,520 832 00:35:57,520 --> 00:35:59,140 833 00:35:59,140 --> 00:36:03,700 834 00:36:03,700 --> 00:36:07,450 835 00:36:07,450 --> 00:36:10,110 836 00:36:10,110 --> 00:36:13,450 837 00:36:13,450 --> 00:36:15,220 838 00:36:15,220 --> 00:36:17,530 839 00:36:17,530 --> 00:36:19,080 840 00:36:19,080 --> 00:36:22,120 841 00:36:22,120 --> 00:36:24,870 842 00:36:24,870 --> 00:36:26,930 843 00:36:26,930 --> 00:36:31,130 844 00:36:31,130 --> 00:36:32,690 845 00:36:32,690 --> 00:36:34,910 846 00:36:34,910 --> 00:36:36,530 847 00:36:36,530 --> 00:36:38,540 848 00:36:38,540 --> 00:36:41,120 849 00:36:41,120 --> 00:36:44,720 850 00:36:44,720 --> 00:36:49,010 851 00:36:49,010 --> 00:36:53,329 852 00:36:53,329 --> 00:36:55,160 853 00:36:55,160 --> 00:36:57,230 854 00:36:57,230 --> 00:36:59,359 855 00:36:59,359 --> 00:37:02,300 856 00:37:02,300 --> 00:37:05,329 857 00:37:05,329 --> 00:37:07,730 858 00:37:07,730 --> 00:37:12,410 859 00:37:12,410 --> 00:37:17,450 860 00:37:17,450 --> 00:37:19,730 861 00:37:19,730 --> 00:37:21,770 862 00:37:21,770 --> 00:37:24,050 863 00:37:24,050 --> 00:37:25,849 864 00:37:25,849 --> 00:37:29,150 865 00:37:29,150 --> 00:37:31,250 866 00:37:31,250 --> 00:37:33,349 867 00:37:33,349 --> 00:37:35,480 868 00:37:35,480 --> 00:37:37,940 869 00:37:37,940 --> 00:37:44,030 870 00:37:44,030 --> 00:37:47,450 871 00:37:47,450 --> 00:37:51,950 872 00:37:51,950 --> 00:37:55,280 873 00:37:55,280 --> 00:37:57,950 874 00:37:57,950 --> 00:37:59,540 875 00:37:59,540 --> 00:38:01,280 876 00:38:01,280 --> 00:38:03,530 877 00:38:03,530 --> 00:38:05,089 878 00:38:05,089 --> 00:38:07,940 879 00:38:07,940 --> 00:38:09,680 880 00:38:09,680 --> 00:38:11,839 881 00:38:11,839 --> 00:38:15,200 882 00:38:15,200 --> 00:38:18,829 883 00:38:18,829 --> 00:38:20,750 884 00:38:20,750 --> 00:38:22,339 885 00:38:22,339 --> 00:38:25,550 886 00:38:25,550 --> 00:38:30,170 887 00:38:30,170 --> 00:38:31,730 888 00:38:31,730 --> 00:38:33,260 889 00:38:33,260 --> 00:38:35,420 890 00:38:35,420 --> 00:38:37,160 891 00:38:37,160 --> 00:38:39,380 892 00:38:39,380 --> 00:38:40,610 893 00:38:40,610 --> 00:38:43,550 894 00:38:43,550 --> 00:38:46,100 895 00:38:46,100 --> 00:38:49,550 896 00:38:49,550 --> 00:38:51,950 897 00:38:51,950 --> 00:38:55,400 898 00:38:55,400 --> 00:38:58,520 899 00:38:58,520 --> 00:39:00,640 900 00:39:00,640 --> 00:39:02,810 901 00:39:02,810 --> 00:39:05,540 902 00:39:05,540 --> 00:39:06,980 903 00:39:06,980 --> 00:39:09,860 904 00:39:09,860 --> 00:39:12,350 905 00:39:12,350 --> 00:39:14,440 906 00:39:14,440 --> 00:39:17,600 907 00:39:17,600 --> 00:39:19,250 908 00:39:19,250 --> 00:39:21,110 909 00:39:21,110 --> 00:39:23,390 910 00:39:23,390 --> 00:39:26,090 911 00:39:26,090 --> 00:39:28,280 912 00:39:28,280 --> 00:39:30,380 913 00:39:30,380 --> 00:39:31,820 914 00:39:31,820 --> 00:39:34,700 915 00:39:34,700 --> 00:39:40,460 916 00:39:40,460 --> 00:39:43,040 917 00:39:43,040 --> 00:39:45,500 918 00:39:45,500 --> 00:39:46,820 919 00:39:46,820 --> 00:39:49,220 920 00:39:49,220 --> 00:39:53,180 921 00:39:53,180 --> 00:39:57,740 922 00:39:57,740 --> 00:39:59,570 923 00:39:59,570 --> 00:40:01,790 924 00:40:01,790 --> 00:40:06,140 925 00:40:06,140 --> 00:40:10,760 926 00:40:10,760 --> 00:40:12,620 927 00:40:12,620 --> 00:40:15,170 928 00:40:15,170 --> 00:40:18,350 929 00:40:18,350 --> 00:40:20,300 930 00:40:20,300 --> 00:40:22,400 931 00:40:22,400 --> 00:40:24,860 932 00:40:24,860 --> 00:40:26,920 933 00:40:26,920 --> 00:40:29,950 934 00:40:29,950 --> 00:40:32,270 935 00:40:32,270 --> 00:40:35,240 936 00:40:35,240 --> 00:40:36,560 937 00:40:36,560 --> 00:40:38,210 938 00:40:38,210 --> 00:40:40,100 939 00:40:40,100 --> 00:40:42,320 940 00:40:42,320 --> 00:40:43,730 941 00:40:43,730 --> 00:40:46,270 942 00:40:46,270 --> 00:40:48,890 943 00:40:48,890 --> 00:40:51,260 944 00:40:51,260 --> 00:40:52,790 945 00:40:52,790 --> 00:40:58,130 946 00:40:58,130 --> 00:41:01,700 947 00:41:01,700 --> 00:41:04,190 948 00:41:04,190 --> 00:41:06,650 949 00:41:06,650 --> 00:41:09,230 950 00:41:09,230 --> 00:41:10,670 951 00:41:10,670 --> 00:41:14,300 952 00:41:14,300 --> 00:41:17,480 953 00:41:17,480 --> 00:41:19,850 954 00:41:19,850 --> 00:41:21,020 955 00:41:21,020 --> 00:41:23,180 956 00:41:23,180 --> 00:41:26,150 957 00:41:26,150 --> 00:41:27,860 958 00:41:27,860 --> 00:41:32,540 959 00:41:32,540 --> 00:41:35,540 960 00:41:35,540 --> 00:41:37,610 961 00:41:37,610 --> 00:41:38,840 962 00:41:38,840 --> 00:41:41,450 963 00:41:41,450 --> 00:41:42,830 964 00:41:42,830 --> 00:41:44,600 965 00:41:44,600 --> 00:41:47,150 966 00:41:47,150 --> 00:41:49,960 967 00:41:49,960 --> 00:41:51,920 968 00:41:51,920 --> 00:41:54,320 969 00:41:54,320 --> 00:41:57,500 970 00:41:57,500 --> 00:42:00,440 971 00:42:00,440 --> 00:42:04,010 972 00:42:04,010 --> 00:42:05,330 973 00:42:05,330 --> 00:42:08,060 974 00:42:08,060 --> 00:42:14,630 975 00:42:14,630 --> 00:42:16,700 976 00:42:16,700 --> 00:42:18,320 977 00:42:18,320 --> 00:42:20,800 978 00:42:20,800 --> 00:42:24,260 979 00:42:24,260 --> 00:42:26,510 980 00:42:26,510 --> 00:42:29,270 981 00:42:29,270 --> 00:42:31,190 982 00:42:31,190 --> 00:42:33,230 983 00:42:33,230 --> 00:42:36,770 984 00:42:36,770 --> 00:42:39,020 985 00:42:39,020 --> 00:42:43,670 986 00:42:43,670 --> 00:42:45,530 987 00:42:45,530 --> 00:42:48,770 988 00:42:48,770 --> 00:42:51,890 989 00:42:51,890 --> 00:42:53,450 990 00:42:53,450 --> 00:42:56,780 991 00:42:56,780 --> 00:42:59,570 992 00:42:59,570 --> 00:43:01,670 993 00:43:01,670 --> 00:43:04,640 994 00:43:04,640 --> 00:43:06,470 995 00:43:06,470 --> 00:43:09,680 996 00:43:09,680 --> 00:43:11,390 997 00:43:11,390 --> 00:43:13,820 998 00:43:13,820 --> 00:43:15,770 999 00:43:15,770 --> 00:43:17,840 1000 00:43:17,840 --> 00:43:20,450 1001 00:43:20,450 --> 00:43:22,160 1002 00:43:22,160 --> 00:43:25,310 1003 00:43:25,310 --> 00:43:27,440 1004 00:43:27,440 --> 00:43:29,240 1005 00:43:29,240 --> 00:43:30,830 1006 00:43:30,830 --> 00:43:32,450 1007 00:43:32,450 --> 00:43:37,280 1008 00:43:37,280 --> 00:43:40,070 1009 00:43:40,070 --> 00:43:42,550 1010 00:43:42,550 --> 00:43:47,210 1011 00:43:47,210 --> 00:43:49,310 1012 00:43:49,310 --> 00:43:51,470 1013 00:43:51,470 --> 00:43:53,120 1014 00:43:53,120 --> 00:43:56,270 1015 00:43:56,270 --> 00:43:57,830 1016 00:43:57,830 --> 00:44:00,950 1017 00:44:00,950 --> 00:44:02,710 1018 00:44:02,710 --> 00:44:05,720 1019 00:44:05,720 --> 00:44:07,850 1020 00:44:07,850 --> 00:44:10,280 1021 00:44:10,280 --> 00:44:11,750 1022 00:44:11,750 --> 00:44:19,070 1023 00:44:19,070 --> 00:44:23,060 1024 00:44:23,060 --> 00:44:27,200 1025 00:44:27,200 --> 00:44:29,210 1026 00:44:29,210 --> 00:44:32,360 1027 00:44:32,360 --> 00:44:38,660 1028 00:44:38,660 --> 00:44:45,680 1029 00:44:45,680 --> 00:44:54,910 1030 00:44:54,910 --> 00:45:01,640 1031 00:45:01,640 --> 00:45:04,400 1032 00:45:04,400 --> 00:45:05,990 1033 00:45:05,990 --> 00:45:07,609 1034 00:45:07,609 --> 00:45:10,430 1035 00:45:10,430 --> 00:45:14,230 1036 00:45:14,230 --> 00:45:19,849 1037 00:45:19,849 --> 00:45:30,230 1038 00:45:30,230 --> 00:45:34,730 1039 00:45:34,730 --> 00:45:36,560 1040 00:45:36,560 --> 00:45:38,060 1041 00:45:38,060 --> 00:45:40,220 1042 00:45:40,220 --> 00:45:41,510 1043 00:45:41,510 --> 00:45:43,760 1044 00:45:43,760 --> 00:45:46,430 1045 00:45:46,430 --> 00:45:48,349 1046 00:45:48,349 --> 00:45:49,609 1047 00:45:49,609 --> 00:45:52,339 1048 00:45:52,339 --> 00:45:54,140 1049 00:45:54,140 --> 00:45:56,359 1050 00:45:56,359 --> 00:45:58,970 1051 00:45:58,970 --> 00:46:01,069 1052 00:46:01,069 --> 00:46:02,990 1053 00:46:02,990 --> 00:46:05,059 1054 00:46:05,059 --> 00:46:07,579 1055 00:46:07,579 --> 00:46:09,800 1056 00:46:09,800 --> 00:46:11,510 1057 00:46:11,510 --> 00:46:14,480 1058 00:46:14,480 --> 00:46:17,000 1059 00:46:17,000 --> 00:46:18,859 1060 00:46:18,859 --> 00:46:20,900 1061 00:46:20,900 --> 00:46:23,000 1062 00:46:23,000 --> 00:46:26,240 1063 00:46:26,240 --> 00:46:28,730 1064 00:46:28,730 --> 00:46:31,160 1065 00:46:31,160 --> 00:46:33,620 1066 00:46:33,620 --> 00:46:38,960 1067 00:46:38,960 --> 00:46:45,069 1068 00:46:45,069 --> 00:46:51,620 1069 00:46:51,620 --> 00:46:59,450 1070 00:46:59,450 --> 00:47:02,480 1071 00:47:02,480 --> 00:47:12,070 1072 00:47:12,070 --> 00:47:23,810 1073 00:47:23,810 --> 00:47:25,970 1074 00:47:25,970 --> 00:47:27,740 1075 00:47:27,740 --> 00:47:30,620 1076 00:47:30,620 --> 00:47:33,609 1077 00:47:33,609 --> 00:47:36,890 1078 00:47:36,890 --> 00:47:42,140 1079 00:47:42,140 --> 00:47:44,210 1080 00:47:44,210 --> 00:47:47,000 1081 00:47:47,000 --> 00:47:48,980 1082 00:47:48,980 --> 00:47:51,890 1083 00:47:51,890 --> 00:47:54,680 1084 00:47:54,680 --> 00:47:56,359 1085 00:47:56,359 --> 00:47:58,580 1086 00:47:58,580 --> 00:48:00,080 1087 00:48:00,080 --> 00:48:02,270 1088 00:48:02,270 --> 00:48:06,500 1089 00:48:06,500 --> 00:48:08,300 1090 00:48:08,300 --> 00:48:10,910 1091 00:48:10,910 --> 00:48:12,710 1092 00:48:12,710 --> 00:48:14,900 1093 00:48:14,900 --> 00:48:18,530 1094 00:48:18,530 --> 00:48:20,930 1095 00:48:20,930 --> 00:48:24,500 1096 00:48:24,500 --> 00:48:27,140 1097 00:48:27,140 --> 00:48:29,810 1098 00:48:29,810 --> 00:48:32,210 1099 00:48:32,210 --> 00:48:33,650 1100 00:48:33,650 --> 00:48:35,240 1101 00:48:35,240 --> 00:48:37,820 1102 00:48:37,820 --> 00:48:39,349 1103 00:48:39,349 --> 00:48:41,420 1104 00:48:41,420 --> 00:48:43,340 1105 00:48:43,340 --> 00:48:46,220 1106 00:48:46,220 --> 00:48:49,599 1107 00:48:49,599 --> 00:48:53,390 1108 00:48:53,390 --> 00:48:55,700 1109 00:48:55,700 --> 00:48:58,760 1110 00:48:58,760 --> 00:49:01,070 1111 00:49:01,070 --> 00:49:03,200 1112 00:49:03,200 --> 00:49:06,940 1113 00:49:06,940 --> 00:49:09,400 1114 00:49:09,400 --> 00:49:11,750 1115 00:49:11,750 --> 00:49:14,660 1116 00:49:14,660 --> 00:49:17,960 1117 00:49:17,960 --> 00:49:21,890 1118 00:49:21,890 --> 00:49:23,360 1119 00:49:23,360 --> 00:49:24,680 1120 00:49:24,680 --> 00:49:27,260 1121 00:49:27,260 --> 00:49:30,020 1122 00:49:30,020 --> 00:49:32,510 1123 00:49:32,510 --> 00:49:34,670 1124 00:49:34,670 --> 00:49:40,220 1125 00:49:40,220 --> 00:49:42,800 1126 00:49:42,800 --> 00:49:44,300 1127 00:49:44,300 --> 00:49:46,850 1128 00:49:46,850 --> 00:49:49,400 1129 00:49:49,400 --> 00:49:51,590 1130 00:49:51,590 --> 00:49:53,540 1131 00:49:53,540 --> 00:49:54,920 1132 00:49:54,920 --> 00:49:56,810 1133 00:49:56,810 --> 00:49:58,520 1134 00:49:58,520 --> 00:50:01,070 1135 00:50:01,070 --> 00:50:05,020 1136 00:50:05,020 --> 00:50:09,200 1137 00:50:09,200 --> 00:50:12,380 1138 00:50:12,380 --> 00:50:15,290 1139 00:50:15,290 --> 00:50:19,190 1140 00:50:19,190 --> 00:50:21,110 1141 00:50:21,110 --> 00:50:22,460 1142 00:50:22,460 --> 00:50:23,930 1143 00:50:23,930 --> 00:50:27,320 1144 00:50:27,320 --> 00:50:28,760 1145 00:50:28,760 --> 00:50:30,590 1146 00:50:30,590 --> 00:50:33,710 1147 00:50:33,710 --> 00:50:36,860 1148 00:50:36,860 --> 00:50:47,620 1149 00:50:47,620 --> 00:50:47,630 1150 00:50:47,630 --> 00:50:49,690