{"id":0,"registry":{"0":{"submorphs":[{"__isSmartRef__":true,"id":1},{"__isSmartRef__":true,"id":209},{"__isSmartRef__":true,"id":249},{"__isSmartRef__":true,"id":253},{"__isSmartRef__":true,"id":257}],"scripts":[],"shape":{"__isSmartRef__":true,"id":261},"_ClipMode":"visible","derivationIds":[],"id":"030AE1E3-E559-4D1D-B1F1-04BCB434F133","halosEnabled":true,"draggingEnabled":true,"layout":{"__isSmartRef__":true,"id":262},"__serializedExpressions__":["contentOffset","_Position"],"state":"expanded","isTextEditor":true,"closeButton":{"__isSmartRef__":true,"id":216},"collapseButton":{"__isSmartRef__":true,"id":226},"menuButton":{"__isSmartRef__":true,"id":236},"titleBar":{"__isSmartRef__":true,"id":209},"doNotSerialize":["$$contentStored","$$contentLoaded"],"doNotCopyProperties":["$$contentStored","$$contentLoaded"],"grabbingEnabled":false,"_Rotation":0,"_Scale":1,"attributeConnections":[{"__isSmartRef__":true,"id":263},{"__isSmartRef__":true,"id":265},{"__isSmartRef__":true,"id":267},{"__isSmartRef__":true,"id":269},{"__isSmartRef__":true,"id":271},{"__isSmartRef__":true,"id":273}],"contentLoaded":"console.log('load');\n\nvar version = \"5\"\n\nprint = function(a) {\n    var s = \"\"; \n    for (i in a) {s += i + \": \" + a[i] +\"\\n\"}; \n    return \"{\" +s + \"}\"\n}\n\nself.onfetch = function(event) {\n\nconsole.log('got a request' + event.request.url);\n\nif (event.request.url.match(\"https://eval/\")) {\n    var s = event.request.url.replace(\"https://eval/\",\"\")\n    s = decodeURI(s)\n    // event.respondWith(new Response(\"\" + print(self)));\n    \n    event.respondWith(new Response(\"source: \" + s + \" eval: \" + eval(s)));\n    // var body = \"source: \" + text + \" result: \" + eval(text) + \" / \" + eval(\"3+4\")\n    \n} else if (event.request.url.match(\"https://version/\")) {\n    event.respondWith(new Response(\"version: \" + version));\n} else {\n    event.respondWith(fetch(event.request))\n}\n\n};\n","reframeHandle":{"__isSmartRef__":true,"id":249},"rightReframeHandle":{"__isSmartRef__":true,"id":257},"bottomReframeHandle":{"__isSmartRef__":true,"id":253},"targetMorph":{"__isSmartRef__":true,"id":1},"eventHandler":{"__isSmartRef__":true,"id":275},"_StyleClassNames":["Morph","Window"],"showsHalos":false,"name":"ServiceWorkerEditor","partsBinMetaInfo":{"__isSmartRef__":true,"id":276},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":278},"__LivelyClassName__":"lively.morphic.Window","__SourceModuleName__":"Global.lively.morphic.Widgets","withoutLayers":["Global.lively.morphic.GrabbingLayer"],"contentOffset":"lively.pt(4.0,22.0)","_Position":"lively.pt(0.0,0.0)"},"1":{"submorphs":[{"__isSmartRef__":true,"id":2},{"__isSmartRef__":true,"id":96},{"__isSmartRef__":true,"id":111},{"__isSmartRef__":true,"id":122},{"__isSmartRef__":true,"id":133}],"scripts":[],"shape":{"__isSmartRef__":true,"id":202},"_ClipMode":"visible","derivationIds":[],"id":"3690A69B-36D8-44F9-8131-45848B692F65","halosEnabled":true,"__serializedExpressions__":["_Position"],"name":"container","layout":{"__isSmartRef__":true,"id":203},"doNotSerialize":[],"doNotCopyProperties":[],"_Rotation":0,"_Scale":1,"owner":{"__isSmartRef__":true,"id":0},"eventHandler":{"__isSmartRef__":true,"id":204},"lastFocused":{"__isSmartRef__":true,"id":133},"showsHalos":false,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":205},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(4.0,22.0)"},"2":{"storedTextString":"https://lively-kernel.org/babelsberg/users/jenslincke/cloudsw.js","submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":3},"derivationIds":[],"id":"2D1792FC-3C7E-455D-B715-F655A161B50C","grabbingEnabled":false,"halosEnabled":true,"_FontSize":12,"doNotSerialize":["whenOpenedInWorldCallbacks","$$savedTextString","$$textString"],"attributeConnections":[{"__isSmartRef__":true,"id":4},{"__isSmartRef__":true,"id":6}],"_ShowGutter":false,"_TextMode":"text","_Theme":"chrome","_LineWrapping":false,"_ShowInvisibles":false,"_ShowPrintMargin":false,"_ShowIndents":true,"_ShowActiveLine":false,"_SoftTabs":true,"_AutocompletionEnabled":true,"_BehaviorsEnabled":true,"_ShowWarnings":true,"_ShowErrors":true,"_TabSize":4,"name":"urlText","style":{"__isSmartRef__":true,"id":8},"clearOnInput":false,"layout":{"__isSmartRef__":true,"id":9},"doNotCopyProperties":["$$savedTextString","$$textString"],"draggingEnabled":false,"__serializedExpressions__":["_Position"],"_Rotation":0,"_Scale":1,"owner":{"__isSmartRef__":true,"id":1},"commandHistory":{"__isSmartRef__":true,"id":10},"connections":{"__isSmartRef__":true,"id":11},"textString":"https://lively-kernel.org/babelsberg/users/jenslincke/cloudsw.js","inputChanged":"https://lively-kernel.org/babelsberg/users/jenslincke/cloudsw.js","eventHandler":{"__isSmartRef__":true,"id":13},"allowInput":true,"isCommandLine":true,"_isFocused":false,"showsHalos":false,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":14},"__LivelyClassName__":"lively.morphic.CodeEditor","__SourceModuleName__":"Global.lively.ide.CodeEditor","_Position":"lively.pt(0.0,0.0)"},"3":{"_BorderWidth":0,"__serializedExpressions__":["_BorderColor","_Extent","extent"],"_Fill":null,"_BorderStyle":"solid","_BorderRadius":0,"_Opacity":1,"__LivelyClassName__":"lively.morphic.CodeEditorShape","__SourceModuleName__":"Global.lively.ide.CodeEditor","_BorderColor":"Color.rgb(0,0,0)","_Extent":"lively.pt(662.0,18.0)","extent":"lively.pt(662.0,18.0)"},"4":{"sourceObj":{"__isSmartRef__":true,"id":2},"sourceAttrName":"savedTextString","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"loadFile","varMapping":{"__isSmartRef__":true,"id":5},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"5":{"source":{"__isSmartRef__":true,"id":2},"target":{"__isSmartRef__":true,"id":0}},"6":{"sourceObj":{"__isSmartRef__":true,"id":2},"sourceAttrName":"textString","targetObj":{"__isSmartRef__":true,"id":2},"targetMethodName":"inputChanged","varMapping":{"__isSmartRef__":true,"id":7},"converterString":"function () { return this.sourceObj.getInput(); }","__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"7":{"source":{"__isSmartRef__":true,"id":2},"target":{"__isSmartRef__":true,"id":2}},"8":{"gutter":false,"enableGrabbing":false,"enableDragging":false,"clipMode":"hidden","fontSize":12},"9":{"resizeWidth":true},"10":{"items":["https://lively-kernel.org/babelsberg/users/jenslincke/cloudsw.js"],"max":30,"index":0},"11":{"input":{"__isSmartRef__":true,"id":12}},"12":{},"13":{"morph":{"__isSmartRef__":true,"id":2},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"14":{"addCommandToHistory":{"__isSmartRef__":true,"id":15},"browseHistory":{"__isSmartRef__":true,"id":18},"commandLineInput":{"__isSmartRef__":true,"id":21},"clear":{"__isSmartRef__":true,"id":24},"focus":{"__isSmartRef__":true,"id":31},"getInput":{"__isSmartRef__":true,"id":38},"setInput":{"__isSmartRef__":true,"id":41},"initializeAce":{"__isSmartRef__":true,"id":44},"makeEditorLabelAware":{"__isSmartRef__":true,"id":51},"setLabel":{"__isSmartRef__":true,"id":54},"setAndShowHistItem":{"__isSmartRef__":true,"id":57},"showHistItem":{"__isSmartRef__":true,"id":60},"showNextCommand":{"__isSmartRef__":true,"id":63},"showPrevCommand":{"__isSmartRef__":true,"id":66},"onKeyDown":{"__isSmartRef__":true,"id":69},"initCommandLine":{"__isSmartRef__":true,"id":76},"reset":{"__isSmartRef__":true,"id":79},"onLoad":{"__isSmartRef__":true,"id":82},"onFromBuildSpecCreated":{"__isSmartRef__":true,"id":89}},"15":{"varMapping":{"__isSmartRef__":true,"id":16},"source":"function addCommandToHistory(cmd) {\n        var hist = this.commandHistory,\n            items = hist.items;\n        if (items.last() === cmd) return;\n        items.push(cmd);\n        if (items.length > hist.max) {\n            hist.items = items = items.slice(-hist.max);\n        }\n        hist.index = items.length - 1;\n    }","funcProperties":{"__isSmartRef__":true,"id":17},"__LivelyClassName__":"lively.Closure"},"16":{"this":{"__isSmartRef__":true,"id":2}},"17":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"18":{"varMapping":{"__isSmartRef__":true,"id":19},"source":"function browseHistory() {\n        var cmdL = this;\n        var items = this.commandHistory.items.map(function(item, i) {\n            return {isListItem: true, string: item, value: i}\n        }).reverse();\n        lively.ide.tools.SelectionNarrowing.chooseOne(items, function(err, i) {\n            Object.isNumber(i) && cmdL.setAndShowHistItem(i);\n            cmdL.focus.bind(cmdL).delay(0);\n        });\n    }","funcProperties":{"__isSmartRef__":true,"id":20},"__LivelyClassName__":"lively.Closure"},"19":{"this":{"__isSmartRef__":true,"id":2}},"20":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"21":{"varMapping":{"__isSmartRef__":true,"id":22},"source":"function commandLineInput(text) {\n        if (text.length > 0) this.addCommandToHistory(text);\n        lively.bindings.signal(this, 'input', text);\n        // for compatibility with old texts:\n        lively.bindings.signal(this, 'savedTextString', text);\n        this.clearOnInput && this.clear();\n    }","funcProperties":{"__isSmartRef__":true,"id":23},"__LivelyClassName__":"lively.Closure"},"22":{"this":{"__isSmartRef__":true,"id":2}},"23":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"24":{"varMapping":{"__isSmartRef__":true,"id":25},"source":"function clear() {\n        $super();\n        if (this.labelString) this.textString = this.labelString;\n    }","funcProperties":{"__isSmartRef__":true,"id":30},"__LivelyClassName__":"lively.Closure"},"25":{"this":{"__isSmartRef__":true,"id":2},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":26}},"26":{"$super":{"__isSmartRef__":true,"id":27}},"27":{"varMapping":{"__isSmartRef__":true,"id":28},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":29},"__LivelyClassName__":"lively.Closure"},"28":{"obj":{"__isSmartRef__":true,"id":2},"name":"clear"},"29":{},"30":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"31":{"varMapping":{"__isSmartRef__":true,"id":32},"source":"function focus() {\n                var win = this.getWindow();\n                win && win.targetMorph && (win.targetMorph.lastFocused = this);\n                return $super();\n            }","funcProperties":{"__isSmartRef__":true,"id":37},"__LivelyClassName__":"lively.Closure"},"32":{"this":{"__isSmartRef__":true,"id":2},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":33}},"33":{"$super":{"__isSmartRef__":true,"id":34}},"34":{"varMapping":{"__isSmartRef__":true,"id":35},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":36},"__LivelyClassName__":"lively.Closure"},"35":{"obj":{"__isSmartRef__":true,"id":2},"name":"focus"},"36":{},"37":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"38":{"varMapping":{"__isSmartRef__":true,"id":39},"source":"function getInput() {\n        var input = this.textString;\n        if (this.labelString && input.indexOf(this.labelString) === 0) {\n            input = input.slice(this.labelString.length);\n        }\n        return input;\n    }","funcProperties":{"__isSmartRef__":true,"id":40},"__LivelyClassName__":"lively.Closure"},"39":{"this":{"__isSmartRef__":true,"id":2}},"40":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"41":{"varMapping":{"__isSmartRef__":true,"id":42},"source":"function setInput(text) {\n        var input = text;\n        if (this.labelString) text = this.labelString + text;\n        this.textString = text;\n        this.setCursorPosition({x: text.length, y: 1});\n        return input;\n    }","funcProperties":{"__isSmartRef__":true,"id":43},"__LivelyClassName__":"lively.Closure"},"42":{"this":{"__isSmartRef__":true,"id":2}},"43":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"44":{"varMapping":{"__isSmartRef__":true,"id":45},"source":"function initializeAce() {\n        this.withAceDo(function(ed) { this.makeEditorLabelAware(ed); });\n        lively.bindings.connect(this, 'textString', this, 'inputChanged', {\n            converter: function() { return this.sourceObj.getInput(); }\n        });\n        return $super();\n    }","funcProperties":{"__isSmartRef__":true,"id":50},"__LivelyClassName__":"lively.Closure"},"45":{"this":{"__isSmartRef__":true,"id":2},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":46}},"46":{"$super":{"__isSmartRef__":true,"id":47}},"47":{"varMapping":{"__isSmartRef__":true,"id":48},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":49},"__LivelyClassName__":"lively.Closure"},"48":{"obj":{"__isSmartRef__":true,"id":2},"name":"initializeAce"},"49":{},"50":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"51":{"varMapping":{"__isSmartRef__":true,"id":52},"source":"function makeEditorLabelAware(ed) {\n        function offsetColumnForLabel(session, row, column) {\n                // -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\n            var labelString = session.labelString;\n            if (!labelString || row !== 0) return column;\n            var lineString = session.getDisplayLine(row, null, 0, 0);\n            if (lineString.startsWith(labelString) && column < labelString.length) {\n                column = labelString.length;\n            }\n            return column;\n        }\n\n        ed.selection.moveCursorTo = ed.selection.moveCursorTo.wrap(function(proceed, row, column, keepDesiredColumn) {\n            column = offsetColumnForLabel(this.session, row, column);\n            return proceed(row, column, keepDesiredColumn);\n        });\n\n        ed.selection.setSelectionAnchor = ed.selection.setSelectionAnchor.wrap(function(proceed,row, column) {\n            column = offsetColumnForLabel(this.session, row,column);\n            return proceed(row, column);\n        });\n    }","funcProperties":{"__isSmartRef__":true,"id":53},"__LivelyClassName__":"lively.Closure"},"52":{"this":{"__isSmartRef__":true,"id":2}},"53":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"54":{"varMapping":{"__isSmartRef__":true,"id":55},"source":"function setLabel(labelString) {\n        var textString = this.textString;\n        if (this.labelString && this.textString.indexOf(this.labelString) === 0) {\n            textString = textString.slice(this.labelString.length);\n        }\n        this.labelString = labelString;\n        this.withAceDo(function(ed) { ed.session.labelString = labelString; });\n        this.setInput(textString);\n    }","funcProperties":{"__isSmartRef__":true,"id":56},"__LivelyClassName__":"lively.Closure"},"55":{"this":{"__isSmartRef__":true,"id":2}},"56":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"57":{"varMapping":{"__isSmartRef__":true,"id":58},"source":"function setAndShowHistItem(idx) {\n    var hist = this.commandHistory, items = hist.items, len = items.length-1, i = idx;\n    if (!Numbers.between(i, 0, len+1)) hist.index = i = len;\n    else hist.index = i;\n    if (this.getInput() !== items[i] && typeof items[i] !== 'undefined') this.setInput(items[i]);\n}","funcProperties":{"__isSmartRef__":true,"id":59},"__LivelyClassName__":"lively.Closure"},"58":{"this":{"__isSmartRef__":true,"id":2}},"59":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"60":{"varMapping":{"__isSmartRef__":true,"id":61},"source":"function showHistItem(dir) {\n        dir = dir || 'next';\n        var hist = this.commandHistory, items = hist.items, len = items.length-1, i = hist.index;\n        if (!Numbers.between(i, 0, len+1)) hist.index = i = len;\n        if (this.getInput() !== items[i] && typeof items[i] !== 'undefined') { this.setInput(items[i]); return; }\n        if (dir === 'next') {\n            if (i > len) return;\n            i = ++hist.index;\n        } else {\n            if (i <= 0) return;\n            i = --hist.index;\n        }\n        this.setInput(items[i] || '');\n    }","funcProperties":{"__isSmartRef__":true,"id":62},"__LivelyClassName__":"lively.Closure"},"61":{"this":{"__isSmartRef__":true,"id":2}},"62":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"63":{"varMapping":{"__isSmartRef__":true,"id":64},"source":"function showNextCommand() {\n        this.showHistItem('next');\n    }","funcProperties":{"__isSmartRef__":true,"id":65},"__LivelyClassName__":"lively.Closure"},"64":{"this":{"__isSmartRef__":true,"id":2}},"65":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"66":{"varMapping":{"__isSmartRef__":true,"id":67},"source":"function showPrevCommand() {\n        this.showHistItem('prev');\n    }","funcProperties":{"__isSmartRef__":true,"id":68},"__LivelyClassName__":"lively.Closure"},"67":{"this":{"__isSmartRef__":true,"id":2}},"68":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"69":{"varMapping":{"__isSmartRef__":true,"id":70},"source":"function onKeyDown(evt) {\n        if (this.showsCompleter()) return $super(evt);\n        var sig = evt.getKeyString();\n        switch(sig) {\n            case 'Enter': this.commandLineInput(this.getInput()); evt.stop(); return true;\n            case 'Up':\n            case 'Control-Up':\n            case 'Alt-P': this.showPrevCommand(); this.focus(); evt.stop(); return true;\n            case 'Down':\n            case 'Alt-å': // \"Alt-N\"\n            case 'Control-Down': this.showNextCommand(); this.focus(); evt.stop(); return true;\n            case 'Alt-H': this.browseHistory(); evt.stop(); return true;\n            case 'Esc':\n            case 'Control-G': this.clear(); evt.stop(); return true;\n            default: return $super(evt);        \n        }\n    }","funcProperties":{"__isSmartRef__":true,"id":75},"__LivelyClassName__":"lively.Closure"},"70":{"this":{"__isSmartRef__":true,"id":2},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":71}},"71":{"$super":{"__isSmartRef__":true,"id":72}},"72":{"varMapping":{"__isSmartRef__":true,"id":73},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":74},"__LivelyClassName__":"lively.Closure"},"73":{"obj":{"__isSmartRef__":true,"id":2},"name":"onKeyDown"},"74":{},"75":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"76":{"varMapping":{"__isSmartRef__":true,"id":77},"source":"function initCommandLine(ed) {\n        this.isCommandLine = true;\n        ed.renderer.scrollBar.element.style.display = 'none';\n        ed.renderer.scrollBar.width = 0;\n        ed.resize(true);\n    }","funcProperties":{"__isSmartRef__":true,"id":78},"__LivelyClassName__":"lively.Closure"},"77":{"this":{"__isSmartRef__":true,"id":2}},"78":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"79":{"varMapping":{"__isSmartRef__":true,"id":80},"source":"function reset() {\n        this.commandHistory = {items: [], max: 30, index: 0};\n        this.connections = {input: {}};\n    }","funcProperties":{"__isSmartRef__":true,"id":81},"__LivelyClassName__":"lively.Closure"},"80":{"this":{"__isSmartRef__":true,"id":2}},"81":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"82":{"varMapping":{"__isSmartRef__":true,"id":83},"source":"function onLoad() {\n        $super();\n        this.withAceDo(function(ed) { this.initCommandLine(ed); });\n    }","funcProperties":{"__isSmartRef__":true,"id":88},"__LivelyClassName__":"lively.Closure"},"83":{"this":{"__isSmartRef__":true,"id":2},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":84}},"84":{"$super":{"__isSmartRef__":true,"id":85}},"85":{"varMapping":{"__isSmartRef__":true,"id":86},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":87},"__LivelyClassName__":"lively.Closure"},"86":{"obj":{"__isSmartRef__":true,"id":2},"name":"onLoad"},"87":{},"88":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"89":{"varMapping":{"__isSmartRef__":true,"id":90},"source":"function onFromBuildSpecCreated() {\n        this.reset();\n        this.labelString && lively.bindings.noUpdate(function() {\n            this.setLabel(this.labelString);\n            this.setCursorPosition(pt(this.labelString.length, 0));\n        }.bind(this));\n        lively.bindings.connect(this, 'textString', this, 'inputChanged', {\n            converter: function() { return this.sourceObj.getInput(); }\n        });\n    }","funcProperties":{"__isSmartRef__":true,"id":95},"__LivelyClassName__":"lively.Closure"},"90":{"this":{"__isSmartRef__":true,"id":2},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":91}},"91":{"$super":{"__isSmartRef__":true,"id":92}},"92":{"varMapping":{"__isSmartRef__":true,"id":93},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":94},"__LivelyClassName__":"lively.Closure"},"93":{"obj":{"__isSmartRef__":true,"id":2},"name":"onFromBuildSpecCreated"},"94":{},"95":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"96":{"submorphs":[{"__isSmartRef__":true,"id":97}],"scripts":[],"shape":{"__isSmartRef__":true,"id":102},"_ClipMode":"visible","derivationIds":[],"id":"71BDECEE-9D47-438F-B1B7-D0BB8A5133E2","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"name":"saveButton","__serializedExpressions__":["_Position"],"label":{"__isSmartRef__":true,"id":97},"layout":{"__isSmartRef__":true,"id":103},"toggle":false,"value":false,"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"_Rotation":0,"_Scale":1,"isActive":true,"style":{"__isSmartRef__":true,"id":104},"owner":{"__isSmartRef__":true,"id":1},"attributeConnections":[{"__isSmartRef__":true,"id":108}],"eventHandler":{"__isSmartRef__":true,"id":110},"isPressed":false,"_StyleClassNames":["Morph","Button"],"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(220.7,18.0)"},"97":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":98},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":99}],"_ClipMode":"hidden","derivationIds":[],"id":"D6CC299C-B1F2-4503-BBC4-D3A5381A0FAE","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":true,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":true,"fixedHeight":true,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor"],"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":96},"isLabel":true,"eventsAreIgnored":true,"_Align":"center","_TextStylingMode":true,"eventsAreDisabled":true,"_PointerEvents":"none","eventHandler":{"__isSmartRef__":true,"id":101},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"98":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.7,22.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"99":{"style":{"__isSmartRef__":true,"id":100},"chunkOwner":{"__isSmartRef__":true,"id":97},"_id":"_8668","storedString":"save","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"100":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"101":{"morph":{"__isSmartRef__":true,"id":97},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"102":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_BorderRadius":5,"_BorderStyle":"solid","_Opacity":1,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.7,22.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"103":{"scaleHorizontal":true},"104":{"enableGrabbing":false,"enableDropping":false,"__serializedExpressions__":["borderColor","padding"],"borderWidth":1,"borderRadius":5,"label":{"__isSmartRef__":true,"id":105},"borderColor":"Color.rgb(189,190,192)","padding":"lively.rect(0,3,0,0)"},"105":{"borderWidth":0,"fill":null,"__serializedExpressions__":["padding","textColor"],"fontSize":10,"align":"center","fixedWidth":true,"fixedHeight":true,"clipMode":"hidden","emphasize":{"__isSmartRef__":true,"id":106},"allowInput":false,"padding":"lively.rect(0,3,0,0)","textColor":"Color.rgb(0,0,0)"},"106":{"textShadow":{"__isSmartRef__":true,"id":107}},"107":{"__serializedExpressions__":["offset","color"],"offset":"lively.pt(0.0,1.0)","color":"Color.rgb(255,255,255)"},"108":{"sourceObj":{"__isSmartRef__":true,"id":96},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"saveFile","varMapping":{"__isSmartRef__":true,"id":109},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"109":{"source":{"__isSmartRef__":true,"id":96},"target":{"__isSmartRef__":true,"id":0}},"110":{"morph":{"__isSmartRef__":true,"id":96},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"111":{"submorphs":[{"__isSmartRef__":true,"id":112}],"scripts":[],"shape":{"__isSmartRef__":true,"id":117},"_ClipMode":"visible","derivationIds":[],"id":"B1221C57-9AE2-44E0-BE49-8766DCA87FFA","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"__serializedExpressions__":["_Position"],"name":"loadButton","doNotCopyProperties":["$$fire"],"doNotSerialize":["$$fire"],"isPressed":false,"label":{"__isSmartRef__":true,"id":112},"layout":{"__isSmartRef__":true,"id":118},"toggle":false,"value":false,"_Rotation":0,"_Scale":1,"isActive":true,"style":{"__isSmartRef__":true,"id":104},"owner":{"__isSmartRef__":true,"id":1},"attributeConnections":[{"__isSmartRef__":true,"id":119}],"eventHandler":{"__isSmartRef__":true,"id":121},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(0.0,18.0)"},"112":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":113},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":114}],"_ClipMode":"hidden","derivationIds":[],"id":"99A328DB-F568-4D12-B08C-B885CDB74EC9","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":true,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":true,"fixedHeight":true,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor"],"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":111},"isLabel":true,"eventsAreIgnored":true,"_Align":"center","_TextStylingMode":true,"eventsAreDisabled":true,"_PointerEvents":"none","eventHandler":{"__isSmartRef__":true,"id":116},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"113":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.7,22.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"114":{"style":{"__isSmartRef__":true,"id":115},"chunkOwner":{"__isSmartRef__":true,"id":112},"_id":"_8670","storedString":"load","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"115":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"116":{"morph":{"__isSmartRef__":true,"id":112},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"117":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_BorderRadius":5,"_BorderStyle":"solid","_Opacity":1,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.7,22.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"118":{"scaleHorizontal":true},"119":{"sourceObj":{"__isSmartRef__":true,"id":111},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"loadFile","varMapping":{"__isSmartRef__":true,"id":120},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"120":{"source":{"__isSmartRef__":true,"id":111},"target":{"__isSmartRef__":true,"id":0}},"121":{"morph":{"__isSmartRef__":true,"id":111},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"122":{"submorphs":[{"__isSmartRef__":true,"id":123}],"scripts":[],"shape":{"__isSmartRef__":true,"id":128},"_ClipMode":"visible","derivationIds":[],"id":"754B5A10-C77B-4BC0-8EEE-3D62F68ECCE9","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"__serializedExpressions__":["_Position"],"name":"removeButton","label":{"__isSmartRef__":true,"id":123},"layout":{"__isSmartRef__":true,"id":129},"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"_Rotation":0,"_Scale":1,"isActive":true,"style":{"__isSmartRef__":true,"id":104},"owner":{"__isSmartRef__":true,"id":1},"attributeConnections":[{"__isSmartRef__":true,"id":130}],"eventHandler":{"__isSmartRef__":true,"id":132},"isPressed":false,"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(441.3,18.0)"},"123":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":124},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":125}],"_ClipMode":"hidden","derivationIds":[],"id":"150AD83B-328A-4B4A-A305-59DDBDFD2599","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":true,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":true,"fixedHeight":true,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor"],"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":122},"isLabel":true,"eventsAreIgnored":true,"_Align":"center","_TextStylingMode":true,"eventsAreDisabled":true,"_PointerEvents":"none","eventHandler":{"__isSmartRef__":true,"id":127},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"124":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.7,22.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"125":{"style":{"__isSmartRef__":true,"id":126},"chunkOwner":{"__isSmartRef__":true,"id":123},"_id":"_8672","storedString":"remove","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"126":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"127":{"morph":{"__isSmartRef__":true,"id":123},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"128":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_BorderRadius":5,"_BorderStyle":"solid","_Opacity":1,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(220.7,22.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"129":{"scaleHorizontal":true},"130":{"sourceObj":{"__isSmartRef__":true,"id":122},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"removeFile","varMapping":{"__isSmartRef__":true,"id":131},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"131":{"source":{"__isSmartRef__":true,"id":122},"target":{"__isSmartRef__":true,"id":0}},"132":{"morph":{"__isSmartRef__":true,"id":122},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"133":{"storedTextString":"console.log('load');\nvar version = \"6\"\n\nprint = function(a) {\n    var s = \"\"; \n    for (i in a) {s += i + \": \" + a[i] +\"\\n\"}; \n    return \"{\" +s + \"}\"\n}\n\n// #TODO look at ServerWorkspace again.... #JL\n// getCompletions = function(s) {\n//     return JSON.stringify({\n//         completions: [[\"foo\",[\"bar\",\"boo\"]]],\n//         prefix: s\n//     })\n// }\n\nself.onfetch = function(event) {\nconsole.log('got a request' + event.request.url);\n\nif (event.request.url.match(\"https://eval/\")) {\n    var s = event.request.url.replace(\"https://eval/\",\"\")\n    s = decodeURI(s)\n    try {\n        var result = eval(s)\n    } catch(e) {\n        result = \"Error: \" + e\n    }\n    event.respondWith(new Response(\"\" + result));\n} else if (event.request.url.match(\"https://version/\")) {\n  event.respondWith(new Response(\"version: \" + version));\n} else if (event.request.url.match(\"https://dropbox/\")) {\n  event.respondWith(\nfetch(\"https://api-content.dropbox.com/1/files/auto%2FLively%2Ftest.txt?access_token=Or5ZKMnok7sAAAAAAANCpDZwejT76YsmrfvOVqQU5al1psc0RmA96NgMId1Dr9PE\"));\n  \n} else {\n    event.respondWith(fetch(event.request))\n}\n\n};\n","submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":134},"derivationIds":[],"id":"E99BD92A-652C-4F95-A7C5-6C304B9902F8","grabbingEnabled":false,"halosEnabled":true,"_FontSize":12,"doNotSerialize":["$$savedTextString"],"attributeConnections":[{"__isSmartRef__":true,"id":135}],"_ShowGutter":true,"_TextMode":"javascript","_Theme":"chrome","_LineWrapping":true,"_ShowInvisibles":false,"_ShowPrintMargin":false,"_ShowIndents":true,"_ShowActiveLine":false,"_SoftTabs":true,"_AutocompletionEnabled":true,"_BehaviorsEnabled":true,"_ShowWarnings":true,"_ShowErrors":true,"_TabSize":4,"_FontFamily":"Monaco,monospace","name":"editor","evalEnabled":false,"layout":{"__isSmartRef__":true,"id":137},"doNotCopyProperties":["$$savedTextString"],"__serializedExpressions__":["_Position"],"_Rotation":0,"_Scale":1,"owner":{"__isSmartRef__":true,"id":1},"eventHandler":{"__isSmartRef__":true,"id":138},"allowInput":true,"_isFocused":false,"showsHalos":false,"printAfterEval":false,"prevScroll":[0,0],"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":139},"__LivelyClassName__":"lively.morphic.CodeEditor","__SourceModuleName__":"Global.lively.ide.CodeEditor","_Position":"lively.pt(0.0,40.0)"},"134":{"_BorderWidth":0,"__serializedExpressions__":["_BorderColor","_Extent","extent"],"_Fill":null,"_BorderStyle":"solid","_BorderRadius":0,"_Opacity":1,"__LivelyClassName__":"lively.morphic.CodeEditorShape","__SourceModuleName__":"Global.lively.ide.CodeEditor","_BorderColor":"Color.rgb(0,0,0)","_Extent":"lively.pt(662.0,534.0)","extent":"lively.pt(662.0,534.0)"},"135":{"sourceObj":{"__isSmartRef__":true,"id":133},"sourceAttrName":"savedTextString","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"saveFile","varMapping":{"__isSmartRef__":true,"id":136},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"136":{"source":{"__isSmartRef__":true,"id":133},"target":{"__isSmartRef__":true,"id":0}},"137":{"resizeHeight":true,"resizeWidth":true},"138":{"morph":{"__isSmartRef__":true,"id":133},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"139":{"sourceNameForEval":{"__isSmartRef__":true,"id":140},"focus":{"__isSmartRef__":true,"id":147},"boundEval":{"__isSmartRef__":true,"id":154},"doit":{"__isSmartRef__":true,"id":161},"doListProtocol":{"__isSmartRef__":true,"id":168},"getCompletions":{"__isSmartRef__":true,"id":175},"onFromBuildSpecCreated":{"__isSmartRef__":true,"id":178},"onKeyDown":{"__isSmartRef__":true,"id":185},"printInspect":{"__isSmartRef__":true,"id":192},"setServerURL":{"__isSmartRef__":true,"id":199}},"140":{"varMapping":{"__isSmartRef__":true,"id":141},"source":"function sourceNameForEval() {\n                return this.getWindow().getLocation(true/*asstring*/);\n            }","funcProperties":{"__isSmartRef__":true,"id":146},"__LivelyClassName__":"lively.Closure"},"141":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":142}},"142":{"$super":{"__isSmartRef__":true,"id":143}},"143":{"varMapping":{"__isSmartRef__":true,"id":144},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":145},"__LivelyClassName__":"lively.Closure"},"144":{"obj":{"__isSmartRef__":true,"id":133},"name":"sourceNameForEval"},"145":{},"146":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"147":{"varMapping":{"__isSmartRef__":true,"id":148},"source":"function focus() {\n                var win = this.getWindow();\n                win && win.targetMorph && (win.targetMorph.lastFocused = this);\n                return $super();\n            }","funcProperties":{"__isSmartRef__":true,"id":153},"__LivelyClassName__":"lively.Closure"},"148":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":149}},"149":{"$super":{"__isSmartRef__":true,"id":150}},"150":{"varMapping":{"__isSmartRef__":true,"id":151},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":152},"__LivelyClassName__":"lively.Closure"},"151":{"obj":{"__isSmartRef__":true,"id":133},"name":"focus"},"152":{},"153":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"154":{"varMapping":{"__isSmartRef__":true,"id":155},"source":"function boundEval(__evalStatement, __evalOptions) {\n\n\n    \n\tGlobal.jQuery.ajax({\n\t\turl: \"https://eval/\" + encodeURI(__evalStatement),\n\t\ttype: \"get\",\n\t\tsuccess: function success(result) {\n\t\t\tif (this.printAfterEval) {\n\t\t\t    this.printAfterEval = false \n                this.printObject(undefined, result, false, this.getPrintItAsComment());\n                return;\n        \n            if (result && result instanceof Error && lively.Config.get(\"showDoitErrorMessages\") && this.world()) {\n                this.world().logError(result, \"doit error\");\n            }\n            var sel = this.getSelection();\n            if (sel && sel.isEmpty()) sel.selectLine();\n            return result;\n\t\t\t    \n\t\t\t   \n\t\t\t}\n\t\t}.bind(this)\n\t});\n}","funcProperties":{"__isSmartRef__":true,"id":160},"__LivelyClassName__":"lively.Closure"},"155":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":156}},"156":{"$super":{"__isSmartRef__":true,"id":157}},"157":{"varMapping":{"__isSmartRef__":true,"id":158},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":159},"__LivelyClassName__":"lively.Closure"},"158":{"obj":{"__isSmartRef__":true,"id":133},"name":"boundEval"},"159":{},"160":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"161":{"varMapping":{"__isSmartRef__":true,"id":162},"source":"function doit(printResult, editor) {\n    var text = this.getSelectionMaybeInComment(),\n        range = this.getSelectionRange(),\n        result = this.tryBoundEval(text, { range: { start: { index: range[0] }, end: { index: range[1] } } });\n    if (printResult) {\n        this.printAfterEval = true\n    }\n\n}","funcProperties":{"__isSmartRef__":true,"id":167},"__LivelyClassName__":"lively.Closure"},"162":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":163}},"163":{"$super":{"__isSmartRef__":true,"id":164}},"164":{"varMapping":{"__isSmartRef__":true,"id":165},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":166},"__LivelyClassName__":"lively.Closure"},"165":{"obj":{"__isSmartRef__":true,"id":133},"name":"doit"},"166":{},"167":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"168":{"varMapping":{"__isSmartRef__":true,"id":169},"source":"function doListProtocol() {\n    var string = this.getSelectionOrLineString(),\n        completions = this.getCompletions(string);\n    lively.require(\"lively.ide.codeeditor.Completions\").toRun(function() {\n        new lively.ide.codeeditor.Completions.ProtocolLister(this).openNarrower(completions);\n    }.bind(this));\n}","funcProperties":{"__isSmartRef__":true,"id":174},"__LivelyClassName__":"lively.Closure"},"169":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":170}},"170":{"$super":{"__isSmartRef__":true,"id":171}},"171":{"varMapping":{"__isSmartRef__":true,"id":172},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":173},"__LivelyClassName__":"lively.Closure"},"172":{"obj":{"__isSmartRef__":true,"id":133},"name":"doListProtocol"},"173":{},"174":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"175":{"varMapping":{"__isSmartRef__":true,"id":176},"source":"function getCompletions(string) {\n    // this.getCompletions('lively.re')\n    var nodejsServer = this.serverURL.withFilename('completions').asWebResource();\n    var result = nodejsServer.post(JSON.stringify({string: string}), 'application/json').content;\n    return JSON.parse(result);\n}","funcProperties":{"__isSmartRef__":true,"id":177},"__LivelyClassName__":"lively.Closure"},"176":{"this":{"__isSmartRef__":true,"id":133}},"177":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"178":{"varMapping":{"__isSmartRef__":true,"id":179},"source":"function onFromBuildSpecCreated() {\n    $super();\n    this.setServerURL(URL.create(Config.nodeJSURL).asDirectory().withFilename('NodeJSEvalServer/'));\n}","funcProperties":{"__isSmartRef__":true,"id":184},"__LivelyClassName__":"lively.Closure"},"179":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":180}},"180":{"$super":{"__isSmartRef__":true,"id":181}},"181":{"varMapping":{"__isSmartRef__":true,"id":182},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":183},"__LivelyClassName__":"lively.Closure"},"182":{"obj":{"__isSmartRef__":true,"id":133},"name":"onFromBuildSpecCreated"},"183":{},"184":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"185":{"varMapping":{"__isSmartRef__":true,"id":186},"source":"function onKeyDown(evt) {\n    var keys = evt.getKeyString();\n    if (keys === 'Command-U') { this.setServerURLInteractively(); return true; }\n    return false;\n}","funcProperties":{"__isSmartRef__":true,"id":191},"__LivelyClassName__":"lively.Closure"},"186":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":187}},"187":{"$super":{"__isSmartRef__":true,"id":188}},"188":{"varMapping":{"__isSmartRef__":true,"id":189},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":190},"__LivelyClassName__":"lively.Closure"},"189":{"obj":{"__isSmartRef__":true,"id":133},"name":"onKeyDown"},"190":{},"191":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"192":{"varMapping":{"__isSmartRef__":true,"id":193},"source":"function printInspect(options) {\n    options = options || {};\n    var depth = options.depth ? options.depth-1 : 0;\n    var s = this.getSelectionMaybeInComment();\n    s = 'require(\"util\").inspect(' + s + ', null, ' + depth + ')';\n    var result = this.tryBoundEval(s);\n    this.printObject(null, result);\n}","funcProperties":{"__isSmartRef__":true,"id":198},"__LivelyClassName__":"lively.Closure"},"193":{"this":{"__isSmartRef__":true,"id":133},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":194}},"194":{"$super":{"__isSmartRef__":true,"id":195}},"195":{"varMapping":{"__isSmartRef__":true,"id":196},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":197},"__LivelyClassName__":"lively.Closure"},"196":{"obj":{"__isSmartRef__":true,"id":133},"name":"printInspect"},"197":{},"198":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"199":{"varMapping":{"__isSmartRef__":true,"id":200},"source":"function setServerURL() {\n    this.world().prompt('Change server URL', function(url) {\n        if(!url) { alert('no url!'); return; }\n        this.setServerURL(url);\n    }.bind(this), this.serverURL);\n}","funcProperties":{"__isSmartRef__":true,"id":201},"__LivelyClassName__":"lively.Closure"},"200":{"this":{"__isSmartRef__":true,"id":133}},"201":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:40 GMT+0200 (Central Europe Daylight Time)\")"},"202":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_BorderStyle":"solid","_BorderRadius":0,"_Opacity":1,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(662.0,574.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"203":{"adjustForNewBounds":true,"resizeHeight":true,"resizeWidth":true},"204":{"morph":{"__isSmartRef__":true,"id":1},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"205":{"onWindowGetsFocus":{"__isSmartRef__":true,"id":206}},"206":{"varMapping":{"__isSmartRef__":true,"id":207},"source":"function onWindowGetsFocus() {\n            if (!this.lastFocused) this.lastFocused = this.get('editor');\n            this.lastFocused.focus();\n        }","funcProperties":{"__isSmartRef__":true,"id":208},"__LivelyClassName__":"lively.Closure"},"207":{"this":{"__isSmartRef__":true,"id":1}},"208":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"209":{"submorphs":[{"__isSmartRef__":true,"id":210},{"__isSmartRef__":true,"id":216},{"__isSmartRef__":true,"id":226},{"__isSmartRef__":true,"id":236}],"scripts":[],"shape":{"__isSmartRef__":true,"id":246},"_ClipMode":"visible","derivationIds":[],"id":"97DA9169-9CD1-4B76-85C5-BC0097654B79","droppingEnabled":false,"halosEnabled":true,"layout":{"__isSmartRef__":true,"id":247},"__serializedExpressions__":["_Position"],"windowMorph":{"__isSmartRef__":true,"id":0},"buttons":[{"__isSmartRef__":true,"id":216},{"__isSmartRef__":true,"id":226},{"__isSmartRef__":true,"id":236}],"label":{"__isSmartRef__":true,"id":210},"_PreviousBorderWidth":0,"owner":{"__isSmartRef__":true,"id":0},"eventHandler":{"__isSmartRef__":true,"id":248},"__LivelyClassName__":"lively.morphic.TitleBar","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(0.0,0.0)"},"210":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":211},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":212}],"_ClipMode":"hidden","derivationIds":[],"id":"D1B9FEDA-088B-4D88-A928-9636F3C953E3","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":false,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":true,"fixedHeight":true,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor","_Position"],"evalEnabled":false,"isLabel":true,"eventsAreIgnored":true,"layout":{"__isSmartRef__":true,"id":214},"owner":{"__isSmartRef__":true,"id":209},"_StyleClassNames":["Morph","Text","window-title"],"_TextStylingMode":true,"eventHandler":{"__isSmartRef__":true,"id":215},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(64,64,64)","_Position":"lively.pt(3.0,3.0)"},"211":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(578.0,16.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"212":{"style":{"__isSmartRef__":true,"id":213},"chunkOwner":{"__isSmartRef__":true,"id":210},"_id":"_9347","storedString":"ServiceWorkerEditor","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"213":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"214":{"resizeWidth":true},"215":{"morph":{"__isSmartRef__":true,"id":210},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"216":{"submorphs":[{"__isSmartRef__":true,"id":217}],"scripts":[],"shape":{"__isSmartRef__":true,"id":222},"_ClipMode":"visible","derivationIds":[],"id":"46966C2B-02A0-4A5E-B84A-DCF3958B1F17","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"accessibleInInactiveWindow":true,"__serializedExpressions__":["_Position"],"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":217},"_PreviousBorderWidth":0,"owner":{"__isSmartRef__":true,"id":209},"_StyleClassNames":["Morph","Button","WindowControl","close"],"attributeConnections":[{"__isSmartRef__":true,"id":223}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"eventHandler":{"__isSmartRef__":true,"id":225},"__LivelyClassName__":"lively.morphic.WindowControl","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(650.0,3.0)"},"217":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":218},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":219}],"_ClipMode":"hidden","derivationIds":[],"id":"61136BC8-8552-4768-BAC6-5F0FEE7AF1B4","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":true,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":false,"fixedHeight":false,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor","_Position"],"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":216},"isLabel":true,"eventsAreIgnored":true,"_TextStylingMode":true,"eventsAreDisabled":true,"_PointerEvents":"none","eventHandler":{"__isSmartRef__":true,"id":221},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(64,64,64)","_Position":"lively.pt(0.0,0.0)"},"218":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(17.0,20.0)","_Padding":"lively.rect(4,2,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"219":{"style":{"__isSmartRef__":true,"id":220},"chunkOwner":{"__isSmartRef__":true,"id":217},"_id":"_8660","storedString":"X","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"220":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"221":{"morph":{"__isSmartRef__":true,"id":217},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"222":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_StrokeOpacity":0,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(17.0,17.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"223":{"sourceObj":{"__isSmartRef__":true,"id":216},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"initiateShutdown","varMapping":{"__isSmartRef__":true,"id":224},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"224":{"source":{"__isSmartRef__":true,"id":216},"target":{"__isSmartRef__":true,"id":0}},"225":{"morph":{"__isSmartRef__":true,"id":216},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"226":{"submorphs":[{"__isSmartRef__":true,"id":227}],"scripts":[],"shape":{"__isSmartRef__":true,"id":232},"_ClipMode":"visible","derivationIds":[],"id":"104B597C-F725-4DEF-8B09-3DDC0ABFA535","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"accessibleInInactiveWindow":true,"__serializedExpressions__":["_Position"],"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":227},"_PreviousBorderWidth":0,"owner":{"__isSmartRef__":true,"id":209},"attributeConnections":[{"__isSmartRef__":true,"id":233}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"eventHandler":{"__isSmartRef__":true,"id":235},"__LivelyClassName__":"lively.morphic.WindowControl","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(630.0,3.0)"},"227":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":228},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":229}],"_ClipMode":"hidden","derivationIds":[],"id":"E86372C1-F3A8-45F4-A04A-1018BBE9F84C","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":true,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":false,"fixedHeight":false,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor","_Position"],"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":226},"isLabel":true,"eventsAreIgnored":true,"_TextStylingMode":true,"eventsAreDisabled":true,"_PointerEvents":"none","eventHandler":{"__isSmartRef__":true,"id":231},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(64,64,64)","_Position":"lively.pt(0.0,0.0)"},"228":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(17.0,20.0)","_Padding":"lively.rect(4,2,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"229":{"style":{"__isSmartRef__":true,"id":230},"chunkOwner":{"__isSmartRef__":true,"id":227},"_id":"_8663","storedString":"–","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"230":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"231":{"morph":{"__isSmartRef__":true,"id":227},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"232":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_StrokeOpacity":0,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(17.0,17.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"233":{"sourceObj":{"__isSmartRef__":true,"id":226},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"toggleCollapse","varMapping":{"__isSmartRef__":true,"id":234},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"234":{"source":{"__isSmartRef__":true,"id":226},"target":{"__isSmartRef__":true,"id":0}},"235":{"morph":{"__isSmartRef__":true,"id":226},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"236":{"submorphs":[{"__isSmartRef__":true,"id":237}],"scripts":[],"shape":{"__isSmartRef__":true,"id":242},"_ClipMode":"visible","derivationIds":[],"id":"4290E9E9-AB20-41F4-B7FB-CEFFDB83BCB7","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"accessibleInInactiveWindow":true,"__serializedExpressions__":["_Position"],"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":237},"_PreviousBorderWidth":0,"owner":{"__isSmartRef__":true,"id":209},"attributeConnections":[{"__isSmartRef__":true,"id":243}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"eventHandler":{"__isSmartRef__":true,"id":245},"__LivelyClassName__":"lively.morphic.WindowControl","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(587.0,3.0)"},"237":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":238},"_WhiteSpaceHandling":"pre","textChunks":[{"__isSmartRef__":true,"id":239}],"_ClipMode":"hidden","derivationIds":[],"id":"16EDE0B9-C16A-4DA5-9066-E7BF9A3E2BE7","_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_IsSelectable":true,"grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"draggingEnabled":true,"fixedWidth":false,"fixedHeight":false,"_FontFamily":"Helvetica","_FontSize":10,"__serializedExpressions__":["_TextColor","_Position"],"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":236},"isLabel":true,"eventsAreIgnored":true,"_TextStylingMode":true,"eventsAreDisabled":true,"_PointerEvents":"none","eventHandler":{"__isSmartRef__":true,"id":241},"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(64,64,64)","_Position":"lively.pt(0.0,0.0)"},"238":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(40.0,20.0)","_Padding":"lively.rect(4,2,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"239":{"style":{"__isSmartRef__":true,"id":240},"chunkOwner":{"__isSmartRef__":true,"id":237},"_id":"_8666","storedString":"Menu","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"240":{"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore"},"241":{"morph":{"__isSmartRef__":true,"id":237},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"242":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":1,"_Fill":null,"_StrokeOpacity":0,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(40.0,17.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"243":{"sourceObj":{"__isSmartRef__":true,"id":236},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"showTargetMorphMenu","varMapping":{"__isSmartRef__":true,"id":244},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"244":{"source":{"__isSmartRef__":true,"id":236},"target":{"__isSmartRef__":true,"id":0}},"245":{"morph":{"__isSmartRef__":true,"id":236},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"246":{"__serializedExpressions__":["_Position","_Extent","_Padding"],"_BorderWidth":0,"_BorderColor":null,"_Fill":null,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(670.0,22.0)","_Padding":"lively.rect(0,0,0,0)"},"247":{"resizeWidth":true,"adjustForNewBounds":true},"248":{"morph":{"__isSmartRef__":true,"id":209},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"249":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":250},"_ClipMode":"visible","derivationIds":[],"id":"6348EFD2-9415-4DD3-B437-48A6840052D5","droppingEnabled":true,"halosEnabled":true,"__serializedExpressions__":["_Position"],"type":"corner","_StyleClassNames":["Morph","Box","ReframeHandle","reframe-handle corner"],"layout":{"__isSmartRef__":true,"id":251},"owner":{"__isSmartRef__":true,"id":0},"eventHandler":{"__isSmartRef__":true,"id":252},"__LivelyClassName__":"lively.morphic.ReframeHandle","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(656.0,586.0)"},"250":{"__serializedExpressions__":["_Position","_Extent","_Padding"],"_BorderWidth":0,"_BorderColor":null,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(14.0,14.0)","_Padding":"lively.rect(0,0,0,0)"},"251":{"moveVertical":true,"moveHorizontal":true},"252":{"morph":{"__isSmartRef__":true,"id":249},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"253":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":254},"_ClipMode":"visible","derivationIds":[],"id":"87E16BE3-123D-41DD-B600-96372A1B9D17","droppingEnabled":true,"halosEnabled":true,"__serializedExpressions__":["_Position"],"type":"bottom","_StyleClassNames":["Morph","Box","ReframeHandle","reframe-handle bottom"],"layout":{"__isSmartRef__":true,"id":255},"owner":{"__isSmartRef__":true,"id":0},"eventHandler":{"__isSmartRef__":true,"id":256},"__LivelyClassName__":"lively.morphic.ReframeHandle","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(0.0,597.0)"},"254":{"__serializedExpressions__":["_Position","_Extent","_Padding"],"_BorderWidth":0,"_BorderColor":null,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(656.0,3.0)","_Padding":"lively.rect(0,0,0,0)"},"255":{"moveVertical":true},"256":{"morph":{"__isSmartRef__":true,"id":253},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"257":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":258},"_ClipMode":"visible","derivationIds":[],"id":"AE4FDA19-3F08-414B-9381-23F8C19B0448","droppingEnabled":true,"halosEnabled":true,"__serializedExpressions__":["_Position"],"type":"right","_StyleClassNames":["Morph","Box","ReframeHandle","reframe-handle right"],"layout":{"__isSmartRef__":true,"id":259},"owner":{"__isSmartRef__":true,"id":0},"eventHandler":{"__isSmartRef__":true,"id":260},"__LivelyClassName__":"lively.morphic.ReframeHandle","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(667.0,0.0)"},"258":{"__serializedExpressions__":["_Position","_Extent","_Padding"],"_BorderWidth":0,"_BorderColor":null,"_Fill":null,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(3.0,586.0)","_Padding":"lively.rect(0,0,0,0)"},"259":{"moveHorizontal":true},"260":{"morph":{"__isSmartRef__":true,"id":257},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"261":{"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"_BorderWidth":0,"_Fill":null,"_StrokeOpacity":false,"_BorderRadius":0,"_BorderStyle":"solid","_Opacity":1,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(670.0,600.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"262":{"adjustForNewBounds":true},"263":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"contentStored","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"updateWindowTitle","varMapping":{"__isSmartRef__":true,"id":264},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"264":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":0}},"265":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"contentLoaded","targetObj":{"__isSmartRef__":true,"id":133},"targetMethodName":"textString","varMapping":{"__isSmartRef__":true,"id":266},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"266":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":133}},"267":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"contentLoaded","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"gotoLocationLine","varMapping":{"__isSmartRef__":true,"id":268},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"268":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":0}},"269":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"contentLoaded","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"updateWindowTitle","varMapping":{"__isSmartRef__":true,"id":270},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"270":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":0}},"271":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"contentLoaded","targetObj":{"__isSmartRef__":true,"id":133},"targetMethodName":"setTabSize","varMapping":{"__isSmartRef__":true,"id":272},"updaterString":"function ($upd) {\n            this.sourceObj.get('editor').guessAndSetTabSize();\n        }","__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"272":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":133}},"273":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"contentLoaded","targetObj":{"__isSmartRef__":true,"id":133},"targetMethodName":"setTextMode","varMapping":{"__isSmartRef__":true,"id":274},"updaterString":"function ($upd) {\n            var ext = this.sourceObj.getFileExtension().toLowerCase();\n            switch(ext) {\n                case \"r\": $upd(\"r\"); return;\n                case \"css\": $upd(\"css\"); return;\n                case \"h\": case \"c\": case \"cpp\": $upd(\"c_cpp\"); return;\n                case \"diff\": $upd(\"diff\"); return;\n                case \"xhtml\": case \"html\": $upd(\"html\"); return;\n                case \"js\": $upd(\"javascript\"); return;\n                case \"json\": $upd(\"json\"); return;\n                case \"jade\": $upd(\"jade\"); return;\n                case \"ejs\": $upd(\"ejs\"); return;\n                case \"markdown\": case \"md\": $upd(\"markdown\"); return;\n                case \"sh\": $upd(\"sh\"); return;\n                case \"xml\": $upd(\"xml\"); return;\n                case \"svg\": $upd(\"svg\"); return;\n                case \"lisp\": case \"el\": $upd(\"lisp\"); return;\n                case \"clj\": case \"cljs\": case \"cljx\": $upd(\"clojure\"); return;\n                case \"cabal\": case \"hs\": $upd(\"haskell\"); return;\n                case \"py\": $upd(\"python\"); return;\n                default: $upd(\"text\");\n            }\n        }","__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"274":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":133}},"275":{"morph":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"276":{"partName":"ServiceWorkerEditor","requiredModules":[],"partsSpaceName":"Jens","comment":"no comment","changes":[{"__isSmartRef__":true,"id":277}],"migrationLevel":9,"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin"},"277":{"__serializedExpressions__":["date"],"author":"unknown_user","message":"no comment","id":"A81A710E-3A08-4EE3-AC67-1A9F6FB3E8FD","date":"new Date(\"Wed Jul 15 2015 13:35:56 GMT+0200 (Central Europe Daylight Time)\")"},"278":{"onFromBuildSpecCreated":{"__isSmartRef__":true,"id":279},"getLine":{"__isSmartRef__":true,"id":286},"gotoLocationLine":{"__isSmartRef__":true,"id":289},"getLocation":{"__isSmartRef__":true,"id":292},"getFileExtension":{"__isSmartRef__":true,"id":295},"getWebResource":{"__isSmartRef__":true,"id":298},"loadFile":{"__isSmartRef__":true,"id":301},"loadFileFileSystem":{"__isSmartRef__":true,"id":304},"loadFileNetwork":{"__isSmartRef__":true,"id":307},"saveFile":{"__isSmartRef__":true,"id":310},"saveFileFileSystem":{"__isSmartRef__":true,"id":313},"saveFileNetwork":{"__isSmartRef__":true,"id":316},"updateWindowTitle":{"__isSmartRef__":true,"id":319},"removeFile":{"__isSmartRef__":true,"id":322},"openURL":{"__isSmartRef__":true,"id":325},"message":{"__isSmartRef__":true,"id":328},"onKeyDown":{"__isSmartRef__":true,"id":331}},"279":{"varMapping":{"__isSmartRef__":true,"id":280},"source":"function onFromBuildSpecCreated() {\n        $super();\n        var win = this,\n            editor = win.get('editor'),\n            loadButton = win.get('loadButton'),\n            saveButton = win.get('saveButton'),\n            removeButton = win.get('removeButton'),\n            container = win.get('container'),\n            urlText = this.get('urlText');\n        container.setBounds(win.innerBounds().insetByRect(lively.rect(win.contentOffset, pt(4,4))));\n        urlText.setBounds(container.getExtent().withY(18).extentAsRectangle());\n        var third = container.getExtent().x/3, pos = pt(0,18);\n        loadButton.setBounds(pos.extent(pt(third, 22)));\n        saveButton.setBounds(pos.withX(third).extent(pt(third, 22)));\n        removeButton.setBounds(pos.withX(2*third).extent(pt(third, 22)));\n        editor.setBounds(lively.rect(loadButton.bounds().bottomLeft(), container.innerBounds().bottomRight()));\n    }","funcProperties":{"__isSmartRef__":true,"id":285},"__LivelyClassName__":"lively.Closure"},"280":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":281}},"281":{"$super":{"__isSmartRef__":true,"id":282}},"282":{"varMapping":{"__isSmartRef__":true,"id":283},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":284},"__LivelyClassName__":"lively.Closure"},"283":{"obj":{"__isSmartRef__":true,"id":0},"name":"onFromBuildSpecCreated"},"284":{},"285":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"286":{"varMapping":{"__isSmartRef__":true,"id":287},"source":"function getLine() {\n        var string = this.get('urlText').textString,\n            match = string.match(/:([0-9]+)$/);\n        return match && Number(match[1]);\n    }","funcProperties":{"__isSmartRef__":true,"id":288},"__LivelyClassName__":"lively.Closure"},"287":{"this":{"__isSmartRef__":true,"id":0}},"288":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"289":{"varMapping":{"__isSmartRef__":true,"id":290},"source":"function gotoLocationLine() {\n        var line = this.getLine();\n        if (!line) return;\n        var editor = this.get('editor');\n        editor.scrollToRow(line);\n        editor.setCursorPosition(pt(0, line-1));\n    }","funcProperties":{"__isSmartRef__":true,"id":291},"__LivelyClassName__":"lively.Closure"},"290":{"this":{"__isSmartRef__":true,"id":0}},"291":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"292":{"varMapping":{"__isSmartRef__":true,"id":293},"source":"function getLocation(asString) {\n        var string = this.get('urlText').textString;\n        string = string.replace(/:[0-9]+$/, '');\n        if (asString) return string;\n        try {\n            return new URL(string);\n        } catch(e) {\n            return string;\n        }\n    }","funcProperties":{"__isSmartRef__":true,"id":294},"__LivelyClassName__":"lively.Closure"},"293":{"this":{"__isSmartRef__":true,"id":0}},"294":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"295":{"varMapping":{"__isSmartRef__":true,"id":296},"source":"function getFileExtension() {\n        return this.getLocation(true).split('.').last();\n    }","funcProperties":{"__isSmartRef__":true,"id":297},"__LivelyClassName__":"lively.Closure"},"296":{"this":{"__isSmartRef__":true,"id":0}},"297":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"298":{"varMapping":{"__isSmartRef__":true,"id":299},"source":"function getWebResource() {\n        var loc = this.getLocation();\n        return loc.isURL && loc.asWebResource();\n    }","funcProperties":{"__isSmartRef__":true,"id":300},"__LivelyClassName__":"lively.Closure"},"299":{"this":{"__isSmartRef__":true,"id":0}},"300":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"301":{"varMapping":{"__isSmartRef__":true,"id":302},"source":"function loadFile() {\n        if (this.getLocation().isURL) {\n            this.loadFileNetwork();\n        } else {\n            this.loadFileFileSystem();\n        }\n    }","funcProperties":{"__isSmartRef__":true,"id":303},"__LivelyClassName__":"lively.Closure"},"302":{"this":{"__isSmartRef__":true,"id":0}},"303":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"304":{"varMapping":{"__isSmartRef__":true,"id":305},"source":"function loadFileFileSystem() {\n        var path = this.getLocation(true),\n            cwd = lively.shell.cwd();\n        // if (path.indexOf(cwd) === 0) {\n        //     path = path.slice(cwd.length);\n        //     if (path[0] === '/' || path[0] === '\\\\') path = path.slice(1);\n        //     var urlText = this.get('urlText');\n        //     lively.bindings.noUpdate(function() {\n        //         urlText.textString = path;\n        //     });\n        // }\n        lively.ide.CommandLineInterface.readFile(path, {}, function(cmd) {\n            var err = cmd.getCode() && cmd.getStderr();\n            if (err) { this.message(Strings.format(\"Could not read file.\\nError: %s\", err)); return; }\n            lively.bindings.signal(this, 'contentLoaded', cmd.getStdout());\n        }.bind(this));\n    }","funcProperties":{"__isSmartRef__":true,"id":306},"__LivelyClassName__":"lively.Closure"},"305":{"this":{"__isSmartRef__":true,"id":0}},"306":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"307":{"varMapping":{"__isSmartRef__":true,"id":308},"source":"function loadFileNetwork() {\n        var webR = this.getWebResource();\n        connect(webR, 'content', this, 'contentLoaded');\n        webR.beAsync().forceUncached().get();\n    }","funcProperties":{"__isSmartRef__":true,"id":309},"__LivelyClassName__":"lively.Closure"},"308":{"this":{"__isSmartRef__":true,"id":0}},"309":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"310":{"varMapping":{"__isSmartRef__":true,"id":311},"source":"function saveFile(thenDo) {\n        var loc = this.getLocation(),\n            selector = loc.isURL ? \"saveFileNetwork\" : \"saveFileFileSystem\",\n            self = this;\n        Functions.composeAsync(\n            function(next) {\n                self[selector](function(err) {\n                    if (!err) {\n                        self.message(String(loc) + ' saved', Color.green);\n                        lively.bindings.signal(self, 'contentStored');\n                        next();\n                    } else {\n                        self.message(Strings.format(\"Could not save.\\nError: %s\", err), Color.red);\n                        next(err);\n                    }\n                });\n            },\n            function(next) {\n              var rt = lively.lang.Path(\"lively.lang.Runtime\").get(Global);\n              rt && lively.lang.Runtime.resourceChanged(\n                String(loc), self.get('editor').textString, next);\n            }\n        )();\n    }","funcProperties":{"__isSmartRef__":true,"id":312},"__LivelyClassName__":"lively.Closure"},"311":{"this":{"__isSmartRef__":true,"id":0}},"312":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"313":{"varMapping":{"__isSmartRef__":true,"id":314},"source":"function saveFileFileSystem(thenDo) {\n        var path = lively.shell.makeAbsolute(this.getLocation(true)),\n            content = this.get('editor').textString;\n        lively.ide.CommandLineInterface.writeFile(path, {content: content}, function(cmd) {\n            var err = cmd.getCode() && cmd.getStderr();\n            thenDo && thenDo(err ? new Error(err) : null);\n        }.bind(this));\n    }","funcProperties":{"__isSmartRef__":true,"id":315},"__LivelyClassName__":"lively.Closure"},"314":{"this":{"__isSmartRef__":true,"id":0}},"315":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"316":{"varMapping":{"__isSmartRef__":true,"id":317},"source":"function saveFileNetwork(thenDo) {\n        var ed = this, webR = this.getWebResource();\n        webR.beAsync().noProxy().put(this.get('editor').textString)\n            .whenDone(function(_, status) {\n                thenDo && thenDo(status.isSuccess() ?\n                    null : new Error(String(status))); });\n    }","funcProperties":{"__isSmartRef__":true,"id":318},"__LivelyClassName__":"lively.Closure"},"317":{"this":{"__isSmartRef__":true,"id":0}},"318":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"319":{"varMapping":{"__isSmartRef__":true,"id":320},"source":"function updateWindowTitle() {\n        var location = this.getLocation();\n        this.setTitle(String(location));\n    }","funcProperties":{"__isSmartRef__":true,"id":321},"__LivelyClassName__":"lively.Closure"},"320":{"this":{"__isSmartRef__":true,"id":0}},"321":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"322":{"varMapping":{"__isSmartRef__":true,"id":323},"source":"function removeFile() {\n      var loc = this.getLocation();\n      if (loc.isURL) {\n        var webR = this.getWebResource()\n          .statusMessage(webR.getURL() + ' removed', webR.getURL() + ' could not removed!')\n          .beAsync().del();\n      } else {\n        var ed = this.get('editor');\n        lively.shell.rm(loc, function(err) {\n          ed.setStatusMessage(\n            err ? loc + \"could not be deleted:\\n\" + (err.stack || err) : loc + \" was deleted\",\n            err ? Color.red : Color.green,\n            err ? 5 : undefined); });\n      }\n    }","funcProperties":{"__isSmartRef__":true,"id":324},"__LivelyClassName__":"lively.Closure"},"323":{"this":{"__isSmartRef__":true,"id":0}},"324":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"325":{"varMapping":{"__isSmartRef__":true,"id":326},"source":"function openURL(url) {\n        this.get('urlText').textString = String(url);\n        this.loadFile();\n    }","funcProperties":{"__isSmartRef__":true,"id":327},"__LivelyClassName__":"lively.Closure"},"326":{"this":{"__isSmartRef__":true,"id":0}},"327":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"328":{"varMapping":{"__isSmartRef__":true,"id":329},"source":"function message(/*msg, color, ...*/) { var ed = this.get('editor'); ed.setStatusMessage.apply(ed,arguments); }","funcProperties":{"__isSmartRef__":true,"id":330},"__LivelyClassName__":"lively.Closure"},"329":{"this":{"__isSmartRef__":true,"id":0}},"330":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"331":{"varMapping":{"__isSmartRef__":true,"id":332},"source":"function onKeyDown(evt) {\n        if (this.showsHalos) return $super(evt);\n        var sig = evt.getKeyString();\n        switch(sig) {\n            case 'Alt-Up': case 'F1': this.get('urlText').focus(); evt.stop(); return true;\n            case 'Alt-Down': case 'F2': this.get('editor').focus(); evt.stop(); return true;\n            case \"Command-U\":\n                $world.confirm('Revert input / reload file?', function(input) {\n                    if (!input) { alertOK('Revert canceled'); return; }\n                    this.loadFile();\n                }.bind(this));\n                evt.stop(); return true;\n            default: return $super(evt);\n        }\n    }","funcProperties":{"__isSmartRef__":true,"id":337},"__LivelyClassName__":"lively.Closure"},"332":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":333}},"333":{"$super":{"__isSmartRef__":true,"id":334}},"334":{"varMapping":{"__isSmartRef__":true,"id":335},"source":"function () {\n        try {\n          // FIXME super is supposed to be static\n          return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n        } catch (e) {\n          if (typeof $world !== undefined) $world.logError(e, 'Error in $super call')\n          else alert('Error in $super call: ' + e + '\\n' + e.stack);\n          return null;\n        }\n      }","funcProperties":{"__isSmartRef__":true,"id":336},"__LivelyClassName__":"lively.Closure"},"335":{"obj":{"__isSmartRef__":true,"id":0},"name":"onKeyDown"},"336":{},"337":{"__serializedExpressions__":["timestamp"],"user":"unknown_user","timestamp":"new Date(\"Wed Jul 15 2015 13:31:04 GMT+0200 (Central Europe Daylight Time)\")"},"isSimplifiedRegistry":true}}