{"id":0,"registry":{"0":{"submorphs":[{"__isSmartRef__":true,"id":1},{"__isSmartRef__":true,"id":24}],"scripts":[],"id":"BC1D154A-C311-4874-AC80-AC4CF8959AB7","shape":{"__isSmartRef__":true,"id":47},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"showsHalos":false,"name":"WormHoleAudioElement","partsBinMetaInfo":{"__isSmartRef__":true,"id":48},"eventHandler":{"__isSmartRef__":true,"id":68},"derivationIds":[127,"F0291F62-F100-480C-AEBF-0230398F7983","AE8B5ED7-E305-45BC-BE4A-1C28A49EE12B","39BA345C-17FA-45A0-BAC2-F0CF5654ACF8","FE91EA31-D8AE-461B-8A49-95DA5FBAE5B4","F38439A3-2F4E-4AC2-BF73-2633C00B1393","6748F5B5-2284-4748-A6EE-F1A261CBAD0B","BBAFB862-93AE-4F89-BCFF-9F1C67B7FE4C","7EC17E78-593A-4CC8-B7E3-859BCBBFE785","BD8BECDB-A9A1-4009-B433-C925F0AFCCFC","F2677A9D-5855-4DF2-B248-94545B34B762","D52188B3-7DC0-410E-96B1-50892AC00A37","3393AEAC-7A6E-4B7F-A157-E7C774FD663E"],"partTests":{"__isSmartRef__":true,"id":69},"_ClipMode":"visible","moved":true,"audioContext":{"__isSmartRef__":true,"id":74},"audioSource":null,"audioStream":null,"scriptNode":null,"samples":4096,"layout":{"__isSmartRef__":true,"id":77},"isInLayoutCycle":false,"isBeingDragged":false,"arrayBuffer":{"__isSmartRef__":true,"id":79},"longTermBuffer":null,"analyzerScriptNode":null,"analyzerNode":null,"publishing":false,"sonogramScriptNode":null,"sonogramAnalyzerNode":null,"showSpectrumChart":true,"showSonogram":true,"__serializedExpressions__":["_Position"],"_Rotation":0,"_Scale":1,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":80},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core","_Position":"lively.pt(0.0,0.0)"},"1":{"submorphs":[{"__isSmartRef__":true,"id":2}],"scripts":[],"shape":{"__isSmartRef__":true,"id":7},"eventHandler":{"__isSmartRef__":true,"id":8},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","BF611634-4ACD-4A36-B67F-AC7ED3F8AE34","F4143224-F308-4E03-A629-8039686EBE94","434DB189-5607-4076-B184-D006480F2A12"],"id":"2916154D-8E99-4203-BE36-DD6A254C385D","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":2},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":9}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button3","partsBinMetaInfo":{"__isSmartRef__":true,"id":11},"pinSpecs":[{"__isSmartRef__":true,"id":19}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"__serializedExpressions__":["_Position","distanceToDragEvent"],"_Rotation":0,"_Scale":1,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":20},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(4.8,4.8)","distanceToDragEvent":"lively.pt(74.0,7.0)"},"2":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":3},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":4}],"eventHandler":{"__isSmartRef__":true,"id":6},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","211204A9-A744-4D0D-8DF7-BD25AD15B57C","07CE423C-5DA3-41B7-8EBD-4837A42BD838","FD0A0412-38A4-4900-BFCD-F6136182D448"],"id":"E11B42E0-2294-446D-96BB-4B0ED1E959DD","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":1},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"3":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(16.0,16.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"4":{"style":{"__isSmartRef__":true,"id":5},"chunkOwner":{"__isSmartRef__":true,"id":2},"_id":"_9791","storedString":"▶","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"5":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"6":{"morph":{"__isSmartRef__":true,"id":2},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"7":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(16.0,16.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"8":{"morph":{"__isSmartRef__":true,"id":1},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"9":{"sourceObj":{"__isSmartRef__":true,"id":1},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":1},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":10},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"10":{"source":{"__isSmartRef__":true,"id":1},"target":{"__isSmartRef__":true,"id":1}},"11":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":12},{"__isSmartRef__":true,"id":13},{"__isSmartRef__":true,"id":14},{"__isSmartRef__":true,"id":15},{"__isSmartRef__":true,"id":16},{"__isSmartRef__":true,"id":17},{"__isSmartRef__":true,"id":18}],"migrationLevel":7,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Jul 23 2013 23:21:11 GMT-0700 (PDT)\")"},"12":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 13:15:42 GMT-0800 (PST)\")"},"13":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 13:53:16 GMT-0800 (PST)\")"},"14":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 30 2013 20:34:25 GMT-0700 (PDT)\")"},"15":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 30 2013 20:35:59 GMT-0700 (PDT)\")"},"16":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 30 2013 20:36:30 GMT-0700 (PDT)\")"},"17":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 10:22:38 GMT-0700 (PDT)\")"},"18":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 10:24:50 GMT-0700 (PDT)\")"},"19":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"20":{"doAction":{"__isSmartRef__":true,"id":21}},"21":{"varMapping":{"__isSmartRef__":true,"id":22},"source":"function doAction() {\n    this.owner.startAudio();\n}","funcProperties":{"__isSmartRef__":true,"id":23},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"22":{"this":{"__isSmartRef__":true,"id":1}},"23":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 13 2014 11:36:23 GMT-0800 (PST)\")"},"24":{"submorphs":[{"__isSmartRef__":true,"id":25}],"scripts":[],"shape":{"__isSmartRef__":true,"id":30},"eventHandler":{"__isSmartRef__":true,"id":31},"_ClipMode":"visible","derivationIds":["EC7EBB28-54AE-4244-80ED-3E13650F82B7","9FD2DCE2-B997-4536-B2A5-90D7DD92B3E6","0D8CC908-BD1C-4062-BB03-3FCEB910483D","BF611634-4ACD-4A36-B67F-AC7ED3F8AE34","DC098660-7C77-48AB-B4BE-75A6380415AC","6CA1E89B-4957-4E94-BCF9-091655DE1699","70D4AF32-DE86-4218-9C90-6E9F6A17CDAE"],"id":"CFD09C04-BF3F-440F-9E33-CD7D834DD2B9","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"value":false,"toggle":false,"isActive":true,"label":{"__isSmartRef__":true,"id":25},"_PreviousBorderWidth":1,"isPressed":false,"showsHalos":false,"attributeConnections":[{"__isSmartRef__":true,"id":32}],"doNotSerialize":["$$fire"],"doNotCopyProperties":["$$fire"],"name":"Button4","partsBinMetaInfo":{"__isSmartRef__":true,"id":34},"pinSpecs":[{"__isSmartRef__":true,"id":42}],"_StyleClassNames":["Morph","Button"],"owner":{"__isSmartRef__":true,"id":0},"__serializedExpressions__":["_Position","distanceToDragEvent"],"_Rotation":0,"_Scale":1,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":43},"__LivelyClassName__":"lively.morphic.Button","__SourceModuleName__":"Global.lively.morphic.Widgets","_Position":"lively.pt(25.8,4.8)","distanceToDragEvent":"lively.pt(74.0,7.0)"},"25":{"submorphs":[],"scripts":[],"shape":{"__isSmartRef__":true,"id":26},"_WhiteSpaceHandling":"pre-wrap","textChunks":[{"__isSmartRef__":true,"id":27}],"eventHandler":{"__isSmartRef__":true,"id":29},"_ClipMode":"hidden","derivationIds":["7884E73F-0D17-44B3-907F-44A5223F1F3D","444B63A6-D9E7-4AB2-AB57-4A9146C18BFF","08999E10-CCC3-4CAB-99BC-4EF500309EC4","211204A9-A744-4D0D-8DF7-BD25AD15B57C","50FC6A55-9A6C-4FF4-93D1-A31DE61953FA","B5D5FB0B-355B-40FD-BB6E-53BDC5CADABD","3105FFD9-FFBD-4129-BC1B-C083D9BB945F"],"id":"159ECD9E-CF0B-4D54-8E8E-D6404467456D","grabbingEnabled":false,"droppingEnabled":false,"halosEnabled":true,"fixedWidth":true,"_WordBreak":"break-all","fixedHeight":true,"_InputAllowed":false,"_HandStyle":"default","allowInput":false,"_FontFamily":"Helvetica","_FontSize":10,"evalEnabled":false,"owner":{"__isSmartRef__":true,"id":24},"isLabel":true,"_Align":"center","eventsAreIgnored":true,"_TextStylingMode":true,"showsHalos":false,"eventsAreDisabled":true,"_PointerEvents":"none","__serializedExpressions__":["_TextColor"],"__LivelyClassName__":"lively.morphic.Text","__SourceModuleName__":"Global.lively.morphic.TextCore","_TextColor":"Color.rgb(0,0,0)"},"26":{"_BorderWidth":0,"_Fill":null,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(16.0,16.0)","_Padding":"lively.rect(0,3,0,0)","_BorderColor":"Color.rgb(0,0,0)"},"27":{"style":{"__isSmartRef__":true,"id":28},"chunkOwner":{"__isSmartRef__":true,"id":25},"_id":"_9881","storedString":"◼","__LivelyClassName__":"lively.morphic.TextChunk","__SourceModuleName__":"Global.lively.morphic.TextCore"},"28":{"__serializedExpressions__":["color"],"__LivelyClassName__":"lively.morphic.TextEmphasis","__SourceModuleName__":"Global.lively.morphic.TextCore","color":"Color.rgb(0,0,0)"},"29":{"morph":{"__isSmartRef__":true,"id":25},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"30":{"_BorderWidth":1,"_BorderRadius":5,"_AppearanceStylingMode":true,"_BorderStylingMode":true,"_Opacity":1,"__serializedExpressions__":["_Position","_Extent","_Padding","_BorderColor"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(16.0,16.0)","_Padding":"lively.rect(0,0,0,0)","_BorderColor":"Color.rgb(189,190,192)"},"31":{"morph":{"__isSmartRef__":true,"id":24},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"32":{"sourceObj":{"__isSmartRef__":true,"id":24},"sourceAttrName":"fire","targetObj":{"__isSmartRef__":true,"id":24},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":33},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"33":{"source":{"__isSmartRef__":true,"id":24},"target":{"__isSmartRef__":true,"id":24}},"34":{"partName":"Button","requiredModules":[],"partsSpaceName":"PartsBin/Inputs","comment":"A simple button that calls a method #doAction when pressed.","changes":[{"__isSmartRef__":true,"id":35},{"__isSmartRef__":true,"id":36},{"__isSmartRef__":true,"id":37},{"__isSmartRef__":true,"id":38},{"__isSmartRef__":true,"id":39},{"__isSmartRef__":true,"id":40},{"__isSmartRef__":true,"id":41}],"migrationLevel":7,"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Tue Jul 23 2013 23:21:11 GMT-0700 (PDT)\")"},"35":{"author":null,"message":"no comment","id":"F8B70225-5143-4A51-ABB4-344B488B3811","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 13:15:42 GMT-0800 (PST)\")"},"36":{"author":"robertkrahn","message":"no comment","id":"9B8B6BE4-4519-4A6C-8F47-70DE61BBB0FB","__serializedExpressions__":["date"],"date":"new Date(\"Tue Dec 11 2012 13:53:16 GMT-0800 (PST)\")"},"37":{"author":"robertkrahn","message":"test","id":"ACA617B4-0416-4E3C-9F4D-171A40F44F0F","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 30 2013 20:34:25 GMT-0700 (PDT)\")"},"38":{"author":"robertkrahn","message":"no comment","id":"811BDE87-D8DD-48BB-97B2-7A3C3F3FAE32","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 30 2013 20:35:59 GMT-0700 (PDT)\")"},"39":{"author":"robertkrahn","message":"no comment","id":"BB2EA501-D9AF-414B-A035-E1487DA6F0FD","__serializedExpressions__":["date"],"date":"new Date(\"Tue Apr 30 2013 20:36:30 GMT-0700 (PDT)\")"},"40":{"author":"Dan","message":"no comment","id":"A594459F-DA9B-49DD-A105-547B3F613CC5","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 10:22:38 GMT-0700 (PDT)\")"},"41":{"author":"Dan","message":"no comment","id":"CFEC4071-14FF-4AEB-A399-197884CD18BF","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 17 2013 10:24:50 GMT-0700 (PDT)\")"},"42":{"pinName":"fire","modality":"output","type":"Boolean","accessor":"fire","location":1.5},"43":{"doAction":{"__isSmartRef__":true,"id":44}},"44":{"varMapping":{"__isSmartRef__":true,"id":45},"source":"function doAction() {\n    this.owner.stopAudio();\n}","funcProperties":{"__isSmartRef__":true,"id":46},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"45":{"this":{"__isSmartRef__":true,"id":24}},"46":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 13 2014 11:36:37 GMT-0800 (PST)\")"},"47":{"_BorderWidth":1,"_ClipMode":"visible","_BorderRadius":0,"_Opacity":1,"_BorderStyle":"solid","__serializedExpressions__":["position","_Extent","_BorderColor","_Fill","_Padding"],"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(46.5,25.5)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(255,255,255)","_Padding":"lively.rect(0,0,0,0)"},"48":{"partsSpaceName":"PartsBin/Felix/","comment":"no comment","migrationLevel":8,"partName":"WormHoleAudioElement","changes":[{"__isSmartRef__":true,"id":49},{"__isSmartRef__":true,"id":50},{"__isSmartRef__":true,"id":51},{"__isSmartRef__":true,"id":52},{"__isSmartRef__":true,"id":53},{"__isSmartRef__":true,"id":54},{"__isSmartRef__":true,"id":55},{"__isSmartRef__":true,"id":56},{"__isSmartRef__":true,"id":57},{"__isSmartRef__":true,"id":58},{"__isSmartRef__":true,"id":59},{"__isSmartRef__":true,"id":60},{"__isSmartRef__":true,"id":61},{"__isSmartRef__":true,"id":62},{"__isSmartRef__":true,"id":63},{"__isSmartRef__":true,"id":64},{"__isSmartRef__":true,"id":65},{"__isSmartRef__":true,"id":66},{"__isSmartRef__":true,"id":67}],"__serializedExpressions__":["lastModifiedDate"],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Fri Nov 14 2014 15:14:29 GMT-0800 (PST)\")"},"49":{"author":"robertkrahn","message":"no comment","id":"FBBB9C99-B61C-4D5F-8750-6E2987DF0C9C","__serializedExpressions__":["date"],"date":"new Date(\"Thu Jun 20 2013 15:16:24 GMT-0700 (PDT)\")"},"50":{"author":"robertkrahn","message":"no comment","id":"67FD74CD-7AE4-4050-ADC7-4DF73804258D","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 30 2013 00:18:06 GMT-0700 (PDT)\")"},"51":{"author":"jenslincke","message":"no comment","id":"AEB2F41B-2C88-4BBA-8875-93CD17CBA1C8","__serializedExpressions__":["date"],"date":"new Date(\"Wed Jan 23 2013 03:57:18 GMT-0800 (PST)\")"},"52":{"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 06:51:36 GMT-0700 (PDT)\")"},"53":{"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC","__serializedExpressions__":["date"],"date":"new Date(\"Thu May 03 2012 06:51:30 GMT-0700 (PDT)\")"},"54":{"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 02:53:45 GMT-0700 (PDT)\")"},"55":{"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B","__serializedExpressions__":["date"],"date":"new Date(\"Fri Feb 24 2012 17:59:09 GMT-0800 (PST)\")"},"56":{"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7","__serializedExpressions__":["date"],"date":"new Date(\"Wed Mar 14 2012 02:42:26 GMT-0700 (PDT)\")"},"57":{"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350","__serializedExpressions__":["date"],"date":"new Date(\"Mon Apr 09 2012 04:42:07 GMT-0700 (PDT)\")"},"58":{"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jun 18 2012 10:35:08 GMT-0700 (PDT)\")"},"59":{"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205","__serializedExpressions__":["date"],"date":"new Date(\"Thu Nov 22 2012 01:35:51 GMT-0800 (PST)\")"},"60":{"author":"jenslincke","message":"no comment","id":"A4B86A7E-A398-4C29-BEE0-4AA045ABABD2","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 07:42:31 GMT-0800 (PST)\")"},"61":{"author":"jenslincke","message":"added legend","id":"7ADA3049-56C1-4D32-874B-F664A79DDB20","__serializedExpressions__":["date"],"date":"new Date(\"Fri Jan 18 2013 07:47:05 GMT-0800 (PST)\")"},"62":{"author":"SAPLivelyScreen","message":"no comment","id":"EF145198-0649-41BD-A92E-521D98FEC49D","__serializedExpressions__":["date"],"date":"new Date(\"Wed May 29 2013 15:36:50 GMT-0700 (PDT)\")"},"63":{"author":"SAPLivelyScreen","message":"no comment","id":"7A44D8CA-6D5F-42A3-A4B4-4D7F51EECA52","__serializedExpressions__":["date"],"date":"new Date(\"Tue Jun 18 2013 11:49:27 GMT-0700 (PDT)\")"},"64":{"author":"robertkrahn","message":"no comment","id":"A452871F-4EB9-45D1-94B8-6065CBA7B8FD","__serializedExpressions__":["date"],"date":"new Date(\"Mon Jul 29 2013 23:20:51 GMT-0700 (PDT)\")"},"65":{"author":"felix","message":"no comment","id":"199AE19B-C95C-482D-86C4-126EFADC7239","__serializedExpressions__":["date"],"date":"new Date(\"Fri Nov 14 2014 13:18:07 GMT-0800 (PST)\")"},"66":{"author":"felix","message":"no comment","id":"D752D3F0-D476-4ABB-A70B-2C2447F1C0E0","__serializedExpressions__":["date"],"date":"new Date(\"Fri Nov 14 2014 15:14:26 GMT-0800 (PST)\")"},"67":{"__serializedExpressions__":["date"],"author":"felix","message":"no comment","id":"31E20BE7-4CDB-4718-8EFB-72B738CBFB6C","date":"new Date(\"Tue Nov 18 2014 09:58:29 GMT-0800 (PST)\")"},"68":{"morph":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"69":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":70}},"70":{"test01IsMorph":{"__isSmartRef__":true,"id":71}},"71":{"varMapping":{"__isSmartRef__":true,"id":72},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":73},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"72":{"this":{"__isSmartRef__":true,"id":69}},"73":{},"74":{"oncomplete":null,"listener":{"__isSmartRef__":true,"id":75},"sampleRate":44100,"currentTime":12988.421224489795,"destination":{"__isSmartRef__":true,"id":76}},"75":{"speedOfSound":343.3,"dopplerFactor":1},"76":{"maxChannelCount":2,"channelInterpretation":"speakers","channelCountMode":"explicit","channelCount":2,"numberOfOutputs":0,"numberOfInputs":1,"context":{"__isSmartRef__":true,"id":74}},"77":{"layouter":{"__isSmartRef__":true,"id":78},"__serializedExpressions__":["extentWithoutPlaceholder"],"extentWithoutPlaceholder":"lively.pt(253.0,104.0)"},"78":{"borderSize":4.760000000000001,"defaultBorderSize":10,"spacing":5.029999999999999,"defaultSpacing":15,"container":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.Layout.HorizontalLayout","__SourceModuleName__":"Global.lively.morphic.Layout"},"79":{"__TypedArrayClass__":"Float32Array","__TypedArrayData__":[-0.0003592875727917999,-0.00033594254637137055,-0.00046776013914495707,-0.0005197363207116723,-0.0003935889690183103,-0.00031272042542696,-0.0002974047092720866,-0.000370168563676998,-0.00006117548036854714,0.00003139086038572714,0.000044304739276412874,-0.000012419184713508002,0.00009527168731437996,0.0003135132428724319,0.00033331505255773664,0.00045359641080722213,0.00045464729191735387,0.0004310673684813082,0.0003912989632226527,0.0004870457632932812,0.0004089645226486027,0.0007385287317447364,0.0008921114495024085,0.0006407434120774269,0.0007249552290886641,0.000733693887013942,0.0006966601358726621,0.0006987065426073968,0.000703535508364439,0.0005727674579247832,0.00043616414768621325,0.0005643171025440097,0.0005562715814448893,0.00042740762000903487,0.0002954835072159767,0.00021122689940966666,0.00036421825643628836,0.0004848685930483043,0.0003208015696145594,0.00029207824263721704,0.00005611024971585721,0.0000034336935641476884,0.00007751079829176888,-0.000007048033694445621,0.00003242187449359335,-0.000027964091714238748,0.0000012774628430634039,0.000002993454017996555,-8.165441158780595e-7,-4.021312633994967e-7,0.0000015090618035173975,-0.00011645095219137147,-0.0003177237813360989,-0.0003986035007983446,-0.00033864419674500823,-0.00036734534660354257,-0.0005145889008417726,-0.0005582758458331227,-0.00043330859625712037,-0.0003547900705598295,-0.00029095791978761554,-0.000264692644122988,-0.00041994015919044614,-0.0005140688153915107,-0.000449929793830961,-0.0005176088307052851,-0.000578069593757391,-0.000728721497580409,-0.0006554750725626945,-0.0004774858243763447,-0.00036311233998276293,-0.00047233753139153123,-0.00043553824070841074,-0.0001649012410780415,-0.00010668586764950305,-0.00012142309424234554,-0.0004267656186129898,-0.00040637305937707424,-0.0003570428234525025,-0.00037975155282765627,-0.0003471065138000995,-0.00015986140351742506,-0.0001243214646819979,-0.00008325492672156543,0.000027845968361361884,-0.000028347514671622775,0.00006374847725965083,0.00023959518875926733,0.0001312243693973869,0.00008081828127615154,0.00009003769810078666,0.00018379536049906164,0.00019722722936421633,0.0002168393402826041,0.0002138156269211322,0.00021377496886998415,0.00024708249839022756,0.000424672820372507,0.0004370550741441548,0.00025879114400595427,0.00020236612181179225,0.00025132385781034827,0.00045022356789559126,0.0003235217009205371,0.00037193825119175017,0.0002706650993786752,0.00011310513218631968,0.00009279891673941165,0.00014619738794863224,0.00036537452251650393,0.00026305054780095816,0.00018121241009794176,0.0000706638238625601,0.00020504844724200666,0.0000653270399197936,0.00012699530634563416,0.00005744658119510859,-0.00002997613228217233,0.000029367600291152485,-0.00003073726475122385,-0.00012351189798209816,-0.00035934403422288597,-0.0005302028148435056,-0.0003305144782643765,-0.0002895190264098346,-0.00043347274186089635,-0.0006661573424935341,-0.0006097879959270358,-0.0005255450960248709,-0.0005025691352784634,-0.0006470333319157362,-0.0007120053051039577,-0.0008000429952517152,-0.0006995690055191517,-0.000568845309317112,-0.0005042155971750617,-0.00036762686795555055,-0.00033826217986643314,-0.00021616980666294694,-0.00011950843327213079,-0.000003973340426455252,6.575664883712307e-7,0.00007684234878979623,0.00018694736354518682,0.00006251376908039674,0.00003746625588973984,0.00026821461506187916,0.0002994152018800378,0.00014953649952076375,0.00008657365833641961,0.00030180418980307877,0.0003888868377543986,0.00046603521332144737,0.0004192985943518579,0.00048270344268530607,0.0004719764110632241,0.000431947351898998,0.00038253149250522256,0.0003081096801906824,0.00018115880084224045,0.00033747043926268816,0.00015954682021401823,0.00025092187570407987,0.00019215495558455586,0.00019207719014957547,0.0002126484178006649,0.0002127231564372778,0.0001752665120875463,-7.245289452839643e-7,-0.0000019107319531030953,-0.00008194302790798247,-0.0002845381386578083,-0.0004390989779494703,-0.000489040045067668,-0.0003456809208728373,-0.00036906200693920255,-0.000239868342760019,-0.0004919341881759465,-0.00030250445706769824,-0.0002398958313278854,-0.00024590635439381003,-0.00024405198928434402,-0.00025982310762628913,-0.00043094169814139605,-0.0003921349998563528,-0.0003592724387999624,-0.0003480901359580457,-0.00024021463468670845,-0.00018210452981293201,-0.0000922393228393048,-0.0001553343900013715,-0.00011603460006881505,-0.00009146527736447752,-0.0002355809701839462,-0.00024489290080964565,-0.00023974412761162966,-0.00023062614491209388,-0.000166618890943937,-0.000009218252671416849,-0.00021430608467198908,-0.000099523676908575,0.000004995605195290409,0.0000177687979885377,0.00006173293513711542,-0.00003819370976998471,0.000021306041162461042,0.00009715977648738772,0.0002119209966622293,0.00010954180470434949,0.00006135647709015757,-0.00003107796510448679,0.00014069504686631262,0.00016547480481676757,0.000040671584429219365,0.000014251304492063355,0.00010196383664151654,0.00021095422562211752,0.0001280221331398934,0.00006236742774490267,0.0000044901680666953325,0.00012081315799150616,-0.000034734195651253685,0.000001211645212606527,0.00018477815319783986,0.000341662613209337,0.00041730806697160006,0.00020216399570927024,0.0003397249965928495,0.00018274101603310555,0.00037062042974866927,0.0002435660280752927,0.00009167156531475484,0.00027098687132820487,0.00019664596766233444,0.00031102984212338924,0.00006361395207932219,0.00009254312317352742,0.000020100345864193514,0.00013640242104884237,0.00024321566161233932,0.00030591132235713303,0.00009799796680454165,0.00021114286209922284,0.000037958343455102295,0.00011230912787141278,-0.00003773066055146046,0.000019880870240740478,9.252861445929739e-7,-0.0000070791020334581845,0.0001013337605400011,0.00008728947432246059,0.000004054659257235471,-0.00000359828209184343,-0.00001828677523008082,-0.00014187234046403319,-0.00008704400534043089,-0.0000015920313671813346,-0.000014630943951488007,-0.00003713526530191302,-0.00018292688764631748,0.00003049865335924551,-0.0000624924068688415,-0.00015391191118396819,-0.00011572609946597368,-0.00010966796253342181,-0.0002806102856993675,-0.0002592781966086477,-0.000380929239327088,-0.00032805156661197543,-0.00035719567677006125,-0.00028452175320126116,-0.00036570351221598685,-0.00021091572125442326,-0.0002531640056986362,-0.00031816615955904126,-0.0003692568570841104,-0.00022412330145016313,-0.0002782115188892931,-0.00026451621670275927,-0.00046178195043466985,-0.0004842859343625605,-0.0004229175392538309,-0.0002463250420987606,-0.0003929520898964256,-0.00033618282759562135,-0.00017272580589633435,-0.00009566267544869334,0.00001903858719742857,-0.00012019542919006199,-0.00015596333832945675,-0.0002759855124168098,-0.00021448844927363098,-0.00018591739353723824,0.0000305503053823486,0.0000019829508346447255,0.000017599428247194737,0.0000943668419495225,0.00009173426951747388,0.00009119052992900833,0.00009389074693899602,0.00022027979139238596,0.0002775980392470956,0.0003682553069666028,0.00024530099472030997,0.00023210227664094418,0.0005400074878707528,0.0004001035704277456,0.0004181606927886605,0.0002348012349102646,0.0001881261996459216,0.0002105461899191141,0.00033283233642578125,0.00009152333223028108,0.00011971392086707056,0.00015854169032536447,0.00003992168421973474,0.000015536279533989727,0.000018150167306885123,0.0000018536484276410192,0.0002404229890089482,0.0002652663388289511,-0.0000685394843458198,0.0000584372210141737,-0.0000031747090361022856,-0.000028937258321093395,-0.00003960916365031153,-0.0001327600475633517,-0.00007913589070085436,-0.00005160102591617033,-0.00014179651043377817,-0.0002050218463409692,-0.00023710360983386636,-0.0002708653046283871,-0.00024623965146020055,-0.00029545085271820426,-0.0005181684391573071,-0.0004193099739495665,-0.00020381613285280764,-0.000167903010151349,-0.0002674306742846966,0.000050542519602458924,-0.000029533592169173062,0.00012885770411230624,0.0001529702713014558,0.0001094891777029261,0.0003996443992946297,0.00018241129873786122,0.00017399535863660276,-0.000007834259122319054,0.0001971441670320928,0.00036020996049046516,0.0001440191554138437,0.00009085480269277468,0.00012447775225155056,0.00023922839318402112,0.00016502705693710595,0.00009214696183335036,0.0001326315541518852,0.0002160224539693445,0.00011360523058101535,0.00010605575516819954,-0.000008937557140598074,0.00008832522144075483,0.000032237159757642075,-0.000005637600224872585,-0.0000271270728262607,0.000026811625502887182,-0.00001480039099988062,-0.00013333435344975442,-0.00011926909792236984,-0.00012204262020532042,-0.00007400116010103375,-0.00007300260767806321,-0.00030467897886410356,-0.00036884850123897195,-0.0003674569306895137,-0.00039428594755008817,-0.00046494786511175334,-0.0004818535235244781,-0.00041002908255904913,-0.000199232847080566,-0.0002287502575200051,-0.00020307066733948886,-0.000029418833946692757,0.0000033405067370040342,-0.0000018725797872320982,2.0636758790715248e-7,1.4003373394189111e-7,-1.884497358162207e-8,-7.034176974229922e-8,-1.493702370680694e-7,8.340662134287413e-7,-0.0000033934129533008672,-0.00009693955507827923,0.00003316566289868206,-0.00003270051456638612,0.00000667281165078748,-0.00001760203485901002,-0.000025610897864680737,-0.000010667190508684143,-0.00014022941468283534,-0.00012265978148207068,-0.00012280921509955078,-0.00012308821897022426,-0.0001204913787660189,-0.00006414320523617789,0.000033943390008062124,-0.000010208530511590652,0.00005158965723239817,0.00010653290519258007,0.00010071774886455387,-0.00003499737795209512,0.000024369121092604473,9.887098713079467e-7,-7.194162208179478e-7,5.340047692925509e-8,3.904348133687563e-8,-2.4749400306944835e-9,4.21785539828079e-9,-3.989225660916418e-8,-5.872766450920608e-8,4.300524949485407e-7,-8.260099093604367e-7,0.00006047623173799366,-0.000004272087608114816,0.00006011338336975314,0.00009545421926304698,0.00011944043217226863,0.00017535568622406572,0.0000434499561379198,0.0001305693294852972,0.00010689199552871287,0.00022731648641638458,0.0000985941878752783,0.00024391652550548315,0.00015414458175655454,0.00006060858504497446,0.00009498227154836059,-0.000040698152588447556,0.00003587340688682161,0.00011313869617879391,0.00003652712257462554,0.000008431688911514357,-0.00005532911018235609,-0.00002214646156062372,-0.0000040793788684823085,0.00003225291220587678,-0.000040057853766484186,0.000004884346708422527,0.0001883275544969365,0.00010259565897285938,-0.00003476225174381398,0.00003584954174584709,0.0001477863552281633,0.00021290089352987707,0.00017768294492270797,0.00006425798346754164,0.00009334830974694341,-0.000019596047422965057,0.00008969465852715075,-0.00004001214256277308,-0.000044233474909560755,-0.00004657148019759916,-0.00001549093212815933,-0.00013028572720941156,-0.00011577559780562297,-0.00015494726540055126,-0.00027110576047562063,-0.0003543456841725856,-0.0004275204846635461,-0.00039402200491167605,-0.00024930067593231797,-0.0003335760848131031,-0.00037074697320349514,-0.00025058031314983964,-0.0004021208733320236,-0.0002726168022491038,-0.0001584087876835838,0.00005245224747341126,-0.00014916498912498355,0.00006991396367084235,-0.000010728885172284208,-0.00008865311247063801,-0.00014616193948313594,0.00005482602136908099,0.00021815882064402103,0.00022695613733958453,0.0000036639030440710485,-0.00022393316612578928,-0.00015990875544957817,0.0001817030570236966,0.00023612775839865208,-0.00004455511225387454,-0.0004056804464198649,-0.0003616947797127068,0.00013279268750920892,0.0002820988302119076,0.0002042629203060642,-0.0007210079347714782,-0.0005882165278308094,-0.0004843246715608984,0.00044405634980648756,0.0001761944149620831,-0.0003344535070937127,-0.0008774760644882917,-0.000595944351516664,0.0004490384308155626,0.0003286860301159322,0.0001526741252746433,-0.0015339972451329231,0.00017052370822057128,0.0004970551817677915,0.002167811617255211,0.0006084780907258391,0.000010043499059975147,-0.0008026615832932293,0.0008789891726337373,0.0016880129696801305,0.0006241803057491779,-0.0012039677239954472,-0.001643528463318944,-0.0004656955716200173,0.0007932869484648108,0.00041349988896399736,-0.0017142145661637187,-0.0024855518713593483,-0.0005810558795928955,0.0009920172160491347,0.0008522123098373413,-0.0020418039057403803,-0.002289076801389456,0.0007978167850524187,0.004018272738903761,0.005637341178953648,0.0020034590270370245,0.00003105762880295515,0.0006233121384866536,0.005826554726809263,0.005006891675293446,0.00020442018285393715,-0.0061144218780100346,-0.006407847627997398,-0.0028122826479375362,-0.0010129299480468035,-0.00023860798683017492,-0.00521805789321661,-0.004240643233060837,-0.004198047332465649,0.003512060036882758,0.0028306629974395037,0.002811180893331766,0.00024529965594410896,0.0014226287603378296,0.004533874336630106,0.002820825669914484,0.0019451862899586558,-0.001378180691972375,-0.00016106913972180337,-0.0011523563880473375,0.0008246662910096347,-0.0015422827564179897,-0.0011683680349960923,-0.0019743950106203556,0.00024288140411954373,-0.00025149734574370086,-0.001100136199966073,-0.0006061040330678225,-0.0008498103125020862,0.00038766179932281375,-0.0003320440882816911,0.00003464793917373754,-0.00010230918996967375,0.00003769818431464955,-0.0002496408123988658,-0.0008259526221081614,-0.0014023070689290762,-0.0010452475398778915,-0.00021985142666380852,5.305955710355192e-7,0.00006180598575156182,-0.00003395736712263897,0.0002772568550426513,0.00036285549867898226,0.0005622636526823044,0.000352136034052819,-0.00011696010187733918,-0.000563613954000175,0.00003831122739939019,-0.00012502691242843866,-0.00008661998435854912,0.00005905138823436573,-0.000040421102312393486,0.00012420598068274558,-0.000457189220469445,0.00018123307381756604,-0.00012117231381125748,0.0005267931846901774,0.0005502600688487291,0.0002899069513659924,0.00038034506724216044,-0.00015006898320280015,0.000181233772309497,-0.0002532309736125171,0.00040853454265743494,-0.0004941757651977241,0.00038576096994802356,-0.00038834678707644343,0.0004158407973591238,-0.0001827747473726049,-0.000022722162611898966,-0.00021356786601245403,-0.00006996177398832515,0.0002079291152767837,-0.00003621554787969217,0.00021852049394510686,-0.00006695694173686206,0.00033121061278507113,0.0005315588787198067,0.00034182576928287745,0.0002685430517885834,0.00011008679575752467,0.00009981109906220809,0.00015612493734806776,0.00026748550590127707,0.00014035891217645258,7.837952580302954e-7,-0.00016921992937568575,0.000020371204300317913,0.00013068600674159825,0.00003505123459035531,-0.00010972981544909999,-0.0002300861815456301,-0.0001929156424012035,0.00020738977764267474,0.00035094114718958735,0.0002203545591328293,-0.000002628037691465579,0.0001997012586798519,0.00023621521540917456,0.00012458256969694048,-0.00004633981006918475,-0.0002943578001577407,-0.0001949696015799418,-0.00023746531223878264,-0.00008751240238780156,-0.00003798400211962871,0.00012838008115068078,0.00003933222615160048,0.00002553683407313656,-0.000046229113650042564,-0.0001960005465662107,-0.00016354916442651302,0.00008135609823511913,0.00009931316890288144,-0.0001918051711982116,-0.00022854842245578766,-0.00035181990824639797,-0.00020078266970813274,-0.000012594013242051005,0.00009250665607396513,0.00009836338722379878,0.00001773697294993326,-0.00007962276140460745,0.0000319779574056156,0.00021183515491429716,-0.000050135349738411605,-0.0000018472783267498016,-0.00039087558980099857,-0.0000936024880502373,-0.000028218119041412137,0.00017961532284971327,0.000034510921977926046,-0.00006595793092856184,-0.00017364040832035244,-0.00019312152289785445,0.000110075474367477,-0.00001598464950802736,0.00006598272739211097,-0.00016171939205378294,-0.00020260934252291918,0.00007556444325018674,-0.000007336842827498913,0.000046805627789581195,0.00003779614780796692,-0.00013107381528243423,-0.000007417378583340906,-0.00011276848090346903,-0.00010350937373004854,-0.00012356719525996596,-0.00010750617366284132,-0.00009191292338073254,-0.00018562766490504146,-0.00003897994974977337,-0.00002526407115510665,-0.00016265441081486642,-0.00009709675941849127,-0.00038035737816244364,-0.0001018597831716761,-0.00007880358316469938,-0.00007630436448380351,-0.00028731749625876546,-0.0003695327613968402,-0.000024051791115198284,0.0002503272262401879,0.00033283111406490207,0.00010764520266093314,-0.00004896881728200242,0.00006650888826698065,0.00036687857937067747,0.0005136429099366069,0.00023589885677210987,-0.00008491800690535456,-0.00010252483480144292,0.00014368066331371665,0.00021693928283639252,0.000012432559742592275,0.00013536047481466085,-0.0002639933954924345,0.0003016433911398053,0.00019967861589975655,0.000137266717501916,-0.00020968139870092273,0.00008610116492491215,-0.00009704012336442247,0.00021450385975185782,0.0001990331948036328,0.000019165305275237188,-0.00008616808918304741,0.00010564845433691517,0.00010349656804464757,0.00009430103818885982,0.00007033741712803021,-0.00002149361534975469,0.00018221180653199553,0.00010371935786679387,0.0001631202903809026,0.000005137553671374917,0.00003635171742644161,-0.000003645036485977471,-0.00003173493314534426,0.000003978057065978646,-0.0001046032048179768,-0.00008966214954853058,-0.0003148464020341635,0.000009845220120041631,-0.0002093658404191956,0.00005112161670695059,-0.000010696920071495697,-0.0001114139668061398,0.00006489306542789564,-0.0000021729101717937738,0.0000605251407250762,0.00003799647674895823,0.00003258517972426489,-0.000035716504498850554,0.000013424647477222607,0.00007934265886433423,0.000004241921487846412,0.000005833573595737107,0.000019261518900748342,0.0000634304597042501,0.000039373349864035845,0.0001304649340454489,0.00005677227090927772,0.00017298190505243838,-0.00004064290988026187,0.00007085187826305628,-0.00011059924145229161,-0.00003843698505079374,-0.000261706649325788,-0.0001646541350055486,-0.0002546822652220726,-0.00020044774282723665,-0.00012216840696055442,0.00009073746332433075,-0.0001696905237622559,-0.00008210811211029068,-0.00007535946497227997,-0.00026196183171123266,-0.00009530782699584961,-0.00028804218163713813,-0.00031742616556584835,-0.0005875032511539757,-0.00014853340690024197,-0.00027578003937378526,-0.0002944587031379342,-0.0004650279297493398,-0.00021038739942014217,-0.0003192935837432742,-0.00014305734657682478,-0.0002749941486399621,-0.0002722975332289934,-0.00019702654390130192,-0.0001277580886380747,-0.00003338632814120501,2.475571818649769e-7,-0.00011842826643260196,-0.00018842711870092899,-0.00003343453136039898,-0.0000372781214537099,-0.00005803782551083714,-0.00021195781300775707,0.00002641796163516119,0.00006698467768728733,0.0001400021865265444,0.00016605996643193066,0.00012870258069597185,0.00027203367790207267,0.0002687050437089056,0.0005284255603328347,0.00024709932040423155,0.0003378760302439332,0.00014974724035710096,0.00009549393871566281,0.00020552326168399304,0.00010137928620679304,0.00016832548135425895,0.00014164199819788337,0.00022562379308510572,0.0001591464679222554,0.00021446257596835494,0.00006402673898264766,0.0002612398820929229,0.0001279724237974733,0.00024283071979880333,0.00003327569356770255,0.00006668003334198147,0.00019185940618626773,0.00014234882837627083,0.0001371892140014097,0.000008335680831805803,0.000011123382137157023,-0.00005283005884848535,0.000022478721803054214,0.00002622244937811047,-0.000006555603249580599,-0.00013564729306381196,-0.000045009757741354406,-0.00005830088775837794,0.000043343359720893204,-0.000024980970920296386,-0.00012285557750146836,-0.00011561377323232591,-0.00015799324319232255,-0.00009355512884212658,-0.00011942090350203216,-0.00021139488671906292,-0.0001330644154222682,-0.0001861123600974679,-0.0003706567804329097,-0.0003445360343903303,-0.00012078852159902453,-0.00016508501721546054,-0.00019864903879351914,-0.0002299934276379645,-0.000145552126923576,-0.00027089728973805904,-0.00021609183750115335,-0.00005093394793220796,-0.00008858273213263601,0.00004633623393601738,-0.00014377660409081727,0.000045373119064606726,-0.000012208861335238907,-0.00004063059895997867,-0.00009183668589685112,0.00005683273047907278,-0.00003094228668487631,0.00012699731450993568,0.00003075212225667201,0.00006313974154181778,0.000048744550440460443,0.00023646534828003496,0.00003869983265758492,-0.000017699378076940775,-0.00005630994928651489,-0.00003515734715620056,0.000013529765055864118,0.0001055017055477947,-0.00004894323865300976,0.00005533606599783525,0.00003962131813750602,0.000004710796474682866,-0.000003864147402055096,-0.000032976291549857706,-0.0001647543685976416,-0.00024615158326923847,-0.0003309919557068497,-0.00028297759126871824,-0.0003169889678247273,-0.000095877141575329,0.00002690565088414587,-0.00007772566459607333,-0.000020895953639410436,-0.00006722375110257417,-0.00015685893595218658,-0.00015427838661707938,-0.00013900978956371546,-0.0002888934104703367,-0.00019954708113800734,-0.00015598091704305261,-0.0000279589366982691,0.00007765907503198832,-0.00008597559644840658,0.000025460780307184905,0.00008684101339895278,0.0005250827525742352,0.0005417115171439946,0.0006638274644501507,0.00019208778394386172,-0.00007490965072065592,-0.0004950441652908921,-0.00037844839971512556,-0.0005634893896058202,-0.000042268409742973745,-0.0001894129381980747,-0.00014063161506783217,-0.0007248091278597713,-0.000195614731637761,0.00012251571752130985,0.0010728067718446255,0.001181381056085229,0.0015372561756521463,0.0011986492900177836,0.0009133064886555076,-0.00024188269162550569,-0.0010762792080640793,-0.0015632681315764785,-0.0009788612369447947,-0.0005165974143892527,0.0002485587610863149,-0.0006541923503391445,-0.0005460242973640561,-0.0005107024335302413,0.00013283523730933666,0.0005303060170263052,0.0005345140816643834,0.00044916491606272757,0.0004990290035493672,0.000800491136033088,0.0006006972398608923,0.0005332970758900046,0.00006160873454064131,0.00023042640532366931,0.000021312516764737666,0.0003087103832513094,0.000015427036487380974,-0.00010975927580147982,-0.0003272852045483887,0.00003355930675752461,0.000426204118411988,0.00017076419317163527,0.0002712430723477155,0.00005644592965836637,-0.000027443224098533392,-0.000022300308046396822,-0.000028685673896688968,0.0003426199546083808,-0.000003832457878161222,-0.0003110957914032042,-0.0005392733728513122,-0.0003350363112986088,-0.0005871930625289679,-0.0001872136926976964,-0.0003126218216493726,-0.0001453740114811808,-0.00018988980446010828,-0.00020684344053734094,-0.00027266686083748937,-0.00047556881327182055,-0.0003585076192393899,-0.0005329372943378985,-0.00029359746258705854,-0.0004084402462467551,-0.00006813229992985725,-0.0009261619998142123,-0.0004961812519468367,-0.0006871495279483497,-0.00015730274026282132,-0.00020373407460283488,-0.0002743231307249516,-0.0005269644316285849,-0.00010784865298774093,0.00011814594472525641,0.00016953269368968904,0.00008440850069746375,-0.00010007383389165625,-0.000028485919756349176,0.00012135873839724809,0.0002219845337094739,-0.000040254395571537316,0.00024609366664662957,0.000455307774245739,0.00040872153476811945,0.000017812768419389613,0.000258624495472759,0.0001555857597850263,0.0001796401193132624,0.00017830284195952117,0.000018383932911092415,-0.00018184959481004626,-0.00039392244070768356,-0.000051512743084458634,-0.000027324036636855453,0.00005187236092751846,-0.00007452364661730826,0.00004350603558123112,-0.000157973263412714,-0.0001311878440901637,-0.0002178802969865501,0.000025139259378192946,0.00012840986892115325,-0.000016779042198322713,-0.000016518373740836978,0.00006281130481511354,-0.000029118225938873366,-0.0000818306507426314,-0.000005138399501447566,0.00011994862870778888,0.0001744084875099361,0.00025034582358784974,0.00024341412063222378,0.00023433889145962894,0.00018137029837816954]},"80":{"initVars":{"__isSmartRef__":true,"id":81},"startAudio":{"__isSmartRef__":true,"id":84},"stopAudio":{"__isSmartRef__":true,"id":87},"getMediaType":{"__isSmartRef__":true,"id":90},"onDropOn":{"__isSmartRef__":true,"id":93},"runStepFunction":{"__isSmartRef__":true,"id":100},"setStepFunction":{"__isSmartRef__":true,"id":103},"newData":{"__isSmartRef__":true,"id":106},"showOutgoingData":{"__isSmartRef__":true,"id":109},"drawFrequencyChart":{"__isSmartRef__":true,"id":112},"startPublishing":{"__isSmartRef__":true,"id":115},"stopPublishing":{"__isSmartRef__":true,"id":118},"drawSonogram":{"__isSmartRef__":true,"id":121}},"81":{"varMapping":{"__isSmartRef__":true,"id":82},"source":"function initVars() {\n    this.audioContext = this.audioContext ? this.audioContext : new Global.webkitAudioContext();\n    this.audioSource = null;\n    this.audioStream = null;\n    this.scriptNode = null;\n    this.analyzerScriptNode = null;\n    this.analyzerNode = null;\n    \n    this.sonogramScriptNode = null;\n    this.sonogramAnalyzerNode = null;\n    this.samples = 1024 * 4;\n    \n    this.showSpectrumChart = true;\n    this.showSonogram = true;\n}","funcProperties":{"__isSmartRef__":true,"id":83},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"82":{"this":{"__isSmartRef__":true,"id":0}},"83":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Nov 17 2014 14:29:51 GMT-0800 (PST)\")"},"84":{"varMapping":{"__isSmartRef__":true,"id":85},"source":"function startAudio() {\n    if (this.audioStream) {\n        // already playing\n        return;\n    }\n    \n    this.initVars();\n    \n    // request microphone access\n    Global.navigator.webkitGetUserMedia({audio: true}, gotAudio, function(err) {\n        console.log(err);\n    });\n    \n    var audioElement = this;\n    function gotAudio(stream) {\n        audioElement.audioStream = stream;\n        audioElement.audioSource = audioElement.audioContext.createMediaStreamSource(stream);\n        \n        // --- Streaming stuff ---\n        \n        // this node is used to grab a buffer of samples and prepare them for streaming\n        audioElement.scriptNode = audioElement.audioContext.createScriptProcessor(audioElement.samples, 1, 1);\n        \n        audioElement.scriptNode.onaudioprocess = function(evt) {\n            // on each completely filled buffer\n            var inBuffer = evt.inputBuffer;\n            var inData = inBuffer.getChannelData(0);\n            \n            audioElement.newData(inData);\n            \n            // We do not write anything into the output buffer,\n            // so the signal stops here.\n            // To play the local audio, connect audioSource to \n            // audioContext.destination\n        };\n        \n        audioElement.audioSource.connect(audioElement.scriptNode);\n        audioElement.scriptNode.connect(audioElement.audioContext.destination);\n        // enable this to play the audio on the speakers\n        // audioElement.audioSource.connect(audioElement.audioContext.destination);\n        \n        // --- Frequency distribution chart ---\n        \n        if (audioElement.showSpectrumChart) {\n            // analyzer for frequency distribution\n            audioElement.analyzerNode = audioElement.audioContext.createAnalyser();\n            // with that fft size, we get 256 frequency bins\n            audioElement.analyzerNode.fftSize = 512;\n            audioElement.analyzerNode.smoothingTimeConstant = 0.8;\n            // script node for visualizing frequency distribution\n            audioElement.analyzerScriptNode = audioElement.audioContext.createScriptProcessor(audioElement.samples, 1, 1);\n            \n            audioElement.analyzerScriptNode.onaudioprocess = function() {\n                // aquire frequency data\n                var frequencyBins = new Global.Uint8Array(audioElement.analyzerNode.frequencyBinCount);\n                audioElement.analyzerNode.getByteFrequencyData(frequencyBins);\n                \n                // draw the chart\n                audioElement.drawFrequencyChart(frequencyBins);\n            };\n            \n            audioElement.audioSource.connect(audioElement.analyzerNode);\n            audioElement.analyzerNode.connect(audioElement.analyzerScriptNode);\n            audioElement.analyzerScriptNode.connect(audioElement.audioContext.destination);\n        }\n        \n        // --- Sonogram ---\n        \n        if (audioElement.showSonogram) {\n            // analyzer for sonogram\n            audioElement.sonogramAnalyzerNode = audioElement.audioContext.createAnalyser();\n            audioElement.sonogramAnalyzerNode.smoothingTimeConstant = 0.1;\n            audioElement.sonogramAnalyzerNode.fftSize = 1024;\n            \n            // script node for sonogram\n            audioElement.sonogramScriptNode = audioElement.audioContext.createScriptProcessor(audioElement.samples, 1, 1);\n            \n            var bufferCanvas = document.createElement('canvas');\n            bufferCanvas.width = 700;\n            bufferCanvas.height = 550;\n            \n            audioElement.sonogramScriptNode.onaudioprocess = function() {\n                // aquire frequency data\n                var frequencyBins = new Global.Uint8Array(audioElement.sonogramAnalyzerNode.frequencyBinCount);\n                audioElement.sonogramAnalyzerNode.getByteFrequencyData(frequencyBins);\n                \n                // draw the sonogram\n                audioElement.drawSonogram(frequencyBins, bufferCanvas);\n            };\n            \n            audioElement.audioSource.connect(audioElement.sonogramAnalyzerNode);\n            audioElement.sonogramAnalyzerNode.connect(audioElement.sonogramScriptNode);\n            audioElement.sonogramScriptNode.connect(audioElement.audioContext.destination);\n        }\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":86},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"85":{"this":{"__isSmartRef__":true,"id":0}},"86":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Nov 17 2014 14:23:57 GMT-0800 (PST)\")"},"87":{"varMapping":{"__isSmartRef__":true,"id":88},"source":"function stopAudio() {\n    if (!this.audioStream) {\n        // not playing\n        return;\n    }\n    \n    // --- Streaming stuff ---\n    this.audioSource.disconnect(this.scriptNode);\n    this.scriptNode.disconnect(this.audioContext.destination);\n    \n    // --- Frequency spectrum ---\n    if (this.analyzerNode) {\n        this.audioSource.disconnect(this.analyzerNode);\n        this.analyzerNode.disconnect(this.analyzerScriptNode);\n        this.analyzerScriptNode.disconnect(this.audioContext.destination);\n    }\n    \n    // --- Sonogram ---\n    if (this.sonogramAnalyzerNode) {\n        this.audioSource.disconnect(this.sonogramAnalyzerNode);\n        this.sonogramAnalyzerNode.disconnect(this.sonogramScriptNode)\n        this.sonogramScriptNode.disconnect(this.audioContext.destination)\n    }\n    \n    // --- General reset ---\n    this.audioStream.stop();\n    this.initVars();\n}","funcProperties":{"__isSmartRef__":true,"id":89},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"88":{"this":{"__isSmartRef__":true,"id":0}},"89":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Nov 17 2014 14:28:47 GMT-0800 (PST)\")"},"90":{"varMapping":{"__isSmartRef__":true,"id":91},"source":"function getMediaType() {\n    return 'audio/audio';\n}","funcProperties":{"__isSmartRef__":true,"id":92},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"91":{"this":{"__isSmartRef__":true,"id":0}},"92":{"user":"felix","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 13 2014 11:50:55 GMT-0800 (PST)\")"},"93":{"varMapping":{"__isSmartRef__":true,"id":94},"source":"function onDropOn(aMorph) {\n    if (aMorph.onMorphAdded) {\n        aMorph.onMorphAdded(this);\n    }\n    return false;\n}","funcProperties":{"__isSmartRef__":true,"id":99},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"94":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":95}},"95":{"$super":{"__isSmartRef__":true,"id":96}},"96":{"varMapping":{"__isSmartRef__":true,"id":97},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n                } catch (e) {\n                    if ($world)\n                        $world.logError(e, 'Error in $super call')\n                    else\n                        alert('Error in $super call: ' + e + '\\n' + e.stack);\n                    return null;\n                }\n            }","funcProperties":{"__isSmartRef__":true,"id":98},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"97":{"obj":{"__isSmartRef__":true,"id":0},"name":"onDropOn"},"98":{},"99":{"user":"felix","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 13 2014 11:52:17 GMT-0800 (PST)\")"},"100":{"varMapping":{"__isSmartRef__":true,"id":101},"source":"function runStepFunction(buffer) {\n    if (this.stepFunc) {\n        this.stepFunc(buffer);\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":102},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"101":{"this":{"__isSmartRef__":true,"id":0}},"102":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 13 2014 13:38:37 GMT-0800 (PST)\")"},"103":{"varMapping":{"__isSmartRef__":true,"id":104},"source":"function setStepFunction(stepFunc) {\n    this.stepFunc = stepFunc;\n}","funcProperties":{"__isSmartRef__":true,"id":105},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"104":{"this":{"__isSmartRef__":true,"id":0}},"105":{"user":"felix","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Thu Nov 13 2014 11:52:59 GMT-0800 (PST)\")"},"106":{"varMapping":{"__isSmartRef__":true,"id":107},"source":"function newData(buffer) {\n    \n    var factor = 4;\n    var lowSampleRateBuffer = new Global.Float32Array(buffer.length / factor);\n    \n    for (var i = 0; i < lowSampleRateBuffer.length; i++) {\n        lowSampleRateBuffer[i] = buffer[i*factor]; \n    }\n    this.showOutgoingData(lowSampleRateBuffer);\n    \n    if (this.publishing) {\n        this.runStepFunction(lowSampleRateBuffer);\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":108},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"107":{"this":{"__isSmartRef__":true,"id":0}},"108":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Nov 14 2014 15:12:33 GMT-0800 (PST)\")"},"109":{"varMapping":{"__isSmartRef__":true,"id":110},"source":"function showOutgoingData() {\n    \n}","funcProperties":{"__isSmartRef__":true,"id":111},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"110":{"this":{"__isSmartRef__":true,"id":0}},"111":{"user":"felix","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Nov 14 2014 10:50:09 GMT-0800 (PST)\")"},"112":{"varMapping":{"__isSmartRef__":true,"id":113},"source":"function drawFrequencyChart(frequencyBins) {\n    var canvas = $morph('SpectrumCanvas');\n    if (!canvas) $world.loadPartItem('SpectrumChartWindow', 'PartsBin/Felix/').openInWorld();\n    canvas = canvas.getCanvas();\n    var ctx = canvas.getContext('2d');\n    \n    // clear the whole canvas\n    ctx.clearRect(0, 0, canvas.width, canvas.height);\n    \n    for (var i = 0; i < frequencyBins.length; i++) {\n        ctx.fillRect(i * 5, 325 - frequencyBins[i], 3, 325);\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":114},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"113":{"this":{"__isSmartRef__":true,"id":0}},"114":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Nov 17 2014 14:14:15 GMT-0800 (PST)\")"},"115":{"varMapping":{"__isSmartRef__":true,"id":116},"source":"function startPublishing() {\n    this.publishing = true;\n}","funcProperties":{"__isSmartRef__":true,"id":117},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"116":{"this":{"__isSmartRef__":true,"id":0}},"117":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Nov 14 2014 15:10:51 GMT-0800 (PST)\")"},"118":{"varMapping":{"__isSmartRef__":true,"id":119},"source":"function stopPublishing() {\n    this.publishing = false;\n}","funcProperties":{"__isSmartRef__":true,"id":120},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"119":{"this":{"__isSmartRef__":true,"id":0}},"120":{"user":"felix","tags":[],"__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Fri Nov 14 2014 15:11:12 GMT-0800 (PST)\")"},"121":{"varMapping":{"__isSmartRef__":true,"id":122},"source":"function drawSonogram(frequencyBins, bufferCanvas) {\n    var canvas = $morph('SonogramCanvas');\n    if (!canvas) $world.loadPartItem('SonogramCanvasWindow', 'PartsBin/Felix/').openInWorld();\n    canvas = canvas.getCanvas();\n    var ctx = canvas.getContext('2d');\n    var bufferCtx = bufferCanvas.getContext('2d');\n    \n    // copy current canvas content\n    bufferCtx.drawImage(canvas, 0, 0, canvas.width, canvas.height);\n    \n    // draw a new line on the right side of the canvas\n    for (var i =  0; i < frequencyBins.length; i++) {\n        var value = frequencyBins[i];\n        // set the color depending of the amount of frequencies\n        ctx.fillStyle = getColorFor(value);\n        \n        // draw at the right side\n        ctx.fillRect(canvas.width - 1, canvas.height - i, 1, 1);\n    }\n    \n    // draw the saved canvas content, shifted by one pixel to the left\n    ctx.save();\n    ctx.translate(-1, 0);\n    ctx.drawImage(bufferCanvas, 0, 0, canvas.width, canvas.height, 0, 0, canvas.width, canvas.height);\n    ctx.restore();\n    \n    function getColorFor(value) {\n        var max = 300;\n        if (value >= max) return '#000000';\n        // create a hex value for the given value in the range of 0 - max\n        var colorVal = (255 - Math.round(value / max * 255)).toString(16);\n        // create a color string from the colorVal (will be gray)\n        var colorString = '#' + colorVal + colorVal + colorVal;\n        \n        return colorString;\n    }\n}","funcProperties":{"__isSmartRef__":true,"id":123},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"122":{"this":{"__isSmartRef__":true,"id":0}},"123":{"user":"felix","__serializedExpressions__":["timestamp"],"timestamp":"new Date(\"Mon Nov 17 2014 14:14:51 GMT-0800 (PST)\")"},"isSimplifiedRegistry":true}}