-
Notifications
You must be signed in to change notification settings - Fork 1
/
main.js
1 lines (1 loc) · 29.4 KB
/
main.js
1
(()=>{var n={10:()=>{const n=document.getElementById("canvas"),e=n.getContext("2d"),t=document.getElementById("score"),o=document.getElementById("high"),l=document.getElementById("fault_div"),a=(document.getElementById("elapsed_div"),document.getElementById("squashed_div")),i=(document.getElementById("start"),document.getElementById("start-section-wrapper")),r=document.getElementById("info"),s=(document.getElementById("keypad"),document.getElementById("themes")),c=(document.getElementById("showlog"),document.getElementById("game-canvas")),d=document.getElementById("logpanel"),p=document.getElementById("display_log"),g=(document.getElementById("about"),document.getElementById("aboutpanel")),h=document.getElementById("settingspanel"),m=document.getElementById("soundtoggle");document.getElementById("toggleSwitchCircle");let u=null===localStorage.getItem("sound")||JSON.parse(localStorage.getItem("sound"));function f(n){n?m.classList.add("on"):m.classList.remove("on")}f(u),m.onclick=function(){u=!u,f(u),localStorage.setItem("sound",u)};let y=new Howl({src:["./sounds/pops.wav"],volume:.2}),v=new Howl({src:["./sounds/dun-dun-dun.mp3"]}),x=new Howl({src:["./sounds/disable.mp3"],volume:.2}),b=new Howl({src:["./sounds/pfff.mp3"],volume:.2}),E=new Howl({src:["./sounds/fanfare.mp3"],volume:.2}),C=new Howl({src:["./sounds/switch-on.mp3"],volume:.2}),z=localStorage.getItem("high"),w=localStorage.getItem("ru"),k=localStorage.getItem("theme"),H=JSON.parse(localStorage.getItem("log")||"[]");z&&(o.innerText="Best Score: "+z),r.style.display="none",w?bn():xn();const M=window.devicePixelRatio;let L,V,S,F,I,B,A,D,T,N,P,O,R,U,j,q,_,G,J,$=[];const X={basic:{canvasBackground:"#eeeeee",color0:"#222222",color1:"#222222",explosionColor:["black","gray"]},grass:{canvasBackground:"green",color0:"lightyellow",color1:"lightyellow",explosionColor:["lightyellow","lightgreen","chartreuse","greenyellow"]},homebrew:{canvasBackground:"#222",color0:"#39ff14",color1:"#39ff14",explosionColor:["lightyellow","lightgreen","chartreuse","greenyellow"]},manpage:{canvasBackground:"#FFFAA0",color0:"#222",color1:"#222",explosionColor:["red","yellow","orange","white"]},ocean:{canvasBackground:"#113366",color0:"#eeeeee",color1:"#eeeeee",explosionColor:["aquamarine","dodgerblue","#eeeeee","skyblue"]},redsands:{canvasBackground:"#b35656",color0:"#dee0b0",color1:"#dee0b0",explosionColor:["red","yellow","orange","#dee0b0"]},circles:{canvasBackground:"#444",background0:"#000",background1:"white",color0:"white",color1:"#000",explosionColor:["#ffaa00","yellow","gold"]}};function Q(){L=[],V=!1,S=0,F=24,I=.4,B=2*F,A=B,$=[],D=null,T=0,N=[],P=[],R=0,U=0,q=X[j].explosionColor,_=X[j].color0,G=X[j].color1,n.style.backgroundColor=X[j].canvasBackground,J=0,t.classList.remove("best")}j=k||"circles",s.value=j,Q();let W=[{min:1,max:16,speed:.4},{min:1,max:32,speed:.5},{min:1,max:64,speed:.6},{min:1,max:128,speed:.7},{min:1,max:255,speed:.8}];const K=n=>n.toString(2).padStart(8,"0").split("");class Y{constructor(n,e,t,o,l){this.id=S++,this.x=n,this.y=e,this.decimal=t,this.bits=[],this.radius=l,this.binary=o,this.makeBits(o)}makeBits=function(n){for(const e of n){let n=new Z(this.x,this.y,e,this.radius);this.x=this.x+2*this.radius+1,this.bits.push(n)}};render=function(n){for(const e of this.bits)e.y=this.y,e.render(n)};move=function(n){this.y+=n}}class Z{constructor(n,e,t,o){this.x=n,this.y=e,this.value=t,this.radius=o}render=function(n){"circles"===j&&(n.beginPath(),n.arc(this.x,this.y,this.radius,0,2*Math.PI,!1),n.fillStyle="1"===this.value?X[j].background1:X[j].background0,n.fill(),n.lineWidth=1,n.strokeStyle="1"===this.value?G:_,n.stroke(),n.closePath()),n.fillStyle="1"===this.value?G:_,n.font="24px Helvetica",n.textAlign="center",n.textBaseline="middle",n.fillText(this.value,this.x,this.y)}}const nn=()=>{if(e){e.clearRect(0,0,e.canvas.width,e.canvas.height),R=parseInt((new Date-O)/1e3);let t=(n=>{let e=0;return e=n<=150?0:n<=250?1:n<=500?2:n<=1e3?3:4,e})(T),o=W[t];if((e=>{if(B+=e.speed,B<A)return;B=0;let t=(o=e.min,l=e.max,Math.floor(Math.random()*(l-o+1)+o));var o,l;let a=n.width/(2*M)-7*F-3,i=-F,r=K(t),s=new Y(a,i,t,r,F);L.push(s)})(o),an(o.speed),D){let n=rn(D),e=0;if(n.length>0){pn(n),e=D*n.length;for(const e of n)P.push({d:e.decimal,b:e.binary.join("")})}else e=-5,U++,r.innerText="FOUL!",u&&x.play();T+=e,D=null}mn();let l=window.requestAnimationFrame(nn),a=L[0];a&&a?.y+a?.radius>e.canvas.height/window.devicePixelRatio&&(window.cancelAnimationFrame(l),function(){V=!1,vn(),$=[],i.style.display="block",r.style.display="none",z||(z=0),T>parseInt(z)&&(z=T,localStorage.setItem("high",z.toString()),JSON.parse(localStorage.getItem("log")||"[]").length>0&&u&&E.play()),H.push({d:new Date,t:R,f:U,p:T,s:P.length}),localStorage.setItem("log",JSON.stringify(H));for(const n of L)for(const e of n?.bits)N.push(new hn(e.x,e.y,20))}()),en()}};function en(){t.innerText=T.toString(),a.innerHTML=P.length,l.innerText=U.toString(),z&&(o.innerText="Best Score: "+z),T>(parseInt(z)||0)&&t.classList.add("best")}const tn=n=>{if(e){let t=n;e.clearRect(0,0,e.canvas.width,e.canvas.height),on(t,"white")}};function on(n,t){e.fillStyle=t,e.font="40px monospace",e.textAlign="center",e.textBaseline="middle",e.fillText(n,e.canvas.width/window.devicePixelRatio/2-n.length/2,e.canvas.height/window.devicePixelRatio/2)}const ln=()=>{e.clearRect(0,0,e.canvas.width,e.canvas.height),on("Squash Byte","rgba(255, 255, 255, "+J+")"),J+=.05,mn();let n=window.requestAnimationFrame(ln);N.length<=0&&(window.cancelAnimationFrame(n),yn(-1))},an=n=>{for(const t of L)t.move(n),t.render(e)},rn=n=>{let e=[];for(const[t,o]of L.entries())o.decimal===n&&o.y+o.radius>0&&(e.push(o),u&&y.play(),sn(o),dn(t));return e},sn=n=>{let e=n?.bits;if(e)for(const n of e)cn(n.x,n.y,n.radius),N.push(new hn(n.x,n.y,10))};function cn(n,t,o){for(var l=0;l<Math.round(Math.PI*o);l++){var a=l/Math.round(Math.PI*o)*360;e.clearRect(n,t,Math.sin(a*(Math.PI/180))*o,Math.cos(a*(Math.PI/180))*o)}}const dn=n=>{for(let t=n;t>=0;t--){let n=L[t];n.y=n.y-2*n.radius,n.render(e)}},pn=n=>{L=L.filter((e=>!n.find((({id:n})=>e.id===n))))};(n=>{const e=n.canvas;e&&(e.width=Math.floor(400*M),e.height=Math.floor(400*M),n.scale(M,M))})(e);class gn{constructor(n,e){this.x=n,this.y=e,this.xv=this.rand(1,5,!1),this.yv=this.rand(1,5,!1),this.size=this.rand(1,4,!0),this.r=this.rand(113,222),this.g="00",this.b=this.rand(105,255)}rand(n,e,t){let o;return!1===t?(o=Math.floor(Math.random()*e)-n,o*=1===Math.floor(2*Math.random())?1:-1):o=Math.floor(Math.random()*e)+n,o}}class hn{constructor(n,e,t){this.particles=[],this.x=n,this.y=e;for(let o=0;o<t;o++)this.particles.push(new gn(n,e))}}function mn(){if(0!==N.length)for(let n=0;n<N.length;n++){const t=N[n],o=t.particles;if(0===o.length)return void N.splice(n,1);const l=o.slice();for(let n=0;n<o.length;n++){const t=o[n];t.size<=0?l.splice(n,1):(e.beginPath(),e.arc(t.x,t.y,t.size,2*Math.PI,0,!1),e.closePath(),e.fillStyle=q[Math.floor(Math.random()*q.length)],e.fill(),t.x+=t.xv,t.y+=t.yv,t.size-=.1)}t.particles=l}}const un=n=>{D=parseInt(n)};function fn(n){return new Promise((e=>setTimeout(e,n)))}function yn(n){Q(),en(),async function(n){for(let e=n;e>=-1;e--){let n=e<=0?"Squash Byte":e.toString();tn(n),0===e&&u&&v.play(),await fn(1e3)}}(n).then((()=>{V=!0,O=new Date,nn()}))}function vn(){Array.from(document.querySelectorAll(".key-pad-button")).forEach((n=>{n.classList.remove("clicked")})),r.innerText=""}function xn(){c.style.display="none",g.style.display="block"}function bn(){c.style.display="block",g.style.display="none",localStorage.setItem("ru",!0)}window.addEventListener("keydown",(n=>{const e=/^[0-9]$/i.test(n.key);u&&"Enter"!=n.key&&C.play(),V&&(e&&$.length<3&&$.push(n.key),"Enter"===n.key&&($.length>0&&un($.join("")),$=[]),"Delete"!==n.key&&"Backspace"!==n.key||$.pop(),r.innerText=$.join(""))}),!0),document.addEventListener("input",(function(t){"themes"===t.target.id&&(j=t.target.value,(t=>{q=X[t].explosionColor,_=X[t].color0,G=X[t].color1,n.style.backgroundColor=X[t].canvasBackground,e.clearRect(0,0,e.canvas.width,e.canvas.height);let o=n.width/(2*M)-7*F-3,l=2*F,a=K(85);new Y(o,l,85,a,F).render(e),localStorage.setItem("theme",t)})(j))}),!1),document.addEventListener("click",(function(n){if(V&&n.target.classList.contains("key-pad-button")||"key-pad-button-submit"===n.target.className){let e=n.target.value;u&&"submit"!=e&&C.play(),/^[0-9]$/i.test(e)&&$.length<3&&$.push(e),"submit"===e&&($.length>0&&un($.join("")),$=[]),"clear"===e&&$.pop(),r.innerText=$.join("")}V||"start"!==n.target.id||(vn(),i.style.display="none",r.style.display="block",N.length>0?(u&&b.play(),ln()):yn(3)),V||"showlog"!==n.target.id||function(){c.style.display="none",d.style.display="block",p.replaceChildren();let n=JSON.parse(localStorage.getItem("log")||"[]");if(n.length>0){let e=document.createElement("table"),t=document.createElement("tr"),o=document.createElement("th");o.innerText="#",o.className="left-align",t.appendChild(o);let l=document.createElement("th");l.innerText="Date",l.className="left-align",t.appendChild(l);let a=document.createElement("th");a.className="right-align",a.innerText="Duration",t.appendChild(a);let i=document.createElement("th");i.className="right-align",i.innerText="Squashes",t.appendChild(i);let r=document.createElement("th");r.className="right-align",r.innerText="Fouls",t.appendChild(r);let s=document.createElement("th");s.className="right-align",s.innerText="Score",t.appendChild(s),e.appendChild(t);let c=1;for(const t of n){let n=document.createElement("tr");t.p===(parseInt(z)||0)&&(n.className="high-score-row");let o=document.createElement("td");o.innerText=c.toString(),c++,n.appendChild(o);let l=document.createElement("td");const a=new Date(t.d);let i=a.toLocaleDateString("en",{year:"2-digit"}),r=a.getMonth()+"/"+a.getDate()+"/"+i+" "+("0"+a.getHours()).slice(-2)+":"+("0"+a.getMinutes()).slice(-2);l.innerText=r,n.appendChild(l);let s=document.createElement("td");s.className="right-align",s.innerText=t.t,n.appendChild(s);let d=document.createElement("td");d.className="right-align",d.innerText=t?.s,n.appendChild(d);let p=document.createElement("td");p.className="right-align",p.innerText=t.f,n.appendChild(p);let g=document.createElement("td");g.className="right-align",g.innerText=t.p,n.appendChild(g),e.appendChild(n)}p.appendChild(e)}else{let n=document.createElement("div");n.innerHTML="empty",p.appendChild(n)}}(),V||"about"!==n.target.id||xn(),"closeabout"===n.target.id&&bn(),V||"settings"!==n.target.id||(c.style.display="none",h.style.display="block"),"closesettings"===n.target.id&&(c.style.display="block",h.style.display="none"),"back"===n.target.id&&(c.style.display="block",d.style.display="none")}),!1)},314:(n,e,t)=>{"use strict";var o=t(81),l=t.n(o),a=t(645),i=t.n(a),r=t(667),s=t.n(r),c=new URL(t(271),t.b),d=new URL(t(966),t.b),p=new URL(t(12),t.b),g=i()(l()),h=s()(c),m=s()(d),u=s()(p);g.push([n.id,'body {\n font-family: "Courier New", Courier, monospace;\n background-color: #094d1c;\n background-image: url('+h+");\n}\n\nh2 {\n text-align: center;\n margin-bottom: 0;\n margin-top: 10px;\n}\n\n* {\n touch-action: manipulation;\n}\n\n.container {\n max-width: 500px;\n margin: auto;\n}\n\nmain {\n border: 1px solid #222;\n border-radius: 4px;\n padding: 10px;\n background-color: #ffaa00;\n background-image: url("+m+");\n background-attachment: fixed;\n background-size: cover;\n color: #222;\n}\n\n.canvas {\n width: 100%;\n}\n\n.start-section {\n margin-top: 8px;\n display: grid;\n gap: 4px;\n grid-template-columns: repeat(8, 1fr);\n}\n.start-section-item {\n font-size: 22px;\n border-radius: 4px;\n text-transform: uppercase;\n}\n\n#start {\n background-color: darkred;\n color: white;\n width: 100%;\n grid-column: span 5;\n}\n\n#settings,\n#showlog,\n#about {\n background-color: transparent;\n color: #222;\n}\n\n.score-card {\n display: grid;\n grid-template-columns: 1.3fr 1fr 1fr;\n text-transform: lowercase;\n background-color: #222;\n color: white;\n padding: 4px;\n border-radius: 4px;\n font-size: 14px;\n align-items: center;\n text-transform: capitalize;\n}\n\n.score-card-item {\n display: flex;\n gap: 1px;\n align-items: center;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.input-button {\n gap: 4px;\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n}\n\n.key-pad {\n width: 100%;\n margin: auto;\n margin-top: 8px;\n}\n\n.key-pad-button {\n height: 45px;\n line-height: 45px;\n border-radius: 4px;\n background-color: #222;\n color: white;\n font-size: 32px;\n}\n\n.key-pad-button.hex {\n background-color: lightseagreen;\n color: #222;\n}\n\n#info {\n color: #222;\n font-weight: 600;\n text-align: center;\n margin-top: 8px;\n font-size: 22px;\n line-height: 28px;\n height: 28px;\n border-radius: 4px;\n border: 1px solid #222;\n}\n\n.key-pad-button.submit {\n background-color: darkgreen;\n}\n\n.hidden {\n display: none;\n}\n\nbutton {\n border: none;\n box-shadow: none;\n}\n\n.clicked {\n background-color: #666;\n}\n\n.log-header,\n.help-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px double #222;\n margin-bottom: 10px;\n padding-bottom: 4px;\n}\n\n#back,\n#closeabout,\n#closesettings {\n background-color: darkred;\n color: white;\n height: 25px;\n line-height: 25px;\n font-size: 20px;\n border-radius: 4px;\n}\n#logpanel {\n min-height: 500px;\n font-size: 12px;\n font-family: Arial, Helvetica, sans-serif;\n color: black;\n}\n\n#aboutpanel {\n font-size: 18px;\n font-family: Arial, Helvetica, sans-serif;\n color: black;\n}\n\ntable {\n width: 100%;\n border-collapse: collapse;\n}\n\ntable,\ntr,\nth,\ntd {\n border: 1px solid #222;\n padding: 4px;\n}\n\n.left-align {\n text-align: left;\n}\n.right-align {\n text-align: right;\n}\n\n.high-score-row {\n color: firebrick;\n}\n\n.best {\n color: gold;\n}\n\n.binarytable {\n border: 0;\n background-color: #ffffff;\n background-image: url("+u+");\n background-attachment: fixed;\n background-size: cover;\n}\n\n.binarytable tr,\n.binarytable th,\n.binarytable td {\n border: 0;\n}\n\n.ball {\n border-radius: 50%;\n width: 25px;\n height: 25px;\n background-color: #222;\n border: 1px solid white;\n color: white;\n margin: auto;\n font-size: 14px;\n line-height: 25px;\n}\n\n.ball.one {\n background-color: white;\n border: 1px solid #222;\n color: #222;\n}\n\n.binarytable td {\n width: 50px;\n text-align: center;\n}\n\n.binarytable td.highlight {\n background-color: silver;\n}\n\n.toggleButton {\n width: 54px;\n min-width: 54px;\n display: block;\n border: 1px black solid;\n border-radius: 30px;\n transition: 0.5s;\n background-color: gray;\n}\n.toggleSwitchCircle {\n display: block;\n width: 25px;\n height: 25px;\n border: 1px black solid;\n background-color: white;\n border-radius: 50%;\n transition: 0.5s;\n transform: translateX(0%);\n}\n\n.toggleButton.on {\n background-color: green;\n}\n\n.toggleButton.on > .toggleSwitchCircle {\n transform: translateX(100%);\n}\n\n.setting {\n display: flex;\n gap: 5px;\n align-items: center;\n justify-content: space-between;\n height: 24px;\n margin-bottom: 20px;\n line-height: 24px;\n}\n\n.settinglabel {\n font-weight: 600;\n}\n\na {\n color: white;\n}\n",""])},645:n=>{"use strict";n.exports=function(n){var e=[];return e.toString=function(){return this.map((function(e){var t="",o=void 0!==e[5];return e[4]&&(t+="@supports (".concat(e[4],") {")),e[2]&&(t+="@media ".concat(e[2]," {")),o&&(t+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),t+=n(e),o&&(t+="}"),e[2]&&(t+="}"),e[4]&&(t+="}"),t})).join("")},e.i=function(n,t,o,l,a){"string"==typeof n&&(n=[[null,n,void 0]]);var i={};if(o)for(var r=0;r<this.length;r++){var s=this[r][0];null!=s&&(i[s]=!0)}for(var c=0;c<n.length;c++){var d=[].concat(n[c]);o&&i[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),t&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=t):d[2]=t),l&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=l):d[4]="".concat(l)),e.push(d))}},e}},667:n=>{"use strict";n.exports=function(n,e){return e||(e={}),n?(n=String(n.__esModule?n.default:n),/^['"].*['"]$/.test(n)&&(n=n.slice(1,-1)),e.hash&&(n+=e.hash),/["'() \t\n]|(%20)/.test(n)||e.needQuotes?'"'.concat(n.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):n):n}},81:n=>{"use strict";n.exports=function(n){return n[1]}},271:n=>{"use strict";n.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 304 304%27 width=%27304%27 height=%27304%27%3E%3Cpath fill=%27%233dec55%27 fill-opacity=%270.78%27 d=%27M44.1 224a5 5 0 1 1 0 2H0v-2h44.1zm160 48a5 5 0 1 1 0 2H82v-2h122.1zm57.8-46a5 5 0 1 1 0-2H304v2h-42.1zm0 16a5 5 0 1 1 0-2H304v2h-42.1zm6.2-114a5 5 0 1 1 0 2h-86.2a5 5 0 1 1 0-2h86.2zm-256-48a5 5 0 1 1 0 2H0v-2h12.1zm185.8 34a5 5 0 1 1 0-2h86.2a5 5 0 1 1 0 2h-86.2zM258 12.1a5 5 0 1 1-2 0V0h2v12.1zm-64 208a5 5 0 1 1-2 0v-54.2a5 5 0 1 1 2 0v54.2zm48-198.2V80h62v2h-64V21.9a5 5 0 1 1 2 0zm16 16V64h46v2h-48V37.9a5 5 0 1 1 2 0zm-128 96V208h16v12.1a5 5 0 1 1-2 0V210h-16v-76.1a5 5 0 1 1 2 0zm-5.9-21.9a5 5 0 1 1 0 2H114v48H85.9a5 5 0 1 1 0-2H112v-48h12.1zm-6.2 130a5 5 0 1 1 0-2H176v-74.1a5 5 0 1 1 2 0V242h-60.1zm-16-64a5 5 0 1 1 0-2H114v48h10.1a5 5 0 1 1 0 2H112v-48h-10.1zM66 284.1a5 5 0 1 1-2 0V274H50v30h-2v-32h18v12.1zM236.1 176a5 5 0 1 1 0 2H226v94h48v32h-2v-30h-48v-98h12.1zm25.8-30a5 5 0 1 1 0-2H274v44.1a5 5 0 1 1-2 0V146h-10.1zm-64 96a5 5 0 1 1 0-2H208v-80h16v-14h-42.1a5 5 0 1 1 0-2H226v18h-16v80h-12.1zm86.2-210a5 5 0 1 1 0 2H272V0h2v32h10.1zM98 101.9V146H53.9a5 5 0 1 1 0-2H96v-42.1a5 5 0 1 1 2 0zM53.9 34a5 5 0 1 1 0-2H80V0h2v34H53.9zm60.1 3.9V66H82v64H69.9a5 5 0 1 1 0-2H80V64h32V37.9a5 5 0 1 1 2 0zM101.9 82a5 5 0 1 1 0-2H128V37.9a5 5 0 1 1 2 0V82h-28.1zm16-64a5 5 0 1 1 0-2H146v44.1a5 5 0 1 1-2 0V18h-26.1zm102.2 270a5 5 0 1 1 0 2H98v14h-2v-16h124.1zM242 149.9V160h16v34h-16v62h48v48h-2v-46h-48v-66h16v-30h-16v-12.1a5 5 0 1 1 2 0zM53.9 18a5 5 0 1 1 0-2H64V2H48V0h18v18H53.9zm112 32a5 5 0 1 1 0-2H192V0h50v2h-48v48h-28.1zm-48-48a5 5 0 0 1-9.8-2h2.07a3 3 0 1 0 5.66 0H178v34h-18V21.9a5 5 0 1 1 2 0V32h14V2h-58.1zm0 96a5 5 0 1 1 0-2H137l32-32h39V21.9a5 5 0 1 1 2 0V66h-40.17l-32 32H117.9zm28.1 90.1a5 5 0 1 1-2 0v-76.51L175.59 80H224V21.9a5 5 0 1 1 2 0V82h-49.59L146 112.41v75.69zm16 32a5 5 0 1 1-2 0v-99.51L184.59 96H300.1a5 5 0 0 1 3.9-3.9v2.07a3 3 0 0 0 0 5.66v2.07a5 5 0 0 1-3.9-3.9H185.41L162 121.41v98.69zm-144-64a5 5 0 1 1-2 0v-3.51l48-48V48h32V0h2v50H66v55.41l-48 48v2.69zM50 53.9v43.51l-48 48V208h26.1a5 5 0 1 1 0 2H0v-65.41l48-48V53.9a5 5 0 1 1 2 0zm-16 16V89.41l-34 34v-2.82l32-32V69.9a5 5 0 1 1 2 0zM12.1 32a5 5 0 1 1 0 2H9.41L0 43.41V40.6L8.59 32h3.51zm265.8 18a5 5 0 1 1 0-2h18.69l7.41-7.41v2.82L297.41 50H277.9zm-16 160a5 5 0 1 1 0-2H288v-71.41l16-16v2.82l-14 14V210h-28.1zm-208 32a5 5 0 1 1 0-2H64v-22.59L40.59 194H21.9a5 5 0 1 1 0-2H41.41L66 216.59V242H53.9zm150.2 14a5 5 0 1 1 0 2H96v-56.6L56.6 162H37.9a5 5 0 1 1 0-2h19.5L98 200.6V256h106.1zm-150.2 2a5 5 0 1 1 0-2H80v-46.59L48.59 178H21.9a5 5 0 1 1 0-2H49.41L82 208.59V258H53.9zM34 39.8v1.61L9.41 66H0v-2h8.59L32 40.59V0h2v39.8zM2 300.1a5 5 0 0 1 3.9 3.9H3.83A3 3 0 0 0 0 302.17V256h18v48h-2v-46H2v42.1zM34 241v63h-2v-62H0v-2h34v1zM17 18H0v-2h16V0h2v18h-1zm273-2h14v2h-16V0h2v16zm-32 273v15h-2v-14h-14v14h-2v-16h18v1zM0 92.1A5.02 5.02 0 0 1 6 97a5 5 0 0 1-6 4.9v-2.07a3 3 0 1 0 0-5.66V92.1zM80 272h2v32h-2v-32zm37.9 32h-2.07a3 3 0 0 0-5.66 0h-2.07a5 5 0 0 1 9.8 0zM5.9 0A5.02 5.02 0 0 1 0 5.9V3.83A3 3 0 0 0 3.83 0H5.9zm294.2 0h2.07A3 3 0 0 0 304 3.83V5.9a5 5 0 0 1-3.9-5.9zm3.9 300.1v2.07a3 3 0 0 0-1.83 1.83h-2.07a5 5 0 0 1 3.9-3.9zM97 100a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-48 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 48a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 96a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-144a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-96 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm96 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-32 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM49 36a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-32 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM33 68a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-48a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 240a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm80-176a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 48a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm112 176a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM17 180a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM17 84a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6z%27%3E%3C/path%3E%3C/svg%3E"},12:n=>{"use strict";n.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27100%25%27 height=%27100%25%27 viewBox=%270 0 800 800%27%3E%3Cdefs%3E%3CradialGradient id=%27a%27 cx=%27400%27 cy=%27400%27 r=%2750%25%27 gradientUnits=%27userSpaceOnUse%27%3E%3Cstop offset=%270%27 stop-color=%27%23ffffff%27/%3E%3Cstop offset=%271%27 stop-color=%27%230EF%27/%3E%3C/radialGradient%3E%3CradialGradient id=%27b%27 cx=%27400%27 cy=%27400%27 r=%2770%25%27 gradientUnits=%27userSpaceOnUse%27%3E%3Cstop offset=%270%27 stop-color=%27%23ffffff%27/%3E%3Cstop offset=%271%27 stop-color=%27%230FF%27/%3E%3C/radialGradient%3E%3C/defs%3E%3Crect fill=%27url%28%23a%29%27 width=%27800%27 height=%27800%27/%3E%3Cg fill-opacity=%27.8%27%3E%3Cpath fill=%27url%28%23b%29%27 d=%27M998.7 439.2c1.7-26.5 1.7-52.7 0.1-78.5L401 399.9c0 0 0-0.1 0-0.1l587.6-116.9c-5.1-25.9-11.9-51.2-20.3-75.8L400.9 399.7c0 0 0-0.1 0-0.1l537.3-265c-11.6-23.5-24.8-46.2-39.3-67.9L400.8 399.5c0 0 0-0.1-0.1-0.1l450.4-395c-17.3-19.7-35.8-38.2-55.5-55.5l-395 450.4c0 0-0.1 0-0.1-0.1L733.4-99c-21.7-14.5-44.4-27.6-68-39.3l-265 537.4c0 0-0.1 0-0.1 0l192.6-567.4c-24.6-8.3-49.9-15.1-75.8-20.2L400.2 399c0 0-0.1 0-0.1 0l39.2-597.7c-26.5-1.7-52.7-1.7-78.5-0.1L399.9 399c0 0-0.1 0-0.1 0L282.9-188.6c-25.9 5.1-51.2 11.9-75.8 20.3l192.6 567.4c0 0-0.1 0-0.1 0l-265-537.3c-23.5 11.6-46.2 24.8-67.9 39.3l332.8 498.1c0 0-0.1 0-0.1 0.1L4.4-51.1C-15.3-33.9-33.8-15.3-51.1 4.4l450.4 395c0 0 0 0.1-0.1 0.1L-99 66.6c-14.5 21.7-27.6 44.4-39.3 68l537.4 265c0 0 0 0.1 0 0.1l-567.4-192.6c-8.3 24.6-15.1 49.9-20.2 75.8L399 399.8c0 0 0 0.1 0 0.1l-597.7-39.2c-1.7 26.5-1.7 52.7-0.1 78.5L399 400.1c0 0 0 0.1 0 0.1l-587.6 116.9c5.1 25.9 11.9 51.2 20.3 75.8l567.4-192.6c0 0 0 0.1 0 0.1l-537.3 265c11.6 23.5 24.8 46.2 39.3 67.9l498.1-332.8c0 0 0 0.1 0.1 0.1l-450.4 395c17.3 19.7 35.8 38.2 55.5 55.5l395-450.4c0 0 0.1 0 0.1 0.1L66.6 899c21.7 14.5 44.4 27.6 68 39.3l265-537.4c0 0 0.1 0 0.1 0L207.1 968.3c24.6 8.3 49.9 15.1 75.8 20.2L399.8 401c0 0 0.1 0 0.1 0l-39.2 597.7c26.5 1.7 52.7 1.7 78.5 0.1L400.1 401c0 0 0.1 0 0.1 0l116.9 587.6c25.9-5.1 51.2-11.9 75.8-20.3L400.3 400.9c0 0 0.1 0 0.1 0l265 537.3c23.5-11.6 46.2-24.8 67.9-39.3L400.5 400.8c0 0 0.1 0 0.1-0.1l395 450.4c19.7-17.3 38.2-35.8 55.5-55.5l-450.4-395c0 0 0-0.1 0.1-0.1L899 733.4c14.5-21.7 27.6-44.4 39.3-68l-537.4-265c0 0 0-0.1 0-0.1l567.4 192.6c8.3-24.6 15.1-49.9 20.2-75.8L401 400.2c0 0 0-0.1 0-0.1L998.7 439.2z%27/%3E%3C/g%3E%3C/svg%3E"},966:n=>{"use strict";n.exports="data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27100%25%27%3E%3Cdefs%3E%3ClinearGradient id=%27a%27 gradientUnits=%27userSpaceOnUse%27 x1=%270%27 x2=%270%27 y1=%270%27 y2=%27100%25%27 gradientTransform=%27rotate%28240%29%27%3E%3Cstop offset=%270%27 stop-color=%27%23ffffff%27/%3E%3Cstop offset=%271%27 stop-color=%27%234FE%27/%3E%3C/linearGradient%3E%3Cpattern patternUnits=%27userSpaceOnUse%27 id=%27b%27 width=%27540%27 height=%27450%27 x=%270%27 y=%270%27 viewBox=%270 0 1080 900%27%3E%3Cg fill-opacity=%270.1%27%3E%3Cpolygon fill=%27%23444%27 points=%2790 150 0 300 180 300%27/%3E%3Cpolygon points=%2790 150 180 0 0 0%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27270 150 360 0 180 0%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%27450 150 360 300 540 300%27/%3E%3Cpolygon fill=%27%23999%27 points=%27450 150 540 0 360 0%27/%3E%3Cpolygon points=%27630 150 540 300 720 300%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%27630 150 720 0 540 0%27/%3E%3Cpolygon fill=%27%23444%27 points=%27810 150 720 300 900 300%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27810 150 900 0 720 0%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%27990 150 900 300 1080 300%27/%3E%3Cpolygon fill=%27%23444%27 points=%27990 150 1080 0 900 0%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%2790 450 0 600 180 600%27/%3E%3Cpolygon points=%2790 450 180 300 0 300%27/%3E%3Cpolygon fill=%27%23666%27 points=%27270 450 180 600 360 600%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27270 450 360 300 180 300%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%27450 450 360 600 540 600%27/%3E%3Cpolygon fill=%27%23999%27 points=%27450 450 540 300 360 300%27/%3E%3Cpolygon fill=%27%23999%27 points=%27630 450 540 600 720 600%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27630 450 720 300 540 300%27/%3E%3Cpolygon points=%27810 450 720 600 900 600%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%27810 450 900 300 720 300%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27990 450 900 600 1080 600%27/%3E%3Cpolygon fill=%27%23444%27 points=%27990 450 1080 300 900 300%27/%3E%3Cpolygon fill=%27%23222%27 points=%2790 750 0 900 180 900%27/%3E%3Cpolygon points=%27270 750 180 900 360 900%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%27270 750 360 600 180 600%27/%3E%3Cpolygon points=%27450 750 540 600 360 600%27/%3E%3Cpolygon points=%27630 750 540 900 720 900%27/%3E%3Cpolygon fill=%27%23444%27 points=%27630 750 720 600 540 600%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27810 750 720 900 900 900%27/%3E%3Cpolygon fill=%27%23666%27 points=%27810 750 900 600 720 600%27/%3E%3Cpolygon fill=%27%23999%27 points=%27990 750 900 900 1080 900%27/%3E%3Cpolygon fill=%27%23999%27 points=%27180 0 90 150 270 150%27/%3E%3Cpolygon fill=%27%23444%27 points=%27360 0 270 150 450 150%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27540 0 450 150 630 150%27/%3E%3Cpolygon points=%27900 0 810 150 990 150%27/%3E%3Cpolygon fill=%27%23222%27 points=%270 300 -90 450 90 450%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%270 300 90 150 -90 150%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27180 300 90 450 270 450%27/%3E%3Cpolygon fill=%27%23666%27 points=%27180 300 270 150 90 150%27/%3E%3Cpolygon fill=%27%23222%27 points=%27360 300 270 450 450 450%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27360 300 450 150 270 150%27/%3E%3Cpolygon fill=%27%23444%27 points=%27540 300 450 450 630 450%27/%3E%3Cpolygon fill=%27%23222%27 points=%27540 300 630 150 450 150%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27720 300 630 450 810 450%27/%3E%3Cpolygon fill=%27%23666%27 points=%27720 300 810 150 630 150%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27900 300 810 450 990 450%27/%3E%3Cpolygon fill=%27%23999%27 points=%27900 300 990 150 810 150%27/%3E%3Cpolygon points=%270 600 -90 750 90 750%27/%3E%3Cpolygon fill=%27%23666%27 points=%270 600 90 450 -90 450%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27180 600 90 750 270 750%27/%3E%3Cpolygon fill=%27%23444%27 points=%27180 600 270 450 90 450%27/%3E%3Cpolygon fill=%27%23444%27 points=%27360 600 270 750 450 750%27/%3E%3Cpolygon fill=%27%23999%27 points=%27360 600 450 450 270 450%27/%3E%3Cpolygon fill=%27%23666%27 points=%27540 600 630 450 450 450%27/%3E%3Cpolygon fill=%27%23222%27 points=%27720 600 630 750 810 750%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27900 600 810 750 990 750%27/%3E%3Cpolygon fill=%27%23222%27 points=%27900 600 990 450 810 450%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%270 900 90 750 -90 750%27/%3E%3Cpolygon fill=%27%23444%27 points=%27180 900 270 750 90 750%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27360 900 450 750 270 750%27/%3E%3Cpolygon fill=%27%23AAA%27 points=%27540 900 630 750 450 750%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%27720 900 810 750 630 750%27/%3E%3Cpolygon fill=%27%23222%27 points=%27900 900 990 750 810 750%27/%3E%3Cpolygon fill=%27%23222%27 points=%271080 300 990 450 1170 450%27/%3E%3Cpolygon fill=%27%23FFF%27 points=%271080 300 1170 150 990 150%27/%3E%3Cpolygon points=%271080 600 990 750 1170 750%27/%3E%3Cpolygon fill=%27%23666%27 points=%271080 600 1170 450 990 450%27/%3E%3Cpolygon fill=%27%23DDD%27 points=%271080 900 1170 750 990 750%27/%3E%3C/g%3E%3C/pattern%3E%3C/defs%3E%3Crect x=%270%27 y=%270%27 fill=%27url%28%23a%29%27 width=%27100%25%27 height=%27100%25%27/%3E%3Crect x=%270%27 y=%270%27 fill=%27url%28%23b%29%27 width=%27100%25%27 height=%27100%25%27/%3E%3C/svg%3E"}},e={};function t(o){var l=e[o];if(void 0!==l)return l.exports;var a=e[o]={id:o,exports:{}};return n[o](a,a.exports,t),a.exports}t.m=n,t.n=n=>{var e=n&&n.__esModule?()=>n.default:()=>n;return t.d(e,{a:e}),e},t.d=(n,e)=>{for(var o in e)t.o(e,o)&&!t.o(n,o)&&Object.defineProperty(n,o,{enumerable:!0,get:e[o]})},t.o=(n,e)=>Object.prototype.hasOwnProperty.call(n,e),t.b=document.baseURI||self.location.href,t(10),t(314)})();