-
Notifications
You must be signed in to change notification settings - Fork 1
/
jetski_closure.js
109 lines (109 loc) · 70 KB
/
jetski_closure.js
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
for(var aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},l="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global&&null!=global?global:this,m=["Array","prototype","fill"],p=0;p<m.length-1;p++){var q=m[p];q in l||(l[q]={});l=l[q]}
var r=m[m.length-1],t=l[r],u=t?t:function(a,b,c){var e=this.length||0;0>b&&(b=Math.max(0,e+b));if(null==c||c>e)c=e;c=Number(c);0>c&&(c=Math.max(0,e+c));for(b=Number(b||0);b<c;b++)this[b]=a;return this};u!=t&&null!=u&&aa(l,r,{configurable:!0,writable:!0,value:u});var v=document,x="Eternal 3am;3am Eternal;3am Muumin;Justified Leather;3am Justified;Ancient Jetski;Eternal Night;KLFtro;The Jams are back in town;Ancient ABBA".split(";");rand=function(a){return 0|Math.random()*a};var ba=x[rand(x.length)];
v.title=ba;PI=Math.PI;si=Math.sin;M=Math.max;N=Math.min;Q=Math.sqrt;var y=v.body,z=y.style;z.margin="0px";z.background="#000";z.overflow="hidden";y.innerHTML="";var B=v.createElement("canvas");y.appendChild(B);B.style.background="transparent";var D=B.getContext("2d"),E=D.width=B.width=window.innerWidth,F=D.height=B.height=window.innerHeight,G=note=0,H=[];
(function(){for(var a=0,b=["ms","moz","webkit","o"],c=0;c<b.length&&!window.requestAnimationFrame;++c)window.requestAnimationFrame=window[b[c]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[b[c]+"CancelAnimationFrame"]||window[b[c]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(b){var c=(new Date).getTime(),e=M(0,16-(c-a)),h=window.setTimeout(function(){b(c+e)},e);a=c+e;return h});window.cancelAnimationFrame||(window.cancelAnimationFrame=
function(a){clearTimeout(a)})})();AHXSong=function(){};
AHXSong.prototype={Ba:"",Ib:0,Ha:0,oa:0,Nb:0,Db:0,ub:0,rb:0,sb:0,G:[],Y:[],lb:[],Mb:[],kb:function(a){a.j=3;var b=parseInt(a.data[a.j].charCodeAt(0).toString(16),16);a.j+=1;this.rb=b;var b=14,c;c=parseInt(a.data[a.j+0].charCodeAt(0).toString(16),16)<<8|parseInt(a.data[a.j+1].charCodeAt(0).toString(16),16);a.j+=2;this.Ba=ca(a,c);c+=this.Ba.length+1;this.sb=(I(a,6)>>5&3)+1;this.Ha=(I(a,6)&15)<<8|I(a,7);this.Ib=I(a,8)<<8|I(a,9);this.oa=I(a,10);this.Nb=I(a,11);this.Db=I(a,12);this.ub=I(a,13);for(var e=
0;e<this.ub;e++)this.Mb.push(I(a,b+0)<<8|I(a,b+1)),b+=2;for(e=0;e<this.Ha;e++){for(var d={D:[],pa:[]},f=0;4>f;f++){d.D.push(I(a,b++));var h=I(a,b++);h&128&&(h=(h&127)-128);d.pa.push(h)}this.G.push(d)}d=this.Nb;for(e=0;e<d+1;e++){h=[];if(128!=(I(a,6)&128)||e)for(f=0;f<this.oa;f++){var g=da();g.ja=I(a,b)>>2&63;g.a=(I(a,b)&3)<<4|I(a,b+1)>>4;g.ea=I(a,b+1)&15;g.fa=I(a,b+2);h.push(g);b+=3}else for(f=0;f<this.oa;f++)h.push(da());this.Y.push(h)}this.lb.push(ea());for(e=1;e<this.Db+1;e++){d=ea();d.Ba=ca(a,
c);c+=d.Ba.length+1;d.Qb=I(a,b+0);d.R=I(a,b+1)>>3&31|I(a,b+12)>>2&32;d.m=I(a,b+1)&7;d.w.aa=I(a,b+2);d.w.ta=I(a,b+3);d.w.ba=I(a,b+4);d.w.ua=I(a,b+5);d.w.va=I(a,b+6);d.w.ca=I(a,b+7);d.w.da=I(a,b+8);d.xa=I(a,b+12)&127;d.ra=I(a,b+13);d.Bb=I(a,b+14)>>4&7;d.ia=I(a,b+14)&128?1:0;d.Z=I(a,b+14)&15;d.Ma=I(a,b+15);d.Ia=I(a,b+16);d.La=I(a,b+17);d.Lb=I(a,b+18);d.za=I(a,b+19)&63;d.U.Kb=I(a,b+20);d.U.mb=I(a,b+21);b+=22;for(f=0;f<d.U.mb;f++)h={ja:0,Ab:0,o:0,ea:[0,0],fa:[0,0]},h.ea[0]=I(a,b+0)>>2&7,h.ea[1]=I(a,b+
0)>>5&7,h.o=I(a,b+0)<<1&6|I(a,b+1)>>7,h.Ab=I(a,b+1)>>6&1,h.ja=I(a,b+1)&63,h.fa[0]=I(a,b+2),h.fa[1]=I(a,b+3),d.U.J.push(h),b+=4;this.lb.push(d)}}};function fa(a,b,c){var e=new dataType;e.data=b;a.kb(e);c()}function da(){return{ja:0,a:0,ea:0,fa:0}}function ga(){return{aa:0,ta:0,ba:0,ua:0,va:0,ca:0,da:0}}function ea(){return{Ba:"",Qb:0,m:0,w:ga(),xa:0,za:0,R:0,Ia:0,La:0,Lb:0,ra:0,Z:0,Ma:0,ia:0,Bb:0,U:{Kb:0,mb:0,J:[]}}}
function J(){return{gb:0,Pb:0,$:[],D:0,pa:0,Fb:0,$b:0,v:0,i:ga(),a:null,Cb:0,vb:0,wb:0,g:0,pb:0,eb:64,T:0,o:0,bb:0,C:0,Va:0,fb:1,ib:0,yb:0,xb:0,Ta:0,ia:0,jb:0,ma:0,B:0,$a:0,Ga:0,ab:0,Fa:0,Ea:0,Za:0,ra:0,qa:0,Z:0,Ma:0,na:0,cb:0,tb:0,Ia:0,La:0,Ja:0,M:0,Ka:0,fc:0,Sa:0,hb:0,Aa:0,xa:0,za:0,O:0,P:0,R:0,ya:0,Ua:0,Ya:0,ob:0,la:0,m:0,K:null,Xa:0,Wa:0,Da:0,Ca:0,I:[],h:0,zb:0,Rb:function(){var a=this.i,b=this.a.w;a.aa=b.aa;a.ta=256*b.ta/a.aa;a.ba=b.ba;a.ua=256*(b.ua-b.ta)/a.ba;a.va=b.va;a.ca=b.ca;a.da=256*(b.da-
b.ua)/a.ca}}}
function ha(){this.ha=function(a){var b=[],c=a>>2,e=128/c,d=-(a>>1),f=0;for(a=0;a<c;a++)b.push(f),f+=e;b.push(127);if(1!=c)for(f=128,a=0;a<c-1;a++)f-=e,b.push(f);e=b.length+d;for(a=0;a<2*c;a++)d=b[e++],d=127==d?-128:-d,b.push(d);return b};this.Ub=function(){for(var a=[],b=1;32>=b;b++){for(var c=0;c<2*(64-b);c++)a.push(-128);for(c=0;c<2*b;c++)a.push(127)}return a};this.ga=function(a){for(var b=[],c=0|256/(a-1),e=-128,d=0;d<a;d++)b.push(e),e+=c;return b};this.Vb=function(){for(var a=0;1920>a;a++)H[a]=
rand(255),6>rand(10)&&(H[a]=128-rand(2));return H};this.wa=function(a,b,c){for(var e,d=0,f=0,h=[],g=0;g<a.length;g++)e=a[g]-d-f,e=N(127,M(-128,e)),d+=e*b,d=N(127,M(-128,d)),f+=d*b,f=N(127,M(-128,f));for(g=0;g<a.length;g++)e=a[g]-d-f,e=N(127,M(-128,e)),d+=e*b,d=N(127,M(-128,d)),f+=d*b,f=N(127,M(-128,f)),c?h.push(0|e):h.push(0|f);return h};this.Tb=function(){for(var a=this.c[31],b=this.wa,c=8,e=0;31>e;){for(var d={s:[],u:[]},f={s:[],u:[]},h=1.25*c/100,g=0;5>=g;g++)d.s[g]=b(a.s[g],h,0),d.u[g]=b(a.u[g],
h,0),f.s[g]=b(a.s[g],h,1),f.u[g]=b(a.u[g],h,1);d.H=[];f.H=[];for(g=0;32>g;g++)d.H=d.H.concat(this.wa(a.H.slice(128*g,128*(g+1)),h,0)),f.H=f.H.concat(this.wa(a.H.slice(128*g,128*(g+1)),h,1));d.Oa=this.wa(a.Oa,h,0);f.Oa=this.wa(a.Oa,h,1);this.c[e]=d;this.c[e+32]=f;e++;c+=3}};this.c=Array(63);this.c[31]={};this.c[31].s=[];this.c[31].s[0]=this.ga(4);this.c[31].s[1]=this.ga(8);this.c[31].s[2]=this.ga(16);this.c[31].s[3]=this.ga(32);this.c[31].s[4]=this.ga(64);this.c[31].s[5]=this.ga(128);this.c[31].u=
[];this.c[31].u[0]=this.ha(4);this.c[31].u[1]=this.ha(8);this.c[31].u[2]=this.ha(16);this.c[31].u[3]=this.ha(32);this.c[31].u[4]=this.ha(64);this.c[31].u[5]=this.ha(128);this.c[31].H=this.Ub();this.c[31].Oa=this.Vb();this.Tb();return this}
function ja(){return{X:0,S:0,Jb:0,hc:0,V:0,Eb:0,cc:0,N:0,f:0,L:0,A:0,W:0,nc:[],Na:new ha,l:[],sa:0,b:AHXSong(),Gb:0,Ob:[0,24,49,74,97,120,141,161,180,197,212,224,235,244,250,253,255,253,250,244,235,224,212,197,180,161,141,120,97,74,49,24],qb:[0,3424,3232,3048,2880,2712,2560,2416,2280,2152,2032,1920,1812,1712,1616,1524,1440,1356,1280,1208,1140,1076,1016,960,906,856,808,762,720,678,640,604,570,538,508,480,453,428,404,381,360,339,320,302,285,269,254,240,226,214,202,190,180,170,160,151,143,135,127,120,
113],kb:function(a){this.b=a},Xb:function(a){if(a>this.b.ub)return 0;0==a?this.f=0:this.f=Song.Mb[a-1];this.V=this.L=0;this.Eb=64;this.cc=1;this.A=this.W=0;this.N=6;this.X=0;this.S=1;this.hc=this.Gb=this.Jb=0;this.l=[J(),J(),J(),J()];return 1},bc:function(){if(0>=this.X){if(this.S){for(var a=this.f+1==this.b.Ha?0:this.f+1,b=0;4>b;b++)this.l[b].D=this.b.G[this.f].D[b],this.l[b].pa=this.b.G[this.f].pa[b],this.l[b].Fb=this.b.G[a].D[b],this.l[b].$b=this.b.G[a].pa[b];G=a;this.S=0}for(b=0;4>b;b++)this.Hb(b);
this.X=this.N}for(b=0;4>b;b++)this.dc(b);this.Gb++;0<this.N&&0>=--this.X&&(this.V||(this.A++,this.A>=this.b.oa&&(this.L=this.f+1,this.W=0,this.V=1)),this.V&&(this.V=0,this.A=this.W,this.W=0,this.f=this.L,this.L=0,this.f==this.b.Ha&&(this.Jb=1,this.f=this.b.Ib),this.S=1),note=this.A);for(a=0;4>a;a++)this.ec(a)},kc:function(){this.f++;this.f==this.b.Ha&&(this.f=0);this.X=0;this.S=1},lc:function(){this.f--;0>this.f&&(this.f=0);this.X=0;this.S=1},jc:function(a){this.f=a;this.X=0;this.S=1},Hb:function(a){var b=
this.l[a];if(b.fb){b.yb=b.xb=0;var c=this.b.Y[this.b.G[this.f].D[a]][this.A].ja,e=this.b.Y[this.b.G[this.f].D[a]][this.A].a,d=this.b.Y[this.b.G[this.f].D[a]][this.A].ea;a=this.b.Y[this.b.G[this.f].D[a]][this.A].fa;switch(d){case 0:0<(a&15)&&9>=(a&15)&&(this.L=a&15);break;case 5:case 10:b.xb=a&15;b.yb=a>>4;break;case 11:this.L=100*this.L+(a&15)+10*(a>>4);this.V=1;break;case 13:this.L=this.f+1;this.W=(a&15)+10*(a>>4);this.W>this.b.oa&&(this.W=0);this.V=1;break;case 14:switch(a>>4){case 12:(a&15)<this.N&&
(b.Da=a&15,b.Da&&(b.Ca=1,b.ia=0));break;case 13:if(b.Wa)b.Wa=0;else if((a&15)<this.N&&(b.Xa=a&15,b.Xa)){b.Wa=1;return}}break;case 15:this.N=a}if(e){b.pb=64;b.ma=b.B=b.$a=0;b.v=0;b.a=this.b.lb[e];b.Rb();b.m=b.a.m;b.g=b.a.Qb;b.qa=0;b.ra=b.a.ra;b.Z=b.a.Z;b.Ma=b.a.Ma;b.wb=0;b.ia=b.a.ia;b.Ta=b.a.Bb;b.Va=b.Ka=0;b.tb=b.na=0;var f=b.a.Ia>>5-b.m,h=b.a.La>>5-b.m;h<f&&(e=h,h=f,f=e);b.La=h;b.Ia=f;b.Ua=b.Aa=b.Sa=0;b.ya=0;e=b.a.R;f=b.a.xa;h=b.a.za;f&128&&(e|=32);h&128&&(e|=64);b.R=e;f&=-129;h&=-129;f>h&&(e=f,f=
h,h=e);b.za=h;b.xa=f;b.O=32;b.la=b.Ya=0;b.ob=b.a.U.Kb;b.K=b.a.U}b.Ga=0;switch(d){case 9:b.Ja=a>>5-b.m;b.bb=1;b.Va=1;break;case 5:case 3:0!=a&&(b.ma=a),c&&(c=this.qb[c],e=this.qb[b.vb],e-=c,c=e+b.B)&&(b.$a=-e),b.Ga=1,b.ab=1,c=0}c&&(b.vb=c,b.C=1);switch(d){case 1:b.ma=-a;b.Ga=1;b.ab=0;break;case 2:b.ma=a;b.Ga=1;b.ab=0;break;case 12:if(64>=a)b.g=a;else if(a-=80,64>=a)for(b=0;4>b;b++)this.l[b].eb=a;else a-=80,64>=a&&(b.eb=a);break;case 14:switch(a>>4){case 1:b.B=-(a&15);b.C=1;break;case 2:b.B=a&15;b.C=
1;break;case 4:b.Z=a&15;break;case 10:b.g+=a&15;64<b.g&&(b.g=64);break;case 11:b.g-=a&15,0>b.g&&(b.g=0)}}}},dc:function(a){var b=this.l[a];if(b.fb){b.Wa&&(0>=b.Xa?this.Hb(a):b.Xa--);if(b.Ta&&(this.A+1<this.b.oa?this.b.Y[b.D][this.A+1].a:this.b.Y[b.Fb][0].a)){var c=this.N-b.Ta;0>c&&(c=0);b.Ca?b.Ta=0:(b.Ca=1,b.Da=c,b.jb=-(c-this.N))}b.Ca&&(0>=b.Da?(b.Ca=0,b.ia?(b.i.da=-(b.v-(b.a.w.da<<8))/b.jb,b.i.ca=b.jb,b.i.aa=b.i.ba=b.i.va=0):b.g=0):b.Da--);b.i.aa?(b.v+=b.i.ta,0>=--b.i.aa&&(b.v=b.a.w.ta<<8)):b.i.ba?
(b.v+=b.i.ua,0>=--b.i.ba&&(b.v=b.a.w.ua<<8)):b.i.va?b.i.va--:b.i.ca&&(b.v+=b.i.da,0>=--b.i.ca&&(b.v=b.a.w.da<<8));b.g=b.g+b.yb-b.xb;0>b.g&&(b.g=0);64<b.g&&(b.g=64);if(b.Ga)if(b.ab){var c=b.B-b.$a,e=b.ma;0<c&&(e=-e);c&&(c=0<=(c+e^c)?b.B+e:b.$a,b.B=c,b.C=1)}else b.B+=b.ma,b.C=1;if(b.Z)if(0>=b.ra){var e=b.qa,d;31<b.qa?d=-this.Ob[32-b.qa]:d=this.Ob[b.qa];b.wb=d*b.Z>>7;b.C=1;b.qa=e+b.Ma&63}else b.ra--;if(b.a&&b.Ya<b.a.U.mb){if(0>=--b.la){e=b.Ya++;b.la=b.ob;b.K.J[e].o&&(b.o=b.K.J[e].o-1,b.T=1,b.Fa=b.Ea=
0);for(d=b.Za=0;2>d;d++)this.ac(a,b.K.J[e].ea[d],b.K.J[e].fa[d]);b.K.J[e].ja&&(b.Cb=b.K.J[e].ja,b.C=1,b.ib=b.K.J[e].Ab)}}else b.la?b.la--:b.Fa=0;b.Za&&(b.Ea-=b.Fa,b.Ea&&(b.C=1));if(2==b.o&&b.na&&0>=--b.tb){c=b.Ia;e=b.La;a=b.Ja;b.cb&&(b.cb=0,a<=c?(b.Ka=1,b.M=1):a>=e&&(b.Ka=1,b.M=-1));if(c==a||e==a)b.Ka?b.Ka=0:b.M=-b.M;a+=b.M;b.Ja=a;b.bb=1;b.tb=b.a.Lb}if(b.Sa&&0>=--b.Aa){c=b.xa;e=b.za;a=b.O;b.hb&&(b.hb=0,a<=c?(b.ya=1,b.P=1):a>=e&&(b.ya=1,b.P=-1));var f=3>b.R?5-b.R:1;for(d=0;d<f;d++){if(c==a||e==a)b.ya?
b.ya=0:b.P=-b.P;a+=b.P}b.O=a;b.T=1;b.Aa=b.R-3;1>b.Aa&&(b.Aa=1)}if(2==b.o||b.bb){a=this.Na.c[b.O-1].H;e=0;d=b.Ja<<5-b.m;32<d&&(d=64-d,b.fc=1);d--&&(e=128*d);c=32>>b.m;f=4*(1<<b.m);b.I=Array(f);for(d=0;d<f;d++)b.I[d]=a[e],e+=c;b.T=1;b.o=2;b.bb=0}3==b.o&&(b.T=1);b.T&&2!=b.o&&(d=b.O-1,d in this.Na.c&&(3==b.o?(a=this.sa&1278,b.I=this.Na.c[d].Oa.slice(a,a+640),this.sa+=2239384,this.sa=((this.sa>>8|this.sa<<24)+782323^75)-6735):0==b.o?b.I=this.Na.c[d].u[b.m].slice():1==b.o&&(b.I=this.Na.c[d].s[b.m].slice())));
b.h=b.Cb;b.ib||(b.h+=b.pa+b.vb-1);60<b.h&&(b.h=60);0>b.h&&(b.h=0);b.h=this.qb[b.h];b.ib||(b.h+=b.B);b.h+=b.Ea+b.wb;3424<b.h&&(b.h=3424);113>b.h&&(b.h=113);b.zb=((((b.v>>8)*b.g>>6)*b.pb>>6)*b.eb>>6)*this.Eb>>6}},ec:function(a){a=this.l[a];if(a.fb){if(a.gb=a.zb,a.C&&(a.C=0,a.Pb=a.h),a.T)if(3==a.o)a.$=a.I.slice();else{var b=5*(1<<5-a.m),c=4*(1<<a.m);if(a.I.length)for(a.$=[],e=0;e<b;e++)a.$=a.$.concat(a.I.slice(0,c));else{a.$=Array(b*c);for(var e=0;e<b*c;e++)a.$=0}}}else a.gb=0},ac:function(a,b,c){a=
this.l[a];switch(b){case 0:0<this.b.rb&&0!=c&&(a.Ua?(a.O=a.Ua,a.Ua=0):a.O=c,a.T=1);break;case 1:a.Fa=c;a.Za=1;break;case 2:a.Fa=-c;a.Za=1;break;case 3:a.Va?a.Va=0:a.Ja=c>>5-a.m;break;case 4:0==this.b.rb||0==c?(a.cb=a.na^=1,a.M=1):(c&15&&(a.cb=a.na^=1,a.M=1,15==(c&15)&&(a.M=-1)),c&240&&(a.hb=a.Sa^=1,a.P=1,240==(c&240)&&(a.P=-1)));break;case 5:a.Ya=c;break;case 6:64<c?0<=(c-=80)&&(64>=c?a.pb=c:0<=(c-=80)&&64>=c&&(a.eb=c)):a.g=c;break;case 7:a.ob=a.la=c}},mc:function(a,b){0>a||3<a||(this.l[a].fb=b)}}}
function ka(){return{F:ja(),Wb:function(a){this.Sb=a;this.Ra=0|a/50;this.nb=Array(this.Ra)},j:[0,0,0,0],Zb:function(a,b){for(var c=0;4>c;c++)if(0!=this.F.l[c].gb)for(var e=0|3579545.25/this.F.l[c].Pb*65536/this.Sb,d=a,f=0;d;){41943040<=this.j[c]&&(this.j[c]-=41943040);for(var h=N(d,0|(41943040-this.j[c]-1)/e+1),d=d-h,g=0;g<h;g++)this.nb[b+f++]+=this.F.l[c].$[this.j[c]>>16]*this.F.l[c].gb>>6,this.j[c]+=e}return b+a},Yb:function(){for(var a=0;a<this.Ra;a++)this.nb[a]=0;for(var a=0,b=0|this.Ra/this.F.b.sb,
c=0;c<this.F.b.sb;c++)this.F.bc(),a=this.Zb(b,a)}}}AHXMasterAudioContext=function(a){this.ka=a||ka();this.AudioNode=this.AudioContext=null};
AHXMasterAudioContext.prototype={Play:function(a){this.ka.F.kb(a);this.ka.F.Xb(0);this.AudioContext||(this.AudioContext=new AudioContext);this.ka.Wb(this.AudioContext.sampleRate,16);this.bufferSize=4096;this.Qa=this.Pa=0;this.AudioNode&&this.AudioNode.disconnect();this.AudioNode=this.AudioContext.createScriptProcessor(this.bufferSize);var b=this;this.AudioNode.onaudioprocess=function(a){var c=b.bufferSize,d=a.outputBuffer;a=d.getChannelData(0);for(var d=d.getChannelData(1),f=0;0<c;){0==b.Pa&&(b.ka.Yb(),
b.Pa=b.ka.Ra,b.Qa=0);for(var h=N(b.Pa-b.Qa,c),c=c-h;0<h--;){var g=b.ka.nb[b.Qa++]/512;a[f]=d[f]=g;f++}b.Qa>=b.Pa&&(b.Qa=b.Pa=0)}};this.AudioNode.connect(this.AudioContext.destination)},ic:function(){},reset:function(){},gc:function(){this.AudioNode.disconnect()}};function la(){this.Play=function(){};this.ic=function(){};this.reset=function(){};this.gc=function(){};return this}dataType=function(){};dataType.prototype={data:null,j:0,substr:function(a,b){return this.data.substr(a,b)}};
function ca(a,b){for(var c="";;)if(0!=a.data[b++].charCodeAt(0))c+=a.data[b-1];else return c}function I(a,b){return parseInt(a.data[b].charCodeAt(0).toString(16),16)}var ma,K;
y.onload=function(){ma="undefined"!=typeof AudioContext?new AHXMasterAudioContext:new la;K=new AHXSong;fa(K,"5448580124664028000040291c000e000d000c000b000a0009000800070006000500040001000600030002000f0006000500040001000600030002000f0006000500120001000600030010000f001100130015001a0011001600180017001100130018001a001900160018001400110013001b001a00110016001c0017001100130000001a0006000500040001000600030002000f0006000500040001000600030002000f00110013001b001a00110016001c001700110013001e001a000600050004001f0006000300020020000600050004001d000600030002000f000e000d000c000b00210009000800070022000d000c000b000a0009000800070006000500040001000600030002000f0006000500040001000600030002000f0006000500040001000600030002000f0006000500040001000600030002000f0023002400250026002700280000002900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a01000000000000000a01000000000000000a01000000000000000a01000000000000000a01000000000000000a01000000000000000a0164a0000000000000000000000000000000000000000000005ca00000000000000000000064a000000000000000000000000000000000000000000000000000000a01000a01000a01000a01000a01000a01000a018c6000000000000c100000009460000000008c6c100000008c6000000000946c100000009460000000008c6c100000008c6c10000000946c08000000946c080000008c6c06000000946c06000000946c040000008c6c040000008c6c02000000946c02000000000000000000208000000000000000000000000000000000000000000000000c100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002020000000000000000000000000000000000000000000001820000000000000000000002020000000000000000000000000000000000000000000002c7000000000000000000000000101000101000101000101182000000000000c20000000202000000000000000000000502000000000000000000000182000000000000000000000202000000000000000000000000000000000000000000000202000000000000000000000502000000000000000000000202000000000000000000000348000000000000000000000000000000000000000000000000c200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003420000000000000000000000000000000000000000000002c20000000000000000000003420000000000000000000000000000000000000000000004070000000000000000000000001010001010001010001012c7000000000000c200000003470000000000000000000000000000000000000000000002c20000000000000000000003420000000000000000000000000000000000000000000002c20000000000000000000003420000000000000000000002c2000000000000000000000341000000ec3000000000000344c08000000000000000000345000000000000000000000344c20000000345c20000000344c20000000345c20000000341000000ec3000000000000345000000000341000000ec3000000000000000000000000341000000ec3000000000000344c08000000000000000000345000000000000000000000344c20000000345c20000000344c20000000345c20000000341000000ec3000000000000345000000000341000000ec30000000000000000000000009c6c200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008c6c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000806c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000060d000000000000000000c0060dc08000000000000000c0030d000000000000000000c0030dc08000000000000000c0000000000000000000000000000000000000000000000000000000000000030d000000000000000000c0030dc08000000000000000c0060d000000000000000000c0060dc08000000000000000c0000000000000020a00050a330000330000330000330000330806c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000946c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000706c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000886c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000646c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000786c20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000947f08000000000000000c08947000000000000000000000000c18000000000000000000a07000000000000000000000947c08000000000000000000a07c080000000000000000000000000000000000000000008c70000000000000000000009470000000000000000000008c7c18000000000000000000947c180000000000000000008c7c10000000000000000000947c100000000000000000008c7c08000000000000000000947c080000000000000000008c7c0800000000000000000050a00000000000000000000000000000000000000000000048a00000000000000000000050a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a01000a01000a01000a01000a01000a01000a01000a01000a01000a01000a01000a01000a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000cc000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080a0000000000000000000008c00000000000000000000000000000000000000000000008000000000000000000000007800000000000000000000008000000000000000000000009c0000000000000000000000940000000000000000000000000000000000000000000000041000000ec3000000000000344c08000000000000000000345000000000000000000000341000000ec3000000000000344c08000000000000000000341000000ec3000000000000345000000000342ec2000ec33c4c08000000000000000000341000000ec3000000000000344c08000000000000342ec2345000000000000000000000341000000ec3000000000000344c08000000000000000000341000000ec3000000000000345000000000342ec2000ec33c4c08000000000000000000947cc0000000000000000c08947000000000000000000000000c18000000000000000000a07000000000000000000000947c08000000000000000000a07c080000000000000000000000000000000000000000008c70000000000000000000009470000000000000000000008c7c18000000000000000000947c180000000000000000008c7c10000000000000000000947c100000000000000000008c7c08000000000000000000947c080000000000000000008c7c08000000000000000000210cd0000c40000000000c40000000000c40000000000c40000000000c40000000000c3c000000000c39000000000c36000000000c33000000000c31000000000c2c000000000c29000000000c26000000000c23000000000c21000000000c1c000000000c19000000000c16000000000c13000000000c11000000000c0c000000000c09000000000c06000000000c03000000000c01000000000c0000000000000000000000000000000000000000000000000000000000000000000000000020e0000000000000000000000000000000000000000000002ce0000000000000000000003ce00000000000000000000000000000000000000000000034e0000000000000000000000000000000002ce00000000000000000000000000000000020e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a01000000000a01000000000a01000000000a01000000000a01000000000a01000000000a01000000000a01000000000000000000000000000000000000508cc0000000000a0a000a0a508c30000000508000000000000a0a000a0a508c30000a0a508000000000000a0a000a0a000000000000508000000000588000000000000a0a000a0a588000000000588c30000a0a588000000000588c30000a0a210cd0000c40000000000c40000000000c40000000000c40000000000c40000000000c3c000000000c39000000000c36000000000c33000000000c31000000000c2c000000000c29000000000c26000000000c23000000000c21000000000c1c000000000c19000000000c16000000000c13000000000c11000000000c0c000000000c09000000000c06000000000c03000000000c01000000000c0000000000000000000000000021000000000028f00000000000000000000000000000000020e0000000000000000000000000000000000000000000002ce0000000000000000000003ce00000000000000000000000000000000000000000000034e0000000000000000000000000000000002ce00000000000000000000000000000000020e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002ce00000000000000000000034e0000000000000000000003ce000000000000000000000508cc0000000000a0a000a0a508c30000000508000000000000a0a000a0a508c30000a0a508000000000000a0a000a0a000000000000508000000000508000000000000a0a000a0a508000000000508c30000a0a508000000000508c30000a0a508000000000000a0a000a0a508c30000000508000000000000a0a000a0a508c30000a0a508000000000000a0a000a0a000000000000508000000000588000000000000a0a000a0a588000000000588c30000a0a588000000000588c30000a0a041000000ec3000000000000344c08000000000000000000345000000000000000000000341000000ec3000000000000344c08000000000000000000341000000ec3000000000000345000000000342ec2000ec33c4c08000000000000000000341000000ec3000000000000344c08000000000000342ec2345000000000000000000000341000000ec300000000000000000000000000000000000034100000000000000000000000000000000004100000000000000000000000000000000020e0000000000000000000000000000000000000000000002ce0000000000000000000003ce00000000000000000000000000000000000000000000034e0000000000000000000000000000000002ce00000000000000000000000000000000020e0000000000000000000000000000000000000000000002ce00000000000000000000034e00000000000000000000000000000000000000000000034e0000000000000000000000000000000003ce0000000000000000000000000000000008cace00000000000000000008800000000000000000000008c000000000000000000000088000000000000000000000080a0000000000000000000000000000000000000000000000000000000000000000000009c000000000000000000000080000000000000000000000078000000000000000000000080000000000000000000000088000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000080a0000000000000000000008c00000000000000000000008800000000000000000000008ca00000000000000000000088000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000080a0000000000000000000008c00000000000000000000000000000000000000000000008000000000000000000000007800000000000000000000008000000000000000000000009ca00000000000000000000094a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a01000000000000000a01000000000000000a01000000000000000a01000000000000000a010000000000000000008c6000000000000c100000009460000000008c6c100000008c6000000000946c100000009460000000008c6c100000008c6c10000000946c08000000946c080000008c6c06000000946c06000000946c040000008c6c040000008c6c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a01000000000a01000000000a01000000000a01000000000a0100000094b000000c2094bc20000c2094b000000000000c10000000a0b000000c20a0bc20000c20a0b00000000094bc08000000a8b000000000a8bc20000000a8bc30000000a0bc08000000a8b102b0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a01000a01000a01000a01000a01000a01000000000000000000000000a0b0009cb000000000000c10000000000000000000a0b0009cb000000000000c1000000000000000000000000000000094b0000000009cbc100000009cb00000000094bc100000008cb00000000094bc100000008cb00094b00078b10280b000000000000000000000000000000000000000000000000000000000000000000a01000000000a01000000000a01000000000a01000000000a01000000000000000000000000000000000000000000000000a0b0009cb000000000a0bc100000008cb0000000009cbc1000000078b00080b0000000000000000000000000000000000000008cb00000000080bc1000000080b0000000008cbc1000000094b0000000008cbc1000000080b000000000000000000000641000000000641c04000000641c03000000641c02000000041c02000000041c0100000000000000000060d000000000000c0000000060dc08000000000000000c0030d000000000000000000c0030dc08000000000000000c0000000000000000000000000000000000000000000000000000000000000030d000000000000000000c0030dc08000000000000000c0060d000000000000000000c0060dc08000000000000000c0000000000000000000000000000000000000000000000000050d000000000000000000c0050dc08000000000000000c0000000000000000000000000020d000000000000000000c0020dc08000000000000000c0050d000000000000000000c0050dc08000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000028d000000000000000000c0028dc08000000000000000c0058d000000000000000000c0058dc08000000000000000c00000000000000000000000000000000000000000000000000341000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000947f08000000000000000c08947000000000000000000000000c18000000000000000000a07000000000000000000000947c08000000000000000000a07c08000000000000000000947c04000000000000000000a07c04000000000000000000042000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000647f08000000000000000c08647000000000000000000000000c18000000000000000000707000000000000000000000647c08000000000000000000707c08000000000000000000647c04000000000000000000707c04000000000000000000083000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000344000000000000000000000000000000000000000351c01000000000c02000000000c03000000000c04000000000c05000000000c06000000000c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000947c03000000000000000000a07c03000000000000000000947c02000000000000000000a07c02000000000000000000947c01000000000000000000a07c01000000000000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000647c03000000000000000000707c03000000000000000000647c02000000000000000000707c02000000000000000000647c01000000000000000000707c01000000000000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c07000000000000000000000c06000000000000000000000c05000000000000000000000c04000000000000000000000000000c03000000000000000000000000000c02000000000000000000000000000c01000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040040140044001140000000000000000043f0400010a626d002001e6000000620000005d00008c593300080070000800700008007000080070000800700040040140043c08100300000000000000043f040001027a7822349989400040040140043c014c0000000000000000043f040001028d8934000000000040050140040001010000000000000000013f01000103027a3f000df1200a5400021f400301400240010b0000000000000000083f01000105626e002001e30000005f0000005b0000026e0000322b024001400101400000001f200004043f0c3f0202810900ff0109002032030240014001014000000000200105083f03000102808900000d89202040610140014007074000000004000000103f0e3505030d891230100c0100141000004061014001400707400000000400000010350e3505030d891230100e01001410000032330240014001014000000001200105083f031f0102108910308d8920003202024001400101400000000034040220330d000102808900000d89202040390140040e011f0000000001000000203f0a1f01020d892020800000004021014001401f290000000001000000203f011f04020d91241200050000402b014001403329000000000b000000203f013d01071089f02500000000000000000000000000000000000000000000000040610140014007074000000004000000103f0e3505040d8c123010100100141500001417000040610140014007074000000004000000103f0e3505040d8c12301010010000150000141700000e210140014047294000000001000000203f011f0e130219002a0016000000170000001a0000001d0000001a0000001c0000001e000000190000001a0000001d0000001b0000001d000000190000001a0000001d0000001c0000141b00000000000000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f010000200100010001010000000001000000203f011f01003203024001400101400000000020010b043f0c00020281010000010100207379706875732d33616d457465726e616c2e6168780033616d20457465726e616c00284b4c4620636f766572290000627920535950485553000045722e2e2e746869732077617320636f6d6d697373696f6e65640061626f757420332079656172732061676f207768656e00476c6f6d616720616e64204a756c69616e2077616e74656420746f00646f2061204b4c4620636f7665727320636f6d70696c6174696f6e2e004265696e672061206469636b686561642c20616e6420686176696e6720686164006c6f616473206f662073686974206f6e206d79206d696e640073696e6365207468656e2c2049206469642031207061747465726e00616e64206e657665722066696e69736865642074686520636f76657200756e74696c20746f6461792e2044414d4e204d4520544f2048454c4c2e00004e6f7420313030252068617070792077697468206974202d20007769736820414858206861642061206465646963617465642052415020006368616e6e656c2c20616e6420492070726f6261626c790073686f756c646120646f6e6520697420696e20486976656c79547261636b6572006275742e2e2e49206c6f76652041485820616e642077616e74656400746f2067657420646f776e207769746820697420616674657220746f6f006c6f6e67206170617274203a290044656469636174656420746f20476c6f6d616720616e64004a756c69616e2028432d4d656e29202d20736f72727920666f72006265696e6720736f20736869742c20677579732e0000687474703a2f2f7379706875732e6e65740046494c544552525900".replace(/../g,function(a){return String.fromCharCode(parseInt(a,
16))}),function(){D.fillStyle="white";D.font="48px arial";D.fillText("click me",E/2,F/2);document.addEventListener("click",na)})};function na(){ma.Play(K);E=D.width=B.width=window.innerWidth;F=D.height=B.height=window.innerHeight;oa();document.removeEventListener("click",na,!1)}var L=v.createElement("div"),O=L.style;O.background="#fff";O.position="absolute";O.height="100px";O.lineHeight=L.style.height;O.letterSpacing="-3px";O.textAlign="center";O.fontSize="60px";O.border="solid #49b249";
O.borderWidth="5px 0";O.fontFamily="Helvetica";y.appendChild(L);function P(a,b){O.display="";if(b)for(style in b)O[style]=b[style];L.innerHTML=a}
function pa(a,b,c,e,d,f,h,g){var k=((a*e-b*c)*(d-h)-(a-c)*(d*g-f*h))/((a-c)*(f-g)-(b-e)*(d-h)),n=((a*e-b*c)*(f-g)-(b-e)*(d*g-f*h))/((a-c)*(f-g)-(b-e)*(d-h));if(isNaN(k)||isNaN(n))return!1;if(a>=c){if(!(c<=k&&k<=a))return!1}else if(!(a<=k&&k<=c))return!1;if(b>=e){if(!(e<=n&&n<=b))return!1}else if(!(b<=n&&n<=e))return!1;if(d>=h){if(!(h<=k&&k<=d))return!1}else if(!(d<=k&&k<=h))return!1;if(f>=g){if(!(g<=n&&n<=f))return!1}else if(!(f<=n&&n<=g))return!1;return{x:k,y:n}}
for(var qa=350,ra=16,R=[],S=8,T=2*Math.PI/12,U=0;U<S;U++)R[R.length]=[],R[R.length-1][0]={x:1,y:F/S*U,direction:.5*Math.PI,curve:T*Math.PI*.015,step:6,visible:!0};S=8;T=2*Math.PI/12;for(U=0;U<S;U++)R[R.length]=[],R[R.length-1][0]={x:E-1,y:F/S*U,direction:.5*-Math.PI,curve:-T*Math.PI*.015,step:6,visible:!0};for(var V=[],sa=200,W=0;W<sa;W++)V[W]={x:Math.random()*E,y:Math.random()*F};
function oa(){function a(a,b,c){D.globalCompositeOperation="source-over";D.lineCap="round";D.lineWidth=2;var d=D.createLinearGradient(0,0,E,0);d.addColorStop("0","magenta");d.addColorStop("0.5","blue");d.addColorStop("1.0","red");D.strokeStyle=d;for(var e=0,g=0;g<R.length;g++){var f=R[g][R[g].length-1];if(!(0>=f.x||f.x>=E||0>=f.y||f.y>=F)&&e<ra){e++;for(var n=f.x+Math.sin(f.direction)*f.step,h=f.y+Math.cos(f.direction)*f.step,k=!1,w=0;w<R.length&&0==k;w++)for(var A=0;A<R[w].length-1;A++){var C=R[w][A];
if(C.visible){var ia=R[w][A+1],C=pa(C.x,C.y,ia.x,ia.y,f.x,f.y,n,h);if(0!=C){k=C;break}}}w=f.visible;k&&(w?(f.x=k.x,f.y=k.y):(n=k.x,h=k.y),.2>Math.random()||(w=!f.visible));R[g][R[g].length]={x:n,y:h,direction:f.direction+f.curve,curve:R[g][0].curve*Math.sin(.005*a),step:f.step,visible:w};f.visible&&.04>Math.random()&&(k=R.length,k<qa&&(R[k]=[],R[k][0]={x:n,y:h,direction:f.direction+2*f.curve,curve:-R[g][0].curve,step:f.step,visible:!0}))}f=!1;for(n=0;n<R[g].length;n++)h=R[g][n].x,k=R[g][n].y,w=Math.atan2(h-
b,k-c),A=5E3/Math.sqrt((b-h)*(b-h)+(c-k)*(c-k)),h+=Math.sin(w)*A*3,k+=Math.cos(w)*A*3,0==f&&R[g][n].visible?(a%R[g].length==g?D.strokeStyle="rgba(255,255,255,1.0)":D.strokeStyle=d,D.beginPath(),D.moveTo(h,k),f=!0):1==f&&R[g][n].visible?D.lineTo(h,k):1!=f||R[g][n].visible||(D.stroke(),f=!1);1==f&&D.stroke()}}function b(a,b,c){for(var d=a/25E3,e=a/2500,f=2*Math.PI/15,g=0;11>g;g++){D.fillStyle="rgba(240,240,"+parseInt(35*Math.sin(.5*e+g)+140,10)+",0.015)";for(var n=0;15>n;n++){var k=10*Math.sin(n*f)+
10*g;size=50+h+3*Math.sin(a/1E3)+2*Math.sin(a*(g-5.5)/1E3);D.save();D.translate(b+Math.sin(n*f+d)*k,c+Math.cos(n*f+d)*k);D.rotate(n*f+3*Math.sin(e+Math.sin(n*f)));D.beginPath();D.moveTo(.5*-size*g,.5*-size*g);D.lineTo(0,size);D.lineTo(.5*size*g,.5*-size*g);D.closePath();D.fill();D.restore()}}}function c(a,b){D.save();D.translate(a,b);D.fillStyle="rgba(255,255,255,1.0)";D.beginPath();D.arc(0,0,220,0,2*Math.PI,!1);D.translate(-170,-160);D.closePath();D.fill();ta(D);D.restore()}function e(a,b){D.globalCompositeOperation=
"xor";D.fillStyle="#32f";for(var c=30,d=0;d<c;d++){var e=E/c*d,f=.6*F-b+10*Math.sin(.01*a+d+c),g=E/c*(1+.5*(Math.sin(.001*a+d*c)+1)),h=F-f;D.fillRect(e,f,g,h)}c=24;for(d=0;d<c;d++)e=E/c*d,f=.65*F-b+20*Math.sin(.01*a+d+c),g=E/c*(1+.5*(Math.sin(.001*a+d*c)+1)),h=F-f,D.fillRect(e,f,g,h);c=18;for(d=0;d<c;d++)e=E/c*d,f=.7*F-b+30*Math.sin(.01*a+d+c),g=E/c*(1+.5*(Math.sin(.001*a+d*c)+1)),h=F-f,D.fillRect(e,f,g,h);c=12;for(d=0;d<c;d++)e=E/c*d,f=.75*F-b+40*Math.sin(.01*a+d+c),g=E/c*(1+.5*(Math.sin(.001*a+
d*c)+1)),h=F-f,D.fillRect(e,f,g,h);c=6;for(d=0;d<c;d++)e=E/c*d,f=.8*F-b+50*Math.sin(.01*a+d+c),g=E/c*(1+.5*(Math.sin(.001*a+d*c)+1)),h=F-f,D.fillRect(e,f,g,h);c=3;for(d=0;d<c;d++)e=E/c*d,f=.85*F-b+60*Math.sin(.01*a+d+c),g=E/c*(1+.5*(Math.sin(.001*a+d*c)+1)),h=F-f,D.fillRect(e,f,g,h)}var d=(new Date).getTime(),f,h;(loop=function(){requestAnimationFrame(loop);var g=(new Date).getTime()-d;f="#000";if(3<=G&&8>=G){var k=9-note;0>k&&(k=0);f="#"+k+""+k+""+k}h=0;if((2==G||28==G||30==G)&&(13<note&&16>=note||
21<note&&24>=note||39<note&&42>=note||47<note&&50>=note)||29==G&&(0<=note&&3>note||11<note&&14>note||19<note&&22>note||39<note&&42>note||47<note&&50>note))h=30;if(!(G%10)&&10>note)for(R.splice(16,R.length-16),k=0;16>k;k++)k in R&&(R[k]=R[k].splice(0,1));k=f;D.globalCompositeOperation="source-over";var n=D.createLinearGradient(0,0,0,F);n.addColorStop(0,k);n.addColorStop(1,"#115");D.fillStyle=n;D.fillRect(0,0,E,F);for(k=0;k<sa;k++)D.fillStyle="rgba("+parseInt(200+Math.sin(.05*g)*(k%20+10),10)+",255,255,"+
.5*(Math.sin(.001*g+k%5)+1)+")",D.fillRect(V[k].x,V[k].y,1,1);switch(G){case 0:case 1:case 2:k=.5*E;n=.4*F;b(g,k,n);c(k,n);break;case 3:case 4:3==G?P("KLF is gonna rock you!",{left:"0",top:"90%",marginTop:"-50px",bottom:"",width:"100%",height:"100px",color:"#000"}):4==G?P("the justified ancients of mu(min) are back"):O.display="none";k=.5*E;n=.4*F;a(g,k,n);b(g,k,n);c(k,n);break;case 5:case 6:5==G&&64>note?P("with an intro not called variform"):6==G&&64>note?P('but "'+ba+'"'):O.display="none";k=.5*
E;n=.4*F;a(g,k,n);b(g,k,n);c(k,n);e(g,.15*-F+50*Math.sin(.001*g));break;default:7==G?P("you thought we were dead"):8==G?P("we kinda are..."):9==G?P("but KLF are coming back"):10==G?P("so here is a KLFtro!"):11==G?P("greets fly out to:"):12==G?P("Accession . [BrCr] . ASD . Astroidea"):13==G?P("ate bit . TPOLM . Bomb . BSDE"):14==G?P("CPU . Calodox . Collapse . Cocoon"):15==G?P("Conspiracy . coprocessor . Darklite"):16==G?P("deMarche . DESiRE . Epoch . Fairlight"):17==G?P("Farbrausch . flo . Fulcrum . Glenz"):
18==G?P("Haujobb . Hornet . Hooy-Program . Jugz"):19==G?P("Kosmoplovci . TPOLM . Logicoma . MaWi"):20==G?P("Marshals . Mercury . MFX . Orange"):21==G?P("Quadtrip . Quite . Razor 1911 . Rebels"):22==G?P("Rift . Satori . Spontz . Still"):23==G?P("thesuper . TPOLM . TRSI . TRBL"):24==G?P("Unique . Unstable Label . TPOLM"):25==G?P("and you... "):26==G?P("and your mother... (the giraffe)"):27==G?P("Enjoy Demobit 2017!"):30==G?P("message for Antti:"):31==G?P("A Koala can sleep up to 20 hours per day!"):
32==G?P("so does the Emperor Penguin!"):37==G?P("credits"):38==G?P("code: ps - music: syphus"):39==G?P("looping..."):O.display="none",k=.5*E+Math.sin(7.5E-4*g)*E*.15,n=.3*F+Math.sin(5E-4*g)*F*.2,a(g,k,n),b(g,k,n),c(k,n),e(g,.15*-F+50*Math.sin(.001*g))}})()}
function ta(a){a.save();a.beginPath();a.moveTo(0,0);a.lineTo(375,0);a.lineTo(375,311.25);a.lineTo(0,311.25);a.closePath();a.clip();a.translate(0,0);a.translate(0,0);a.scale(1.25,1.25);a.translate(0,0);a.strokeStyle="rgba(0,0,0,0)";a.lineCap="butt";a.lineJoin="miter";a.miterLimit=4;a.save();a.fillStyle="#000000";a.strokeStyle="rgba(0, 0, 0, 0)";a.translate(0,249);a.scale(.1,-.1);a.save();a.beginPath();a.moveTo(1489,2412);a.bezierCurveTo(1470,2386,1406,2300,1345,2222);a.bezierCurveTo(1236,2082,1235,
2080,1195,2080);a.bezierCurveTo(1157,2080,790,2116,580,2141);a.lineTo(485,2152);a.lineTo(316,2106);a.bezierCurveTo(223,2081,143,2057,139,2053);a.bezierCurveTo(135,2048,127,1971,121,1880);a.bezierCurveTo(92,1427,78,1178,83,1167);a.bezierCurveTo(86,1159,163,1138,269,1115);a.bezierCurveTo(369,1093,450,1072,450,1068);a.bezierCurveTo(450,1061,374,959,124,632);a.bezierCurveTo(60,548,10,477,13,474);a.bezierCurveTo(15,471,195,427,411,374);a.bezierCurveTo(788,284,1663,70,1820,30);a.lineTo(1895,11);a.lineTo(2028,
113);a.bezierCurveTo(2211,253,2319,336,2581,540);a.bezierCurveTo(2705,636,2836,738,2872,765);a.bezierCurveTo(2909,793,2939,817,2939,820);a.bezierCurveTo(2940,826,2831,955,2635,1180);a.bezierCurveTo(2553,1275,2454,1390,2415,1435);a.bezierCurveTo(2377,1481,2323,1543,2297,1573);a.lineTo(2249,1628);a.lineTo(2257,1777);a.lineTo(2265,1925);a.lineTo(2240,1952);a.bezierCurveTo(2217,1977,2206,1980,2090,1990);a.bezierCurveTo(2021,1996,1955,2003,1943,2006);a.bezierCurveTo(1930,2008,1847,2096,1737,2223);a.bezierCurveTo(1635,
2340,1545,2441,1537,2448);a.bezierCurveTo(1525,2458,1517,2452,1489,2412);a.closePath();a.moveTo(1524,2303);a.bezierCurveTo(1533,2271,1563,2050,1559,2046);a.bezierCurveTo(1550,2038,1330,2064,1330,2073);a.bezierCurveTo(1330,2085,1502,2319,1512,2319);a.bezierCurveTo(1516,2320,1521,2312,1524,2303);a.closePath();a.moveTo(423,2024);a.bezierCurveTo(438,2021,455,2010,460,2E3);a.bezierCurveTo(474,1974,473,1917,458,1902);a.bezierCurveTo(448,1892,450,1886,464,1872);a.bezierCurveTo(481,1856,481,1856,478,1875);
a.bezierCurveTo(476,1890,481,1895,500,1896);a.bezierCurveTo(535,1896,550,1907,550,1934);a.bezierCurveTo(550,1946,562,1967,576,1979);a.lineTo(602,2002);a.lineTo(595,1928);a.bezierCurveTo(591,1888,584,1851,578,1845);a.bezierCurveTo(572,1838,569,1843,572,1860);a.bezierCurveTo(574,1877,570,1886,558,1888);a.bezierCurveTo(544,1891,540,1885,540,1862);a.bezierCurveTo(540,1846,538,1831,535,1829);a.bezierCurveTo(531,1824,198,1869,192,1874);a.bezierCurveTo(191,1876,193,1909,196,1949);a.bezierCurveTo(201,2001,
207,2020,217,2020);a.bezierCurveTo(228,2020,231,2006,229,1958);a.lineTo(226,1896);a.lineTo(291,1884);a.bezierCurveTo(326,1877,368,1871,383,1871);a.lineTo(411,1870);a.lineTo(408,1943);a.lineTo(405,2015);a.lineTo(350,2018);a.bezierCurveTo(320,2020,291,2026,285,2031);a.bezierCurveTo(275,2041,351,2037,423,2024);a.closePath();a.moveTo(544,2030);a.bezierCurveTo(558,2025,570,2014,570,2005);a.bezierCurveTo(570,1993,562,1990,535,1993);a.bezierCurveTo(493,1998,485,2004,493,2025);a.bezierCurveTo(500,2043,509,
2044,544,2030);a.closePath();a.moveTo(765,1990);a.bezierCurveTo(892,1975,892,1975,886,1932);a.bezierCurveTo(883,1911,878,1864,875,1827);a.bezierCurveTo(870,1782,864,1760,857,1763);a.bezierCurveTo(850,1765,847,1782,848,1804);a.bezierCurveTo(851,1833,846,1848,829,1866);a.bezierCurveTo(817,1879,810,1893,813,1897);a.bezierCurveTo(817,1900,820,1898,820,1892);a.bezierCurveTo(820,1885,829,1880,841,1880);a.bezierCurveTo(857,1880,861,1885,858,1907);a.bezierCurveTo(854,1942,802,1960,783,1933);a.bezierCurveTo(764,
1908,767,1872,790,1853);a.bezierCurveTo(801,1843,810,1829,810,1821);a.bezierCurveTo(810,1810,807,1811,797,1825);a.bezierCurveTo(780,1848,760,1837,760,1804);a.bezierCurveTo(760,1791,755,1780,749,1780);a.bezierCurveTo(742,1780,740,1806,745,1866);a.bezierCurveTo(752,1947,751,1952,734,1948);a.bezierCurveTo(719,1946,713,1932,708,1886);a.bezierCurveTo(697,1801,688,1803,696,1889);a.bezierCurveTo(703,1957,702,1962,684,1958);a.bezierCurveTo(668,1955,664,1942,656,1877);a.bezierCurveTo(651,1827,643,1800,635,
1800);a.bezierCurveTo(626,1800,625,1811,630,1843);a.bezierCurveTo(634,1866,641,1911,645,1943);a.bezierCurveTo(649,1976,656,2E3,663,2E3);a.bezierCurveTo(670,2E3,716,1995,765,1990);a.closePath();a.moveTo(976,1943);a.bezierCurveTo(986,1928,991,1927,1001,1938);a.bezierCurveTo(1032,1967,1033,1956,1014,1803);a.bezierCurveTo(1011,1779,1004,1760,998,1760);a.bezierCurveTo(991,1760,990,1787,995,1841);a.bezierCurveTo(1002,1917,1001,1922,984,1918);a.bezierCurveTo(969,1915,963,1900,954,1842);a.bezierCurveTo(943,
1769,936,1751,923,1764);a.bezierCurveTo(912,1775,918,1881,930,1895);a.bezierCurveTo(936,1902,938,1920,934,1934);a.bezierCurveTo(929,1955,931,1960,945,1960);a.bezierCurveTo(955,1960,969,1952,976,1943);a.closePath();a.moveTo(1115,1923);a.bezierCurveTo(1126,1909,1131,1908,1143,1919);a.bezierCurveTo(1155,1929,1175,1929,1235,1921);a.bezierCurveTo(1323,1908,1331,1905,1324,1885);a.bezierCurveTo(1320,1877,1314,1872,1310,1875);a.bezierCurveTo(1290,1887,1272,1866,1266,1822);a.bezierCurveTo(1253,1733,1248,1710,
1240,1715);a.bezierCurveTo(1236,1717,1235,1730,1237,1744);a.bezierCurveTo(1243,1773,1225,1786,1203,1769);a.bezierCurveTo(1190,1757,1188,1758,1192,1775);a.bezierCurveTo(1195,1789,1203,1794,1218,1793);a.bezierCurveTo(1242,1790,1254,1819,1248,1861);a.bezierCurveTo(1245,1882,1239,1885,1205,1885);a.lineTo(1165,1885);a.lineTo(1155,1818);a.bezierCurveTo(1140,1721,1127,1721,1135,1818);a.bezierCurveTo(1142,1896,1141,1902,1124,1898);a.bezierCurveTo(1109,1896,1103,1880,1095,1825);a.bezierCurveTo(1087,1769,1081,
1754,1066,1752);a.bezierCurveTo(1049,1748,1048,1753,1054,1811);a.bezierCurveTo(1058,1846,1066,1878,1072,1881);a.bezierCurveTo(1078,1885,1080,1895,1077,1903);a.bezierCurveTo(1074,1911,1077,1923,1083,1929);a.bezierCurveTo(1098,1944,1101,1943,1115,1923);a.closePath();a.moveTo(1464,1921);a.bezierCurveTo(1481,1915,1549,1904,1614,1896);a.bezierCurveTo(1680,1887,1736,1878,1739,1874);a.bezierCurveTo(1742,1871,1738,1865,1730,1860);a.bezierCurveTo(1720,1854,1728,1850,1756,1848);a.lineTo(1795,1845);a.lineTo(1792,
1786);a.bezierCurveTo(1790,1748,1793,1724,1801,1720);a.bezierCurveTo(1807,1716,1814,1696,1815,1676);a.lineTo(1817,1639);a.lineTo(1776,1644);a.bezierCurveTo(1701,1654,1552,1667,1480,1671);a.bezierCurveTo(1466,1671,1450,1676,1443,1682);a.bezierCurveTo(1436,1687,1421,1689,1409,1685);a.bezierCurveTo(1394,1680,1390,1681,1395,1689);a.bezierCurveTo(1400,1697,1393,1700,1373,1698);a.bezierCurveTo(1346,1695,1345,1696,1348,1740);a.bezierCurveTo(1350,1765,1355,1788,1358,1791);a.bezierCurveTo(1362,1794,1387,1790,
1413,1783);a.bezierCurveTo(1458,1769,1461,1767,1446,1751);a.bezierCurveTo(1435,1739,1420,1735,1400,1738);a.bezierCurveTo(1379,1741,1370,1738,1370,1728);a.bezierCurveTo(1370,1719,1384,1714,1415,1712);a.bezierCurveTo(1465,1710,1464,1708,1474,1838);a.bezierCurveTo(1478,1901,1469,1915,1443,1889);a.bezierCurveTo(1428,1874,1360,1886,1360,1904);a.bezierCurveTo(1360,1911,1363,1920,1367,1923);a.bezierCurveTo(1376,1933,1429,1932,1464,1921);a.closePath();a.moveTo(1438,1833);a.bezierCurveTo(1441,1812,1437,1810,
1401,1810);a.bezierCurveTo(1364,1810,1360,1812,1360,1836);a.bezierCurveTo(1360,1859,1363,1861,1398,1858);a.bezierCurveTo(1428,1856,1436,1851,1438,1833);a.closePath();a.moveTo(1311,1794);a.bezierCurveTo(1302,1756,1302,1756,1301,1787);a.bezierCurveTo(1300,1820,1311,1861,1317,1844);a.bezierCurveTo(1319,1838,1316,1816,1311,1794);a.closePath();a.moveTo(364,1823);a.bezierCurveTo(391,1820,422,1814,434,1810);a.bezierCurveTo(455,1801,455,1801,433,1801);a.bezierCurveTo(419,1800,410,1794,410,1785);a.bezierCurveTo(410,
1777,406,1770,400,1770);a.bezierCurveTo(395,1770,390,1780,390,1793);a.bezierCurveTo(389,1814,389,1815,375,1796);a.bezierCurveTo(362,1779,360,1778,360,1793);a.bezierCurveTo(360,1813,344,1816,337,1798);a.bezierCurveTo(333,1788,329,1789,321,1800);a.bezierCurveTo(314,1810,310,1811,310,1803);a.bezierCurveTo(310,1782,289,1788,263,1816);a.lineTo(238,1843);a.lineTo(277,1836);a.bezierCurveTo(298,1832,337,1826,364,1823);a.closePath();a.moveTo(250,1790);a.bezierCurveTo(250,1775,231,1768,210,1775);a.bezierCurveTo(185,
1783,184,1797,208,1802);a.bezierCurveTo(229,1807,250,1801,250,1790);a.closePath();a.moveTo(490,1802);a.bezierCurveTo(490,1797,483,1785,475,1774);a.bezierCurveTo(461,1755,461,1755,460,1776);a.bezierCurveTo(460,1787,463,1800,467,1803);a.bezierCurveTo(476,1813,490,1812,490,1802);a.closePath();a.moveTo(440,1780);a.bezierCurveTo(440,1775,436,1770,430,1770);a.bezierCurveTo(425,1770,420,1775,420,1780);a.bezierCurveTo(420,1786,425,1790,430,1790);a.bezierCurveTo(436,1790,440,1786,440,1780);a.closePath();a.moveTo(638,
1780);a.bezierCurveTo(650,1780,660,1775,660,1769);a.bezierCurveTo(660,1761,646,1759,620,1763);a.bezierCurveTo(593,1766,580,1764,580,1757);a.bezierCurveTo(580,1749,577,1749,572,1758);a.bezierCurveTo(567,1765,556,1768,547,1764);a.bezierCurveTo(538,1761,530,1762,530,1767);a.bezierCurveTo(530,1786,546,1792,580,1786);a.bezierCurveTo(599,1783,625,1780,638,1780);a.closePath();a.moveTo(460,1749);a.bezierCurveTo(545,1737,625,1724,638,1719);a.bezierCurveTo(665,1709,666,1682,650,1425);a.bezierCurveTo(635,1185,
629,1130,621,1130);a.bezierCurveTo(614,1130,615,1181,626,1415);a.lineTo(632,1536);a.lineTo(594,1596);a.bezierCurveTo(535,1689,482,1727,391,1745);a.bezierCurveTo(370,1750,360,1749,364,1742);a.bezierCurveTo(367,1737,390,1729,414,1726);a.bezierCurveTo(490,1714,586,1603,606,1502);a.bezierCurveTo(617,1448,593,1465,574,1525);a.bezierCurveTo(564,1558,541,1599,517,1626);a.bezierCurveTo(408,1749,279,1737,182,1594);a.bezierCurveTo(171,1577,170,1580,176,1610);a.bezierCurveTo(184,1655,213,1687,275,1717);a.bezierCurveTo(311,
1735,317,1740,295,1735);a.bezierCurveTo(279,1732,248,1718,228,1704);a.bezierCurveTo(181,1674,180,1674,180,1706);a.bezierCurveTo(180,1726,184,1731,196,1726);a.bezierCurveTo(223,1715,234,1732,209,1746);a.bezierCurveTo(186,1759,186,1759,223,1760);a.bezierCurveTo(243,1760,260,1765,260,1770);a.bezierCurveTo(260,1776,270,1778,283,1775);a.bezierCurveTo(295,1773,375,1761,460,1749);a.closePath();a.moveTo(737,1750);a.bezierCurveTo(743,1728,745,1728,860,1710);a.bezierCurveTo(994,1690,1040,1679,1037,1667);a.bezierCurveTo(1036,
1661,1043,1655,1052,1652);a.bezierCurveTo(1066,1649,1068,1654,1063,1684);a.bezierCurveTo(1059,1712,1061,1721,1074,1726);a.bezierCurveTo(1100,1736,1140,1714,1140,1690);a.bezierCurveTo(1140,1666,1148,1665,1172,1687);a.bezierCurveTo(1189,1702,1190,1700,1190,1629);a.bezierCurveTo(1190,1517,1169,1026,1164,1021);a.bezierCurveTo(1160,1017,1096,1029,840,1083);a.bezierCurveTo(777,1097,708,1111,688,1114);a.bezierCurveTo(642,1122,635,1149,680,1142);a.bezierCurveTo(705,1138,710,1141,710,1159);a.bezierCurveTo(710,
1176,704,1180,680,1180);a.bezierCurveTo(652,1180,650,1183,650,1214);a.bezierCurveTo(650,1233,654,1251,659,1254);a.bezierCurveTo(667,1259,968,1205,1E3,1192);a.bezierCurveTo(1008,1189,1023,1186,1032,1185);a.bezierCurveTo(1071,1180,1129,1170,1144,1164);a.bezierCurveTo(1155,1160,1160,1163,1160,1174);a.bezierCurveTo(1160,1194,1123,1209,1057,1215);a.bezierCurveTo(1029,1218,1003,1225,999,1231);a.bezierCurveTo(995,1238,987,1239,981,1236);a.bezierCurveTo(975,1232,966,1231,960,1235);a.bezierCurveTo(947,1243,
959,1270,976,1270);a.bezierCurveTo(994,1270,994,1286,975,1294);a.bezierCurveTo(960,1299,930,1266,930,1243);a.bezierCurveTo(930,1225,893,1227,765,1254);a.bezierCurveTo(698,1268,655,1281,656,1288);a.bezierCurveTo(657,1295,658,1318,659,1340);a.bezierCurveTo(660,1368,664,1380,675,1380);a.bezierCurveTo(683,1380,690,1371,690,1360);a.bezierCurveTo(690,1337,686,1338,800,1316);a.bezierCurveTo(903,1297,900,1297,900,1314);a.bezierCurveTo(900,1324,881,1332,843,1339);a.bezierCurveTo(739,1359,735,1361,732,1404);
a.lineTo(729,1443);a.lineTo(794,1436);a.bezierCurveTo(894,1426,910,1417,910,1375);a.bezierCurveTo(910,1356,911,1340,913,1340);a.bezierCurveTo(914,1339,969,1329,1035,1316);a.bezierCurveTo(1101,1303,1158,1295,1163,1297);a.bezierCurveTo(1167,1299,1170,1319,1170,1340);a.bezierCurveTo(1170,1368,1165,1380,1153,1384);a.bezierCurveTo(1136,1389,774,1455,703,1466);a.lineTo(670,1471);a.lineTo(670,1565);a.bezierCurveTo(670,1628,674,1660,681,1660);a.bezierCurveTo(687,1660,690,1651,687,1640);a.bezierCurveTo(684,
1629,686,1617,691,1614);a.bezierCurveTo(696,1611,700,1613,700,1619);a.bezierCurveTo(700,1624,703,1635,706,1643);a.bezierCurveTo(709,1651,705,1664,697,1671);a.bezierCurveTo(690,1679,681,1704,678,1728);a.bezierCurveTo(672,1769,672,1770,702,1770);a.bezierCurveTo(724,1770,733,1764,737,1750);a.closePath();a.moveTo(827,1744);a.bezierCurveTo(824,1741,815,1740,808,1743);a.bezierCurveTo(800,1746,803,1749,814,1749);a.bezierCurveTo(825,1750,831,1747,827,1744);a.closePath();a.moveTo(959,1734);a.bezierCurveTo(976,
1730,990,1723,990,1718);a.bezierCurveTo(990,1707,930,1717,916,1731);a.bezierCurveTo(904,1742,915,1742,959,1734);a.closePath();a.moveTo(1310,1660);a.bezierCurveTo(1310,1655,1299,1650,1285,1650);a.bezierCurveTo(1271,1650,1260,1655,1260,1660);a.bezierCurveTo(1260,1666,1271,1670,1285,1670);a.bezierCurveTo(1299,1670,1310,1666,1310,1660);a.closePath();a.moveTo(1360,1640);a.bezierCurveTo(1372,1632,1371,1630,1353,1630);a.bezierCurveTo(1340,1630,1330,1635,1330,1640);a.bezierCurveTo(1330,1653,1341,1653,1360,
1640);a.closePath();a.moveTo(1301,1621);a.bezierCurveTo(1331,1616,1422,1601,1504,1588);a.bezierCurveTo(1610,1572,1658,1560,1674,1547);a.bezierCurveTo(1691,1532,1705,1529,1748,1533);a.bezierCurveTo(1784,1537,1800,1535,1801,1527);a.bezierCurveTo(1805,1482,1797,1342,1789,1330);a.bezierCurveTo(1779,1312,1778,1321,1780,1426);a.bezierCurveTo(1781,1506,1778,1510,1697,1510);a.bezierCurveTo(1675,1510,1646,1518,1632,1528);a.bezierCurveTo(1593,1556,1478,1584,1431,1577);a.bezierCurveTo(1358,1568,1285,1526,1244,
1471);a.bezierCurveTo(1223,1443,1204,1422,1202,1424);a.bezierCurveTo(1200,1427,1201,1474,1205,1529);a.bezierCurveTo(1213,1642,1208,1637,1301,1621);a.closePath();a.moveTo(1760,1575);a.bezierCurveTo(1785,1545,1742,1528,1699,1551);a.bezierCurveTo(1683,1559,1681,1564,1691,1576);a.bezierCurveTo(1706,1594,1744,1594,1760,1575);a.closePath();a.moveTo(469,1556);a.bezierCurveTo(538,1520,533,1400,461,1371);a.bezierCurveTo(352,1325,261,1462,345,1546);a.bezierCurveTo(373,1574,425,1578,469,1556);a.closePath();
a.moveTo(1564,1539);a.bezierCurveTo(1638,1512,1707,1436,1749,1336);a.bezierCurveTo(1786,1248,1787,1216,1759,1129);a.bezierCurveTo(1734,1054,1703,1010,1647,969);a.bezierCurveTo(1612,943,1599,940,1535,940);a.bezierCurveTo(1449,940,1400,956,1332,1005);a.bezierCurveTo(1268,1050,1199,1156,1192,1218);a.bezierCurveTo(1188,1257,1189,1262,1206,1258);a.bezierCurveTo(1218,1256,1227,1242,1232,1217);a.bezierCurveTo(1260,1083,1363,981,1486,965);a.bezierCurveTo(1589,951,1677,1003,1720,1102);a.bezierCurveTo(1739,
1145,1742,1167,1738,1231);a.bezierCurveTo(1727,1423,1587,1556,1423,1530);a.bezierCurveTo(1346,1517,1250,1448,1250,1404);a.bezierCurveTo(1250,1391,1212,1374,1203,1384);a.bezierCurveTo(1197,1389,1249,1460,1282,1493);a.bezierCurveTo(1293,1503,1320,1523,1343,1536);a.bezierCurveTo(1398,1567,1486,1569,1564,1539);a.closePath();a.moveTo(1544,1379);a.bezierCurveTo(1557,1373,1578,1349,1590,1326);a.bezierCurveTo(1619,1272,1608,1225,1560,1193);a.bezierCurveTo(1480,1138,1390,1187,1390,1286);a.bezierCurveTo(1390,
1314,1398,1330,1424,1356);a.bezierCurveTo(1461,1393,1498,1400,1544,1379);a.closePath();a.moveTo(190,1340);a.bezierCurveTo(206,1302,290,1223,335,1204);a.bezierCurveTo(423,1168,517,1205,569,1298);a.bezierCurveTo(574,1307,582,1312,586,1308);a.bezierCurveTo(598,1295,542,1222,498,1193);a.bezierCurveTo(426,1145,306,1163,244,1232);a.bezierCurveTo(218,1259,160,1350,160,1362);a.bezierCurveTo(160,1381,179,1368,190,1340);a.closePath();a.moveTo(221,1238);a.bezierCurveTo(234,1215,213,1214,182,1236);a.bezierCurveTo(167,
1246,160,1261,160,1283);a.lineTo(161,1315);a.lineTo(186,1285);a.bezierCurveTo(200,1269,215,1247,221,1238);a.closePath();a.moveTo(562,1200);a.bezierCurveTo(545,1170,514,1152,502,1165);a.bezierCurveTo(495,1171,558,1229,572,1230);a.bezierCurveTo(576,1230,571,1216,562,1200);a.closePath();a.moveTo(1786,1018);a.bezierCurveTo(1783,962,1775,911,1770,906);a.bezierCurveTo(1764,900,1760,900,1759,905);a.bezierCurveTo(1759,911,1757,931,1755,950);a.bezierCurveTo(1751,996,1772,1120,1784,1120);a.bezierCurveTo(1789,
1120,1790,1079,1786,1018);a.closePath();a.moveTo(686,978);a.bezierCurveTo(696,971,694,930,685,930);a.bezierCurveTo(668,930,500,973,500,978);a.bezierCurveTo(500,981,507,991,515,1E3);a.bezierCurveTo(530,1016,536,1016,603,1002);a.bezierCurveTo(643,994,680,983,686,978);a.closePath();a.moveTo(829,951);a.bezierCurveTo(925,928,930,926,923,900);a.bezierCurveTo(916,876,924,875,813,901);a.bezierCurveTo(728,921,720,924,720,946);a.bezierCurveTo(720,975,726,975,829,951);a.closePath();a.moveTo(577,923);a.bezierCurveTo(589,
918,591,906,587,873);a.bezierCurveTo(585,849,581,827,578,825);a.bezierCurveTo(573,820,431,856,423,864);a.bezierCurveTo(420,867,430,886,445,906);a.bezierCurveTo(471,940,474,942,518,935);a.bezierCurveTo(542,931,569,926,577,923);a.closePath();a.moveTo(1060,899);a.bezierCurveTo(1150,878,1175,861,1152,838);a.bezierCurveTo(1145,831,1118,833,1063,845);a.bezierCurveTo(949,869,950,869,950,896);a.bezierCurveTo(950,925,947,925,1060,899);a.closePath();a.moveTo(712,893);a.lineTo(790,877);a.lineTo(790,833);a.bezierCurveTo(790,
804,785,787,775,784);a.bezierCurveTo(767,781,727,786,685,796);a.lineTo(610,814);a.lineTo(610,862);a.bezierCurveTo(610,917,606,916,712,893);a.closePath();a.moveTo(938,844);a.lineTo(1020,827);a.lineTo(1020,779);a.bezierCurveTo(1020,753,1017,729,1013,727);a.bezierCurveTo(1008,724,965,732,915,744);a.lineTo(825,765);a.lineTo(822,819);a.bezierCurveTo(819,866,821,871,837,866);a.bezierCurveTo(847,864,892,853,938,844);a.closePath();a.moveTo(1290,847);a.bezierCurveTo(1372,828,1385,822,1388,802);a.bezierCurveTo(1392,
776,1373,774,1300,791);a.bezierCurveTo(1187,816,1180,820,1180,845);a.bezierCurveTo(1180,875,1172,875,1290,847);a.closePath();a.moveTo(428,824);a.bezierCurveTo(447,818,450,811,450,769);a.bezierCurveTo(450,742,447,720,444,720);a.bezierCurveTo(429,720,344,744,337,750);a.bezierCurveTo(329,757,385,830,399,830);a.bezierCurveTo(402,830,415,827,428,824);a.closePath();a.moveTo(1248,775);a.bezierCurveTo(1267,770,1270,763,1270,720);a.bezierCurveTo(1270,672,1269,670,1243,671);a.bezierCurveTo(1227,671,1177,682,
1130,693);a.lineTo(1045,715);a.lineTo(1042,754);a.bezierCurveTo(1036,825,1028,825,1248,775);a.closePath();a.moveTo(1622,749);a.bezierCurveTo(1620,736,1617,724,1617,724);a.bezierCurveTo(1616,723,1572,732,1520,744);a.bezierCurveTo(1432,763,1425,767,1422,791);a.lineTo(1419,816);a.lineTo(1522,795);a.bezierCurveTo(1621,774,1625,772,1622,749);a.closePath();a.moveTo(580,790);a.bezierCurveTo(631,778,677,767,682,764);a.bezierCurveTo(697,755,691,680,675,674);a.bezierCurveTo(667,670,619,678,570,690);a.lineTo(480,
712);a.lineTo(480,761);a.bezierCurveTo(480,788,481,810,483,810);a.bezierCurveTo(485,810,528,801,580,790);a.closePath();a.moveTo(1758,717);a.bezierCurveTo(1761,692,1760,691,1728,697);a.bezierCurveTo(1671,708,1650,719,1650,738);a.bezierCurveTo(1650,766,1657,769,1708,756);a.bezierCurveTo(1748,746,1755,740,1758,717);a.closePath();a.moveTo(900,715);a.bezierCurveTo(906,711,902,621,896,613);a.bezierCurveTo(892,608,724,653,716,660);a.bezierCurveTo(711,665,711,689,714,713);a.lineTo(721,758);a.lineTo(807,738);
a.bezierCurveTo(854,728,896,717,900,715);a.closePath();a.moveTo(1445,732);a.lineTo(1515,715);a.lineTo(1514,668);a.bezierCurveTo(1514,642,1511,618,1508,614);a.bezierCurveTo(1504,611,1455,619,1398,632);a.bezierCurveTo(1299,654,1295,656,1292,684);a.bezierCurveTo(1290,700,1291,723,1295,737);a.bezierCurveTo(1302,765,1311,764,1445,732);a.closePath();a.moveTo(350,658);a.bezierCurveTo(350,619,347,609,336,613);a.bezierCurveTo(328,616,305,622,286,626);a.bezierCurveTo(244,633,243,638,272,676);a.bezierCurveTo(301,
714,309,719,331,713);a.bezierCurveTo(346,709,350,698,350,658);a.closePath();a.moveTo(1025,688);a.bezierCurveTo(1149,658,1140,665,1140,610);a.bezierCurveTo(1140,577,1136,560,1128,560);a.bezierCurveTo(1121,560,1073,570,1023,582);a.lineTo(930,604);a.lineTo(930,657);a.bezierCurveTo(930,717,920,714,1025,688);a.closePath();a.moveTo(1698,671);a.bezierCurveTo(1710,664,1713,650,1711,613);a.bezierCurveTo(1710,587,1707,564,1706,563);a.bezierCurveTo(1704,561,1632,576,1578,591);a.bezierCurveTo(1541,601,1540,602,
1540,649);a.bezierCurveTo(1540,675,1542,699,1545,702);a.bezierCurveTo(1552,709,1676,683,1698,671);a.closePath();a.moveTo(449,686);a.bezierCurveTo(480,678,517,669,533,666);a.bezierCurveTo(557,660,560,655,560,615);a.bezierCurveTo(560,591,556,569,552,566);a.bezierCurveTo(548,564,507,571,462,582);a.lineTo(380,602);a.lineTo(380,651);a.bezierCurveTo(380,678,383,700,386,700);a.bezierCurveTo(389,700,418,694,449,686);a.closePath();a.moveTo(1763,653);a.bezierCurveTo(1766,648,1771,624,1774,598);a.bezierCurveTo(1781,
554,1780,550,1761,550);a.bezierCurveTo(1742,550,1740,556,1740,605);a.bezierCurveTo(1740,653,1750,675,1763,653);a.closePath();a.moveTo(685,629);a.lineTo(770,608);a.lineTo(770,565);a.bezierCurveTo(770,513,767,510,727,520);a.bezierCurveTo(709,525,669,534,638,540);a.lineTo(580,551);a.lineTo(580,601);a.bezierCurveTo(580,628,585,650,590,650);a.bezierCurveTo(596,650,639,640,685,629);a.closePath();a.moveTo(1285,626);a.lineTo(1375,603);a.lineTo(1372,554);a.bezierCurveTo(1370,527,1367,504,1366,503);a.bezierCurveTo(1365,
502,1331,509,1290,519);a.bezierCurveTo(1249,530,1203,541,1188,544);a.bezierCurveTo(1159,551,1152,576,1166,628);a.bezierCurveTo(1174,655,1174,655,1285,626);a.closePath();a.moveTo(345,582);a.lineTo(415,564);a.lineTo(418,517);a.bezierCurveTo(422,463,434,465,305,499);a.lineTo(245,515);a.lineTo(242,558);a.bezierCurveTo(238,608,241,608,345,582);a.closePath();a.moveTo(918,574);a.lineTo(990,558);a.lineTo(990,509);a.bezierCurveTo(990,482,985,460,980,460);a.bezierCurveTo(974,460,931,470,885,481);a.lineTo(800,
502);a.lineTo(800,552);a.bezierCurveTo(800,599,801,602,823,596);a.bezierCurveTo(835,593,878,583,918,574);a.closePath();a.moveTo(1598,501);a.lineTo(1601,449);a.lineTo(1563,456);a.bezierCurveTo(1542,460,1498,470,1465,479);a.bezierCurveTo(1406,495,1405,496,1402,534);a.bezierCurveTo(1396,599,1398,600,1502,575);a.lineTo(1595,553);a.lineTo(1598,501);a.closePath();a.moveTo(216,535);a.bezierCurveTo(213,527,203,524,191,527);a.bezierCurveTo(165,534,165,538,193,568);a.lineTo(215,592);a.lineTo(218,570);a.bezierCurveTo(220,
558,219,542,216,535);a.closePath();a.moveTo(551,534);a.lineTo(620,518);a.lineTo(620,476);a.bezierCurveTo(620,452,618,431,614,428);a.bezierCurveTo(608,421,458,458,447,469);a.bezierCurveTo(434,482,450,550,467,550);a.bezierCurveTo(475,550,512,543,551,534);a.closePath();a.moveTo(1153,520);a.lineTo(1250,498);a.lineTo(1250,449);a.bezierCurveTo(1250,418,1246,400,1238,400);a.bezierCurveTo(1232,400,1178,412,1118,426);a.lineTo(1010,452);a.lineTo(1010,485);a.bezierCurveTo(1010,531,1019,551,1039,546);a.bezierCurveTo(1048,
544,1099,532,1153,520);a.closePath();a.moveTo(1751,520);a.bezierCurveTo(1789,510,1800,487,1800,424);a.bezierCurveTo(1800,397,1807,397,1685,429);a.bezierCurveTo(1628,444,1625,447,1622,479);a.bezierCurveTo(1615,546,1633,551,1751,520);a.closePath();a.moveTo(860,414);a.bezierCurveTo(860,385,856,370,848,370);a.bezierCurveTo(841,370,793,379,743,391);a.lineTo(650,412);a.lineTo(650,455);a.bezierCurveTo(650,478,652,499,655,502);a.bezierCurveTo(658,505,706,496,760,482);a.lineTo(860,458);a.lineTo(860,414);a.closePath();
a.moveTo(1410,460);a.lineTo(1475,444);a.lineTo(1478,392);a.bezierCurveTo(1480,363,1478,340,1474,340);a.bezierCurveTo(1471,340,1440,347,1406,356);a.bezierCurveTo(1262,392,1270,389,1270,418);a.bezierCurveTo(1270,433,1273,455,1276,467);a.bezierCurveTo(1283,492,1286,491,1410,460);a.closePath();a.moveTo(964,434);a.bezierCurveTo(1115,396,1100,405,1100,354);a.lineTo(1100,308);a.lineTo(1063,315);a.bezierCurveTo(1042,318,994,329,955,339);a.lineTo(885,356);a.lineTo(882,403);a.bezierCurveTo(878,457,877,456,
964,434);a.closePath();a.moveTo(1623,409);a.lineTo(1710,388);a.lineTo(1710,339);a.bezierCurveTo(1710,284,1708,283,1630,301);a.bezierCurveTo(1504,329,1510,325,1510,380);a.bezierCurveTo(1510,413,1514,430,1523,430);a.bezierCurveTo(1529,430,1574,420,1623,409);a.closePath();a.moveTo(1210,374);a.bezierCurveTo(1359,340,1350,345,1350,295);a.bezierCurveTo(1350,265,1346,250,1338,250);a.bezierCurveTo(1331,251,1282,261,1230,274);a.lineTo(1135,297);a.lineTo(1132,344);a.bezierCurveTo(1130,369,1133,390,1137,390);
a.bezierCurveTo(1141,390,1174,383,1210,374);a.closePath();a.moveTo(1778,369);a.bezierCurveTo(1809,358,1820,337,1820,287);a.bezierCurveTo(1820,265,1816,260,1803,263);a.bezierCurveTo(1793,266,1773,271,1758,274);a.bezierCurveTo(1733,280,1730,285,1730,324);a.bezierCurveTo(1730,359,1736,380,1745,380);a.bezierCurveTo(1746,380,1761,375,1778,369);a.closePath();a.moveTo(1518,299);a.lineTo(1610,278);a.lineTo(1610,230);a.lineTo(1610,182);a.lineTo(1493,212);a.bezierCurveTo(1428,228,1374,243,1372,244);a.bezierCurveTo(1371,
246,1372,266,1376,289);a.bezierCurveTo(1382,326,1386,331,1404,326);a.bezierCurveTo(1416,323,1467,311,1518,299);a.closePath();a.moveTo(1745,244);a.bezierCurveTo(1784,235,1821,220,1828,212);a.bezierCurveTo(1841,195,1845,130,1833,130);a.bezierCurveTo(1828,131,1785,141,1735,153);a.lineTo(1645,175);a.lineTo(1642,223);a.bezierCurveTo(1639,266,1641,271,1657,266);a.bezierCurveTo(1667,263,1707,253,1745,244);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1513,1883);a.bezierCurveTo(1522,
1881,1538,1881,1548,1883);a.bezierCurveTo(1557,1886,1549,1888,1530,1888);a.bezierCurveTo(1511,1888,1503,1886,1513,1883);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1663,1863);a.bezierCurveTo(1672,1861,1686,1861,1693,1863);a.bezierCurveTo(1699,1866,1692,1868,1675,1868);a.bezierCurveTo(1659,1868,1653,1866,1663,1863);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1518,1788);a.bezierCurveTo(1516,1748,1516,1713,1517,1711);a.bezierCurveTo(1520,
1707,1734,1671,1738,1675);a.bezierCurveTo(1739,1676,1743,1713,1747,1756);a.lineTo(1753,1835);a.lineTo(1659,1848);a.bezierCurveTo(1512,1867,1522,1872,1518,1788);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(777,1654);a.bezierCurveTo(768,1644,781,1620,796,1620);a.bezierCurveTo(804,1620,810,1624,810,1629);a.bezierCurveTo(810,1641,784,1661,777,1654);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(862,1621);a.bezierCurveTo(876,1598,895,1598,
895,1621);a.bezierCurveTo(895,1629,885,1636,872,1638);a.bezierCurveTo(851,1641,850,1640,862,1621);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(952,1605);a.bezierCurveTo(964,1578,1E3,1570,1E3,1595);a.bezierCurveTo(1E3,1609,971,1630,951,1630);a.bezierCurveTo(944,1630,944,1622,952,1605);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1040,1621);a.bezierCurveTo(1040,1615,1045,1608,1050,1605);a.bezierCurveTo(1056,1602,1060,1590,1060,1579);
a.bezierCurveTo(1060,1567,1065,1560,1073,1562);a.bezierCurveTo(1093,1569,1094,1603,1074,1617);a.bezierCurveTo(1053,1632,1040,1634,1040,1621);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1124,1594);a.bezierCurveTo(1127,1585,1130,1569,1130,1557);a.bezierCurveTo(1130,1537,1130,1537,1144,1555);a.bezierCurveTo(1154,1569,1155,1580,1149,1592);a.bezierCurveTo(1137,1614,1116,1616,1124,1594);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(680,1539);
a.bezierCurveTo(680,1522,684,1511,690,1515);a.bezierCurveTo(696,1518,700,1532,700,1546);a.bezierCurveTo(700,1559,696,1570,690,1570);a.bezierCurveTo(685,1570,680,1556,680,1539);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(732,1530);a.bezierCurveTo(733,1514,737,1503,742,1506);a.bezierCurveTo(753,1513,752,1560,741,1560);a.bezierCurveTo(736,1560,732,1547,732,1530);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(784,1523);a.bezierCurveTo(788,
1489,804,1490,808,1525);a.bezierCurveTo(810,1542,807,1550,796,1550);a.bezierCurveTo(786,1550,782,1542,784,1523);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(850,1530);a.bezierCurveTo(850,1525,860,1510,872,1498);a.bezierCurveTo(892,1478,894,1478,906,1495);a.bezierCurveTo(916,1509,917,1517,909,1527);a.bezierCurveTo(896,1542,850,1545,850,1530);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(942,1500);a.bezierCurveTo(949,1489,963,1480,972,
1480);a.bezierCurveTo(983,1480,990,1488,990,1500);a.bezierCurveTo(990,1516,983,1520,960,1520);a.bezierCurveTo(932,1520,931,1518,942,1500);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1020,1504);a.bezierCurveTo(1020,1495,1048,1470,1059,1470);a.bezierCurveTo(1076,1470,1083,1492,1069,1501);a.bezierCurveTo(1053,1511,1020,1513,1020,1504);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1126,1484);a.bezierCurveTo(1117,1460,1119,1430,1130,1430);
a.bezierCurveTo(1136,1430,1140,1439,1140,1449);a.bezierCurveTo(1140,1460,1143,1475,1146,1484);a.bezierCurveTo(1149,1493,1148,1500,1142,1500);a.bezierCurveTo(1137,1500,1129,1493,1126,1484);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(756,1402);a.bezierCurveTo(747,1387,770,1373,825,1362);a.bezierCurveTo(875,1351,890,1353,890,1370);a.bezierCurveTo(890,1393,768,1422,756,1402);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(713,1284);a.bezierCurveTo(717,
1280,741,1274,767,1269);a.bezierCurveTo(794,1265,830,1258,848,1254);a.bezierCurveTo(865,1251,880,1252,880,1256);a.bezierCurveTo(880,1261,851,1271,815,1278);a.bezierCurveTo(744,1291,703,1294,713,1284);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(975,1160);a.bezierCurveTo(978,1155,990,1150,1001,1150);a.bezierCurveTo(1012,1150,1018,1155,1015,1160);a.bezierCurveTo(1012,1166,1E3,1170,989,1170);a.bezierCurveTo(978,1170,972,1166,975,1160);a.closePath();a.fill();a.stroke();
a.restore();a.save();a.beginPath();a.moveTo(750,1145);a.bezierCurveTo(750,1127,798,1114,812,1128);a.bezierCurveTo(828,1144,812,1160,779,1160);a.bezierCurveTo(760,1160,750,1155,750,1145);a.closePath();a.fill();a.stroke();a.restore();a.save();a.beginPath();a.moveTo(1086,1091);a.bezierCurveTo(1076,1075,1091,1050,1110,1050);a.bezierCurveTo(1129,1050,1140,1067,1133,1088);a.bezierCurveTo(1128,1102,1094,1104,1086,1091);a.closePath();a.fill();a.stroke();a.restore();a.restore();a.restore()}var X=document.createElement("canvas");
X.width=16;X.height=16;var Y=X.getContext("2d");Y.fillStyle="#000";Y.fillRect(0,0,16,16);Y.fillStyle="rgba(255,255,255,1.0)";Y.beginPath();Y.arc(8,8,8,0,2*Math.PI,!1);Y.closePath();Y.fill();Y.translate(2,2);Y.scale(.038,.038);ta(Y);var Z=document.createElement("link");Z.type="image/x-icon";Z.rel="shortcut icon";Z.href=X.toDataURL("image/x-icon");document.getElementsByTagName("head")[0].appendChild(Z);