0 &&\\\\n this.getDBObjectIDs().withoutAll(currentIDs).length > 0 &&\\\\n this.getDBObjectIDs().withoutAll(currentIDs).each(function (ea) {\\\\n that.removeMorphWithID(ea);\\\\n });\\\\n }\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":372},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"371\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"372\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":373},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"373\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sun Feb 26 2012 19:46:30 GMT+0100 (CET)\\\"},\\\"374\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":375},\\\"source\\\":\\\"function getDBObjectIDs() {\\\\n return this.DBObjectIDs || [];\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":376},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"375\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"376\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":377},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"377\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:46:21 GMT+0100 (CET)\\\"},\\\"378\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":379},\\\"source\\\":\\\"function getSubmorphByDatabaseID(anID) {\\\\n return this.submorphs.find(function (ea) {\\\\n return anID == ea.databaseID;\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":380},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"379\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"380\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":381},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"381\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 18:20:48 GMT+0100 (CET)\\\"},\\\"382\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":383},\\\"source\\\":\\\"function initialSync() {\\\\n var that = this;\\\\n // write new morphs to DB\\\\n this.submorphs.length > 0 && this.submorphs.select(function (ea) {\\\\n return ea.databaseID == undefined && ea.databaseRev == undefined;\\\\n }).each(function (ea) {\\\\n that.saveMorph(ea);\\\\n });\\\\n this.updateDBObjectIDs();\\\\n // fetch current morphs from DB\\\\n var docs = this.getDB().allDocs();\\\\n var allObjs = docs.rows.pluck(\\\\\\\"id\\\\\\\").withoutAll(this.getDBObjectIDs()).collect(function (ea) {\\\\n return that.getDB().open(ea); \\\\n });\\\\n allObjs.length > 0 && allObjs.each(function (ea) {\\\\n morph = that.deserializeMorph(ea);\\\\n that.addMorph(morph);\\\\n });\\\\n this.updateDBObjectIDs();\\\\n // delete the morphs that have been deleted in DB\\\\n this.getDBObjectIDs() && this.getDBObjectIDs().withoutAll(docs.rows.pluck(\\\\\\\"id\\\\\\\")).each(function (ea) {\\\\n that.getSubmorphByDatabaseID(ea).remove();\\\\n });\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":384},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"383\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"384\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":385},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"385\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:41:48 GMT+0100 (CET)\\\"},\\\"386\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":387},\\\"source\\\":\\\"function morphMenuItems() {\\\\n items = $super();\\\\n var itemString = \\\\\\\"activate sync\\\\\\\";\\\\n if (this.active) itemString = \\\\\\\"de\\\\\\\" + itemString;\\\\n items.push([itemString, (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)]);\\\\n return items;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":392},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"387\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":388}},\\\"388\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":389}},\\\"389\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":390},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":391},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"390\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"name\\\":\\\"morphMenuItems\\\"},\\\"391\\\":{},\\\"392\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":393},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"393\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 12:04:50 GMT+0100 (CET)\\\"},\\\"isSimplifiedRegistry\\\":true}}\"}\n","contentDocument":"","isExisting":true,"subResources":null,"requestHeaders":{"__isSmartRef__":true,"id":91},"responseHeaders":{"__isSmartRef__":true,"id":92},"readystate":4,"__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"WebResource"},"87":{"protocol":"http:","hostname":"lively-kernel.org","pathname":"/couchdb/sync_morph_db/4af2c2849e784247e4a7bdb03654a85e","__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"URL"},"88":{"method":"GET","url":{"__isSmartRef__":true,"id":87},"transport":{"__isSmartRef__":true,"id":89},"exception":null,"__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"NetRequestStatus"},"89":{"withCredentials":false,"statusText":"OK","onprogress":null,"onloadend":null,"responseXML":null,"onerror":null,"onload":null,"readyState":4,"responseText":"{\"_id\":\"4af2c2849e784247e4a7bdb03654a85e\",\"_rev\":\"1-9c11124903569769d3ca9b4c4982d346\",\"morph\":\"{\\\"id\\\":0,\\\"registry\\\":{\\\"0\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":1}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":11},\\\"id\\\":\\\"6BD226B6-7AAF-4070-B926-E005D20E4CE5\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":18},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":19},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":false,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":20},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Core\\\",\\\"showsHalos\\\":false,\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":21},\\\"name\\\":\\\"Ellipse\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":22},\\\"derivationIds\\\":[113],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"isBeingDragged\\\":false,\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Morph\\\"},\\\"1\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"id\\\":\\\"220043E2-BE60-42B4-91EF-98288AE85258\\\",\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":2},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"registeredForMouseEvents\\\":true,\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":7},\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":8},\\\"showsHalos\\\":false,\\\"name\\\":\\\"Image\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":9},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":10},\\\"derivationIds\\\":[707],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":0},\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Image\\\"},\\\"2\\\":{\\\"position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":3},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":4},\\\"_ImageURL\\\":\\\"http://lively-kernel.org/repository/webwerkstatt/media/hpi_logo.png\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":5},\\\"isLoaded\\\":true,\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":6},\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Image\\\"},\\\"3\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"4\\\":{\\\"x\\\":100,\\\"y\\\":100,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"5\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"setImageURL\\\":\\\"setImageURLHTML\\\",\\\"getNativeExtent\\\":\\\"getNativeExtentHTML\\\"},\\\"6\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"7\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":1},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"8\\\":{\\\"x\\\":-3,\\\"y\\\":-1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"9\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/Basic\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"partName\\\":\\\"Image\\\",\\\"migrationLevel\\\":2,\\\"comment\\\":\\\"an pixmap image morph\\\",\\\"revisionOnLoad\\\":140039,\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"10\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"11\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":12},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":13},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":14},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":15},\\\"_BorderWidth\\\":3.184,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":16},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":17},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"_BorderRadius\\\":0,\\\"_Opacity\\\":1,\\\"_BorderStyle\\\":\\\"solid\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Ellipse\\\"},\\\"12\\\":{\\\"x\\\":-50,\\\"y\\\":-50,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"13\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"14\\\":{\\\"x\\\":100,\\\"y\\\":100,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"15\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"16\\\":{\\\"r\\\":0,\\\"g\\\":0,\\\"b\\\":0,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"17\\\":{\\\"r\\\":0,\\\"g\\\":0.8,\\\"b\\\":0,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"18\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"19\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":0},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"20\\\":{\\\"x\\\":311,\\\"y\\\":177,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"21\\\":{},\\\"22\\\":{\\\"partName\\\":\\\"Ellipse\\\",\\\"requiredModules\\\":[],\\\"migrationLevel\\\":4,\\\"partsSpaceName\\\":\\\"PartsBin/Basic\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"revisionOnLoad\\\":140039,\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"23\\\":{\\\"scripts\\\":[],\\\"id\\\":\\\"AEF73F54-39F0-4394-B8BF-8632CD06257A\\\",\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":24},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"registeredForMouseEvents\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":31},\\\"showsHalos\\\":false,\\\"name\\\":\\\"SyncMorph\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":32},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Core\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":39},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":40},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":41}],\\\"doNotSerialize\\\":[\\\"$$submorphs\\\"],\\\"doNotCopyProperties\\\":[\\\"$$submorphs\\\"],\\\"derivationIds\\\":[127,\\\"BA060905-7B8C-4608-88DB-509EEB0346C8\\\",\\\"43E78AE8-0A85-4BC9-A66B-019EFE67E370\\\"],\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":260},\\\"isBeingDragged\\\":false,\\\"prevScroll\\\":[0,0],\\\"dbName\\\":\\\"\\\",\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":261},\\\"active\\\":true,\\\"DBObjectIDs\\\":[],\\\"partTests\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262},\\\"isLockOwner\\\":false,\\\"grabbingEnabled\\\":false,\\\"db\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":291},\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":0}],\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":313},\\\"__LivelyClassName__\\\":\\\"lively.morphic.Box\\\"},\\\"24\\\":{\\\"position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":25},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":26},\\\"_BorderWidth\\\":1,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":27},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":28},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":29},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":30},\\\"_BorderRadius\\\":12.58,\\\"_Opacity\\\":1,\\\"_BorderStyle\\\":\\\"solid\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"25\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"26\\\":{\\\"x\\\":600,\\\"y\\\":379,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"27\\\":{\\\"r\\\":0.372,\\\"g\\\":0.369,\\\"b\\\":0.372,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"28\\\":{\\\"r\\\":0.839,\\\"g\\\":0.839,\\\"b\\\":0.839,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"29\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"30\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"31\\\":{\\\"x\\\":0,\\\"y\\\":21,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"32\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/BP2012\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"comment\\\":\\\"A morph that serializes objects that are dropped onto it and writes it to a CouchDB. It also listens via longpolling for changes on the CouchDB\\\",\\\"migrationLevel\\\":4,\\\"partName\\\":\\\"SyncMorph\\\",\\\"changes\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":33},{\\\"__isSmartRef__\\\":true,\\\"id\\\":35},{\\\"__isSmartRef__\\\":true,\\\"id\\\":37}],\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"33\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":34},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"initial working version\\\",\\\"id\\\":\\\"BA1F77FA-14C3-4D1C-95A8-6688E23CDBF5\\\"},\\\"34\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 13:04:58 GMT+0100 (CET)\\\"},\\\"35\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":36},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"added some tests\\\",\\\"id\\\":\\\"BE52228F-8DCC-4EA0-98FE-A84807380FA5\\\"},\\\"36\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 15:59:49 GMT+0100 (CET)\\\"},\\\"37\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":38},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"fixed positioning bug (now restores relative position to owner aka. SyncMorph)\\\",\\\"id\\\":\\\"A03671ED-8180-4AFE-A443-545DDA45B2E0\\\"},\\\"38\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 16:31:31 GMT+0100 (CET)\\\"},\\\"39\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"40\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"41\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"sourceAttrName\\\":\\\"submorphs\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"targetMethodName\\\":\\\"updateDB\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"42\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},{\\\"__isSmartRef__\\\":true,\\\"id\\\":43}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":239},\\\"derivationIds\\\":[null,\\\"CF24F636-B788-496E-BCDF-0B41AEF46478\\\",\\\"9942B2CA-FDCA-4A8B-8B4B-CA98A4D67A9A\\\"],\\\"id\\\":\\\"66853B08-BE71-437E-832D-961CF24599BB\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":243},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":244},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"draggingEnabled\\\":true,\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":245},\\\"LK2\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":246},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":247},\\\"targetMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"titleBar\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"contentOffset\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":31},\\\"collapsedTransform\\\":null,\\\"collapsedExtent\\\":null,\\\"expandedTransform\\\":null,\\\"expandedExtent\\\":null,\\\"ignoreEventsOnExpand\\\":false,\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":248},\\\"name\\\":\\\"SyncMorph\\\",\\\"highlighted\\\":true,\\\"prevDragPos\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":259},\\\"isBeingDragged\\\":false,\\\"prevScroll\\\":[0,0],\\\"showsHalos\\\":false,\\\"isCopyMorphRef\\\":true,\\\"morphRefId\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"grabbingEnabled\\\":true,\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"moved\\\":true,\\\"headRevision\\\":142112,\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Window\\\",\\\"withLayers\\\":[\\\"Global.lively.morphic.GrabbingLayer\\\"],\\\"withoutLayers\\\":[\\\"Global.lively.morphic.GrabbingLayer\\\"]},\\\"43\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":221},\\\"derivationIds\\\":[null,\\\"8063B9D1-E31A-42B9-AEDF-F96496304762\\\",\\\"E01E7D4A-6396-4093-895B-0212ED19277D\\\"],\\\"id\\\":\\\"6D063567-B770-4976-90F9-EA009730B1DB\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":233},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":234},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":235},\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":236},\\\"windowMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},\\\"closeButton\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"menuButton\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"collapseButton\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":237},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"showsHalos\\\":false,\\\"distanceToDragEvent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":238},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"prevScroll\\\":[0,0],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.TitleBar\\\"},\\\"44\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":45},\\\"derivationIds\\\":[null,\\\"67024D50-BF5B-40D8-AE5B-8D692BB6B986\\\",\\\"9F84EDEA-122D-4A5D-8E26-CD584EFD6425\\\"],\\\"id\\\":\\\"DD24C4AF-9A95-4828-9F1A-C708837F403C\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":51},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":52}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":54},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":10,\\\"evalEnabled\\\":false,\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":55},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":56},\\\"_MaxTextWidth\\\":541,\\\"_MinTextWidth\\\":541,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":57},\\\"showsHalos\\\":false,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"prevScroll\\\":[0,0],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"45\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":46},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":47},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":48},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":49},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"_BorderRadius\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"46\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"47\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"48\\\":{\\\"x\\\":541,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"49\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"50\\\":{\\\"r\\\":0,\\\"g\\\":0,\\\"b\\\":0,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"51\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"52\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":53},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},\\\"storedString\\\":\\\"SyncMorph\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"53\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"54\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"55\\\":{\\\"resizeWidth\\\":true},\\\"56\\\":{\\\"x\\\":541,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"57\\\":{\\\"x\\\":20,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"58\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":59}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":71},\\\"derivationIds\\\":[null,\\\"8FCD2996-141C-4874-BB99-6249261F791F\\\",\\\"44FDCD83-627C-4ABD-BDB3-A5342ED8D171\\\"],\\\"id\\\":\\\"AFB4B85D-4E94-45F6-90BD-38A460EB2A64\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":87},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":88},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"accessibleInInactiveWindow\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":89},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":90},\\\"value\\\":false,\\\"toggle\\\":false,\\\"isActive\\\":true,\\\"normalFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"lighterFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":91},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":59},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":100},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":101},{\\\"__isSmartRef__\\\":true,\\\"id\\\":103}],\\\"doNotSerialize\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"doNotCopyProperties\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"prevScroll\\\":[0,0],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.WindowControl\\\"},\\\"59\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":60},\\\"derivationIds\\\":[null,\\\"1F343953-83E1-45A7-B3C9-261FC6F273C2\\\",\\\"EB0B0A63-B1A6-422B-8EC5-F6DEE53A7543\\\"],\\\"id\\\":\\\"57F317B7-6650-4B56-9F11-7A31643E2771\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":65},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":66}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":68},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":8,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":69},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":70},\\\"_MaxTextWidth\\\":17,\\\"_MinTextWidth\\\":17,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"evalEnabled\\\":false,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"_TextColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"prevScroll\\\":[0,0],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"60\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":61},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":62},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":63},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":64},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"61\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"62\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"63\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"64\\\":{\\\"x\\\":0,\\\"y\\\":3,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"65\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"66\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":67},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":59},\\\"storedString\\\":\\\"X\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"67\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"68\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":59},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"69\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"70\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"71\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":72},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":73},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":74},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":75},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":76},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":5,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"72\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"73\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"74\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"75\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"76\\\":{\\\"r\\\":0.7411764705882353,\\\"g\\\":0.7450980392156863,\\\"b\\\":0.7529411764705882,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"77\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":78},{\\\"__isSmartRef__\\\":true,\\\"id\\\":80},{\\\"__isSmartRef__\\\":true,\\\"id\\\":82},{\\\"__isSmartRef__\\\":true,\\\"id\\\":84}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"78\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":79}},\\\"79\\\":{\\\"r\\\":0.9600000000000001,\\\"g\\\":0.9600000000000001,\\\"b\\\":0.9600000000000001,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"80\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":81}},\\\"81\\\":{\\\"r\\\":0.8200000000000001,\\\"g\\\":0.8200000000000001,\\\"b\\\":0.8200000000000001,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"82\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":83}},\\\"83\\\":{\\\"r\\\":0.8200000000000001,\\\"g\\\":0.8200000000000001,\\\"b\\\":0.8200000000000001,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"84\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":85}},\\\"85\\\":{\\\"r\\\":0.94,\\\"g\\\":0.94,\\\"b\\\":0.94,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"86\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"87\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"88\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"89\\\":{\\\"x\\\":580,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"90\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"91\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":92},{\\\"__isSmartRef__\\\":true,\\\"id\\\":94},{\\\"__isSmartRef__\\\":true,\\\"id\\\":96},{\\\"__isSmartRef__\\\":true,\\\"id\\\":98}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"92\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":93}},\\\"93\\\":{\\\"r\\\":0.98,\\\"g\\\":0.98,\\\"b\\\":0.98,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"94\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":95}},\\\"95\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"96\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":97}},\\\"97\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"98\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":99}},\\\"99\\\":{\\\"r\\\":0.97,\\\"g\\\":0.97,\\\"b\\\":0.97,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"100\\\":{\\\"moveHorizontal\\\":true},\\\"101\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"sourceAttrName\\\":\\\"getHelpText\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"getCloseHelp\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":102},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"102\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"103\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"sourceAttrName\\\":\\\"fire\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"initiateShutdown\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":104},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"104\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"105\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":106}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":117},\\\"derivationIds\\\":[null,\\\"F4925AAB-BF54-4AEB-9E7B-320C9D4B4080\\\",\\\"C86F465C-6365-4721-8660-501F6FFEF7F7\\\"],\\\"id\\\":\\\"0695E0E8-F1CA-47E4-BCBB-7A6B177E828B\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":122},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":123},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"accessibleInInactiveWindow\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":124},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":125},\\\"value\\\":false,\\\"toggle\\\":false,\\\"isActive\\\":true,\\\"normalFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"lighterFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":126},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":106},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":135},{\\\"__isSmartRef__\\\":true,\\\"id\\\":137}],\\\"doNotSerialize\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"doNotCopyProperties\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"showsHalos\\\":false,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.WindowControl\\\"},\\\"106\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":107},\\\"derivationIds\\\":[null,\\\"1D39DD03-2AED-41C4-86F6-AAB8C3C0AC2D\\\",\\\"65A86700-AB70-482D-9B44-F4C69D548B68\\\"],\\\"id\\\":\\\"7C2772B7-4A9B-419E-BF87-0F27FA689716\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":111},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":112}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":114},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":8,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":115},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":116},\\\"_MaxTextWidth\\\":17,\\\"_MinTextWidth\\\":17,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"evalEnabled\\\":false,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"_TextColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"showsHalos\\\":false,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"107\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":108},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":109},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":110},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":64},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"108\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"109\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"110\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"111\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"112\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":113},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":106},\\\"storedString\\\":\\\"M\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"113\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"114\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":106},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"115\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"116\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"117\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":118},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":119},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":120},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":121},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":76},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":5,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"118\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"119\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"120\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"121\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"122\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"123\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"124\\\":{\\\"x\\\":3,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"125\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"126\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":127},{\\\"__isSmartRef__\\\":true,\\\"id\\\":129},{\\\"__isSmartRef__\\\":true,\\\"id\\\":131},{\\\"__isSmartRef__\\\":true,\\\"id\\\":133}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"127\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":128}},\\\"128\\\":{\\\"r\\\":0.98,\\\"g\\\":0.98,\\\"b\\\":0.98,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"129\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":130}},\\\"130\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"131\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":132}},\\\"132\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"133\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":134}},\\\"134\\\":{\\\"r\\\":0.97,\\\"g\\\":0.97,\\\"b\\\":0.97,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"135\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"sourceAttrName\\\":\\\"getHelpText\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"getMenuHelp\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":136},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"136\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"137\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"sourceAttrName\\\":\\\"fire\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"showTargetMorphMenu\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":138},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"138\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"139\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":140}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":151},\\\"derivationIds\\\":[null,\\\"B6528F42-D46F-4E52-B478-6B7EDC347563\\\",\\\"32629DC4-B883-4D83-8299-071A8DC1D886\\\"],\\\"id\\\":\\\"95AD85B7-055B-4B6C-BC9B-E1E7F31CDAF4\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":156},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":157},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"accessibleInInactiveWindow\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":158},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":159},\\\"value\\\":false,\\\"toggle\\\":false,\\\"isActive\\\":true,\\\"normalFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"lighterFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":160},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":140},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":169},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":170},{\\\"__isSmartRef__\\\":true,\\\"id\\\":172}],\\\"doNotSerialize\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"doNotCopyProperties\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.WindowControl\\\"},\\\"140\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":141},\\\"derivationIds\\\":[null,\\\"D0176518-E278-474F-B4D4-3EABC937FC52\\\",\\\"CDB5AE69-AE65-4751-81D1-96DE6CA195A0\\\"],\\\"id\\\":\\\"A054C591-A5FA-4468-BCC4-632974F12550\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":145},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":146}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":148},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":8,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":149},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":150},\\\"_MaxTextWidth\\\":17,\\\"_MinTextWidth\\\":17,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"evalEnabled\\\":false,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"_TextColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"141\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":142},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":143},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":144},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":64},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"142\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"143\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"144\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"145\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"146\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":147},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":140},\\\"storedString\\\":\\\"\\u2013\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"147\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"148\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":140},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"149\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"150\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"151\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":152},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":153},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":154},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":155},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":76},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":5,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"152\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"153\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"154\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"155\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"156\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"157\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"158\\\":{\\\"x\\\":561,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"159\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"160\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":161},{\\\"__isSmartRef__\\\":true,\\\"id\\\":163},{\\\"__isSmartRef__\\\":true,\\\"id\\\":165},{\\\"__isSmartRef__\\\":true,\\\"id\\\":167}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"161\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":162}},\\\"162\\\":{\\\"r\\\":0.98,\\\"g\\\":0.98,\\\"b\\\":0.98,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"163\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":164}},\\\"164\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"165\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":166}},\\\"166\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"167\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":168}},\\\"168\\\":{\\\"r\\\":0.97,\\\"g\\\":0.97,\\\"b\\\":0.97,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"169\\\":{\\\"moveHorizontal\\\":true},\\\"170\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"sourceAttrName\\\":\\\"getHelpText\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"getCollapseHelp\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":171},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"171\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"172\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"sourceAttrName\\\":\\\"fire\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"toggleCollapse\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":173},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"173\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"174\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"id\\\":\\\"1AB40380-E628-456E-86F7-4D903AB3EC67\\\",\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":175},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"registeredForMouseEvents\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":182},\\\"showsHalos\\\":false,\\\"name\\\":\\\"SyncMorphActivationToggle\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":183},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Core\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":186},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":187},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":188}],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"derivationIds\\\":[127,\\\"F0291F62-F100-480C-AEBF-0230398F7983\\\",\\\"C2F57312-8BCC-4C97-BD7D-A04B932B4965\\\",\\\"4DA3F5A5-6851-4DB7-91A3-BD96827F1D81\\\"],\\\"partTests\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":189},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":194},\\\"distanceToDragEvent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":195},\\\"active\\\":true,\\\"isBeingDragged\\\":false,\\\"isLockOwner\\\":false,\\\"grabbingEnabled\\\":false,\\\"_Rotation\\\":0,\\\"_Scale\\\":1.002003004005006,\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":196},\\\"__LivelyClassName__\\\":\\\"lively.morphic.Box\\\"},\\\"175\\\":{\\\"position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":176},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":177},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":178},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":179},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":180},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":181},\\\"_BorderRadius\\\":5.180000000000001,\\\"_Opacity\\\":1,\\\"_BorderStyle\\\":\\\"solid\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"176\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"177\\\":{\\\"x\\\":17.165916999999986,\\\"y\\\":17.165916999999986,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"178\\\":{\\\"r\\\":0,\\\"g\\\":0,\\\"b\\\":0,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"179\\\":{\\\"r\\\":0,\\\"g\\\":0.8,\\\"b\\\":0,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"180\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"181\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"182\\\":{\\\"x\\\":23,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"183\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/Basic\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"comment\\\":\\\"A simple box morph. A really blue one. Its amazing what you can build out of simple boxes.... Who needs stars when you got blue rectangles!\\\",\\\"migrationLevel\\\":4,\\\"partName\\\":\\\"Rectangle\\\",\\\"changes\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":184}],\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"184\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":185},\\\"author\\\":\\\"fbo\\\",\\\"message\\\":\\\"\\\",\\\"id\\\":\\\"BD1C654D-9100-4B66-BC62-B15FF2498B2B\\\"},\\\"185\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\\\"},\\\"186\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"187\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"188\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"sourceAttrName\\\":\\\"onMouseUp\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"targetMethodName\\\":\\\"change\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"189\\\":{\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":190}},\\\"190\\\":{\\\"test01IsMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":191}},\\\"191\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":192},\\\"source\\\":\\\"function test01IsMorph(aPart) {\\\\n this.assert(aPart.isMorph, 'rectangle should be a morph');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":193},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"192\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":189}},\\\"193\\\":{},\\\"194\\\":{\\\"x\\\":18.163917999999985,\\\"y\\\":17.165916999999986,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"195\\\":{\\\"x\\\":36,\\\"y\\\":-14,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"196\\\":{\\\"onrestore\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":197},\\\"reset\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":205},\\\"deactivate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":209},\\\"activate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":213},\\\"change\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":217}},\\\"197\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":198},\\\"source\\\":\\\"function onrestore() {\\\\n this.reset();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":203},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"198\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":199}},\\\"199\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":200}},\\\"200\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":201},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":202},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"201\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"name\\\":\\\"onrestore\\\"},\\\"202\\\":{},\\\"203\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":204},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"204\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 16:18:20 GMT+0100 (CET)\\\"},\\\"205\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":206},\\\"source\\\":\\\"function reset() {\\\\n this.deactivate();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":207},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"206\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"207\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":208},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"208\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 16:18:36 GMT+0100 (CET)\\\"},\\\"209\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":210},\\\"source\\\":\\\"function deactivate() {\\\\n this.active = false;\\\\n this.setFill(Color.gray);\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":211},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"210\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"211\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":212},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"212\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)\\\"},\\\"213\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":214},\\\"source\\\":\\\"function activate() {\\\\n this.active = true;\\\\n this.setFill(Color.green);\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":215},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"214\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"215\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":216},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"216\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)\\\"},\\\"217\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":218},\\\"source\\\":\\\"function change() {\\\\n this.owner.owner.targetMorph.change();\\\\n if(this.active){\\\\n this.deactivate()\\\\n } else {\\\\n this.activate();\\\\n }\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":219},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"218\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"219\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":220},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"220\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)\\\"},\\\"221\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":222},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":223},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":224},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":225},\\\"_BorderWidth\\\":1,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":226},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":227},\\\"_StrokeOpacity\\\":1,\\\"_BorderRadius\\\":\\\"8px 8px 0px 0px\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"222\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"223\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"224\\\":{\\\"x\\\":600,\\\"y\\\":22,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"225\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"226\\\":{\\\"r\\\":0.4,\\\"g\\\":0.4,\\\"b\\\":0.4,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"227\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":228},{\\\"__isSmartRef__\\\":true,\\\"id\\\":230}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":232},\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\"},\\\"228\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":229}},\\\"229\\\":{\\\"r\\\":1,\\\"g\\\":1,\\\"b\\\":1,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"230\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":231}},\\\"231\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"232\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":1,\\\"__LivelyClassName__\\\":\\\"Rectangle\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"233\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"234\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"235\\\":{\\\"resizeWidth\\\":true,\\\"adjustForNewBounds\\\":true},\\\"236\\\":{\\\"x\\\":0,\\\"y\\\":8,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"237\\\":{\\\"x\\\":600,\\\"y\\\":22,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"238\\\":{\\\"x\\\":409,\\\"y\\\":-14,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"239\\\":{\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":240},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":241},\\\"_BorderWidth\\\":0,\\\"_Fill\\\":null,\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":0,\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":242},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"240\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"241\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"242\\\":{\\\"x\\\":600,\\\"y\\\":400,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"243\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"244\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"245\\\":{\\\"adjustForNewBounds\\\":true},\\\"246\\\":{\\\"x\\\":141,\\\"y\\\":38,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"247\\\":{\\\"x\\\":600,\\\"y\\\":400,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"248\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/BP2012/\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"comment\\\":\\\"A morph that serializes objects that are dropped onto it and writes it to a CouchDB. It also listens via longpolling for changes on the CouchDB\\\",\\\"migrationLevel\\\":4,\\\"partName\\\":\\\"SyncMorph\\\",\\\"changes\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":249},{\\\"__isSmartRef__\\\":true,\\\"id\\\":251},{\\\"__isSmartRef__\\\":true,\\\"id\\\":253},{\\\"__isSmartRef__\\\":true,\\\"id\\\":255},{\\\"__isSmartRef__\\\":true,\\\"id\\\":257}],\\\"revisionOnLoad\\\":146968,\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"249\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":250},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"fixed!\\\",\\\"id\\\":\\\"4E255313-AEF4-4E48-BCE8-4613CD5CB9B6\\\"},\\\"250\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Tue Mar 20 2012 14:57:59 GMT+0100 (CET)\\\"},\\\"251\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":252},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"simplified deletion ...\\\",\\\"id\\\":\\\"689ED967-AB36-4CCC-B8AA-FFDB0BA4E1BC\\\"},\\\"252\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Wed Feb 29 2012 16:00:05 GMT+0100 (CET)\\\"},\\\"253\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":254},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"initial working version\\\",\\\"id\\\":\\\"BA1F77FA-14C3-4D1C-95A8-6688E23CDBF5\\\"},\\\"254\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 13:04:58 GMT+0100 (CET)\\\"},\\\"255\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":256},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"added some tests\\\",\\\"id\\\":\\\"BE52228F-8DCC-4EA0-98FE-A84807380FA5\\\"},\\\"256\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 15:59:49 GMT+0100 (CET)\\\"},\\\"257\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":258},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"fixed positioning bug (now restores relative position to owner aka. SyncMorph)\\\",\\\"id\\\":\\\"A03671ED-8180-4AFE-A443-545DDA45B2E0\\\"},\\\"258\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 16:31:31 GMT+0100 (CET)\\\"},\\\"259\\\":{\\\"x\\\":628.9453329160583,\\\"y\\\":75.51318373083797,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"260\\\":{\\\"x\\\":600,\\\"y\\\":378,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"261\\\":{\\\"resizeWidth\\\":true,\\\"resizeHeight\\\":true},\\\"262\\\":{\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":263}},\\\"263\\\":{\\\"testDefaultDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":264},\\\"testSetDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":267},\\\"testAddPart\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":270},\\\"testObjectDeserialization\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":273},\\\"testEmptyDBObjectIDsOnEmptySubmorphs\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":276},\\\"testDBObjectIDsUpdateOnAdding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":279},\\\"testDBObjectIDsUpdateOnRemove\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":282},\\\"testGetSubmorphByDatabaseID\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":285},\\\"testModifiedMenuItems\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":288}},\\\"264\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":265},\\\"source\\\":\\\"function testDefaultDBName(aPart) {\\\\n aPart.reset();\\\\n this.assert(aPart.getDBName() == aPart.defaultDBName(), 'if no DB name was set the default name should be returned');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":266},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"265\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"266\\\":{},\\\"267\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":268},\\\"source\\\":\\\"function testSetDBName(aPart) {\\\\n aPart.reset();\\\\n var newDBName = \\\\\\\"foobar\\\\\\\";\\\\n aPart.setDBName(newDBName);\\\\n this.assert(aPart.getDBName() != aPart.defaultDBName(), 'the DB name was not updated');\\\\n this.assert(aPart.getDBName() == newDBName);\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":269},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"268\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"269\\\":{},\\\"270\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":271},\\\"source\\\":\\\"function testAddPart(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n // XXX somehow .activate() or .change() does break the test\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n var savedObject = aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n });\\\\n this.assert(savedObject.length === 1, 'there should be one object in the database');\\\\n // XXX object comparison breaks test objects should be the same though\\\\n // this.assert(rect.serialize() == savedObject[0], 'saved object is not the same as serialized object');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":272},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"271\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"272\\\":{},\\\"273\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":274},\\\"source\\\":\\\"function testObjectDeserialization(aPart) {\\\\n var someObject = $world.loadPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n // XXX object comparison breaks test objects should be the same though\\\\n // this.assert(aPart.deserializeMorph(someObject.serialize()) == someObject, 'deserialization did not return same morph');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":275},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"274\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"275\\\":{},\\\"276\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":277},\\\"source\\\":\\\"function testEmptyDBObjectIDsOnEmptySubmorphs(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n aPart.active = true;\\\\n this.assert(aPart.getDBObjectIDs().length === 0, 'DBObjectIDs should be empty if submorphs and DB have no morphs in them');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":278},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"277\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"278\\\":{},\\\"279\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":280},\\\"source\\\":\\\"function testDBObjectIDsUpdateOnAdding(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n this.assert(aPart.getDBObjectIDs().length === 1, 'DBObjectIDs should contain one ID, because one morph was save to the DB');\\\\n this.assert(aPart.getDBObjectIDs()[0] === rect.databaseID, 'DBObjectIDs should contain the same ID as saved in the morph');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":281},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"280\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"281\\\":{},\\\"282\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":283},\\\"source\\\":\\\"function testDBObjectIDsUpdateOnRemove(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n rect.remove();\\\\n this.assert(aPart.getDBObjectIDs().length === 0, 'DBObjectIDs should contain no ID, because the last present morph was deleted from the DB');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":284},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"283\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"284\\\":{},\\\"285\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":286},\\\"source\\\":\\\"function testGetSubmorphByDatabaseID(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n // XXX somehow .activate() or .change() does break the test\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n var savedObjectID = aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\")[0];\\\\n var objectFromGetter = aPart.getSubmorphByDatabaseID(savedObjectID);\\\\n this.assert(savedObjectID === objectFromGetter.databaseID, 'id of searched and retured object are not equal');\\\\n this.assert(rect === objectFromGetter, 'object retured from getSubmorphByDatabaseID is not the original object');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":287},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"286\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"287\\\":{},\\\"288\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":289},\\\"source\\\":\\\"function testModifiedMenuItems(aPart) {\\\\n // XXX $super call in .morphMenuItems breaks test\\\\n // var items = aPart.morphMenuItems();\\\\n // var comparePart = $world.loadPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\").morphMenuItems();\\\\n // this.assert(items.withoutAll(comparePart).length <= 1, 'the new menu does not contain all original menu items');\\\\n // this.assert(items.withoutAll(comparePart)[0] === [\\\\\\\"activate sync\\\\\\\", (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)] || items.withoutAll(comparePart)[0] === [\\\\\\\"deactivate sync\\\\\\\", (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)], 'the new menu does not contain all original menu items');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":290},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"289\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"290\\\":{},\\\"291\\\":{\\\"name\\\":\\\"sync_morph_db\\\",\\\"urlStart\\\":\\\"http://lively-kernel.org/couchdb/\\\",\\\"uri\\\":\\\"http://lively-kernel.org/couchdb/sync_morph_db/\\\",\\\"last_req\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":292},\\\"uuids_cache\\\":[\\\"4af2c2849e784247e4a7bdb03651d54c\\\",\\\"4af2c2849e784247e4a7bdb03651dccc\\\",\\\"4af2c2849e784247e4a7bdb03651dedf\\\",\\\"4af2c2849e784247e4a7bdb03651eae9\\\",\\\"4af2c2849e784247e4a7bdb03651ed88\\\",\\\"4af2c2849e784247e4a7bdb03651fbdb\\\",\\\"4af2c2849e784247e4a7bdb03652065d\\\",\\\"4af2c2849e784247e4a7bdb03652074d\\\",\\\"4af2c2849e784247e4a7bdb03652122a\\\",\\\"4af2c2849e784247e4a7bdb036521f6a\\\",\\\"4af2c2849e784247e4a7bdb036522a40\\\",\\\"4af2c2849e784247e4a7bdb036522a56\\\",\\\"4af2c2849e784247e4a7bdb036522ec5\\\",\\\"4af2c2849e784247e4a7bdb0365238b4\\\",\\\"4af2c2849e784247e4a7bdb0365247c4\\\",\\\"4af2c2849e784247e4a7bdb03652523b\\\",\\\"4af2c2849e784247e4a7bdb03652597f\\\",\\\"4af2c2849e784247e4a7bdb036525b86\\\",\\\"4af2c2849e784247e4a7bdb036526085\\\",\\\"4af2c2849e784247e4a7bdb0365265e6\\\",\\\"4af2c2849e784247e4a7bdb036526ae4\\\",\\\"4af2c2849e784247e4a7bdb036526bbb\\\",\\\"4af2c2849e784247e4a7bdb036526e1c\\\",\\\"4af2c2849e784247e4a7bdb036527cdb\\\",\\\"4af2c2849e784247e4a7bdb03652866e\\\",\\\"4af2c2849e784247e4a7bdb036528d03\\\",\\\"4af2c2849e784247e4a7bdb0365292a0\\\",\\\"4af2c2849e784247e4a7bdb0365295e8\\\",\\\"4af2c2849e784247e4a7bdb036529a80\\\",\\\"4af2c2849e784247e4a7bdb03652a238\\\",\\\"4af2c2849e784247e4a7bdb03652a2f5\\\",\\\"4af2c2849e784247e4a7bdb03652b166\\\",\\\"4af2c2849e784247e4a7bdb03652b562\\\",\\\"4af2c2849e784247e4a7bdb03652b8f1\\\",\\\"4af2c2849e784247e4a7bdb03652becb\\\",\\\"4af2c2849e784247e4a7bdb03652c2e6\\\",\\\"4af2c2849e784247e4a7bdb03652c938\\\",\\\"4af2c2849e784247e4a7bdb03652d50b\\\",\\\"4af2c2849e784247e4a7bdb03652e109\\\",\\\"4af2c2849e784247e4a7bdb03652e5bf\\\",\\\"4af2c2849e784247e4a7bdb03652ed23\\\",\\\"4af2c2849e784247e4a7bdb03652f6d3\\\",\\\"4af2c2849e784247e4a7bdb0365304f0\\\",\\\"4af2c2849e784247e4a7bdb0365313f4\\\",\\\"4af2c2849e784247e4a7bdb0365319dc\\\",\\\"4af2c2849e784247e4a7bdb03653294a\\\",\\\"4af2c2849e784247e4a7bdb036532ed3\\\",\\\"4af2c2849e784247e4a7bdb0365337af\\\",\\\"4af2c2849e784247e4a7bdb036534182\\\",\\\"4af2c2849e784247e4a7bdb036534c11\\\",\\\"4af2c2849e784247e4a7bdb0365353b4\\\",\\\"4af2c2849e784247e4a7bdb0365354cd\\\",\\\"4af2c2849e784247e4a7bdb0365355e5\\\",\\\"4af2c2849e784247e4a7bdb036535b8b\\\",\\\"4af2c2849e784247e4a7bdb036535e07\\\",\\\"4af2c2849e784247e4a7bdb036536598\\\",\\\"4af2c2849e784247e4a7bdb036537545\\\",\\\"4af2c2849e784247e4a7bdb03653809b\\\",\\\"4af2c2849e784247e4a7bdb036538741\\\",\\\"4af2c2849e784247e4a7bdb036538cea\\\",\\\"4af2c2849e784247e4a7bdb036539692\\\",\\\"4af2c2849e784247e4a7bdb036539d34\\\",\\\"4af2c2849e784247e4a7bdb03653a077\\\",\\\"4af2c2849e784247e4a7bdb03653aed0\\\",\\\"4af2c2849e784247e4a7bdb03653b93e\\\",\\\"4af2c2849e784247e4a7bdb03653b9c8\\\",\\\"4af2c2849e784247e4a7bdb03653c64d\\\",\\\"4af2c2849e784247e4a7bdb03653d5e4\\\",\\\"4af2c2849e784247e4a7bdb03653e4f7\\\",\\\"4af2c2849e784247e4a7bdb03653f46d\\\",\\\"4af2c2849e784247e4a7bdb03653fb1f\\\",\\\"4af2c2849e784247e4a7bdb03653fb46\\\",\\\"4af2c2849e784247e4a7bdb036540a64\\\",\\\"4af2c2849e784247e4a7bdb036540b0e\\\",\\\"4af2c2849e784247e4a7bdb036540edc\\\",\\\"4af2c2849e784247e4a7bdb0365417d2\\\",\\\"4af2c2849e784247e4a7bdb036541ceb\\\",\\\"4af2c2849e784247e4a7bdb0365426a0\\\",\\\"4af2c2849e784247e4a7bdb036542985\\\",\\\"4af2c2849e784247e4a7bdb036542a3d\\\",\\\"4af2c2849e784247e4a7bdb036543578\\\",\\\"4af2c2849e784247e4a7bdb03654407f\\\",\\\"4af2c2849e784247e4a7bdb036544962\\\",\\\"4af2c2849e784247e4a7bdb036544d57\\\",\\\"4af2c2849e784247e4a7bdb036544e68\\\",\\\"4af2c2849e784247e4a7bdb03654502c\\\",\\\"4af2c2849e784247e4a7bdb036545ea9\\\",\\\"4af2c2849e784247e4a7bdb036545fb0\\\",\\\"4af2c2849e784247e4a7bdb03654667c\\\",\\\"4af2c2849e784247e4a7bdb036546da4\\\",\\\"4af2c2849e784247e4a7bdb036547b7b\\\",\\\"4af2c2849e784247e4a7bdb0365483ce\\\",\\\"4af2c2849e784247e4a7bdb036548bbf\\\",\\\"4af2c2849e784247e4a7bdb0365491ea\\\",\\\"4af2c2849e784247e4a7bdb036549fae\\\",\\\"4af2c2849e784247e4a7bdb03654a85e\\\"],\\\"docQueue\\\":[],\\\"pollingChanges\\\":true,\\\"__SourceModuleName__\\\":\\\"Global.apps.CouchDB\\\",\\\"last_changes_req\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":299},\\\"last_changes_seq\\\":669,\\\"__LivelyClassName__\\\":\\\"CouchDB\\\"},\\\"292\\\":{\\\"_url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":293},\\\"_isSync\\\":true,\\\"_isBinary\\\":false,\\\"status\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":294},\\\"content\\\":\\\"{\\\\\\\"ok\\\\\\\":true,\\\\\\\"id\\\\\\\":\\\\\\\"4af2c2849e784247e4a7bdb03654afcf\\\\\\\",\\\\\\\"rev\\\\\\\":\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"}\\\\n\\\",\\\"contentDocument\\\":\\\"\\\",\\\"isExisting\\\":true,\\\"subResources\\\":null,\\\"requestHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":297},\\\"responseHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":298},\\\"readystate\\\":4,\\\"__LivelyClassName__\\\":\\\"WebResource\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"293\\\":{\\\"protocol\\\":\\\"http:\\\",\\\"hostname\\\":\\\"www.lively-kernel.org\\\",\\\"pathname\\\":\\\"/couchdb/sync_morph_db/4af2c2849e784247e4a7bdb03654afcf\\\",\\\"search\\\":\\\"?rev=1-8eb79df28cd22d534c2794616f1f6a84\\\",\\\"__LivelyClassName__\\\":\\\"URL\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"294\\\":{\\\"method\\\":\\\"DELETE\\\",\\\"url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":293},\\\"transport\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":295},\\\"exception\\\":null,\\\"__LivelyClassName__\\\":\\\"NetRequestStatus\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"295\\\":{\\\"onloadstart\\\":null,\\\"responseType\\\":\\\"\\\",\\\"statusText\\\":\\\"OK\\\",\\\"withCredentials\\\":false,\\\"response\\\":\\\"{\\\\\\\"ok\\\\\\\":true,\\\\\\\"id\\\\\\\":\\\\\\\"4af2c2849e784247e4a7bdb03654afcf\\\\\\\",\\\\\\\"rev\\\\\\\":\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"}\\\\n\\\",\\\"onabort\\\":null,\\\"upload\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":296},\\\"onerror\\\":null,\\\"status\\\":200,\\\"onprogress\\\":null,\\\"responseXML\\\":null,\\\"onload\\\":null,\\\"readyState\\\":4,\\\"responseText\\\":\\\"{\\\\\\\"ok\\\\\\\":true,\\\\\\\"id\\\\\\\":\\\\\\\"4af2c2849e784247e4a7bdb03654afcf\\\\\\\",\\\\\\\"rev\\\\\\\":\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"}\\\\n\\\"},\\\"296\\\":{\\\"onloadstart\\\":null,\\\"onabort\\\":null,\\\"onerror\\\":null,\\\"onload\\\":null,\\\"onprogress\\\":null},\\\"297\\\":{\\\"Depth\\\":\\\"infinity\\\"},\\\"298\\\":{\\\"Date\\\":\\\"Tue, 27 Mar 2012 14:13:20 GMT\\\",\\\"date\\\":\\\"Tue, 27 Mar 2012 14:13:20 GMT\\\",\\\"Content-Encoding\\\":\\\"gzip\\\",\\\"content-encoding\\\":\\\"gzip\\\",\\\"Transfer-Encoding\\\":\\\"chunked\\\",\\\"transfer-encoding\\\":\\\"chunked\\\",\\\"Connection\\\":\\\"Keep-Alive\\\",\\\"connection\\\":\\\"Keep-Alive\\\",\\\"Server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"Etag\\\":\\\"\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"\\\",\\\"etag\\\":\\\"\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"\\\",\\\"Vary\\\":\\\"Accept-Encoding\\\",\\\"vary\\\":\\\"Accept-Encoding\\\",\\\"Content-Type\\\":\\\"text/plain;charset=utf-8\\\",\\\"content-type\\\":\\\"text/plain;charset=utf-8\\\",\\\"Cache-Control\\\":\\\"must-revalidate\\\",\\\"cache-control\\\":\\\"must-revalidate\\\",\\\"Keep-Alive\\\":\\\"timeout=15, max=94\\\",\\\"keep-alive\\\":\\\"timeout=15, max=94\\\"},\\\"299\\\":{\\\"_url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":300},\\\"_isSync\\\":false,\\\"_isBinary\\\":false,\\\"status\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":301},\\\"content\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\\n\\\",\\\"contentDocument\\\":\\\"\\\",\\\"isExisting\\\":true,\\\"subResources\\\":null,\\\"requestHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":305},\\\"responseHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":306},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":307}],\\\"doNotSerialize\\\":[\\\"$$readystate\\\"],\\\"doNotCopyProperties\\\":[\\\"$$readystate\\\"],\\\"readystate\\\":4,\\\"streamContent\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\",\\\"__LivelyClassName__\\\":\\\"WebResource\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"300\\\":{\\\"protocol\\\":\\\"http:\\\",\\\"hostname\\\":\\\"lively-kernel.org\\\",\\\"pathname\\\":\\\"/couchdb/sync_morph_db/\\\",\\\"__LivelyClassName__\\\":\\\"URL\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"301\\\":{\\\"method\\\":\\\"GET\\\",\\\"url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":302},\\\"transport\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":303},\\\"exception\\\":null,\\\"__LivelyClassName__\\\":\\\"NetRequestStatus\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"302\\\":{\\\"protocol\\\":\\\"http:\\\",\\\"hostname\\\":\\\"www.lively-kernel.org\\\",\\\"pathname\\\":\\\"/couchdb/sync_morph_db/\\\",\\\"__LivelyClassName__\\\":\\\"URL\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"303\\\":{\\\"responseType\\\":\\\"\\\",\\\"responseText\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\\n\\\",\\\"onloadstart\\\":null,\\\"statusText\\\":\\\"OK\\\",\\\"response\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\\n\\\",\\\"readyState\\\":4,\\\"withCredentials\\\":false,\\\"onabort\\\":null,\\\"upload\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":304},\\\"onerror\\\":null,\\\"status\\\":200,\\\"responseXML\\\":null,\\\"onload\\\":null,\\\"onprogress\\\":null},\\\"304\\\":{\\\"onloadstart\\\":null,\\\"onabort\\\":null,\\\"onerror\\\":null,\\\"onload\\\":null,\\\"onprogress\\\":null},\\\"305\\\":{},\\\"306\\\":{\\\"Date\\\":\\\"Tue, 27 Mar 2012 14:12:13 GMT\\\",\\\"date\\\":\\\"Tue, 27 Mar 2012 14:12:13 GMT\\\",\\\"Content-Encoding\\\":\\\"gzip\\\",\\\"content-encoding\\\":\\\"gzip\\\",\\\"Connection\\\":\\\"Keep-Alive\\\",\\\"connection\\\":\\\"Keep-Alive\\\",\\\"Content-Length\\\":\\\"169\\\",\\\"content-length\\\":\\\"169\\\",\\\"Server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"Vary\\\":\\\"Accept-Encoding\\\",\\\"vary\\\":\\\"Accept-Encoding\\\",\\\"Content-Type\\\":\\\"text/plain;charset=utf-8\\\",\\\"content-type\\\":\\\"text/plain;charset=utf-8\\\",\\\"Cache-Control\\\":\\\"must-revalidate\\\",\\\"cache-control\\\":\\\"must-revalidate\\\",\\\"Keep-Alive\\\":\\\"timeout=15, max=69\\\",\\\"keep-alive\\\":\\\"timeout=15, max=69\\\"},\\\"307\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":299},\\\"sourceAttrName\\\":\\\"readystate\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":308},\\\"targetMethodName\\\":\\\"cb\\\",\\\"converterString\\\":\\\"function () { return this.sourceObj; }\\\",\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":309},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":310},\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\"},\\\"308\\\":{},\\\"309\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":299},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":308}},\\\"310\\\":{\\\"converter\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":311}},\\\"311\\\":{\\\"originalFunc\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":309},\\\"source\\\":\\\"function () { return this.sourceObj; }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":312},\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\"},\\\"312\\\":{},\\\"313\\\":{\\\"onrestore\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":314},\\\"deactivate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":322},\\\"getDB\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":326},\\\"updateDBObjectIDs\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":330},\\\"getDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":334},\\\"defaultDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":338},\\\"activate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":342},\\\"change\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":346},\\\"reset\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":350},\\\"saveMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":354},\\\"setDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":358},\\\"deserializeMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":362},\\\"removeMorphWithID\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":366},\\\"updateDB\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":370},\\\"getDBObjectIDs\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":374},\\\"getSubmorphByDatabaseID\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":378},\\\"initialSync\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":382},\\\"morphMenuItems\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":386}},\\\"314\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":315},\\\"source\\\":\\\"function onrestore() {\\\\n this.deactivate();\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":320},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"315\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":316}},\\\"316\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":317}},\\\"317\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":318},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":319},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"318\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"name\\\":\\\"onrestore\\\"},\\\"319\\\":{},\\\"320\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":321},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"321\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:44:42 GMT+0100 (CET)\\\"},\\\"322\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":323},\\\"source\\\":\\\"function deactivate() {\\\\n this.active = false;\\\\n this.getDB().stopPollingChanges();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":324},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"323\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"324\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":325},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"325\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:46:00 GMT+0100 (CET)\\\"},\\\"326\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":327},\\\"source\\\":\\\"function getDB() {\\\\n module('apps.CouchDB').load(true);\\\\n if(!this.db){\\\\n this.db = new CouchDB(this.getDBName());\\\\n }\\\\n return this.db;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":328},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"327\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"328\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":329},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"329\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 13:57:06 GMT+0100 (CET)\\\"},\\\"330\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":331},\\\"source\\\":\\\"function updateDBObjectIDs() {\\\\n this.DBObjectIDs = this.submorphs.pluck(\\\\\\\"databaseID\\\\\\\");\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":332},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"331\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"332\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":333},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"333\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:33:21 GMT+0100 (CET)\\\"},\\\"334\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":335},\\\"source\\\":\\\"function getDBName() {\\\\n return this.dbName || this.defaultDBName()\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":336},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"335\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"336\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":337},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"337\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 13:59:14 GMT+0100 (CET)\\\"},\\\"338\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":339},\\\"source\\\":\\\"function defaultDBName() {\\\\n return \\\\\\\"sync_morph_db\\\\\\\"\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":340},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"339\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"340\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":341},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"341\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 10:16:51 GMT+0100 (CET)\\\"},\\\"342\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":343},\\\"source\\\":\\\"function activate() {\\\\n this.active = true;\\\\n this.initialSync();\\\\n var that = this;\\\\n this.getDB().startPollingChanges(function (change) {\\\\n if(typeof change === \\\\\\\"object\\\\\\\"){\\\\n var morph = that.getSubmorphByDatabaseID(change.id);\\\\n if (change.deleted) {\\\\n //alertOK(that + \\\\\\\" morph to be deleted: \\\\\\\" + morph);\\\\n if (morph){\\\\n that.DBObjectIDs.splice(that.DBObjectIDs.indexOf(change.id),1);\\\\n morph.remove();\\\\n }\\\\n } else {\\\\n //alertOK(that + \\\\\\\" morph to be updated: \\\\\\\" + morph);\\\\n var document = that.getDB().open(change.id);\\\\n var newMorph = that.deserializeMorph(document);\\\\n var relativePosition = newMorph.getPosition();\\\\n if (morph instanceof lively.morphic.Morph) {\\\\n morph = newMorph;\\\\n morph.setPosition(relativePosition);\\\\n } else {\\\\n that.DBObjectIDs.push(change.id);\\\\n that.addMorph(newMorph);\\\\n newMorph.setPosition(relativePosition);\\\\n }\\\\n }\\\\n that.updateDBObjectIDs();\\\\n }\\\\n },\\\\n function(e){\\\\n alert(e);\\\\n throw(e);\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":344},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"343\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"344\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":345},\\\"user\\\":\\\"bsiegmund\\\",\\\"tags\\\":[]},\\\"345\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Tue Mar 20 2012 14:56:36 GMT+0100 (CET)\\\"},\\\"346\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":347},\\\"source\\\":\\\"function change() {\\\\n var that = this;\\\\n require('apps.CouchDB').toRun(function () {\\\\n if (that.active) {\\\\n that.deactivate()\\\\n } else {\\\\n that.activate();\\\\n }\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":348},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"347\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"348\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":349},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"349\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 12:00:23 GMT+0100 (CET)\\\"},\\\"350\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":351},\\\"source\\\":\\\"function reset() {\\\\n this.deactivate();\\\\n this.setDBName(\\\\\\\"\\\\\\\");\\\\n this.updateDBObjectIDs();\\\\n this.db = undefined;\\\\n this.submorphs.invoke(\\\\\\\"remove\\\\\\\");\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":352},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"351\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"352\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":353},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"353\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:43:15 GMT+0100 (CET)\\\"},\\\"354\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":355},\\\"source\\\":\\\"function saveMorph(aMorph) {\\\\n aMorph.databaseID = undefined;\\\\n aMorph.databaseRev = undefined;\\\\n if (this.active) {\\\\n var newMorph = aMorph.serialize();\\\\n var result = this.getDB().save(newMorph);\\\\n if(result.error==\\\\\\\"conflict\\\\\\\"){\\\\n alert(\\\\\\\"an error occured while synching the morph\\\\\\\");\\\\n // XXX implement error awareness\\\\n // var databaseDocument = this.getDB().open(aMorph.databaseID);\\\\n // var window = $world.openPartItem(\\\\\\\"UserStoryDiffViewer\\\\\\\",\\\\\\\"PartsBin/BP2012\\\\\\\");\\\\n // window.get(\\\\\\\"DiffViewer\\\\\\\").makeDiff(databaseDocument,aMorph);\\\\n } else {\\\\n aMorph.databaseID = result.id;\\\\n aMorph.databaseRev = result.rev;\\\\n // alertOK(\\\\\\\"morph with new ID \\\\\\\" + aMorph.databaseID + \\\\\\\" saved\\\\\\\");\\\\n // aMorph.originalProperties = newMorph;\\\\n }\\\\n this.updateDBObjectIDs();\\\\n }\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":356},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"355\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"356\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":357},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"357\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sun Feb 26 2012 19:42:35 GMT+0100 (CET)\\\"},\\\"358\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":359},\\\"source\\\":\\\"function setDBName(aName) {\\\\n return this.dbName = aName;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":360},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"359\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"360\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":361},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"361\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:00:43 GMT+0100 (CET)\\\"},\\\"362\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":363},\\\"source\\\":\\\"function deserializeMorph(databaseDocument) {\\\\n var serializer = ObjectGraphLinearizer.forNewLivelyCopy();\\\\n var jso = JSON.parse(databaseDocument.morph);\\\\n morph = serializer.deserializeJso(jso);\\\\n morph.withAllSubmorphsDo(function() { if (typeof this.setNewId == 'function') this.setNewId(); });\\\\n morph.databaseID = databaseDocument._id;\\\\n morph.databaseRev = databaseDocument._rev;\\\\n return morph;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":364},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"363\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"364\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":365},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"365\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:07:18 GMT+0100 (CET)\\\"},\\\"366\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":367},\\\"source\\\":\\\"function removeMorphWithID(anID) {\\\\n if (this.active) {\\\\n var morph = this.getDB().open(anID)\\\\n morph && this.getDB().deleteDoc(morph);\\\\n // alertOK(\\\\\\\"morph with id \\\\\\\" + morph._id + \\\\\\\" deleted\\\\\\\");\\\\n }\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":368},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"367\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"368\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":369},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"369\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Wed Feb 29 2012 15:59:40 GMT+0100 (CET)\\\"},\\\"370\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":371},\\\"source\\\":\\\"function updateDB() {\\\\n if (this.active) {\\\\n var currentIDs = this.submorphs.pluck(\\\\\\\"databaseID\\\\\\\");\\\\n var that = this;\\\\n this.getDBObjectIDs().length > 0 &&\\\\n this.getDBObjectIDs().withoutAll(currentIDs).length > 0 &&\\\\n this.getDBObjectIDs().withoutAll(currentIDs).each(function (ea) {\\\\n that.removeMorphWithID(ea);\\\\n });\\\\n }\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":372},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"371\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"372\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":373},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"373\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sun Feb 26 2012 19:46:30 GMT+0100 (CET)\\\"},\\\"374\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":375},\\\"source\\\":\\\"function getDBObjectIDs() {\\\\n return this.DBObjectIDs || [];\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":376},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"375\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"376\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":377},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"377\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:46:21 GMT+0100 (CET)\\\"},\\\"378\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":379},\\\"source\\\":\\\"function getSubmorphByDatabaseID(anID) {\\\\n return this.submorphs.find(function (ea) {\\\\n return anID == ea.databaseID;\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":380},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"379\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"380\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":381},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"381\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 18:20:48 GMT+0100 (CET)\\\"},\\\"382\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":383},\\\"source\\\":\\\"function initialSync() {\\\\n var that = this;\\\\n // write new morphs to DB\\\\n this.submorphs.length > 0 && this.submorphs.select(function (ea) {\\\\n return ea.databaseID == undefined && ea.databaseRev == undefined;\\\\n }).each(function (ea) {\\\\n that.saveMorph(ea);\\\\n });\\\\n this.updateDBObjectIDs();\\\\n // fetch current morphs from DB\\\\n var docs = this.getDB().allDocs();\\\\n var allObjs = docs.rows.pluck(\\\\\\\"id\\\\\\\").withoutAll(this.getDBObjectIDs()).collect(function (ea) {\\\\n return that.getDB().open(ea); \\\\n });\\\\n allObjs.length > 0 && allObjs.each(function (ea) {\\\\n morph = that.deserializeMorph(ea);\\\\n that.addMorph(morph);\\\\n });\\\\n this.updateDBObjectIDs();\\\\n // delete the morphs that have been deleted in DB\\\\n this.getDBObjectIDs() && this.getDBObjectIDs().withoutAll(docs.rows.pluck(\\\\\\\"id\\\\\\\")).each(function (ea) {\\\\n that.getSubmorphByDatabaseID(ea).remove();\\\\n });\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":384},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"383\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"384\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":385},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"385\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:41:48 GMT+0100 (CET)\\\"},\\\"386\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":387},\\\"source\\\":\\\"function morphMenuItems() {\\\\n items = $super();\\\\n var itemString = \\\\\\\"activate sync\\\\\\\";\\\\n if (this.active) itemString = \\\\\\\"de\\\\\\\" + itemString;\\\\n items.push([itemString, (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)]);\\\\n return items;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":392},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"387\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":388}},\\\"388\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":389}},\\\"389\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":390},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":391},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"390\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"name\\\":\\\"morphMenuItems\\\"},\\\"391\\\":{},\\\"392\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":393},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"393\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 12:04:50 GMT+0100 (CET)\\\"},\\\"isSimplifiedRegistry\\\":true}}\"}\n","status":200,"responseType":"","onloadstart":null,"response":"{\"_id\":\"4af2c2849e784247e4a7bdb03654a85e\",\"_rev\":\"1-9c11124903569769d3ca9b4c4982d346\",\"morph\":\"{\\\"id\\\":0,\\\"registry\\\":{\\\"0\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":1}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":11},\\\"id\\\":\\\"6BD226B6-7AAF-4070-B926-E005D20E4CE5\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":18},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":19},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":false,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":20},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Core\\\",\\\"showsHalos\\\":false,\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":21},\\\"name\\\":\\\"Ellipse\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":22},\\\"derivationIds\\\":[113],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"isBeingDragged\\\":false,\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Morph\\\"},\\\"1\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"id\\\":\\\"220043E2-BE60-42B4-91EF-98288AE85258\\\",\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":2},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"registeredForMouseEvents\\\":true,\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":7},\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":8},\\\"showsHalos\\\":false,\\\"name\\\":\\\"Image\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":9},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":10},\\\"derivationIds\\\":[707],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":0},\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Image\\\"},\\\"2\\\":{\\\"position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":3},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":4},\\\"_ImageURL\\\":\\\"http://lively-kernel.org/repository/webwerkstatt/media/hpi_logo.png\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":5},\\\"isLoaded\\\":true,\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":6},\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Image\\\"},\\\"3\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"4\\\":{\\\"x\\\":100,\\\"y\\\":100,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"5\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"setImageURL\\\":\\\"setImageURLHTML\\\",\\\"getNativeExtent\\\":\\\"getNativeExtentHTML\\\"},\\\"6\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"7\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":1},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"8\\\":{\\\"x\\\":-3,\\\"y\\\":-1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"9\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/Basic\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"partName\\\":\\\"Image\\\",\\\"migrationLevel\\\":2,\\\"comment\\\":\\\"an pixmap image morph\\\",\\\"revisionOnLoad\\\":140039,\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"10\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"11\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":12},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":13},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":14},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":15},\\\"_BorderWidth\\\":3.184,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":16},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":17},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"_BorderRadius\\\":0,\\\"_Opacity\\\":1,\\\"_BorderStyle\\\":\\\"solid\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Ellipse\\\"},\\\"12\\\":{\\\"x\\\":-50,\\\"y\\\":-50,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"13\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"14\\\":{\\\"x\\\":100,\\\"y\\\":100,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"15\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"16\\\":{\\\"r\\\":0,\\\"g\\\":0,\\\"b\\\":0,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"17\\\":{\\\"r\\\":0,\\\"g\\\":0.8,\\\"b\\\":0,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"18\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"19\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":0},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"20\\\":{\\\"x\\\":311,\\\"y\\\":177,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"21\\\":{},\\\"22\\\":{\\\"partName\\\":\\\"Ellipse\\\",\\\"requiredModules\\\":[],\\\"migrationLevel\\\":4,\\\"partsSpaceName\\\":\\\"PartsBin/Basic\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"revisionOnLoad\\\":140039,\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"23\\\":{\\\"scripts\\\":[],\\\"id\\\":\\\"AEF73F54-39F0-4394-B8BF-8632CD06257A\\\",\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":24},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"registeredForMouseEvents\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":31},\\\"showsHalos\\\":false,\\\"name\\\":\\\"SyncMorph\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":32},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Core\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":39},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":40},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":41}],\\\"doNotSerialize\\\":[\\\"$$submorphs\\\"],\\\"doNotCopyProperties\\\":[\\\"$$submorphs\\\"],\\\"derivationIds\\\":[127,\\\"BA060905-7B8C-4608-88DB-509EEB0346C8\\\",\\\"43E78AE8-0A85-4BC9-A66B-019EFE67E370\\\"],\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":260},\\\"isBeingDragged\\\":false,\\\"prevScroll\\\":[0,0],\\\"dbName\\\":\\\"\\\",\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":261},\\\"active\\\":true,\\\"DBObjectIDs\\\":[],\\\"partTests\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262},\\\"isLockOwner\\\":false,\\\"grabbingEnabled\\\":false,\\\"db\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":291},\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":0}],\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":313},\\\"__LivelyClassName__\\\":\\\"lively.morphic.Box\\\"},\\\"24\\\":{\\\"position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":25},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":26},\\\"_BorderWidth\\\":1,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":27},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":28},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":29},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":30},\\\"_BorderRadius\\\":12.58,\\\"_Opacity\\\":1,\\\"_BorderStyle\\\":\\\"solid\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"25\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"26\\\":{\\\"x\\\":600,\\\"y\\\":379,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"27\\\":{\\\"r\\\":0.372,\\\"g\\\":0.369,\\\"b\\\":0.372,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"28\\\":{\\\"r\\\":0.839,\\\"g\\\":0.839,\\\"b\\\":0.839,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"29\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"30\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"31\\\":{\\\"x\\\":0,\\\"y\\\":21,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"32\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/BP2012\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"comment\\\":\\\"A morph that serializes objects that are dropped onto it and writes it to a CouchDB. It also listens via longpolling for changes on the CouchDB\\\",\\\"migrationLevel\\\":4,\\\"partName\\\":\\\"SyncMorph\\\",\\\"changes\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":33},{\\\"__isSmartRef__\\\":true,\\\"id\\\":35},{\\\"__isSmartRef__\\\":true,\\\"id\\\":37}],\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"33\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":34},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"initial working version\\\",\\\"id\\\":\\\"BA1F77FA-14C3-4D1C-95A8-6688E23CDBF5\\\"},\\\"34\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 13:04:58 GMT+0100 (CET)\\\"},\\\"35\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":36},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"added some tests\\\",\\\"id\\\":\\\"BE52228F-8DCC-4EA0-98FE-A84807380FA5\\\"},\\\"36\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 15:59:49 GMT+0100 (CET)\\\"},\\\"37\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":38},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"fixed positioning bug (now restores relative position to owner aka. SyncMorph)\\\",\\\"id\\\":\\\"A03671ED-8180-4AFE-A443-545DDA45B2E0\\\"},\\\"38\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 16:31:31 GMT+0100 (CET)\\\"},\\\"39\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"40\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"41\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"sourceAttrName\\\":\\\"submorphs\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"targetMethodName\\\":\\\"updateDB\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"42\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},{\\\"__isSmartRef__\\\":true,\\\"id\\\":43}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":239},\\\"derivationIds\\\":[null,\\\"CF24F636-B788-496E-BCDF-0B41AEF46478\\\",\\\"9942B2CA-FDCA-4A8B-8B4B-CA98A4D67A9A\\\"],\\\"id\\\":\\\"66853B08-BE71-437E-832D-961CF24599BB\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":243},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":244},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"draggingEnabled\\\":true,\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":245},\\\"LK2\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":246},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":247},\\\"targetMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"titleBar\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"contentOffset\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":31},\\\"collapsedTransform\\\":null,\\\"collapsedExtent\\\":null,\\\"expandedTransform\\\":null,\\\"expandedExtent\\\":null,\\\"ignoreEventsOnExpand\\\":false,\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":248},\\\"name\\\":\\\"SyncMorph\\\",\\\"highlighted\\\":true,\\\"prevDragPos\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":259},\\\"isBeingDragged\\\":false,\\\"prevScroll\\\":[0,0],\\\"showsHalos\\\":false,\\\"isCopyMorphRef\\\":true,\\\"morphRefId\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"grabbingEnabled\\\":true,\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"moved\\\":true,\\\"headRevision\\\":142112,\\\"_Rotation\\\":0,\\\"_Scale\\\":1,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Window\\\",\\\"withLayers\\\":[\\\"Global.lively.morphic.GrabbingLayer\\\"],\\\"withoutLayers\\\":[\\\"Global.lively.morphic.GrabbingLayer\\\"]},\\\"43\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":221},\\\"derivationIds\\\":[null,\\\"8063B9D1-E31A-42B9-AEDF-F96496304762\\\",\\\"E01E7D4A-6396-4093-895B-0212ED19277D\\\"],\\\"id\\\":\\\"6D063567-B770-4976-90F9-EA009730B1DB\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":233},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":234},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":235},\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":236},\\\"windowMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},\\\"closeButton\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"menuButton\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"collapseButton\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":237},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"showsHalos\\\":false,\\\"distanceToDragEvent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":238},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"prevScroll\\\":[0,0],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.TitleBar\\\"},\\\"44\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":45},\\\"derivationIds\\\":[null,\\\"67024D50-BF5B-40D8-AE5B-8D692BB6B986\\\",\\\"9F84EDEA-122D-4A5D-8E26-CD584EFD6425\\\"],\\\"id\\\":\\\"DD24C4AF-9A95-4828-9F1A-C708837F403C\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":51},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":52}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":54},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":10,\\\"evalEnabled\\\":false,\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":55},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":56},\\\"_MaxTextWidth\\\":541,\\\"_MinTextWidth\\\":541,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":57},\\\"showsHalos\\\":false,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"prevScroll\\\":[0,0],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"45\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":46},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":47},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":48},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":49},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"_BorderRadius\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"46\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"47\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"48\\\":{\\\"x\\\":541,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"49\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"50\\\":{\\\"r\\\":0,\\\"g\\\":0,\\\"b\\\":0,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"51\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"52\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":53},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},\\\"storedString\\\":\\\"SyncMorph\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"53\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"54\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":44},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"55\\\":{\\\"resizeWidth\\\":true},\\\"56\\\":{\\\"x\\\":541,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"57\\\":{\\\"x\\\":20,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"58\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":59}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":71},\\\"derivationIds\\\":[null,\\\"8FCD2996-141C-4874-BB99-6249261F791F\\\",\\\"44FDCD83-627C-4ABD-BDB3-A5342ED8D171\\\"],\\\"id\\\":\\\"AFB4B85D-4E94-45F6-90BD-38A460EB2A64\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":87},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":88},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"accessibleInInactiveWindow\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":89},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":90},\\\"value\\\":false,\\\"toggle\\\":false,\\\"isActive\\\":true,\\\"normalFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"lighterFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":91},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":59},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":100},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":101},{\\\"__isSmartRef__\\\":true,\\\"id\\\":103}],\\\"doNotSerialize\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"doNotCopyProperties\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"prevScroll\\\":[0,0],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.WindowControl\\\"},\\\"59\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":60},\\\"derivationIds\\\":[null,\\\"1F343953-83E1-45A7-B3C9-261FC6F273C2\\\",\\\"EB0B0A63-B1A6-422B-8EC5-F6DEE53A7543\\\"],\\\"id\\\":\\\"57F317B7-6650-4B56-9F11-7A31643E2771\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":65},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":66}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":68},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":8,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":69},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":70},\\\"_MaxTextWidth\\\":17,\\\"_MinTextWidth\\\":17,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"evalEnabled\\\":false,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"_TextColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"prevScroll\\\":[0,0],\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"60\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":61},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":62},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":63},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":64},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"61\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"62\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"63\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"64\\\":{\\\"x\\\":0,\\\"y\\\":3,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"65\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"66\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":67},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":59},\\\"storedString\\\":\\\"X\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"67\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"68\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":59},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"69\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"70\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"71\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":72},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":73},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":74},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":75},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":76},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":5,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"72\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"73\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"74\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"75\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"76\\\":{\\\"r\\\":0.7411764705882353,\\\"g\\\":0.7450980392156863,\\\"b\\\":0.7529411764705882,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"77\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":78},{\\\"__isSmartRef__\\\":true,\\\"id\\\":80},{\\\"__isSmartRef__\\\":true,\\\"id\\\":82},{\\\"__isSmartRef__\\\":true,\\\"id\\\":84}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"78\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":79}},\\\"79\\\":{\\\"r\\\":0.9600000000000001,\\\"g\\\":0.9600000000000001,\\\"b\\\":0.9600000000000001,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"80\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":81}},\\\"81\\\":{\\\"r\\\":0.8200000000000001,\\\"g\\\":0.8200000000000001,\\\"b\\\":0.8200000000000001,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"82\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":83}},\\\"83\\\":{\\\"r\\\":0.8200000000000001,\\\"g\\\":0.8200000000000001,\\\"b\\\":0.8200000000000001,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"84\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":85}},\\\"85\\\":{\\\"r\\\":0.94,\\\"g\\\":0.94,\\\"b\\\":0.94,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"86\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"87\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"88\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"89\\\":{\\\"x\\\":580,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"90\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"91\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":92},{\\\"__isSmartRef__\\\":true,\\\"id\\\":94},{\\\"__isSmartRef__\\\":true,\\\"id\\\":96},{\\\"__isSmartRef__\\\":true,\\\"id\\\":98}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"92\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":93}},\\\"93\\\":{\\\"r\\\":0.98,\\\"g\\\":0.98,\\\"b\\\":0.98,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"94\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":95}},\\\"95\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"96\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":97}},\\\"97\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"98\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":99}},\\\"99\\\":{\\\"r\\\":0.97,\\\"g\\\":0.97,\\\"b\\\":0.97,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"100\\\":{\\\"moveHorizontal\\\":true},\\\"101\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"sourceAttrName\\\":\\\"getHelpText\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"getCloseHelp\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":102},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"102\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"103\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"sourceAttrName\\\":\\\"fire\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"initiateShutdown\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":104},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"104\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":58},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"105\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":106}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":117},\\\"derivationIds\\\":[null,\\\"F4925AAB-BF54-4AEB-9E7B-320C9D4B4080\\\",\\\"C86F465C-6365-4721-8660-501F6FFEF7F7\\\"],\\\"id\\\":\\\"0695E0E8-F1CA-47E4-BCBB-7A6B177E828B\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":122},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":123},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"accessibleInInactiveWindow\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":124},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":125},\\\"value\\\":false,\\\"toggle\\\":false,\\\"isActive\\\":true,\\\"normalFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"lighterFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":126},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":106},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":135},{\\\"__isSmartRef__\\\":true,\\\"id\\\":137}],\\\"doNotSerialize\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"doNotCopyProperties\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"showsHalos\\\":false,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.WindowControl\\\"},\\\"106\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":107},\\\"derivationIds\\\":[null,\\\"1D39DD03-2AED-41C4-86F6-AAB8C3C0AC2D\\\",\\\"65A86700-AB70-482D-9B44-F4C69D548B68\\\"],\\\"id\\\":\\\"7C2772B7-4A9B-419E-BF87-0F27FA689716\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":111},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":112}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":114},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":8,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":115},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":116},\\\"_MaxTextWidth\\\":17,\\\"_MinTextWidth\\\":17,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"evalEnabled\\\":false,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"_TextColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"showsHalos\\\":false,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"107\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":108},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":109},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":110},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":64},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"108\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"109\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"110\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"111\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"112\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":113},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":106},\\\"storedString\\\":\\\"M\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"113\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"114\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":106},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"115\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"116\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"117\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":118},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":119},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":120},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":121},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":76},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":5,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"118\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"119\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"120\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"121\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"122\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"123\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"124\\\":{\\\"x\\\":3,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"125\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"126\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":127},{\\\"__isSmartRef__\\\":true,\\\"id\\\":129},{\\\"__isSmartRef__\\\":true,\\\"id\\\":131},{\\\"__isSmartRef__\\\":true,\\\"id\\\":133}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"127\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":128}},\\\"128\\\":{\\\"r\\\":0.98,\\\"g\\\":0.98,\\\"b\\\":0.98,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"129\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":130}},\\\"130\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"131\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":132}},\\\"132\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"133\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":134}},\\\"134\\\":{\\\"r\\\":0.97,\\\"g\\\":0.97,\\\"b\\\":0.97,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"135\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"sourceAttrName\\\":\\\"getHelpText\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"getMenuHelp\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":136},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"136\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"137\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"sourceAttrName\\\":\\\"fire\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"showTargetMorphMenu\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":138},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"138\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":105},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"139\\\":{\\\"submorphs\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":140}],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":151},\\\"derivationIds\\\":[null,\\\"B6528F42-D46F-4E52-B478-6B7EDC347563\\\",\\\"32629DC4-B883-4D83-8299-071A8DC1D886\\\"],\\\"id\\\":\\\"95AD85B7-055B-4B6C-BC9B-E1E7F31CDAF4\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":156},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":157},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"accessibleInInactiveWindow\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":158},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":159},\\\"value\\\":false,\\\"toggle\\\":false,\\\"isActive\\\":true,\\\"normalFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"lighterFill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":160},\\\"label\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":140},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"layout\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":169},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":170},{\\\"__isSmartRef__\\\":true,\\\"id\\\":172}],\\\"doNotSerialize\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"doNotCopyProperties\\\":[\\\"$$getHelpText\\\",\\\"$$fire\\\"],\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Widgets\\\",\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.WindowControl\\\"},\\\"140\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":141},\\\"derivationIds\\\":[null,\\\"D0176518-E278-474F-B4D4-3EABC937FC52\\\",\\\"CDB5AE69-AE65-4751-81D1-96DE6CA195A0\\\"],\\\"id\\\":\\\"A054C591-A5FA-4468-BCC4-632974F12550\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":145},\\\"_WhiteSpaceHandling\\\":\\\"pre-wrap\\\",\\\"textChunks\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":146}],\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":148},\\\"grabbingEnabled\\\":false,\\\"droppingEnabled\\\":false,\\\"halosEnabled\\\":true,\\\"_ClipMode\\\":\\\"hidden\\\",\\\"fixedWidth\\\":true,\\\"fixedHeight\\\":true,\\\"allowInput\\\":false,\\\"_FontFamily\\\":\\\"Helvetica\\\",\\\"_FontSize\\\":8,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":149},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":150},\\\"_MaxTextWidth\\\":17,\\\"_MinTextWidth\\\":17,\\\"_MaxTextHeight\\\":null,\\\"_MinTextHeight\\\":null,\\\"evalEnabled\\\":false,\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"isLabel\\\":true,\\\"_HandStyle\\\":\\\"default\\\",\\\"_TextColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Align\\\":\\\"center\\\",\\\"eventsAreIgnored\\\":true,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"attributeConnections\\\":[],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"isLockOwner\\\":false,\\\"__LivelyClassName__\\\":\\\"lively.morphic.Text\\\"},\\\"141\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":142},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":143},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":144},\\\"_ClipMode\\\":\\\"hidden\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":64},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":50},\\\"_Fill\\\":null,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"142\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"143\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"144\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"145\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\",\\\"updateText\\\":\\\"updateTextHTML\\\",\\\"setTextExtent\\\":\\\"setTextExtentHTML\\\",\\\"setMaxTextWidth\\\":\\\"setMaxTextWidthHTML\\\",\\\"setMaxTextHeight\\\":\\\"setMaxTextHeightHTML\\\",\\\"setMinTextWidth\\\":\\\"setMinTextWidthHTML\\\",\\\"setMinTextHeight\\\":\\\"setMinTextHeightHTML\\\",\\\"getTextExtent\\\":\\\"getTextExtentHTML\\\",\\\"getTextString\\\":\\\"getTextStringHTML\\\",\\\"ignoreTextEvents\\\":\\\"ignoreTextEventsHTML\\\",\\\"unignoreTextEvents\\\":\\\"unignoreTextEventsHTML\\\",\\\"enableTextEvents\\\":\\\"enableTextEventsHTML\\\",\\\"setFontFamily\\\":\\\"setFontFamilyHTML\\\",\\\"setFontSize\\\":\\\"setFontSizeHTML\\\",\\\"setTextColor\\\":\\\"setTextColorHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setAlign\\\":\\\"setAlignHTML\\\",\\\"setVerticalAlign\\\":\\\"setVerticalAlignHTML\\\",\\\"setDisplay\\\":\\\"setDisplayHTML\\\",\\\"setWhiteSpaceHandling\\\":\\\"setWhiteSpaceHandlingHTML\\\",\\\"focusMorph\\\":\\\"focusMorphHTML\\\"},\\\"146\\\":{\\\"style\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":147},\\\"chunkOwner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":140},\\\"storedString\\\":\\\"\\u2013\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextChunk\\\"},\\\"147\\\":{\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.TextCore\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.TextEmphasis\\\"},\\\"148\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":140},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"149\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"150\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"151\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":152},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":153},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":154},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":155},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":76},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":77},\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":5,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"152\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"153\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"154\\\":{\\\"x\\\":17,\\\"y\\\":17,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"155\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"156\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"157\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"158\\\":{\\\"x\\\":561,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"159\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"160\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":161},{\\\"__isSmartRef__\\\":true,\\\"id\\\":163},{\\\"__isSmartRef__\\\":true,\\\"id\\\":165},{\\\"__isSmartRef__\\\":true,\\\"id\\\":167}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":86},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\"},\\\"161\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":162}},\\\"162\\\":{\\\"r\\\":0.98,\\\"g\\\":0.98,\\\"b\\\":0.98,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"163\\\":{\\\"offset\\\":0.4,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":164}},\\\"164\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"165\\\":{\\\"offset\\\":0.6,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":166}},\\\"166\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"167\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":168}},\\\"168\\\":{\\\"r\\\":0.97,\\\"g\\\":0.97,\\\"b\\\":0.97,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"169\\\":{\\\"moveHorizontal\\\":true},\\\"170\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"sourceAttrName\\\":\\\"getHelpText\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"getCollapseHelp\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":171},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"171\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"172\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"sourceAttrName\\\":\\\"fire\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"targetMethodName\\\":\\\"toggleCollapse\\\",\\\"converter\\\":null,\\\"converterString\\\":null,\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":173},\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"173\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":139},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42}},\\\"174\\\":{\\\"submorphs\\\":[],\\\"scripts\\\":[],\\\"id\\\":\\\"1AB40380-E628-456E-86F7-4D903AB3EC67\\\",\\\"shape\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":175},\\\"droppingEnabled\\\":true,\\\"halosEnabled\\\":true,\\\"registeredForMouseEvents\\\":true,\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":182},\\\"showsHalos\\\":false,\\\"name\\\":\\\"SyncMorphActivationToggle\\\",\\\"partsBinMetaInfo\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":183},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Core\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":186},\\\"eventHandler\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":187},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":188}],\\\"doNotSerialize\\\":[],\\\"doNotCopyProperties\\\":[],\\\"derivationIds\\\":[127,\\\"F0291F62-F100-480C-AEBF-0230398F7983\\\",\\\"C2F57312-8BCC-4C97-BD7D-A04B932B4965\\\",\\\"4DA3F5A5-6851-4DB7-91A3-BD96827F1D81\\\"],\\\"partTests\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":189},\\\"owner\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"priorExtent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":194},\\\"distanceToDragEvent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":195},\\\"active\\\":true,\\\"isBeingDragged\\\":false,\\\"isLockOwner\\\":false,\\\"grabbingEnabled\\\":false,\\\"_Rotation\\\":0,\\\"_Scale\\\":1.002003004005006,\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":196},\\\"__LivelyClassName__\\\":\\\"lively.morphic.Box\\\"},\\\"175\\\":{\\\"position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":176},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":177},\\\"_BorderWidth\\\":0,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":178},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":179},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":180},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":181},\\\"_BorderRadius\\\":5.180000000000001,\\\"_Opacity\\\":1,\\\"_BorderStyle\\\":\\\"solid\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"176\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"177\\\":{\\\"x\\\":17.165916999999986,\\\"y\\\":17.165916999999986,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"178\\\":{\\\"r\\\":0,\\\"g\\\":0,\\\"b\\\":0,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"179\\\":{\\\"r\\\":0,\\\"g\\\":0.8,\\\"b\\\":0,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"180\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"181\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"182\\\":{\\\"x\\\":23,\\\"y\\\":3,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"183\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/Basic\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"comment\\\":\\\"A simple box morph. A really blue one. Its amazing what you can build out of simple boxes.... Who needs stars when you got blue rectangles!\\\",\\\"migrationLevel\\\":4,\\\"partName\\\":\\\"Rectangle\\\",\\\"changes\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":184}],\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"184\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":185},\\\"author\\\":\\\"fbo\\\",\\\"message\\\":\\\"\\\",\\\"id\\\":\\\"BD1C654D-9100-4B66-BC62-B15FF2498B2B\\\"},\\\"185\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)\\\"},\\\"186\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"187\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"188\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"sourceAttrName\\\":\\\"onMouseUp\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"targetMethodName\\\":\\\"change\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\",\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\"},\\\"189\\\":{\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":190}},\\\"190\\\":{\\\"test01IsMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":191}},\\\"191\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":192},\\\"source\\\":\\\"function test01IsMorph(aPart) {\\\\n this.assert(aPart.isMorph, 'rectangle should be a morph');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":193},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"192\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":189}},\\\"193\\\":{},\\\"194\\\":{\\\"x\\\":18.163917999999985,\\\"y\\\":17.165916999999986,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"195\\\":{\\\"x\\\":36,\\\"y\\\":-14,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"196\\\":{\\\"onrestore\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":197},\\\"reset\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":205},\\\"deactivate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":209},\\\"activate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":213},\\\"change\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":217}},\\\"197\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":198},\\\"source\\\":\\\"function onrestore() {\\\\n this.reset();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":203},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"198\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":199}},\\\"199\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":200}},\\\"200\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":201},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":202},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"201\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174},\\\"name\\\":\\\"onrestore\\\"},\\\"202\\\":{},\\\"203\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":204},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"204\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 16:18:20 GMT+0100 (CET)\\\"},\\\"205\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":206},\\\"source\\\":\\\"function reset() {\\\\n this.deactivate();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":207},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"206\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"207\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":208},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"208\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 16:18:36 GMT+0100 (CET)\\\"},\\\"209\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":210},\\\"source\\\":\\\"function deactivate() {\\\\n this.active = false;\\\\n this.setFill(Color.gray);\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":211},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"210\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"211\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":212},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"212\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)\\\"},\\\"213\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":214},\\\"source\\\":\\\"function activate() {\\\\n this.active = true;\\\\n this.setFill(Color.green);\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":215},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"214\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"215\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":216},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"216\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)\\\"},\\\"217\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":218},\\\"source\\\":\\\"function change() {\\\\n this.owner.owner.targetMorph.change();\\\\n if(this.active){\\\\n this.deactivate()\\\\n } else {\\\\n this.activate();\\\\n }\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":219},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"218\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":174}},\\\"219\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":220},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"220\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)\\\"},\\\"221\\\":{\\\"_Position\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":222},\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":223},\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":224},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":225},\\\"_BorderWidth\\\":1,\\\"_BorderColor\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":226},\\\"_Fill\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":227},\\\"_StrokeOpacity\\\":1,\\\"_BorderRadius\\\":\\\"8px 8px 0px 0px\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"222\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"223\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"224\\\":{\\\"x\\\":600,\\\"y\\\":22,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"225\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"226\\\":{\\\"r\\\":0.4,\\\"g\\\":0.4,\\\"b\\\":0.4,\\\"a\\\":1,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Color\\\"},\\\"227\\\":{\\\"stops\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":228},{\\\"__isSmartRef__\\\":true,\\\"id\\\":230}],\\\"vector\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":232},\\\"__LivelyClassName__\\\":\\\"lively.morphic.LinearGradient\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\"},\\\"228\\\":{\\\"offset\\\":0,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":229}},\\\"229\\\":{\\\"r\\\":1,\\\"g\\\":1,\\\"b\\\":1,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"230\\\":{\\\"offset\\\":1,\\\"color\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":231}},\\\"231\\\":{\\\"r\\\":0.91,\\\"g\\\":0.91,\\\"b\\\":0.91,\\\"a\\\":1,\\\"__LivelyClassName__\\\":\\\"Color\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"232\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":1,\\\"__LivelyClassName__\\\":\\\"Rectangle\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"233\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"234\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":43},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"235\\\":{\\\"resizeWidth\\\":true,\\\"adjustForNewBounds\\\":true},\\\"236\\\":{\\\"x\\\":0,\\\"y\\\":8,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"237\\\":{\\\"x\\\":600,\\\"y\\\":22,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"238\\\":{\\\"x\\\":409,\\\"y\\\":-14,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"239\\\":{\\\"renderContextTable\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":240},\\\"_ClipMode\\\":\\\"visible\\\",\\\"_Padding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":241},\\\"_BorderWidth\\\":0,\\\"_Fill\\\":null,\\\"_StrokeOpacity\\\":0,\\\"_BorderRadius\\\":0,\\\"_Extent\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":242},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Shapes\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.Shapes.Rectangle\\\"},\\\"240\\\":{\\\"init\\\":\\\"initHTML\\\",\\\"appendShape\\\":\\\"renderHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setPadding\\\":\\\"setPaddingHTML\\\",\\\"setFill\\\":\\\"setFillHTML\\\",\\\"setBorderColor\\\":\\\"setBorderColorHTML\\\",\\\"setBorderWidth\\\":\\\"setBorderWidthHTML\\\",\\\"setStrokeOpacity\\\":\\\"setStrokeOpacityHTML\\\",\\\"setBorderRadius\\\":\\\"setBorderRadiusHTML\\\",\\\"setBorderStyle\\\":\\\"setBorderStyleHTML\\\",\\\"setOpacity\\\":\\\"setOpacityHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\"},\\\"241\\\":{\\\"x\\\":0,\\\"y\\\":0,\\\"width\\\":0,\\\"height\\\":0,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Rectangle\\\"},\\\"242\\\":{\\\"x\\\":600,\\\"y\\\":400,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"243\\\":{\\\"replaceRenderContext\\\":\\\"replaceRenderContextHTML\\\",\\\"init\\\":\\\"initHTML\\\",\\\"append\\\":\\\"appendHTML\\\",\\\"remove\\\":\\\"removeHTML\\\",\\\"triggerEvent\\\":\\\"triggerEventHTML\\\",\\\"setTransform\\\":\\\"setTransformHTML\\\",\\\"setPosition\\\":\\\"setPositionHTML\\\",\\\"setRotation\\\":\\\"setRotationHTML\\\",\\\"setExtent\\\":\\\"setExtentHTML\\\",\\\"setScale\\\":\\\"setScaleHTML\\\",\\\"setVisible\\\":\\\"setVisibleHTML\\\",\\\"adjustOrigin\\\":\\\"adjustOriginHTML\\\",\\\"setPivotPoint\\\":\\\"setPivotPointHTML\\\",\\\"setClipMode\\\":\\\"setClipModeHTML\\\",\\\"showsVerticalScrollBar\\\":\\\"showsVerticalScrollBarHTML\\\",\\\"showsHorizontalScrollBar\\\":\\\"showsHorizontalScrollBarHTML\\\",\\\"getScrollBarExtent\\\":\\\"getScrollBarExtentHTML\\\",\\\"setHandStyle\\\":\\\"setHandStyleHTML\\\",\\\"setPointerEvents\\\":\\\"setPointerEventsHTML\\\",\\\"setToolTip\\\":\\\"setToolTipHTML\\\",\\\"focus\\\":\\\"focusHTML\\\",\\\"blur\\\":\\\"blurHTML\\\",\\\"setFocusable\\\":\\\"setFocusableHTML\\\"},\\\"244\\\":{\\\"morph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":42},\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Events\\\",\\\"__LivelyClassName__\\\":\\\"lively.morphic.EventHandler\\\"},\\\"245\\\":{\\\"adjustForNewBounds\\\":true},\\\"246\\\":{\\\"x\\\":141,\\\"y\\\":38,\\\"__LivelyClassName__\\\":\\\"Point\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\"},\\\"247\\\":{\\\"x\\\":600,\\\"y\\\":400,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"248\\\":{\\\"partsSpaceName\\\":\\\"PartsBin/BP2012/\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.PartsBin\\\",\\\"comment\\\":\\\"A morph that serializes objects that are dropped onto it and writes it to a CouchDB. It also listens via longpolling for changes on the CouchDB\\\",\\\"migrationLevel\\\":4,\\\"partName\\\":\\\"SyncMorph\\\",\\\"changes\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":249},{\\\"__isSmartRef__\\\":true,\\\"id\\\":251},{\\\"__isSmartRef__\\\":true,\\\"id\\\":253},{\\\"__isSmartRef__\\\":true,\\\"id\\\":255},{\\\"__isSmartRef__\\\":true,\\\"id\\\":257}],\\\"revisionOnLoad\\\":146968,\\\"__LivelyClassName__\\\":\\\"lively.PartsBin.PartsBinMetaInfo\\\"},\\\"249\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":250},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"fixed!\\\",\\\"id\\\":\\\"4E255313-AEF4-4E48-BCE8-4613CD5CB9B6\\\"},\\\"250\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Tue Mar 20 2012 14:57:59 GMT+0100 (CET)\\\"},\\\"251\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":252},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"simplified deletion ...\\\",\\\"id\\\":\\\"689ED967-AB36-4CCC-B8AA-FFDB0BA4E1BC\\\"},\\\"252\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Wed Feb 29 2012 16:00:05 GMT+0100 (CET)\\\"},\\\"253\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":254},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"initial working version\\\",\\\"id\\\":\\\"BA1F77FA-14C3-4D1C-95A8-6688E23CDBF5\\\"},\\\"254\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 13:04:58 GMT+0100 (CET)\\\"},\\\"255\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":256},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"added some tests\\\",\\\"id\\\":\\\"BE52228F-8DCC-4EA0-98FE-A84807380FA5\\\"},\\\"256\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 15:59:49 GMT+0100 (CET)\\\"},\\\"257\\\":{\\\"date\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":258},\\\"author\\\":\\\"conradcalmez\\\",\\\"message\\\":\\\"fixed positioning bug (now restores relative position to owner aka. SyncMorph)\\\",\\\"id\\\":\\\"A03671ED-8180-4AFE-A443-545DDA45B2E0\\\"},\\\"258\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 16:31:31 GMT+0100 (CET)\\\"},\\\"259\\\":{\\\"x\\\":628.9453329160583,\\\"y\\\":75.51318373083797,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"260\\\":{\\\"x\\\":600,\\\"y\\\":378,\\\"__SourceModuleName__\\\":\\\"Global.lively.morphic.Graphics\\\",\\\"__LivelyClassName__\\\":\\\"Point\\\"},\\\"261\\\":{\\\"resizeWidth\\\":true,\\\"resizeHeight\\\":true},\\\"262\\\":{\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":263}},\\\"263\\\":{\\\"testDefaultDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":264},\\\"testSetDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":267},\\\"testAddPart\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":270},\\\"testObjectDeserialization\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":273},\\\"testEmptyDBObjectIDsOnEmptySubmorphs\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":276},\\\"testDBObjectIDsUpdateOnAdding\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":279},\\\"testDBObjectIDsUpdateOnRemove\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":282},\\\"testGetSubmorphByDatabaseID\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":285},\\\"testModifiedMenuItems\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":288}},\\\"264\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":265},\\\"source\\\":\\\"function testDefaultDBName(aPart) {\\\\n aPart.reset();\\\\n this.assert(aPart.getDBName() == aPart.defaultDBName(), 'if no DB name was set the default name should be returned');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":266},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"265\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"266\\\":{},\\\"267\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":268},\\\"source\\\":\\\"function testSetDBName(aPart) {\\\\n aPart.reset();\\\\n var newDBName = \\\\\\\"foobar\\\\\\\";\\\\n aPart.setDBName(newDBName);\\\\n this.assert(aPart.getDBName() != aPart.defaultDBName(), 'the DB name was not updated');\\\\n this.assert(aPart.getDBName() == newDBName);\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":269},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"268\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"269\\\":{},\\\"270\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":271},\\\"source\\\":\\\"function testAddPart(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n // XXX somehow .activate() or .change() does break the test\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n var savedObject = aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n });\\\\n this.assert(savedObject.length === 1, 'there should be one object in the database');\\\\n // XXX object comparison breaks test objects should be the same though\\\\n // this.assert(rect.serialize() == savedObject[0], 'saved object is not the same as serialized object');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":272},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"271\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"272\\\":{},\\\"273\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":274},\\\"source\\\":\\\"function testObjectDeserialization(aPart) {\\\\n var someObject = $world.loadPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n // XXX object comparison breaks test objects should be the same though\\\\n // this.assert(aPart.deserializeMorph(someObject.serialize()) == someObject, 'deserialization did not return same morph');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":275},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"274\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"275\\\":{},\\\"276\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":277},\\\"source\\\":\\\"function testEmptyDBObjectIDsOnEmptySubmorphs(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n aPart.active = true;\\\\n this.assert(aPart.getDBObjectIDs().length === 0, 'DBObjectIDs should be empty if submorphs and DB have no morphs in them');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":278},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"277\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"278\\\":{},\\\"279\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":280},\\\"source\\\":\\\"function testDBObjectIDsUpdateOnAdding(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n this.assert(aPart.getDBObjectIDs().length === 1, 'DBObjectIDs should contain one ID, because one morph was save to the DB');\\\\n this.assert(aPart.getDBObjectIDs()[0] === rect.databaseID, 'DBObjectIDs should contain the same ID as saved in the morph');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":281},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"280\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"281\\\":{},\\\"282\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":283},\\\"source\\\":\\\"function testDBObjectIDsUpdateOnRemove(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n rect.remove();\\\\n this.assert(aPart.getDBObjectIDs().length === 0, 'DBObjectIDs should contain no ID, because the last present morph was deleted from the DB');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":284},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"283\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"284\\\":{},\\\"285\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":286},\\\"source\\\":\\\"function testGetSubmorphByDatabaseID(aPart) {\\\\n aPart.reset();\\\\n aPart.setDBName(aPart.getDBName() + \\\\\\\"_test\\\\\\\");\\\\n aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\").collect(function (ea) {\\\\n return aPart.getDB().open(ea);\\\\n }).each(function (ea) {\\\\n aPart.getDB().deleteDoc(ea);\\\\n });\\\\n // XXX somehow .activate() or .change() does break the test\\\\n aPart.active = true;\\\\n var rect = $world.openPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\");\\\\n rect.setPosition(aPart.getPosition().addXY(10,10));\\\\n rect.dropOn(aPart);\\\\n var savedObjectID = aPart.getDB().allDocs().rows.pluck(\\\\\\\"id\\\\\\\")[0];\\\\n var objectFromGetter = aPart.getSubmorphByDatabaseID(savedObjectID);\\\\n this.assert(savedObjectID === objectFromGetter.databaseID, 'id of searched and retured object are not equal');\\\\n this.assert(rect === objectFromGetter, 'object retured from getSubmorphByDatabaseID is not the original object');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":287},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"286\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"287\\\":{},\\\"288\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":289},\\\"source\\\":\\\"function testModifiedMenuItems(aPart) {\\\\n // XXX $super call in .morphMenuItems breaks test\\\\n // var items = aPart.morphMenuItems();\\\\n // var comparePart = $world.loadPartItem(\\\\\\\"Rectangle\\\\\\\", \\\\\\\"PartsBin/Basic\\\\\\\").morphMenuItems();\\\\n // this.assert(items.withoutAll(comparePart).length <= 1, 'the new menu does not contain all original menu items');\\\\n // this.assert(items.withoutAll(comparePart)[0] === [\\\\\\\"activate sync\\\\\\\", (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)] || items.withoutAll(comparePart)[0] === [\\\\\\\"deactivate sync\\\\\\\", (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)], 'the new menu does not contain all original menu items');\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":290},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"289\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":262}},\\\"290\\\":{},\\\"291\\\":{\\\"name\\\":\\\"sync_morph_db\\\",\\\"urlStart\\\":\\\"http://lively-kernel.org/couchdb/\\\",\\\"uri\\\":\\\"http://lively-kernel.org/couchdb/sync_morph_db/\\\",\\\"last_req\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":292},\\\"uuids_cache\\\":[\\\"4af2c2849e784247e4a7bdb03651d54c\\\",\\\"4af2c2849e784247e4a7bdb03651dccc\\\",\\\"4af2c2849e784247e4a7bdb03651dedf\\\",\\\"4af2c2849e784247e4a7bdb03651eae9\\\",\\\"4af2c2849e784247e4a7bdb03651ed88\\\",\\\"4af2c2849e784247e4a7bdb03651fbdb\\\",\\\"4af2c2849e784247e4a7bdb03652065d\\\",\\\"4af2c2849e784247e4a7bdb03652074d\\\",\\\"4af2c2849e784247e4a7bdb03652122a\\\",\\\"4af2c2849e784247e4a7bdb036521f6a\\\",\\\"4af2c2849e784247e4a7bdb036522a40\\\",\\\"4af2c2849e784247e4a7bdb036522a56\\\",\\\"4af2c2849e784247e4a7bdb036522ec5\\\",\\\"4af2c2849e784247e4a7bdb0365238b4\\\",\\\"4af2c2849e784247e4a7bdb0365247c4\\\",\\\"4af2c2849e784247e4a7bdb03652523b\\\",\\\"4af2c2849e784247e4a7bdb03652597f\\\",\\\"4af2c2849e784247e4a7bdb036525b86\\\",\\\"4af2c2849e784247e4a7bdb036526085\\\",\\\"4af2c2849e784247e4a7bdb0365265e6\\\",\\\"4af2c2849e784247e4a7bdb036526ae4\\\",\\\"4af2c2849e784247e4a7bdb036526bbb\\\",\\\"4af2c2849e784247e4a7bdb036526e1c\\\",\\\"4af2c2849e784247e4a7bdb036527cdb\\\",\\\"4af2c2849e784247e4a7bdb03652866e\\\",\\\"4af2c2849e784247e4a7bdb036528d03\\\",\\\"4af2c2849e784247e4a7bdb0365292a0\\\",\\\"4af2c2849e784247e4a7bdb0365295e8\\\",\\\"4af2c2849e784247e4a7bdb036529a80\\\",\\\"4af2c2849e784247e4a7bdb03652a238\\\",\\\"4af2c2849e784247e4a7bdb03652a2f5\\\",\\\"4af2c2849e784247e4a7bdb03652b166\\\",\\\"4af2c2849e784247e4a7bdb03652b562\\\",\\\"4af2c2849e784247e4a7bdb03652b8f1\\\",\\\"4af2c2849e784247e4a7bdb03652becb\\\",\\\"4af2c2849e784247e4a7bdb03652c2e6\\\",\\\"4af2c2849e784247e4a7bdb03652c938\\\",\\\"4af2c2849e784247e4a7bdb03652d50b\\\",\\\"4af2c2849e784247e4a7bdb03652e109\\\",\\\"4af2c2849e784247e4a7bdb03652e5bf\\\",\\\"4af2c2849e784247e4a7bdb03652ed23\\\",\\\"4af2c2849e784247e4a7bdb03652f6d3\\\",\\\"4af2c2849e784247e4a7bdb0365304f0\\\",\\\"4af2c2849e784247e4a7bdb0365313f4\\\",\\\"4af2c2849e784247e4a7bdb0365319dc\\\",\\\"4af2c2849e784247e4a7bdb03653294a\\\",\\\"4af2c2849e784247e4a7bdb036532ed3\\\",\\\"4af2c2849e784247e4a7bdb0365337af\\\",\\\"4af2c2849e784247e4a7bdb036534182\\\",\\\"4af2c2849e784247e4a7bdb036534c11\\\",\\\"4af2c2849e784247e4a7bdb0365353b4\\\",\\\"4af2c2849e784247e4a7bdb0365354cd\\\",\\\"4af2c2849e784247e4a7bdb0365355e5\\\",\\\"4af2c2849e784247e4a7bdb036535b8b\\\",\\\"4af2c2849e784247e4a7bdb036535e07\\\",\\\"4af2c2849e784247e4a7bdb036536598\\\",\\\"4af2c2849e784247e4a7bdb036537545\\\",\\\"4af2c2849e784247e4a7bdb03653809b\\\",\\\"4af2c2849e784247e4a7bdb036538741\\\",\\\"4af2c2849e784247e4a7bdb036538cea\\\",\\\"4af2c2849e784247e4a7bdb036539692\\\",\\\"4af2c2849e784247e4a7bdb036539d34\\\",\\\"4af2c2849e784247e4a7bdb03653a077\\\",\\\"4af2c2849e784247e4a7bdb03653aed0\\\",\\\"4af2c2849e784247e4a7bdb03653b93e\\\",\\\"4af2c2849e784247e4a7bdb03653b9c8\\\",\\\"4af2c2849e784247e4a7bdb03653c64d\\\",\\\"4af2c2849e784247e4a7bdb03653d5e4\\\",\\\"4af2c2849e784247e4a7bdb03653e4f7\\\",\\\"4af2c2849e784247e4a7bdb03653f46d\\\",\\\"4af2c2849e784247e4a7bdb03653fb1f\\\",\\\"4af2c2849e784247e4a7bdb03653fb46\\\",\\\"4af2c2849e784247e4a7bdb036540a64\\\",\\\"4af2c2849e784247e4a7bdb036540b0e\\\",\\\"4af2c2849e784247e4a7bdb036540edc\\\",\\\"4af2c2849e784247e4a7bdb0365417d2\\\",\\\"4af2c2849e784247e4a7bdb036541ceb\\\",\\\"4af2c2849e784247e4a7bdb0365426a0\\\",\\\"4af2c2849e784247e4a7bdb036542985\\\",\\\"4af2c2849e784247e4a7bdb036542a3d\\\",\\\"4af2c2849e784247e4a7bdb036543578\\\",\\\"4af2c2849e784247e4a7bdb03654407f\\\",\\\"4af2c2849e784247e4a7bdb036544962\\\",\\\"4af2c2849e784247e4a7bdb036544d57\\\",\\\"4af2c2849e784247e4a7bdb036544e68\\\",\\\"4af2c2849e784247e4a7bdb03654502c\\\",\\\"4af2c2849e784247e4a7bdb036545ea9\\\",\\\"4af2c2849e784247e4a7bdb036545fb0\\\",\\\"4af2c2849e784247e4a7bdb03654667c\\\",\\\"4af2c2849e784247e4a7bdb036546da4\\\",\\\"4af2c2849e784247e4a7bdb036547b7b\\\",\\\"4af2c2849e784247e4a7bdb0365483ce\\\",\\\"4af2c2849e784247e4a7bdb036548bbf\\\",\\\"4af2c2849e784247e4a7bdb0365491ea\\\",\\\"4af2c2849e784247e4a7bdb036549fae\\\",\\\"4af2c2849e784247e4a7bdb03654a85e\\\"],\\\"docQueue\\\":[],\\\"pollingChanges\\\":true,\\\"__SourceModuleName__\\\":\\\"Global.apps.CouchDB\\\",\\\"last_changes_req\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":299},\\\"last_changes_seq\\\":669,\\\"__LivelyClassName__\\\":\\\"CouchDB\\\"},\\\"292\\\":{\\\"_url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":293},\\\"_isSync\\\":true,\\\"_isBinary\\\":false,\\\"status\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":294},\\\"content\\\":\\\"{\\\\\\\"ok\\\\\\\":true,\\\\\\\"id\\\\\\\":\\\\\\\"4af2c2849e784247e4a7bdb03654afcf\\\\\\\",\\\\\\\"rev\\\\\\\":\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"}\\\\n\\\",\\\"contentDocument\\\":\\\"\\\",\\\"isExisting\\\":true,\\\"subResources\\\":null,\\\"requestHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":297},\\\"responseHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":298},\\\"readystate\\\":4,\\\"__LivelyClassName__\\\":\\\"WebResource\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"293\\\":{\\\"protocol\\\":\\\"http:\\\",\\\"hostname\\\":\\\"www.lively-kernel.org\\\",\\\"pathname\\\":\\\"/couchdb/sync_morph_db/4af2c2849e784247e4a7bdb03654afcf\\\",\\\"search\\\":\\\"?rev=1-8eb79df28cd22d534c2794616f1f6a84\\\",\\\"__LivelyClassName__\\\":\\\"URL\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"294\\\":{\\\"method\\\":\\\"DELETE\\\",\\\"url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":293},\\\"transport\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":295},\\\"exception\\\":null,\\\"__LivelyClassName__\\\":\\\"NetRequestStatus\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"295\\\":{\\\"onloadstart\\\":null,\\\"responseType\\\":\\\"\\\",\\\"statusText\\\":\\\"OK\\\",\\\"withCredentials\\\":false,\\\"response\\\":\\\"{\\\\\\\"ok\\\\\\\":true,\\\\\\\"id\\\\\\\":\\\\\\\"4af2c2849e784247e4a7bdb03654afcf\\\\\\\",\\\\\\\"rev\\\\\\\":\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"}\\\\n\\\",\\\"onabort\\\":null,\\\"upload\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":296},\\\"onerror\\\":null,\\\"status\\\":200,\\\"onprogress\\\":null,\\\"responseXML\\\":null,\\\"onload\\\":null,\\\"readyState\\\":4,\\\"responseText\\\":\\\"{\\\\\\\"ok\\\\\\\":true,\\\\\\\"id\\\\\\\":\\\\\\\"4af2c2849e784247e4a7bdb03654afcf\\\\\\\",\\\\\\\"rev\\\\\\\":\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"}\\\\n\\\"},\\\"296\\\":{\\\"onloadstart\\\":null,\\\"onabort\\\":null,\\\"onerror\\\":null,\\\"onload\\\":null,\\\"onprogress\\\":null},\\\"297\\\":{\\\"Depth\\\":\\\"infinity\\\"},\\\"298\\\":{\\\"Date\\\":\\\"Tue, 27 Mar 2012 14:13:20 GMT\\\",\\\"date\\\":\\\"Tue, 27 Mar 2012 14:13:20 GMT\\\",\\\"Content-Encoding\\\":\\\"gzip\\\",\\\"content-encoding\\\":\\\"gzip\\\",\\\"Transfer-Encoding\\\":\\\"chunked\\\",\\\"transfer-encoding\\\":\\\"chunked\\\",\\\"Connection\\\":\\\"Keep-Alive\\\",\\\"connection\\\":\\\"Keep-Alive\\\",\\\"Server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"Etag\\\":\\\"\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"\\\",\\\"etag\\\":\\\"\\\\\\\"2-f61257d3091912890632a2039681d042\\\\\\\"\\\",\\\"Vary\\\":\\\"Accept-Encoding\\\",\\\"vary\\\":\\\"Accept-Encoding\\\",\\\"Content-Type\\\":\\\"text/plain;charset=utf-8\\\",\\\"content-type\\\":\\\"text/plain;charset=utf-8\\\",\\\"Cache-Control\\\":\\\"must-revalidate\\\",\\\"cache-control\\\":\\\"must-revalidate\\\",\\\"Keep-Alive\\\":\\\"timeout=15, max=94\\\",\\\"keep-alive\\\":\\\"timeout=15, max=94\\\"},\\\"299\\\":{\\\"_url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":300},\\\"_isSync\\\":false,\\\"_isBinary\\\":false,\\\"status\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":301},\\\"content\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\\n\\\",\\\"contentDocument\\\":\\\"\\\",\\\"isExisting\\\":true,\\\"subResources\\\":null,\\\"requestHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":305},\\\"responseHeaders\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":306},\\\"attributeConnections\\\":[{\\\"__isSmartRef__\\\":true,\\\"id\\\":307}],\\\"doNotSerialize\\\":[\\\"$$readystate\\\"],\\\"doNotCopyProperties\\\":[\\\"$$readystate\\\"],\\\"readystate\\\":4,\\\"streamContent\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\",\\\"__LivelyClassName__\\\":\\\"WebResource\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"300\\\":{\\\"protocol\\\":\\\"http:\\\",\\\"hostname\\\":\\\"lively-kernel.org\\\",\\\"pathname\\\":\\\"/couchdb/sync_morph_db/\\\",\\\"__LivelyClassName__\\\":\\\"URL\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"301\\\":{\\\"method\\\":\\\"GET\\\",\\\"url\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":302},\\\"transport\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":303},\\\"exception\\\":null,\\\"__LivelyClassName__\\\":\\\"NetRequestStatus\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"302\\\":{\\\"protocol\\\":\\\"http:\\\",\\\"hostname\\\":\\\"www.lively-kernel.org\\\",\\\"pathname\\\":\\\"/couchdb/sync_morph_db/\\\",\\\"__LivelyClassName__\\\":\\\"URL\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.Network\\\"},\\\"303\\\":{\\\"responseType\\\":\\\"\\\",\\\"responseText\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\\n\\\",\\\"onloadstart\\\":null,\\\"statusText\\\":\\\"OK\\\",\\\"response\\\":\\\"{\\\\\\\"db_name\\\\\\\":\\\\\\\"sync_morph_db\\\\\\\",\\\\\\\"doc_count\\\\\\\":1,\\\\\\\"doc_del_count\\\\\\\":122,\\\\\\\"update_seq\\\\\\\":658,\\\\\\\"purge_seq\\\\\\\":0,\\\\\\\"compact_running\\\\\\\":false,\\\\\\\"disk_size\\\\\\\":52961368,\\\\\\\"instance_start_time\\\\\\\":\\\\\\\"1330333885045558\\\\\\\",\\\\\\\"disk_format_version\\\\\\\":5}\\\\n\\\",\\\"readyState\\\":4,\\\"withCredentials\\\":false,\\\"onabort\\\":null,\\\"upload\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":304},\\\"onerror\\\":null,\\\"status\\\":200,\\\"responseXML\\\":null,\\\"onload\\\":null,\\\"onprogress\\\":null},\\\"304\\\":{\\\"onloadstart\\\":null,\\\"onabort\\\":null,\\\"onerror\\\":null,\\\"onload\\\":null,\\\"onprogress\\\":null},\\\"305\\\":{},\\\"306\\\":{\\\"Date\\\":\\\"Tue, 27 Mar 2012 14:12:13 GMT\\\",\\\"date\\\":\\\"Tue, 27 Mar 2012 14:12:13 GMT\\\",\\\"Content-Encoding\\\":\\\"gzip\\\",\\\"content-encoding\\\":\\\"gzip\\\",\\\"Connection\\\":\\\"Keep-Alive\\\",\\\"connection\\\":\\\"Keep-Alive\\\",\\\"Content-Length\\\":\\\"169\\\",\\\"content-length\\\":\\\"169\\\",\\\"Server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"server\\\":\\\"CouchDB/0.11.0 (Erlang OTP/R14B)\\\",\\\"Vary\\\":\\\"Accept-Encoding\\\",\\\"vary\\\":\\\"Accept-Encoding\\\",\\\"Content-Type\\\":\\\"text/plain;charset=utf-8\\\",\\\"content-type\\\":\\\"text/plain;charset=utf-8\\\",\\\"Cache-Control\\\":\\\"must-revalidate\\\",\\\"cache-control\\\":\\\"must-revalidate\\\",\\\"Keep-Alive\\\":\\\"timeout=15, max=69\\\",\\\"keep-alive\\\":\\\"timeout=15, max=69\\\"},\\\"307\\\":{\\\"sourceObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":299},\\\"sourceAttrName\\\":\\\"readystate\\\",\\\"targetObj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":308},\\\"targetMethodName\\\":\\\"cb\\\",\\\"converterString\\\":\\\"function () { return this.sourceObj; }\\\",\\\"updater\\\":null,\\\"updaterString\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":309},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":310},\\\"__LivelyClassName__\\\":\\\"AttributeConnection\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.bindings\\\"},\\\"308\\\":{},\\\"309\\\":{\\\"source\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":299},\\\"target\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":308}},\\\"310\\\":{\\\"converter\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":311}},\\\"311\\\":{\\\"originalFunc\\\":null,\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":309},\\\"source\\\":\\\"function () { return this.sourceObj; }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":312},\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\",\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\"},\\\"312\\\":{},\\\"313\\\":{\\\"onrestore\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":314},\\\"deactivate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":322},\\\"getDB\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":326},\\\"updateDBObjectIDs\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":330},\\\"getDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":334},\\\"defaultDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":338},\\\"activate\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":342},\\\"change\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":346},\\\"reset\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":350},\\\"saveMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":354},\\\"setDBName\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":358},\\\"deserializeMorph\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":362},\\\"removeMorphWithID\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":366},\\\"updateDB\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":370},\\\"getDBObjectIDs\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":374},\\\"getSubmorphByDatabaseID\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":378},\\\"initialSync\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":382},\\\"morphMenuItems\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":386}},\\\"314\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":315},\\\"source\\\":\\\"function onrestore() {\\\\n this.deactivate();\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":320},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"315\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":316}},\\\"316\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":317}},\\\"317\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":318},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":319},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"318\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"name\\\":\\\"onrestore\\\"},\\\"319\\\":{},\\\"320\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":321},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"321\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:44:42 GMT+0100 (CET)\\\"},\\\"322\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":323},\\\"source\\\":\\\"function deactivate() {\\\\n this.active = false;\\\\n this.getDB().stopPollingChanges();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":324},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"323\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"324\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":325},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"325\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:46:00 GMT+0100 (CET)\\\"},\\\"326\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":327},\\\"source\\\":\\\"function getDB() {\\\\n module('apps.CouchDB').load(true);\\\\n if(!this.db){\\\\n this.db = new CouchDB(this.getDBName());\\\\n }\\\\n return this.db;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":328},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"327\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"328\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":329},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"329\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 13:57:06 GMT+0100 (CET)\\\"},\\\"330\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":331},\\\"source\\\":\\\"function updateDBObjectIDs() {\\\\n this.DBObjectIDs = this.submorphs.pluck(\\\\\\\"databaseID\\\\\\\");\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":332},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"331\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"332\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":333},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"333\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:33:21 GMT+0100 (CET)\\\"},\\\"334\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":335},\\\"source\\\":\\\"function getDBName() {\\\\n return this.dbName || this.defaultDBName()\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":336},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"335\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"336\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":337},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"337\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 13:59:14 GMT+0100 (CET)\\\"},\\\"338\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":339},\\\"source\\\":\\\"function defaultDBName() {\\\\n return \\\\\\\"sync_morph_db\\\\\\\"\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":340},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"339\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"340\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":341},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"341\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 10:16:51 GMT+0100 (CET)\\\"},\\\"342\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":343},\\\"source\\\":\\\"function activate() {\\\\n this.active = true;\\\\n this.initialSync();\\\\n var that = this;\\\\n this.getDB().startPollingChanges(function (change) {\\\\n if(typeof change === \\\\\\\"object\\\\\\\"){\\\\n var morph = that.getSubmorphByDatabaseID(change.id);\\\\n if (change.deleted) {\\\\n //alertOK(that + \\\\\\\" morph to be deleted: \\\\\\\" + morph);\\\\n if (morph){\\\\n that.DBObjectIDs.splice(that.DBObjectIDs.indexOf(change.id),1);\\\\n morph.remove();\\\\n }\\\\n } else {\\\\n //alertOK(that + \\\\\\\" morph to be updated: \\\\\\\" + morph);\\\\n var document = that.getDB().open(change.id);\\\\n var newMorph = that.deserializeMorph(document);\\\\n var relativePosition = newMorph.getPosition();\\\\n if (morph instanceof lively.morphic.Morph) {\\\\n morph = newMorph;\\\\n morph.setPosition(relativePosition);\\\\n } else {\\\\n that.DBObjectIDs.push(change.id);\\\\n that.addMorph(newMorph);\\\\n newMorph.setPosition(relativePosition);\\\\n }\\\\n }\\\\n that.updateDBObjectIDs();\\\\n }\\\\n },\\\\n function(e){\\\\n alert(e);\\\\n throw(e);\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":344},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"343\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"344\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":345},\\\"user\\\":\\\"bsiegmund\\\",\\\"tags\\\":[]},\\\"345\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Tue Mar 20 2012 14:56:36 GMT+0100 (CET)\\\"},\\\"346\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":347},\\\"source\\\":\\\"function change() {\\\\n var that = this;\\\\n require('apps.CouchDB').toRun(function () {\\\\n if (that.active) {\\\\n that.deactivate()\\\\n } else {\\\\n that.activate();\\\\n }\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":348},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"347\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"348\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":349},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"349\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 12:00:23 GMT+0100 (CET)\\\"},\\\"350\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":351},\\\"source\\\":\\\"function reset() {\\\\n this.deactivate();\\\\n this.setDBName(\\\\\\\"\\\\\\\");\\\\n this.updateDBObjectIDs();\\\\n this.db = undefined;\\\\n this.submorphs.invoke(\\\\\\\"remove\\\\\\\");\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":352},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"351\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"352\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":353},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"353\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:43:15 GMT+0100 (CET)\\\"},\\\"354\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":355},\\\"source\\\":\\\"function saveMorph(aMorph) {\\\\n aMorph.databaseID = undefined;\\\\n aMorph.databaseRev = undefined;\\\\n if (this.active) {\\\\n var newMorph = aMorph.serialize();\\\\n var result = this.getDB().save(newMorph);\\\\n if(result.error==\\\\\\\"conflict\\\\\\\"){\\\\n alert(\\\\\\\"an error occured while synching the morph\\\\\\\");\\\\n // XXX implement error awareness\\\\n // var databaseDocument = this.getDB().open(aMorph.databaseID);\\\\n // var window = $world.openPartItem(\\\\\\\"UserStoryDiffViewer\\\\\\\",\\\\\\\"PartsBin/BP2012\\\\\\\");\\\\n // window.get(\\\\\\\"DiffViewer\\\\\\\").makeDiff(databaseDocument,aMorph);\\\\n } else {\\\\n aMorph.databaseID = result.id;\\\\n aMorph.databaseRev = result.rev;\\\\n // alertOK(\\\\\\\"morph with new ID \\\\\\\" + aMorph.databaseID + \\\\\\\" saved\\\\\\\");\\\\n // aMorph.originalProperties = newMorph;\\\\n }\\\\n this.updateDBObjectIDs();\\\\n }\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":356},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"355\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"356\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":357},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"357\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sun Feb 26 2012 19:42:35 GMT+0100 (CET)\\\"},\\\"358\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":359},\\\"source\\\":\\\"function setDBName(aName) {\\\\n return this.dbName = aName;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":360},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"359\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"360\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":361},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"361\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 14:00:43 GMT+0100 (CET)\\\"},\\\"362\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":363},\\\"source\\\":\\\"function deserializeMorph(databaseDocument) {\\\\n var serializer = ObjectGraphLinearizer.forNewLivelyCopy();\\\\n var jso = JSON.parse(databaseDocument.morph);\\\\n morph = serializer.deserializeJso(jso);\\\\n morph.withAllSubmorphsDo(function() { if (typeof this.setNewId == 'function') this.setNewId(); });\\\\n morph.databaseID = databaseDocument._id;\\\\n morph.databaseRev = databaseDocument._rev;\\\\n return morph;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":364},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"363\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"364\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":365},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"365\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:07:18 GMT+0100 (CET)\\\"},\\\"366\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":367},\\\"source\\\":\\\"function removeMorphWithID(anID) {\\\\n if (this.active) {\\\\n var morph = this.getDB().open(anID)\\\\n morph && this.getDB().deleteDoc(morph);\\\\n // alertOK(\\\\\\\"morph with id \\\\\\\" + morph._id + \\\\\\\" deleted\\\\\\\");\\\\n }\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":368},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"367\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"368\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":369},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"369\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Wed Feb 29 2012 15:59:40 GMT+0100 (CET)\\\"},\\\"370\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":371},\\\"source\\\":\\\"function updateDB() {\\\\n if (this.active) {\\\\n var currentIDs = this.submorphs.pluck(\\\\\\\"databaseID\\\\\\\");\\\\n var that = this;\\\\n this.getDBObjectIDs().length > 0 &&\\\\n this.getDBObjectIDs().withoutAll(currentIDs).length > 0 &&\\\\n this.getDBObjectIDs().withoutAll(currentIDs).each(function (ea) {\\\\n that.removeMorphWithID(ea);\\\\n });\\\\n }\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":372},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"371\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"372\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":373},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"373\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sun Feb 26 2012 19:46:30 GMT+0100 (CET)\\\"},\\\"374\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":375},\\\"source\\\":\\\"function getDBObjectIDs() {\\\\n return this.DBObjectIDs || [];\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":376},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"375\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"376\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":377},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"377\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 17:46:21 GMT+0100 (CET)\\\"},\\\"378\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":379},\\\"source\\\":\\\"function getSubmorphByDatabaseID(anID) {\\\\n return this.submorphs.find(function (ea) {\\\\n return anID == ea.databaseID;\\\\n });\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":380},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"379\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"380\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":381},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"381\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Sat Feb 25 2012 18:20:48 GMT+0100 (CET)\\\"},\\\"382\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":383},\\\"source\\\":\\\"function initialSync() {\\\\n var that = this;\\\\n // write new morphs to DB\\\\n this.submorphs.length > 0 && this.submorphs.select(function (ea) {\\\\n return ea.databaseID == undefined && ea.databaseRev == undefined;\\\\n }).each(function (ea) {\\\\n that.saveMorph(ea);\\\\n });\\\\n this.updateDBObjectIDs();\\\\n // fetch current morphs from DB\\\\n var docs = this.getDB().allDocs();\\\\n var allObjs = docs.rows.pluck(\\\\\\\"id\\\\\\\").withoutAll(this.getDBObjectIDs()).collect(function (ea) {\\\\n return that.getDB().open(ea); \\\\n });\\\\n allObjs.length > 0 && allObjs.each(function (ea) {\\\\n morph = that.deserializeMorph(ea);\\\\n that.addMorph(morph);\\\\n });\\\\n this.updateDBObjectIDs();\\\\n // delete the morphs that have been deleted in DB\\\\n this.getDBObjectIDs() && this.getDBObjectIDs().withoutAll(docs.rows.pluck(\\\\\\\"id\\\\\\\")).each(function (ea) {\\\\n that.getSubmorphByDatabaseID(ea).remove();\\\\n });\\\\n this.updateDBObjectIDs();\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":384},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"383\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23}},\\\"384\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":385},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"385\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 14:41:48 GMT+0100 (CET)\\\"},\\\"386\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":387},\\\"source\\\":\\\"function morphMenuItems() {\\\\n items = $super();\\\\n var itemString = \\\\\\\"activate sync\\\\\\\";\\\\n if (this.active) itemString = \\\\\\\"de\\\\\\\" + itemString;\\\\n items.push([itemString, (function () {this.owner.get(\\\\\\\"SyncMorphActivationToggle\\\\\\\").change()}).bind(this)]);\\\\n return items;\\\\n}\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":392},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"387\\\":{\\\"this\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"__serializedLivelyClosures__\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":388}},\\\"388\\\":{\\\"$super\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":389}},\\\"389\\\":{\\\"varMapping\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":390},\\\"source\\\":\\\"function () {\\\\n try {\\\\n return obj.constructor.prototype[name].apply(obj, arguments)\\\\n } catch (e) {\\\\n alert('Error in $super call: ' + e + '\\\\\\\\n' + e.stack);\\\\n return null;\\\\n }\\\\n }\\\",\\\"funcProperties\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":391},\\\"__SourceModuleName__\\\":\\\"Global.lively.lang.Closure\\\",\\\"__LivelyClassName__\\\":\\\"lively.Closure\\\"},\\\"390\\\":{\\\"obj\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":23},\\\"name\\\":\\\"morphMenuItems\\\"},\\\"391\\\":{},\\\"392\\\":{\\\"timestamp\\\":{\\\"__isSmartRef__\\\":true,\\\"id\\\":393},\\\"user\\\":\\\"conradcalmez\\\",\\\"tags\\\":[]},\\\"393\\\":{\\\"isSerializedDate\\\":true,\\\"string\\\":\\\"Mon Feb 27 2012 12:04:50 GMT+0100 (CET)\\\"},\\\"isSimplifiedRegistry\\\":true}}\"}\n","onabort":null,"upload":{"__isSmartRef__":true,"id":90}},"90":{"onprogress":null,"onabort":null,"onloadend":null,"onerror":null,"onload":null,"onloadstart":null},"91":{},"92":{"Date":"Sun, 01 Apr 2012 21:30:34 GMT","date":"Sun, 01 Apr 2012 21:30:34 GMT","Content-Encoding":"gzip","content-encoding":"gzip","Transfer-Encoding":"chunked","transfer-encoding":"chunked","Connection":"Keep-Alive","connection":"Keep-Alive","Server":"CouchDB/0.11.0 (Erlang OTP/R14B)","server":"CouchDB/0.11.0 (Erlang OTP/R14B)","Etag":"\"1-9c11124903569769d3ca9b4c4982d346\"","etag":"\"1-9c11124903569769d3ca9b4c4982d346\"","Vary":"Accept-Encoding","vary":"Accept-Encoding","Content-Type":"text/plain;charset=utf-8","content-type":"text/plain;charset=utf-8","Cache-Control":"must-revalidate","cache-control":"must-revalidate","Keep-Alive":"timeout=15, max=99","keep-alive":"timeout=15, max=99"},"93":{"_url":{"__isSmartRef__":true,"id":94},"_isSync":false,"_isBinary":false,"status":{"__isSmartRef__":true,"id":95},"content":"{\"db_name\":\"sync_morph_db\",\"doc_count\":1,\"doc_del_count\":128,\"update_seq\":670,\"purge_seq\":0,\"compact_running\":false,\"disk_size\":53620824,\"instance_start_time\":\"1330333885045558\",\"disk_format_version\":5}\n","contentDocument":"","isExisting":true,"subResources":null,"requestHeaders":{"__isSmartRef__":true,"id":98},"responseHeaders":{"__isSmartRef__":true,"id":99},"attributeConnections":[{"__isSmartRef__":true,"id":100}],"doNotSerialize":["$$readystate"],"doNotCopyProperties":["$$readystate"],"readystate":4,"streamContent":"{\"db_name\":\"sync_morph_db\",\"doc_count\":1,\"doc_del_count\":128,\"update_seq\":670,\"purge_seq\":0,\"compact_running\":false,\"disk_size\":53620824,\"instance_start_time\":\"1330333885045558\",\"disk_format_version\":5}","__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"WebResource"},"94":{"protocol":"http:","hostname":"lively-kernel.org","pathname":"/couchdb/sync_morph_db/","__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"URL"},"95":{"method":"GET","url":{"__isSmartRef__":true,"id":94},"transport":{"__isSmartRef__":true,"id":96},"exception":null,"__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"NetRequestStatus"},"96":{"withCredentials":false,"statusText":"OK","onprogress":null,"onloadend":null,"responseXML":null,"onerror":null,"onload":null,"readyState":4,"responseText":"{\"db_name\":\"sync_morph_db\",\"doc_count\":1,\"doc_del_count\":128,\"update_seq\":670,\"purge_seq\":0,\"compact_running\":false,\"disk_size\":53620824,\"instance_start_time\":\"1330333885045558\",\"disk_format_version\":5}\n","status":200,"responseType":"","onloadstart":null,"response":"{\"db_name\":\"sync_morph_db\",\"doc_count\":1,\"doc_del_count\":128,\"update_seq\":670,\"purge_seq\":0,\"compact_running\":false,\"disk_size\":53620824,\"instance_start_time\":\"1330333885045558\",\"disk_format_version\":5}\n","onabort":null,"upload":{"__isSmartRef__":true,"id":97}},"97":{"onprogress":null,"onabort":null,"onloadend":null,"onerror":null,"onload":null,"onloadstart":null},"98":{},"99":{"Date":"Sun, 01 Apr 2012 21:30:34 GMT","date":"Sun, 01 Apr 2012 21:30:34 GMT","Content-Encoding":"gzip","content-encoding":"gzip","Connection":"Keep-Alive","connection":"Keep-Alive","Content-Length":"170","content-length":"170","Server":"CouchDB/0.11.0 (Erlang OTP/R14B)","server":"CouchDB/0.11.0 (Erlang OTP/R14B)","Vary":"Accept-Encoding","vary":"Accept-Encoding","Content-Type":"text/plain;charset=utf-8","content-type":"text/plain;charset=utf-8","Cache-Control":"must-revalidate","cache-control":"must-revalidate","Keep-Alive":"timeout=15, max=98","keep-alive":"timeout=15, max=98"},"100":{"sourceObj":{"__isSmartRef__":true,"id":93},"sourceAttrName":"readystate","targetObj":{"__isSmartRef__":true,"id":101},"targetMethodName":"cb","converterString":"function () { return this.sourceObj; }","updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":102},"__SourceModuleName__":"Global.lively.bindings","__serializedLivelyClosures__":{"__isSmartRef__":true,"id":103},"__LivelyClassName__":"AttributeConnection"},"101":{},"102":{"source":{"__isSmartRef__":true,"id":93},"target":{"__isSmartRef__":true,"id":101}},"103":{"converter":{"__isSmartRef__":true,"id":104}},"104":{"originalFunc":null,"varMapping":{"__isSmartRef__":true,"id":102},"source":"function () { return this.sourceObj; }","funcProperties":{"__isSmartRef__":true,"id":105},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"105":{},"106":{"onrestore":{"__isSmartRef__":true,"id":107},"deactivate":{"__isSmartRef__":true,"id":115},"getDB":{"__isSmartRef__":true,"id":119},"updateDBObjectIDs":{"__isSmartRef__":true,"id":123},"getDBName":{"__isSmartRef__":true,"id":127},"defaultDBName":{"__isSmartRef__":true,"id":131},"activate":{"__isSmartRef__":true,"id":135},"change":{"__isSmartRef__":true,"id":139},"reset":{"__isSmartRef__":true,"id":143},"saveMorph":{"__isSmartRef__":true,"id":147},"setDBName":{"__isSmartRef__":true,"id":151},"deserializeMorph":{"__isSmartRef__":true,"id":155},"removeMorphWithID":{"__isSmartRef__":true,"id":159},"updateDB":{"__isSmartRef__":true,"id":163},"getDBObjectIDs":{"__isSmartRef__":true,"id":167},"getSubmorphByDatabaseID":{"__isSmartRef__":true,"id":171},"initialSync":{"__isSmartRef__":true,"id":175},"morphMenuItems":{"__isSmartRef__":true,"id":179}},"107":{"varMapping":{"__isSmartRef__":true,"id":108},"source":"function onrestore() {\n this.deactivate();\n this.updateDBObjectIDs();\n}","funcProperties":{"__isSmartRef__":true,"id":113},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"108":{"this":{"__isSmartRef__":true,"id":35},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":109}},"109":{"$super":{"__isSmartRef__":true,"id":110}},"110":{"varMapping":{"__isSmartRef__":true,"id":111},"source":"function () {\n try {\n return obj.constructor.prototype[name].apply(obj, arguments)\n } catch (e) {\n alert('Error in $super call: ' + e + '\\n' + e.stack);\n return null;\n }\n }","funcProperties":{"__isSmartRef__":true,"id":112},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"111":{"obj":{"__isSmartRef__":true,"id":35},"name":"onrestore"},"112":{},"113":{"timestamp":{"__isSmartRef__":true,"id":114},"user":"conradcalmez","tags":[]},"114":{"isSerializedDate":true,"string":"Sat Feb 25 2012 17:44:42 GMT+0100 (CET)"},"115":{"varMapping":{"__isSmartRef__":true,"id":116},"source":"function deactivate() {\n this.active = false;\n this.getDB().stopPollingChanges();\n}","funcProperties":{"__isSmartRef__":true,"id":117},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"116":{"this":{"__isSmartRef__":true,"id":35}},"117":{"timestamp":{"__isSmartRef__":true,"id":118},"user":"conradcalmez","tags":[]},"118":{"isSerializedDate":true,"string":"Mon Feb 27 2012 14:46:00 GMT+0100 (CET)"},"119":{"varMapping":{"__isSmartRef__":true,"id":120},"source":"function getDB() {\n module('apps.CouchDB').load(true);\n if(!this.db){\n this.db = new CouchDB(this.getDBName());\n }\n return this.db;\n}","funcProperties":{"__isSmartRef__":true,"id":121},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"120":{"this":{"__isSmartRef__":true,"id":35}},"121":{"timestamp":{"__isSmartRef__":true,"id":122},"user":"conradcalmez","tags":[]},"122":{"isSerializedDate":true,"string":"Sat Feb 25 2012 13:57:06 GMT+0100 (CET)"},"123":{"varMapping":{"__isSmartRef__":true,"id":124},"source":"function updateDBObjectIDs() {\n this.DBObjectIDs = this.submorphs.pluck(\"databaseID\");\n}","funcProperties":{"__isSmartRef__":true,"id":125},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"124":{"this":{"__isSmartRef__":true,"id":35}},"125":{"timestamp":{"__isSmartRef__":true,"id":126},"user":"conradcalmez","tags":[]},"126":{"isSerializedDate":true,"string":"Sat Feb 25 2012 17:33:21 GMT+0100 (CET)"},"127":{"varMapping":{"__isSmartRef__":true,"id":128},"source":"function getDBName() {\n return this.dbName || this.defaultDBName()\n}","funcProperties":{"__isSmartRef__":true,"id":129},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"128":{"this":{"__isSmartRef__":true,"id":35}},"129":{"timestamp":{"__isSmartRef__":true,"id":130},"user":"conradcalmez","tags":[]},"130":{"isSerializedDate":true,"string":"Sat Feb 25 2012 13:59:14 GMT+0100 (CET)"},"131":{"varMapping":{"__isSmartRef__":true,"id":132},"source":"function defaultDBName() {\n return \"sync_morph_db\"\n}","funcProperties":{"__isSmartRef__":true,"id":133},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"132":{"this":{"__isSmartRef__":true,"id":35}},"133":{"timestamp":{"__isSmartRef__":true,"id":134},"user":"conradcalmez","tags":[]},"134":{"isSerializedDate":true,"string":"Mon Feb 27 2012 10:16:51 GMT+0100 (CET)"},"135":{"varMapping":{"__isSmartRef__":true,"id":136},"source":"function activate() {\n this.active = true;\n this.initialSync();\n var that = this;\n this.getDB().startPollingChanges(function (change) {\n if(typeof change === \"object\"){\n var morph = that.getSubmorphByDatabaseID(change.id);\n if (change.deleted) {\n //alertOK(that + \" morph to be deleted: \" + morph);\n if (morph){\n that.DBObjectIDs.splice(that.DBObjectIDs.indexOf(change.id),1);\n morph.remove();\n }\n } else {\n //alertOK(that + \" morph to be updated: \" + morph);\n var document = that.getDB().open(change.id);\n var newMorph = that.deserializeMorph(document);\n var relativePosition = newMorph.getPosition();\n if (morph instanceof lively.morphic.Morph) {\n morph = newMorph;\n morph.setPosition(relativePosition);\n } else {\n that.DBObjectIDs.push(change.id);\n that.addMorph(newMorph);\n newMorph.setPosition(relativePosition);\n }\n }\n that.updateDBObjectIDs();\n }\n },\n function(e){\n alert(e);\n throw(e);\n });\n}","funcProperties":{"__isSmartRef__":true,"id":137},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"136":{"this":{"__isSmartRef__":true,"id":35}},"137":{"timestamp":{"__isSmartRef__":true,"id":138},"user":"bsiegmund","tags":[]},"138":{"isSerializedDate":true,"string":"Tue Mar 20 2012 14:56:36 GMT+0100 (CET)"},"139":{"varMapping":{"__isSmartRef__":true,"id":140},"source":"function change() {\n var that = this;\n require('apps.CouchDB').toRun(function () {\n if (that.active) {\n that.deactivate()\n } else {\n that.activate();\n }\n });\n}","funcProperties":{"__isSmartRef__":true,"id":141},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"140":{"this":{"__isSmartRef__":true,"id":35}},"141":{"timestamp":{"__isSmartRef__":true,"id":142},"user":"conradcalmez","tags":[]},"142":{"isSerializedDate":true,"string":"Mon Feb 27 2012 12:00:23 GMT+0100 (CET)"},"143":{"varMapping":{"__isSmartRef__":true,"id":144},"source":"function reset() {\n this.deactivate();\n this.setDBName(\"\");\n this.updateDBObjectIDs();\n this.db = undefined;\n this.submorphs.invoke(\"remove\");\n}","funcProperties":{"__isSmartRef__":true,"id":145},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"144":{"this":{"__isSmartRef__":true,"id":35}},"145":{"timestamp":{"__isSmartRef__":true,"id":146},"user":"conradcalmez","tags":[]},"146":{"isSerializedDate":true,"string":"Mon Feb 27 2012 14:43:15 GMT+0100 (CET)"},"147":{"varMapping":{"__isSmartRef__":true,"id":148},"source":"function saveMorph(aMorph) {\n aMorph.databaseID = undefined;\n aMorph.databaseRev = undefined;\n if (this.active) {\n var newMorph = aMorph.serialize();\n var result = this.getDB().save(newMorph);\n if(result.error==\"conflict\"){\n alert(\"an error occured while synching the morph\");\n // XXX implement error awareness\n // var databaseDocument = this.getDB().open(aMorph.databaseID);\n // var window = $world.openPartItem(\"UserStoryDiffViewer\",\"PartsBin/BP2012\");\n // window.get(\"DiffViewer\").makeDiff(databaseDocument,aMorph);\n } else {\n aMorph.databaseID = result.id;\n aMorph.databaseRev = result.rev;\n // alertOK(\"morph with new ID \" + aMorph.databaseID + \" saved\");\n // aMorph.originalProperties = newMorph;\n }\n this.updateDBObjectIDs();\n }\n}","funcProperties":{"__isSmartRef__":true,"id":149},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"148":{"this":{"__isSmartRef__":true,"id":35}},"149":{"timestamp":{"__isSmartRef__":true,"id":150},"user":"conradcalmez","tags":[]},"150":{"isSerializedDate":true,"string":"Sun Feb 26 2012 19:42:35 GMT+0100 (CET)"},"151":{"varMapping":{"__isSmartRef__":true,"id":152},"source":"function setDBName(aName) {\n return this.dbName = aName;\n}","funcProperties":{"__isSmartRef__":true,"id":153},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"152":{"this":{"__isSmartRef__":true,"id":35}},"153":{"timestamp":{"__isSmartRef__":true,"id":154},"user":"conradcalmez","tags":[]},"154":{"isSerializedDate":true,"string":"Sat Feb 25 2012 14:00:43 GMT+0100 (CET)"},"155":{"varMapping":{"__isSmartRef__":true,"id":156},"source":"function deserializeMorph(databaseDocument) {\n var serializer = ObjectGraphLinearizer.forNewLivelyCopy();\n var jso = JSON.parse(databaseDocument.morph);\n morph = serializer.deserializeJso(jso);\n morph.withAllSubmorphsDo(function() { if (typeof this.setNewId == 'function') this.setNewId(); });\n morph.databaseID = databaseDocument._id;\n morph.databaseRev = databaseDocument._rev;\n return morph;\n}","funcProperties":{"__isSmartRef__":true,"id":157},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"156":{"this":{"__isSmartRef__":true,"id":35}},"157":{"timestamp":{"__isSmartRef__":true,"id":158},"user":"conradcalmez","tags":[]},"158":{"isSerializedDate":true,"string":"Sat Feb 25 2012 17:07:18 GMT+0100 (CET)"},"159":{"varMapping":{"__isSmartRef__":true,"id":160},"source":"function removeMorphWithID(anID) {\n if (this.active) {\n var morph = this.getDB().open(anID)\n morph && this.getDB().deleteDoc(morph);\n // alertOK(\"morph with id \" + morph._id + \" deleted\");\n }\n}","funcProperties":{"__isSmartRef__":true,"id":161},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"160":{"this":{"__isSmartRef__":true,"id":35}},"161":{"timestamp":{"__isSmartRef__":true,"id":162},"user":"conradcalmez","tags":[]},"162":{"isSerializedDate":true,"string":"Wed Feb 29 2012 15:59:40 GMT+0100 (CET)"},"163":{"varMapping":{"__isSmartRef__":true,"id":164},"source":"function updateDB() {\n if (this.active) {\n var currentIDs = this.submorphs.pluck(\"databaseID\");\n var that = this;\n this.getDBObjectIDs().length > 0 &&\n this.getDBObjectIDs().withoutAll(currentIDs).length > 0 &&\n this.getDBObjectIDs().withoutAll(currentIDs).each(function (ea) {\n that.removeMorphWithID(ea);\n });\n }\n this.updateDBObjectIDs();\n}","funcProperties":{"__isSmartRef__":true,"id":165},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"164":{"this":{"__isSmartRef__":true,"id":35}},"165":{"timestamp":{"__isSmartRef__":true,"id":166},"user":"conradcalmez","tags":[]},"166":{"isSerializedDate":true,"string":"Sun Feb 26 2012 19:46:30 GMT+0100 (CET)"},"167":{"varMapping":{"__isSmartRef__":true,"id":168},"source":"function getDBObjectIDs() {\n return this.DBObjectIDs || [];\n}","funcProperties":{"__isSmartRef__":true,"id":169},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"168":{"this":{"__isSmartRef__":true,"id":35}},"169":{"timestamp":{"__isSmartRef__":true,"id":170},"user":"conradcalmez","tags":[]},"170":{"isSerializedDate":true,"string":"Sat Feb 25 2012 17:46:21 GMT+0100 (CET)"},"171":{"varMapping":{"__isSmartRef__":true,"id":172},"source":"function getSubmorphByDatabaseID(anID) {\n return this.submorphs.find(function (ea) {\n return anID == ea.databaseID;\n });\n}","funcProperties":{"__isSmartRef__":true,"id":173},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"172":{"this":{"__isSmartRef__":true,"id":35}},"173":{"timestamp":{"__isSmartRef__":true,"id":174},"user":"conradcalmez","tags":[]},"174":{"isSerializedDate":true,"string":"Sat Feb 25 2012 18:20:48 GMT+0100 (CET)"},"175":{"varMapping":{"__isSmartRef__":true,"id":176},"source":"function initialSync() {\n var that = this;\n // write new morphs to DB\n this.submorphs.length > 0 && this.submorphs.select(function (ea) {\n return ea.databaseID == undefined && ea.databaseRev == undefined;\n }).each(function (ea) {\n that.saveMorph(ea);\n });\n this.updateDBObjectIDs();\n // fetch current morphs from DB\n var docs = this.getDB().allDocs();\n var allObjs = docs.rows.pluck(\"id\").withoutAll(this.getDBObjectIDs()).collect(function (ea) {\n return that.getDB().open(ea); \n });\n allObjs.length > 0 && allObjs.each(function (ea) {\n morph = that.deserializeMorph(ea);\n that.addMorph(morph);\n });\n this.updateDBObjectIDs();\n // delete the morphs that have been deleted in DB\n this.getDBObjectIDs() && this.getDBObjectIDs().withoutAll(docs.rows.pluck(\"id\")).each(function (ea) {\n that.getSubmorphByDatabaseID(ea).remove();\n });\n this.updateDBObjectIDs();\n}","funcProperties":{"__isSmartRef__":true,"id":177},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"176":{"this":{"__isSmartRef__":true,"id":35}},"177":{"timestamp":{"__isSmartRef__":true,"id":178},"user":"conradcalmez","tags":[]},"178":{"isSerializedDate":true,"string":"Mon Feb 27 2012 14:41:48 GMT+0100 (CET)"},"179":{"varMapping":{"__isSmartRef__":true,"id":180},"source":"function morphMenuItems() {\n items = $super();\n var itemString = \"activate sync\";\n if (this.active) itemString = \"de\" + itemString;\n items.push([itemString, (function () {this.owner.get(\"SyncMorphActivationToggle\").change()}).bind(this)]);\n return items;\n}","funcProperties":{"__isSmartRef__":true,"id":185},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"180":{"this":{"__isSmartRef__":true,"id":35},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":181}},"181":{"$super":{"__isSmartRef__":true,"id":182}},"182":{"varMapping":{"__isSmartRef__":true,"id":183},"source":"function () {\n try {\n return obj.constructor.prototype[name].apply(obj, arguments)\n } catch (e) {\n alert('Error in $super call: ' + e + '\\n' + e.stack);\n return null;\n }\n }","funcProperties":{"__isSmartRef__":true,"id":184},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"183":{"obj":{"__isSmartRef__":true,"id":35},"name":"morphMenuItems"},"184":{},"185":{"timestamp":{"__isSmartRef__":true,"id":186},"user":"conradcalmez","tags":[]},"186":{"isSerializedDate":true,"string":"Mon Feb 27 2012 12:04:50 GMT+0100 (CET)"},"187":{"submorphs":[{"__isSmartRef__":true,"id":188},{"__isSmartRef__":true,"id":202},{"__isSmartRef__":true,"id":249},{"__isSmartRef__":true,"id":283},{"__isSmartRef__":true,"id":318}],"scripts":[],"shape":{"__isSmartRef__":true,"id":365},"derivationIds":[null,"8063B9D1-E31A-42B9-AEDF-F96496304762","E01E7D4A-6396-4093-895B-0212ED19277D"],"id":"6D063567-B770-4976-90F9-EA009730B1DB","renderContextTable":{"__isSmartRef__":true,"id":377},"eventHandler":{"__isSmartRef__":true,"id":378},"droppingEnabled":true,"halosEnabled":true,"layout":{"__isSmartRef__":true,"id":379},"_Position":{"__isSmartRef__":true,"id":380},"windowMorph":{"__isSmartRef__":true,"id":34},"label":{"__isSmartRef__":true,"id":188},"closeButton":{"__isSmartRef__":true,"id":202},"menuButton":{"__isSmartRef__":true,"id":249},"collapseButton":{"__isSmartRef__":true,"id":283},"priorExtent":{"__isSmartRef__":true,"id":381},"owner":{"__isSmartRef__":true,"id":34},"showsHalos":false,"distanceToDragEvent":{"__isSmartRef__":true,"id":382},"__SourceModuleName__":"Global.lively.morphic.Widgets","prevScroll":[0,0],"attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"isLockOwner":false,"__LivelyClassName__":"lively.morphic.TitleBar"},"188":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":189},"derivationIds":[null,"67024D50-BF5B-40D8-AE5B-8D692BB6B986","9F84EDEA-122D-4A5D-8E26-CD584EFD6425"],"id":"DD24C4AF-9A95-4828-9F1A-C708837F403C","renderContextTable":{"__isSmartRef__":true,"id":195},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":196}],"eventHandler":{"__isSmartRef__":true,"id":198},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"_ClipMode":"hidden","fixedWidth":true,"fixedHeight":true,"allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"isLabel":true,"_HandStyle":"default","layout":{"__isSmartRef__":true,"id":199},"_Align":"center","eventsAreIgnored":true,"owner":{"__isSmartRef__":true,"id":187},"priorExtent":{"__isSmartRef__":true,"id":200},"_MaxTextWidth":541,"_MinTextWidth":541,"_MaxTextHeight":null,"_MinTextHeight":null,"_Position":{"__isSmartRef__":true,"id":201},"showsHalos":false,"__SourceModuleName__":"Global.lively.morphic.TextCore","prevScroll":[0,0],"attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"isLockOwner":false,"__LivelyClassName__":"lively.morphic.Text"},"189":{"_Position":{"__isSmartRef__":true,"id":190},"renderContextTable":{"__isSmartRef__":true,"id":191},"_Extent":{"__isSmartRef__":true,"id":192},"_ClipMode":"hidden","_Padding":{"__isSmartRef__":true,"id":193},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":194},"_Fill":null,"_BorderRadius":0,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"190":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"191":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"192":{"x":541,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"193":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"194":{"r":0,"g":0,"b":0,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"195":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","updateText":"updateTextHTML","setTextExtent":"setTextExtentHTML","setMaxTextWidth":"setMaxTextWidthHTML","setMaxTextHeight":"setMaxTextHeightHTML","setMinTextWidth":"setMinTextWidthHTML","setMinTextHeight":"setMinTextHeightHTML","getTextExtent":"getTextExtentHTML","getTextString":"getTextStringHTML","ignoreTextEvents":"ignoreTextEventsHTML","unignoreTextEvents":"unignoreTextEventsHTML","enableTextEvents":"enableTextEventsHTML","setFontFamily":"setFontFamilyHTML","setFontSize":"setFontSizeHTML","setTextColor":"setTextColorHTML","setPadding":"setPaddingHTML","setAlign":"setAlignHTML","setVerticalAlign":"setVerticalAlignHTML","setDisplay":"setDisplayHTML","setWhiteSpaceHandling":"setWhiteSpaceHandlingHTML","focusMorph":"focusMorphHTML"},"196":{"style":{"__isSmartRef__":true,"id":197},"chunkOwner":{"__isSmartRef__":true,"id":188},"storedString":"SyncMorph","__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextChunk"},"197":{"__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextEmphasis"},"198":{"morph":{"__isSmartRef__":true,"id":188},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"199":{"resizeWidth":true},"200":{"x":541,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"201":{"x":20,"y":3,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"202":{"submorphs":[{"__isSmartRef__":true,"id":203}],"scripts":[],"shape":{"__isSmartRef__":true,"id":215},"derivationIds":[null,"8FCD2996-141C-4874-BB99-6249261F791F","44FDCD83-627C-4ABD-BDB3-A5342ED8D171"],"id":"AFB4B85D-4E94-45F6-90BD-38A460EB2A64","renderContextTable":{"__isSmartRef__":true,"id":231},"eventHandler":{"__isSmartRef__":true,"id":232},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"accessibleInInactiveWindow":true,"_Position":{"__isSmartRef__":true,"id":233},"priorExtent":{"__isSmartRef__":true,"id":234},"value":false,"toggle":false,"isActive":true,"normalFill":{"__isSmartRef__":true,"id":221},"lighterFill":{"__isSmartRef__":true,"id":235},"label":{"__isSmartRef__":true,"id":203},"owner":{"__isSmartRef__":true,"id":187},"layout":{"__isSmartRef__":true,"id":244},"attributeConnections":[{"__isSmartRef__":true,"id":245},{"__isSmartRef__":true,"id":247}],"doNotSerialize":["$$getHelpText","$$fire"],"doNotCopyProperties":["$$getHelpText","$$fire"],"__SourceModuleName__":"Global.lively.morphic.Widgets","prevScroll":[0,0],"isLockOwner":false,"__LivelyClassName__":"lively.morphic.WindowControl"},"203":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":204},"derivationIds":[null,"1F343953-83E1-45A7-B3C9-261FC6F273C2","EB0B0A63-B1A6-422B-8EC5-F6DEE53A7543"],"id":"57F317B7-6650-4B56-9F11-7A31643E2771","renderContextTable":{"__isSmartRef__":true,"id":209},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":210}],"eventHandler":{"__isSmartRef__":true,"id":212},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"_ClipMode":"hidden","fixedWidth":true,"fixedHeight":true,"allowInput":false,"_FontFamily":"Helvetica","_FontSize":8,"_Position":{"__isSmartRef__":true,"id":213},"priorExtent":{"__isSmartRef__":true,"id":214},"_MaxTextWidth":17,"_MinTextWidth":17,"_MaxTextHeight":null,"_MinTextHeight":null,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":202},"isLabel":true,"_HandStyle":"default","_TextColor":{"__isSmartRef__":true,"id":194},"_Align":"center","eventsAreIgnored":true,"__SourceModuleName__":"Global.lively.morphic.TextCore","prevScroll":[0,0],"attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"isLockOwner":false,"__LivelyClassName__":"lively.morphic.Text"},"204":{"_Position":{"__isSmartRef__":true,"id":205},"renderContextTable":{"__isSmartRef__":true,"id":206},"_Extent":{"__isSmartRef__":true,"id":207},"_ClipMode":"hidden","_Padding":{"__isSmartRef__":true,"id":208},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":194},"_Fill":null,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"205":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"206":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"207":{"x":17,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"208":{"x":0,"y":3,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"209":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","updateText":"updateTextHTML","setTextExtent":"setTextExtentHTML","setMaxTextWidth":"setMaxTextWidthHTML","setMaxTextHeight":"setMaxTextHeightHTML","setMinTextWidth":"setMinTextWidthHTML","setMinTextHeight":"setMinTextHeightHTML","getTextExtent":"getTextExtentHTML","getTextString":"getTextStringHTML","ignoreTextEvents":"ignoreTextEventsHTML","unignoreTextEvents":"unignoreTextEventsHTML","enableTextEvents":"enableTextEventsHTML","setFontFamily":"setFontFamilyHTML","setFontSize":"setFontSizeHTML","setTextColor":"setTextColorHTML","setPadding":"setPaddingHTML","setAlign":"setAlignHTML","setVerticalAlign":"setVerticalAlignHTML","setDisplay":"setDisplayHTML","setWhiteSpaceHandling":"setWhiteSpaceHandlingHTML","focusMorph":"focusMorphHTML"},"210":{"style":{"__isSmartRef__":true,"id":211},"chunkOwner":{"__isSmartRef__":true,"id":203},"storedString":"X","__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextChunk"},"211":{"__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextEmphasis"},"212":{"morph":{"__isSmartRef__":true,"id":203},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"213":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"214":{"x":17,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"215":{"_Position":{"__isSmartRef__":true,"id":216},"renderContextTable":{"__isSmartRef__":true,"id":217},"_Extent":{"__isSmartRef__":true,"id":218},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":219},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":220},"_Fill":{"__isSmartRef__":true,"id":221},"_StrokeOpacity":0,"_BorderRadius":5,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"216":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"217":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"218":{"x":17,"y":17,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"219":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"220":{"r":0.7411764705882353,"g":0.7450980392156863,"b":0.7529411764705882,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"221":{"stops":[{"__isSmartRef__":true,"id":222},{"__isSmartRef__":true,"id":224},{"__isSmartRef__":true,"id":226},{"__isSmartRef__":true,"id":228}],"vector":{"__isSmartRef__":true,"id":230},"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.LinearGradient"},"222":{"offset":0,"color":{"__isSmartRef__":true,"id":223}},"223":{"r":0.9600000000000001,"g":0.9600000000000001,"b":0.9600000000000001,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"224":{"offset":0.4,"color":{"__isSmartRef__":true,"id":225}},"225":{"r":0.8200000000000001,"g":0.8200000000000001,"b":0.8200000000000001,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"226":{"offset":0.6,"color":{"__isSmartRef__":true,"id":227}},"227":{"r":0.8200000000000001,"g":0.8200000000000001,"b":0.8200000000000001,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"228":{"offset":1,"color":{"__isSmartRef__":true,"id":229}},"229":{"r":0.94,"g":0.94,"b":0.94,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"230":{"x":0,"y":0,"width":0,"height":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"231":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"232":{"morph":{"__isSmartRef__":true,"id":202},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"233":{"x":580,"y":3,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"234":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"235":{"stops":[{"__isSmartRef__":true,"id":236},{"__isSmartRef__":true,"id":238},{"__isSmartRef__":true,"id":240},{"__isSmartRef__":true,"id":242}],"vector":{"__isSmartRef__":true,"id":230},"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.LinearGradient"},"236":{"offset":0,"color":{"__isSmartRef__":true,"id":237}},"237":{"r":0.98,"g":0.98,"b":0.98,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"238":{"offset":0.4,"color":{"__isSmartRef__":true,"id":239}},"239":{"r":0.91,"g":0.91,"b":0.91,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"240":{"offset":0.6,"color":{"__isSmartRef__":true,"id":241}},"241":{"r":0.91,"g":0.91,"b":0.91,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"242":{"offset":1,"color":{"__isSmartRef__":true,"id":243}},"243":{"r":0.97,"g":0.97,"b":0.97,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"244":{"moveHorizontal":true},"245":{"sourceObj":{"__isSmartRef__":true,"id":202},"sourceAttrName":"getHelpText","targetObj":{"__isSmartRef__":true,"id":34},"targetMethodName":"getCloseHelp","converter":null,"converterString":null,"updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":246},"__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"246":{"source":{"__isSmartRef__":true,"id":202},"target":{"__isSmartRef__":true,"id":34}},"247":{"sourceObj":{"__isSmartRef__":true,"id":202},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":34},"targetMethodName":"initiateShutdown","converter":null,"converterString":null,"updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":248},"__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"248":{"source":{"__isSmartRef__":true,"id":202},"target":{"__isSmartRef__":true,"id":34}},"249":{"submorphs":[{"__isSmartRef__":true,"id":250}],"scripts":[],"shape":{"__isSmartRef__":true,"id":261},"derivationIds":[null,"F4925AAB-BF54-4AEB-9E7B-320C9D4B4080","C86F465C-6365-4721-8660-501F6FFEF7F7"],"id":"0695E0E8-F1CA-47E4-BCBB-7A6B177E828B","renderContextTable":{"__isSmartRef__":true,"id":266},"eventHandler":{"__isSmartRef__":true,"id":267},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"accessibleInInactiveWindow":true,"_Position":{"__isSmartRef__":true,"id":268},"priorExtent":{"__isSmartRef__":true,"id":269},"value":false,"toggle":false,"isActive":true,"normalFill":{"__isSmartRef__":true,"id":221},"lighterFill":{"__isSmartRef__":true,"id":270},"label":{"__isSmartRef__":true,"id":250},"owner":{"__isSmartRef__":true,"id":187},"attributeConnections":[{"__isSmartRef__":true,"id":279},{"__isSmartRef__":true,"id":281}],"doNotSerialize":["$$getHelpText","$$fire"],"doNotCopyProperties":["$$getHelpText","$$fire"],"showsHalos":false,"__SourceModuleName__":"Global.lively.morphic.Widgets","isLockOwner":false,"__LivelyClassName__":"lively.morphic.WindowControl"},"250":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":251},"derivationIds":[null,"1D39DD03-2AED-41C4-86F6-AAB8C3C0AC2D","65A86700-AB70-482D-9B44-F4C69D548B68"],"id":"7C2772B7-4A9B-419E-BF87-0F27FA689716","renderContextTable":{"__isSmartRef__":true,"id":255},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":256}],"eventHandler":{"__isSmartRef__":true,"id":258},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"_ClipMode":"hidden","fixedWidth":true,"fixedHeight":true,"allowInput":false,"_FontFamily":"Helvetica","_FontSize":8,"_Position":{"__isSmartRef__":true,"id":259},"priorExtent":{"__isSmartRef__":true,"id":260},"_MaxTextWidth":17,"_MinTextWidth":17,"_MaxTextHeight":null,"_MinTextHeight":null,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":249},"isLabel":true,"_HandStyle":"default","_TextColor":{"__isSmartRef__":true,"id":194},"_Align":"center","eventsAreIgnored":true,"showsHalos":false,"__SourceModuleName__":"Global.lively.morphic.TextCore","attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"isLockOwner":false,"__LivelyClassName__":"lively.morphic.Text"},"251":{"_Position":{"__isSmartRef__":true,"id":252},"renderContextTable":{"__isSmartRef__":true,"id":253},"_Extent":{"__isSmartRef__":true,"id":254},"_ClipMode":"hidden","_Padding":{"__isSmartRef__":true,"id":208},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":194},"_Fill":null,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"252":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"253":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"254":{"x":17,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"255":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","updateText":"updateTextHTML","setTextExtent":"setTextExtentHTML","setMaxTextWidth":"setMaxTextWidthHTML","setMaxTextHeight":"setMaxTextHeightHTML","setMinTextWidth":"setMinTextWidthHTML","setMinTextHeight":"setMinTextHeightHTML","getTextExtent":"getTextExtentHTML","getTextString":"getTextStringHTML","ignoreTextEvents":"ignoreTextEventsHTML","unignoreTextEvents":"unignoreTextEventsHTML","enableTextEvents":"enableTextEventsHTML","setFontFamily":"setFontFamilyHTML","setFontSize":"setFontSizeHTML","setTextColor":"setTextColorHTML","setPadding":"setPaddingHTML","setAlign":"setAlignHTML","setVerticalAlign":"setVerticalAlignHTML","setDisplay":"setDisplayHTML","setWhiteSpaceHandling":"setWhiteSpaceHandlingHTML","focusMorph":"focusMorphHTML"},"256":{"style":{"__isSmartRef__":true,"id":257},"chunkOwner":{"__isSmartRef__":true,"id":250},"storedString":"M","__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextChunk"},"257":{"__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextEmphasis"},"258":{"morph":{"__isSmartRef__":true,"id":250},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"259":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"260":{"x":17,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"261":{"_Position":{"__isSmartRef__":true,"id":262},"renderContextTable":{"__isSmartRef__":true,"id":263},"_Extent":{"__isSmartRef__":true,"id":264},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":265},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":220},"_Fill":{"__isSmartRef__":true,"id":221},"_StrokeOpacity":0,"_BorderRadius":5,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"262":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"263":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"264":{"x":17,"y":17,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"265":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"266":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"267":{"morph":{"__isSmartRef__":true,"id":249},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"268":{"x":3,"y":3,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"269":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"270":{"stops":[{"__isSmartRef__":true,"id":271},{"__isSmartRef__":true,"id":273},{"__isSmartRef__":true,"id":275},{"__isSmartRef__":true,"id":277}],"vector":{"__isSmartRef__":true,"id":230},"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.LinearGradient"},"271":{"offset":0,"color":{"__isSmartRef__":true,"id":272}},"272":{"r":0.98,"g":0.98,"b":0.98,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"273":{"offset":0.4,"color":{"__isSmartRef__":true,"id":274}},"274":{"r":0.91,"g":0.91,"b":0.91,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"275":{"offset":0.6,"color":{"__isSmartRef__":true,"id":276}},"276":{"r":0.91,"g":0.91,"b":0.91,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"277":{"offset":1,"color":{"__isSmartRef__":true,"id":278}},"278":{"r":0.97,"g":0.97,"b":0.97,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"279":{"sourceObj":{"__isSmartRef__":true,"id":249},"sourceAttrName":"getHelpText","targetObj":{"__isSmartRef__":true,"id":34},"targetMethodName":"getMenuHelp","converter":null,"converterString":null,"updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":280},"__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"280":{"source":{"__isSmartRef__":true,"id":249},"target":{"__isSmartRef__":true,"id":34}},"281":{"sourceObj":{"__isSmartRef__":true,"id":249},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":34},"targetMethodName":"showTargetMorphMenu","converter":null,"converterString":null,"updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":282},"__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"282":{"source":{"__isSmartRef__":true,"id":249},"target":{"__isSmartRef__":true,"id":34}},"283":{"submorphs":[{"__isSmartRef__":true,"id":284}],"scripts":[],"shape":{"__isSmartRef__":true,"id":295},"derivationIds":[null,"B6528F42-D46F-4E52-B478-6B7EDC347563","32629DC4-B883-4D83-8299-071A8DC1D886"],"id":"95AD85B7-055B-4B6C-BC9B-E1E7F31CDAF4","renderContextTable":{"__isSmartRef__":true,"id":300},"eventHandler":{"__isSmartRef__":true,"id":301},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"accessibleInInactiveWindow":true,"_Position":{"__isSmartRef__":true,"id":302},"priorExtent":{"__isSmartRef__":true,"id":303},"value":false,"toggle":false,"isActive":true,"normalFill":{"__isSmartRef__":true,"id":221},"lighterFill":{"__isSmartRef__":true,"id":304},"label":{"__isSmartRef__":true,"id":284},"owner":{"__isSmartRef__":true,"id":187},"layout":{"__isSmartRef__":true,"id":313},"attributeConnections":[{"__isSmartRef__":true,"id":314},{"__isSmartRef__":true,"id":316}],"doNotSerialize":["$$getHelpText","$$fire"],"doNotCopyProperties":["$$getHelpText","$$fire"],"__SourceModuleName__":"Global.lively.morphic.Widgets","isLockOwner":false,"__LivelyClassName__":"lively.morphic.WindowControl"},"284":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":285},"derivationIds":[null,"D0176518-E278-474F-B4D4-3EABC937FC52","CDB5AE69-AE65-4751-81D1-96DE6CA195A0"],"id":"A054C591-A5FA-4468-BCC4-632974F12550","renderContextTable":{"__isSmartRef__":true,"id":289},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":290}],"eventHandler":{"__isSmartRef__":true,"id":292},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"_ClipMode":"hidden","fixedWidth":true,"fixedHeight":true,"allowInput":false,"_FontFamily":"Helvetica","_FontSize":8,"_Position":{"__isSmartRef__":true,"id":293},"priorExtent":{"__isSmartRef__":true,"id":294},"_MaxTextWidth":17,"_MinTextWidth":17,"_MaxTextHeight":null,"_MinTextHeight":null,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":283},"isLabel":true,"_HandStyle":"default","_TextColor":{"__isSmartRef__":true,"id":194},"_Align":"center","eventsAreIgnored":true,"__SourceModuleName__":"Global.lively.morphic.TextCore","attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"isLockOwner":false,"__LivelyClassName__":"lively.morphic.Text"},"285":{"_Position":{"__isSmartRef__":true,"id":286},"renderContextTable":{"__isSmartRef__":true,"id":287},"_Extent":{"__isSmartRef__":true,"id":288},"_ClipMode":"hidden","_Padding":{"__isSmartRef__":true,"id":208},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":194},"_Fill":null,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"286":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"287":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"288":{"x":17,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"289":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","updateText":"updateTextHTML","setTextExtent":"setTextExtentHTML","setMaxTextWidth":"setMaxTextWidthHTML","setMaxTextHeight":"setMaxTextHeightHTML","setMinTextWidth":"setMinTextWidthHTML","setMinTextHeight":"setMinTextHeightHTML","getTextExtent":"getTextExtentHTML","getTextString":"getTextStringHTML","ignoreTextEvents":"ignoreTextEventsHTML","unignoreTextEvents":"unignoreTextEventsHTML","enableTextEvents":"enableTextEventsHTML","setFontFamily":"setFontFamilyHTML","setFontSize":"setFontSizeHTML","setTextColor":"setTextColorHTML","setPadding":"setPaddingHTML","setAlign":"setAlignHTML","setVerticalAlign":"setVerticalAlignHTML","setDisplay":"setDisplayHTML","setWhiteSpaceHandling":"setWhiteSpaceHandlingHTML","focusMorph":"focusMorphHTML"},"290":{"style":{"__isSmartRef__":true,"id":291},"chunkOwner":{"__isSmartRef__":true,"id":284},"storedString":"–","__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextChunk"},"291":{"__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextEmphasis"},"292":{"morph":{"__isSmartRef__":true,"id":284},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"293":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"294":{"x":17,"y":17,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"295":{"_Position":{"__isSmartRef__":true,"id":296},"renderContextTable":{"__isSmartRef__":true,"id":297},"_Extent":{"__isSmartRef__":true,"id":298},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":299},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":220},"_Fill":{"__isSmartRef__":true,"id":221},"_StrokeOpacity":0,"_BorderRadius":5,"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"296":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"297":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"298":{"x":17,"y":17,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"299":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"300":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"301":{"morph":{"__isSmartRef__":true,"id":283},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"302":{"x":561,"y":3,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"303":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"304":{"stops":[{"__isSmartRef__":true,"id":305},{"__isSmartRef__":true,"id":307},{"__isSmartRef__":true,"id":309},{"__isSmartRef__":true,"id":311}],"vector":{"__isSmartRef__":true,"id":230},"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.LinearGradient"},"305":{"offset":0,"color":{"__isSmartRef__":true,"id":306}},"306":{"r":0.98,"g":0.98,"b":0.98,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"307":{"offset":0.4,"color":{"__isSmartRef__":true,"id":308}},"308":{"r":0.91,"g":0.91,"b":0.91,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"309":{"offset":0.6,"color":{"__isSmartRef__":true,"id":310}},"310":{"r":0.91,"g":0.91,"b":0.91,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"311":{"offset":1,"color":{"__isSmartRef__":true,"id":312}},"312":{"r":0.97,"g":0.97,"b":0.97,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"313":{"moveHorizontal":true},"314":{"sourceObj":{"__isSmartRef__":true,"id":283},"sourceAttrName":"getHelpText","targetObj":{"__isSmartRef__":true,"id":34},"targetMethodName":"getCollapseHelp","converter":null,"converterString":null,"updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":315},"__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"315":{"source":{"__isSmartRef__":true,"id":283},"target":{"__isSmartRef__":true,"id":34}},"316":{"sourceObj":{"__isSmartRef__":true,"id":283},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":34},"targetMethodName":"toggleCollapse","converter":null,"converterString":null,"updater":null,"updaterString":null,"varMapping":{"__isSmartRef__":true,"id":317},"__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"317":{"source":{"__isSmartRef__":true,"id":283},"target":{"__isSmartRef__":true,"id":34}},"318":{"submorphs":[],"scripts":[],"id":"1AB40380-E628-456E-86F7-4D903AB3EC67","shape":{"__isSmartRef__":true,"id":319},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"_Position":{"__isSmartRef__":true,"id":326},"showsHalos":false,"name":"SyncMorphActivationToggle","partsBinMetaInfo":{"__isSmartRef__":true,"id":327},"__SourceModuleName__":"Global.lively.morphic.Core","renderContextTable":{"__isSmartRef__":true,"id":330},"eventHandler":{"__isSmartRef__":true,"id":331},"attributeConnections":[{"__isSmartRef__":true,"id":332}],"doNotSerialize":[],"doNotCopyProperties":[],"derivationIds":[127,"F0291F62-F100-480C-AEBF-0230398F7983","C2F57312-8BCC-4C97-BD7D-A04B932B4965","4DA3F5A5-6851-4DB7-91A3-BD96827F1D81"],"partTests":{"__isSmartRef__":true,"id":333},"owner":{"__isSmartRef__":true,"id":187},"priorExtent":{"__isSmartRef__":true,"id":338},"distanceToDragEvent":{"__isSmartRef__":true,"id":339},"active":false,"isBeingDragged":false,"isLockOwner":false,"grabbingEnabled":false,"_Rotation":0,"_Scale":1.002003004005006,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":340},"__LivelyClassName__":"lively.morphic.Box"},"319":{"position":{"__isSmartRef__":true,"id":320},"_Extent":{"__isSmartRef__":true,"id":321},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":322},"_Fill":{"__isSmartRef__":true,"id":323},"__SourceModuleName__":"Global.lively.morphic.Shapes","renderContextTable":{"__isSmartRef__":true,"id":324},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":325},"_BorderRadius":5.180000000000001,"_Opacity":1,"_BorderStyle":"solid","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"320":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"321":{"x":17.165916999999986,"y":17.165916999999986,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"322":{"r":0,"g":0,"b":0,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"323":{"r":0.8,"g":0.8,"b":0.8,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"324":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"325":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"326":{"x":23,"y":3,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"327":{"partsSpaceName":"PartsBin/Basic","__SourceModuleName__":"Global.lively.PartsBin","comment":"A simple box morph. A really blue one. Its amazing what you can build out of simple boxes.... Who needs stars when you got blue rectangles!","migrationLevel":4,"partName":"Rectangle","changes":[{"__isSmartRef__":true,"id":328}],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo"},"328":{"date":{"__isSmartRef__":true,"id":329},"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B"},"329":{"isSerializedDate":true,"string":"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)"},"330":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"331":{"morph":{"__isSmartRef__":true,"id":318},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"332":{"sourceObj":{"__isSmartRef__":true,"id":318},"sourceAttrName":"onMouseUp","targetObj":{"__isSmartRef__":true,"id":318},"targetMethodName":"change","__SourceModuleName__":"Global.lively.bindings","__LivelyClassName__":"AttributeConnection"},"333":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":334}},"334":{"test01IsMorph":{"__isSmartRef__":true,"id":335}},"335":{"varMapping":{"__isSmartRef__":true,"id":336},"source":"function test01IsMorph(aPart) {\n this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":337},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"336":{"this":{"__isSmartRef__":true,"id":333}},"337":{},"338":{"x":18.163917999999985,"y":17.165916999999986,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"339":{"x":36,"y":-14,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"340":{"onrestore":{"__isSmartRef__":true,"id":341},"reset":{"__isSmartRef__":true,"id":349},"deactivate":{"__isSmartRef__":true,"id":353},"activate":{"__isSmartRef__":true,"id":357},"change":{"__isSmartRef__":true,"id":361}},"341":{"varMapping":{"__isSmartRef__":true,"id":342},"source":"function onrestore() {\n this.reset();\n}","funcProperties":{"__isSmartRef__":true,"id":347},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"342":{"this":{"__isSmartRef__":true,"id":318},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":343}},"343":{"$super":{"__isSmartRef__":true,"id":344}},"344":{"varMapping":{"__isSmartRef__":true,"id":345},"source":"function () {\n try {\n return obj.constructor.prototype[name].apply(obj, arguments)\n } catch (e) {\n alert('Error in $super call: ' + e + '\\n' + e.stack);\n return null;\n }\n }","funcProperties":{"__isSmartRef__":true,"id":346},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"345":{"obj":{"__isSmartRef__":true,"id":318},"name":"onrestore"},"346":{},"347":{"timestamp":{"__isSmartRef__":true,"id":348},"user":"conradcalmez","tags":[]},"348":{"isSerializedDate":true,"string":"Sat Feb 25 2012 16:18:20 GMT+0100 (CET)"},"349":{"varMapping":{"__isSmartRef__":true,"id":350},"source":"function reset() {\n this.deactivate();\n}","funcProperties":{"__isSmartRef__":true,"id":351},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"350":{"this":{"__isSmartRef__":true,"id":318}},"351":{"timestamp":{"__isSmartRef__":true,"id":352},"user":"conradcalmez","tags":[]},"352":{"isSerializedDate":true,"string":"Sat Feb 25 2012 16:18:36 GMT+0100 (CET)"},"353":{"varMapping":{"__isSmartRef__":true,"id":354},"source":"function deactivate() {\n this.active = false;\n this.setFill(Color.gray);\n}","funcProperties":{"__isSmartRef__":true,"id":355},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"354":{"this":{"__isSmartRef__":true,"id":318}},"355":{"timestamp":{"__isSmartRef__":true,"id":356},"user":"conradcalmez","tags":[]},"356":{"isSerializedDate":true,"string":"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)"},"357":{"varMapping":{"__isSmartRef__":true,"id":358},"source":"function activate() {\n this.active = true;\n this.setFill(Color.green);\n}","funcProperties":{"__isSmartRef__":true,"id":359},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"358":{"this":{"__isSmartRef__":true,"id":318}},"359":{"timestamp":{"__isSmartRef__":true,"id":360},"user":"conradcalmez","tags":[]},"360":{"isSerializedDate":true,"string":"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)"},"361":{"varMapping":{"__isSmartRef__":true,"id":362},"source":"function change() {\n this.owner.owner.targetMorph.change();\n if(this.active){\n this.deactivate()\n } else {\n this.activate();\n }\n}","funcProperties":{"__isSmartRef__":true,"id":363},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"362":{"this":{"__isSmartRef__":true,"id":318}},"363":{"timestamp":{"__isSmartRef__":true,"id":364},"user":"conradcalmez","tags":[]},"364":{"isSerializedDate":true,"string":"Sat Feb 25 2012 14:52:05 GMT+0100 (CET)"},"365":{"_Position":{"__isSmartRef__":true,"id":366},"renderContextTable":{"__isSmartRef__":true,"id":367},"_Extent":{"__isSmartRef__":true,"id":368},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":369},"_BorderWidth":1,"_BorderColor":{"__isSmartRef__":true,"id":370},"_Fill":{"__isSmartRef__":true,"id":371},"_StrokeOpacity":1,"_BorderRadius":"8px 8px 0px 0px","__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"366":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"367":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"368":{"x":600,"y":22,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"369":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"370":{"r":0.4,"g":0.4,"b":0.4,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"371":{"stops":[{"__isSmartRef__":true,"id":372},{"__isSmartRef__":true,"id":374}],"vector":{"__isSmartRef__":true,"id":376},"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.LinearGradient"},"372":{"offset":0,"color":{"__isSmartRef__":true,"id":373}},"373":{"r":1,"g":1,"b":1,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"374":{"offset":1,"color":{"__isSmartRef__":true,"id":375}},"375":{"r":0.6400000000000001,"g":0.6400000000000001,"b":0.6400000000000001,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"376":{"x":0,"y":0,"width":0,"height":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"377":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"378":{"morph":{"__isSmartRef__":true,"id":187},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"379":{"resizeWidth":true,"adjustForNewBounds":true},"380":{"x":0,"y":8,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"381":{"x":600,"y":22,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"382":{"x":409,"y":-14,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"383":{"renderContextTable":{"__isSmartRef__":true,"id":384},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":385},"_BorderWidth":0,"_Fill":null,"_StrokeOpacity":0,"_BorderRadius":0,"_Extent":{"__isSmartRef__":true,"id":386},"__SourceModuleName__":"Global.lively.morphic.Shapes","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"384":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"385":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"386":{"x":600,"y":400,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"387":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"388":{"morph":{"__isSmartRef__":true,"id":34},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"389":{"adjustForNewBounds":true},"390":{"x":61,"y":280,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"391":{"x":600,"y":400,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"392":{"partsSpaceName":"PartsBin/BP2012/","__SourceModuleName__":"Global.lively.PartsBin","comment":"A morph that serializes objects that are dropped onto it and writes it to a CouchDB. It also listens via longpolling for changes on the CouchDB","migrationLevel":4,"partName":"SyncMorph","changes":[{"__isSmartRef__":true,"id":393},{"__isSmartRef__":true,"id":395},{"__isSmartRef__":true,"id":397},{"__isSmartRef__":true,"id":399},{"__isSmartRef__":true,"id":401}],"revisionOnLoad":146968,"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo"},"393":{"date":{"__isSmartRef__":true,"id":394},"author":"conradcalmez","message":"fixed!","id":"4E255313-AEF4-4E48-BCE8-4613CD5CB9B6"},"394":{"isSerializedDate":true,"string":"Tue Mar 20 2012 14:57:59 GMT+0100 (CET)"},"395":{"date":{"__isSmartRef__":true,"id":396},"author":"conradcalmez","message":"simplified deletion ...","id":"689ED967-AB36-4CCC-B8AA-FFDB0BA4E1BC"},"396":{"isSerializedDate":true,"string":"Wed Feb 29 2012 16:00:05 GMT+0100 (CET)"},"397":{"date":{"__isSmartRef__":true,"id":398},"author":"conradcalmez","message":"initial working version","id":"BA1F77FA-14C3-4D1C-95A8-6688E23CDBF5"},"398":{"isSerializedDate":true,"string":"Mon Feb 27 2012 13:04:58 GMT+0100 (CET)"},"399":{"date":{"__isSmartRef__":true,"id":400},"author":"conradcalmez","message":"added some tests","id":"BE52228F-8DCC-4EA0-98FE-A84807380FA5"},"400":{"isSerializedDate":true,"string":"Mon Feb 27 2012 15:59:49 GMT+0100 (CET)"},"401":{"date":{"__isSmartRef__":true,"id":402},"author":"conradcalmez","message":"fixed positioning bug (now restores relative position to owner aka. SyncMorph)","id":"A03671ED-8180-4AFE-A443-545DDA45B2E0"},"402":{"isSerializedDate":true,"string":"Mon Feb 27 2012 16:31:31 GMT+0100 (CET)"},"403":{"x":519,"y":304,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"404":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":405},"id":2,"renderContextTable":{"__isSmartRef__":true,"id":411},"eventHandler":{"__isSmartRef__":true,"id":412},"droppingEnabled":false,"halosEnabled":false,"_world":{"__isSmartRef__":true,"id":0},"eventsAreIgnored":true,"_HandStyle":"default","_PointerEvents":"none","_Position":{"__isSmartRef__":true,"id":413},"priorExtent":{"__isSmartRef__":true,"id":414},"owner":{"__isSmartRef__":true,"id":0},"_Rotation":0,"_Scale":1,"__SourceModuleName__":"Global.lively.morphic.Events","internalClickedOnMorph":{"__isSmartRef__":true,"id":415},"carriesGrabbedMorphs":false,"lastScrollTime":1333526739779,"scrollFocusMorph":{"__isSmartRef__":true,"id":415},"__LivelyClassName__":"lively.morphic.HandMorph","withLayers":["Global.NoMagnetsLayer"]},"405":{"_Position":{"__isSmartRef__":true,"id":406},"renderContextTable":{"__isSmartRef__":true,"id":407},"_Extent":{"__isSmartRef__":true,"id":408},"_Fill":{"__isSmartRef__":true,"id":409},"__SourceModuleName__":"Global.lively.morphic.Shapes","_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":410},"__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"406":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"407":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"408":{"x":2,"y":2,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"409":{"r":0.8,"g":0,"b":0,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"410":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"411":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"412":{"morph":{"__isSmartRef__":true,"id":404},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"413":{"x":1200,"y":486,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"414":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"415":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":416},"derivationIds":[null],"id":"C64977D7-48D4-45C8-AF36-CA4EF6AADE4F","renderContextTable":{"__isSmartRef__":true,"id":428},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":429}],"eventHandler":{"__isSmartRef__":true,"id":431},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"_ClipMode":"hidden","fixedWidth":false,"fixedHeight":true,"allowInput":false,"_FontFamily":"Helvetica","_FontSize":10.5,"evalEnabled":false,"priorExtent":{"__isSmartRef__":true,"id":432},"_MaxTextWidth":null,"_MinTextWidth":null,"_MaxTextHeight":null,"_MinTextHeight":null,"_HandStyle":"default","_TextColor":{"__isSmartRef__":true,"id":433},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":434},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore"},"416":{"_Position":{"__isSmartRef__":true,"id":417},"renderContextTable":{"__isSmartRef__":true,"id":418},"_Extent":{"__isSmartRef__":true,"id":419},"_ClipMode":"hidden","_Padding":{"__isSmartRef__":true,"id":420},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":421},"_Fill":{"__isSmartRef__":true,"id":422},"_BorderRadius":4,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes"},"417":{"x":0,"y":184,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"418":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"419":{"x":170,"y":23,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"420":{"x":3,"y":2,"width":0,"height":0,"__LivelyClassName__":"Rectangle","__SourceModuleName__":"Global.lively.morphic.Graphics"},"421":{"r":0,"g":0,"b":0,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"422":{"stops":[{"__isSmartRef__":true,"id":423},{"__isSmartRef__":true,"id":425}],"vector":{"__isSmartRef__":true,"id":427},"__LivelyClassName__":"lively.morphic.LinearGradient","__SourceModuleName__":"Global.lively.morphic.Shapes"},"423":{"offset":0,"color":{"__isSmartRef__":true,"id":424}},"424":{"r":0.39215686274509803,"g":0.5137254901960784,"b":0.9725490196078431,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"425":{"offset":1,"color":{"__isSmartRef__":true,"id":426}},"426":{"r":0.13333333333333333,"g":0.3333333333333333,"b":0.9607843137254902,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"427":{"x":0,"y":0,"width":0,"height":1,"__LivelyClassName__":"Rectangle","__SourceModuleName__":"Global.lively.morphic.Graphics"},"428":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","updateText":"updateTextHTML","setTextExtent":"setTextExtentHTML","setMaxTextWidth":"setMaxTextWidthHTML","setMaxTextHeight":"setMaxTextHeightHTML","setMinTextWidth":"setMinTextWidthHTML","setMinTextHeight":"setMinTextHeightHTML","getTextExtent":"getTextExtentHTML","getTextString":"getTextStringHTML","ignoreTextEvents":"ignoreTextEventsHTML","unignoreTextEvents":"unignoreTextEventsHTML","enableTextEvents":"enableTextEventsHTML","setFontFamily":"setFontFamilyHTML","setFontSize":"setFontSizeHTML","setTextColor":"setTextColorHTML","setPadding":"setPaddingHTML","setAlign":"setAlignHTML","setVerticalAlign":"setVerticalAlignHTML","setDisplay":"setDisplayHTML","setWhiteSpaceHandling":"setWhiteSpaceHandlingHTML","focusMorph":"focusMorphHTML"},"429":{"style":{"__isSmartRef__":true,"id":430},"chunkOwner":{"__isSmartRef__":true,"id":415},"storedString":"save world","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"430":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"431":{"morph":{"__isSmartRef__":true,"id":415},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"432":{"x":180,"y":23,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"433":{"r":1,"g":1,"b":1,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"434":{"onMouseWheel":{"__isSmartRef__":true,"id":435},"onSelectStart":{"__isSmartRef__":true,"id":442}},"435":{"varMapping":{"__isSmartRef__":true,"id":436},"source":"function onMouseWheel(evt) {\n return false; // to allow scrolling\n }","funcProperties":{"__isSmartRef__":true,"id":441},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"436":{"this":{"__isSmartRef__":true,"id":415},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":437}},"437":{"$super":{"__isSmartRef__":true,"id":438}},"438":{"varMapping":{"__isSmartRef__":true,"id":439},"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":440},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"439":{"obj":{"__isSmartRef__":true,"id":415},"name":"onMouseWheel"},"440":{},"441":{},"442":{"varMapping":{"__isSmartRef__":true,"id":443},"source":"function onSelectStart(evt) {\n return false; // to allow scrolling\n }","funcProperties":{"__isSmartRef__":true,"id":448},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"443":{"this":{"__isSmartRef__":true,"id":415},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":444}},"444":{"$super":{"__isSmartRef__":true,"id":445}},"445":{"varMapping":{"__isSmartRef__":true,"id":446},"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":447},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"446":{"obj":{"__isSmartRef__":true,"id":415},"name":"onSelectStart"},"447":{},"448":{},"449":{"_Position":{"__isSmartRef__":true,"id":450},"renderContextTable":{"__isSmartRef__":true,"id":451},"_Extent":{"__isSmartRef__":true,"id":452},"_Fill":{"__isSmartRef__":true,"id":453},"__SourceModuleName__":"Global.lively.morphic.Shapes","_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":454},"__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"450":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"451":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"452":{"x":1440,"y":5000,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"453":{"r":1,"g":1,"b":1,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"454":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"455":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","setScroll":"setScrollHTML"},"456":{"morph":{"__isSmartRef__":true,"id":0},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"457":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"458":{"x":1440,"y":1024,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"459":{"name":"Local code","__LivelyClassName__":"ChangeSet","__SourceModuleName__":"Global.lively.ChangeSet"},"460":{"x":1198,"y":484,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"461":{"submorphs":[{"__isSmartRef__":true,"id":462}],"scripts":[],"id":"2513BD6A-3D8D-4476-AFB6-DAFDD65FD070","shape":{"__isSmartRef__":true,"id":491},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"_Position":{"__isSmartRef__":true,"id":498},"showsHalos":false,"name":"LoadingMorph","partsBinMetaInfo":{"__isSmartRef__":true,"id":499},"__SourceModuleName__":"Global.lively.morphic.Core","renderContextTable":{"__isSmartRef__":true,"id":596},"eventHandler":{"__isSmartRef__":true,"id":597},"attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"derivationIds":[127,"59692BC3-6C7B-4E23-B820-8699260EA722","486BB935-1313-4103-B2A8-642B19437478","18AFFD44-46CD-489E-B1D6-DED43E2B6B06","2608C892-2204-4981-9A87-8E749F8944AB","5535861F-4EA2-44AB-8A40-0538124E0AAC","16C292B3-86E8-4622-B516-27C48263B8CC","87731A20-D455-44D0-97E5-98A7CFD4E417","A17081E7-E597-47ED-BD32-6E4D206BD7D7","CFB4A44C-BFEA-4584-BCBA-AE2A56739200","76B3DD9B-8D01-42BA-A574-AB99D5F899BB","1EBC5512-8F54-4B24-998C-69A285EC8533","DD1165C7-6C1A-4361-A4AE-FCF6F31152FD","4D6D36E8-48F3-408A-B03C-202E4DC182BD","5F3B3E0F-BBC6-4DDA-BAA0-7EFC05FF2011","E0A6B33B-767A-4532-9021-892414520200","F5F5E2B1-5FF0-4E09-B323-AE88A3920B8D","0C7E832A-A741-430F-B295-8BC181D066FE","472AED3B-CB76-49BD-BF49-354A2D568F86","A7C52F65-D140-4791-880F-F7584C7BB570","3516412B-8B36-4E52-9416-6B7FB358BDC2","1840CACC-078C-4795-AD3F-E9D6F8D557A0","1FEDCA25-0131-46FA-840F-DC5F1B05C6CA","C620CED3-0AE9-4097-9AA7-2706A042F9C9","679A861B-40E0-4DB2-B22F-95B454C6978D","FEF39B3C-E634-4825-BAB8-2D44FE647B03"],"isBeingDragged":false,"priorExtent":{"__isSmartRef__":true,"id":598},"layout":{"__isSmartRef__":true,"id":599},"distanceToDragEvent":{"__isSmartRef__":true,"id":600},"prevScroll":[0,0],"moved":true,"_Rotation":0,"_Scale":1,"headRevision":146469,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":601},"__LivelyClassName__":"lively.morphic.Box"},"462":{"submorphs":[{"__isSmartRef__":true,"id":463}],"scripts":[],"shape":{"__isSmartRef__":true,"id":479},"id":"BA931CA5-55C4-4817-8B93-12D3AC76DEB3","renderContextTable":{"__isSmartRef__":true,"id":484},"eventHandler":{"__isSmartRef__":true,"id":485},"droppingEnabled":true,"halosEnabled":true,"_Position":{"__isSmartRef__":true,"id":486},"name":"ProgressIndicator","priorExtent":{"__isSmartRef__":true,"id":487},"showsHalos":false,"distanceToDragEvent":{"__isSmartRef__":true,"id":488},"partsBinMetaInfo":{"__isSmartRef__":true,"id":489},"__SourceModuleName__":"Global.lively.morphic.Widgets","derivationIds":[520,"071F18BE-FF28-40F5-ACAD-1916E0D25C38","DF185A10-743D-45FC-B9C2-76E12D908BCF","BF125D2C-596A-4C1E-A5F8-DAE4801E9497","3CEE8CFF-B8F1-4B4B-A405-CB583080252A","D0652878-8F9C-4591-8A82-296898AACDB6","31441DDF-2220-43BE-A99F-69E1FEC68030","14A90039-0D3E-46DC-8445-D42B8E02EB42","681EF5DE-A344-4114-B2F3-B96CE3872524","C0381116-5116-4F33-B082-A411D0E4534E","24E9581E-B008-46EE-9CBC-D5190E100D98","C69D1041-2C5E-48FE-B04C-04E66450658A","4830945B-4FFF-4564-9424-34D7995DAE60","8602C233-B3E7-4682-9B0E-D7549761D934","B4E0E11F-2BED-462E-B708-89D63971856E","EE0144C2-D016-4390-8A67-4E7DEF171C83","F44DF6E4-5F27-440E-AB5F-3721C0A10CA6","73FC6648-DAAF-4673-8CF4-7DA219513F22","B78EB1B5-780C-45F7-B0A7-B988B52B1FF1","DFDB8CD1-72F7-40F4-849B-1F9B866277AB","66111105-B1FC-41F7-BF70-D45118C9E09F","02420416-1E35-4831-AABB-91CD0460CA1A","7C6B2EB2-4510-4A8E-BAFF-5CF0040DD7F5","0503F5A1-1732-4610-9A5A-920D658CA766","07C5AE03-36AD-4849-BACD-27D7D9A2CCF2","9FFF9D73-931C-404C-AA4B-5AC2E7C53504"],"attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"owner":{"__isSmartRef__":true,"id":461},"isBeingDragged":false,"layout":{"__isSmartRef__":true,"id":490},"prevScroll":[0,0],"_Rotation":0,"_Scale":1,"__LivelyClassName__":"lively.morphic.Image"},"463":{"submorphs":[],"scripts":[],"id":"8E3FCB46-CA5B-4B8A-8552-167FB8273D00","shape":{"__isSmartRef__":true,"id":464},"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"fixedHeight":false,"allowsInput":true,"_FontFamily":"Arial, sans-serif","registeredForMouseEvents":true,"_Position":{"__isSmartRef__":true,"id":470},"_MaxTextWidth":257,"_MaxTextHeight":null,"textColor":{"__isSmartRef__":true,"id":467},"showsHalos":false,"_FontSize":14,"__SourceModuleName__":"Global.lively.morphic.TextCore","name":"loadedMorphName","partsBinMetaInfo":{"__isSmartRef__":true,"id":471},"textChunks":[{"__isSmartRef__":true,"id":472}],"charsReplaced":"MorphName","lastFindLoc":18,"priorSelectionRange":[9,0],"prevScroll":[0,0],"priorExtent":{"__isSmartRef__":true,"id":474},"renderContextTable":{"__isSmartRef__":true,"id":475},"eventHandler":{"__isSmartRef__":true,"id":476},"attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"_Padding":{"__isSmartRef__":true,"id":477},"_ClipMode":"visible","derivationIds":[355,"023045B3-2D6B-4425-89FB-F4806D527BE0","DC0C2365-868C-41AE-8369-51C31E91493E","C6D9D314-86A1-4015-970B-F6787F535E1A","6AA4552E-2E85-447E-9033-99D5AA1A94BC","D94BE49C-8A3E-4F1F-BF28-FEDD9B40D213","AA8F0470-654C-4AA2-8135-4607F5429AC5","E0BAABCC-FFB2-4EDF-BAE5-C63CC99B6A97","1A86AE17-73AE-442E-AB36-DD90C6DFC8BC","EF750075-E964-4CD3-B6A4-161511E1D058","CED69CBF-FFA5-45E7-B333-FBACE4F278AC","E56978C1-7424-4C10-8168-11FD3237B540","D5AB2532-A4DC-42D6-AF17-99CBBCEAA848","245866CB-598A-4172-A3A0-A06D4D26C6AD","43B0F12E-5793-43AA-80E1-496774E0EBA6","1B776A8C-0413-475F-8EBD-120BBD91D2BB","F84F2C9A-8003-4E81-833A-83F48C92F3B8","3124B389-9FA4-4348-BC5D-0DFF9C59CD1B","1A1BCBAC-D7CC-4BAE-B8C2-7C693F7327A1","1CB201BA-5E0B-4771-821A-139FA2AEFBC2","195520FA-4816-47A4-B0F5-BA890AFD9DF9","0D15F28A-24C9-46B7-89C5-6D2354728AC1","316FE9D3-62EC-4FD6-9B0F-FFA622B79575","739F3743-9BE1-48C8-813D-C0BFB0DCACA6","01877B3B-7DA7-4222-B011-7B5F4E501862","B8FE7DEE-9568-4BE6-BA12-EA674BA79E08"],"_WhiteSpaceHandling":"pre-wrap","owner":{"__isSmartRef__":true,"id":462},"_MinTextWidth":257,"_MinTextHeight":null,"previousSelection":[6,6],"_Align":"center","distanceToDragEvent":{"__isSmartRef__":true,"id":478},"isBeingDragged":false,"_Rotation":0,"_Scale":1,"__LivelyClassName__":"lively.morphic.Text"},"464":{"fill":null,"__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":{"__isSmartRef__":true,"id":465},"_Extent":{"__isSmartRef__":true,"id":466},"_BorderWidth":0,"_BorderColor":{"__isSmartRef__":true,"id":467},"renderContextTable":{"__isSmartRef__":true,"id":468},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":469},"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"465":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"466":{"x":257,"y":23,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"467":{"r":0,"g":0,"b":0,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"468":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"469":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"470":{"x":-109,"y":38,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"471":{"partsSpaceName":"PartsBin/Basic","__SourceModuleName__":"Global.lively.PartsBin","migrationLevel":4,"comment":"a simple text morph","partName":"Text","__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo"},"472":{"style":{"__isSmartRef__":true,"id":473},"chunkOwner":{"__isSmartRef__":true,"id":463},"__SourceModuleName__":"Global.lively.morphic.TextCore","storedString":"loading part","__LivelyClassName__":"lively.morphic.TextChunk"},"473":{"__SourceModuleName__":"Global.lively.morphic.TextCore","__LivelyClassName__":"lively.morphic.TextEmphasis"},"474":{"x":257,"y":23,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"475":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","updateText":"updateTextHTML","setTextExtent":"setTextExtentHTML","setMaxTextWidth":"setMaxTextWidthHTML","setMaxTextHeight":"setMaxTextHeightHTML","setMinTextWidth":"setMinTextWidthHTML","setMinTextHeight":"setMinTextHeightHTML","getTextExtent":"getTextExtentHTML","getTextString":"getTextStringHTML","ignoreTextEvents":"ignoreTextEventsHTML","unignoreTextEvents":"unignoreTextEventsHTML","enableTextEvents":"enableTextEventsHTML","setFontFamily":"setFontFamilyHTML","setFontSize":"setFontSizeHTML","setTextColor":"setTextColorHTML","setPadding":"setPaddingHTML","setAlign":"setAlignHTML","setVerticalAlign":"setVerticalAlignHTML","setDisplay":"setDisplayHTML","setWhiteSpaceHandling":"setWhiteSpaceHandlingHTML","focusMorph":"focusMorphHTML"},"476":{"morph":{"__isSmartRef__":true,"id":463},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"477":{"x":5,"y":5,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"478":{"x":179,"y":-11,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"479":{"_Position":{"__isSmartRef__":true,"id":480},"renderContextTable":{"__isSmartRef__":true,"id":481},"_Extent":{"__isSmartRef__":true,"id":482},"_ImageURL":"data:image/gif;base64,R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wCRHZnFVdmgHu2nFwlWCI3WGc3TSWhUFGxTAUkGCbtgENBMJAEJsxgMLWzpEAACH5BAkKAAAALAAAAAAQABAAAAMyCLrc/jDKSatlQtScKdceCAjDII7HcQ4EMTCpyrCuUBjCYRgHVtqlAiB1YhiCnlsRkAAAOwAAAAAAAAAAAA==","attributeConnections":[],"doNotSerialize":[],"doNotCopyProperties":[],"isLoaded":true,"__SourceModuleName__":"Global.lively.morphic.Shapes","_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":483},"_BorderWidth":0,"_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","__LivelyClassName__":"lively.morphic.Shapes.Image"},"480":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"481":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML","setImageURL":"setImageURLHTML","getNativeExtent":"getNativeExtentHTML"},"482":{"x":31,"y":31,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"483":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"484":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"485":{"morph":{"__isSmartRef__":true,"id":462},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"486":{"x":113.5,"y":81,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"487":{"x":30,"y":31,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"488":{"x":39,"y":-11,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"489":{"partName":"ProgressIndicator","requiredModules":[],"migrationLevel":2,"partsSpaceName":"PartsBin/Widgets/","__SourceModuleName__":"Global.lively.PartsBin","__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo"},"490":{"centeredHorizontal":true,"centeredVertical":true},"491":{"position":{"__isSmartRef__":true,"id":492},"_Extent":{"__isSmartRef__":true,"id":493},"_BorderWidth":1,"_BorderColor":{"__isSmartRef__":true,"id":494},"_Fill":{"__isSmartRef__":true,"id":495},"__SourceModuleName__":"Global.lively.morphic.Shapes","renderContextTable":{"__isSmartRef__":true,"id":496},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":497},"_BorderRadius":8.515,"_Opacity":0.8146,"_BorderStyle":"solid","__LivelyClassName__":"lively.morphic.Shapes.Rectangle"},"492":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"493":{"x":266,"y":223,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"494":{"r":0,"g":0,"b":0,"a":1,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Color"},"495":{"r":0.839,"g":0.839,"b":0.839,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"496":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setClipMode":"setClipModeHTML"},"497":{"x":0,"y":0,"width":0,"height":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Rectangle"},"498":{"x":0,"y":0,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"499":{"partsSpaceName":"PartsBin/iPad Widgets","__SourceModuleName__":"Global.lively.PartsBin","comment":"This is a placeholder to indicate that a morph is being loaded. It will be replaced by the morph as soon as the requested morph finished loading.","migrationLevel":4,"partName":"LoadingMorph","changes":[{"__isSmartRef__":true,"id":500},{"__isSmartRef__":true,"id":502},{"__isSmartRef__":true,"id":504},{"__isSmartRef__":true,"id":506},{"__isSmartRef__":true,"id":508},{"__isSmartRef__":true,"id":510},{"__isSmartRef__":true,"id":512},{"__isSmartRef__":true,"id":514},{"__isSmartRef__":true,"id":516},{"__isSmartRef__":true,"id":518},{"__isSmartRef__":true,"id":520},{"__isSmartRef__":true,"id":522},{"__isSmartRef__":true,"id":524},{"__isSmartRef__":true,"id":526},{"__isSmartRef__":true,"id":528},{"__isSmartRef__":true,"id":530},{"__isSmartRef__":true,"id":532},{"__isSmartRef__":true,"id":534},{"__isSmartRef__":true,"id":536},{"__isSmartRef__":true,"id":538},{"__isSmartRef__":true,"id":540},{"__isSmartRef__":true,"id":542},{"__isSmartRef__":true,"id":544},{"__isSmartRef__":true,"id":546},{"__isSmartRef__":true,"id":548},{"__isSmartRef__":true,"id":550},{"__isSmartRef__":true,"id":552},{"__isSmartRef__":true,"id":554},{"__isSmartRef__":true,"id":556},{"__isSmartRef__":true,"id":558},{"__isSmartRef__":true,"id":560},{"__isSmartRef__":true,"id":562},{"__isSmartRef__":true,"id":564},{"__isSmartRef__":true,"id":566},{"__isSmartRef__":true,"id":568},{"__isSmartRef__":true,"id":570},{"__isSmartRef__":true,"id":572},{"__isSmartRef__":true,"id":574},{"__isSmartRef__":true,"id":576},{"__isSmartRef__":true,"id":578},{"__isSmartRef__":true,"id":580},{"__isSmartRef__":true,"id":582},{"__isSmartRef__":true,"id":584},{"__isSmartRef__":true,"id":586},{"__isSmartRef__":true,"id":588},{"__isSmartRef__":true,"id":590},{"__isSmartRef__":true,"id":592},{"__isSmartRef__":true,"id":594}],"revisionOnLoad":146474,"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo"},"500":{"date":{"__isSmartRef__":true,"id":501},"author":"sstamm","message":"","id":"1C1391AE-5722-4707-BE52-F0094FC56829"},"501":{"isSerializedDate":true,"string":"Wed Feb 22 2012 14:02:04 GMT+0100 (CET)"},"502":{"date":{"__isSmartRef__":true,"id":503},"author":"sstamm","message":"","id":"663F147A-9084-4AC3-81A7-1E7BA6547F08"},"503":{"isSerializedDate":true,"string":"Wed Feb 22 2012 12:43:10 GMT+0100 (CET)"},"504":{"date":{"__isSmartRef__":true,"id":505},"author":"sstamm","message":"","id":"F72B746E-B170-4EFB-9074-5E8770640B8A"},"505":{"isSerializedDate":true,"string":"Wed Feb 22 2012 12:36:14 GMT+0100 (CET)"},"506":{"date":{"__isSmartRef__":true,"id":507},"author":"sstamm","message":"","id":"568D2EFD-C535-43AE-8944-6D8B967129F5"},"507":{"isSerializedDate":true,"string":"Wed Feb 22 2012 12:23:04 GMT+0100 (CET)"},"508":{"date":{"__isSmartRef__":true,"id":509},"author":"sstamm","message":"","id":"AB2484A6-0707-4E13-845E-F0A5F48BBA3D"},"509":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:59:45 GMT+0100 (CET)"},"510":{"date":{"__isSmartRef__":true,"id":511},"author":"sstamm","message":"","id":"97D20633-F76C-46A5-A32A-FFE9BC83CAB3"},"511":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:59:10 GMT+0100 (CET)"},"512":{"date":{"__isSmartRef__":true,"id":513},"author":"sstamm","message":"","id":"8A697DF5-9A45-4A84-B709-9719BF55083E"},"513":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:56:54 GMT+0100 (CET)"},"514":{"date":{"__isSmartRef__":true,"id":515},"author":"sstamm","message":"","id":"F2157D66-1571-4B9A-B325-6FA96488260F"},"515":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:51:05 GMT+0100 (CET)"},"516":{"date":{"__isSmartRef__":true,"id":517},"author":"sstamm","message":"","id":"E5E808CA-06AB-47DC-A9C9-CA7967591545"},"517":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:47:19 GMT+0100 (CET)"},"518":{"date":{"__isSmartRef__":true,"id":519},"author":"sstamm","message":"","id":"009DC4E0-23CA-485A-A796-801AA0F75049"},"519":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:46:25 GMT+0100 (CET)"},"520":{"date":{"__isSmartRef__":true,"id":521},"author":"sstamm","message":"","id":"C0CE1397-6E2E-4E8C-AEFF-9017E24BB7E4"},"521":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:45:05 GMT+0100 (CET)"},"522":{"date":{"__isSmartRef__":true,"id":523},"author":"sstamm","message":"","id":"FFE16986-548D-4AC2-A627-CF6416282BC4"},"523":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:37:15 GMT+0100 (CET)"},"524":{"date":{"__isSmartRef__":true,"id":525},"author":"sstamm","message":"","id":"57213D63-7147-4057-ADC9-30994443B066"},"525":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:35:29 GMT+0100 (CET)"},"526":{"date":{"__isSmartRef__":true,"id":527},"author":"sstamm","message":"","id":"75A31364-B380-4312-BB5B-F8F2DA1CE824"},"527":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:31:52 GMT+0100 (CET)"},"528":{"date":{"__isSmartRef__":true,"id":529},"author":"sstamm","message":"","id":"5AA50B7E-7D33-44C4-807B-BF1ABA31D530"},"529":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:14:10 GMT+0100 (CET)"},"530":{"date":{"__isSmartRef__":true,"id":531},"author":"sstamm","message":"","id":"BCDCC505-534C-45E5-9BB2-5238959A5AD0"},"531":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:02:56 GMT+0100 (CET)"},"532":{"date":{"__isSmartRef__":true,"id":533},"author":"sstamm","message":"","id":"890D14F4-E89D-4E05-BFB9-875D6AB6C765"},"533":{"isSerializedDate":true,"string":"Wed Feb 22 2012 11:01:50 GMT+0100 (CET)"},"534":{"date":{"__isSmartRef__":true,"id":535},"author":"sstamm","message":"","id":"B6FE0805-0D24-4267-8238-8B332352617E"},"535":{"isSerializedDate":true,"string":"Wed Feb 22 2012 10:55:44 GMT+0100 (CET)"},"536":{"date":{"__isSmartRef__":true,"id":537},"author":"sstamm","message":"callbacks are working","id":"9348260A-3B55-4659-BC85-440BFBD98EA4"},"537":{"isSerializedDate":true,"string":"Fri Feb 10 2012 09:45:55 GMT+0100 (CET)"},"538":{"date":{"__isSmartRef__":true,"id":539},"author":"sstamm","message":"made it more opaque","id":"1B84264C-2822-407F-A58F-19217BCD2762"},"539":{"isSerializedDate":true,"string":"Wed Feb 08 2012 11:41:50 GMT+0100 (CET)"},"540":{"date":{"__isSmartRef__":true,"id":541},"author":"sstamm","message":"","id":"0FB41D7D-2A52-4782-814B-A66C24FCE569"},"541":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:13:49 GMT+0100 (CET)"},"542":{"date":{"__isSmartRef__":true,"id":543},"author":"sstamm","message":"","id":"A0C2D7C1-04AF-493A-A7D7-70750F7D3E2F"},"543":{"isSerializedDate":true,"string":"Thu Feb 02 2012 17:22:07 GMT+0100 (CET)"},"544":{"date":{"__isSmartRef__":true,"id":545},"author":"sstamm","message":"trollolol","id":"F6CFAD78-AC72-4DE2-9F38-79776C2E9462"},"545":{"isSerializedDate":true,"string":"Thu Feb 02 2012 14:55:14 GMT+0100 (CET)"},"546":{"date":{"__isSmartRef__":true,"id":547},"author":"sstamm","message":"should be centered now","id":"EE366B4D-C272-477F-8C28-4EAE5A7EC7CB"},"547":{"isSerializedDate":true,"string":"Thu Feb 02 2012 14:54:35 GMT+0100 (CET)"},"548":{"date":{"__isSmartRef__":true,"id":549},"author":"sstamm","message":"initial commit","id":"8920D925-DD16-4667-B8C7-FB74D78C2424"},"549":{"isSerializedDate":true,"string":"Thu Feb 02 2012 13:26:01 GMT+0100 (CET)"},"550":{"date":{"__isSmartRef__":true,"id":551},"author":"sstamm","message":"changed text morph name","id":"80E88A3C-5AF3-48F2-A600-710877630997"},"551":{"isSerializedDate":true,"string":"Thu Feb 02 2012 14:04:01 GMT+0100 (CET)"},"552":{"date":{"__isSmartRef__":true,"id":553},"author":"sstamm","message":"added loading script","id":"EE9B8F4D-1F03-4232-82E6-794046974F8F"},"553":{"isSerializedDate":true,"string":"Thu Feb 02 2012 14:28:30 GMT+0100 (CET)"},"554":{"date":{"__isSmartRef__":true,"id":555},"author":"sstamm","message":"added disconnection","id":"11F19267-924E-4087-99ED-998245576BD2"},"555":{"isSerializedDate":true,"string":"Thu Feb 02 2012 14:32:58 GMT+0100 (CET)"},"556":{"date":{"__isSmartRef__":true,"id":557},"author":"sstamm","message":"removed connections before deletion","id":"35A88218-6864-4D52-83A2-BFF7B9A6907C"},"557":{"isSerializedDate":true,"string":"Thu Feb 02 2012 14:41:00 GMT+0100 (CET)"},"558":{"date":{"__isSmartRef__":true,"id":559},"author":"sstamm","message":"now able to load parts by name and category as well as per partItem","id":"F36A5782-461D-4813-95F8-0207990A261C"},"559":{"isSerializedDate":true,"string":"Thu Feb 02 2012 15:24:30 GMT+0100 (CET)"},"560":{"date":{"__isSmartRef__":true,"id":561},"author":"sstamm","message":"now with round corners","id":"F42C39CB-CC37-467D-BF10-D362241F047E"},"561":{"isSerializedDate":true,"string":"Thu Feb 02 2012 15:26:23 GMT+0100 (CET)"},"562":{"date":{"__isSmartRef__":true,"id":563},"author":"sstamm","message":"loadingMorph is sync now","id":"12ACFFC9-BA53-4A2A-ABD4-894A5ECE1145"},"563":{"isSerializedDate":true,"string":"Thu Feb 02 2012 15:48:04 GMT+0100 (CET)"},"564":{"date":{"__isSmartRef__":true,"id":565},"author":"sstamm","message":"display the loadingMorph in new thread","id":"2BA51E30-F02B-4AF0-B3BE-52DD4ED522CC"},"565":{"isSerializedDate":true,"string":"Thu Feb 02 2012 15:53:49 GMT+0100 (CET)"},"566":{"date":{"__isSmartRef__":true,"id":567},"author":"sstamm","message":"","id":"DF0AE4EA-1B08-4556-8BBE-E6488F23B8A3"},"567":{"isSerializedDate":true,"string":"Thu Feb 02 2012 16:49:48 GMT+0100 (CET)"},"568":{"date":{"__isSmartRef__":true,"id":569},"author":"sstamm","message":"","id":"220821B3-C589-41C9-A324-8E7E6D9D6CEB"},"569":{"isSerializedDate":true,"string":"Thu Feb 02 2012 16:58:43 GMT+0100 (CET)"},"570":{"date":{"__isSmartRef__":true,"id":571},"author":"sstamm","message":"","id":"DEBFACE2-7EC5-4A86-AD46-5A0A88A73707"},"571":{"isSerializedDate":true,"string":"Thu Feb 02 2012 17:04:28 GMT+0100 (CET)"},"572":{"date":{"__isSmartRef__":true,"id":573},"author":"sstamm","message":"load request in new thread if loading should be async","id":"18282D28-D6D4-48C9-A508-6E3244449BD8"},"573":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:10:27 GMT+0100 (CET)"},"574":{"date":{"__isSmartRef__":true,"id":575},"author":"sstamm","message":"added benchmarking output","id":"249CFF90-DDF5-4A83-9759-0289E96D7D58"},"575":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:31:50 GMT+0100 (CET)"},"576":{"date":{"__isSmartRef__":true,"id":577},"author":"sstamm","message":"","id":"882082E1-29B6-418D-9B8B-672729D60619"},"577":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:38:26 GMT+0100 (CET)"},"578":{"date":{"__isSmartRef__":true,"id":579},"author":"sstamm","message":"","id":"5179AEF9-E19F-4B0C-BBD8-556C5687988A"},"579":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:44:11 GMT+0100 (CET)"},"580":{"date":{"__isSmartRef__":true,"id":581},"author":"sstamm","message":"","id":"1159C5B4-724E-4124-9D7B-5CD5DC4A8EE3"},"581":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:48:14 GMT+0100 (CET)"},"582":{"date":{"__isSmartRef__":true,"id":583},"author":"sstamm","message":"","id":"2A718D1F-1036-41D6-999A-336F2B14E65D"},"583":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:49:47 GMT+0100 (CET)"},"584":{"date":{"__isSmartRef__":true,"id":585},"author":"sstamm","message":"","id":"EB6BDD0C-7EEC-4124-B77F-2F106A601538"},"585":{"isSerializedDate":true,"string":"Tue Feb 07 2012 11:59:48 GMT+0100 (CET)"},"586":{"date":{"__isSmartRef__":true,"id":587},"author":"sstamm","message":"","id":"63EC8D07-AB6A-450A-BB84-9B4D37E03647"},"587":{"isSerializedDate":true,"string":"Tue Feb 07 2012 12:02:33 GMT+0100 (CET)"},"588":{"date":{"__isSmartRef__":true,"id":589},"author":"sstamm","message":"","id":"19CE12E4-5AA5-48DC-B1D1-B0EB0EDF1CB9"},"589":{"isSerializedDate":true,"string":"Tue Feb 07 2012 12:03:42 GMT+0100 (CET)"},"590":{"date":{"__isSmartRef__":true,"id":591},"author":"sstamm","message":"first attempt to introduce callback functions to part loading","id":"22BD0B95-8948-411A-A56E-AD7CBE445F1D"},"591":{"isSerializedDate":true,"string":"Thu Feb 09 2012 20:20:11 GMT+0100 (CET)"},"592":{"date":{"__isSmartRef__":true,"id":593},"author":"sstamm","message":"","id":"A216DFD2-9D1F-4E62-A22F-6B5472823E1B"},"593":{"isSerializedDate":true,"string":"Fri Mar 16 2012 15:37:34 GMT+0100 (CET)"},"594":{"date":{"__isSmartRef__":true,"id":595},"author":"sstamm","message":"","id":"464E723A-08DC-433C-AA5C-CEC850DBAF0B"},"595":{"isSerializedDate":true,"string":"Fri Mar 16 2012 15:42:29 GMT+0100 (CET)"},"596":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML"},"597":{"morph":{"__isSmartRef__":true,"id":461},"__SourceModuleName__":"Global.lively.morphic.Events","__LivelyClassName__":"lively.morphic.EventHandler"},"598":{"x":266,"y":223,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"599":{"adjustForNewBounds":true},"600":{"x":171,"y":-13,"__SourceModuleName__":"Global.lively.morphic.Graphics","__LivelyClassName__":"Point"},"601":{"loadPart":{"__isSmartRef__":true,"id":602},"loadFinished":{"__isSmartRef__":true,"id":606},"loadPartByName":{"__isSmartRef__":true,"id":610}},"602":{"varMapping":{"__isSmartRef__":true,"id":603},"source":"function loadPart(partItem, isAsync) {\n this.partItem = partItem;\n \n this.openInWorld();\n if(partItem.part) {\n this.setExtent(partItem.part.getExtent());\n }\n this.align(this.bounds().center(), $world.visibleBounds().center());\n \n \n if(typeof isAsync === \"function\") {\n this.callback = isAsync;\n }\n\n connect(partItem, 'part', this, \"loadFinished\");\n\n partItem.loadPart(isAsync);\n\n return partItem.part;\n\n}","funcProperties":{"__isSmartRef__":true,"id":604},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"603":{"this":{"__isSmartRef__":true,"id":461}},"604":{"timestamp":{"__isSmartRef__":true,"id":605},"user":"sstamm","tags":[]},"605":{"isSerializedDate":true,"string":"Fri Mar 16 2012 15:42:18 GMT+0100 (CET)"},"606":{"varMapping":{"__isSmartRef__":true,"id":607},"source":"function loadFinished(part) {\n if(this.owner === $world.firstHand()) {\n $world.firstHand().removeAllMorphs();\n } else {\n this.owner.addMorph(part);\n part.align(part.bounds().center(), this.bounds().center());\n this.remove();\n }\n disconnect(this.partItem, 'part', this, \"loadFinished\");\n if(this.callback) {\n this.callback(part);\n }\n}","funcProperties":{"__isSmartRef__":true,"id":608},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"607":{"this":{"__isSmartRef__":true,"id":461}},"608":{"timestamp":{"__isSmartRef__":true,"id":609},"user":"sstamm","tags":[]},"609":{"isSerializedDate":true,"string":"Wed Feb 22 2012 14:01:53 GMT+0100 (CET)"},"610":{"varMapping":{"__isSmartRef__":true,"id":611},"source":"function loadPartByName(partName, optPartsSpaceName, isAsync) {\n var partItem = lively.PartsBin.getPartItem(partName, optPartsSpaceName);\n return this.loadPart(partItem, isAsync);\n}","funcProperties":{"__isSmartRef__":true,"id":612},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"611":{"this":{"__isSmartRef__":true,"id":461}},"612":{"timestamp":{"__isSmartRef__":true,"id":613},"user":"sstamm","tags":[]},"613":{"isSerializedDate":true,"string":"Thu Feb 02 2012 17:03:18 GMT+0100 (CET)"},"614":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"savedWorldAsURL","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"visitNewPageAfterSaveAs","converter":null,"converterString":null,"updaterString":"function ($upd, v) {\n if (v && v.toString() !== URL.source.toString()) {\n $upd(v)\n }\n }","varMapping":{"__isSmartRef__":true,"id":615},"__SourceModuleName__":"Global.lively.bindings","__serializedLivelyClosures__":{"__isSmartRef__":true,"id":616},"__LivelyClassName__":"AttributeConnection"},"615":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":0}},"616":{"updater":{"__isSmartRef__":true,"id":617}},"617":{"originalFunc":null,"varMapping":{"__isSmartRef__":true,"id":615},"source":"function ($upd, v) {\n if (v && v.toString() !== URL.source.toString()) {\n $upd(v)\n }\n }","funcProperties":{"__isSmartRef__":true,"id":618},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"618":{},"619":{"protocol":"http:","hostname":"lively-kernel.org","pathname":"/repository/webwerkstatt/projects/BP2012/synchMorph.xhtml","__SourceModuleName__":"Global.lively.Network","__LivelyClassName__":"URL"},"isSimplifiedRegistry":true}}]]>