{"id":0,"registry":{"0":{"submorphs":[{"__isSmartRef__":true,"id":1},{"__isSmartRef__":true,"id":13},{"__isSmartRef__":true,"id":28},{"__isSmartRef__":true,"id":34},{"__isSmartRef__":true,"id":49},{"__isSmartRef__":true,"id":64},{"__isSmartRef__":true,"id":79},{"__isSmartRef__":true,"id":94},{"__isSmartRef__":true,"id":202}],"scripts":[],"id":"8A07D008-D605-4285-A0A9-8D4C7EB9102E","shape":{"__isSmartRef__":true,"id":208},"__layered_droppingEnabled__":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"CurveMaker","partsBinMetaInfo":{"__isSmartRef__":true,"id":209},"eventHandler":{"__isSmartRef__":true,"id":236},"derivationIds":[127,"F0291F62-F100-480C-AEBF-0230398F7983","AE8B5ED7-E305-45BC-BE4A-1C28A49EE12B","39BA345C-17FA-45A0-BAC2-F0CF5654ACF8","FE91EA31-D8AE-461B-8A49-95DA5FBAE5B4","F38439A3-2F4E-4AC2-BF73-2633C00B1393","6748F5B5-2284-4748-A6EE-F1A261CBAD0B","BBAFB862-93AE-4F89-BCFF-9F1C67B7FE4C","7EC17E78-593A-4CC8-B7E3-859BCBBFE785","BD8BECDB-A9A1-4009-B433-C925F0AFCCFC","F2677A9D-5855-4DF2-B248-94545B34B762","D52188B3-7DC0-410E-96B1-50892AC00A37","1C17567C-751A-447E-A93C-0CE8CAEEF262","C31986AF-AB07-427F-BD76-E0F3859AC975"],"partTests":{"__isSmartRef__":true,"id":237},"_ClipMode":"visible","moved":true,"droppingEnabled":true,"isBeingDragged":false,"_Rotation":0,"_Scale":1,"layout":{"__isSmartRef__":true,"id":242},"choices":["dragon","fdragon","4 dragons","hilbert","fillbert","4 fillberts"],"maxOrder":10,"orderInt":0,"partial":0,"fraction":0,"currentCurves":[],"selection":0,"__serializedExpressions__":["_Position"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":243},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(0.0,0.0)"},"1":{"submorphs":[{"__isSmartRef__":true,"id":2}],"scripts":[],"id":"050F1FFD-83F6-454E-B797-A21BD0FB19A0","shape":{"__isSmartRef__":true,"id":5},"droppingEnabled":true,"halosEnabled":true,"attributeConnections":[{"__isSmartRef__":true,"id":6},{"__isSmartRef__":true,"id":7}],"doNotSerialize":["$$value"],"doNotCopyProperties":["$$value"],"value":0,"sliderExtent":0.1,"valueScale":1,"sliderKnob":{"__isSmartRef__":true,"id":2},"styleClass":["slider_background_horizontal"],"showsHalos":false,"name":"Slider","partsBinMetaInfo":{"__isSmartRef__":true,"id":9},"eventHandler":{"__isSmartRef__":true,"id":11},"layout":{"__isSmartRef__":true,"id":12},"derivationIds":[2631,"E6C0AF56-6D3E-41C8-AE8E-A0520F495C6B"],"_ClipMode":"visible","moved":true,"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Slider","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(97.0,80.0)","distanceToDragEvent":"lively.pt(147.0,-13.0)"},"2":{"submorphs":[],"scripts":[],"id":"33054CD5-A644-4D9C-8093-15EABF88820C","shape":{"__isSmartRef__":true,"id":3},"droppingEnabled":true,"halosEnabled":true,"draggingEnabled":true,"slider":{"__isSmartRef__":true,"id":1},"owner":{"__isSmartRef__":true,"id":1},"styleClass":["slider_horizontal"],"eventHandler":{"__isSmartRef__":true,"id":4},"derivationIds":[2632,"A8917D7B-B083-4C54-AFA0-5443B4DEF9E4"],"_ClipMode":"visible","isBeingDragged":false,"__serializedExpressions__":["_Position","hitPoint"],"__LivelyClassName__":"lively.morphic.SliderKnob","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(0.0,0.0)","hitPoint":"lively.pt(9.0,9.0)"},"3":{"_BorderWidth":1,"_BorderRadius":6,"__serializedExpressions__":["_Fill","position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Fill":"lively.morphic.Gradient.create({\n  stops: [{\n    color: Color.rgb(196,211,221),\n    offset: 0\n  },{\n    color: Color.rgb(137,167,187),\n    offset: 0.5\n  },{\n    color: Color.rgb(96,130,153),\n    offset: 1\n  }],\n  type: \"linear\",\n  vector: lively.rect(0,0,0,1)\n})","position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(21.1,29.0)","_BorderColor":"Color.rgb(102,102,102)","_Padding":"lively.rect(0,0,0,0)"},"4":{"morph":{"__isSmartRef__":true,"id":2},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"5":{"_BorderWidth":1,"_BorderRadius":6,"_Opacity":1,"_BorderStyle":"solid","__serializedExpressions__":["_Fill","position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Fill":"lively.morphic.Gradient.create({\n  stops: [{\n    color: Color.rgb(204,204,204),\n    offset: 0\n  },{\n    color: Color.rgb(240,240,240),\n    offset: 0.4\n  },{\n    color: Color.rgb(245,245,245),\n    offset: 1\n  }],\n  type: \"linear\",\n  vector: lively.rect(0,0,0,1)\n})","position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(211.0,29.0)","_BorderColor":"Color.rgb(192,192,192)","_Padding":"lively.rect(0,0,0,0)"},"6":{"sourceObj":{"__isSmartRef__":true,"id":1},"sourceAttrName":"value","targetObj":{"__isSmartRef__":true,"id":1},"targetMethodName":"adjustSliderParts","__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"7":{"sourceObj":{"__isSmartRef__":true,"id":1},"sourceAttrName":"value","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"setOrder","varMapping":{"__isSmartRef__":true,"id":8},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"8":{"source":{"__isSmartRef__":true,"id":1},"target":{"__isSmartRef__":true,"id":0}},"9":{"requiredModules":[],"partsSpaceName":"PartsBin/Inputs/","migrationLevel":4,"partName":"Slider","comment":"The connection point \"value\" can be used to read/write the slider knob position.","changes":[{"__isSmartRef__":true,"id":10}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Wed Feb 06 2013 21:45:01 GMT-0800 (PST)\")"},"10":{"author":"dustin.glaeser","message":"no comment","id":"9CD9677C-9A79-4D71-85C1-E5C72C253D16","__serializedExpressions__":["date"],"date":"new Date(\"Thu Dec 13 2012 02:34:16 GMT-0800 (PST)\")"},"11":{"morph":{"__isSmartRef__":true,"id":1},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"12":{},"13":{"submorphs":[],"scripts":[],"id":"48B3690D-744B-4BD8-ACA5-87A5F451D83A","shape":{"__isSmartRef__":true,"id":14},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":false,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":20,"name":"Text","partsBinMetaInfo":{"__isSmartRef__":true,"id":15},"textChunks":[{"__isSmartRef__":true,"id":24}],"charsReplaced":"Some Text","lastFindLoc":9,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":26},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","59440FC5-E676-4B9B-A828-C150A05765C0"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":27},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(80.0,24.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(85.0,-9.0)"},"14":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","_Fill":null,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(274.7,39.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"15":{"partsSpaceName":"PartsBin/Basic","migrationLevel":8,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":16},{"__isSmartRef__":true,"id":17},{"__isSmartRef__":true,"id":18},{"__isSmartRef__":true,"id":19},{"__isSmartRef__":true,"id":20},{"__isSmartRef__":true,"id":21},{"__isSmartRef__":true,"id":22},{"__isSmartRef__":true,"id":23}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Apr 05 2014 01:51:52 GMT-0700 (PDT)\")"},"16":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 09:31:56 GMT-0700 (PDT)\")"},"17":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 05:18:18 GMT-0700 (PDT)\")"},"18":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:32:09 GMT-0700 (PDT)\")"},"19":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:31:43 GMT-0700 (PDT)\")"},"20":{"author":"undefined","message":"Set the inset as: this.setPadding(Rectangle.inset(4,2)).  This gives it a more pleasing appearance with a border, and also makes it easier to select near the bounds.","id":"BD5B0E4C-4830-4863-A013-35BB66D5AD6F","__serializedExpressions__":["date"],"date":"new Date(\"Sun Feb 26 2012 21:20:38 GMT-0800 (PST)\")"},"21":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:30:30 GMT-0700 (PDT)\")"},"22":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 10:36:22 GMT-0700 (PDT)\")"},"23":{"author":"robertkrahn","message":"resizeWidth = true","id":"E402462A-7AB2-487B-82BD-A3369C1C1F75","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 05 2014 01:58:52 GMT-0700 (PDT)\")"},"24":{"style":{"__isSmartRef__":true,"id":25},"morph":{"__isSmartRef__":true,"id":13},"chunkOwner":{"__isSmartRef__":true,"id":13},"storedString":"Space-filling Curves","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"25":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"26":{"morph":{"__isSmartRef__":true,"id":13},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"27":{"resizeWidth":true},"28":{"submorphs":[],"scripts":[],"id":"4CCA1974-DF66-4491-B728-14BC6198E0F2","shape":{"__isSmartRef__":true,"id":29},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":false,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":14,"name":"Text1","partsBinMetaInfo":{"__isSmartRef__":true,"id":15},"textChunks":[{"__isSmartRef__":true,"id":30}],"charsReplaced":"Some Text","lastFindLoc":9,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":32},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","59440FC5-E676-4B9B-A828-C150A05765C0"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":33},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(214.0,132.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(85.0,-9.0)"},"29":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","_Fill":null,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.7,28.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"30":{"style":{"__isSmartRef__":true,"id":31},"morph":{"__isSmartRef__":true,"id":28},"chunkOwner":{"__isSmartRef__":true,"id":28},"storedString":"Order","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"31":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"32":{"morph":{"__isSmartRef__":true,"id":28},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"33":{"resizeWidth":true},"34":{"submorphs":[],"scripts":[],"id":"E18A0E84-552D-4DA2-A8D7-7AD0CDDB7A5C","shape":{"__isSmartRef__":true,"id":35},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":false,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":14,"name":"Text2","partsBinMetaInfo":{"__isSmartRef__":true,"id":36},"textChunks":[{"__isSmartRef__":true,"id":45}],"charsReplaced":"Partial","lastFindLoc":7,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":47},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","59440FC5-E676-4B9B-A828-C150A05765C0","4CCA1974-DF66-4491-B728-14BC6198E0F2"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":48},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"priorSelectionRange":[1,1],"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(216.0,163.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(85.0,-9.0)"},"35":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","_Fill":null,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(75.7,28.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"36":{"partsSpaceName":"PartsBin/Basic","migrationLevel":8,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":37},{"__isSmartRef__":true,"id":38},{"__isSmartRef__":true,"id":39},{"__isSmartRef__":true,"id":40},{"__isSmartRef__":true,"id":41},{"__isSmartRef__":true,"id":42},{"__isSmartRef__":true,"id":43},{"__isSmartRef__":true,"id":44}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Apr 05 2014 01:51:52 GMT-0700 (PDT)\")"},"37":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 09:31:56 GMT-0700 (PDT)\")"},"38":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 05:18:18 GMT-0700 (PDT)\")"},"39":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:32:09 GMT-0700 (PDT)\")"},"40":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:31:43 GMT-0700 (PDT)\")"},"41":{"author":"undefined","message":"Set the inset as: this.setPadding(Rectangle.inset(4,2)).  This gives it a more pleasing appearance with a border, and also makes it easier to select near the bounds.","id":"BD5B0E4C-4830-4863-A013-35BB66D5AD6F","__serializedExpressions__":["date"],"date":"new Date(\"Sun Feb 26 2012 21:20:38 GMT-0800 (PST)\")"},"42":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:30:30 GMT-0700 (PDT)\")"},"43":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 10:36:22 GMT-0700 (PDT)\")"},"44":{"author":"robertkrahn","message":"resizeWidth = true","id":"E402462A-7AB2-487B-82BD-A3369C1C1F75","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 05 2014 01:58:52 GMT-0700 (PDT)\")"},"45":{"style":{"__isSmartRef__":true,"id":46},"morph":{"__isSmartRef__":true,"id":34},"chunkOwner":{"__isSmartRef__":true,"id":34},"storedString":"Fraction","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"46":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"47":{"morph":{"__isSmartRef__":true,"id":34},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"48":{"resizeWidth":true},"49":{"submorphs":[],"scripts":[],"id":"480035FE-4418-44E1-9C94-5F4066718FDB","shape":{"__isSmartRef__":true,"id":50},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":false,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":14,"name":"OrderView","partsBinMetaInfo":{"__isSmartRef__":true,"id":51},"textChunks":[{"__isSmartRef__":true,"id":60}],"charsReplaced":"Some Text","lastFindLoc":9,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":62},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","59440FC5-E676-4B9B-A828-C150A05765C0","4CCA1974-DF66-4491-B728-14BC6198E0F2"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":63},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(332.0,133.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(85.0,-9.0)"},"50":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","_Fill":null,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.7,28.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"51":{"partsSpaceName":"PartsBin/Basic","migrationLevel":8,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":52},{"__isSmartRef__":true,"id":53},{"__isSmartRef__":true,"id":54},{"__isSmartRef__":true,"id":55},{"__isSmartRef__":true,"id":56},{"__isSmartRef__":true,"id":57},{"__isSmartRef__":true,"id":58},{"__isSmartRef__":true,"id":59}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Apr 05 2014 01:51:52 GMT-0700 (PDT)\")"},"52":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 09:31:56 GMT-0700 (PDT)\")"},"53":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 05:18:18 GMT-0700 (PDT)\")"},"54":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:32:09 GMT-0700 (PDT)\")"},"55":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:31:43 GMT-0700 (PDT)\")"},"56":{"author":"undefined","message":"Set the inset as: this.setPadding(Rectangle.inset(4,2)).  This gives it a more pleasing appearance with a border, and also makes it easier to select near the bounds.","id":"BD5B0E4C-4830-4863-A013-35BB66D5AD6F","__serializedExpressions__":["date"],"date":"new Date(\"Sun Feb 26 2012 21:20:38 GMT-0800 (PST)\")"},"57":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:30:30 GMT-0700 (PDT)\")"},"58":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 10:36:22 GMT-0700 (PDT)\")"},"59":{"author":"robertkrahn","message":"resizeWidth = true","id":"E402462A-7AB2-487B-82BD-A3369C1C1F75","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 05 2014 01:58:52 GMT-0700 (PDT)\")"},"60":{"style":{"__isSmartRef__":true,"id":61},"chunkOwner":{"__isSmartRef__":true,"id":49},"_id":"_9588","storedString":"0","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"61":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"62":{"morph":{"__isSmartRef__":true,"id":49},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"63":{"resizeWidth":true},"64":{"submorphs":[],"scripts":[],"id":"38F34535-906F-4D7A-9D3D-F25F35991027","shape":{"__isSmartRef__":true,"id":65},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":false,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":14,"name":"FractionView","partsBinMetaInfo":{"__isSmartRef__":true,"id":66},"textChunks":[{"__isSmartRef__":true,"id":75}],"charsReplaced":"Order","lastFindLoc":5,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":77},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","59440FC5-E676-4B9B-A828-C150A05765C0","4CCA1974-DF66-4491-B728-14BC6198E0F2","E18A0E84-552D-4DA2-A8D7-7AD0CDDB7A5C"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":78},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(332.0,167.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(85.0,-9.0)"},"65":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","_Fill":null,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(75.7,28.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"66":{"partsSpaceName":"PartsBin/Basic","migrationLevel":8,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":67},{"__isSmartRef__":true,"id":68},{"__isSmartRef__":true,"id":69},{"__isSmartRef__":true,"id":70},{"__isSmartRef__":true,"id":71},{"__isSmartRef__":true,"id":72},{"__isSmartRef__":true,"id":73},{"__isSmartRef__":true,"id":74}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Apr 05 2014 01:51:52 GMT-0700 (PDT)\")"},"67":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 09:31:56 GMT-0700 (PDT)\")"},"68":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 05:18:18 GMT-0700 (PDT)\")"},"69":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:32:09 GMT-0700 (PDT)\")"},"70":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:31:43 GMT-0700 (PDT)\")"},"71":{"author":"undefined","message":"Set the inset as: this.setPadding(Rectangle.inset(4,2)).  This gives it a more pleasing appearance with a border, and also makes it easier to select near the bounds.","id":"BD5B0E4C-4830-4863-A013-35BB66D5AD6F","__serializedExpressions__":["date"],"date":"new Date(\"Sun Feb 26 2012 21:20:38 GMT-0800 (PST)\")"},"72":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:30:30 GMT-0700 (PDT)\")"},"73":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 10:36:22 GMT-0700 (PDT)\")"},"74":{"author":"robertkrahn","message":"resizeWidth = true","id":"E402462A-7AB2-487B-82BD-A3369C1C1F75","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 05 2014 01:58:52 GMT-0700 (PDT)\")"},"75":{"style":{"__isSmartRef__":true,"id":76},"chunkOwner":{"__isSmartRef__":true,"id":64},"_id":"_9589","storedString":"0","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"76":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"77":{"morph":{"__isSmartRef__":true,"id":64},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"78":{"resizeWidth":true},"79":{"submorphs":[],"scripts":[],"id":"26755E49-82BC-45EE-9A09-15A18A6F1874","shape":{"__isSmartRef__":true,"id":80},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":true,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":14,"name":"Text5","partsBinMetaInfo":{"__isSmartRef__":true,"id":81},"textChunks":[{"__isSmartRef__":true,"id":90}],"charsReplaced":"Some Text","lastFindLoc":9,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":92},"_ClipMode":"auto","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","59440FC5-E676-4B9B-A828-C150A05765C0","4CCA1974-DF66-4491-B728-14BC6198E0F2"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":93},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"priorSelectionRange":[5,5],"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(30.0,216.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(198.0,-9.0)"},"80":{"fill":null,"_BorderWidth":1.332,"_ClipMode":"visible","_BorderRadius":7.3999999999999995,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Fill","_Position","_Extent","_BorderColor","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Fill":"Color.rgb(254,247,232)","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(373.7,201.7)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"81":{"partsSpaceName":"PartsBin/Basic","migrationLevel":8,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":82},{"__isSmartRef__":true,"id":83},{"__isSmartRef__":true,"id":84},{"__isSmartRef__":true,"id":85},{"__isSmartRef__":true,"id":86},{"__isSmartRef__":true,"id":87},{"__isSmartRef__":true,"id":88},{"__isSmartRef__":true,"id":89}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Apr 05 2014 01:51:52 GMT-0700 (PDT)\")"},"82":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 09:31:56 GMT-0700 (PDT)\")"},"83":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 05:18:18 GMT-0700 (PDT)\")"},"84":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:32:09 GMT-0700 (PDT)\")"},"85":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Fri Apr 20 2012 22:31:43 GMT-0700 (PDT)\")"},"86":{"author":"undefined","message":"Set the inset as: this.setPadding(Rectangle.inset(4,2)).  This gives it a more pleasing appearance with a border, and also makes it easier to select near the bounds.","id":"BD5B0E4C-4830-4863-A013-35BB66D5AD6F","__serializedExpressions__":["date"],"date":"new Date(\"Sun Feb 26 2012 21:20:38 GMT-0800 (PST)\")"},"87":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:30:30 GMT-0700 (PDT)\")"},"88":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 10:36:22 GMT-0700 (PDT)\")"},"89":{"author":"robertkrahn","message":"resizeWidth = true","id":"E402462A-7AB2-487B-82BD-A3369C1C1F75","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 05 2014 01:58:52 GMT-0700 (PDT)\")"},"90":{"style":{"__isSmartRef__":true,"id":91},"morph":{"__isSmartRef__":true,"id":79},"chunkOwner":{"__isSmartRef__":true,"id":79},"storedString":"Order","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"91":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"92":{"morph":{"__isSmartRef__":true,"id":79},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"93":{"resizeWidth":true},"94":{"submorphs":[],"scripts":[],"id":"83A25436-2E6C-4525-8089-69078B0A4AC7","shape":{"__isSmartRef__":true,"id":95},"droppingEnabled":true,"halosEnabled":true,"eventHandler":{"__isSmartRef__":true,"id":100},"showsHalos":false,"controlPoints":[{"__isSmartRef__":true,"id":101},{"__isSmartRef__":true,"id":102},{"__isSmartRef__":true,"id":103},{"__isSmartRef__":true,"id":104}],"layout":{"__isSmartRef__":true,"id":105},"name":"Pen","partsBinMetaInfo":{"__isSmartRef__":true,"id":106},"derivationIds":[147,"1C3C008B-8212-44B2-AD73-60A48F06CD6A","EE3B27B8-84C6-4C19-A73C-534A6C1746E9","7E928C44-55BD-4F0B-BD4D-E973373DE6D4"],"_ClipMode":"visible","moved":true,"isBeingDragged":false,"__serializedExpressions__":["endPoints.0","endPoints.1","endPoints.2","endPoints.3","endPoints.4","endPoints.5","endPoints.6","endPoints.7","endPoints.8","endPoints.9","endPoints.10","endPoints.11","endPoints.12","endPoints.13","endPoints.14","endPoints.15","endPoints.16","endPoints.17","endPoints.18","endPoints.19","endPoints.20","endPoints.21","endPoints.22","endPoints.23","endPoints.24","endPoints.25","endPoints.26","endPoints.27","endPoints.28","endPoints.29","endPoints.30","endPoints.31","endPoints.32","endPoints.33","endPoints.34","endPoints.35","endPoints.36","endPoints.37","endPoints.38","endPoints.39","endPoints.40","endPoints.41","endPoints.42","endPoints.43","endPoints.44","endPoints.45","_Position","location","startingLocation","penColor","hitPoint"],"endPoints":["lively.pt(142.0,277.0)","lively.pt(145.0,277.0)","lively.pt(148.0,277.0)","lively.pt(151.0,276.0)","lively.pt(156.0,275.0)","lively.pt(164.0,272.0)","lively.pt(165.0,271.0)","lively.pt(166.0,270.0)","lively.pt(166.0,269.0)","lively.pt(167.0,265.0)","lively.pt(169.0,262.0)","lively.pt(171.0,258.0)","lively.pt(172.0,254.0)","lively.pt(174.0,251.0)","lively.pt(175.0,247.0)","lively.pt(176.0,241.0)","lively.pt(176.0,236.0)","lively.pt(177.0,231.0)","lively.pt(178.0,226.0)","lively.pt(178.0,223.0)","lively.pt(179.0,217.0)","lively.pt(179.0,214.0)","lively.pt(179.0,213.0)","lively.pt(179.0,212.0)","lively.pt(178.0,211.0)","lively.pt(175.0,210.0)","lively.pt(171.0,210.0)","lively.pt(169.0,210.0)","lively.pt(167.0,210.0)","lively.pt(165.0,210.0)","lively.pt(162.0,210.0)","lively.pt(161.0,210.0)","lively.pt(159.0,210.0)","lively.pt(158.0,210.0)","lively.pt(157.0,210.0)","lively.pt(156.0,210.0)","lively.pt(154.0,210.0)","lively.pt(153.0,210.0)","lively.pt(152.0,210.0)","lively.pt(151.0,210.0)","lively.pt(150.0,210.0)","lively.pt(150.0,211.0)","lively.pt(149.0,211.0)","lively.pt(149.0,212.0)","lively.pt(149.0,213.0)","lively.pt(149.0,214.0)"],"showingAllMoves":true,"lineInProgress":null,"penWidth":2,"worldPts":null,"fillColor":null,"heading":0,"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":0.9992916708551148,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":111},"__LivelyClassName__":"lively.morphic.Path","__SourceModuleName__":"Global.lively.morphic.AdditionalMorphs","_Position":"lively.pt(78.0,182.0)","location":"lively.pt(149.0,214.0)","startingLocation":"lively.pt(142.0,277.0)","penColor":"Color.rgb(204,0,0)","hitPoint":"lively.pt(250.0,362.0)"},"95":{"dontChangeShape":false,"cachedVertices":null,"_PathElements":[{"__isSmartRef__":true,"id":96},{"__isSmartRef__":true,"id":97},{"__isSmartRef__":true,"id":98},{"__isSmartRef__":true,"id":99}],"_BorderWidth":1,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding","_Fill"],"__LivelyClassName__":"lively.morphic.Shapes.Path","__SourceModuleName__":"Global.lively.morphic.PathShapes","_Position":"lively.pt(-21.0,-6.0)","_Extent":"lively.pt(21.0,11.0)","_BorderColor":"Color.rgb(66,66,66)","_Padding":"lively.rect(0,0,0,0)","_Fill":"Color.rgb(204,0,0)"},"96":{"isAbsolute":true,"x":0,"y":0,"__LivelyClassName__":"lively.morphic.Shapes.MoveTo","__SourceModuleName__":"Global.lively.morphic.PathShapes"},"97":{"isAbsolute":true,"x":-20,"y":5,"__LivelyClassName__":"lively.morphic.Shapes.LineTo","__SourceModuleName__":"Global.lively.morphic.PathShapes"},"98":{"isAbsolute":true,"x":-20,"y":-5,"__LivelyClassName__":"lively.morphic.Shapes.LineTo","__SourceModuleName__":"Global.lively.morphic.PathShapes"},"99":{"isAbsolute":true,"x":0,"y":0,"__LivelyClassName__":"lively.morphic.Shapes.LineTo","__SourceModuleName__":"Global.lively.morphic.PathShapes"},"100":{"morph":{"__isSmartRef__":true,"id":94},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"101":{"morph":{"__isSmartRef__":true,"id":94},"index":0,"__LivelyClassName__":"lively.morphic.ControlPoint","__SourceModuleName__":"Global.lively.morphic.AdditionalMorphs"},"102":{"morph":{"__isSmartRef__":true,"id":94},"index":1,"__LivelyClassName__":"lively.morphic.ControlPoint","__SourceModuleName__":"Global.lively.morphic.AdditionalMorphs"},"103":{"morph":{"__isSmartRef__":true,"id":94},"index":2,"__LivelyClassName__":"lively.morphic.ControlPoint","__SourceModuleName__":"Global.lively.morphic.AdditionalMorphs"},"104":{"morph":{"__isSmartRef__":true,"id":94},"index":3,"__LivelyClassName__":"lively.morphic.ControlPoint","__SourceModuleName__":"Global.lively.morphic.AdditionalMorphs"},"105":{},"106":{"partName":"Pen","requiredModules":[],"migrationLevel":8,"partsSpaceName":"PartsBin/Basic/","comment":"This is a classic implementation of turtle graphics in HTML.  As it draws lines using go() and turn() it makes a list of lines,  drawLines() will them make the drawing visible.  I haven't implemented penuUp/penDown.\n\nA number of examples are in /testing/\nNote you can drag a pen to make a squiggle drawing","changes":[{"__isSmartRef__":true,"id":107},{"__isSmartRef__":true,"id":108},{"__isSmartRef__":true,"id":109},{"__isSmartRef__":true,"id":110}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Feb 08 2014 16:06:40 GMT-0800 (PST)\")"},"107":{"author":"Dan","message":"no comment","id":"758F1776-7F0E-4FBD-921A-051F1A8066D5","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 08 2014 16:06:37 GMT-0800 (PST)\")"},"108":{"author":"Dan","message":"no comment","id":"E1CBE899-6925-4B31-86C4-99BE3C465F2A","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 08 2014 16:05:39 GMT-0800 (PST)\")"},"109":{"author":"Dan","message":"added makeWorldTracks for embedding on windmills ;-)","id":"03D53DD9-5719-4205-94B6-856ABF4F4626","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 16 2013 16:02:49 GMT-0700 (PDT)\")"},"110":{"author":"Dan","message":"no comment","id":"A507117B-A57C-4CE1-966A-403BE34D176A","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 16 2013 14:34:31 GMT-0700 (PDT)\")"},"111":{"aboutMe":{"__isSmartRef__":true,"id":112},"drawLines":{"__isSmartRef__":true,"id":115},"filbert":{"__isSmartRef__":true,"id":118},"filberts":{"__isSmartRef__":true,"id":121},"fillLines":{"__isSmartRef__":true,"id":124},"go":{"__isSmartRef__":true,"id":127},"hilbert":{"__isSmartRef__":true,"id":130},"newLine":{"__isSmartRef__":true,"id":133},"reset":{"__isSmartRef__":true,"id":136},"setPenColor":{"__isSmartRef__":true,"id":139},"setPenWidth":{"__isSmartRef__":true,"id":142},"spiral":{"__isSmartRef__":true,"id":145},"testing":{"__isSmartRef__":true,"id":148},"turn":{"__isSmartRef__":true,"id":151},"yetToDo":{"__isSmartRef__":true,"id":154},"showAllMoves":{"__isSmartRef__":true,"id":157},"showState":{"__isSmartRef__":true,"id":160},"drawLineSoFar":{"__isSmartRef__":true,"id":163},"dragon":{"__isSmartRef__":true,"id":166},"goto":{"__isSmartRef__":true,"id":169},"onDrag":{"__isSmartRef__":true,"id":172},"onDragStart":{"__isSmartRef__":true,"id":179},"onDragEnd":{"__isSmartRef__":true,"id":186},"makeTracks":{"__isSmartRef__":true,"id":193},"makeWorldTracks":{"__isSmartRef__":true,"id":196},"fdragon":{"__isSmartRef__":true,"id":199}},"112":{"varMapping":{"__isSmartRef__":true,"id":113},"source":"function aboutMe() {\n    // This is a classic implementation of turtle graphics in HTML\n    // As it draws lines using go() and turn() it makes a list of lines\n    // drawLines() will them make the drawing visible\n    // I haven't implemented penuUp/penDown\n    // A number of examples are in /testing/\n    // Note you can drag a pen to make a squiggle drawing\n}","funcProperties":{"__isSmartRef__":true,"id":114},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"113":{"this":{"__isSmartRef__":true,"id":94}},"114":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Apr 16 2013 14:31:01 GMT-0700 (PDT)\")"},"115":{"varMapping":{"__isSmartRef__":true,"id":116},"source":"function drawLines() {\n    if (this.lineInProgress) this.lineInProgress.remove();\n    this.lineInProgress = null;\n    if (this.fillColor) \n        var morph = lively.morphic.Morph.makePolygon(this.endPoints, this.penWidth, this.penColor, this.fillColor);\n    else \n        var morph = lively.morphic.Morph.makeLine(this.endPoints, this.penWidth, this.penColor);\n\n    if (this.owner) this.owner.addMorph(morph);\n    else $world.addMorph(morph);\n    this.showState();\n    return morph;\n}","funcProperties":{"__isSmartRef__":true,"id":117},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"116":{"this":{"__isSmartRef__":true,"id":94}},"117":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 12:00:57 GMT-0700 (PDT)\")"},"118":{"varMapping":{"__isSmartRef__":true,"id":119},"source":"function filbert(n, s, color) {\n    // Two Hilbert curves form a Hilbert tile\n    this.newLine();  \n    this.setPenColor(Color.black); \n    this.setPenWidth(1);\n    this.hilbert(n, s); \n    this.go(s);\n    this.hilbert(n, s); \n    this.go(s);\n    if (color) this.fillLines(color);\n        else this.drawLines()\n    return this\n}","funcProperties":{"__isSmartRef__":true,"id":120},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"119":{"this":{"__isSmartRef__":true,"id":94}},"120":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sat Feb 08 2014 15:57:26 GMT-0800 (PST)\")"},"121":{"varMapping":{"__isSmartRef__":true,"id":122},"source":"function filberts(n, s) {\n    // Four interlocking filberts\n    var n2 = Math.pow(2,n-1);\n    var morphs = [ ];\n\n    for (var i = 0; i < 4; i++) {\n        morphs.push(this.filbert(n, s, Color.wheel(4)[i]));\n        this.go((n2 - 1)*s); \n        this.turn(-90); \n        this.go(n2 * s); \n        this.turn(180);\n    }\n    return morphs; \n}","funcProperties":{"__isSmartRef__":true,"id":123},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"122":{"this":{"__isSmartRef__":true,"id":94}},"123":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 15:07:43 GMT-0700 (PDT)\")"},"124":{"varMapping":{"__isSmartRef__":true,"id":125},"source":"function fillLines(color) {\n    this.fillColor = color; \n    return this.drawLines();\n}","funcProperties":{"__isSmartRef__":true,"id":126},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"125":{"this":{"__isSmartRef__":true,"id":94}},"126":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 15:07:43 GMT-0700 (PDT)\")"},"127":{"varMapping":{"__isSmartRef__":true,"id":128},"source":"function go(dist) {\n    var newPoint = this.location.addPt(Point.polar(dist, this.heading.toRadians()));\n    return this.goto(newPoint)\n}","funcProperties":{"__isSmartRef__":true,"id":129},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"128":{"this":{"__isSmartRef__":true,"id":94}},"129":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 11:17:43 GMT-0700 (PDT)\")"},"130":{"varMapping":{"__isSmartRef__":true,"id":131},"source":"function hilbert(n, s) {\n      // Draw an nth level Hilbert curve with side length s.\n    if (n == 0) \n        return this.turn(180);\n\n    if (n > 0) { \n        var a = 90;  \n        var m = n - 1; \n    } else { \n        var a = -90;  \n        var m = n + 1; \n    }\n    \n    this.turn(a); \n    this.hilbert(0 - m, s);\n    this.turn(a); \n    this.go(s); \n    this.hilbert(m, s);\n    this.turn(0 - a); \n    this.go(s); \n    this.turn(0 - a); \n    this.hilbert(m, s);\n    this.go(s); \n    this.turn(a); \n    this.hilbert(0 - m, s);\n    this.turn(a);\n    return this;\n}","funcProperties":{"__isSmartRef__":true,"id":132},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"131":{"this":{"__isSmartRef__":true,"id":94}},"132":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sat Feb 08 2014 15:59:30 GMT-0800 (PST)\")"},"133":{"varMapping":{"__isSmartRef__":true,"id":134},"source":"function newLine(loc) {\n    this.startingLocation = loc ? loc : this.location;\n    this.endPoints = [ this.startingLocation ];\n}","funcProperties":{"__isSmartRef__":true,"id":135},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"134":{"this":{"__isSmartRef__":true,"id":94}},"135":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 22:16:29 GMT-0700 (PDT)\")"},"136":{"varMapping":{"__isSmartRef__":true,"id":137},"source":"function reset(loc) {  // this.reset()\n    this.location = (loc !== undefined) ? loc\n            : pt(800, 400);\n    this.penWidth = 2;\n    this.penColor = Color.red;\n    this.fillColor = null;\n    this.heading = 0;\n    this.showingAllMoves = false;\n    this.newLine(this.location);\n    this.showState();\n    return this \n }","funcProperties":{"__isSmartRef__":true,"id":138},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"137":{"this":{"__isSmartRef__":true,"id":94}},"138":{"__serializedExpressions__":["timestamp"],"user":"Dan","timestamp":"new Date(\"Mon Jul 14 2014 16:59:59 GMT-0700 (PDT)\")"},"139":{"varMapping":{"__isSmartRef__":true,"id":140},"source":"function setPenColor(color) {\n    this.penColor = color;\n    if (this.showingAllMoves) this.setFill(color);\n}","funcProperties":{"__isSmartRef__":true,"id":141},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"140":{"this":{"__isSmartRef__":true,"id":94}},"141":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 21:21:31 GMT-0700 (PDT)\")"},"142":{"varMapping":{"__isSmartRef__":true,"id":143},"source":"function setPenWidth(size) {\n    this.penWidth = size;\n}","funcProperties":{"__isSmartRef__":true,"id":144},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"143":{"this":{"__isSmartRef__":true,"id":94}},"144":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 15:07:43 GMT-0700 (PDT)\")"},"145":{"varMapping":{"__isSmartRef__":true,"id":146},"source":"function spiral(n, angle, color, d) { // this.copy().reset().spiral(50, 91)\n    if (!n) n = 100;\n    if (!angle) angle = 89;\n    if (!color) color = Color.red;\n    if (!d) d = 2;\n    this.reset();\n    this.setPenColor(color);\n    for (var i=1; i<=n; i++) {\n        this.go(d*i); this.turn(angle); };\n    return this.drawLines();\n}","funcProperties":{"__isSmartRef__":true,"id":147},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"146":{"this":{"__isSmartRef__":true,"id":94}},"147":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 15:07:43 GMT-0700 (PDT)\")"},"148":{"varMapping":{"__isSmartRef__":true,"id":149},"source":"function testing() {\n    // this.show();\n    // this.copy().reset().spiral(50, 91)\n    // this.copy().reset().openInWorld().showAllMoves(true).go(50).turn(45).go(50)\n    // this.copy().reset().hilbert(2,10).drawLines();\n    // this.copy().reset().filbert(2,10);\n    // this.copy().reset().filbert(2,10, Color.yellow);\n    // this.copy().reset().filberts(2,10);\n    // this.copy().reset().dragon(8,10).drawLines()\n}","funcProperties":{"__isSmartRef__":true,"id":150},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"149":{"this":{"__isSmartRef__":true,"id":94}},"150":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sat Feb 08 2014 16:05:56 GMT-0800 (PST)\")"},"151":{"varMapping":{"__isSmartRef__":true,"id":152},"source":"function turn(degrees) {\n    this.heading += degrees; \n    if (this.showingAllMoves) this.setRotation(this.heading.toRadians());\n    return this;\n}","funcProperties":{"__isSmartRef__":true,"id":153},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"152":{"this":{"__isSmartRef__":true,"id":94}},"153":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Mar 13 2013 21:54:19 GMT-0700 (PDT)\")"},"154":{"varMapping":{"__isSmartRef__":true,"id":155},"source":"function yetToDo() {\n    // [X] Make a triangle morph shape showing heading\n    // [X] Add .showAllMoves for visible actions\n    // [X] Cause the morph to show itself after every drawLines or reset\n    // [X] Make setLocation, heading and fillColor into methods that\n    //        update the morph - show morph color as border or fill\n    // [ ] Implement penUp, penDown by use of drawLines, setPosition\n    // [ ] Write a squiggle program\n    // [ ] Make a kaleidoscopic squiggle using makeCommander\n}","funcProperties":{"__isSmartRef__":true,"id":156},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"155":{"this":{"__isSmartRef__":true,"id":94}},"156":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 11:10:19 GMT-0700 (PDT)\")"},"157":{"varMapping":{"__isSmartRef__":true,"id":158},"source":"function showAllMoves(whetherOrNot) {\n    // Cause the Pen to be shown during line drawing.\n    // Sadly this doesn't work well for, eg, designs, \n    // but you can do things like\n    // this.copy().reset().openInWorld().showAllMoves(true).go(50).turn(45).go(50)\n    // and if you do, eg, go(120) in an inspector of that pen, \n    // you will see the line drawn and the pen move\n    this.showingAllMoves = whetherOrNot;\n    if(whetherOrNot) this.showState();\n    return this;\n}","funcProperties":{"__isSmartRef__":true,"id":159},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"158":{"this":{"__isSmartRef__":true,"id":94}},"159":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 10:54:43 GMT-0700 (PDT)\")"},"160":{"varMapping":{"__isSmartRef__":true,"id":161},"source":"function showState() {\n    this.setRotation((this.heading || 0).toRadians());\n    this.setFill(this.penColor);\n    this.setPosition(this.location)\n}","funcProperties":{"__isSmartRef__":true,"id":162},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"161":{"this":{"__isSmartRef__":true,"id":94}},"162":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 11:42:28 GMT-0700 (PDT)\")"},"163":{"varMapping":{"__isSmartRef__":true,"id":164},"source":"function drawLineSoFar() {\n    if (this.lineInProgress) this.lineInProgress.remove();\n    this.lineInProgress = lively.morphic.Morph.makeLine(this.endPoints, this.penWidth, this.penColor);\ndebugger;\n    if (this.owner) this.owner.addMorph(this.lineInProgress);\n    else $world.addMorph(this.lineInProgress);\n    this.setPosition(this.location)\n}","funcProperties":{"__isSmartRef__":true,"id":165},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"164":{"this":{"__isSmartRef__":true,"id":94}},"165":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 11:58:45 GMT-0700 (PDT)\")"},"166":{"varMapping":{"__isSmartRef__":true,"id":167},"source":"function dragon(n, d) {\n    // this.copy().reset().dragon(8,10).drawLines()\n    if (n==0) return this.go(d);\n    if (n>0) return this.dragon(n-1, d).turn(90).dragon(-(n-1), d);\n        else return this.dragon(-(n+1), d).turn(-90).dragon(n+1, d);\n}","funcProperties":{"__isSmartRef__":true,"id":168},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"167":{"this":{"__isSmartRef__":true,"id":94}},"168":{"user":"Dan","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Jul 13 2014 16:40:10 GMT-0700 (PDT)\")"},"169":{"varMapping":{"__isSmartRef__":true,"id":170},"source":"function goto(newPoint) {\n    this.location = newPoint;\n    this.endPoints.push(this.location);\n    if (this.showingAllMoves) this.drawLineSoFar();\n    return this;\n}","funcProperties":{"__isSmartRef__":true,"id":171},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"170":{"this":{"__isSmartRef__":true,"id":94}},"171":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 11:15:33 GMT-0700 (PDT)\")"},"172":{"varMapping":{"__isSmartRef__":true,"id":173},"source":"function onDrag(evt) {\n    this.goto(evt.getPosition());\n}","funcProperties":{"__isSmartRef__":true,"id":178},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"173":{"this":{"__isSmartRef__":true,"id":94},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":174}},"174":{"$super":{"__isSmartRef__":true,"id":175}},"175":{"varMapping":{"__isSmartRef__":true,"id":176},"source":"function () {\n                    try {\n                        return obj.constructor.prototype[name].apply(obj, arguments)\n                    } catch (e) {\n                        if ($world)\n                            $world.logError(e, 'Error in $super call')\n                        else\n                            alert('Error in $super call: ' + e + '\\n' + e.stack);\n                        return null;\n                    }\n                }","funcProperties":{"__isSmartRef__":true,"id":177},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"176":{"obj":{"__isSmartRef__":true,"id":94},"name":"onDrag"},"177":{},"178":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 12:33:03 GMT-0700 (PDT)\")"},"179":{"varMapping":{"__isSmartRef__":true,"id":180},"source":"function onDragStart(evt) {\n    this.location = evt.getPosition();\n    this.newLine();\n    this.showAllMoves(true);\n}","funcProperties":{"__isSmartRef__":true,"id":185},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"180":{"this":{"__isSmartRef__":true,"id":94},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":181}},"181":{"$super":{"__isSmartRef__":true,"id":182}},"182":{"varMapping":{"__isSmartRef__":true,"id":183},"source":"function () {\n                    try {\n                        return obj.constructor.prototype[name].apply(obj, arguments)\n                    } catch (e) {\n                        if ($world)\n                            $world.logError(e, 'Error in $super call')\n                        else\n                            alert('Error in $super call: ' + e + '\\n' + e.stack);\n                        return null;\n                    }\n                }","funcProperties":{"__isSmartRef__":true,"id":184},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"183":{"obj":{"__isSmartRef__":true,"id":94},"name":"onDragStart"},"184":{},"185":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 12:52:35 GMT-0700 (PDT)\")"},"186":{"varMapping":{"__isSmartRef__":true,"id":187},"source":"function onDragEnd(evt) {\n    this.drawLines();\n    this.owner.addMorph(this); // put me on top for grabbing again\n}","funcProperties":{"__isSmartRef__":true,"id":192},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"187":{"this":{"__isSmartRef__":true,"id":94},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":188}},"188":{"$super":{"__isSmartRef__":true,"id":189}},"189":{"varMapping":{"__isSmartRef__":true,"id":190},"source":"function () {\n                    try {\n                        return obj.constructor.prototype[name].apply(obj, arguments)\n                    } catch (e) {\n                        if ($world)\n                            $world.logError(e, 'Error in $super call')\n                        else\n                            alert('Error in $super call: ' + e + '\\n' + e.stack);\n                        return null;\n                    }\n                }","funcProperties":{"__isSmartRef__":true,"id":191},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"190":{"obj":{"__isSmartRef__":true,"id":94},"name":"onDragEnd"},"191":{},"192":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 21 2013 12:59:07 GMT-0700 (PDT)\")"},"193":{"varMapping":{"__isSmartRef__":true,"id":194},"source":"function makeTracks() {\n    // this.showAllMoves()\n    // This method allows drawing tracks in the world\n    // It resets the polyline at the end of every 100 segments\n}","funcProperties":{"__isSmartRef__":true,"id":195},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"194":{"this":{"__isSmartRef__":true,"id":94}},"195":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Apr 16 2013 14:54:07 GMT-0700 (PDT)\")"},"196":{"varMapping":{"__isSmartRef__":true,"id":197},"source":"function makeWorldTracks() {\n    // this.startStepping(300, \"makeWorldTracks\")\n    // this.stopStepping()\n    // this.worldPts = [this.worldPoint(pt(0, 0))];  // trim line\n\n    // This method allows drawing tracks in the world\n    // It trims the polyline at the end to 200 segments\n    if (!this.worldPts || this.worldPts.length > 200) this.worldPts.shift();\n    if (this.lineInProgress) this.lineInProgress.remove();\n    this.worldPts.push(this.worldPoint(pt(0, 0)));\n    this.lineInProgress = lively.morphic.Morph.makeLine(this.worldPts, this.penWidth, this.penColor);\n    if (this.world()) this.world().addMorph(this.lineInProgress);\n    else $world.addMorph(this.lineInProgress);\n}","funcProperties":{"__isSmartRef__":true,"id":198},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"197":{"this":{"__isSmartRef__":true,"id":94}},"198":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Apr 16 2013 15:54:21 GMT-0700 (PDT)\")"},"199":{"varMapping":{"__isSmartRef__":true,"id":200},"source":"function fdragon(n, d, f) {\n    // this.copy().reset().fdragon(1,200,0).drawLines()\n    // this.copy().reset().fdragon(7,10,0).drawLines()\n    // this.copy().reset().fdragon(7,10, 0.5).drawLines()\n    // this.copy().reset().fdragon(8,10).drawLines()\n    \n    // This version of dragon accepts a fraction argument, f, which\n    // depicts the change where each straight line gets bent by 90 degrees.\n    // Note that the sign of the fraction carries the necessary polarity\n    // Naturally, dragon(n, d, 1) must be the same as dragone(n+1, d, 0)\n    \n    // f = fraction; a = 90*f;\n    // turn -a; go 1/cos a; turn 2*a; go 1/cos a\n    var s2 = Math.sqrt(2)/2;\n    if (f == 0) {  // Normal dragon curve if fraction = 0\n        if (Math.abs(n)<=1) return this.go(d);\n        if (n>0) return this.fdragon(n-1, d*s2, f).turn(90).fdragon(-(n-1), d*s2, f);\n        else return this.fdragon(-(n+1), d*s2, f).turn(-90).fdragon(n+1, d*s2, f);\n    }\n    if (Math.abs(n)<=1) {\n        // for the partial orders, each line becomes two lines at a partial angle\n        var p = n/Math.abs(n);  // polarity = sign (n)\n        var a = 45*f*p;  // partial angle\n        var c = Math.cos(a.toRadians());\n        return this.turn(-a).go((d/2)/c).turn(2*a).go((d/2)/c).turn(-a);\n    }\n    if (n>0) return this.fdragon(n-1, d*s2, f).turn(90).fdragon(-(n-1), d*s2, f);\n    else return this.fdragon(-(n+1), d*s2, f).turn(-90).fdragon(n+1, d*s2, f);\n    // If fraction is non-zero, show next order, but with less than 90-deg turns\n    //if (n>0) return this.go(d);\n\n}","funcProperties":{"__isSmartRef__":true,"id":201},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"200":{"this":{"__isSmartRef__":true,"id":94}},"201":{"user":"Dan","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Jul 14 2014 16:31:54 GMT-0700 (PDT)\")"},"202":{"submorphs":[],"scripts":[],"id":"E2219166-4B79-4C08-A506-AC97D5F14B3D","shape":{"__isSmartRef__":true,"id":203},"droppingEnabled":true,"halosEnabled":true,"_ClipMode":"auto","eventHandler":{"__isSmartRef__":true,"id":204},"itemList":["dragon","fdragon","4 dragons","hilbert","fillbert","4 fillberts"],"selectOnMove":false,"showsHalos":false,"name":"CurveList","partsBinMetaInfo":{"__isSmartRef__":true,"id":205},"derivationIds":[6545],"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"selectedLineNo":0,"changeTriggered":true,"attributeConnections":[{"__isSmartRef__":true,"id":206}],"doNotSerialize":["$$selectedLineNo"],"doNotCopyProperties":["$$selectedLineNo"],"selection":"dragon","__serializedExpressions__":["_Position","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.DropDownList","__SourceModuleName__":"Global.lively.morphic.Lists","_Position":"lively.pt(54.0,135.0)","distanceToDragEvent":"lively.pt(88.0,-13.0)"},"203":{"_BorderWidth":0,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Fill","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(122.0,20.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(243,243,243)","_Padding":"lively.rect(0,0,0,0)"},"204":{"morph":{"__isSmartRef__":true,"id":202},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"205":{"requiredModules":[],"migrationLevel":2,"partsSpaceName":"PartsBin/Inputs/","comment":"\"Native\" drop down list","partName":"DropDownList","__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Wed Sep 05 2012 16:01:35 GMT-0700 (PDT)\")"},"206":{"sourceObj":{"__isSmartRef__":true,"id":202},"sourceAttrName":"selectedLineNo","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"setSelection","varMapping":{"__isSmartRef__":true,"id":207},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"207":{"source":{"__isSmartRef__":true,"id":202},"target":{"__isSmartRef__":true,"id":0}},"208":{"_BorderWidth":1,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","__serializedExpressions__":["position","_Extent","_BorderColor","_Fill","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(429.0,447.0)","_BorderColor":"Color.rgb(95,94,95)","_Fill":"Color.rgb(251,219,146)","_Padding":"lively.rect(0,0,0,0)"},"209":{"partsSpaceName":"PartsBin/Dan","comment":"Demo of space-filling curves made with the Pen.  Notable feature is to show the continuity from one order to the next.","migrationLevel":8,"partName":"CurveMaker","changes":[{"__isSmartRef__":true,"id":210},{"__isSmartRef__":true,"id":211},{"__isSmartRef__":true,"id":212},{"__isSmartRef__":true,"id":213},{"__isSmartRef__":true,"id":214},{"__isSmartRef__":true,"id":215},{"__isSmartRef__":true,"id":216},{"__isSmartRef__":true,"id":217},{"__isSmartRef__":true,"id":218},{"__isSmartRef__":true,"id":219},{"__isSmartRef__":true,"id":220},{"__isSmartRef__":true,"id":221},{"__isSmartRef__":true,"id":222},{"__isSmartRef__":true,"id":223},{"__isSmartRef__":true,"id":224},{"__isSmartRef__":true,"id":225},{"__isSmartRef__":true,"id":226},{"__isSmartRef__":true,"id":227},{"__isSmartRef__":true,"id":228},{"__isSmartRef__":true,"id":229},{"__isSmartRef__":true,"id":230},{"__isSmartRef__":true,"id":231},{"__isSmartRef__":true,"id":232},{"__isSmartRef__":true,"id":233},{"__isSmartRef__":true,"id":234},{"__isSmartRef__":true,"id":235}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Mon Jul 14 2014 16:33:48 GMT-0700 (PDT)\")"},"210":{"author":"jenslincke","message":"no comment","id":"ADFBF069-513C-4DE6-95A9-8AD4985C6508","__serializedExpressions__":["date"],"date":"new Date(\"Tue Feb 04 2014 01:23:53 GMT-0800 (PST)\")"},"211":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jul 29 2013 23:20:51 GMT-0700 (PDT)\")"},"212":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 11:49:27 GMT-0700 (PDT)\")"},"213":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 29 2013 15:36:50 GMT-0700 (PDT)\")"},"214":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 07:47:05 GMT-0800 (PST)\")"},"215":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 07:42:31 GMT-0800 (PST)\")"},"216":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 01:35:51 GMT-0800 (PST)\")"},"217":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 10:35:08 GMT-0700 (PDT)\")"},"218":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 04:42:07 GMT-0700 (PDT)\")"},"219":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 02:42:26 GMT-0700 (PDT)\")"},"220":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Fri Feb 24 2012 17:59:09 GMT-0800 (PST)\")"},"221":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 02:53:45 GMT-0700 (PDT)\")"},"222":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 06:51:30 GMT-0700 (PDT)\")"},"223":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 06:51:36 GMT-0700 (PDT)\")"},"224":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 03:57:18 GMT-0800 (PST)\")"},"225":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:18:06 GMT-0700 (PDT)\")"},"226":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Thu Jun 20 2013 15:16:24 GMT-0700 (PDT)\")"},"227":{"author":"jenslincke","message":"no comment","id":"ECD12BFF-E872-4918-8341-C6571E72F36D","__serializedExpressions__":["date"],"date":"new Date(\"Tue Feb 04 2014 01:24:27 GMT-0800 (PST)\")"},"228":{"author":"lauritz","message":"dropping enabled for the blue rectangle","id":"81D350CB-D926-491F-8FF3-A6C9C831BDF2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 12 2014 07:00:28 GMT-0700 (PDT)\")"},"229":{"author":"Dan","message":"under construction","id":"15659D80-E686-4658-8CA1-CB9DCE439A6C","__serializedExpressions__":["date"],"date":"new Date(\"Sun Jul 13 2014 15:18:15 GMT-0700 (PDT)\")"},"230":{"author":"Dan","message":"no comment","id":"C06EC320-4AD0-4814-B13C-888E95AC142B","__serializedExpressions__":["date"],"date":"new Date(\"Sun Jul 13 2014 16:10:57 GMT-0700 (PDT)\")"},"231":{"author":"Dan","message":"under construction","id":"AB1BB4D7-06A4-4B45-B80D-DF4785F22D83","__serializedExpressions__":["date"],"date":"new Date(\"Sun Jul 13 2014 16:26:46 GMT-0700 (PDT)\")"},"232":{"author":"Dan","message":"Under construction","id":"BA7A835C-A0E2-4BFF-814D-55A1A79F8F5A","__serializedExpressions__":["date"],"date":"new Date(\"Sun Jul 13 2014 16:52:50 GMT-0700 (PDT)\")"},"233":{"author":"Dan","message":"under construction","id":"327D8927-B8B5-4A98-BE52-684612459B2F","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jul 14 2014 00:40:28 GMT-0700 (PDT)\")"},"234":{"author":"Dan","message":"under construction, fdragon starting to work\n","id":"0EEFCCAD-D747-4A47-8708-FCB0E2797AD0","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jul 14 2014 16:33:46 GMT-0700 (PDT)\")"},"235":{"__serializedExpressions__":["date"],"author":"Dan","message":"dragons working","id":"AB2438A4-F6CD-4B04-B19A-F02D920B74C2","date":"new Date(\"Mon Jul 14 2014 17:25:54 GMT-0700 (PDT)\")"},"236":{"morph":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"237":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":238}},"238":{"test01IsMorph":{"__isSmartRef__":true,"id":239}},"239":{"varMapping":{"__isSmartRef__":true,"id":240},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":241},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"240":{"this":{"__isSmartRef__":true,"id":237}},"241":{},"242":{"resizeWidth":true,"resizeHeight":true},"243":{"reset":{"__isSmartRef__":true,"id":244},"setSelection":{"__isSmartRef__":true,"id":247},"setOrder":{"__isSmartRef__":true,"id":250},"aboutMe":{"__isSmartRef__":true,"id":253},"yetToDo":{"__isSmartRef__":true,"id":256},"clearCurves":{"__isSmartRef__":true,"id":259}},"244":{"varMapping":{"__isSmartRef__":true,"id":245},"source":"function reset() {\n    this.choices = ['dragon', 'fdragon', '4 dragons', 'hilbert', 'fillbert', '4 fillberts'];\n    this.get('CurveList').setList(this.choices);\n    this.clearCurves();\n    this.setSelection(1);\n}","funcProperties":{"__isSmartRef__":true,"id":246},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"245":{"this":{"__isSmartRef__":true,"id":0}},"246":{"user":"Dan","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Jul 14 2014 14:18:43 GMT-0700 (PDT)\")"},"247":{"varMapping":{"__isSmartRef__":true,"id":248},"source":"function setSelection(sel) {\n    // show(sel);\n    // this.get('CurveList').setSelection(sel);\n    this.clearCurves();\n    this.selection = sel;\n    this.maxOrder = [10, 10, 10, 5, 5, 5][sel]\n}","funcProperties":{"__isSmartRef__":true,"id":249},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"248":{"this":{"__isSmartRef__":true,"id":0}},"249":{"__serializedExpressions__":["timestamp"],"user":"Dan","timestamp":"new Date(\"Mon Jul 14 2014 17:16:43 GMT-0700 (PDT)\")"},"250":{"varMapping":{"__isSmartRef__":true,"id":251},"source":"function setOrder(sliderVal) {\n    var order = (sliderVal*this.maxOrder).detent(0.1,1,false);\n    this.orderInt = Math.floor(order)\n    this.fraction = (order - this.orderInt).roundTo(0.01);\n    this.get('OrderView').setTextString(this.orderInt);\n    this.get('FractionView').setTextString(this.fraction);\n    this.clearCurves();\n    var pen = this.get('Pen').copy().reset();\n    switch(this.selection) {\n        case 0: \n            pen.turn(-this.orderInt*45);\n            this.currentCurves = [pen.fdragon(this.orderInt+1, 200,0).drawLines()];\n            break;\n        case 1: \n            pen.turn(-this.orderInt*45);\n            this.currentCurves = [pen.fdragon(this.orderInt+1, 200, this.fraction).drawLines()];\n            break;\n        case 2: \n            this.currentCurves = [];\n            for (var i=0; i<4; i++) {\n                var p4 = pen.copy();\n                p4.setPenColor(Color.wheel(4)[i]);\n                p4.turn(i*90 - this.orderInt*45);\n                this.currentCurves.push(\n                    p4.fdragon(this.orderInt+1, 200, this.fraction).drawLines());\n            }\n            break;\n        case 3: \n            this.currentCurves = [pen.hilbert(this.orderInt+1,10).drawLines()];\n            break;\n     }\n}","funcProperties":{"__isSmartRef__":true,"id":252},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"251":{"this":{"__isSmartRef__":true,"id":0}},"252":{"__serializedExpressions__":["timestamp"],"user":"Dan","timestamp":"new Date(\"Mon Jul 14 2014 17:24:05 GMT-0700 (PDT)\")"},"253":{"varMapping":{"__isSmartRef__":true,"id":254},"source":"function aboutMe() {\n    // This is a demonstration of space-filling curves drawn by the Lively Pen.\n    // It offers the following features\n    // It shows dragon curves and hilbert curves of various orders\n    // The curves it builds are morphs so they can be grabbed and moved\n    // In addition to the obvious integer orders of complexity, it shows\n    //  in-between states of one order evolving to the next\n    // For these two kinds of curves, it shows how they can make 'tiles'\n    //  that fit into one another nicely.  Here it is particualarly\n    //  nice to be able to grab one and move it around\n}","funcProperties":{"__isSmartRef__":true,"id":255},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"254":{"this":{"__isSmartRef__":true,"id":0}},"255":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Jul 13 2014 16:22:19 GMT-0700 (PDT)\")"},"256":{"varMapping":{"__isSmartRef__":true,"id":257},"source":"function yetToDo() {\n    // Write commentary to go in the box with each choice.\n    // Put in dragon\n    // Put in 4 dragons\n    // Put in hilbert\n    // Put in fillbert\n    // Put in 4 fillberts\n    // Make it so polygons with many vertices don't offer \n    //  too many control points when selected\n}","funcProperties":{"__isSmartRef__":true,"id":258},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"257":{"this":{"__isSmartRef__":true,"id":0}},"258":{"user":"Dan","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Jul 13 2014 16:52:30 GMT-0700 (PDT)\")"},"259":{"varMapping":{"__isSmartRef__":true,"id":260},"source":"function clearCurves() {\n    if (this.currentCurves) this.currentCurves.forEach(function(ea) {ea.remove()});\n    this.currentCurves = [];\n}","funcProperties":{"__isSmartRef__":true,"id":261},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"260":{"this":{"__isSmartRef__":true,"id":0}},"261":{"user":"Dan","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Jul 14 2014 00:18:56 GMT-0700 (PDT)\")"},"isSimplifiedRegistry":true}}