{"id":0,"registry":{"0":{"submorphs":[{"__isSmartRef__":true,"id":1},{"__isSmartRef__":true,"id":102},{"__isSmartRef__":true,"id":115},{"__isSmartRef__":true,"id":169},{"__isSmartRef__":true,"id":193},{"__isSmartRef__":true,"id":217},{"__isSmartRef__":true,"id":241},{"__isSmartRef__":true,"id":265},{"__isSmartRef__":true,"id":298},{"__isSmartRef__":true,"id":319},{"__isSmartRef__":true,"id":343},{"__isSmartRef__":true,"id":367},{"__isSmartRef__":true,"id":380},{"__isSmartRef__":true,"id":413},{"__isSmartRef__":true,"id":446},{"__isSmartRef__":true,"id":470},{"__isSmartRef__":true,"id":483},{"__isSmartRef__":true,"id":507},{"__isSmartRef__":true,"id":581},{"__isSmartRef__":true,"id":594},{"__isSmartRef__":true,"id":610},{"__isSmartRef__":true,"id":623},{"__isSmartRef__":true,"id":636},{"__isSmartRef__":true,"id":642},{"__isSmartRef__":true,"id":657}],"scripts":[],"id":"8690C9C9-8C35-4BEE-B8E8-EFE227242EF5","shape":{"__isSmartRef__":true,"id":672},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"Squeak","partsBinMetaInfo":{"__isSmartRef__":true,"id":673},"eventHandler":{"__isSmartRef__":true,"id":698},"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","6D966469-181F-484B-A755-6E96A5356ABF","32A6AF3F-3C63-4A3F-A804-AC0D39DA340D","E11F1DA6-B14D-48EA-862A-8EBB9C350C84","78A72DDF-8384-47A9-B5AD-CD70563A4233","AD9F1757-805F-48EF-950F-BF4D0D1373E2","A327DFED-C888-4B2D-A409-4F5C7AC7DCB2","784A18C4-9FA1-4CB3-BAEE-9A50D06887EE","6C4EF74F-4C1D-4321-84BB-3ABA84EEF49B","822378D1-B52A-468A-B616-DEDDDF125AF1","EDC470F4-ECAA-4B70-94AF-E2F8C39ACDC6"],"partTests":{"__isSmartRef__":true,"id":699},"_ClipMode":"visible","moved":true,"isBeingDragged":false,"prevScroll":[0,0],"running":false,"byteCodeCount":0,"sendCount":0,"spinner":0,"formerPosition":null,"interpretLoopProcess":169522,"vmStopTime":0,"runButton":{"__isSmartRef__":true,"id":241},"display":null,"stackTick":0,"stackBusy":0,"runAfterLoad":true,"doNotSerialize":["vm"],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["distanceToDragEvent","_Position"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":704},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","distanceToDragEvent":"lively.pt(548.0,-9.0)","_Position":"lively.pt(0.0,0.0)"},"1":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":2},"eventHandler":{"__isSmartRef__":true,"id":3},"_ClipMode":"visible","derivationIds":["8BBA25FF-3A0E-4E03-ADC0-00485155BEDC","85E44E17-0589-4F4B-B0DB-F0904CDAADF8","8605BD6E-D9A2-428B-9CE6-40768BA3461B","29D1C048-AFEB-4681-8421-DD59F3E81C73","5035634A-3A29-440B-AECE-4693A14CD089","22C2E288-E6B9-4C39-853C-7611B5ABE66D","A7E62872-A6F0-43C4-8FEA-5120618258E2","DA23E78E-0C66-4CDB-8352-D178456EDF81","F40CBD63-D08F-4348-8E33-9F474DD3B9AB","B0C12914-6FB1-404D-AE68-8835F1A01DA9","0E2BE210-EFE1-42BB-9FB2-D427F557703A","55779071-A703-410D-A89E-1551E07852DA"],"id":"C14E1A4D-5C93-429E-866D-23BC982984CD","droppingEnabled":false,"halosEnabled":true,"showsHalos":false,"partsBinMetaInfo":{"__isSmartRef__":true,"id":4},"name":"Display","owner":{"__isSmartRef__":true,"id":0},"isBeingDragged":false,"grabbingEnabled":false,"swapButtons":false,"_Rotation":0,"_Scale":1,"_adaptCanvasSizeHTMLInProgress":false,"_canvasSerializationDataURI":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAOGklEQVR4Xu3VsQkAIBAEQe2/te9JwQ7ceIz9ZDjYPTNneQQIECBA4FNgC8inmO8ECBAg8AQExBAIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECAiIDRAgQIBAEhCQxOaIAAECBATEBggQIEAgCQhIYnNEgAABAgJiAwQIECCQBAQksTkiQIAAAQGxAQIECBBIAgKS2BwRIECAgIDYAAECBAgkAQFJbI4IECBAQEBsgAABAgSSgIAkNkcECBAgICA2QIAAAQJJQEASmyMCBAgQEBAbIECAAIEkICCJzREBAgQICIgNECBAgEASEJDE5ogAAQIEBMQGCBAgQCAJCEhic0SAAAECAmIDBAgQIJAEBCSxOSJAgAABAbEBAgQIEEgCApLYHBEgQICAgNgAAQIECCQBAUlsjggQIEBAQGyAAAECBJKAgCQ2RwQIECAgIDZAgAABAklAQBKbIwIECBAQEBsgQIAAgSQgIInNEQECBAgIiA0QIECAQBIQkMTmiAABAgQExAYIECBAIAkISGJzRIAAAQICYgMECBAgkAQEJLE5IkCAAAEBsQECBAgQSAICktgcESBAgICA2AABAgQIJAEBSWyOCBAgQEBAbIAAAQIEkoCAJDZHBAgQICAgNkCAAAECSUBAEpsjAgQIEBAQGyBAgACBJCAgic0RAQIECFxnSkyMboRoSgAAAABJRU5ErkJggg==","doNotSerialize":["whenOpenedInWorldCallbacks","display","eventQueue"],"preserveContents":false,"__serializedExpressions__":["_Position","distanceToDragEvent","pixelRatio"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":7},"__LivelyClassName__":"lively.morphic.CanvasMorph","__SourceModuleName__":"Global.lively.morphic.AdditionalMorphs","_Position":"lively.pt(10.0,20.0)","distanceToDragEvent":"lively.pt(431.0,-14.0)","pixelRatio":"lively.pt(1.0,1.0)"},"2":{"_NodeClass":["Morph","CanvasMorph"],"stringifiedShapeNode":"<canvas xmlns=\"http://www.w3.org/1999/xhtml\" style=\"overflow: visible; padding: 0px; width: 800px; height: 600px;\" class=\"Morph CanvasMorph\" id=\"null\" data-lively-morphid=\"C14E1A4D-5C93-429E-866D-23BC982984CD\" width=\"800\" height=\"600\"></canvas>","__serializedExpressions__":["_Extent","_Padding","extent"],"__LivelyClassName__":"lively.morphic.Shapes.External","__SourceModuleName__":"Global.lively.morphic.Shapes","_Extent":"lively.pt(800.0,600.0)","_Padding":"lively.rect(0,0,0,0)","extent":"lively.pt(800.0,600.0)"},"3":{"morph":{"__isSmartRef__":true,"id":1},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"4":{"partName":"HTMLCanvas","requiredModules":[],"partsSpaceName":"PartsBin/Sandbox/","comment":"An HTML Canvas object to draw yourself.\n\nEdit the draw() script to change what is shown.","changes":[{"__isSmartRef__":true,"id":5},{"__isSmartRef__":true,"id":6}],"migrationLevel":8,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Mon Nov 25 2013 00:24:13 GMT+0100 (CET)\")"},"5":{"author":"bgnauk","message":"no comment","id":"E504CA1C-BE2D-4AB1-AA4C-3CC2BDF1D95A","__serializedExpressions__":["date"],"date":"new Date(\"Fri Aug 10 2012 00:54:00 GMT+0200 (CEST)\")"},"6":{"author":null,"message":"no comment","id":"17E6346C-8590-42C3-BCDB-FCB560F36075","__serializedExpressions__":["date"],"date":"new Date(\"Mon Nov 25 2013 00:24:13 GMT+0100 (CET)\")"},"7":{"onCanvasChanged":{"__isSmartRef__":true,"id":8},"draw":{"__isSmartRef__":true,"id":15},"createDisplay":{"__isSmartRef__":true,"id":18},"onMouseMove":{"__isSmartRef__":true,"id":21},"onMouseDown":{"__isSmartRef__":true,"id":28},"onMouseUp":{"__isSmartRef__":true,"id":35},"recordMouseEvent":{"__isSmartRef__":true,"id":42},"onKeyPress":{"__isSmartRef__":true,"id":45},"showMouseButtons":{"__isSmartRef__":true,"id":52},"doSwapButtons":{"__isSmartRef__":true,"id":55},"onKeyDown":{"__isSmartRef__":true,"id":58},"onKeyUp":{"__isSmartRef__":true,"id":65},"doKeyCopy":{"__isSmartRef__":true,"id":72},"doKeyPaste":{"__isSmartRef__":true,"id":79},"recordKeyboardEvent":{"__isSmartRef__":true,"id":86},"onstore":{"__isSmartRef__":true,"id":89},"setSwapButtons":{"__isSmartRef__":true,"id":96},"makeSqueakEvent":{"__isSmartRef__":true,"id":99}},"8":{"varMapping":{"__isSmartRef__":true,"id":9},"source":"function onCanvasChanged() {\n    // canvas created or loaded or size changed, need to redraw contents\n    var ctx = this.getContext(\"2d\");\n    if (ctx) {\n        var extent = this.getCanvasExtent();\n        ctx.save();\n        ctx.setTransform(1, 0, 0, 1, 0, 0);\n        this.draw(ctx, extent.x, extent.y);\n        ctx.restore();\n    };\n}","funcProperties":{"__isSmartRef__":true,"id":14},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"9":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":10}},"10":{"$super":{"__isSmartRef__":true,"id":11}},"11":{"varMapping":{"__isSmartRef__":true,"id":12},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":13},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"12":{"obj":{"__isSmartRef__":true,"id":1},"name":"onCanvasChanged"},"13":{},"14":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Jul 22 2014 13:56:33 GMT+0200 (CEST)\")"},"15":{"varMapping":{"__isSmartRef__":true,"id":16},"source":"function draw(ctx, width, height) {\n    ctx.fillStyle = Global.Color.gray.toString();\n    ctx.fillRect(0, 0, width, height);\n}","funcProperties":{"__isSmartRef__":true,"id":17},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"16":{"this":{"__isSmartRef__":true,"id":1}},"17":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Jul 22 2014 13:55:31 GMT+0200 (CEST)\")"},"18":{"varMapping":{"__isSmartRef__":true,"id":19},"source":"function createDisplay() {\n    var ctx = this.getContext(\"2d\");\n    this.doNotSerialize.pushIfNotIncluded('display');\n    this.doNotSerialize.pushIfNotIncluded('eventQueue');\n    this.eventQueue = null;     // no queuing unless image uses events\n    return this.display = {\n        context: ctx,\n        mouseX: 0,\n        mouseY: 0,\n        buttons: 0,\n        keys: [],\n        clipboardString: '',\n        clipboardStringChanged: false,\n        signalInputEvent: null, // function set by VM\n        getNextEvent: function firstTime(firstEvtBuf, firstOffset) {\n            this.eventQueue = [];\n            this.display.getNextEvent = function getNextEvent(evtBuf, timeOffset) {\n                var evt = this.eventQueue.shift();\n                if (evt) this.makeSqueakEvent(evt, evtBuf, timeOffset);\n                else evtBuf[0] = Global.Squeak.EventTypeNone;\n            }.bind(this);\n            this.display.getNextEvent(firstEvtBuf, firstOffset);\n        }.bind(this),\n    };\n}","funcProperties":{"__isSmartRef__":true,"id":20},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"19":{"this":{"__isSmartRef__":true,"id":1}},"20":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Aug 27 2014 10:59:04 GMT+0200 (CEST)\")"},"21":{"varMapping":{"__isSmartRef__":true,"id":22},"source":"function onMouseMove(evt) {\n    this.recordMouseEvent(evt);\n}","funcProperties":{"__isSmartRef__":true,"id":27},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"22":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":23}},"23":{"$super":{"__isSmartRef__":true,"id":24}},"24":{"varMapping":{"__isSmartRef__":true,"id":25},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":26},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"25":{"obj":{"__isSmartRef__":true,"id":1},"name":"onMouseMove"},"26":{},"27":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:16:56 GMT+0200 (CEST)\")"},"28":{"varMapping":{"__isSmartRef__":true,"id":29},"source":"function onMouseDown(evt) {\n    this.recordMouseEvent(evt);\n}","funcProperties":{"__isSmartRef__":true,"id":34},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"29":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":30}},"30":{"$super":{"__isSmartRef__":true,"id":31}},"31":{"varMapping":{"__isSmartRef__":true,"id":32},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":33},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"32":{"obj":{"__isSmartRef__":true,"id":1},"name":"onMouseDown"},"33":{},"34":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:17:08 GMT+0200 (CEST)\")"},"35":{"varMapping":{"__isSmartRef__":true,"id":36},"source":"function onMouseUp(evt) {\n    this.recordMouseEvent(evt);\n}","funcProperties":{"__isSmartRef__":true,"id":41},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"36":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":37}},"37":{"$super":{"__isSmartRef__":true,"id":38}},"38":{"varMapping":{"__isSmartRef__":true,"id":39},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":40},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"39":{"obj":{"__isSmartRef__":true,"id":1},"name":"onMouseUp"},"40":{},"41":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:16:51 GMT+0200 (CEST)\")"},"42":{"varMapping":{"__isSmartRef__":true,"id":43},"source":"function recordMouseEvent(evt) {\n    if (!this.display) return;\n    this.display.mouseX = evt.layerX * this.pixelRatio.x | 0;\n    this.display.mouseY = evt.layerY * this.pixelRatio.y | 0;\n    var buttons = this.display.buttons & 7;\n    switch (evt.type) {\n        case 'pointermove':\n        case 'mousemove':\n            break; // nothing more to do\n        case 'pointerup':\n        case 'mouseup':\n            buttons = 0;\n            break;\n        case 'pointerdown':\n        case 'mousedown':\n            // evt.which: 1 = left, 2 = middle, 3 = right\n            if (!evt.which) evt.which = \n                evt.buttons & 1 ? 1 : evt.buttons & 2 ? 3 : 2;\n            switch (evt.which) {\n                case 1: buttons = Global.Squeak.Mouse_Red; break;    // left \n                case 2: buttons = Global.Squeak.Mouse_Yellow; break; // middle\n                case 3: buttons = Global.Squeak.Mouse_Blue; break;   // right\n            }; \n            if (this.swapButtons)\n                if (buttons == Global.Squeak.Mouse_Yellow) buttons = Global.Squeak.Mouse_Blue; else\n                if (buttons == Global.Squeak.Mouse_Blue) buttons = Global.Squeak.Mouse_Yellow;\n            break;\n    }\n    buttons +=\n        (evt.shiftKey  ? Global.Squeak.Keyboard_Shift  : 0) +\n        (evt.ctrlKey   ? Global.Squeak.Keyboard_Ctrl : 0) +\n        (evt.optionKey ? Global.Squeak.Keyboard_Alt : 0) +\n        (evt.metaKey   ? Global.Squeak.Keyboard_Cmd : 0);\n    if (!Global.UserAgent.isMacOS && evt.altKey)\n        buttons |= Global.Squeak.Keyboard_Cmd; // map ALT to CMD on non-Mac\n    if (this.display.buttons != buttons) {\n        this.display.buttons = buttons;\n        this.showMouseButtons();\n    }\n    if (this.eventQueue) {\n        this.eventQueue.push([\n            Global.Squeak.EventTypeMouse,\n            evt.timeStamp,  // converted to Squeak time in makeSqueakEvent()\n            this.display.mouseX,\n            this.display.mouseY,\n            this.display.buttons & Global.Squeak.Mouse_All,\n            this.display.buttons >> 3, \n        ]);\n        if (this.display.signalInputEvent)\n            this.display.signalInputEvent();\n    }\n    this.display.idle = 0;\n    this.owner.interpretAgain();\n}","funcProperties":{"__isSmartRef__":true,"id":44},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"43":{"this":{"__isSmartRef__":true,"id":1}},"44":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:18:35 GMT+0200 (CEST)\")"},"45":{"varMapping":{"__isSmartRef__":true,"id":46},"source":"function onKeyPress(evt) {\n    if (!this.display) return;\n    this.recordKeyboardEvent(evt.charCode, evt.timeStamp);\n    evt.stop();\n}","funcProperties":{"__isSmartRef__":true,"id":51},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"46":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":47}},"47":{"$super":{"__isSmartRef__":true,"id":48}},"48":{"varMapping":{"__isSmartRef__":true,"id":49},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":50},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"49":{"obj":{"__isSmartRef__":true,"id":1},"name":"onKeyPress"},"50":{},"51":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Aug 27 2014 11:23:37 GMT+0200 (CEST)\")"},"52":{"varMapping":{"__isSmartRef__":true,"id":53},"source":"function showMouseButtons() {\n    if (!this.display) return;\n    var buttons = this.display.buttons;\n    [this.get(\"LeftButton\"), this.get(\"MiddleButton\"), this.get(\"RightButton\")]\n        .forEach(function(m){\n            m.setBorderColor(buttons & m.mask ? Global.Color.white : Global.Color.black)\n        });\n}","funcProperties":{"__isSmartRef__":true,"id":54},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"53":{"this":{"__isSmartRef__":true,"id":1}},"54":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Jul 22 2014 13:55:31 GMT+0200 (CEST)\")"},"55":{"varMapping":{"__isSmartRef__":true,"id":56},"source":"function doSwapButtons() {\n    this.swapButtons = !this.swapButtons;\n    var yellow = this.get(this.swapButtons ? \"RightButton\" : \"MiddleButton\");\n    var blue = this.get(this.swapButtons ? \"MiddleButton\" : \"RightButton\");\n    yellow.mask = Global.Squeak.Mouse_Yellow;\n    yellow.setFill(Global.Color.rgb(255,255,128)); \n    blue.mask = Global.Squeak.Mouse_Blue;\n    blue.setFill(Global.Color.rgb(160,160,255)); \n    this.showMouseButtons();\n}","funcProperties":{"__isSmartRef__":true,"id":57},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"56":{"this":{"__isSmartRef__":true,"id":1}},"57":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:04:22 GMT+0200 (CEST)\")"},"58":{"varMapping":{"__isSmartRef__":true,"id":59},"source":"function onKeyDown(evt) {\n    if (!this.display) return false;\n    var code, modifier;\n    switch (evt.getKeyCode()) {\n        case Global.Event.KEY_DELETE:    code = 127; break;\n        case Global.Event.KEY_BACKSPACE: code = 8; break;\n        case Global.Event.KEY_INSERT:    code = 5; break;\n        case Global.Event.KEY_TAB:       code = 9; break;\n        case Global.Event.KEY_RETURN:    code = 13; break;\n        case Global.Event.KEY_ESC:       code = 27; break;\n        case Global.Event.KEY_HOME:      code = 1; break;\n        case Global.Event.KEY_END:       code = 4; break;\n        case Global.Event.KEY_PAGEUP:    code = 11; break;\n        case Global.Event.KEY_PAGEDOWN:  code = 12; break;\n        case Global.Event.KEY_LEFT:      code = 28; break;\n        case Global.Event.KEY_RIGHT:     code = 29; break;\n        case Global.Event.KEY_UP:        code = 30; break;\n        case Global.Event.KEY_DOWN:      code = 31; break;\n        case Global.Event.KEY_SHIFT: modifier =  8; break;\n        case Global.Event.KEY_CTRL:  modifier = 16; break;\n        case Global.Event.KEY_CMD:   modifier = 64; break;\n        // on non-Mac, map ALT to CMD\n        case Global.Event.KEY_ALT:   modifier = Global.UserAgent.isMacOS ? 32 : 64; break;\n    }\n    if (code) { // special key pressed\n        this.recordKeyboardEvent(code, evt.timeStamp);\n        evt.stop();\n        return true;\n    }\n    if (modifier) { // modifier pressed\n        this.display.buttons |= modifier;\n        if (modifier > 8) // special\n            this.display.keys = []; // flush queued key presses\n        evt.stop();\n        return true;\n    }\n    if (!this.isFocused()) return false;\n    if (evt.isCommandKey()) { // clipboard requires special handling\n        var c = evt.getKeyChar();\n        switch(c && c.toLowerCase()) {\n            // return false to let default handler do its magic\n            case 'c': this.doKeyCopy(evt); return false;\n            case 'v': this.doKeyPaste(evt); return false;\n        }\n    }\n    // regular cmd keys. TODO: Windows/Linux?\n    if ((evt.metaKey || evt.altKey) && evt.which) {\n        code = evt.which;\n        if (code >= 65 && code <= 90) {\n            if (!evt.shiftKey) code += 32; // make lowercase\n        } else {\n            if (evt.keyIdentifier && evt.keyIdentifier.slice(0,2) == 'U+')\n                code = parseInt(evt.keyIdentifier.slice(2), 16)\n        }\n        this.recordKeyboardEvent(code, evt.timeStamp);\n        evt.stop();\n        return true;\n    }\n    return false;\n}","funcProperties":{"__isSmartRef__":true,"id":64},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"59":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":60}},"60":{"$super":{"__isSmartRef__":true,"id":61}},"61":{"varMapping":{"__isSmartRef__":true,"id":62},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":63},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"62":{"obj":{"__isSmartRef__":true,"id":1},"name":"onKeyDown"},"63":{},"64":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Aug 27 2014 11:24:06 GMT+0200 (CEST)\")"},"65":{"varMapping":{"__isSmartRef__":true,"id":66},"source":"function onKeyUp(evt) {\n    if (!this.display) return;\n    var modifier;\n    switch (evt.getKeyCode()) {\n        case Global.Event.KEY_SHIFT: modifier =  8; break;\n        case Global.Event.KEY_CTRL:  modifier = 16; break;\n        case Global.Event.KEY_CMD:   modifier = 64; break;\n        // on non-Mac, map ALT to CMD\n        case Global.Event.KEY_ALT:   modifier = Global.UserAgent.isMacOS ? 32 : 64; break;\n    }\n    if (modifier) {\n        this.display.buttons &= ~modifier;\n        if (modifier > 8) // special\n            this.display.keys = []; // flush queued key presses\n        evt.stop();\n        return true;\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":71},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"66":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":67}},"67":{"$super":{"__isSmartRef__":true,"id":68}},"68":{"varMapping":{"__isSmartRef__":true,"id":69},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":70},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"69":{"obj":{"__isSmartRef__":true,"id":1},"name":"onKeyUp"},"70":{},"71":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Jul 22 2014 13:55:31 GMT+0200 (CEST)\")"},"72":{"varMapping":{"__isSmartRef__":true,"id":73},"source":"function doKeyCopy() {\n    this.withClipboardEventDo(function(evt, data) {\n        // simulate copy event for Squeak so it places its text in clipboard\n        this.display.buttons &= ~Global.Squeak.Keyboard_All;  // remove all modifiers\n        this.display.buttons |= Global.Squeak.Keyboard_Cmd;   // add cmd modifier\n        this.display.keys = []; //  flush other keys\n        this.display.clipboardStringChanged = false;\n        this.recordKeyboardEvent('c'.charCodeAt(0), evt.timeStamp); // create cmd-c\n        // now interpret until Squeak has copied to the clipboard\n        var start = Date.now();\n        while (!this.display.clipboardStringChanged && Date.now() - start < 500)\n            this.display.vm.interpret(20);\n        // got it, now copy to the system clipboard\n        try {\n            data.setData(\"Text\", this.display.clipboardString);\n        } catch(err) {\n            Global.show(\"display: copy error \" + err);\n        }\n    }.bind(this));\n}","funcProperties":{"__isSmartRef__":true,"id":78},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"73":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":74}},"74":{"$super":{"__isSmartRef__":true,"id":75}},"75":{"varMapping":{"__isSmartRef__":true,"id":76},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":77},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"76":{"obj":{"__isSmartRef__":true,"id":1},"name":"doKeyCopy"},"77":{},"78":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:19:08 GMT+0200 (CEST)\")"},"79":{"varMapping":{"__isSmartRef__":true,"id":80},"source":"function doKeyPaste() {\n    this.withClipboardEventDo(function(evt, data) {\n        try {\n            this.display.clipboardString = data.getData('Text');\n            // simulate paste event for Squeak\n            this.display.buttons &= ~Global.Squeak.Keyboard_All;  // remove all modifiers\n            this.display.buttons |= Global.Squeak.Keyboard_Cmd;   // add cmd modifier\n            this.display.keys = []; //  flush other keys\n            this.recordKeyboardEvent('v'.charCodeAt(0), evt.timeStamp); // create cmd-v\n        } catch(err) {\n            Global.show(\"display: paste error \" + err);\n        }\n    }.bind(this));\n}","funcProperties":{"__isSmartRef__":true,"id":85},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"80":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":81}},"81":{"$super":{"__isSmartRef__":true,"id":82}},"82":{"varMapping":{"__isSmartRef__":true,"id":83},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":84},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"83":{"obj":{"__isSmartRef__":true,"id":1},"name":"doKeyPaste"},"84":{},"85":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Aug 27 2014 11:25:14 GMT+0200 (CEST)\")"},"86":{"varMapping":{"__isSmartRef__":true,"id":87},"source":"function recordKeyboardEvent(key, timestamp) {\n    var code = (this.display.buttons >> 3) << 8 | key;\n    if (code === this.display.vm.interruptKeycode) {\n        this.display.vm.interruptPending = true;\n    } else if (this.eventQueue) {\n        this.eventQueue.push([\n            Global.Squeak.EventTypeKeyboard,\n            timestamp,  // converted to Squeak time in makeSqueakEvent()\n            key, // MacRoman\n            Global.Squeak.EventKeyChar,\n            this.display.buttons >> 3, \n            0,  // Unicode \n        ]);\n        if (this.display.signalInputEvent)\n            this.display.signalInputEvent();\n    } else {\n        // no event queue, queue keys the old-fashioned way\n        this.display.keys.push(code);\n    }\n    this.display.idle = 0;\n    this.owner.interpretAgain();\n}","funcProperties":{"__isSmartRef__":true,"id":88},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"87":{"this":{"__isSmartRef__":true,"id":1}},"88":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:18:26 GMT+0200 (CEST)\")"},"89":{"varMapping":{"__isSmartRef__":true,"id":90},"source":"function onstore() {\n    // do not store image data as CanvasMorph.onstore() does\n}","funcProperties":{"__isSmartRef__":true,"id":95},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"90":{"this":{"__isSmartRef__":true,"id":1},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":91}},"91":{"$super":{"__isSmartRef__":true,"id":92}},"92":{"varMapping":{"__isSmartRef__":true,"id":93},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":94},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"93":{"obj":{"__isSmartRef__":true,"id":1},"name":"onstore"},"94":{},"95":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Apr 22 2014 10:48:53 GMT+0200 (CEST)\")"},"96":{"varMapping":{"__isSmartRef__":true,"id":97},"source":"function setSwapButtons(swap) {\n    if (this.swapButtons != swap)\n        this.doSwapButtons();\n}","funcProperties":{"__isSmartRef__":true,"id":98},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"97":{"this":{"__isSmartRef__":true,"id":1}},"98":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Jul 04 2014 09:07:25 GMT+0200 (CEST)\")"},"99":{"varMapping":{"__isSmartRef__":true,"id":100},"source":"function makeSqueakEvent(evt, sqEvtBuf, sqTimeOffset) {\n    sqEvtBuf[0] = evt[0];\n    sqEvtBuf[1] = (evt[1] - sqTimeOffset) & Global.Squeak.MillisecondClockMask;\n    for (var i = 2; i < evt.length; i++)\n        sqEvtBuf[i] = evt[i];\n}","funcProperties":{"__isSmartRef__":true,"id":101},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"100":{"this":{"__isSmartRef__":true,"id":1}},"101":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Aug 27 2014 10:59:19 GMT+0200 (CEST)\")"},"102":{"submorphs":[],"scripts":[],"id":"CD8E3ED4-AB33-4126-9FB2-985992821B59","shape":{"__isSmartRef__":true,"id":103},"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":10,"name":"SaveLink","partsBinMetaInfo":{"__isSmartRef__":true,"id":104},"textChunks":[{"__isSmartRef__":true,"id":112}],"charsReplaced":"foo!?","lastFindLoc":5,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":114},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","D8FE4394-5699-48B0-A077-3A2D7BCD84CF","F9B32E7B-73BB-4B1B-9324-18A4AD447103","B4DCF148-1771-4815-B83B-4CCF671C421F"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"previousSelection":null,"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"priorSelectionRange":null,"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(430.0,116.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(215.0,-22.0)"},"103":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","__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(305.7,386.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"104":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":105},{"__isSmartRef__":true,"id":106},{"__isSmartRef__":true,"id":107},{"__isSmartRef__":true,"id":108},{"__isSmartRef__":true,"id":109},{"__isSmartRef__":true,"id":110},{"__isSmartRef__":true,"id":111}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Wed Jul 24 2013 08:21:08 GMT+0200 (CEST)\")"},"105":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"106":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"107":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"108":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"109":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"110":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"111":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"112":{"style":{"__isSmartRef__":true,"id":113},"chunkOwner":{"__isSmartRef__":true,"id":102},"_id":"_61588","storedString":"","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"113":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"114":{"morph":{"__isSmartRef__":true,"id":102},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"115":{"submorphs":[],"scripts":[],"id":"AFDC3742-DD4A-4180-83D2-FACC6F26E7B6","shape":{"__isSmartRef__":true,"id":116},"droppingEnabled":false,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"Shade","partsBinMetaInfo":{"__isSmartRef__":true,"id":117},"eventHandler":{"__isSmartRef__":true,"id":134},"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","38EE5603-B184-4191-A834-394CA280F0ED","49200F78-0518-4C99-A0F0-09D80A4C50C8","3E0B8035-36A3-47C9-AF29-3F7C51B64C4C","3C2B6223-C554-46E4-9E30-3DFE83BDFF8F","04EA3815-C0AE-4F1F-ABF7-D96EC95F363A","FF4FD875-9F29-49AD-A090-4F00882DE43F"],"partTests":{"__isSmartRef__":true,"id":135},"_ClipMode":"visible","moved":true,"_PreviousBorderWidth":1,"isBeingDragged":false,"draggingEnabled":false,"grabbingEnabled":false,"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":140},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(10.0,20.0)","distanceToDragEvent":"lively.pt(269.0,-11.0)"},"116":{"_BorderWidth":1,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":true,"__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(800.0,600.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgba(0,0,0,0.25)","_Padding":"lively.rect(0,0,0,0)"},"117":{"partsSpaceName":"PartsBin/Basic","comment":"A plain simple rectangle","migrationLevel":8,"partName":"Rectangle","changes":[{"__isSmartRef__":true,"id":118},{"__isSmartRef__":true,"id":119},{"__isSmartRef__":true,"id":120},{"__isSmartRef__":true,"id":121},{"__isSmartRef__":true,"id":122},{"__isSmartRef__":true,"id":123},{"__isSmartRef__":true,"id":124},{"__isSmartRef__":true,"id":125},{"__isSmartRef__":true,"id":126},{"__isSmartRef__":true,"id":127},{"__isSmartRef__":true,"id":128},{"__isSmartRef__":true,"id":129},{"__isSmartRef__":true,"id":130},{"__isSmartRef__":true,"id":131},{"__isSmartRef__":true,"id":132},{"__isSmartRef__":true,"id":133}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Nov 05 2013 18:48:15 GMT+0100 (CET)\")"},"118":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jun 21 2013 00:16:24 GMT+0200 (CEST)\")"},"119":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 09:18:06 GMT+0200 (CEST)\")"},"120":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 12:57:18 GMT+0100 (CET)\")"},"121":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:36 GMT+0200 (CEST)\")"},"122":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:30 GMT+0200 (CEST)\")"},"123":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)\")"},"124":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\")"},"125":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)\")"},"126":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)\")"},"127":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)\")"},"128":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)\")"},"129":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:42:31 GMT+0100 (CET)\")"},"130":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:47:05 GMT+0100 (CET)\")"},"131":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:36:50 GMT+0200 (CEST)\")"},"132":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 20:49:27 GMT+0200 (CEST)\")"},"133":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jul 30 2013 08:20:51 GMT+0200 (CEST)\")"},"134":{"morph":{"__isSmartRef__":true,"id":115},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"135":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":136}},"136":{"test01IsMorph":{"__isSmartRef__":true,"id":137}},"137":{"varMapping":{"__isSmartRef__":true,"id":138},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":139},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"138":{"this":{"__isSmartRef__":true,"id":135}},"139":{},"140":{"onMouseDown":{"__isSmartRef__":true,"id":141},"onMouseUp":{"__isSmartRef__":true,"id":148},"onMouseOut":{"__isSmartRef__":true,"id":155},"onMouseMove":{"__isSmartRef__":true,"id":162}},"141":{"varMapping":{"__isSmartRef__":true,"id":142},"source":"function onMouseDown() {\n    if (this.owner.vm) {\n        this.owner.vm.primHandler.redrawDisplay();\n        this.get('Display').bringToFront();\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":147},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"142":{"this":{"__isSmartRef__":true,"id":115},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":143}},"143":{"$super":{"__isSmartRef__":true,"id":144}},"144":{"varMapping":{"__isSmartRef__":true,"id":145},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":146},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"145":{"obj":{"__isSmartRef__":true,"id":115},"name":"onMouseDown"},"146":{},"147":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Jul 17 2014 20:17:11 GMT+0200 (CEST)\")"},"148":{"varMapping":{"__isSmartRef__":true,"id":149},"source":"function onMouseUp() {\n    if (this.owner.submorphs.indexOf(this.get('Display')) > 0)\n        this.get('Display').sendToBack();\n}","funcProperties":{"__isSmartRef__":true,"id":154},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"149":{"this":{"__isSmartRef__":true,"id":115},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":150}},"150":{"$super":{"__isSmartRef__":true,"id":151}},"151":{"varMapping":{"__isSmartRef__":true,"id":152},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":153},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"152":{"obj":{"__isSmartRef__":true,"id":115},"name":"onMouseUp"},"153":{},"154":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Mar 17 2014 22:12:29 GMT+0100 (CET)\")"},"155":{"varMapping":{"__isSmartRef__":true,"id":156},"source":"function onMouseOut() {\n    this.onMouseUp();\n}","funcProperties":{"__isSmartRef__":true,"id":161},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"156":{"this":{"__isSmartRef__":true,"id":115},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":157}},"157":{"$super":{"__isSmartRef__":true,"id":158}},"158":{"varMapping":{"__isSmartRef__":true,"id":159},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":160},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"159":{"obj":{"__isSmartRef__":true,"id":115},"name":"onMouseOut"},"160":{},"161":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 13 2014 01:32:28 GMT+0100 (CET)\")"},"162":{"varMapping":{"__isSmartRef__":true,"id":163},"source":"function onMouseMove() {\n}","funcProperties":{"__isSmartRef__":true,"id":168},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"163":{"this":{"__isSmartRef__":true,"id":115},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":164}},"164":{"$super":{"__isSmartRef__":true,"id":165}},"165":{"varMapping":{"__isSmartRef__":true,"id":166},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":167},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"166":{"obj":{"__isSmartRef__":true,"id":115},"name":"onMouseMove"},"167":{},"168":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Mar 13 2014 01:40:37 GMT+0100 (CET)\")"},"169":{"submorphs":[{"__isSmartRef__":true,"id":170}],"scripts":[],"shape":{"__isSmartRef__":true,"id":175},"eventHandler":{"__isSmartRef__":true,"id":176},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","BA6D8B37-86E9-45F8-9724-8007FC67F907","708253CD-5E6A-4EA2-9C6B-56A62D39853F","2B9E7016-DF6E-4F36-8F86-F78588CA7F93","8BE40954-932E-480B-BA7D-2FF02C31B2D4","48CBB3A0-0BAB-470E-AADE-CB094DF27436","E9BBA27A-4BEE-41A2-AA22-770120279353","81300B62-C053-4CA3-B061-A97ECA633D43","49E92911-9BAA-4820-AE5C-874DEEE2BF84","B61BB5DF-B739-4C9F-93EB-16D04954A297"],"id":"84472951-3239-4A38-B333-D1847B809B1C","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":170},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":177}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button1","partsBinMetaInfo":{"__isSmartRef__":true,"id":179},"pinSpecs":[{"__isSmartRef__":true,"id":188}],"owner":{"__isSmartRef__":true,"id":0},"_StyleClassNames":["Morph","Button"],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":189},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(10.0,630.0)","distanceToDragEvent":"lively.pt(61.0,-12.0)"},"170":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":171},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":172}],"eventHandler":{"__isSmartRef__":true,"id":174},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","73AEDBB8-0951-43FF-B629-F667877CC469","166D2C92-EFE0-491F-890E-7FB9C83885BC","1CE284ED-2986-4DF4-994E-CFEEDF24D9A8","E9677611-BB90-4CE4-98F7-62CA2D5441BE","531784C6-ADC4-4B31-9399-06F280144D60","B07F24ED-EA03-467F-ABE5-00402A4EBC8C","1C085686-F3F2-45B2-A7D3-D56FFF78FA13","F17418CD-C592-4122-91C2-4B2704F0AD10","C75D9AF9-5124-44BF-949B-1E8E2F630933"],"id":"588288EE-4C8C-478D-855C-F00FC595DCE2","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":169},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"171":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"172":{"style":{"__isSmartRef__":true,"id":173},"chunkOwner":{"__isSmartRef__":true,"id":170},"_id":"_34337","storedString":"Reset ◼","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"173":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"174":{"morph":{"__isSmartRef__":true,"id":170},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"175":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"176":{"morph":{"__isSmartRef__":true,"id":169},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"177":{"sourceObj":{"__isSmartRef__":true,"id":169},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":169},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":178},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"178":{"source":{"__isSmartRef__":true,"id":169},"target":{"__isSmartRef__":true,"id":169}},"179":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":180},{"__isSmartRef__":true,"id":181},{"__isSmartRef__":true,"id":182},{"__isSmartRef__":true,"id":183},{"__isSmartRef__":true,"id":184},{"__isSmartRef__":true,"id":185},{"__isSmartRef__":true,"id":186},{"__isSmartRef__":true,"id":187}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"180":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"181":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"182":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"183":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"184":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"185":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"186":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"187":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"188":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"189":{"doAction":{"__isSmartRef__":true,"id":190}},"190":{"varMapping":{"__isSmartRef__":true,"id":191},"source":"function doAction() {\n    this.owner.reset();\n}","funcProperties":{"__isSmartRef__":true,"id":192},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"191":{"this":{"__isSmartRef__":true,"id":169}},"192":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 14 2013 02:22:47 GMT+0100 (CET)\")"},"193":{"submorphs":[{"__isSmartRef__":true,"id":194}],"scripts":[],"shape":{"__isSmartRef__":true,"id":199},"eventHandler":{"__isSmartRef__":true,"id":200},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","D35FFD63-1C93-452B-BD29-BD3441D91253","ABF86771-D224-4F76-8353-086654772ECE","48129D08-CB7A-43EE-81DE-BEBF7851432C","2499C59C-38EB-4E79-B285-AB000C4A67E7","92517A32-E97A-490B-BC1E-6DB3A6EA43BC","A5BF340C-6CD0-4AE8-9F64-ED039E7E26BF","20EF6850-8943-477C-B088-C91811C261FE","4491E085-17F6-4253-9697-6E382FE3951A","CBCDC1B2-5084-45C6-B998-46501CFCC27E"],"id":"81F6EEDD-3531-48C5-8C02-F4DFA5C04D10","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":194},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":201}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button2","partsBinMetaInfo":{"__isSmartRef__":true,"id":203},"pinSpecs":[{"__isSmartRef__":true,"id":212}],"owner":{"__isSmartRef__":true,"id":0},"_StyleClassNames":["Morph","Button"],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":213},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(100.0,630.0)","distanceToDragEvent":"lively.pt(60.0,-11.0)"},"194":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":195},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":196}],"eventHandler":{"__isSmartRef__":true,"id":198},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","E54F15E5-F6C8-43DC-93C9-35454F7A518B","189BD600-6A62-47A5-ADDC-E14BAF9C7D8E","1989A5E0-02EC-49B4-9174-7E93AC5996CB","9FF640D5-C8EE-483D-8EF8-65FCB35C7776","68600DC2-4E0E-4CF5-ADD3-402245BE19F8","EC69B3B0-4D05-4AD7-8E67-EBC0CD99D72B","445144FB-CDC8-49F3-AE13-034F9DFD059A","AFDFD4A9-3572-4A6A-9330-426882BA7533","2B14B587-D454-4BE0-B6CB-28D35864A60A"],"id":"45D5A5E1-3708-4F54-BDB2-EF9AE71A73DD","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":193},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"195":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"196":{"style":{"__isSmartRef__":true,"id":197},"chunkOwner":{"__isSmartRef__":true,"id":194},"_id":"_27781","storedString":"Load image","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"197":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"198":{"morph":{"__isSmartRef__":true,"id":194},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"199":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"200":{"morph":{"__isSmartRef__":true,"id":193},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"201":{"sourceObj":{"__isSmartRef__":true,"id":193},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":193},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":202},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"202":{"source":{"__isSmartRef__":true,"id":193},"target":{"__isSmartRef__":true,"id":193}},"203":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":204},{"__isSmartRef__":true,"id":205},{"__isSmartRef__":true,"id":206},{"__isSmartRef__":true,"id":207},{"__isSmartRef__":true,"id":208},{"__isSmartRef__":true,"id":209},{"__isSmartRef__":true,"id":210},{"__isSmartRef__":true,"id":211}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"204":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"205":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"206":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"207":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"208":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"209":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"210":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"211":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"212":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"213":{"doAction":{"__isSmartRef__":true,"id":214}},"214":{"varMapping":{"__isSmartRef__":true,"id":215},"source":"function doAction() {\n    this.owner.chooseImage();\n}","funcProperties":{"__isSmartRef__":true,"id":216},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"215":{"this":{"__isSmartRef__":true,"id":193}},"216":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu May 08 2014 19:35:46 GMT+0200 (CEST)\")"},"217":{"submorphs":[{"__isSmartRef__":true,"id":218}],"scripts":[],"shape":{"__isSmartRef__":true,"id":223},"eventHandler":{"__isSmartRef__":true,"id":224},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","CCAC4AB8-CBAA-45E2-9742-EEDFD049DEA9","40B2CDFC-C39F-4582-AE9C-F1170E496138","2DB43C1A-B776-41A1-9B23-4DAD8D781E46","C0AAE146-4AA4-4489-883E-01E5A03A7CDA","83DBBC8D-FA2D-41ED-BE57-4BDF4616361B","6CCA3541-A50B-4E5C-A0DD-397D8B7238B7","05AFD6C6-6774-4AD1-B098-F1FB2715AE0C","EF627A85-0261-4E00-AA0A-F3B3E8D68712","EB5551DB-92B1-43BA-A404-A84589D5ACD3","A2607D9C-3A33-446D-B066-E04F4EA0F8D2"],"id":"BD44DD87-A65A-47B8-A0F6-45F73A92EBB6","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":218},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":225}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button3","partsBinMetaInfo":{"__isSmartRef__":true,"id":227},"pinSpecs":[{"__isSmartRef__":true,"id":236}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":237},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(530.0,590.0)","distanceToDragEvent":"lively.pt(36.0,-8.0)"},"218":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":219},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":220}],"eventHandler":{"__isSmartRef__":true,"id":222},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","84A41AE0-3FB1-40E0-BF33-C0DC73FDFCA6","76A1EA6E-1064-489B-9719-B8692DF6AB9C","AD1DC21F-77C4-4F86-BF8A-5E7D6D4E52D1","218645DB-133C-4ABB-A958-D5C277A14887","11F3A5E1-39F8-4FC8-B9C3-48AB2E3ABF89","77593C93-B316-4C4C-9864-9D005094854C","F55FCE94-1DDA-42BD-B59D-C4D184B956B0","B3182E98-D3AE-4B1F-8B49-1FA830C3B2AC","25E10571-1275-4D62-979C-59CB1E3DCE7C","3B103855-9814-437C-A3A5-762E4AB2B5B0"],"id":"7350CE5C-2DB4-420B-B8C2-1131CA54DE12","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":217},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"219":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(50.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"220":{"style":{"__isSmartRef__":true,"id":221},"chunkOwner":{"__isSmartRef__":true,"id":218},"_id":"_10575","storedString":"Step ▹","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"221":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"222":{"morph":{"__isSmartRef__":true,"id":218},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"223":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(50.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"224":{"morph":{"__isSmartRef__":true,"id":217},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"225":{"sourceObj":{"__isSmartRef__":true,"id":217},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":217},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":226},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"226":{"source":{"__isSmartRef__":true,"id":217},"target":{"__isSmartRef__":true,"id":217}},"227":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__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}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"228":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"229":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"230":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"231":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"232":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"233":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"234":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"235":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"236":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"237":{"doAction":{"__isSmartRef__":true,"id":238}},"238":{"varMapping":{"__isSmartRef__":true,"id":239},"source":"function doAction() {\n    this.owner.interpretOne();\n}","funcProperties":{"__isSmartRef__":true,"id":240},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"239":{"this":{"__isSmartRef__":true,"id":217}},"240":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 21 2013 04:21:31 GMT+0100 (CET)\")"},"241":{"submorphs":[{"__isSmartRef__":true,"id":242}],"scripts":[],"shape":{"__isSmartRef__":true,"id":247},"eventHandler":{"__isSmartRef__":true,"id":248},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","CCAC4AB8-CBAA-45E2-9742-EEDFD049DEA9","1C038396-4379-4373-9A72-B28547143DCF","932D0E19-5FBE-4B7E-9DFF-90FE4B22E75E","1C75681C-A190-42F1-8358-2CEECEE2F007","F613522F-6263-4465-819E-851412B4F03D","924B0143-BB74-4E2A-8330-5B18C0EE1192","807E5578-FB92-4EF0-875D-D122CCB8344B","D5ACBBE9-15A8-401D-B578-D4FD71B0CFB0","74036B49-E9A9-48EF-9828-3A289E3783EE","D6E5D7DB-7591-45A4-9847-93F10E30CD6C","0CA77BD2-952A-4DA2-B69A-06E5E492950F"],"id":"134F6EBB-4A57-4C7D-8A6B-977302BF9473","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":242},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":249}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"RunButton","partsBinMetaInfo":{"__isSmartRef__":true,"id":251},"pinSpecs":[{"__isSmartRef__":true,"id":260}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":261},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(720.0,630.0)","distanceToDragEvent":"lively.pt(53.0,-12.0)"},"242":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":243},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":244}],"eventHandler":{"__isSmartRef__":true,"id":246},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","84A41AE0-3FB1-40E0-BF33-C0DC73FDFCA6","A8965203-E71A-496C-9D50-BA19C2A9E592","FA6A7F9A-3374-4D79-A312-68CBCD15A842","5E7FA3BD-ADD0-4A02-9567-989654ED1EA0","D814C4BE-3903-4358-9D1F-587A83CB5296","0D34EE72-0152-4163-83C5-04789FE4C833","816AC21A-912D-4985-A538-F7348B85511C","74F3BE84-709A-4F35-80FE-2B1B64983987","F254C168-8F2D-4DE9-B6EE-6EEA4FC77EE1","39004AF5-00CE-4AFC-A58E-7CFD3B200944","D577C1A2-E721-4952-BBA0-049927333573"],"id":"94D45385-6DA7-4EFA-A171-533392DFE53E","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":241},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"243":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(70.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"244":{"style":{"__isSmartRef__":true,"id":245},"chunkOwner":{"__isSmartRef__":true,"id":242},"_id":"_264","storedString":"Run ▶","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"245":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"246":{"morph":{"__isSmartRef__":true,"id":242},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"247":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(70.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"248":{"morph":{"__isSmartRef__":true,"id":241},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"249":{"sourceObj":{"__isSmartRef__":true,"id":241},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":241},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":250},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"250":{"source":{"__isSmartRef__":true,"id":241},"target":{"__isSmartRef__":true,"id":241}},"251":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":252},{"__isSmartRef__":true,"id":253},{"__isSmartRef__":true,"id":254},{"__isSmartRef__":true,"id":255},{"__isSmartRef__":true,"id":256},{"__isSmartRef__":true,"id":257},{"__isSmartRef__":true,"id":258},{"__isSmartRef__":true,"id":259}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"252":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"253":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"254":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"255":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"256":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"257":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"258":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"259":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"260":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"261":{"doAction":{"__isSmartRef__":true,"id":262}},"262":{"varMapping":{"__isSmartRef__":true,"id":263},"source":"function doAction() {\n    this.owner.run();\n}","funcProperties":{"__isSmartRef__":true,"id":264},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"263":{"this":{"__isSmartRef__":true,"id":241}},"264":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Apr 22 2014 10:42:13 GMT+0200 (CEST)\")"},"265":{"submorphs":[],"scripts":[],"id":"22DCACB6-5354-43A5-8DB8-E27C5F0FA89A","shape":{"__isSmartRef__":true,"id":266},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"LeftButton","partsBinMetaInfo":{"__isSmartRef__":true,"id":267},"eventHandler":{"__isSmartRef__":true,"id":284},"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","F4336869-9BD9-484B-B9F6-886FA48B1946","A71443C1-89F0-4BD0-B283-6E528D580D64","3E7E11CD-3E45-4BB5-BF2B-68D8BAB8739B","7C50A458-E91C-46C8-88FC-BDD5687FA32A","FEEC7FFC-298E-4015-A033-24145C0D6677","C8F2248F-6519-4C36-A9A1-B0CF944556D0","9D162657-CBC0-4664-93C1-0BFC63CA7F5F"],"partTests":{"__isSmartRef__":true,"id":285},"_ClipMode":"visible","moved":true,"owner":{"__isSmartRef__":true,"id":0},"isBeingDragged":false,"mask":4,"_ToolTip":"indicates state of the mouse buttons","_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":290},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(10.0,5.0)","distanceToDragEvent":"lively.pt(39.0,-12.0)"},"266":{"_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(10.0,10.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(255,128,128)","_Padding":"lively.rect(0,0,0,0)"},"267":{"partsSpaceName":"PartsBin/Basic","comment":"A plain simple rectangle","migrationLevel":8,"partName":"Rectangle","changes":[{"__isSmartRef__":true,"id":268},{"__isSmartRef__":true,"id":269},{"__isSmartRef__":true,"id":270},{"__isSmartRef__":true,"id":271},{"__isSmartRef__":true,"id":272},{"__isSmartRef__":true,"id":273},{"__isSmartRef__":true,"id":274},{"__isSmartRef__":true,"id":275},{"__isSmartRef__":true,"id":276},{"__isSmartRef__":true,"id":277},{"__isSmartRef__":true,"id":278},{"__isSmartRef__":true,"id":279},{"__isSmartRef__":true,"id":280},{"__isSmartRef__":true,"id":281},{"__isSmartRef__":true,"id":282},{"__isSmartRef__":true,"id":283}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Aug 27 2013 20:52:41 GMT+0200 (CEST)\")"},"268":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jun 21 2013 00:16:24 GMT+0200 (CEST)\")"},"269":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 09:18:06 GMT+0200 (CEST)\")"},"270":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 12:57:18 GMT+0100 (CET)\")"},"271":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:36 GMT+0200 (CEST)\")"},"272":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:30 GMT+0200 (CEST)\")"},"273":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)\")"},"274":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\")"},"275":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)\")"},"276":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)\")"},"277":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)\")"},"278":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)\")"},"279":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:42:31 GMT+0100 (CET)\")"},"280":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:47:05 GMT+0100 (CET)\")"},"281":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:36:50 GMT+0200 (CEST)\")"},"282":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 20:49:27 GMT+0200 (CEST)\")"},"283":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jul 30 2013 08:20:51 GMT+0200 (CEST)\")"},"284":{"morph":{"__isSmartRef__":true,"id":265},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"285":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":286}},"286":{"test01IsMorph":{"__isSmartRef__":true,"id":287}},"287":{"varMapping":{"__isSmartRef__":true,"id":288},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":289},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"288":{"this":{"__isSmartRef__":true,"id":285}},"289":{},"290":{"onMouseDown":{"__isSmartRef__":true,"id":291}},"291":{"varMapping":{"__isSmartRef__":true,"id":292},"source":"function onMouseDown() {\n    var d = this.get('Display').display;\n    if (d.buttons & this.mask)\n        d.buttons &= ~this.mask;\n    else \n        d.buttons |= this.mask;\n    this.get('Display').showMouseButtons();\n}","funcProperties":{"__isSmartRef__":true,"id":297},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"292":{"this":{"__isSmartRef__":true,"id":265},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":293}},"293":{"$super":{"__isSmartRef__":true,"id":294}},"294":{"varMapping":{"__isSmartRef__":true,"id":295},"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":296},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"295":{"obj":{"__isSmartRef__":true,"id":265},"name":"onMouseDown"},"296":{},"297":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Dec 09 2013 14:12:17 GMT+0100 (CET)\")"},"298":{"submorphs":[],"scripts":[],"id":"00893779-71A1-4ED4-B552-5CBDC31AADB6","shape":{"__isSmartRef__":true,"id":299},"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":10,"name":"Text","partsBinMetaInfo":{"__isSmartRef__":true,"id":300},"textChunks":[{"__isSmartRef__":true,"id":308}],"charsReplaced":"⇄","lastFindLoc":2,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":310},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","9D2E907F-2D8D-41A4-A288-BA5814821A9C","1F345208-90D5-464D-B1CA-D8DE7561256D","B23D1E86-71A0-42DB-87EE-A2C140ECF48D","43BB7779-5F23-4CDB-BC18-458A0D8659C3","03200BA8-732C-4D61-8477-3B2E8E941414","7E8E59D0-43D5-4E6B-A67C-1F91FA046FDF","35960D3D-C41B-4F1A-85FF-D73EA3AE5EA7"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"previousSelection":[1,0],"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_ToolTip":"click to swap yellow and blue buttons","_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":311},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(48.0,1.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(37.0,-17.0)"},"299":{"fill":null,"_BorderWidth":0,"_ClipMode":"visible","__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(19.7,25.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"300":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":301},{"__isSmartRef__":true,"id":302},{"__isSmartRef__":true,"id":303},{"__isSmartRef__":true,"id":304},{"__isSmartRef__":true,"id":305},{"__isSmartRef__":true,"id":306},{"__isSmartRef__":true,"id":307}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Apr 23 2013 16:45:27 GMT+0200 (CEST)\")"},"301":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"302":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"303":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"304":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"305":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"306":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"307":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"308":{"style":{"__isSmartRef__":true,"id":309},"morph":{"__isSmartRef__":true,"id":298},"chunkOwner":{"__isSmartRef__":true,"id":298},"storedString":"⇄","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"309":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"310":{"morph":{"__isSmartRef__":true,"id":298},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"311":{"onMouseDown":{"__isSmartRef__":true,"id":312}},"312":{"varMapping":{"__isSmartRef__":true,"id":313},"source":"function onMouseDown() {\n    this.get(\"Display\").doSwapButtons();\n    this.get(\"Display\").owner.swapButtonsChanged();\n}","funcProperties":{"__isSmartRef__":true,"id":318},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"313":{"this":{"__isSmartRef__":true,"id":298},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":314}},"314":{"$super":{"__isSmartRef__":true,"id":315}},"315":{"varMapping":{"__isSmartRef__":true,"id":316},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":317},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"316":{"obj":{"__isSmartRef__":true,"id":298},"name":"onMouseDown"},"317":{},"318":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:12:05 GMT+0200 (CEST)\")"},"319":{"submorphs":[{"__isSmartRef__":true,"id":320}],"scripts":[],"shape":{"__isSmartRef__":true,"id":325},"eventHandler":{"__isSmartRef__":true,"id":326},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","CCAC4AB8-CBAA-45E2-9742-EEDFD049DEA9","1C038396-4379-4373-9A72-B28547143DCF","932D0E19-5FBE-4B7E-9DFF-90FE4B22E75E","1C75681C-A190-42F1-8358-2CEECEE2F007","F613522F-6263-4465-819E-851412B4F03D","924B0143-BB74-4E2A-8330-5B18C0EE1192","807E5578-FB92-4EF0-875D-D122CCB8344B","D5ACBBE9-15A8-401D-B578-D4FD71B0CFB0","74036B49-E9A9-48EF-9828-3A289E3783EE","13007ACC-55DC-4075-B6CF-F66DE0C7DD61","E3BE5189-0E0B-4000-8DEA-A139C4F338CD","92DFE1F1-5316-436C-BFD0-221E7497FF26"],"id":"F8A07CD8-F434-4ADF-81C9-BEDDAE1FBAD1","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":320},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":327}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button5","partsBinMetaInfo":{"__isSmartRef__":true,"id":329},"pinSpecs":[{"__isSmartRef__":true,"id":338}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":339},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(730.0,590.0)","distanceToDragEvent":"lively.pt(46.0,-13.0)"},"320":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":321},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":322}],"eventHandler":{"__isSmartRef__":true,"id":324},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","84A41AE0-3FB1-40E0-BF33-C0DC73FDFCA6","A8965203-E71A-496C-9D50-BA19C2A9E592","FA6A7F9A-3374-4D79-A312-68CBCD15A842","5E7FA3BD-ADD0-4A02-9567-989654ED1EA0","D814C4BE-3903-4358-9D1F-587A83CB5296","0D34EE72-0152-4163-83C5-04789FE4C833","816AC21A-912D-4985-A538-F7348B85511C","74F3BE84-709A-4F35-80FE-2B1B64983987","F254C168-8F2D-4DE9-B6EE-6EEA4FC77EE1","52001844-DFDA-4AA8-9071-A6A217E2C9C3","F52159FA-BAC8-4966-ABC3-367281F3356D","EAADEB3C-F671-4C87-BD39-8E70CB588587"],"id":"438F3835-20F6-40BD-8DAA-F82759C2F0CB","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":319},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"321":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(60.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"322":{"style":{"__isSmartRef__":true,"id":323},"chunkOwner":{"__isSmartRef__":true,"id":320},"_id":"_4587","storedString":"Return ⬆","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"323":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"324":{"morph":{"__isSmartRef__":true,"id":320},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"325":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(60.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"326":{"morph":{"__isSmartRef__":true,"id":319},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"327":{"sourceObj":{"__isSmartRef__":true,"id":319},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":319},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":328},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"328":{"source":{"__isSmartRef__":true,"id":319},"target":{"__isSmartRef__":true,"id":319}},"329":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":330},{"__isSmartRef__":true,"id":331},{"__isSmartRef__":true,"id":332},{"__isSmartRef__":true,"id":333},{"__isSmartRef__":true,"id":334},{"__isSmartRef__":true,"id":335},{"__isSmartRef__":true,"id":336},{"__isSmartRef__":true,"id":337}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"330":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"331":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"332":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"333":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"334":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"335":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"336":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"337":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"338":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"339":{"doAction":{"__isSmartRef__":true,"id":340}},"340":{"varMapping":{"__isSmartRef__":true,"id":341},"source":"function doAction() {\n    this.owner.interpretTillReturned();\n}","funcProperties":{"__isSmartRef__":true,"id":342},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"341":{"this":{"__isSmartRef__":true,"id":319}},"342":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Dec 18 2013 11:32:38 GMT+0100 (CET)\")"},"343":{"submorphs":[{"__isSmartRef__":true,"id":344}],"scripts":[],"shape":{"__isSmartRef__":true,"id":349},"eventHandler":{"__isSmartRef__":true,"id":350},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","CCAC4AB8-CBAA-45E2-9742-EEDFD049DEA9","1C038396-4379-4373-9A72-B28547143DCF","932D0E19-5FBE-4B7E-9DFF-90FE4B22E75E","1C75681C-A190-42F1-8358-2CEECEE2F007","F613522F-6263-4465-819E-851412B4F03D","924B0143-BB74-4E2A-8330-5B18C0EE1192","807E5578-FB92-4EF0-875D-D122CCB8344B","D5ACBBE9-15A8-401D-B578-D4FD71B0CFB0","74036B49-E9A9-48EF-9828-3A289E3783EE","13007ACC-55DC-4075-B6CF-F66DE0C7DD61","4ABA198F-FBB0-41BE-AA6A-D55CB333A9AB","22D3AFE6-5332-479A-90EC-4FD437B189C7","FF87C75E-242F-4B04-A8B3-5E3C7F82D475"],"id":"14FDFA0D-845E-4B3A-B532-78BA403079D8","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":344},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":351}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button6","partsBinMetaInfo":{"__isSmartRef__":true,"id":353},"pinSpecs":[{"__isSmartRef__":true,"id":362}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":363},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(660.0,590.0)","distanceToDragEvent":"lively.pt(45.0,-12.0)"},"344":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":345},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":346}],"eventHandler":{"__isSmartRef__":true,"id":348},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","84A41AE0-3FB1-40E0-BF33-C0DC73FDFCA6","A8965203-E71A-496C-9D50-BA19C2A9E592","FA6A7F9A-3374-4D79-A312-68CBCD15A842","5E7FA3BD-ADD0-4A02-9567-989654ED1EA0","D814C4BE-3903-4358-9D1F-587A83CB5296","0D34EE72-0152-4163-83C5-04789FE4C833","816AC21A-912D-4985-A538-F7348B85511C","74F3BE84-709A-4F35-80FE-2B1B64983987","F254C168-8F2D-4DE9-B6EE-6EEA4FC77EE1","52001844-DFDA-4AA8-9071-A6A217E2C9C3","773CBF8E-8BD1-41B4-8A35-6F59CE3EB32A","0A8720D8-55B0-49B0-8E01-0E056A13A798","BFFD9576-D0DD-4BE2-BCDE-6F9B0E2DC7B5"],"id":"9B78787F-2754-47AE-A302-9343100764CE","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":343},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"345":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(60.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"346":{"style":{"__isSmartRef__":true,"id":347},"chunkOwner":{"__isSmartRef__":true,"id":344},"_id":"_8849","storedString":"Send ⬇︎","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"347":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"348":{"morph":{"__isSmartRef__":true,"id":344},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"349":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(60.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"350":{"morph":{"__isSmartRef__":true,"id":343},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"351":{"sourceObj":{"__isSmartRef__":true,"id":343},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":343},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":352},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"352":{"source":{"__isSmartRef__":true,"id":343},"target":{"__isSmartRef__":true,"id":343}},"353":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":354},{"__isSmartRef__":true,"id":355},{"__isSmartRef__":true,"id":356},{"__isSmartRef__":true,"id":357},{"__isSmartRef__":true,"id":358},{"__isSmartRef__":true,"id":359},{"__isSmartRef__":true,"id":360},{"__isSmartRef__":true,"id":361}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"354":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"355":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"356":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"357":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"358":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"359":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"360":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"361":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"362":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"363":{"doAction":{"__isSmartRef__":true,"id":364}},"364":{"varMapping":{"__isSmartRef__":true,"id":365},"source":"function doAction() {\n    this.owner.interpretTillSent();\n}","funcProperties":{"__isSmartRef__":true,"id":366},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"365":{"this":{"__isSmartRef__":true,"id":343}},"366":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Dec 18 2013 11:33:20 GMT+0100 (CET)\")"},"367":{"submorphs":[],"scripts":[],"id":"A823CF63-27C2-4DDD-9573-D4C1B23F20D1","shape":{"__isSmartRef__":true,"id":368},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":true,"allowsInput":true,"_FontFamily":["Monaco","monospace"],"registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":10,"name":"Instructions","partsBinMetaInfo":{"__isSmartRef__":true,"id":369},"textChunks":[{"__isSmartRef__":true,"id":377}],"charsReplaced":"","lastFindLoc":1,"prevScroll":[0,559],"eventHandler":{"__isSmartRef__":true,"id":379},"_ClipMode":"scroll","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","647AAE95-23E0-4BAA-BF08-AAC6DB1E932F","A0A12583-5535-489A-81DF-0EBBED90B9EA","079ECD7D-0D86-4248-AB74-066DCD75C094","9A4C2171-BCCB-49A4-B9BF-A212ED70CEBE","B94DCFD0-158B-4BE5-82E3-95FCEF10B55E","F97C48A3-467E-45AF-A3D4-27EA6DAFD803","A3D5BB03-479F-4AF4-BFF5-0FAC685A7063","B2C19302-00A3-4FB0-8EFE-6E67B894A6E8","DE0D55D4-B379-4173-8CF7-965B1BDBD71A","9AFCC6AD-3739-4D4A-B87C-991E52F009CA"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"draggingEnabled":false,"lastSearchString":"current","previousSelection":[965,885],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(360.0,410.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(290.0,-11.0)"},"368":{"fill":null,"_BorderWidth":1.754,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding","_Fill"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(430.0,150.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)","_Fill":"Color.rgb(255,255,255)"},"369":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":370},{"__isSmartRef__":true,"id":371},{"__isSmartRef__":true,"id":372},{"__isSmartRef__":true,"id":373},{"__isSmartRef__":true,"id":374},{"__isSmartRef__":true,"id":375},{"__isSmartRef__":true,"id":376}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Apr 23 2013 16:45:27 GMT+0200 (CEST)\")"},"370":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"371":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"372":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"373":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"374":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"375":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"376":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"377":{"style":{"__isSmartRef__":true,"id":378},"chunkOwner":{"__isSmartRef__":true,"id":367},"_id":"_272","storedString":"","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"378":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"379":{"morph":{"__isSmartRef__":true,"id":367},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"380":{"submorphs":[],"scripts":[],"id":"A1D370B7-BE2C-4F9B-A7D9-6E6CCFE63CBD","shape":{"__isSmartRef__":true,"id":381},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"RightButton","partsBinMetaInfo":{"__isSmartRef__":true,"id":382},"eventHandler":{"__isSmartRef__":true,"id":399},"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","F4336869-9BD9-484B-B9F6-886FA48B1946","B1BDC336-B6D8-4A4C-9F30-3DE1153FA785","8B0D09E0-C6FC-4F7C-9208-91049CD139DF","DC5582A2-09F0-4694-85A9-7D0BC9E4F0CC","35908709-C688-41A3-92FC-3117E4F46D62","A388A9E5-82C0-4F38-93A7-E1051E260A78","B2D2F911-6982-4C1C-95BF-6DB9436DEED2","364BF8C0-91F1-4B1F-A8F2-F8DB170BEBF0"],"partTests":{"__isSmartRef__":true,"id":400},"_ClipMode":"visible","moved":true,"owner":{"__isSmartRef__":true,"id":0},"isBeingDragged":false,"mask":1,"_ToolTip":"indicates state of the mouse buttons","_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":405},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(36.0,5.0)","distanceToDragEvent":"lively.pt(37.0,-11.0)"},"381":{"_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(10.0,10.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(160,160,255)","_Padding":"lively.rect(0,0,0,0)"},"382":{"partsSpaceName":"PartsBin/Basic","comment":"A plain simple rectangle","migrationLevel":8,"partName":"Rectangle","changes":[{"__isSmartRef__":true,"id":383},{"__isSmartRef__":true,"id":384},{"__isSmartRef__":true,"id":385},{"__isSmartRef__":true,"id":386},{"__isSmartRef__":true,"id":387},{"__isSmartRef__":true,"id":388},{"__isSmartRef__":true,"id":389},{"__isSmartRef__":true,"id":390},{"__isSmartRef__":true,"id":391},{"__isSmartRef__":true,"id":392},{"__isSmartRef__":true,"id":393},{"__isSmartRef__":true,"id":394},{"__isSmartRef__":true,"id":395},{"__isSmartRef__":true,"id":396},{"__isSmartRef__":true,"id":397},{"__isSmartRef__":true,"id":398}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Aug 27 2013 20:52:41 GMT+0200 (CEST)\")"},"383":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jun 21 2013 00:16:24 GMT+0200 (CEST)\")"},"384":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 09:18:06 GMT+0200 (CEST)\")"},"385":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 12:57:18 GMT+0100 (CET)\")"},"386":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:36 GMT+0200 (CEST)\")"},"387":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:30 GMT+0200 (CEST)\")"},"388":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)\")"},"389":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\")"},"390":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)\")"},"391":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)\")"},"392":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)\")"},"393":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)\")"},"394":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:42:31 GMT+0100 (CET)\")"},"395":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:47:05 GMT+0100 (CET)\")"},"396":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:36:50 GMT+0200 (CEST)\")"},"397":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 20:49:27 GMT+0200 (CEST)\")"},"398":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jul 30 2013 08:20:51 GMT+0200 (CEST)\")"},"399":{"morph":{"__isSmartRef__":true,"id":380},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"400":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":401}},"401":{"test01IsMorph":{"__isSmartRef__":true,"id":402}},"402":{"varMapping":{"__isSmartRef__":true,"id":403},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":404},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"403":{"this":{"__isSmartRef__":true,"id":400}},"404":{},"405":{"onMouseDown":{"__isSmartRef__":true,"id":406}},"406":{"varMapping":{"__isSmartRef__":true,"id":407},"source":"function onMouseDown() {\n    var d = this.get('Display').display;\n    if (d.buttons & this.mask)\n        d.buttons &= ~this.mask;\n    else \n        d.buttons |= this.mask;\n    this.get('Display').showMouseButtons();\n}","funcProperties":{"__isSmartRef__":true,"id":412},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"407":{"this":{"__isSmartRef__":true,"id":380},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":408}},"408":{"$super":{"__isSmartRef__":true,"id":409}},"409":{"varMapping":{"__isSmartRef__":true,"id":410},"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":411},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"410":{"obj":{"__isSmartRef__":true,"id":380},"name":"onMouseDown"},"411":{},"412":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Dec 09 2013 14:31:57 GMT+0100 (CET)\")"},"413":{"submorphs":[],"scripts":[],"id":"1E412660-AC54-4064-8B50-F91B450FAEC2","shape":{"__isSmartRef__":true,"id":414},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"MiddleButton","partsBinMetaInfo":{"__isSmartRef__":true,"id":415},"eventHandler":{"__isSmartRef__":true,"id":432},"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","F4336869-9BD9-484B-B9F6-886FA48B1946","B1BDC336-B6D8-4A4C-9F30-3DE1153FA785","4DC9A230-6F55-413B-BE53-40951B0944D2","CBA487C4-9462-4817-BC42-8577953F8AE8","03DCA268-31EA-46E6-BE61-64216A64E96B","B788A2F1-0C2A-4C7B-A278-9BBADF08433D","06304091-5806-4DCE-BB5E-0C474EB99B28","A2252583-736C-4524-AE20-7C5E064595D5","AE5DF987-7428-45A5-BB9C-0E048D62BE68"],"partTests":{"__isSmartRef__":true,"id":433},"_ClipMode":"visible","moved":true,"owner":{"__isSmartRef__":true,"id":0},"isBeingDragged":false,"mask":2,"_ToolTip":"indicates state of the mouse buttons","_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":438},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(23.0,5.0)","distanceToDragEvent":"lively.pt(32.0,-10.0)"},"414":{"_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(10.0,10.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(255,255,128)","_Padding":"lively.rect(0,0,0,0)"},"415":{"partsSpaceName":"PartsBin/Basic","comment":"A plain simple rectangle","migrationLevel":8,"partName":"Rectangle","changes":[{"__isSmartRef__":true,"id":416},{"__isSmartRef__":true,"id":417},{"__isSmartRef__":true,"id":418},{"__isSmartRef__":true,"id":419},{"__isSmartRef__":true,"id":420},{"__isSmartRef__":true,"id":421},{"__isSmartRef__":true,"id":422},{"__isSmartRef__":true,"id":423},{"__isSmartRef__":true,"id":424},{"__isSmartRef__":true,"id":425},{"__isSmartRef__":true,"id":426},{"__isSmartRef__":true,"id":427},{"__isSmartRef__":true,"id":428},{"__isSmartRef__":true,"id":429},{"__isSmartRef__":true,"id":430},{"__isSmartRef__":true,"id":431}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Aug 27 2013 20:52:41 GMT+0200 (CEST)\")"},"416":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jun 21 2013 00:16:24 GMT+0200 (CEST)\")"},"417":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 09:18:06 GMT+0200 (CEST)\")"},"418":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 12:57:18 GMT+0100 (CET)\")"},"419":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:36 GMT+0200 (CEST)\")"},"420":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:30 GMT+0200 (CEST)\")"},"421":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)\")"},"422":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\")"},"423":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)\")"},"424":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)\")"},"425":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)\")"},"426":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)\")"},"427":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:42:31 GMT+0100 (CET)\")"},"428":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:47:05 GMT+0100 (CET)\")"},"429":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:36:50 GMT+0200 (CEST)\")"},"430":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 20:49:27 GMT+0200 (CEST)\")"},"431":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jul 30 2013 08:20:51 GMT+0200 (CEST)\")"},"432":{"morph":{"__isSmartRef__":true,"id":413},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"433":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":434}},"434":{"test01IsMorph":{"__isSmartRef__":true,"id":435}},"435":{"varMapping":{"__isSmartRef__":true,"id":436},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":437},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"436":{"this":{"__isSmartRef__":true,"id":433}},"437":{},"438":{"onMouseDown":{"__isSmartRef__":true,"id":439}},"439":{"varMapping":{"__isSmartRef__":true,"id":440},"source":"function onMouseDown() {\n    var d = this.get('Display').display;\n    if (d.buttons & this.mask)\n        d.buttons &= ~this.mask;\n    else \n        d.buttons |= this.mask;\n    this.get('Display').showMouseButtons();\n}","funcProperties":{"__isSmartRef__":true,"id":445},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"440":{"this":{"__isSmartRef__":true,"id":413},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":441}},"441":{"$super":{"__isSmartRef__":true,"id":442}},"442":{"varMapping":{"__isSmartRef__":true,"id":443},"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":444},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"443":{"obj":{"__isSmartRef__":true,"id":413},"name":"onMouseDown"},"444":{},"445":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Dec 09 2013 14:12:33 GMT+0100 (CET)\")"},"446":{"submorphs":[{"__isSmartRef__":true,"id":447}],"scripts":[],"shape":{"__isSmartRef__":true,"id":452},"eventHandler":{"__isSmartRef__":true,"id":453},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","CCAC4AB8-CBAA-45E2-9742-EEDFD049DEA9","40B2CDFC-C39F-4582-AE9C-F1170E496138","2DB43C1A-B776-41A1-9B23-4DAD8D781E46","C0AAE146-4AA4-4489-883E-01E5A03A7CDA","83DBBC8D-FA2D-41ED-BE57-4BDF4616361B","6CCA3541-A50B-4E5C-A0DD-397D8B7238B7","05AFD6C6-6774-4AD1-B098-F1FB2715AE0C","EF627A85-0261-4E00-AA0A-F3B3E8D68712","A5621599-31F6-4BBD-9E88-269A3A87F8DB","7AC7985A-A241-4DA8-BD36-4C12356C03C2","B2FA98A6-33A9-4003-B4F9-731E692E6D18"],"id":"D7280022-90B4-4928-99BB-F833C293C96E","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":447},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":454}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button7","partsBinMetaInfo":{"__isSmartRef__":true,"id":456},"pinSpecs":[{"__isSmartRef__":true,"id":465}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":466},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(590.0,590.0)","distanceToDragEvent":"lively.pt(46.0,-9.0)"},"447":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":448},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":449}],"eventHandler":{"__isSmartRef__":true,"id":451},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","84A41AE0-3FB1-40E0-BF33-C0DC73FDFCA6","76A1EA6E-1064-489B-9719-B8692DF6AB9C","AD1DC21F-77C4-4F86-BF8A-5E7D6D4E52D1","218645DB-133C-4ABB-A958-D5C277A14887","11F3A5E1-39F8-4FC8-B9C3-48AB2E3ABF89","77593C93-B316-4C4C-9864-9D005094854C","F55FCE94-1DDA-42BD-B59D-C4D184B956B0","B3182E98-D3AE-4B1F-8B49-1FA830C3B2AC","7ACA62F5-AF38-428B-9B33-0FB5A2E46E27","24D4FAFA-6CDC-4523-9244-E2FB78F71ADF","A3766275-57D6-4467-8A4E-ECF11A74DD37"],"id":"F92C5700-8971-450C-B6C0-21EB75BE406F","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":446},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"448":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(60.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"449":{"style":{"__isSmartRef__":true,"id":450},"chunkOwner":{"__isSmartRef__":true,"id":447},"_id":"_6063","storedString":"Over ▷","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"450":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"451":{"morph":{"__isSmartRef__":true,"id":447},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"452":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(60.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"453":{"morph":{"__isSmartRef__":true,"id":446},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"454":{"sourceObj":{"__isSmartRef__":true,"id":446},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":446},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":455},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"455":{"source":{"__isSmartRef__":true,"id":446},"target":{"__isSmartRef__":true,"id":446}},"456":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":457},{"__isSmartRef__":true,"id":458},{"__isSmartRef__":true,"id":459},{"__isSmartRef__":true,"id":460},{"__isSmartRef__":true,"id":461},{"__isSmartRef__":true,"id":462},{"__isSmartRef__":true,"id":463},{"__isSmartRef__":true,"id":464}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"457":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"458":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"459":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"460":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"461":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"462":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"463":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"464":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"465":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"466":{"doAction":{"__isSmartRef__":true,"id":467}},"467":{"varMapping":{"__isSmartRef__":true,"id":468},"source":"function doAction() {\n    this.owner.interpretOverSend();\n}","funcProperties":{"__isSmartRef__":true,"id":469},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"468":{"this":{"__isSmartRef__":true,"id":446}},"469":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Dec 17 2013 20:43:00 GMT+0100 (CET)\")"},"470":{"submorphs":[],"scripts":[],"id":"351B4199-B4E8-44A6-8E5B-C8841C99A97D","shape":{"__isSmartRef__":true,"id":471},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":true,"allowsInput":true,"_FontFamily":["Monaco","monospace"],"registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":10,"name":"Editor","partsBinMetaInfo":{"__isSmartRef__":true,"id":472},"textChunks":[{"__isSmartRef__":true,"id":480}],"charsReplaced":"numArguments()","lastFindLoc":19,"prevScroll":[0,653],"eventHandler":{"__isSmartRef__":true,"id":482},"_ClipMode":"scroll","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","647AAE95-23E0-4BAA-BF08-AAC6DB1E932F","A0A12583-5535-489A-81DF-0EBBED90B9EA","079ECD7D-0D86-4248-AB74-066DCD75C094","9A4C2171-BCCB-49A4-B9BF-A212ED70CEBE","B94DCFD0-158B-4BE5-82E3-95FCEF10B55E","F97C48A3-467E-45AF-A3D4-27EA6DAFD803","A3D5BB03-479F-4AF4-BFF5-0FAC685A7063","B2C19302-00A3-4FB0-8EFE-6E67B894A6E8","3558D4FF-1BCB-43D2-9769-9462A97C46BF","FB12248C-1DA0-4FA6-BA56-D63EB4050E9E","78CB6734-C817-4663-BDD7-14D2FA55446E"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"doitContext":null,"draggingEnabled":false,"previousSelection":[715,715],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(130.0,410.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(149.0,-9.0)"},"471":{"fill":null,"_BorderWidth":1.754,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding","_Fill"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.0,150.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)","_Fill":"Color.rgb(255,255,255)"},"472":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":473},{"__isSmartRef__":true,"id":474},{"__isSmartRef__":true,"id":475},{"__isSmartRef__":true,"id":476},{"__isSmartRef__":true,"id":477},{"__isSmartRef__":true,"id":478},{"__isSmartRef__":true,"id":479}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Apr 23 2013 16:45:27 GMT+0200 (CEST)\")"},"473":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"474":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"475":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"476":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"477":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"478":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"479":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"480":{"style":{"__isSmartRef__":true,"id":481},"chunkOwner":{"__isSmartRef__":true,"id":470},"_id":"_270","storedString":"this","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"481":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"482":{"morph":{"__isSmartRef__":true,"id":470},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"483":{"submorphs":[{"__isSmartRef__":true,"id":484}],"scripts":[],"shape":{"__isSmartRef__":true,"id":489},"eventHandler":{"__isSmartRef__":true,"id":490},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","F80F0E41-45D1-4B1C-A200-8A33CC97C4EB","3F36370C-D729-4D2F-A39C-AAF212B7D918","80331714-6AD8-4A2D-A8A7-FFEA9D912C11","CCAC4AB8-CBAA-45E2-9742-EEDFD049DEA9","1C038396-4379-4373-9A72-B28547143DCF","932D0E19-5FBE-4B7E-9DFF-90FE4B22E75E","1C75681C-A190-42F1-8358-2CEECEE2F007","F613522F-6263-4465-819E-851412B4F03D","924B0143-BB74-4E2A-8330-5B18C0EE1192","807E5578-FB92-4EF0-875D-D122CCB8344B","D5ACBBE9-15A8-401D-B578-D4FD71B0CFB0","74036B49-E9A9-48EF-9828-3A289E3783EE","44CA0573-EE82-46F7-B9BC-7916781F7D50","E7AB1A32-23FA-456B-A2FC-827CD19E6EE7","97DFA1A1-68F8-47B4-8F0E-158A4908B839","996141DE-AB59-4ED8-847E-2FCADF95AEA6","5BFADC84-806C-4D81-BBA3-C5B14A5E639B","7A0E25A8-BE3F-4494-9964-05DDB3215615","14E297B4-1B54-4395-95C0-398E2EF5D1E2","795CA090-C32D-4137-9E13-4F528AC65DAD","85BDF1B4-6751-494E-8B8F-F905EBED82A3","DF38BE6C-345B-41A4-84AC-0A40ECC5A894","509B4D5E-34FC-4AFF-9F90-AB1890E1B8E4","5FBE1203-8F0B-4A63-9C10-4344ABE882DB","D13E5B1E-8C6A-4635-A741-3BAFA94A5C49","365BB799-4D0E-4D63-A770-0AA5F997CBCF","966FB46F-A846-4AAB-A2E4-14D26807140E","08DA42DF-1A93-4DBB-A3F2-F725BB310B43","D4434AE1-70ED-46B4-AA25-8E342CFC6020","5D01AA1B-C4D3-4933-9F01-67C0AE9262C4","185CBCF0-3210-472B-ABA9-029AC4B4E088","1228B6E5-C781-454D-98F1-098C75C0B475","9656F77A-A3A8-40D9-BB3E-D392AE78D7CD","57FC6CEE-45CE-4E23-A822-58EBAAD88F31","C5017EB5-FCB0-43BF-B28A-D320CA3A609E","8A19B3B6-482C-4EC4-A706-E8BB2E2A14DC","C5880DAB-918F-4783-85D8-72B6E9A7D77E","322E8909-6B05-4602-96E8-216FF11D700E","AABCADDC-B863-4D76-96FF-C15C17E2610A","B28EEFBD-2F57-4701-A271-EF608521AB8A","5D9823B4-7C82-4425-84AF-B201E2FE184C","988C2AEC-619B-416A-B854-7703323AAAE2","E84E2C37-FFDF-4F81-B3ED-70451226437F","419F2473-02CA-45CC-818E-2212BA9F629F","A0152116-02FE-44E9-B674-1F7FCEAB6BA4","F8F570A1-1ACD-4B9C-B247-DEEF1BDFFD7C","A2486898-0FB8-4445-A8B3-8AA27F6A6E89","E37AA95F-CD40-4D18-88F1-F00227501D9E"],"id":"C6363CC3-A31C-4A7E-8095-F5FDE6D4F8BC","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":484},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":491}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"SaveButton","partsBinMetaInfo":{"__isSmartRef__":true,"id":493},"pinSpecs":[{"__isSmartRef__":true,"id":502}],"_StyleClassNames":["Morph","Button"],"_ToolTip":"Save file to your downloads folder","owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":503},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(290.0,632.0)","distanceToDragEvent":"lively.pt(62.0,-11.0)"},"484":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":485},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":486}],"eventHandler":{"__isSmartRef__":true,"id":488},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","F1B1A09A-2B02-49EB-842A-065212EEC878","A3F0705F-60FD-441B-8AD5-0B3077127BF0","95719E83-B67D-477B-B75D-8EDC484F5672","84A41AE0-3FB1-40E0-BF33-C0DC73FDFCA6","A8965203-E71A-496C-9D50-BA19C2A9E592","FA6A7F9A-3374-4D79-A312-68CBCD15A842","5E7FA3BD-ADD0-4A02-9567-989654ED1EA0","D814C4BE-3903-4358-9D1F-587A83CB5296","0D34EE72-0152-4163-83C5-04789FE4C833","816AC21A-912D-4985-A538-F7348B85511C","74F3BE84-709A-4F35-80FE-2B1B64983987","F254C168-8F2D-4DE9-B6EE-6EEA4FC77EE1","2335BFDD-DFE6-45A9-B31E-9B138678F92C","1998DA83-DBA3-4C0E-B369-0CC3C335CCD4","C0903FBA-C7AD-4A80-AC05-C653D0A144C2","795E5158-8149-48DF-9EF5-AD3DD569A211","C0AAB413-6EEA-4905-9A27-561AF551BB7C","A282B7EB-5C2E-49F4-8704-ECEF4063CFCF","E38213FE-F0CA-4DFE-8309-EF1F000D3096","F162FC76-9345-4D53-8B51-1BE7D5AD83B9","609A7303-D9E9-4018-B267-1107AFB3EC75","F6E691DC-A30A-4CC6-BFF8-81F98EE5C197","507A6828-1B09-45F7-B895-BF9C0E5D88D4","BF2A8A50-D12B-4C4A-9679-311482C847FF","47B1362D-D1BD-44F1-8B7B-192C5D74D787","241974A5-B673-43BD-8BD4-57AB841DBCAB","E3DDC9BB-3ED7-493B-ADF1-CD174C0CF7C7","E0D53788-37EC-487D-99FE-2753D62279CE","B026314C-FF00-4CCD-BFFE-3BB173C2043A","88B6478E-8AA7-4D1C-AB0C-BC65C67DC6BC","196BB3AC-4E6C-4CB2-AFB2-DDD7048E91C8","7D8BB721-BEA1-4AA4-BA73-DC1B10F33349","AADD7484-0ED5-4339-A962-A74FC2348000","52D7E276-D263-469D-8BC6-06FB84C8AEBE","122AA4DB-4262-423F-A785-622158563968","CB07DFC6-4D68-4E35-82C6-E6C8A3B17EE0","DF3F2B44-19BF-4FA1-BF12-049FFB2CF925","F0BABCF2-D79E-46DE-B641-DD56D71AFE8F","A217B487-3B85-40F1-B300-74C5E3A256F0","29A15FB9-471C-4467-92DD-CFF6EF11660D","65F32534-E2EA-4660-B6B1-D9255C92881C","17D1EA44-8D42-4EE5-AAAC-1A19D7C840C9","61AFF85A-BE5F-4C32-920C-3321F2ECBF0F","0B4E2D24-C780-45F9-AC35-DD8B6F73D042","0F53EC72-623D-4DD8-9E71-55A46A3D28AD","E5AB69A5-E1DE-47B9-A1BE-911AB48905F5","69D0CF20-CB55-4F0C-8142-07DB53BEBA08","8CD37B1E-5C78-4B67-919C-74215F517AED"],"id":"F1B2B66D-1ACD-457D-BDBF-CA36CDC2C43A","grabbingEnabled":false,"__layered_droppingEnabled__":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":483},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"485":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.0,20.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"486":{"style":{"__isSmartRef__":true,"id":487},"chunkOwner":{"__isSmartRef__":true,"id":484},"_id":"_12796","storedString":"Export File...","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"487":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"488":{"morph":{"__isSmartRef__":true,"id":484},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"489":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(80.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"490":{"morph":{"__isSmartRef__":true,"id":483},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"491":{"sourceObj":{"__isSmartRef__":true,"id":483},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":483},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":492},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"492":{"source":{"__isSmartRef__":true,"id":483},"target":{"__isSmartRef__":true,"id":483}},"493":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":494},{"__isSmartRef__":true,"id":495},{"__isSmartRef__":true,"id":496},{"__isSmartRef__":true,"id":497},{"__isSmartRef__":true,"id":498},{"__isSmartRef__":true,"id":499},{"__isSmartRef__":true,"id":500},{"__isSmartRef__":true,"id":501}],"migrationLevel":4,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Oct 25 2013 17:24:36 GMT+0200 (CEST)\")"},"494":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:15:42 GMT+0100 (CET)\")"},"495":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 22:53:16 GMT+0100 (CET)\")"},"496":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:34:25 GMT+0200 (CEST)\")"},"497":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:35:59 GMT+0200 (CEST)\")"},"498":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 01 2013 05:36:30 GMT+0200 (CEST)\")"},"499":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:22:38 GMT+0200 (CEST)\")"},"500":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 19:24:50 GMT+0200 (CEST)\")"},"501":{"author":"jenslincke","message":"no comment","id":"622B0D22-F688-41EC-825F-6B1B6C6B3D41","__serializedExpressions__":["date"],"date":"new Date(\"Fri Sep 20 2013 16:45:39 GMT+0200 (CEST)\")"},"502":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"503":{"doAction":{"__isSmartRef__":true,"id":504}},"504":{"varMapping":{"__isSmartRef__":true,"id":505},"source":"function doAction() {\n    this.owner.saveFile();\n}","funcProperties":{"__isSmartRef__":true,"id":506},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"505":{"this":{"__isSmartRef__":true,"id":483}},"506":{"user":"bert","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Mar 03 2014 18:42:15 GMT+0100 (CET)\")"},"507":{"submorphs":[{"__isSmartRef__":true,"id":508}],"scripts":[],"id":"1A4AAC8F-4A5C-4E81-BD22-989F7B29DEF1","shape":{"__isSmartRef__":true,"id":549},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"TreePanel","partsBinMetaInfo":{"__isSmartRef__":true,"id":550},"eventHandler":{"__isSmartRef__":true,"id":567},"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","298A4A35-9341-4496-9B3B-CDACC8BC2AD2","B629C1D2-2A3B-4631-A53B-A9DAEEB934E2","16B74B81-2D06-4682-8EE9-CE70A95A36C4","7EF0974E-8FBA-414E-9479-475AFEB6AEAF","447FA4B8-3A88-4A72-9EA2-1474540CDD32","F823CE17-D4EB-475B-BF3A-4FE65A2F588C","B38E54D1-69AF-4242-B9E3-08943AF75FF0","6A045204-2871-4821-925E-B789FA7607B2","C68B6E8A-45B7-4DBD-8C4E-AD874D91D504","DADC7D6B-4490-476C-8E1A-AFF1926DD50F"],"partTests":{"__isSmartRef__":true,"id":568},"_ClipMode":"scroll","moved":true,"owner":{"__isSmartRef__":true,"id":0},"isBeingDragged":false,"prevScroll":[67,0],"grabbingEnabled":false,"draggingEnabled":false,"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":573},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(130.0,40.0)","distanceToDragEvent":"lively.pt(149.0,-8.0)"},"508":{"item":{"__isSmartRef__":true,"id":509},"depth":0,"submorphs":[{"__isSmartRef__":true,"id":513}],"scripts":[],"shape":{"__isSmartRef__":true,"id":544},"_ClipMode":"visible","derivationIds":["9045C26F-C778-441B-985F-F8FEED8BF9B5","24733022-9A3C-4DE9-AA6A-9EB77CB4F2E8","11349C3A-29AE-425A-B98F-A8E04CD22939","56921979-2747-419C-B12D-B5B17001CFDE","08AF5D37-EDED-4CDE-B004-CE156441F2C1","468203BF-D677-4E39-B87F-C24876BBDD55","99B9D378-27BF-4A68-958A-86EBA0FC2385","BD544BAE-A651-464E-8E57-F19B9617DE76","BB155E25-CE0D-4ECA-9A74-46F40BCEAE92","38DD35B5-D556-4AC0-A896-5271DD7E4FFC"],"id":"E274C789-5631-4C00-A9C0-76B376E6C2A4","droppingEnabled":false,"halosEnabled":true,"layout":{"__isSmartRef__":true,"id":545},"isInLayoutCycle":false,"draggingEnabled":false,"grabbingEnabled":false,"owner":{"__isSmartRef__":true,"id":507},"eventHandler":{"__isSmartRef__":true,"id":548},"childNodes":null,"icon":{"__isSmartRef__":true,"id":514},"label":{"__isSmartRef__":true,"id":527},"node":{"__isSmartRef__":true,"id":513},"showMoreNode":null,"showsHalos":false,"name":"Tree","childrenPerPage":15,"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Tree","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(-16.0,0.0)","distanceToDragEvent":"lively.pt(291.0,-14.0)"},"509":{"name":"no image loaded","style":{"__isSmartRef__":true,"id":510},"attributeConnections":[{"__isSmartRef__":true,"id":511}],"doNotSerialize":["$$changed"],"doNotCopyProperties":["$$changed"]},"510":{"__serializedExpressions__":["color"],"color":"Color.rgb(169,169,169)"},"511":{"sourceObj":{"__isSmartRef__":true,"id":509},"sourceAttrName":"changed","targetObj":{"__isSmartRef__":true,"id":508},"targetMethodName":"update","varMapping":{"__isSmartRef__":true,"id":512},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"512":{"source":{"__isSmartRef__":true,"id":509},"target":{"__isSmartRef__":true,"id":508}},"513":{"submorphs":[{"__isSmartRef__":true,"id":514},{"__isSmartRef__":true,"id":527}],"scripts":[],"shape":{"__isSmartRef__":true,"id":540},"_ClipMode":"visible","derivationIds":[],"id":"8F7F6D01-9348-458C-B986-E159A1970FFF","droppingEnabled":true,"halosEnabled":true,"__serializedExpressions__":["_Position"],"eventsAreIgnored":true,"layout":{"__isSmartRef__":true,"id":541},"isInLayoutCycle":false,"owner":{"__isSmartRef__":true,"id":508},"eventHandler":{"__isSmartRef__":true,"id":543},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(0.0,0.0)"},"514":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":515},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":516}],"_ClipMode":"visible","derivationIds":[],"id":"5AA4873E-ACC7-45CC-8651-45D24629D865","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":false,"fixedWidth":true,"fixedHeight":true,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor","_Position"],"evalEnabled":false,"_Align":"right","owner":{"__isSmartRef__":true,"id":513},"eventHandler":{"__isSmartRef__":true,"id":518},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":519},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(64,64,64)","_Position":"lively.pt(0.0,0.0)"},"515":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(10.0,20.0)","_Padding":"lively.rect(4,2,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"516":{"style":{"__isSmartRef__":true,"id":517},"chunkOwner":{"__isSmartRef__":true,"id":514},"_id":"_266","storedString":"","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"517":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"518":{"morph":{"__isSmartRef__":true,"id":514},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"519":{"onMouseDown":{"__isSmartRef__":true,"id":520}},"520":{"varMapping":{"__isSmartRef__":true,"id":521},"source":"function onMouseDown(evt) {\n            if (this.owner.owner.item.children && evt.isLeftMouseButtonDown()) {\n                this.owner.owner.toggle();\n            }\n        }","funcProperties":{"__isSmartRef__":true,"id":526},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"521":{"this":{"__isSmartRef__":true,"id":514},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":522}},"522":{"$super":{"__isSmartRef__":true,"id":523}},"523":{"varMapping":{"__isSmartRef__":true,"id":524},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":525},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"524":{"obj":{"__isSmartRef__":true,"id":514},"name":"onMouseDown"},"525":{},"526":{"__serializedExpressions__":["timestamp"],"user":"bert","timestamp":"new Date(\"Tue Nov 18 2014 17:08:54 GMT+0100 (CET)\")"},"527":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":528},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":529}],"_ClipMode":"visible","derivationIds":[],"id":"604D90E5-C072-497F-962C-65E7B9D821AC","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":false,"fixedWidth":false,"fixedHeight":true,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor","_Position"],"evalEnabled":false,"oldStyle":{"__isSmartRef__":true,"id":510},"owner":{"__isSmartRef__":true,"id":513},"eventHandler":{"__isSmartRef__":true,"id":531},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":532},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(64,64,64)","_Position":"lively.pt(15.0,0.0)"},"528":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(100.0,20.0)","_Padding":"lively.rect(4,2,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"529":{"style":{"__isSmartRef__":true,"id":530},"chunkOwner":{"__isSmartRef__":true,"id":527},"_id":"_269","storedString":"no image loaded","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"530":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(169,169,169)"},"531":{"morph":{"__isSmartRef__":true,"id":527},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"532":{"onMouseDown":{"__isSmartRef__":true,"id":533}},"533":{"varMapping":{"__isSmartRef__":true,"id":534},"source":"function onMouseDown(evt) {\n            if (evt.isLeftMouseButtonDown() && this.owner.owner.item.onSelect) {\n                this.owner.owner.getRootTree().select(this.owner.owner);\n            }\n        }","funcProperties":{"__isSmartRef__":true,"id":539},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"534":{"this":{"__isSmartRef__":true,"id":527},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":535}},"535":{"$super":{"__isSmartRef__":true,"id":536}},"536":{"varMapping":{"__isSmartRef__":true,"id":537},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":538},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"537":{"obj":{"__isSmartRef__":true,"id":527},"name":"onMouseDown"},"538":{},"539":{"__serializedExpressions__":["timestamp"],"user":"bert","timestamp":"new Date(\"Tue Nov 18 2014 17:08:54 GMT+0100 (CET)\")"},"540":{"__serializedExpressions__":["_Position","_Extent","_Padding"],"_BorderWidth":0,"_BorderColor":null,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(6205.0,20.0)","_Padding":"lively.rect(0,0,0,0)"},"541":{"resizeWidth":true,"layouter":{"__isSmartRef__":true,"id":542}},"542":{"borderSize":0,"defaultBorderSize":10,"spacing":5,"defaultSpacing":15,"container":{"__isSmartRef__":true,"id":513},"__LivelyClassName__":"lively.morphic.Layout.HorizontalLayout","__SourceModuleName__":"Global.lively.morphic.Layout"},"543":{"morph":{"__isSmartRef__":true,"id":513},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"544":{"_BorderWidth":0,"__serializedExpressions__":["_Position","_Extent","_Padding","_Fill","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(6205.0,20.0)","_Padding":"lively.rect(0,0,0,0)","_Fill":"Color.rgb(255,255,255)","_BorderColor":"Color.rgb(0,0,0)"},"545":{"resizeWidth":true,"layouter":{"__isSmartRef__":true,"id":546}},"546":{"borderSize":{"__isSmartRef__":true,"id":547},"defaultBorderSize":10,"spacing":0,"defaultSpacing":15,"container":{"__isSmartRef__":true,"id":508},"isDefered":false,"__LivelyClassName__":"lively.morphic.Layout.TreeLayout","__SourceModuleName__":"Global.lively.morphic.Layout"},"547":{"top":0,"right":0,"bottom":0,"left":0},"548":{"morph":{"__isSmartRef__":true,"id":508},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"549":{"_BorderWidth":1,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__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(220.0,360.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(255,255,255)","_Padding":"lively.rect(0,0,0,0)"},"550":{"partsSpaceName":"PartsBin/Basic","comment":"A plain simple rectangle","migrationLevel":8,"partName":"Rectangle","changes":[{"__isSmartRef__":true,"id":551},{"__isSmartRef__":true,"id":552},{"__isSmartRef__":true,"id":553},{"__isSmartRef__":true,"id":554},{"__isSmartRef__":true,"id":555},{"__isSmartRef__":true,"id":556},{"__isSmartRef__":true,"id":557},{"__isSmartRef__":true,"id":558},{"__isSmartRef__":true,"id":559},{"__isSmartRef__":true,"id":560},{"__isSmartRef__":true,"id":561},{"__isSmartRef__":true,"id":562},{"__isSmartRef__":true,"id":563},{"__isSmartRef__":true,"id":564},{"__isSmartRef__":true,"id":565},{"__isSmartRef__":true,"id":566}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Aug 27 2013 20:52:41 GMT+0200 (CEST)\")"},"551":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jun 21 2013 00:16:24 GMT+0200 (CEST)\")"},"552":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 09:18:06 GMT+0200 (CEST)\")"},"553":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 12:57:18 GMT+0100 (CET)\")"},"554":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:36 GMT+0200 (CEST)\")"},"555":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:30 GMT+0200 (CEST)\")"},"556":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)\")"},"557":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\")"},"558":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)\")"},"559":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)\")"},"560":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)\")"},"561":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)\")"},"562":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:42:31 GMT+0100 (CET)\")"},"563":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:47:05 GMT+0100 (CET)\")"},"564":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:36:50 GMT+0200 (CEST)\")"},"565":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 20:49:27 GMT+0200 (CEST)\")"},"566":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jul 30 2013 08:20:51 GMT+0200 (CEST)\")"},"567":{"morph":{"__isSmartRef__":true,"id":507},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"568":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":569}},"569":{"test01IsMorph":{"__isSmartRef__":true,"id":570}},"570":{"varMapping":{"__isSmartRef__":true,"id":571},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":572},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"571":{"this":{"__isSmartRef__":true,"id":568}},"572":{},"573":{"onMouseDown":{"__isSmartRef__":true,"id":574}},"574":{"varMapping":{"__isSmartRef__":true,"id":575},"source":"function onMouseDown() {\n    this.owner.onSelect(null);\n}","funcProperties":{"__isSmartRef__":true,"id":580},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"575":{"this":{"__isSmartRef__":true,"id":507},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":576}},"576":{"$super":{"__isSmartRef__":true,"id":577}},"577":{"varMapping":{"__isSmartRef__":true,"id":578},"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":579},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"578":{"obj":{"__isSmartRef__":true,"id":507},"name":"onMouseDown"},"579":{},"580":{"user":"undefined","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Dec 20 2013 14:37:07 GMT+0100 (CET)\")"},"581":{"submorphs":[],"scripts":[],"id":"915CCEDE-F4E4-40A4-AD2D-6FB6EED19F41","shape":{"__isSmartRef__":true,"id":582},"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":11,"name":"Text5","partsBinMetaInfo":{"__isSmartRef__":true,"id":583},"textChunks":[{"__isSmartRef__":true,"id":591}],"charsReplaced":":","lastFindLoc":7,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":593},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","4CB9D6B2-5F55-48F3-887A-0B4A554E4892","200CFF88-DE2D-4D47-9AE8-0083F80AB466","569D0446-FE20-4D55-88E2-1214CE7C5F5C","5167A319-BC8B-4282-BEF4-006912D294D4","C3A77658-48E8-417F-9EAB-6DD8ABF836B4","8FBDBF7A-BB1B-47C8-9874-3427557EB7A4","950D37B8-5DF5-41B3-ACE0-F6457A260641","4D2AFD83-9D86-4235-95D4-ABA428E2A429","5CB4C63F-19DD-40E8-A87A-4C1CAB3F73B1","EB6EDEE7-CD44-48ED-A404-6A805E7A2A96","70F599B1-F9A1-4AE6-B2B9-AAB5591D773F","4278262F-FC9B-4145-87FA-90F64A9F82A1","B39799A4-5844-4BFE-AFA5-AFD0F7FC3D36","1E6BBB8E-D462-4054-B334-FAC0A798AEBB","9F401FB5-E953-4E82-80A0-4C94450809BD","721E309A-7BF0-437C-8142-5DCB6A06C36C","EEC05396-C45F-4D09-A76F-7B91D96740D5","53873737-8F61-4AD0-A2A5-35FA9AAE1CAE","D5B08642-BE51-40B3-806E-4FE8A860DD3C","87166945-1BFF-44EE-BF18-62B7FA68082D"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"previousSelection":[0,4],"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"priorSelectionRange":null,"_ToolTip":"Break when executing FooBar>>some:method: or \nFooBar class>>method (turns red if method not found in current image)","_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(20.0,590.0)","textColor":"Color.rgb(1,1,1)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(58.0,-13.0)"},"582":{"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.0,20.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"583":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":584},{"__isSmartRef__":true,"id":585},{"__isSmartRef__":true,"id":586},{"__isSmartRef__":true,"id":587},{"__isSmartRef__":true,"id":588},{"__isSmartRef__":true,"id":589},{"__isSmartRef__":true,"id":590}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Mon Jan 20 2014 16:25:43 GMT+0100 (CET)\")"},"584":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"585":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"586":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"587":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"588":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"589":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"590":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"591":{"style":{"__isSmartRef__":true,"id":592},"morph":{"__isSmartRef__":true,"id":581},"chunkOwner":{"__isSmartRef__":true,"id":581},"storedString":"Breakpoint:","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"592":{"textShadow":"-1px -1px 1px white","__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"593":{"morph":{"__isSmartRef__":true,"id":581},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"594":{"submorphs":[],"scripts":[],"id":"E72C27DC-BF26-44FC-9EB5-DA262315154B","shape":{"__isSmartRef__":true,"id":595},"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":10,"name":"Breakpoint","partsBinMetaInfo":{"__isSmartRef__":true,"id":596},"textChunks":[{"__isSmartRef__":true,"id":604}],"charsReplaced":"Paragraph","lastFindLoc":18,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":606},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","3C574E73-4C75-4DFB-BE06-06FB051970EB","5E26EA3F-4A10-4022-99C1-99385726733C","F930250F-DF1B-43C1-84F7-4296788709BD","60DBBEA2-F5B4-4141-AE20-CFECBBF6135E","1B80CB64-10D8-48EB-89F5-AF06EA9480F7","4D2BC71E-B9A8-47CF-ADDB-7E3D634BA06B","FE528D3E-EC78-46BE-B2B4-3B810C60B471","459DD6C6-CEE1-4DAD-AE60-15303C90B89D","A73D4A85-21A0-4669-A791-79E2F7E50E51","4F32215E-2759-4970-A294-EA6BE284DD56","9760E965-171A-48FA-B0AC-BC43FC053E81","11E67C38-44D1-4B1F-A4B8-7934000AD793","C8DDB037-85E0-4E27-96FD-C09DBB8449BE","D2A625E1-5B9C-40BD-87C8-93FAD704E465","A0A3D46C-5489-4AAA-9749-05A3E036B819","51413921-06D3-4415-9AA9-8FC53DB08BD8","F2CBF04E-78E8-49B0-8706-F15BF6967ADE","5C1DD65C-F8DB-406F-9246-12D79F16E16A","E97A9F5A-8491-4AD2-98CB-656BF2D55E1C","35BC5064-F8A1-4ABD-AD70-DAE790255CB5"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"_FontStyle":{"__isSmartRef__":true,"id":607},"_ToolTip":"Break when executing FooBar>>some:method: or \nFooBar class>>method (turns red if method not found in current image)","attributeConnections":[{"__isSmartRef__":true,"id":608}],"doNotSerialize":["$$textString"],"doNotCopyProperties":["$$textString"],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent","_TextColor"],"textString":"Class>>method","__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(100.0,590.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(286.0,-8.0)","_TextColor":"Color.rgb(204,0,0)"},"595":{"fill":null,"_BorderWidth":1.3159999999999998,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding","_Fill"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(420.0,21.6)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)","_Fill":"Color.rgb(255,255,255)"},"596":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":597},{"__isSmartRef__":true,"id":598},{"__isSmartRef__":true,"id":599},{"__isSmartRef__":true,"id":600},{"__isSmartRef__":true,"id":601},{"__isSmartRef__":true,"id":602},{"__isSmartRef__":true,"id":603}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Mon Jan 20 2014 16:25:43 GMT+0100 (CET)\")"},"597":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"598":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"599":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"600":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"601":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"602":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"603":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"604":{"style":{"__isSmartRef__":true,"id":605},"chunkOwner":{"__isSmartRef__":true,"id":594},"_id":"_273","storedString":"Class>>method","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"605":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"606":{"morph":{"__isSmartRef__":true,"id":594},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"607":{"__serializedExpressions__":["color"],"color":"Color.rgb(204,0,0)"},"608":{"sourceObj":{"__isSmartRef__":true,"id":594},"sourceAttrName":"textString","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"enableBreakpoint","varMapping":{"__isSmartRef__":true,"id":609},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"609":{"source":{"__isSmartRef__":true,"id":594},"target":{"__isSmartRef__":true,"id":0}},"610":{"submorphs":[],"scripts":[],"id":"C21DA4F5-1CAF-42E8-A191-73E2BA10BF30","shape":{"__isSmartRef__":true,"id":611},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":true,"allowsInput":true,"_FontFamily":["Monaco","monospace"],"registeredForMouseEvents":true,"_MaxTextWidth":120.695652,"_MaxTextHeight":null,"showsHalos":false,"_FontSize":10,"name":"VMState","partsBinMetaInfo":{"__isSmartRef__":true,"id":612},"textChunks":[{"__isSmartRef__":true,"id":620}],"charsReplaced":"foo!?","lastFindLoc":5,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":622},"_ClipMode":"scroll","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","647AAE95-23E0-4BAA-BF08-AAC6DB1E932F","11C5941F-6043-4533-9E00-174F33E1B796","02DF2FC9-814D-42C6-9F5C-4CF3EFD74173","4629724C-30AD-4A75-9ACB-137FB40CAA69","11C6EE40-8368-458C-B3DB-A1F012B7048F","046364C3-8C6B-4364-A4A4-D8ED08B9D55C","B3C4C0A5-3DFC-4366-B323-C67B7D11334F","20C532A9-C41C-43F8-9036-9E9002B83069","1ED2F3AA-DF77-457F-B076-423D719E0E80","94FFB782-4C00-4332-AF31-0B53D87CF206","C43F647A-CB06-4FB1-B0B0-511D7C20BA46"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"owner":{"__isSmartRef__":true,"id":0},"draggingEnabled":false,"previousSelection":[1195,1218],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(360.0,40.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(290.0,-10.0)"},"611":{"fill":null,"_BorderWidth":1.754,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Padding","_Fill"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(430.0,360.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)","_Fill":"Color.rgb(255,255,255)"},"612":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":613},{"__isSmartRef__":true,"id":614},{"__isSmartRef__":true,"id":615},{"__isSmartRef__":true,"id":616},{"__isSmartRef__":true,"id":617},{"__isSmartRef__":true,"id":618},{"__isSmartRef__":true,"id":619}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Apr 23 2013 16:45:27 GMT+0200 (CEST)\")"},"613":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"614":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"615":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"616":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"617":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"618":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"619":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"620":{"style":{"__isSmartRef__":true,"id":621},"chunkOwner":{"__isSmartRef__":true,"id":610},"_id":"_271","storedString":"","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"621":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"622":{"morph":{"__isSmartRef__":true,"id":610},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"623":{"submorphs":[],"scripts":[],"id":"D9ADA033-A915-4F10-AA09-06B248BD6325","shape":{"__isSmartRef__":true,"id":624},"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":11,"name":"Text6","partsBinMetaInfo":{"__isSmartRef__":true,"id":625},"textChunks":[{"__isSmartRef__":true,"id":633}],"charsReplaced":"point:","lastFindLoc":11,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":635},"_ClipMode":"visible","derivationIds":[355,"1EB1674F-8BF2-419B-B054-86129ED70335","63698904-DC05-4341-A9B6-5CC4A219CD04","F6A714BA-4735-41ED-8A2A-45CB153FBDF8","F1D26890-7392-487D-B5DE-97C772B4E79E","4CB9D6B2-5F55-48F3-887A-0B4A554E4892","200CFF88-DE2D-4D47-9AE8-0083F80AB466","569D0446-FE20-4D55-88E2-1214CE7C5F5C","5167A319-BC8B-4282-BEF4-006912D294D4","C3A77658-48E8-417F-9EAB-6DD8ABF836B4","8FBDBF7A-BB1B-47C8-9874-3427557EB7A4","950D37B8-5DF5-41B3-ACE0-F6457A260641","4D2AFD83-9D86-4235-95D4-ABA428E2A429","5CB4C63F-19DD-40E8-A87A-4C1CAB3F73B1","EB6EDEE7-CD44-48ED-A404-6A805E7A2A96","70F599B1-F9A1-4AE6-B2B9-AAB5591D773F","4278262F-FC9B-4145-87FA-90F64A9F82A1","B39799A4-5844-4BFE-AFA5-AFD0F7FC3D36","1E6BBB8E-D462-4054-B334-FAC0A798AEBB","9F401FB5-E953-4E82-80A0-4C94450809BD","721E309A-7BF0-437C-8142-5DCB6A06C36C","EEC05396-C45F-4D09-A76F-7B91D96740D5","53873737-8F61-4AD0-A2A5-35FA9AAE1CAE","D5B08642-BE51-40B3-806E-4FE8A860DD3C","87166945-1BFF-44EE-BF18-62B7FA68082D","6CC22F45-96FA-492C-9542-BF20C6DE568C"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_ToolTip":"Break when executing the most recently created method (which usually is a do-it)","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(20.0,565.0)","textColor":"Color.rgb(1,1,1)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(58.0,-13.0)"},"624":{"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(112.0,20.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"625":{"partsSpaceName":"PartsBin/Basic","migrationLevel":4,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":626},{"__isSmartRef__":true,"id":627},{"__isSmartRef__":true,"id":628},{"__isSmartRef__":true,"id":629},{"__isSmartRef__":true,"id":630},{"__isSmartRef__":true,"id":631},{"__isSmartRef__":true,"id":632}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Mon Jan 20 2014 16:25:43 GMT+0100 (CET)\")"},"626":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"627":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"628":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"629":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"630":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"631":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"632":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"633":{"style":{"__isSmartRef__":true,"id":634},"morph":{"__isSmartRef__":true,"id":623},"chunkOwner":{"__isSmartRef__":true,"id":623},"storedString":"Break on do-it:","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"634":{"textShadow":"-1px -1px 1px white","__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"635":{"morph":{"__isSmartRef__":true,"id":623},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"636":{"submorphs":[],"scripts":[],"id":"9735CAD7-C833-40EB-A2B4-CB5538F88558","shape":{"__isSmartRef__":true,"id":637},"droppingEnabled":true,"halosEnabled":true,"checked":false,"showsHalos":false,"name":"BreakOnDoit","partsBinMetaInfo":{"__isSmartRef__":true,"id":638},"eventHandler":{"__isSmartRef__":true,"id":639},"derivationIds":[6345,"D5B4106A-53F8-4CA1-89D8-47767223D065","54789998-25C9-40ED-BD02-4848932486F3","381A1578-10B0-4AAE-BC0C-3788C41875BC","35680107-F76D-44F2-B734-841D595B7B6E","366AB03A-85AA-40DE-A2E9-D4CB3B40414A","21D4EF1F-2ACB-40B9-BD62-08571DD197A1","2B4123F0-2EB9-436C-B754-865C9F592346","E386B1F9-20E8-4E9E-979F-39236B20CDD0","2415EC88-D24B-424D-B3F8-30B54D00DDDF","327A288E-9AFD-4535-B4A2-CB5F2F16A712","C1C21BA7-2DD9-4B5E-A3FB-5CDD691F0204","30CD62D9-39DE-45CE-81BB-4D598918D3D4","594E65FD-C202-406A-B73D-B410DAAC2E9B","05AB18BE-AEC9-48A0-AEF1-F82530731B57","5CCA5DD1-C055-44DA-A0DB-DA8159581CEF","1D13DB8F-9C41-4309-824D-80B8EE6344EC","982861BD-19E5-46C2-BD41-D0DF07EB005A","98477EB6-D67F-44A3-A9B1-099DE98AE18E","99B0B98D-15B0-4904-A823-352349155E4D"],"_ClipMode":"visible","_ToolTip":"break on doit","draggingEnabled":false,"grabbingEnabled":false,"owner":{"__isSmartRef__":true,"id":0},"attributeConnections":[{"__isSmartRef__":true,"id":640}],"doNotSerialize":["$$checked"],"doNotCopyProperties":["$$checked"],"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.CheckBox","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(127.0,562.0)","distanceToDragEvent":"lively.pt(39.0,-6.0)"},"637":{"stringifiedShapeNode":"<input xmlns=\"http://www.w3.org/1999/xhtml\" type=\"checkbox\" style=\"width: 20px; height: 21px; overflow: visible; padding: 0px;\" class=\"Morph CheckBox\" id=\"null\" data-lively-morphid=\"9735CAD7-C833-40EB-A2B4-CB5538F88558\" />","__serializedExpressions__":["extent","_Extent","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.External","__SourceModuleName__":"Global.lively.morphic.Shapes","extent":"lively.pt(20.0,21.0)","_Extent":"lively.pt(20.0,21.0)","_Padding":"lively.rect(0,0,0,0)"},"638":{"requiredModules":[],"migrationLevel":2,"partsSpaceName":"PartsBin/Inputs/","partName":"CheckBox","__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin"},"639":{"morph":{"__isSmartRef__":true,"id":636},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"640":{"sourceObj":{"__isSmartRef__":true,"id":636},"sourceAttrName":"checked","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"enableBreakOnDoit","varMapping":{"__isSmartRef__":true,"id":641},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"641":{"source":{"__isSmartRef__":true,"id":636},"target":{"__isSmartRef__":true,"id":0}},"642":{"submorphs":[],"scripts":[],"id":"6726EA91-E2C4-4935-BDCE-D4EEF1661697","shape":{"__isSmartRef__":true,"id":643},"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":644},"textChunks":[{"__isSmartRef__":true,"id":653}],"charsReplaced":"Load","lastFindLoc":8,"prevScroll":[0,0],"eventHandler":{"__isSmartRef__":true,"id":655},"_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","AB8D0FF1-5777-49E1-82DE-649C123C3890"],"_WhiteSpaceHandling":"pre-wrap","_MinTextWidth":120.695652,"_MinTextHeight":null,"isBeingDragged":false,"moved":true,"layout":{"__isSmartRef__":true,"id":656},"owner":{"__isSmartRef__":true,"id":0},"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_Rotation":0,"_Scale":1,"__serializedExpressions__":["_Position","textColor","_Padding","distanceToDragEvent"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_Position":"lively.pt(413.0,626.0)","textColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(5,5,0,0)","distanceToDragEvent":"lively.pt(43.0,-12.0)"},"643":{"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(46.7,26.0)","_BorderColor":"Color.rgb(0,0,0)","_Padding":"lively.rect(4,2,0,0)"},"644":{"partsSpaceName":"PartsBin/Basic","migrationLevel":8,"comment":"a simple text morph","partName":"Text","changes":[{"__isSmartRef__":true,"id":645},{"__isSmartRef__":true,"id":646},{"__isSmartRef__":true,"id":647},{"__isSmartRef__":true,"id":648},{"__isSmartRef__":true,"id":649},{"__isSmartRef__":true,"id":650},{"__isSmartRef__":true,"id":651},{"__isSmartRef__":true,"id":652}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Sat Apr 05 2014 10:51:52 GMT+0200 (CEST)\")"},"645":{"author":"jenslincke","message":"no comment","id":"A3BA0C1E-7E83-43BF-9EC6-4F4BB3835D62","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 17:31:56 GMT+0100 (CET)\")"},"646":{"author":"timfelgentreff","message":"better text","id":"B904F9AC-6EA0-4A8A-83C9-AFC85AADC194","__serializedExpressions__":["date"],"date":"new Date(\"Tue May 08 2012 14:18:18 GMT+0200 (CEST)\")"},"647":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"785D95BD-7858-43EB-90E6-A1C085E2F2B9","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:32:09 GMT+0200 (CEST)\")"},"648":{"author":"tessi","message":"TextBubble calls its disappear() function after showBubbleTime() milliseconds now","id":"0F4DE333-A551-4961-B29D-70270977EBEF","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 07:31:43 GMT+0200 (CEST)\")"},"649":{"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(\"Mon Feb 27 2012 06:20:38 GMT+0100 (CET)\")"},"650":{"author":"robertkrahn","message":"text click was broken?","id":"9D065E14-9653-4B2A-9A2E-3AD84EBBC3E0","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 21 2012 16:30:30 GMT+0200 (CEST)\")"},"651":{"author":"jenslincke","message":"no comment","id":"9E495E1B-6E6D-4A89-9F9E-85AF618DC598","__serializedExpressions__":["date"],"date":"new Date(\"Tue Mar 12 2013 18:36:22 GMT+0100 (CET)\")"},"652":{"author":"robertkrahn","message":"resizeWidth = true","id":"E402462A-7AB2-487B-82BD-A3369C1C1F75","__serializedExpressions__":["date"],"date":"new Date(\"Sat Apr 05 2014 10:58:52 GMT+0200 (CEST)\")"},"653":{"style":{"__isSmartRef__":true,"id":654},"morph":{"__isSmartRef__":true,"id":642},"chunkOwner":{"__isSmartRef__":true,"id":642},"storedString":"Import:","_id":"_100","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"654":{"italics":"normal","fontSize":10,"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"655":{"morph":{"__isSmartRef__":true,"id":642},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"656":{"resizeWidth":true},"657":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":658},"_ClipMode":"visible","derivationIds":["94EEA466-9EC3-49F0-9FE1-094C61B2B03A"],"id":"EFA5BEE2-2FAF-4DF4-A4CF-DF7FD8BDB601","droppingEnabled":true,"halosEnabled":true,"owner":{"__isSmartRef__":true,"id":0},"eventHandler":{"__isSmartRef__":true,"id":659},"showsHalos":false,"name":"FileInput","attributeConnections":[{"__isSmartRef__":true,"id":660}],"doNotSerialize":["$$selectedFile","selectedFile"],"doNotCopyProperties":["$$selectedFile"],"isBeingDragged":false,"draggingEnabled":false,"grabbingEnabled":false,"_Rotation":0,"_Scale":1,"__serializedExpressions__":["distanceToDragEvent","_Position"],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":662},"__LivelyClassName__":"lively.morphic.Morph","__SourceModuleName__":"Global.lively.morphic.Core","distanceToDragEvent":"lively.pt(62.0,-5.0)","_Position":"lively.pt(463.0,630.0)"},"658":{"_BorderWidth":0,"_BorderColor":null,"_Fill":null,"stringifiedShapeNode":"<input xmlns=\"http://www.w3.org/1999/xhtml\" type=\"file\" data-lively-morphid=\"EFA5BEE2-2FAF-4DF4-A4CF-DF7FD8BDB601\" class=\"Morph\" id=\"null\" style=\"overflow: visible; border: 0px solid rgba(0, 0, 0, 0); padding: 0px; width: 86px; height: 21px;\" multiple=\"\" />","__serializedExpressions__":["_Padding","_Extent","extent"],"__LivelyClassName__":"lively.morphic.Shapes.External","__SourceModuleName__":"Global.lively.morphic.Shapes","_Padding":"lively.rect(0,0,0,0)","_Extent":"lively.pt(86.0,21.0)","extent":"lively.pt(86.0,21.0)"},"659":{"morph":{"__isSmartRef__":true,"id":657},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"660":{"sourceObj":{"__isSmartRef__":true,"id":657},"sourceAttrName":"selectedFile","targetObj":{"__isSmartRef__":true,"id":657},"targetMethodName":"onFileSelected","varMapping":{"__isSmartRef__":true,"id":661},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"661":{"source":{"__isSmartRef__":true,"id":657},"target":{"__isSmartRef__":true,"id":657}},"662":{"onChange":{"__isSmartRef__":true,"id":663},"onFileSelected":{"__isSmartRef__":true,"id":666},"onLoad":{"__isSmartRef__":true,"id":669}},"663":{"varMapping":{"__isSmartRef__":true,"id":664},"source":"function onChange(evt) {\n    var fileList = evt.target.files;\n    for (var i = 0, f; f = fileList[i]; i++)\n        this.selectedFile = f;  // fire connection\n}","funcProperties":{"__isSmartRef__":true,"id":665},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"664":{"this":{"__isSmartRef__":true,"id":657}},"665":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 22 2014 16:32:55 GMT+0200 (CEST)\")"},"666":{"varMapping":{"__isSmartRef__":true,"id":667},"source":"function onFileSelected(file) {\n    this.owner.importFile(file);\n}","funcProperties":{"__isSmartRef__":true,"id":668},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"667":{"this":{"__isSmartRef__":true,"id":657}},"668":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 22 2014 16:34:07 GMT+0200 (CEST)\")"},"669":{"varMapping":{"__isSmartRef__":true,"id":670},"source":"function onLoad(evt) {\n    // add connection\n    this.connections.selectedFile = {}\n    this.doNotSerialize.pushIfNotIncluded(\"selectedFile\");\n}","funcProperties":{"__isSmartRef__":true,"id":671},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"670":{"this":{"__isSmartRef__":true,"id":657}},"671":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 22 2014 16:33:10 GMT+0200 (CEST)\")"},"672":{"_BorderWidth":1,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__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(820.0,660.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(195,231,249)","_Padding":"lively.rect(0,0,0,0)"},"673":{"partsSpaceName":"PartsBin/Bert/","comment":"A Squeak VM by Bert Freudenberg.","migrationLevel":8,"partName":"Squeak","changes":[{"__isSmartRef__":true,"id":674},{"__isSmartRef__":true,"id":675},{"__isSmartRef__":true,"id":676},{"__isSmartRef__":true,"id":677},{"__isSmartRef__":true,"id":678},{"__isSmartRef__":true,"id":679},{"__isSmartRef__":true,"id":680},{"__isSmartRef__":true,"id":681},{"__isSmartRef__":true,"id":682},{"__isSmartRef__":true,"id":683},{"__isSmartRef__":true,"id":684},{"__isSmartRef__":true,"id":685},{"__isSmartRef__":true,"id":686},{"__isSmartRef__":true,"id":687},{"__isSmartRef__":true,"id":688},{"__isSmartRef__":true,"id":689},{"__isSmartRef__":true,"id":690},{"__isSmartRef__":true,"id":691},{"__isSmartRef__":true,"id":692},{"__isSmartRef__":true,"id":693},{"__isSmartRef__":true,"id":694},{"__isSmartRef__":true,"id":695},{"__isSmartRef__":true,"id":696},{"__isSmartRef__":true,"id":697}],"requiredModules":["users.bert.SqueakJS.vm","users.bert.SqueakJS.ui","users.bert.SqueakJS.jit","users.bert.SqueakJS.plugins.ADPCMCodecPlugin","users.bert.SqueakJS.plugins.B2DPlugin","users.bert.SqueakJS.plugins.BitBltPlugin","users.bert.SqueakJS.plugins.FFTPlugin","users.bert.SqueakJS.plugins.FloatArrayPlugin","users.bert.SqueakJS.plugins.GeniePlugin","users.bert.SqueakJS.plugins.JPEGReaderPlugin","users.bert.SqueakJS.plugins.KedamaPlugin","users.bert.SqueakJS.plugins.KedamaPlugin2","users.bert.SqueakJS.plugins.Klatt","users.bert.SqueakJS.plugins.LargeIntegers","users.bert.SqueakJS.plugins.Matrix2x3Plugin","users.bert.SqueakJS.plugins.MiscPrimitivePlugin","users.bert.SqueakJS.plugins.ScratchPlugin","users.bert.SqueakJS.plugins.SoundGenerationPlugin","users.bert.SqueakJS.plugins.StarSqueakPlugin","users.bert.SqueakJS.plugins.ZipPlugin"],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Mon Jul 07 2014 18:47:21 GMT+0200 (CEST)\")"},"674":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jun 21 2013 00:16:24 GMT+0200 (CEST)\")"},"675":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 09:18:06 GMT+0200 (CEST)\")"},"676":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 12:57:18 GMT+0100 (CET)\")"},"677":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:36 GMT+0200 (CEST)\")"},"678":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 15:51:30 GMT+0200 (CEST)\")"},"679":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)\")"},"680":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\")"},"681":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)\")"},"682":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)\")"},"683":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)\")"},"684":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)\")"},"685":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:42:31 GMT+0100 (CET)\")"},"686":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 16:47:05 GMT+0100 (CET)\")"},"687":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:36:50 GMT+0200 (CEST)\")"},"688":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 20:49:27 GMT+0200 (CEST)\")"},"689":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jul 30 2013 08:20:51 GMT+0200 (CEST)\")"},"690":{"author":"bert","message":"no comment","id":"BE631375-CF8A-484D-90FE-72F516F8708A","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 14 2013 02:23:53 GMT+0100 (CET)\")"},"691":{"author":"bert","message":"no comment","id":"AA126AF8-A3AF-429F-B3E6-CA4F7C5196E3","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 14 2013 02:25:03 GMT+0100 (CET)\")"},"692":{"author":"bert","message":"no comment","id":"C6956BD5-9349-45AD-AE08-9681855FB3BD","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 28 2013 21:05:51 GMT+0100 (CET)\")"},"693":{"author":"bert","message":"no comment","id":"97EE63AC-23B8-4B87-83D5-3D13B5D40D3A","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 28 2013 21:18:56 GMT+0100 (CET)\")"},"694":{"author":"bert","message":"no comment","id":"386FEF80-A23E-48AE-92C3-B8EB54F3E7AA","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 28 2013 21:24:21 GMT+0100 (CET)\")"},"695":{"author":"bert","message":"no comment","id":"599F763D-3670-4CA7-AFDC-F441B64E38C9","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 28 2013 21:39:25 GMT+0100 (CET)\")"},"696":{"author":null,"message":"no comment","id":"1E6EA103-5B60-4E89-81B1-09D887FE4DD3","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jul 07 2014 18:47:08 GMT+0200 (CEST)\")"},"697":{"__serializedExpressions__":["date"],"author":"bert","message":"no comment","id":"6E7DFE82-657F-4A2C-82D5-96BBA00E2041","date":"new Date(\"Tue Nov 18 2014 17:08:42 GMT+0100 (CET)\")"},"698":{"morph":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"699":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":700}},"700":{"test01IsMorph":{"__isSmartRef__":true,"id":701}},"701":{"varMapping":{"__isSmartRef__":true,"id":702},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":703},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"702":{"this":{"__isSmartRef__":true,"id":699}},"703":{},"704":{"reset":{"__isSmartRef__":true,"id":705},"onSelect":{"__isSmartRef__":true,"id":708},"interpretOne":{"__isSmartRef__":true,"id":711},"showVMState":{"__isSmartRef__":true,"id":714},"showInstructions":{"__isSmartRef__":true,"id":717},"loadImageFromBuffer":{"__isSmartRef__":true,"id":720},"loadImage":{"__isSmartRef__":true,"id":723},"makeTreeItem":{"__isSmartRef__":true,"id":726},"run":{"__isSmartRef__":true,"id":729},"setTreeRoots":{"__isSmartRef__":true,"id":732},"interpretOverSend":{"__isSmartRef__":true,"id":735},"interpret":{"__isSmartRef__":true,"id":738},"interpretTillReturned":{"__isSmartRef__":true,"id":741},"interpretTillSent":{"__isSmartRef__":true,"id":744},"showBytecodes":{"__isSmartRef__":true,"id":747},"interpretLoop":{"__isSmartRef__":true,"id":750},"setRunning":{"__isSmartRef__":true,"id":753},"onstore":{"__isSmartRef__":true,"id":756},"saveFile":{"__isSmartRef__":true,"id":763},"downloadImage":{"__isSmartRef__":true,"id":766},"chooseImage":{"__isSmartRef__":true,"id":769},"interpretAgain":{"__isSmartRef__":true,"id":772},"enableBreakpoint":{"__isSmartRef__":true,"id":775},"defaultsForImage":{"__isSmartRef__":true,"id":778},"showRunning":{"__isSmartRef__":true,"id":781},"swapButtonsChanged":{"__isSmartRef__":true,"id":784},"enableBreakOnDoit":{"__isSmartRef__":true,"id":787},"importFile":{"__isSmartRef__":true,"id":790}},"705":{"varMapping":{"__isSmartRef__":true,"id":706},"source":"function reset() {\n    this.partsBinMetaInfo.requiredModules = [\n        \"users.bert.SqueakJS.vm\",\n        \"users.bert.SqueakJS.ui\",\n        \"users.bert.SqueakJS.jit\",\n        \"users.bert.SqueakJS.plugins.ADPCMCodecPlugin\",\n        \"users.bert.SqueakJS.plugins.B2DPlugin\",\n        \"users.bert.SqueakJS.plugins.BitBltPlugin\",\n        \"users.bert.SqueakJS.plugins.FFTPlugin\",\n        \"users.bert.SqueakJS.plugins.FloatArrayPlugin\",\n        \"users.bert.SqueakJS.plugins.GeniePlugin\",\n        \"users.bert.SqueakJS.plugins.JPEGReaderPlugin\",\n        \"users.bert.SqueakJS.plugins.KedamaPlugin\",\n        \"users.bert.SqueakJS.plugins.KedamaPlugin2\",\n        \"users.bert.SqueakJS.plugins.Klatt\",\n        \"users.bert.SqueakJS.plugins.LargeIntegers\",\n        \"users.bert.SqueakJS.plugins.Matrix2x3Plugin\",\n        \"users.bert.SqueakJS.plugins.MiscPrimitivePlugin\",\n        \"users.bert.SqueakJS.plugins.ScratchPlugin\",\n        \"users.bert.SqueakJS.plugins.SoundGenerationPlugin\",\n        \"users.bert.SqueakJS.plugins.StarSqueakPlugin\",\n        \"users.bert.SqueakJS.plugins.ZipPlugin\",\n    ];\n    this.doNotSerialize.pushIfNotIncluded('vm');\n    this.setRunning(false);\n    this.vm = null;\n    this.display = null;\n    this.vmStopTime = 0;\n    this.stackTick = 0;\n    Global.Squeak.closeAllFiles();\n    Global.Squeak.stopAudio();\n    this.byteCodeCount = 0;\n    this.sendCount = 0;\n    this.get(\"Tree\").childrenPerPage = 15;\n    this.get(\"Tree\").setItem({\n        name: 'no image loaded',\n        style: {color: Global.Color.web.darkgray}});\n    this.get(\"Editor\").doitContext = null;\n    this.get(\"Editor\").setTextString(\"this\");\n    this.get(\"VMState\").setTextString(\"\");\n    this.get(\"Instructions\").setTextString(\"\");\n    this.get(\"Display\").onCanvasChanged();\n}","funcProperties":{"__isSmartRef__":true,"id":707},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"706":{"this":{"__isSmartRef__":true,"id":0}},"707":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sat Nov 15 2014 19:01:27 GMT+0100 (CET)\")"},"708":{"varMapping":{"__isSmartRef__":true,"id":709},"source":"function onSelect(object) {\n    var ed = this.get(\"Editor\");\n    if (object) {\n        ed.doitContext = object;\n        ed.textString = 'this // ';\n        ed.textString += object.sqInstName();\n    } else {\n        ed.doitContext = this;\n        ed.textString = 'this // the interpreter';\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":710},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"709":{"this":{"__isSmartRef__":true,"id":0}},"710":{"user":"undefined","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Dec 20 2013 14:47:31 GMT+0100 (CET)\")"},"711":{"varMapping":{"__isSmartRef__":true,"id":712},"source":"function interpretOne() {\n    if (!this.vm) return this.loadImage();\n    this.setRunning(false);\n    //while (1 + this.vm.byteCodeCount < 138870) this.vm.interpretOne();\n    var thisContext = this.vm.activeContext,\n        senderContext = thisContext.pointers[Global.Squeak.Context_sender];\n    debugger;\n    this.vm.interpretOne(true);\n    var blink = this.vm.activeContext !== thisContext\n        && this.vm.activeContext !== senderContext\n        && this.vm.activeContext.pointers[Global.Squeak.Context_sender] !== thisContext;\n    this.showVMState(blink);\n}","funcProperties":{"__isSmartRef__":true,"id":713},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"712":{"this":{"__isSmartRef__":true,"id":0}},"713":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 25 2014 21:03:39 GMT+0200 (CEST)\")"},"714":{"varMapping":{"__isSmartRef__":true,"id":715},"source":"function showVMState(blink) {\n    this.get(\"VMState\").setTextString(this.vm.printStack() + this.vm.printActiveContext());\n    this.get(\"VMState\").scrollToBottom();\n    this.get(\"Editor\").doitContext = this.vm;\n    this.setTreeRoots(\"specialObjects\", this.vm.image.specialObjectsArray,\n        \"activeContext\", this.vm.activeContext);\n    this.showInstructions();\n    this.showBytecodes();\n    if (this.byteCodeCount) this.get('RunButton').setLabel('Cont. ▶');\n    // blink if process switch\n    if (blink) {\n        this.get(\"VMState\").setFill(Global.Color.yellow.lighter());\n        this.get(\"VMState\").withCSSTransitionDo(function(){\n            this.setFill(Global.Color.white);\n        }, 500);\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":716},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"715":{"this":{"__isSmartRef__":true,"id":0}},"716":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Sep 14 2014 14:57:04 GMT+0200 (CEST)\")"},"717":{"varMapping":{"__isSmartRef__":true,"id":718},"source":"function showInstructions() {\n    var instructions = this.vm.printByteCodes(this.vm.method, '   ', '=> ', this.vm.pc),\n        compiled = this.vm.method.compiled,\n        text = this.get(\"Instructions\"),\n        index = instructions.indexOf(\"=> \");\n    text.setTextString(instructions);\n    text.setSelectionRange(index, index+3);\n    text.setScroll(0, text.getSelectionBounds().y - text.getExtent().y / 2);\n    text.emphasizeRegex(/<[^>]*>/g, {color: Global.Color.blue})\n    text.emphasizeRegex(/=>[^\\n]*\\n/g, {backgroundColor: compiled ? Global.Color.rgb(195,249,231) : Global.Color.rgb(249,231,195)});\n}","funcProperties":{"__isSmartRef__":true,"id":719},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"718":{"this":{"__isSmartRef__":true,"id":0}},"719":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Sep 28 2014 10:03:14 GMT+0200 (CEST)\")"},"720":{"varMapping":{"__isSmartRef__":true,"id":721},"source":"function loadImageFromBuffer(buffer, imageName, thenDo) {\n    // this function is used from drop code and elsewhere\n    this.reset();\n    this.defaultsForImage(imageName);\n    this.get(\"Tree\").setItem({name: 'loading ' + imageName + ' ...'});\n    window.setTimeout(function() {\n        var image = new Global.Squeak.Image(imageName);\n        try {\n            image.readFromBuffer(buffer);\n            this.display = this.get(\"Display\").createDisplay();\n            this.vm = new Global.Squeak.Interpreter(image, this.display);\n        } catch(err) {\n            this.world().logError(err);\n            return this.reset();\n        }\n        this.enableBreakpoint();\n        this.enableBreakOnDoit();\n        if (thenDo) thenDo(this.vm);\n        else this.showVMState();\n    }.bind(this), 0);\n}","funcProperties":{"__isSmartRef__":true,"id":722},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"721":{"this":{"__isSmartRef__":true,"id":0}},"722":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Oct 22 2014 07:14:20 GMT+0200 (CEST)\")"},"723":{"varMapping":{"__isSmartRef__":true,"id":724},"source":"function loadImage(thenDo) {\n    this.reset();\n    var imageName = window.localStorage['squeakImageName'],\n        self = this;\n    if (!imageName || /^http:/.test(imageName)) {\n        var url = imageName ? imageName :\n            window.location.href.replace(/[^\\/]*$/, '') + 'SqueakJS/demo/mini.image';\n        imageName = Global.Squeak.splitFilePath(url).basename;\n        return self.downloadImage(url, function(buffer){\n            Global.Squeak.filePut(imageName, buffer);\n            if (imageName == 'mini.image')\n                Global.Squeak.filePut('mini.changes', new ArrayBuffer(0));\n            window.localStorage['squeakImageName'] = imageName;\n            self.loadImageFromBuffer(buffer, imageName, thenDo);\n        });\n    }\n    Global.Squeak.fileGet(imageName, function(buffer) {\n        self.loadImageFromBuffer(buffer, imageName, thenDo);\n    });\n}","funcProperties":{"__isSmartRef__":true,"id":725},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"724":{"this":{"__isSmartRef__":true,"id":0}},"725":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:37:03 GMT+0200 (CEST)\")"},"726":{"varMapping":{"__isSmartRef__":true,"id":727},"source":"function makeTreeItem(label, object) {\n    var self = this;\n    var item = {\n        doNotSerialize: [\"object\"],\n        object: object,\n        name: label + \": \" +\n            (object.sqInstName ? object.sqInstName() : object.toString()),\n        children: !!object.pointers,\n        onExpand: function(tree) {\n            var n = self.vm.isContext(object)\n                    ? object.contextSizeWithStack(self.vm)\n                    : object.pointersSize();\n            item.children = [];\n            for (var i = 0; i < n; i++) {\n                var child = object.pointers[i],\n                    childLabel = i + \" (\" + object.slotNameAt(i+1) + \")\";\n                item.children.push(self.makeTreeItem(childLabel, child));\n            }\n            if (object === self.vm.activeContext) {\n                item.children[Global.Squeak.Context_instructionPointer].description = '[vm: ' + self.vm.pc + ']';\n                item.children[Global.Squeak.Context_stackPointer].description = '[vm: ' + self.vm.sp + ']';\n            }\n        },\n        onCollapse: function(tree) {\n            item.children = true;      //release objects\n        },\n        onSelect: function(tree) {\n            self.onSelect(object);\n        }\n    };\n    if (object.bytes) item.description = \"[\" + object.bytes.length + \" bytes]\";\n    if (object.words) item.description = \"[\" + object.words.length + \" words]\";\n    if (object.pointers) item.description = \"@\" + object.oop;\n    return item;    \n}","funcProperties":{"__isSmartRef__":true,"id":728},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"727":{"this":{"__isSmartRef__":true,"id":0}},"728":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 13:46:28 GMT+0200 (CEST)\")"},"729":{"varMapping":{"__isSmartRef__":true,"id":730},"source":"function run() {\n    if (!this.vm) return this.loadImage(run.bind(this));\n    if (this.running) {\n        this.setRunning(false);\n        this.showVMState();\n    } else {\n        this.interpret();\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":731},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"730":{"this":{"__isSmartRef__":true,"id":0}},"731":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu May 08 2014 19:25:46 GMT+0200 (CEST)\")"},"732":{"varMapping":{"__isSmartRef__":true,"id":733},"source":"function setTreeRoots(label, object, etc) {\n    // this.setTreeRoots(\"specialObjects\", this.vm.image.specialObjectsArray, \"activeContext\", this.vm.activeContext);\n    var tree = this.get(\"Tree\");\n    var items = [];\n    for (var i = 0; i < arguments.length; i += 2) {\n        label = arguments[i];\n        object = arguments[i+1];\n        items.push(this.makeTreeItem(label, object))\n    }\n    if (items.length == 1) {\n        tree.setItem(items[0]);\n        tree.expand();\n    } else {\n        tree.setItem({children: items});\n        tree.childNodes[tree.childNodes.length-1].expand();\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":734},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"733":{"this":{"__isSmartRef__":true,"id":0}},"734":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Dec 09 2013 11:42:45 GMT+0100 (CET)\")"},"735":{"varMapping":{"__isSmartRef__":true,"id":736},"source":"function interpretOverSend() {\n    if (!this.vm) return this.loadImage();\n    this.setRunning(false);\n    // if on a send, run until it returns \n    if (this.vm.willSendOrReturn()) {\n        var ourContext = this.vm.activeContext;\n        var ourSender = ourContext.pointers[Global.Squeak.Context_sender];\n        this.vm.interpretOne(true); // do the send\n        if (this.vm.activeContext.pointers[Global.Squeak.Context_sender] === ourContext) {\n            // we're in the child context, interpret until it returned\n            this.interpretTillReturned();\n        } else {\n            // might have been quick-send, or return, or process switch\n            var blink = this.vm.activeContext !== ourContext\n                && this.vm.activeContext !== ourSender;\n            this.showVMState(blink);\n        }\n    } else { // otherwise, just do a step\n        this.vm.interpretOne(true);\n        this.showVMState();\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":737},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"736":{"this":{"__isSmartRef__":true,"id":0}},"737":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 29 2014 11:29:28 GMT+0200 (CEST)\")"},"738":{"varMapping":{"__isSmartRef__":true,"id":739},"source":"function interpret(onBreakDo) {\n    this.setRunning(true);\n    this.get('VMState').setTextString('');\n    this.get('Instructions').setTextString('');\n    this.get('Tree').setItem({name: 'running'});\n    this.enableBreakpoint();\n    this.interpretLoop(onBreakDo);\n}","funcProperties":{"__isSmartRef__":true,"id":740},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"739":{"this":{"__isSmartRef__":true,"id":0}},"740":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Oct 09 2014 18:56:30 GMT+0200 (CEST)\")"},"741":{"varMapping":{"__isSmartRef__":true,"id":742},"source":"function interpretTillReturned(thenDo) {\n    if (!this.vm) return this.loadImage();\n    this.vm.breakOnReturnFromThisContext();\n    var ourSender = this.vm.activeContext.pointers[Global.Squeak.Context_sender];\n    this.interpret(function onBreakDo() {\n        // blink if context is not our sender\n        this.showVMState(this.vm.activeContext !== ourSender);\n        if (thenDo) thenDo();\n    }.bind(this));\n}","funcProperties":{"__isSmartRef__":true,"id":743},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"742":{"this":{"__isSmartRef__":true,"id":0}},"743":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:37:03 GMT+0200 (CEST)\")"},"744":{"varMapping":{"__isSmartRef__":true,"id":745},"source":"function interpretTillSent(thenDo) {\n    if (!this.vm) return this.loadImage();\n    this.vm.breakOnSendOrReturn();\n    var ourContext = this.vm.activeContext;\n    var ourSender = ourContext.pointers[Global.Squeak.Context_sender];\n    this.interpret(function onBreakDo() {\n        // blink if context is not a child or sender\n        var blink = this.vm.activeContext.pointers[Global.Squeak.Context_sender] !== ourContext\n            && this.vm.activeContext !== ourContext\n            && this.vm.activeContext !== ourSender;\n        this.showVMState(blink);\n        if (thenDo) thenDo();\n    }.bind(this));\n}","funcProperties":{"__isSmartRef__":true,"id":746},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"745":{"this":{"__isSmartRef__":true,"id":0}},"746":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:37:03 GMT+0200 (CEST)\")"},"747":{"varMapping":{"__isSmartRef__":true,"id":748},"source":"function showBytecodes() {\n    var bytecodes = this.vm.byteCodeCount - this.byteCodeCount;\n    var sends = this.vm.sendCount - this.sendCount;\n    if (bytecodes) {\n        var ed = this.get(\"Editor\");\n        var string = bytecodes + \" bytecode\";\n        if (bytecodes > 1) string += \"s\";\n        if (sends) string += \", \" + sends+ \" send\";\n        if (sends > 1) string += \"s\";\n        string += \" (#\"+ this.vm.byteCodeCount+\")\";\n        ed.setTextString(ed.getTextString()+'\\n'+string);\n        ed.scrollToBottom();\n    }\n    this.byteCodeCount = this.vm.byteCodeCount;\n    this.sendCount = this.vm.sendCount;\n}","funcProperties":{"__isSmartRef__":true,"id":749},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"748":{"this":{"__isSmartRef__":true,"id":0}},"749":{"user":"undefined","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Dec 20 2013 14:32:01 GMT+0100 (CET)\")"},"750":{"varMapping":{"__isSmartRef__":true,"id":751},"source":"function interpretLoop(onBreakDo) {\n    if (!this.running || !this.vm) return;\n    window.clearTimeout(this.interpretLoopProcess);\n    // first, run the interpreter for a while\n    try {\n        this.vm.interpret(50, function(timeoutMs) {\n            // if we hit a breakpoint, we're done\n            if (timeoutMs == 'break') {\n                this.setRunning(false);\n                if (onBreakDo) onBreakDo();\n                else this.showVMState();\n                return;\n            }\n            this.showRunning(timeoutMs);\n            // otherwise, schedule us to run again\n            if (timeoutMs == 'sleep') timeoutMs = 200;\n            this.interpretLoopProcess = window.setTimeout(function() {\n                this.interpretLoop(onBreakDo);\n            }.bind(this), timeoutMs);\n       }.bind(this));\n    } catch(err) {\n        // on error stop running\n        this.world().logError(err);\n        this.setRunning(false);\n        this.showVMState();\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":752},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"751":{"this":{"__isSmartRef__":true,"id":0}},"752":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Sep 11 2014 23:42:21 GMT+0200 (CEST)\")"},"753":{"varMapping":{"__isSmartRef__":true,"id":754},"source":"function setRunning(truth) {\n    this.running = truth;\n    var fullscreen = !$world.get(\"Lively2LivelyStatus\").isVisible();\n    if (this.running) {\n        // Bring the display over the debugging buttons and squeak to front\n        this.get('Display').bringToFront();\n        this.bringToFront();\n        if (fullscreen) {\n            this.formerPosition = this.getPosition();\n            this.setPosition(this.get('Display').getPosition().negated());\n        } else {\n            this.formerPosition = null;\n        }\n        if (this.vm && this.vmStopTime) {\n            this.vm.primHandler.millisecondClockValueSet(this.vmStopTime);\n            this.vmStopTime = 0;\n        }\n    } else {\n        // Bring the debugging buttons forward and squeak to the rear\n        if (this.formerPosition) this.setPosition(this.formerPosition);\n        this.get('Display').sendToBack();\n        this.sendToBack();\n        if (this.vm && !this.vmStopTime)\n            this.vmStopTime = this.vm.primHandler.millisecondClockValue();\n    }\n    this.get('RunButton').setLabel(this.running ? 'Pause ❚ ❚' : 'Run ▶');\n}","funcProperties":{"__isSmartRef__":true,"id":755},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"754":{"this":{"__isSmartRef__":true,"id":0}},"755":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Sep 14 2014 14:55:47 GMT+0200 (CEST)\")"},"756":{"varMapping":{"__isSmartRef__":true,"id":757},"source":"function onstore(object) {\n    // set defaults suitable for publishing\n    this.reset();\n    this.get(\"Breakpoint\").textString = 'Class>>method';\n    this.get(\"BreakOnDoit\").setChecked(false);\n    this.get(\"Display\").setSwapButtons(false);\n    this.runAfterLoad = true;\n}","funcProperties":{"__isSmartRef__":true,"id":762},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"757":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":758}},"758":{"$super":{"__isSmartRef__":true,"id":759}},"759":{"varMapping":{"__isSmartRef__":true,"id":760},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[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":761},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"760":{"obj":{"__isSmartRef__":true,"id":0},"name":"onstore"},"761":{},"762":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Sep 14 2014 15:05:46 GMT+0200 (CEST)\")"},"763":{"varMapping":{"__isSmartRef__":true,"id":764},"source":"function saveFile(filename) {\n    if (!filename) {\n        var items = [];\n        for (var filename in Global.Squeak.dirList('/'))\n            items.push([filename, this, 'saveFile', filename]);\n        items = items.sortBy(function(a){return a[0]});\n        return lively.morphic.Menu.openAtHand('Save file:', items);\n    }\n    Global.Squeak.fileGet(filename, function(buffer) {\n        var blob = new Blob([buffer], {type: 'application/octet-stream'}),\n            blobURL = Global.URL.createObjectURL(blob),\n            link = this.get(\"SaveLink\"),\n            node = link.getChunkAndLocalIndex(0)[0].getChunkNode(),\n            a = Global.XHTMLNS.create('a');\n        node.textContent = '';\n        a.textContent = filename;\n        a.setAttribute('href', blobURL);\n        a.setAttribute('download', filename);\n        a.onclick = function(){\n            node.removeChild(a);\n            setTimeout(function(){Global.URL.revokeObjectURL(blobURL)}, 0);\n            return true;\n        };\n        node.appendChild(a);\n        a.click();\n    }.bind(this), alert);\n}","funcProperties":{"__isSmartRef__":true,"id":765},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"764":{"this":{"__isSmartRef__":true,"id":0}},"765":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Wed Oct 22 2014 18:35:35 GMT+0200 (CEST)\")"},"766":{"varMapping":{"__isSmartRef__":true,"id":767},"source":"function downloadImage(url, thenDo, elseDo) {\n    Global.alertOK(\"fetching \" + url);\n    var xhr = new XMLHttpRequest();\n    xhr.open(\"get\", url, true);\n    xhr.responseType = \"arraybuffer\";\n    xhr.timeout = 10000;\n    xhr.onreadystatechange = function() {\n        if (this.readyState != this.DONE) return;\n        if (this.status == 200) {\n            var buffer = this.response;\n            console.log(\"Got \" + buffer.byteLength + \" bytes from \" + url);\n            thenDo(buffer);\n        } else {\n            alert(\"Download failed (\" + this.status + \") \" + url);\n            elseDo();\n        }\n    }\n    xhr.send();\n}","funcProperties":{"__isSmartRef__":true,"id":768},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"767":{"this":{"__isSmartRef__":true,"id":0}},"768":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:37:03 GMT+0200 (CEST)\")"},"769":{"varMapping":{"__isSmartRef__":true,"id":770},"source":"function chooseImage(imageName) {\n    if (imageName) {\n        if (imageName == 'fetch image')\n            delete window.localStorage['squeakImageName'];\n        else\n            window.localStorage['squeakImageName'] = imageName;\n        this.reset();\n        return this.runAfterLoad ? this.run() : this.loadImage();\n    }\n    var self = this,\n        items = [];\n    for (var filename in Global.Squeak.dirList('/'))\n        if (/\\.image$/.test(filename))\n            items.push([filename, self, 'chooseImage', filename]);\n    items = items.sort(function(a,b){ return a[0].toLowerCase() > b[0].toLowerCase() ? 1 : -1});\n    items.push(['fetch mini image from server', self, 'chooseImage', 'fetch image']);\n    items.push(['fetch etoys image from server', self, 'chooseImage', \n        'http://freudenbergs.de/bert/squeakjs/etoys.image']);\n    items.push(['fetch scratch image from server', self, 'chooseImage', \n        'http://freudenbergs.de/bert/squeakjs/scratch/Scratch.image']);\n    lively.morphic.Menu.openAtHand('Load image:', items);\n}","funcProperties":{"__isSmartRef__":true,"id":771},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"770":{"this":{"__isSmartRef__":true,"id":0}},"771":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Sep 02 2014 17:50:53 GMT+0200 (CEST)\")"},"772":{"varMapping":{"__isSmartRef__":true,"id":773},"source":"function interpretAgain() {\n    // restart the interpreter without waiting for the timeout to expire\n    this.interpretLoop();\n}","funcProperties":{"__isSmartRef__":true,"id":774},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"773":{"this":{"__isSmartRef__":true,"id":0}},"774":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon May 19 2014 15:04:23 GMT+0200 (CEST)\")"},"775":{"varMapping":{"__isSmartRef__":true,"id":776},"source":"function enableBreakpoint() {\n    if (!this.vm) return;\n    var input = this.get(\"Breakpoint\"),\n        string = input.textString.replace(/:[ a-z]* /gi, \":\").replace(/:[a-z]*$/gi, \":\").replace(/ /g, \"\"),\n        result;\n    if (/>>/.test(string)) {\n        result = this.vm.breakOn(string);\n    } else {\n        result = this.vm.breakOn(null); //breakOnGlobal\n    }\n    input.unEmphasizeAll();\n    input.setTextColor(result ? Global.Color.black : Global.Color.red);  \n}","funcProperties":{"__isSmartRef__":true,"id":777},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"776":{"this":{"__isSmartRef__":true,"id":0}},"777":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Oct 09 2014 16:01:20 GMT+0200 (CEST)\")"},"778":{"varMapping":{"__isSmartRef__":true,"id":779},"source":"function defaultsForImage(imageName) {\n    var isEtoys = /etoys/i.test(imageName),\n        isMini = /mini/i.test(imageName),\n        isScratch = /scratch/i.test(imageName);\n    if (isEtoys) {\n        this.get(\"Display\").setCanvasExtent(pt(1200,900));\n        this.get(\"Display\").setSwapButtons(false);\n    } else {\n        this.get(\"Display\").setPixelRatio(pt(1,1));\n    }\n    var settings = JSON.parse(localStorage[\"squeakSettings:\" + imageName] || \"{}\");\n    if (\"swapButtons\" in settings)\n        this.get(\"Display\").setSwapButtons(!!settings.swapButtons);\n    else if (isEtoys || isMini || isScratch)\n        this.get(\"Display\").setSwapButtons(isMini || isScratch);\n}","funcProperties":{"__isSmartRef__":true,"id":780},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"779":{"this":{"__isSmartRef__":true,"id":0}},"780":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Tue Sep 02 2014 21:04:17 GMT+0200 (CEST)\")"},"781":{"varMapping":{"__isSmartRef__":true,"id":782},"source":"function showRunning(idle) {\n    this.runButton.setLabel(\"Debug \" + \"◐◓◑◒\"[this.spinner = (this.spinner + 1) % 4]);\n    // check for feedback once a second\n    if (this.stackTick + 1000 < this.vm.lastTick) {\n        this.stackTick = this.vm.lastTick;\n        // if no display activity for 3 seconds, show wait cursor\n        if (this.display.lastTick + 3000 < this.vm.lastTick) { // busy\n            if (!this.stackBusy) {\n                this.stackBusy = this.display.lastTick;\n                //this.get(\"Display\").setHandStyle('wait');\n            }\n        } else { // not busy\n            if (this.stackBusy) {\n                var ms = this.vm.lastTick - this.stackBusy;\n                this.stackBusy = 0;\n                //this.get(\"Display\").setHandStyle();\n            }\n         }\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":783},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"782":{"this":{"__isSmartRef__":true,"id":0}},"783":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Sun Sep 14 2014 14:56:06 GMT+0200 (CEST)\")"},"784":{"varMapping":{"__isSmartRef__":true,"id":785},"source":"function swapButtonsChanged() {\n    var imageName = localStorage[\"squeakImageName\"];\n    if (imageName) {\n        var settings = JSON.parse(localStorage[\"squeakSettings:\" + imageName] || \"{}\");\n        settings[\"swapButtons\"] = !!this.get(\"Display\").swapButtons;\n        localStorage[\"squeakSettings:\" + imageName] = JSON.stringify(settings);\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":786},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"785":{"this":{"__isSmartRef__":true,"id":0}},"786":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Sep 01 2014 17:21:35 GMT+0200 (CEST)\")"},"787":{"varMapping":{"__isSmartRef__":true,"id":788},"source":"function enableBreakOnDoit() {\n    if (!this.vm) return;\n    this.vm.breakOnNewMethod = this.get(\"BreakOnDoit\").isChecked();\n}","funcProperties":{"__isSmartRef__":true,"id":789},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"788":{"this":{"__isSmartRef__":true,"id":0}},"789":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Oct 09 2014 18:58:05 GMT+0200 (CEST)\")"},"790":{"varMapping":{"__isSmartRef__":true,"id":791},"source":"function importFile(file) {\n    var reader = new FileReader();\n    reader.onload = function(evt) {\n        var buffer = evt.target.result;\n        Global.Squeak.filePut(file.name, buffer);\n        $world.alertOK(\"Imported \" + file.name + \" (\" + buffer.byteLength + \" bytes)\");\n    }.bind(this);\n    reader.onerror = function(err) {\n        alert(\"file import error: \" + err)\n    };\n    reader.readAsArrayBuffer(file);\n    console.log(\"Importing \" + file.name + \" (\" + file.size + \" bytes)\");\n}","funcProperties":{"__isSmartRef__":true,"id":792},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"791":{"this":{"__isSmartRef__":true,"id":0}},"792":{"user":"bert","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Oct 10 2014 12:13:55 GMT+0200 (CEST)\")"},"isSimplifiedRegistry":true}}