UNPKG

pxt-core

Version:

Microsoft MakeCode provides Blocks / JavaScript / Python tools and editors

1 lines • 675 kB
var e=function(){"use strict";function t(e,t){postMessage({action:$e,cbn:t,result:e})}function n(e){var t=[];return t[e-1]=void 0,t}function i(e,t){return o(e[0]+t[0],e[1]+t[1])}function s(e,t){return function(e,t){var n;return n=t,0>t&&(n+=Ve),[n,e*Ve]}(~~Math.max(Math.min(e[1]/Ve,2147483647),-2147483648)&~~Math.max(Math.min(t[1]/Ve,2147483647),-2147483648),c(e)&c(t))}function r(e,t){var n,i;return e[0]==t[0]&&e[1]==t[1]?0:(n=0>e[1],i=0>t[1],n&&!i?-1:!n&&i?1:p(e,t)[1]<0?-1:1)}function o(e,t){var n,i;for(e%=0x10000000000000000,t=(t%=0x10000000000000000)-(n=t%Ve)+(i=Math.floor(e/Ve)*Ve),e=e-i+n;0>e;)e+=Ve,t-=Ve;for(;e>4294967295;)e-=Ve,t+=Ve;for(t%=0x10000000000000000;t>0x7fffffff00000000;)t-=0x10000000000000000;for(;-0x8000000000000000>t;)t+=0x10000000000000000;return[e,t]}function a(e,t){return e[0]==t[0]&&e[1]==t[1]}function l(e){return e>=0?[e,0]:[e+Ve,-Ve]}function c(e){return e[0]>=2147483648?~~Math.max(Math.min(e[0]-Ve,2147483647),-2147483648):~~Math.max(Math.min(e[0],2147483647),-2147483648)}function u(e){return 30>=e?1<<e:u(30)*u(e-30)}function d(e,t){var n,i,s,r;if(t&=63,a(e,He))return t?ze:e;if(0>e[1])throw Error("Neg");return r=u(t),i=e[1]*r%0x10000000000000000,(i+=n=(s=e[0]*r)-s%Ve)>=0x8000000000000000&&(i-=0x10000000000000000),[s-=n,i]}function h(e,t){var n;return n=u(t&=63),o(Math.floor(e[0]/n),e[1]/n)}function p(e,t){return o(e[0]-t[0],e[1]-t[1])}function f(e,t){return e.Mc=t,e.Lc=0,e.Yb=t.length,e}function m(e){return e.Lc>=e.Yb?-1:255&e.Mc[e.Lc++]}function g(e,t,n,i){return e.Lc>=e.Yb?-1:(i=Math.min(i,e.Yb-e.Lc),A(e.Mc,e.Lc,t,n,i),e.Lc+=i,i)}function b(e){return e.Mc=n(32),e.Yb=0,e}function y(e){var t=e.Mc;return t.length=e.Yb,t}function v(e,t){e.Mc[e.Yb++]=t<<24>>24}function w(e,t,n,i){A(t,n,e.Mc,e.Yb,i),e.Yb+=i}function A(e,t,n,i,s){for(var r=0;s>r;++r)n[i+r]=e[t+r]}function x(t,n,i,s,o){var a,l;if(r(s,qe)<0)throw Error("invalid length "+s);for(t.Tb=s,function(e,t){(function(e,t){e.ab=t;for(var n=0;t>1<<n;++n);e.$b=2*n})(t,1<<e.s),t.n=e.f,function(e,t){var n=e.X;e.X=t,e.b&&n!=e.X&&(e.wb=-1,e.b=null)}(t,e.m),t.eb=0,t.fb=3,t.Y=2,t.y=3}(o,a=Y({})),a.Gc=void 0===e.disableEndMark,function(e,t){e.fc[0]=9*(5*e.Y+e.eb)+e.fb<<24>>24;for(var n=0;4>n;++n)e.fc[1+n]=e.ab>>8*n<<24>>24;w(t,e.fc,0,5)}(a,i),l=0;64>l;l+=8)v(i,255&c(h(s,l)));t.yb=(a.W=0,a.oc=n,a.pc=0,function(e){var t,n;e.b||(t={},n=4,e.X||(n=2),function(e,t){e.qb=t>2,e.qb?(e.w=0,e.xb=4,e.R=66560):(e.w=2,e.xb=3,e.R=0)}(t,n),e.b=t),he(e.A,e.eb,e.fb),(e.ab!=e.wb||e.Hb!=e.n)&&(P(e.b,e.ab,4096,e.n,274),e.wb=e.ab,e.Hb=e.n)}(a),a.d.Ab=i,function(e){(function(e){e.l=0,e.J=0;for(var t=0;4>t;++t)e.v[t]=0})(e),function(e){e.mc=ze,e.xc=ze,e.E=-1,e.Jb=1,e.Oc=0}(e.d),_e(e.C),_e(e._),_e(e.bb),_e(e.hb),_e(e.Ub),_e(e.vc),_e(e.Sb),function(e){var t,n=1<<e.u+e.I;for(t=0;n>t;++t)_e(e.V[t].tb)}(e.A);for(var t=0;4>t;++t)_e(e.K[t].G);oe(e.$,1<<e.Y),oe(e.i,1<<e.Y),_e(e.S.G),e.N=0,e.jb=0,e.q=0,e.s=0}(a),X(a),K(a),a.$.rb=a.n+1-2,de(a.$,1<<a.Y),a.i.rb=a.n+1-2,de(a.i,1<<a.Y),a.g=ze,function(e,t){return e.cb=t,e.Z=null,e.zc=1,e}({},a))}function k(e,t,n){return e.Nb=b({}),x(e,f({},t),e.Nb,l(t.length),n),e}function E(e,t,n){var i,s,r,o,a="",c=[];for(s=0;5>s;++s){if(-1==(r=m(t)))throw Error("truncated input");c[s]=r<<24>>24}if(!function(e,t){var n,i,s,r,o,a,l;if(5>t.length)return 0;for(l=255&t[0],s=l%9,r=(a=~~(l/9))%5,o=~~(a/5),n=0,i=0;4>i;++i)n+=(255&t[1+i])<<8*i;return n>99999999||!function(e,t,n,i){if(t>8||n>4||i>4)return 0;G(e.gb,n,t);var s=1<<i;return V(e.Rb,s),V(e.sb,s),e.Dc=s-1,1}(e,s,r,o)?0:function(e,t){return 0>t?0:(e.Ob!=t&&(e.Ob=t,e.nb=Math.max(e.Ob,1),R(e.B,Math.max(e.nb,4096))),1)}(e,n)}(i=j({}),c))throw Error("corrupted input");for(s=0;64>s;s+=8){if(-1==(r=m(t)))throw Error("truncated input");1==(r=r.toString(16)).length&&(r="0"+r),a=r+""+a}/^0+$|^f+$/i.test(a)?e.Tb=qe:(o=parseInt(a,16),e.Tb=o>4294967295?qe:l(o)),e.yb=function(e,t,n,i){return e.e.Ab=t,D(e.B),e.B.cc=n,function(e){e.B.h=0,e.B.o=0,_e(e.Gb),_e(e.pb),_e(e.Zb),_e(e.Cb),_e(e.Db),_e(e.Eb),_e(e.kc),function(e){var t,n;for(n=1<<e.u+e.I,t=0;n>t;++t)_e(e.V[t].Ib)}(e.gb);for(var t=0;4>t;++t)_e(e.kb[t].G);z(e.Rb),z(e.sb),_e(e.Fb.G),function(e){e.Bb=0,e.E=-1;for(var t=0;5>t;++t)e.Bb=e.Bb<<8|m(e.Ab)}(e.e)}(e),e.U=0,e.ib=0,e.Jc=0,e.Ic=0,e.Qc=0,e.Nc=i,e.g=ze,e.jc=0,function(e,t){return e.Z=t,e.cb=null,e.zc=1,e}({},e)}(i,t,n,e.Tb)}function T(e,t){return e.Nb=b({}),E(e,f({},t),e.Nb),e}function S(e,t){return e.c[e.f+e.o+t]}function C(e,t,n,i){var s,r;for(e.T&&e.o+t+i>e.h&&(i=e.h-(e.o+t)),++n,r=e.f+e.o+t,s=0;i>s&&e.c[r+s]==e.c[r+s-n];++s);return s}function I(e){return e.h-e.o}function _(e){var t,n;if(!e.T)for(;;){if(!(n=-e.f+e.Kb-e.h))return;if(-1==(t=g(e.cc,e.c,e.f+e.h,n)))return e.zb=e.h,e.f+e.zb>e.H&&(e.zb=e.H-e.f),void(e.T=1);e.h+=t,e.h>=e.o+e._b&&(e.zb=e.h-e._b)}}function U(e,t){e.f+=t,e.zb-=t,e.o-=t,e.h-=t}function P(e,t,i,s,r){var o,a;1073741567>t&&(e.Fc=16+(s>>1),function(e,t,i,s){var r;e.Bc=t,e._b=i,r=t+i+s,(null==e.c||e.Kb!=r)&&(e.c=null,e.Kb=r,e.c=n(e.Kb)),e.H=e.Kb-i}(e,t+i,s+r,256+~~((t+i+s+r)/2)),e.ob=s,o=t+1,e.p!=o&&(e.L=n(2*(e.p=o))),a=65536,e.qb&&(a=t-1,a|=a>>1,a|=a>>2,a|=a>>4,a|=a>>8,a>>=1,(a|=65535)>16777216&&(a>>=1),e.Ec=a,++a,a+=e.R),a!=e.rc&&(e.ub=n(e.rc=a)))}function N(e){var t;++e.k>=e.p&&(e.k=0),function(e){++e.o,e.o>e.zb&&(e.f+e.o>e.H&&function(e){var t,n,i;for((i=e.f+e.o-e.Bc)>0&&--i,n=e.f+e.h-i,t=0;n>t;++t)e.c[t]=e.c[i+t];e.f-=i}(e),_(e))}(e),1073741823==e.o&&(t=e.o-e.p,O(e.L,2*e.p,t),O(e.ub,e.rc,t),U(e,t))}function O(e,t,n){var i,s;for(i=0;t>i;++i)n>=(s=e[i]||0)?s=0:s-=n,e[i]=s}function R(e,t){(null==e.Lb||e.M!=t)&&(e.Lb=n(t)),e.M=t,e.o=0,e.h=0}function L(e){var t=e.o-e.h;t&&(w(e.cc,e.Lb,e.h,t),e.o>=e.M&&(e.o=0),e.h=e.o)}function M(e,t){var n=e.o-t-1;return 0>n&&(n+=e.M),e.Lb[n]}function D(e){L(e),e.cc=null}function F(e){return 4>(e-=2)?e:3}function B(e){return 4>e?0:10>e?e-3:e-6}function $(e){if(!e.zc)throw Error("bad state");return e.cb?function(e){(function(e,t,n,s){var o,u,d,h,f,m,g,b,y,v,w,A,x,k,E;if(t[0]=ze,n[0]=ze,s[0]=1,e.oc&&(e.b.cc=e.oc,function(e){e.f=0,e.o=0,e.h=0,e.T=0,_(e),e.k=0,U(e,-1)}(e.b),e.W=1,e.oc=null),!e.pc){if(e.pc=1,k=e.g,a(e.g,ze)){if(!I(e.b))return void Q(e,c(e.g));ie(e),x=c(e.g)&e.y,Ue(e.d,e.C,(e.l<<4)+x,0),e.l=B(e.l),d=S(e.b,-e.s),fe(pe(e.A,c(e.g),e.J),e.d,d),e.J=d,--e.s,e.g=i(e.g,Ge)}if(!I(e.b))return void Q(e,c(e.g));for(;;){if(g=Z(e,c(e.g)),v=e.mb,x=c(e.g)&e.y,u=(e.l<<4)+x,1==g&&-1==v)Ue(e.d,e.C,u,0),d=S(e.b,-e.s),E=pe(e.A,c(e.g),e.J),7>e.l?fe(E,e.d,d):(y=S(e.b,-e.v[0]-1-e.s),me(E,e.d,y,d)),e.J=d,e.l=B(e.l);else{if(Ue(e.d,e.C,u,1),4>v){if(Ue(e.d,e.bb,e.l,1),v?(Ue(e.d,e.hb,e.l,1),1==v?Ue(e.d,e.Ub,e.l,0):(Ue(e.d,e.Ub,e.l,1),Ue(e.d,e.vc,e.l,v-2))):(Ue(e.d,e.hb,e.l,0),Ue(e.d,e._,u,1==g?0:1)),1==g?e.l=7>e.l?9:11:(le(e.i,e.d,g-2,x),e.l=7>e.l?8:11),h=e.v[v],0!=v){for(m=v;m>=1;--m)e.v[m]=e.v[m-1];e.v[0]=h}}else{for(Ue(e.d,e.bb,e.l,0),e.l=7>e.l?7:10,le(e.$,e.d,g-2,x),A=re(v-=4),b=F(g),xe(e.K[b],e.d,A),A>=4&&(w=v-(o=(2|1&A)<<(f=(A>>1)-1)),14>A?Se(e.Sb,o-A-1,e.d,f,w):(Pe(e.d,w>>4,f-4),Ee(e.S,e.d,15&w),++e.Qb)),h=v,m=3;m>=1;--m)e.v[m]=e.v[m-1];e.v[0]=h,++e.Mb}e.J=S(e.b,g-1-e.s)}if(e.s-=g,e.g=i(e.g,l(g)),!e.s){if(e.Mb>=128&&X(e),e.Qb>=16&&K(e),t[0]=e.g,n[0]=Ne(e.d),!I(e.b))return void Q(e,c(e.g));if(r(p(e.g,k),[4096,0])>=0)return e.pc=0,void(s[0]=0)}}}})(e.cb,e.cb.Xb,e.cb.uc,e.cb.Kc),e.Pb=e.cb.Xb[0],e.cb.Kc[0]&&(function(e){se(e),e.d.Ab=null}(e.cb),e.zc=0)}(e):function(e){var t=function(e){var t,n,s,o,a,u;if(u=c(e.g)&e.Dc,Ie(e.e,e.Gb,(e.U<<4)+u)){if(Ie(e.e,e.Zb,e.U))s=0,Ie(e.e,e.Cb,e.U)?(Ie(e.e,e.Db,e.U)?(Ie(e.e,e.Eb,e.U)?(n=e.Qc,e.Qc=e.Ic):n=e.Ic,e.Ic=e.Jc):n=e.Jc,e.Jc=e.ib,e.ib=n):Ie(e.e,e.pb,(e.U<<4)+u)||(e.U=7>e.U?9:11,s=1),s||(s=q(e.sb,e.e,u)+2,e.U=7>e.U?8:11);else if(e.Qc=e.Ic,e.Ic=e.Jc,e.Jc=e.ib,s=2+q(e.Rb,e.e,u),e.U=7>e.U?7:10,(a=we(e.kb[F(s)],e.e))>=4){if(o=(a>>1)-1,e.ib=(2|1&a)<<o,14>a)e.ib+=function(e,t,n,i){var s,r,o=1,a=0;for(r=0;i>r;++r)s=Ie(n,e,t+o),o<<=1,o+=s,a|=s<<r;return a}(e.kc,e.ib-a-1,e.e,o);else if(e.ib+=function(e,t){var n,i,s=0;for(n=t;0!=n;--n)e.E>>>=1,i=e.Bb-e.E>>>31,e.Bb-=e.E&i-1,s=s<<1|1-i,-16777216&e.E||(e.Bb=e.Bb<<8|m(e.Ab),e.E<<=8);return s}(e.e,o-4)<<4,e.ib+=function(e,t){var n,i,s=1,r=0;for(i=0;e.F>i;++i)n=Ie(t,e.G,s),s<<=1,s+=n,r|=n<<i;return r}(e.Fb,e.e),0>e.ib)return-1==e.ib?1:-1}else e.ib=a;if(r(l(e.ib),e.g)>=0||e.ib>=e.nb)return-1;(function(e,t,n){var i=e.o-t-1;for(0>i&&(i+=e.M);0!=n;--n)i>=e.M&&(i=0),e.Lb[e.o++]=e.Lb[i++],e.o>=e.M&&L(e)})(e.B,e.ib,s),e.g=i(e.g,l(s)),e.jc=M(e.B,0)}else t=function(e,t,n){return e.V[((t&e.qc)<<e.u)+((255&n)>>>8-e.u)]}(e.gb,c(e.g),e.jc),e.jc=7>e.U?function(e,t){var n=1;do{n=n<<1|Ie(t,e.Ib,n)}while(256>n);return n<<24>>24}(t,e.e):function(e,t,n){var i,s,r=1;do{if(s=n>>7&1,n<<=1,i=Ie(t,e.Ib,(1+s<<8)+r),r=r<<1|i,s!=i){for(;256>r;)r=r<<1|Ie(t,e.Ib,r);break}}while(256>r);return r<<24>>24}(t,e.e,M(e.B,e.ib)),function(e,t){e.Lb[e.o++]=t,e.o>=e.M&&L(e)}(e.B,e.jc),e.U=B(e.U),e.g=i(e.g,Ge);return 0}(e.Z);if(-1==t)throw Error("corrupted input");e.Pb=qe,e.Pc=e.Z.g,(t||r(e.Z.Nc,ze)>=0&&r(e.Z.g,e.Z.Nc)>=0)&&(L(e.Z.B),D(e.Z.B),e.Z.e.Ab=null,e.zc=0)}(e),e.zc}function j(e){e.B={},e.e={},e.Gb=n(192),e.Zb=n(12),e.Cb=n(12),e.Db=n(12),e.Eb=n(12),e.pb=n(192),e.kb=n(4),e.kc=n(114),e.Fb=ve({},4),e.Rb=H({}),e.sb=H({}),e.gb={};for(var t=0;4>t;++t)e.kb[t]=ve({},6);return e}function V(e,t){for(;t>e.O;++e.O)e.ec[e.O]=ve({},3),e.hc[e.O]=ve({},3)}function q(e,t,n){return Ie(t,e.wc,0)?8+(Ie(t,e.wc,1)?8+we(e.tc,t):we(e.hc[n],t)):we(e.ec[n],t)}function H(e){return e.wc=n(2),e.ec=n(16),e.hc=n(16),e.tc=ve({},8),e.O=0,e}function z(e){_e(e.wc);for(var t=0;e.O>t;++t)_e(e.ec[t].G),_e(e.hc[t].G);_e(e.tc.G)}function G(e,t,i){var s,r;if(null==e.V||e.u!=i||e.I!=t)for(e.I=t,e.qc=(1<<t)-1,e.u=i,r=1<<e.u+e.I,e.V=n(r),s=0;r>s;++s)e.V[s]=W({})}function W(e){return e.Ib=n(768),e}function J(e,t){var n,i,s,r;e.jb=t,s=e.a[t].r,i=e.a[t].j;do{e.a[t].t&&(ye(e.a[s]),e.a[s].r=s-1,e.a[t].Ac&&(e.a[s-1].t=0,e.a[s-1].r=e.a[t].r2,e.a[s-1].j=e.a[t].j2)),r=s,n=i,i=e.a[r].j,s=e.a[r].r,e.a[r].j=n,e.a[r].r=t,t=r}while(t>0);return e.mb=e.a[0].j,e.q=e.a[0].r}function Y(e){var t;for(e.v=n(4),e.a=[],e.d={},e.C=n(192),e.bb=n(12),e.hb=n(12),e.Ub=n(12),e.vc=n(12),e._=n(192),e.K=[],e.Sb=n(114),e.S=Ae({},4),e.$=ce({}),e.i=ce({}),e.A={},e.m=[],e.P=[],e.lb=[],e.nc=n(16),e.x=n(4),e.Q=n(4),e.Xb=[ze],e.uc=[ze],e.Kc=[0],e.fc=n(5),e.yc=n(128),e.vb=0,e.X=1,e.D=0,e.Hb=-1,e.mb=0,t=0;4096>t;++t)e.a[t]={};for(t=0;4>t;++t)e.K[t]=Ae({},6);return e}function K(e){for(var t=0;16>t;++t)e.nc[t]=Te(e.S,t);e.Qb=0}function X(e){var t,n,i,s,r,o,a,l;for(s=4;128>s;++s)t=(2|1&(o=re(s)))<<(i=(o>>1)-1),e.yc[s]=Ce(e.Sb,t-o-1,i,s-t);for(r=0;4>r;++r){for(n=e.K[r],a=r<<6,o=0;e.$b>o;++o)e.P[a+o]=ke(n,o);for(o=14;e.$b>o;++o)e.P[a+o]+=(o>>1)-1-4<<6;for(l=128*r,s=0;4>s;++s)e.lb[l+s]=e.P[a+s];for(;128>s;++s)e.lb[l+s]=e.P[a+re(s)]+e.yc[s]}e.Mb=0}function Q(e,t){se(e),function(e,t){if(e.Gc){Ue(e.d,e.C,(e.l<<4)+t,1),Ue(e.d,e.bb,e.l,0),e.l=7>e.l?7:10,le(e.$,e.d,0,t);var n=F(2);xe(e.K[n],e.d,63),Pe(e.d,67108863,26),Ee(e.S,e.d,15)}}(e,t&e.y);for(var n=0;5>n;++n)Oe(e.d)}function Z(e,t){var n,i,s,r,o,a,l,c,u,d,h,p,f,m,g,b,y,v,w,A,x,k,E,T,_,U,P,N,O,R,L,M,D,F,$,j,V,q,H,z,G,W,Y,K;if(e.jb!=e.q)return f=e.a[e.q].r-e.q,e.mb=e.a[e.q].j,e.q=e.a[e.q].r,f;if(e.q=e.jb=0,e.N?(p=e.vb,e.N=0):p=ie(e),U=e.D,2>(T=I(e.b)+1))return e.mb=-1,1;for(T>273&&(T=273),H=0,u=0;4>u;++u)e.x[u]=e.v[u],e.Q[u]=C(e.b,-1,e.x[u],273),e.Q[u]>e.Q[H]&&(H=u);if(e.Q[H]>=e.n)return e.mb=H,ne(e,(f=e.Q[H])-1),f;if(p>=e.n)return e.mb=e.m[U-1]+4,ne(e,p-1),p;if(l=S(e.b,-1),y=S(e.b,-e.v[0]-1-1),2>p&&l!=y&&2>e.Q[H])return e.mb=-1,1;if(e.a[0].Hc=e.l,D=t&e.y,e.a[1].z=Ye[e.C[(e.l<<4)+D]>>>2]+be(pe(e.A,t,e.J),e.l>=7,y,l),ye(e.a[1]),q=(v=Ye[2048-e.C[(e.l<<4)+D]>>>2])+Ye[2048-e.bb[e.l]>>>2],y==l&&(z=q+function(e,t,n){return Ye[e.hb[t]>>>2]+Ye[e._[(t<<4)+n]>>>2]}(e,e.l,D),e.a[1].z>z&&(e.a[1].z=z,function(e){e.j=0,e.t=0}(e.a[1]))),2>(h=p>=e.Q[H]?p:e.Q[H]))return e.mb=e.a[1].j,1;e.a[1].r=0,e.a[0].bc=e.x[0],e.a[0].ac=e.x[1],e.a[0].dc=e.x[2],e.a[0].lc=e.x[3],d=h;do{e.a[d--].z=268435455}while(d>=2);for(u=0;4>u;++u)if(!(2>(V=e.Q[u]))){$=q+te(e,u,e.l,D);do{r=$+ue(e.i,V-2,D),(R=e.a[V]).z>r&&(R.z=r,R.r=0,R.j=u,R.t=0)}while(--V>=2)}if(E=v+Ye[e.bb[e.l]>>>2],p>=(d=e.Q[0]>=2?e.Q[0]+1:2)){for(P=0;d>e.m[P];)P+=2;for(;r=E+ee(e,c=e.m[P+1],d,D),(R=e.a[d]).z>r&&(R.z=r,R.r=0,R.j=c+4,R.t=0),d!=e.m[P]||(P+=2)!=U;++d);}for(n=0;;){if(++n==h)return J(e,n);if(w=ie(e),U=e.D,w>=e.n)return e.vb=w,e.N=1,J(e,n);if(++t,M=e.a[n].r,e.a[n].t?(--M,e.a[n].Ac?(W=e.a[e.a[n].r2].Hc,W=4>e.a[n].j2?7>W?8:11:7>W?7:10):W=e.a[M].Hc,W=B(W)):W=e.a[M].Hc,M==n-1?W=e.a[n].j?B(W):7>W?9:11:(e.a[n].t&&e.a[n].Ac?(M=e.a[n].r2,L=e.a[n].j2,W=7>W?8:11):W=4>(L=e.a[n].j)?7>W?8:11:7>W?7:10,O=e.a[M],4>L?L?1==L?(e.x[0]=O.ac,e.x[1]=O.bc,e.x[2]=O.dc,e.x[3]=O.lc):2==L?(e.x[0]=O.dc,e.x[1]=O.bc,e.x[2]=O.ac,e.x[3]=O.lc):(e.x[0]=O.lc,e.x[1]=O.bc,e.x[2]=O.ac,e.x[3]=O.dc):(e.x[0]=O.bc,e.x[1]=O.ac,e.x[2]=O.dc,e.x[3]=O.lc):(e.x[0]=L-4,e.x[1]=O.bc,e.x[2]=O.ac,e.x[3]=O.dc)),e.a[n].Hc=W,e.a[n].bc=e.x[0],e.a[n].ac=e.x[1],e.a[n].dc=e.x[2],e.a[n].lc=e.x[3],a=e.a[n].z,l=S(e.b,-1),y=S(e.b,-e.x[0]-1-1),D=t&e.y,i=a+Ye[e.C[(W<<4)+D]>>>2]+be(pe(e.A,t,S(e.b,-2)),W>=7,y,l),A=0,(x=e.a[n+1]).z>i&&(x.z=i,x.r=n,x.j=-1,x.t=0,A=1),q=(v=a+Ye[2048-e.C[(W<<4)+D]>>>2])+Ye[2048-e.bb[W]>>>2],y!=l||n>x.r&&!x.j||(z=q+(Ye[e.hb[W]>>>2]+Ye[e._[(W<<4)+D]>>>2]),x.z>=z&&(x.z=z,x.r=n,x.j=0,x.t=0,A=1)),!(2>(T=_=(_=I(e.b)+1)>4095-n?4095-n:_))){if(T>e.n&&(T=e.n),!A&&y!=l&&(K=Math.min(_-1,e.n),(g=C(e.b,0,e.x[0],K))>=2)){for(Y=B(W),F=t+1&e.y,k=i+Ye[2048-e.C[(Y<<4)+F]>>>2]+Ye[2048-e.bb[Y]>>>2],N=n+1+g;N>h;)e.a[++h].z=268435455;r=k+(ue(e.i,g-2,F)+te(e,0,Y,F)),(R=e.a[N]).z>r&&(R.z=r,R.r=n+1,R.j=0,R.t=1,R.Ac=0)}for(G=2,j=0;4>j;++j)if(!(2>(m=C(e.b,-1,e.x[j],T)))){b=m;do{for(;n+m>h;)e.a[++h].z=268435455;r=q+(ue(e.i,m-2,D)+te(e,j,W,D)),(R=e.a[n+m]).z>r&&(R.z=r,R.r=n,R.j=j,R.t=0)}while(--m>=2);if(m=b,j||(G=m+1),_>m&&(K=Math.min(_-1-m,e.n),(g=C(e.b,m,e.x[j],K))>=2)){for(Y=7>W?8:11,F=t+m&e.y,s=q+(ue(e.i,m-2,D)+te(e,j,W,D))+Ye[e.C[(Y<<4)+F]>>>2]+be(pe(e.A,t+m,S(e.b,m-1-1)),1,S(e.b,m-1-(e.x[j]+1)),S(e.b,m-1)),Y=B(Y),F=t+m+1&e.y,k=s+Ye[2048-e.C[(Y<<4)+F]>>>2]+Ye[2048-e.bb[Y]>>>2],N=m+1+g;n+N>h;)e.a[++h].z=268435455;r=k+(ue(e.i,g-2,F)+te(e,0,Y,F)),(R=e.a[n+N]).z>r&&(R.z=r,R.r=n+m+1,R.j=0,R.t=1,R.Ac=1,R.r2=n,R.j2=j)}}if(w>T){for(w=T,U=0;w>e.m[U];U+=2);e.m[U]=w,U+=2}if(w>=G){for(E=v+Ye[e.bb[W]>>>2];n+w>h;)e.a[++h].z=268435455;for(P=0;G>e.m[P];)P+=2;for(m=G;;++m)if(r=E+ee(e,o=e.m[P+1],m,D),(R=e.a[n+m]).z>r&&(R.z=r,R.r=n,R.j=o+4,R.t=0),m==e.m[P]){if(_>m&&(K=Math.min(_-1-m,e.n),(g=C(e.b,m,o,K))>=2)){for(Y=7>W?7:10,F=t+m&e.y,s=r+Ye[e.C[(Y<<4)+F]>>>2]+be(pe(e.A,t+m,S(e.b,m-1-1)),1,S(e.b,m-(o+1)-1),S(e.b,m-1)),Y=B(Y),F=t+m+1&e.y,k=s+Ye[2048-e.C[(Y<<4)+F]>>>2]+Ye[2048-e.bb[Y]>>>2],N=m+1+g;n+N>h;)e.a[++h].z=268435455;r=k+(ue(e.i,g-2,F)+te(e,0,Y,F)),(R=e.a[n+N]).z>r&&(R.z=r,R.r=n+m+1,R.j=0,R.t=1,R.Ac=1,R.r2=n,R.j2=o+4)}if((P+=2)==U)break}}}}}function ee(e,t,n,i){var s=F(n);return(128>t?e.lb[128*s+t]:e.P[(s<<6)+function(e){return 131072>e?Je[e>>6]+12:134217728>e?Je[e>>16]+32:Je[e>>26]+52}(t)]+e.nc[15&t])+ue(e.$,n-2,i)}function te(e,t,n,i){var s;return t?(s=Ye[2048-e.hb[n]>>>2],1==t?s+=Ye[e.Ub[n]>>>2]:(s+=Ye[2048-e.Ub[n]>>>2],s+=Re(e.vc[n],t-2))):(s=Ye[e.hb[n]>>>2],s+=Ye[2048-e._[(n<<4)+i]>>>2]),s}function ne(e,t){t>0&&(function(e,t){var n,i,s,r,o,a,l,c,u,d,h,p,f,m,g,b,y;do{if(e.h>=e.o+e.ob)p=e.ob;else if(p=e.h-e.o,e.xb>p){N(e);continue}for(f=e.o>e.p?e.o-e.p:0,i=e.f+e.o,e.qb?(a=1023&(y=We[255&e.c[i]]^255&e.c[i+1]),e.ub[a]=e.o,l=65535&(y^=(255&e.c[i+2])<<8),e.ub[1024+l]=e.o,c=(y^We[255&e.c[i+3]]<<5)&e.Ec):c=255&e.c[i]^(255&e.c[i+1])<<8,s=e.ub[e.R+c],e.ub[e.R+c]=e.o,g=1+(e.k<<1),b=e.k<<1,d=h=e.w,n=e.Fc;;){if(f>=s||0==n--){e.L[g]=e.L[b]=0;break}if(o=e.o-s,r=(e.k>=o?e.k-o:e.k-o+e.p)<<1,m=e.f+s,u=h>d?d:h,e.c[m+u]==e.c[i+u]){for(;++u!=p&&e.c[m+u]==e.c[i+u];);if(u==p){e.L[b]=e.L[r],e.L[g]=e.L[r+1];break}}(255&e.c[i+u])>(255&e.c[m+u])?(e.L[b]=s,b=r+1,s=e.L[b],h=u):(e.L[g]=s,g=r,s=e.L[g],d=u)}N(e)}while(0!=--t)}(e.b,t),e.s+=t)}function ie(e){var t=0;return e.D=function(e,t){var n,i,s,r,o,a,l,c,u,d,h,p,f,m,g,b,y,v,w,A,x;if(e.h>=e.o+e.ob)m=e.ob;else if(m=e.h-e.o,e.xb>m)return N(e),0;for(y=0,g=e.o>e.p?e.o-e.p:0,i=e.f+e.o,b=1,c=0,u=0,e.qb?(c=1023&(x=We[255&e.c[i]]^255&e.c[i+1]),u=65535&(x^=(255&e.c[i+2])<<8),d=(x^We[255&e.c[i+3]]<<5)&e.Ec):d=255&e.c[i]^(255&e.c[i+1])<<8,s=e.ub[e.R+d]||0,e.qb&&(r=e.ub[c]||0,o=e.ub[1024+u]||0,e.ub[c]=e.o,e.ub[1024+u]=e.o,r>g&&e.c[e.f+r]==e.c[i]&&(t[y++]=b=2,t[y++]=e.o-r-1),o>g&&e.c[e.f+o]==e.c[i]&&(o==r&&(y-=2),t[y++]=b=3,t[y++]=e.o-o-1,r=o),0!=y&&r==s&&(y-=2,b=1)),e.ub[e.R+d]=e.o,w=1+(e.k<<1),A=e.k<<1,p=f=e.w,0!=e.w&&s>g&&e.c[e.f+s+e.w]!=e.c[i+e.w]&&(t[y++]=b=e.w,t[y++]=e.o-s-1),n=e.Fc;;){if(g>=s||0==n--){e.L[w]=e.L[A]=0;break}if(l=e.o-s,a=(e.k>=l?e.k-l:e.k-l+e.p)<<1,v=e.f+s,h=f>p?p:f,e.c[v+h]==e.c[i+h]){for(;++h!=m&&e.c[v+h]==e.c[i+h];);if(h>b&&(t[y++]=b=h,t[y++]=l-1,h==m)){e.L[A]=e.L[a],e.L[w]=e.L[a+1];break}}(255&e.c[i+h])>(255&e.c[v+h])?(e.L[A]=s,A=a+1,s=e.L[A],f=h):(e.L[w]=s,w=a,s=e.L[w],p=h)}return N(e),y}(e.b,e.m),e.D>0&&((t=e.m[e.D-2])==e.n&&(t+=C(e.b,t-1,e.m[e.D-1],273-t))),++e.s,t}function se(e){e.b&&e.W&&(e.b.cc=null,e.W=0)}function re(e){return 2048>e?Je[e]:2097152>e?Je[e>>10]+20:Je[e>>20]+40}function oe(e,t){_e(e.db);for(var n=0;t>n;++n)_e(e.Vb[n].G),_e(e.Wb[n].G);_e(e.ic.G)}function ae(e,t,n,i,s){var r,o,a,l,c;for(r=Ye[e.db[0]>>>2],a=(o=Ye[2048-e.db[0]>>>2])+Ye[e.db[1]>>>2],l=o+Ye[2048-e.db[1]>>>2],c=0,c=0;8>c;++c){if(c>=n)return;i[s+c]=r+ke(e.Vb[t],c)}for(;16>c;++c){if(c>=n)return;i[s+c]=a+ke(e.Wb[t],c-8)}for(;n>c;++c)i[s+c]=l+ke(e.ic,c-8-8)}function le(e,t,n,i){(function(e,t,n,i){8>n?(Ue(t,e.db,0,0),xe(e.Vb[i],t,n)):(n-=8,Ue(t,e.db,0,1),8>n?(Ue(t,e.db,1,0),xe(e.Wb[i],t,n)):(Ue(t,e.db,1,1),xe(e.ic,t,n-8)))})(e,t,n,i),0==--e.sc[i]&&(ae(e,i,e.rb,e.Cc,272*i),e.sc[i]=e.rb)}function ce(e){return function(e){e.db=n(2),e.Vb=n(16),e.Wb=n(16),e.ic=Ae({},8);for(var t=0;16>t;++t)e.Vb[t]=Ae({},3),e.Wb[t]=Ae({},3)}(e),e.Cc=[],e.sc=[],e}function ue(e,t,n){return e.Cc[272*n+t]}function de(e,t){for(var n=0;t>n;++n)ae(e,n,e.rb,e.Cc,272*n),e.sc[n]=e.rb}function he(e,t,i){var s,r;if(null==e.V||e.u!=i||e.I!=t)for(e.I=t,e.qc=(1<<t)-1,e.u=i,r=1<<e.u+e.I,e.V=n(r),s=0;r>s;++s)e.V[s]=ge({})}function pe(e,t,n){return e.V[((t&e.qc)<<e.u)+((255&n)>>>8-e.u)]}function fe(e,t,n){var i,s,r=1;for(s=7;s>=0;--s)i=n>>s&1,Ue(t,e.tb,r,i),r=r<<1|i}function me(e,t,n,i){var s,r,o,a,l=1,c=1;for(r=7;r>=0;--r)s=i>>r&1,a=c,l&&(a+=1+(o=n>>r&1)<<8,l=o==s),Ue(t,e.tb,a,s),c=c<<1|s}function ge(e){return e.tb=n(768),e}function be(e,t,n,i){var s,r,o=1,a=7,l=0;if(t)for(;a>=0;--a)if(r=n>>a&1,s=i>>a&1,l+=Re(e.tb[(1+r<<8)+o],s),o=o<<1|s,r!=s){--a;break}for(;a>=0;--a)s=i>>a&1,l+=Re(e.tb[o],s),o=o<<1|s;return l}function ye(e){e.j=-1,e.t=0}function ve(e,t){return e.F=t,e.G=n(1<<t),e}function we(e,t){var n,i=1;for(n=e.F;0!=n;--n)i=(i<<1)+Ie(t,e.G,i);return i-(1<<e.F)}function Ae(e,t){return e.F=t,e.G=n(1<<t),e}function xe(e,t,n){var i,s,r=1;for(s=e.F;0!=s;)i=n>>>--s&1,Ue(t,e.G,r,i),r=r<<1|i}function ke(e,t){var n,i,s=1,r=0;for(i=e.F;0!=i;)n=t>>>--i&1,r+=Re(e.G[s],n),s=(s<<1)+n;return r}function Ee(e,t,n){var i,s,r=1;for(s=0;e.F>s;++s)i=1&n,Ue(t,e.G,r,i),r=r<<1|i,n>>=1}function Te(e,t){var n,i,s=1,r=0;for(i=e.F;0!=i;--i)n=1&t,t>>>=1,r+=Re(e.G[s],n),s=s<<1|n;return r}function Se(e,t,n,i,s){var r,o,a=1;for(o=0;i>o;++o)Ue(n,e,t+a,r=1&s),a=a<<1|r,s>>=1}function Ce(e,t,n,i){var s,r,o=1,a=0;for(r=n;0!=r;--r)s=1&i,i>>>=1,a+=Ye[(2047&(e[t+o]-s^-s))>>>2],o=o<<1|s;return a}function Ie(e,t,n){var i,s=t[n];return(-2147483648^(i=(e.E>>>11)*s))>(-2147483648^e.Bb)?(e.E=i,t[n]=s+(2048-s>>>5)<<16>>16,-16777216&e.E||(e.Bb=e.Bb<<8|m(e.Ab),e.E<<=8),0):(e.E-=i,e.Bb-=i,t[n]=s-(s>>>5)<<16>>16,-16777216&e.E||(e.Bb=e.Bb<<8|m(e.Ab),e.E<<=8),1)}function _e(e){for(var t=e.length-1;t>=0;--t)e[t]=1024}function Ue(e,t,n,r){var o,a=t[n];o=(e.E>>>11)*a,r?(e.xc=i(e.xc,s(l(o),[4294967295,0])),e.E-=o,t[n]=a-(a>>>5)<<16>>16):(e.E=o,t[n]=a+(2048-a>>>5)<<16>>16),-16777216&e.E||(e.E<<=8,Oe(e))}function Pe(e,t,n){for(var s=n-1;s>=0;--s)e.E>>>=1,1==(t>>>s&1)&&(e.xc=i(e.xc,l(e.E))),-16777216&e.E||(e.E<<=8,Oe(e))}function Ne(e){return i(i(l(e.Jb),e.mc),[4,0])}function Oe(e){var t,n=c(function(e,t){var n;return n=h(e,t&=63),0>e[1]&&(n=i(n,d([2,0],63-t))),n}(e.xc,32));if(0!=n||r(e.xc,[4278190080,0])<0){e.mc=i(e.mc,l(e.Jb)),t=e.Oc;do{v(e.Ab,t+n),t=255}while(0!=--e.Jb);e.Oc=c(e.xc)>>>24}++e.Jb,e.xc=d(s(e.xc,[16777215,0]),8)}function Re(e,t){return Ye[(2047&(e-t^-t))>>>2]}function Le(e){for(var t,n,i,s=0,r=0,o=e.length,a=[],l=[];o>s;++s,++r){if(128&(t=255&e[s]))if(192==(224&t)){if(s+1>=o)return e;if(128!=(192&(n=255&e[++s])))return e;l[r]=(31&t)<<6|63&n}else{if(224!=(240&t))return e;if(s+2>=o)return e;if(128!=(192&(n=255&e[++s])))return e;if(128!=(192&(i=255&e[++s])))return e;l[r]=(15&t)<<12|(63&n)<<6|63&i}else{if(!t)return e;l[r]=t}16383==r&&(a.push(String.fromCharCode.apply(String,l)),r=-1)}return r>0&&(l.length=r,a.push(String.fromCharCode.apply(String,l))),a.join("")}function Me(e){var t,n,i,s=[],r=0,o=e.length;if("object"==typeof e)return e;for(function(e,t,n,i,s){var r;for(r=t;n>r;++r)i[s++]=e.charCodeAt(r)}(e,0,o,s,0),i=0;o>i;++i)(t=s[i])>=1&&127>=t?++r:r+=!t||t>=128&&2047>=t?2:3;for(n=[],r=0,i=0;o>i;++i)(t=s[i])>=1&&127>=t?n[r++]=t<<24>>24:!t||t>=128&&2047>=t?(n[r++]=(192|t>>6&31)<<24>>24,n[r++]=(128|63&t)<<24>>24):(n[r++]=(224|t>>12&15)<<24>>24,n[r++]=(128|t>>6&63)<<24>>24,n[r++]=(128|63&t)<<24>>24);return n}function De(e){return e[1]+e[0]}var Fe=1,Be=2,$e=3,je="function"==typeof setImmediate?setImmediate:setTimeout,Ve=4294967296,qe=[4294967295,-Ve],He=[0,-0x8000000000000000],ze=[0,0],Ge=[1,0],We=function(){var e,t,n,i=[];for(e=0;256>e;++e){for(n=e,t=0;8>t;++t)0!=(1&n)?n=n>>>1^-306674912:n>>>=1;i[e]=n}return i}(),Je=function(){var e,t,n,i=2,s=[0,1];for(n=2;22>n;++n)for(t=1<<(n>>1)-1,e=0;t>e;++e,++i)s[i]=n<<24>>24;return s}(),Ye=function(){var e,t,n,i=[];for(t=8;t>=0;--t)for(e=1<<9-t,n=1<<9-t-1;e>n;++n)i[n]=(t<<6)+(e-n<<6>>>9-t-1);return i}(),Ke=function(){var e=[{s:16,f:64,m:0},{s:20,f:64,m:0},{s:19,f:64,m:1},{s:20,f:64,m:1},{s:21,f:128,m:1},{s:22,f:128,m:1},{s:23,f:128,m:1},{s:24,f:255,m:1},{s:25,f:255,m:1}];return function(t){return e[t-1]||e[6]}}();return"undefined"==typeof onmessage||"undefined"!=typeof window&&void 0!==window.document||(onmessage=function(t){t&&t.gc&&(t.gc.action==Be?e.decompress(t.gc.gc,t.gc.cbn):t.gc.action==Fe&&e.compress(t.gc.gc,t.gc.Rc,t.gc.cbn))}),{compress:function(e,n,i,s){var r,o,a={},l=void 0===i&&void 0===s;if("function"!=typeof i&&(o=i,i=s=0),s=s||function(e){return void 0!==o?t(e,o):void 0},i=i||function(e,t){return void 0!==o?postMessage({action:Fe,cbn:o,result:e,error:t}):void 0},l){for(a.c=k({},Me(e),Ke(n));$(a.c.yb););return y(a.c.Nb)}try{a.c=k({},Me(e),Ke(n)),s(0)}catch(e){return i(null,e)}je((function e(){try{for(var t,n=(new Date).getTime();$(a.c.yb);)if(r=De(a.c.yb.Pb)/De(a.c.Tb),(new Date).getTime()-n>200)return s(r),je(e,0),0;s(1),t=y(a.c.Nb),je(i.bind(null,t),0)}catch(e){i(null,e)}}),0)},decompress:function(e,n,i){var s,r,o,a,l={},c=void 0===n&&void 0===i;if("function"!=typeof n&&(r=n,n=i=0),i=i||function(e){return void 0!==r?t(o?e:-1,r):void 0},n=n||function(e,t){return void 0!==r?postMessage({action:Be,cbn:r,result:e,error:t}):void 0},c){for(l.d=T({},e);$(l.d.yb););return Le(y(l.d.Nb))}try{l.d=T({},e),a=De(l.d.Tb),o=a>-1,i(0)}catch(e){return n(null,e)}je((function e(){try{for(var t,r=0,c=(new Date).getTime();$(l.d.yb);)if(++r%1e3==0&&(new Date).getTime()-c>200)return o&&(s=De(l.d.yb.Z.g)/a,i(s)),je(e,0),0;i(1),t=Le(y(l.d.Nb)),je(n.bind(null,t),0)}catch(e){n(null,e)}}),0)}}}(),pxt,pxt,pxt,pxt,pxt,pxt,ts;this.LZMA=this.LZMA_WORKER=e,function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).DOMPurify=t()}(this,(function(){"use strict";var e=Object.hasOwnProperty,t=Object.setPrototypeOf,n=Object.isFrozen,i=Object.keys,s=Object.freeze,r=Object.seal,o=Object.create,a="undefined"!=typeof Reflect&&Reflect,l=a.apply,c=a.construct;l||(l=function(e,t,n){return e.apply(t,n)}),s||(s=function(e){return e}),r||(r=function(e){return e}),c||(c=function(e,t){return new(Function.prototype.bind.apply(e,[null].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(t))))});var u=E(Array.prototype.forEach),d=E(Array.prototype.indexOf),h=E(Array.prototype.join),p=E(Array.prototype.pop),f=E(Array.prototype.push),m=E(Array.prototype.slice),g=E(String.prototype.toLowerCase),b=E(String.prototype.match),y=E(String.prototype.replace),v=E(String.prototype.indexOf),w=E(String.prototype.trim),A=E(RegExp.prototype.test),x=T(RegExp),k=T(TypeError);function E(e){return function(t){for(var n=arguments.length,i=Array(n>1?n-1:0),s=1;s<n;s++)i[s-1]=arguments[s];return l(e,t,i)}}function T(e){return function(){for(var t=arguments.length,n=Array(t),i=0;i<t;i++)n[i]=arguments[i];return c(e,n)}}function S(e,i){t&&t(e,null);for(var s=i.length;s--;){var r=i[s];if("string"==typeof r){var o=g(r);o!==r&&(n(i)||(i[s]=o),r=o)}e[r]=!0}return e}function C(t){var n=o(null),i=void 0;for(i in t)l(e,t,[i])&&(n[i]=t[i]);return n}var I=s(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),_=s(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","audio","canvas","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","video","view","vkern"]),U=s(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),P=s(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),N=s(["#text"]),O=s(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns"]),R=s(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","targetx","targety","transform","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),L=s(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),M=s(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),D=r(/\{\{[\s\S]*|[\s\S]*\}\}/gm),F=r(/<%[\s\S]*|[\s\S]*%>/gm),B=r(/^data-[\-\w.\u00B7-\uFFFF]/),$=r(/^aria-[\-\w]+$/),j=r(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),V=r(/^(?:\w+script|data):/i),q=r(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),H="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function z(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var G=function(){return"undefined"==typeof window?null:window},W=function(e,t){if("object"!==(void 0===e?"undefined":H(e))||"function"!=typeof e.createPolicy)return null;var n=null;t.currentScript&&t.currentScript.hasAttribute("data-tt-policy-suffix")&&(n=t.currentScript.getAttribute("data-tt-policy-suffix"));var i="dompurify"+(n?"#"+n:"");try{return e.createPolicy(i,{createHTML:function(e){return e}})}catch(e){return console.warn("TrustedTypes policy "+i+" could not be created."),null}};return function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:G(),n=function(t){return e(t)};if(n.version="2.0.17",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;var r=t.document,o=!1,a=t.document,l=t.DocumentFragment,c=t.HTMLTemplateElement,E=t.Node,T=t.NodeFilter,J=t.NamedNodeMap,Y=void 0===J?t.NamedNodeMap||t.MozNamedAttrMap:J,K=t.Text,X=t.Comment,Q=t.DOMParser,Z=t.trustedTypes;if("function"==typeof c){var ee=a.createElement("template");ee.content&&ee.content.ownerDocument&&(a=ee.content.ownerDocument)}var te=W(Z,r),ne=te&&Le?te.createHTML(""):"",ie=a,se=ie.implementation,re=ie.createNodeIterator,oe=ie.getElementsByTagName,ae=ie.createDocumentFragment,le=r.importNode,ce={};try{ce=C(a).documentMode?a.documentMode:{}}catch(e){}var ue={};n.isSupported=se&&void 0!==se.createHTMLDocument&&9!==ce;var de=D,he=F,pe=B,fe=$,me=V,ge=q,be=j,ye=null,ve=S({},[].concat(z(I),z(_),z(U),z(P),z(N))),we=null,Ae=S({},[].concat(z(O),z(R),z(L),z(M))),xe=null,ke=null,Ee=!0,Te=!0,Se=!1,Ce=!1,Ie=!1,_e=!1,Ue=!1,Pe=!1,Ne=!1,Oe=!1,Re=!1,Le=!1,Me=!0,De=!0,Fe=!1,Be={},$e=S({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","plaintext","script","style","svg","template","thead","title","video","xmp"]),je=null,Ve=S({},["audio","video","img","source","image","track"]),qe=null,He=S({},["alt","class","for","id","label","name","pattern","placeholder","summary","title","value","style","xmlns"]),ze=null,Ge=a.createElement("form"),We=function(e){ze&&ze===e||(e&&"object"===(void 0===e?"undefined":H(e))||(e={}),e=C(e),ye="ALLOWED_TAGS"in e?S({},e.ALLOWED_TAGS):ve,we="ALLOWED_ATTR"in e?S({},e.ALLOWED_ATTR):Ae,qe="ADD_URI_SAFE_ATTR"in e?S(C(He),e.ADD_URI_SAFE_ATTR):He,je="ADD_DATA_URI_TAGS"in e?S(C(Ve),e.ADD_DATA_URI_TAGS):Ve,xe="FORBID_TAGS"in e?S({},e.FORBID_TAGS):{},ke="FORBID_ATTR"in e?S({},e.FORBID_ATTR):{},Be="USE_PROFILES"in e&&e.USE_PROFILES,Ee=!1!==e.ALLOW_ARIA_ATTR,Te=!1!==e.ALLOW_DATA_ATTR,Se=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Ce=e.SAFE_FOR_JQUERY||!1,Ie=e.SAFE_FOR_TEMPLATES||!1,_e=e.WHOLE_DOCUMENT||!1,Ne=e.RETURN_DOM||!1,Oe=e.RETURN_DOM_FRAGMENT||!1,Re=e.RETURN_DOM_IMPORT||!1,Le=e.RETURN_TRUSTED_TYPE||!1,Pe=e.FORCE_BODY||!1,Me=!1!==e.SANITIZE_DOM,De=!1!==e.KEEP_CONTENT,Fe=e.IN_PLACE||!1,be=e.ALLOWED_URI_REGEXP||be,Ie&&(Te=!1),Oe&&(Ne=!0),Be&&(ye=S({},[].concat(z(N))),we=[],!0===Be.html&&(S(ye,I),S(we,O)),!0===Be.svg&&(S(ye,_),S(we,R),S(we,M)),!0===Be.svgFilters&&(S(ye,U),S(we,R),S(we,M)),!0===Be.mathMl&&(S(ye,P),S(we,L),S(we,M))),e.ADD_TAGS&&(ye===ve&&(ye=C(ye)),S(ye,e.ADD_TAGS)),e.ADD_ATTR&&(we===Ae&&(we=C(we)),S(we,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&S(qe,e.ADD_URI_SAFE_ATTR),De&&(ye["#text"]=!0),_e&&S(ye,["html","head","body"]),ye.table&&(S(ye,["tbody"]),delete xe.tbody),s&&s(e),ze=e)},Je=function(e){f(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){e.outerHTML=ne}},Ye=function(e,t){try{f(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){f(n.removed,{attribute:null,from:t})}t.removeAttribute(e)},Ke=function(e){var t=void 0,n=void 0;if(Pe)e="<remove></remove>"+e;else{var i=b(e,/^[\r\n\t ]+/);n=i&&i[0]}var s=te?te.createHTML(e):e;try{t=(new Q).parseFromString(s,"text/html")}catch(e){}if(o&&S(xe,["title"]),!t||!t.documentElement){var r=(t=se.createHTMLDocument("")).body;r.parentNode.removeChild(r.parentNode.firstElementChild),r.outerHTML=s}return e&&n&&t.body.insertBefore(a.createTextNode(n),t.body.childNodes[0]||null),oe.call(t,_e?"html":"body")[0]};n.isSupported&&function(){try{var e=Ke("<x/><title>&lt;/title&gt;&lt;img&gt;");A(/<\/title/,e.querySelector("title").innerHTML)&&(o=!0)}catch(e){}}();var Xe=function(e){return re.call(e.ownerDocument||e,e,T.SHOW_ELEMENT|T.SHOW_COMMENT|T.SHOW_TEXT,(function(){return T.FILTER_ACCEPT}),!1)},Qe=function(e){return!(e instanceof K||e instanceof X||"string"==typeof e.nodeName&&"string"==typeof e.textContent&&"function"==typeof e.removeChild&&e.attributes instanceof Y&&"function"==typeof e.removeAttribute&&"function"==typeof e.setAttribute&&"string"==typeof e.namespaceURI)},Ze=function(e){return"object"===(void 0===E?"undefined":H(E))?e instanceof E:e&&"object"===(void 0===e?"undefined":H(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},et=function(e,t,i){ue[e]&&u(ue[e],(function(e){e.call(n,t,i,ze)}))},tt=function(e){var t=void 0;if(et("beforeSanitizeElements",e,null),Qe(e))return Je(e),!0;if(b(e.nodeName,/[\u0080-\uFFFF]/))return Je(e),!0;var i=g(e.nodeName);if(et("uponSanitizeElement",e,{tagName:i,allowedTags:ye}),("svg"===i||"math"===i)&&0!==e.querySelectorAll("p, br, form, table").length)return Je(e),!0;if(!ye[i]||xe[i]){if(De&&!$e[i]&&"function"==typeof e.insertAdjacentHTML)try{var s=e.innerHTML;e.insertAdjacentHTML("AfterEnd",te?te.createHTML(s):s)}catch(e){}return Je(e),!0}return"noscript"===i&&A(/<\/noscript/i,e.innerHTML)||"noembed"===i&&A(/<\/noembed/i,e.innerHTML)?(Je(e),!0):(!Ce||Ze(e.firstElementChild)||Ze(e.content)&&Ze(e.content.firstElementChild)||!A(/</g,e.textContent)||(f(n.removed,{element:e.cloneNode()}),e.innerHTML?e.innerHTML=y(e.innerHTML,/</g,"&lt;"):e.innerHTML=y(e.textContent,/</g,"&lt;")),Ie&&3===e.nodeType&&(t=e.textContent,t=y(t,de," "),t=y(t,he," "),e.textContent!==t&&(f(n.removed,{element:e.cloneNode()}),e.textContent=t)),et("afterSanitizeElements",e,null),!1)},nt=function(e,t,n){if(Me&&("id"===t||"name"===t)&&(n in a||n in Ge))return!1;if(Te&&A(pe,t));else if(Ee&&A(fe,t));else{if(!we[t]||ke[t])return!1;if(qe[t]);else if(A(be,y(n,ge,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==v(n,"data:")||!je[e])if(Se&&!A(me,y(n,ge,"")));else if(n)return!1}return!0},it=function(e){var t=void 0,s=void 0,r=void 0,o=void 0,a=void 0;et("beforeSanitizeAttributes",e,null);var l=e.attributes;if(l){var c={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:we};for(a=l.length;a--;){var u=t=l[a],f=u.name,b=u.namespaceURI;if(s=w(t.value),r=g(f),c.attrName=r,c.attrValue=s,c.keepAttr=!0,c.forceKeepAttr=void 0,et("uponSanitizeAttribute",e,c),s=c.attrValue,!c.forceKeepAttr){if("name"===r&&"IMG"===e.nodeName&&l.id)o=l.id,l=m(l,[]),Ye("id",e),Ye(f,e),d(l,o)>a&&e.setAttribute("id",o.value);else{if("INPUT"===e.nodeName&&"type"===r&&"file"===s&&c.keepAttr&&(we[r]||!ke[r]))continue;"id"===f&&e.setAttribute(f,""),Ye(f,e)}if(c.keepAttr)if(Ce&&A(/\/>/i,s))Ye(f,e);else if(A(/svg|math/i,e.namespaceURI)&&A(x("</("+h(i($e),"|")+")","i"),s))Ye(f,e);else{Ie&&(s=y(s,de," "),s=y(s,he," "));var v=e.nodeName.toLowerCase();if(nt(v,r,s))try{b?e.setAttributeNS(b,f,s):e.setAttribute(f,s),p(n.removed)}catch(e){}}}}et("afterSanitizeAttributes",e,null)}},st=function e(t){var n=void 0,i=Xe(t);for(et("beforeSanitizeShadowDOM",t,null);n=i.nextNode();)et("uponSanitizeShadowNode",n,null),tt(n)||(n.content instanceof l&&e(n.content),it(n));et("afterSanitizeShadowDOM",t,null)};return n.sanitize=function(e,i){var s=void 0,o=void 0,a=void 0,c=void 0,u=void 0;if(e||(e="\x3c!--\x3e"),"string"!=typeof e&&!Ze(e)){if("function"!=typeof e.toString)throw k("toString is not a function");if("string"!=typeof(e=e.toString()))throw k("dirty is not a string, aborting")}if(!n.isSupported){if("object"===H(t.toStaticHTML)||"function"==typeof t.toStaticHTML){if("string"==typeof e)return t.toStaticHTML(e);if(Ze(e))return t.toStaticHTML(e.outerHTML)}return e}if(Ue||We(i),n.removed=[],"string"==typeof e&&(Fe=!1),Fe);else if(e instanceof E)1===(o=(s=Ke("\x3c!--\x3e")).ownerDocument.importNode(e,!0)).nodeType&&"BODY"===o.nodeName||"HTML"===o.nodeName?s=o:s.appendChild(o);else{if(!Ne&&!Ie&&!_e&&-1===e.indexOf("<"))return te&&Le?te.createHTML(e):e;if(!(s=Ke(e)))return Ne?null:ne}s&&Pe&&Je(s.firstChild);for(var d=Xe(Fe?e:s);a=d.nextNode();)3===a.nodeType&&a===c||tt(a)||(a.content instanceof l&&st(a.content),it(a),c=a);if(c=null,Fe)return e;if(Ne){if(Oe)for(u=ae.call(s.ownerDocument);s.firstChild;)u.appendChild(s.firstChild);else u=s;return Re&&(u=le.call(r,u,!0)),u}var h=_e?s.outerHTML:s.innerHTML;return Ie&&(h=y(h,de," "),h=y(h,he," ")),te&&Le?te.createHTML(h):h},n.setConfig=function(e){We(e),Ue=!0},n.clearConfig=function(){ze=null,Ue=!1},n.isValidAttribute=function(e,t,n){ze||We({});var i=g(e),s=g(t);return nt(i,s,n)},n.addHook=function(e,t){"function"==typeof t&&(ue[e]=ue[e]||[],f(ue[e],t))},n.removeHook=function(e){ue[e]&&p(ue[e])},n.removeHooks=function(e){ue[e]&&(ue[e]=[])},n.removeAllHooks=function(){ue={}},n}()})),pxt||(pxt={}),function(e){!function(t){const n={},i={};let s,r=!1;function o(e){Object.keys(e).forEach((t=>{"string"==typeof e[t]?n[t]=e[t]:i[t]=e[t]}))}!function(e){e[e.Off=0]="Off",e[e.Short=1]="Short",e[e.Verbose=2]="Verbose"}(s=t.ConsoleTickOptions||(t.ConsoleTickOptions={})),t.consoleTicks=s.Off,t.addDefaultProperties=o,t.enable=function(a){if(!e.aiTrackException||!e.aiTrackEvent||r)return;r=!0,"string"==typeof a&&0!=a.length||(a="en"),o({lang:a}),e.debug("setting up app insights");const l=e.tickEvent;e.tickEvent=function(r,o,a){if(o=e.Util.cleanData(o),t.consoleTicks!=s.Off){const n=t.consoleTicks==s.Short?"":`${(new Date).toLocaleTimeString(void 0,{hour12:!1})} - Tick - `,i=`${r} ${o?JSON.stringify(o):"<no data>"} ${a?JSON.stringify(a):"<no opts>"}`;e.log(n+i)}if(l&&l(r,o,a),(null==a?void 0:a.interactiveConsent)&&e.setInteractiveConsent(!0),o){const t=Object.assign({},n),s=Object.assign({},i);Object.keys(o).forEach((e=>{"string"==typeof o[e]?t[e]=o[e]:"number"==typeof o[e]?s[e]=o[e]:t[e]=JSON.stringify(o[e]||"")})),e.aiTrackEvent(r,t,s)}else e.aiTrackEvent(r)};const c=e.reportException;e.reportException=function(t,n){n=e.Util.cleanData(n),c&&c(t,n);const i={target:e.appTarget.id,version:e.appTarget.versions.target};n&&e.Util.jsonMergeFrom(i,n),e.aiTrackException(t,"exception",i)};const u=e.reportError;e.reportError=function(t,n,i){i=e.Util.cleanData(i),u&&u(t,n,i);try{throw n}catch(s){const r={target:e.appTarget.id,version:e.appTarget.versions.target,category:t,message:n};i&&e.Util.jsonMergeFrom(r,i),e.aiTrackException(s,"error",r)}}},t.trackPerformanceReport=function(){if(e.perf.perfReportLogged)return;const t=e.perf.report();if(t){const{durations:n,milestones:i}=t;e.tickEvent("performance.milestones",i),e.tickEvent("performance.durations",n)}}}(e.analytics||(e.analytics={}))}(pxt||(pxt={})),pxt||(pxt={}),function(e){!function(e){let t,n,i,s=0,r=!1;function o(){return t||(t=function(){if(window.AudioContext=window.AudioContext||window.webkitAudioContext,window.AudioContext)try{return new window.AudioContext}catch(e){}return}()),t}function a(){t&&(i.gain.setTargetAtTime(0,t.currentTime,.015),s=0)}e.mute=function(e){t&&(r=e,a(),e&&n&&(n.disconnect(),i.disconnect(),n=void 0,i=void 0))},e.stop=a,e.frequency=function(){return s},e.tone=function(e){if(r)return;if(isNaN(e)||e<0)return;s=e;let a=o();if(a)try{n||(n=a.createOscillator(),n.type="triangle",i=a.createGain(),i.gain.value=0,i.connect(a.destination),n.connect(i),n.start(0)),n.frequency.linearRampToValueAtTime(e,t.currentTime),i.gain.setTargetAtTime(.2,t.currentTime,.015)}catch(e){return void(n=void 0)}}}(e.AudioContextManager||(e.AudioContextManager={}))}(pxt||(pxt={})),function(e){!function(t){const n="auth",i="csrf-token",s="login-state",r="user-state",o="interactive-login-until";let a,l=!1;t.DEFAULT_USER_PREFERENCES=()=>({language:e.appTarget.appTheme.defaultLocale,highContrast:!1,accessibleBlocks:!1,colorThemeIds:{},reader:"",skillmap:{mapProgress:{},completedTags:{}},email:!1}),t.client=function(){if(!l)return a};let c=0,u=0;async function d(t,i){return i?await e.storage.shared.setAsync(n,t,i):await e.storage.shared.delAsync(n,t)}async function h(t){try{return await e.storage.shared.getAsync(n,t)}catch(e){return}}async function p(){const e=await h(i);return t.cachedHasAuthToken=!!e,e}async function f(e){return t.cachedHasAuthToken=!!e,await d(i,e)}async function m(){return!!await p()}async function g(){return t.cachedHasAuthToken=!1,await d(i,void 0)}async function b(){let i;try{i=await e.storage.shared.getAsync(n,r)}catch(e){i={}}return t.cachedUserState=i,i}async function y(i){return t.cachedUserState=Object.assign({},i),await e.storage.shared.setAsync(n,r,i)}async function v(){return t.cachedUserState=void 0,await e.storage.shared.delAsync(n,r)}async function w(t){var n;const i={};return(t=t||await p())&&(i.authorization=`mkcd ${t}`),i["x-pxt-target"]=null===(n=e.appTarget)||void 0===n?void 0:n.id,i}t.cachedHasAuthToken=!1,t.getAuthTokenAsync=p,t.hasAuthTokenAsync=m,t.getUserStateAsync=b,t.getAuthHeadersAsync=w;class A{constructor(){this.initialUserPreferences_=void 0,this.initialAuthCheck_=void 0,this.patchQueue=[],a=this}async initAsync(){const e=await b();this.setUserProfileAsync(null==e?void 0:e.profile),this.setUserPreferencesAsync(null==e?void 0:e.preferences)}async loginAsync(t,i,r){if(!E()||!function(e){return k().filter((t=>t.id===e)).length>0}(t))return;r=null!=r?r:x,this.clearAuthStateAsync();const a={key:(Math.PI*Math.random()).toString(36).slice(2),callbackState:r,callbackPathname:window.location.pathname,idp:t,persistent:i},l=(parseInt(await h(o))||0)>Date.now(),c=e.Util.stringifyQueryString("/api/auth/login",{response_type:"token",provider:t,persistent:i,redirect_uri:`${window.location.origin}${window.location.pathname}?authcallback=1&state=${a.key}`,prompt:l?"select_account":"silent"}),u=await this.apiAsync(c);if(u.success)a.authCodeVerifier=u.resp.authCodeVerifier,await e.storage.shared.setAsync(n,s,a),e.tickEvent("auth.login.start",{provider:t}),window.location.href=u.resp.loginUrl;else try{await this.onSignInFailed()}catch(e){}}async logoutAsync(e){if(E()){await A.staticLogoutAsync(e);try{await this.onStateCleared()}catch(e){}try{await this.onSignedOut()}catch(e){}}}static async staticLogoutAsync(t){if(!E())return;e.tickEvent("auth.logout"),await d(o,(Date.now()+6e4).toString()),t=t?t.startsWith("#")?t:`#${t}`:"";const n=`${window.location.origin}${window.location.pathname}${window.location.search}${t}`;let i="";try{const t=e.Util.stringifyQueryString("/api/auth/logout",{redirect_uri:n,authcallback:"1"}),s=await A.staticApiAsync(t);s.success&&(i=s.resp.logoutUrl)}catch(e){}await g(),await v(),e.BrowserUtils.hasWindow()&&(i?window.location.href=i:(window.location.href=n,location.reload()))}async deleteProfileAsync(){var t;if(!await this.loggedInAsync())return;const n=await b(),i=null===(t=null==n?void 0:n.profile)||void 0===t?void 0:t.id,s=await this.apiAsync("/api/user",null,"DELETE");if(s.err)try{await this.onApiError(s.err)}catch(e){}else try{await this.clearAuthStateAsync();try{await this.onProfileDeleted(i)}catch(e){}}finally{e.tickEvent("auth.profile.deleted")}}async initialUserPreferencesAsync(){if(await this.loggedInAsync())return this.initialUserPreferences_||(this.initialUserPreferences_=this.fetchUserPreferencesAsync()),this.initialUserPreferences_}async userProfileAsync(){if(!await this.loggedInAsync())return;const e=await b();return Object.assign({},e.profile)}async userPreferencesAsync(){const e=await b();return Object.assign({},e.preferences)}async authCheckAsync(){var e;if(!E())return;if(!await m())return;const t=await b();return(null===(e=null==t?void 0:t.profile)||void 0===e?void 0:e.id)?this.initialAuthCheck_||(this.initialAuthCheck_=Promise.resolve(t.profile)):this.initialAuthCheck_||(this.initialAuthCheck_=this.fetchUserAsync()),this.initialAuthCheck_}async loggedInAsync(){return!!await this.authCheckAsync()&&await this.hasUserIdAsync()}async updateUserProfileAsync(e){if(!await this.loggedInAsync())return!1;const t=await b(),n=await this.apiAsync("/api/user/profile",{id:t.profile.id,username:e.username,avatarUrl:e.avatarUrl});return n.success&&await this.setUserProfileAsync(n.resp),n.success}async patchUserPreferencesAsync(n,i={}){const s=async()=>({success:!0,res:await this.userPreferencesAsync()});if(!(n=(n=Array.isArray(n)?n:[n]).filter((e=>!!e))).length)return await s();const r=(t,n,i)=>{const s=e.U.deepCopy(t);ts.pxtc.jsonPatch.patchInPlace(s,n);let r=ts.pxtc.jsonPatch.diff(t,s);return r.length&&i&&(r=r.filter(i)),r},o=await this.userPreferencesAsync(),a=r(o,n,i.filter);if(!a.length)return await s();if(ts.pxtc.jsonPatch.patchInPlace(o,a),await this.setUserPreferencesAsync(o),!await this.loggedInAsync())return await s();this.patchQueue.push({ops:n,filter:i.filter}),clearTimeout(c);const l=async()=>{if(u=0,!this.patchQueue.length)return await s();const n=await this.apiAsync("/api/user/preferences");if(!n.success)return e.reportError("identity","failed to fetch preferences for patch",n),{success:!1,res:void 0};const i=e.U.deepCopy(n.resp)||t.DEFAULT_USER_PREFERENCES(),o=this.patchQueue;this.patchQueue=[],o.forEach((e=>{const t=r(i,e.ops,e.filter);ts.pxtc.jsonPatch.patchInPlace(i,t)}));const a=pxtc.jsonPatch.diff(n.resp,i),l=await this.apiAsync("/api/user/preferences",a,"PATCH");return l.success?this.setUserPreferencesAsync(l.resp):e.reportError("identity","failed to patch preferences",l),{success:l.success,res:l.resp}};return i.immediate?await l():(u||(u=e.U.now()),1e4<e.U.now()-u?await l():(c=setTimeout(l,1e3),{success:!1,res:void 0}))}async hasUserIdAsync(){var e;if(!E())return!1;if(!await m())return;const t=await b();return!!(null===(e=null==t?void 0:t.profile)||void 0===e?void 0:e.id)}async fetchUserAsync(){var e;if(!E())return;if(!await m())return;const t=await b();if(null===(e=null==t?void 0:t.profile)||void 0===e?void 0:e.id)return t.profile;const n=await this.apiAsync("/api/user/profile");if(n.success){const e=n.resp;return await this.setUserProfileAsync(e),e}}async setUserProfileAsync(e){const t=await this.hasUserIdAsync();await this.transformUserProfileAsync(e);const n=await this.hasUserIdAsync();try{await this.onUserProfileChanged()}catch(e){}if(n&&!t)try{await this.onSignedIn()}catch(e){}else if(!n&&t)try{await this.onSignedOut()}catch(e){}}async setUserPreferencesAsync(e){var n;const i=await b(),s=null!==(n=null==i?void 0:i.preferences)&&void 0!==n?n:t.DEFAULT_USER_PREFERENCES(),r=ts.pxtc.jsonPatch.diff(s,e),o=await this.transformUserPreferencesAsync(Object.assign(Object.assign({},s),e