@naanlang/naan 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +3 -3
  3. package/bin/index.js +2 -2
  4. package/dist/env_web.js +149 -20
  5. package/dist/naan.min.js +5 -5
  6. package/frameworks/browser/sworker.js +309 -91
  7. package/frameworks/browser/terminals.nlg +22 -9
  8. package/frameworks/browser/workers.nlg +19 -11
  9. package/frameworks/client/apiclient.nlg +17 -4
  10. package/frameworks/client/psm_client.nlg +116 -53
  11. package/frameworks/common/common.nlg +12 -2
  12. package/frameworks/node/apiserver.nlg +25 -13
  13. package/frameworks/node/filesystem.nlg +173 -30
  14. package/frameworks/node/psm_server.nlg +95 -32
  15. package/frameworks/project/build.nlg +40 -23
  16. package/frameworks/project/projects.nlg +47 -26
  17. package/frameworks/running/debugnub.nlg +2 -5
  18. package/frameworks/storage/csv.nlg +120 -0
  19. package/frameworks/storage/dbt_pouch.nlg +41 -25
  20. package/frameworks/storage/psm.nlg +108 -28
  21. package/frameworks/storage/psm_dbtables.nlg +7 -3
  22. package/frameworks/storage/resources.nlg +30 -2
  23. package/lib/browser/env_web.js +147 -18
  24. package/lib/browser/env_webworker.js +1 -1
  25. package/lib/browser/require.js +1 -1
  26. package/lib/core/naanlib.js +5 -5
  27. package/package.json +1 -1
  28. package/plugins/serviceAws/aws_cloudwatchlogs.nlg +1 -1
  29. package/plugins/serviceAws/aws_dynamo.nlg +625 -141
  30. package/plugins/serviceAws/aws_dynextra.nlg +294 -0
  31. package/plugins/serviceAws/dbt_aws.nlg +31 -11
  32. package/plugins/serviceAws/psm_aws.nlg +42 -26
  33. package/plugins/serviceAws/serviceAws.nlg +1 -0
  34. package/plugins/serviceGitHub/psm_github.nlg +41 -25
  35. package/plugins/serviceGitLab/psm_gitlab.nlg +41 -25
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * naan.min.js
3
3
  *
4
- * Naan for NPM version 1.0.2-1 is released under the MIT License:
4
+ * Naan for NPM version 1.0.3-1 is released under the MIT License:
5
5
  *
6
6
  * Copyright (c) 2017-2022 Zulch Laboratories, Inc.
7
7
  *
@@ -31,16 +31,16 @@
31
31
  !function(n){n.LeemonBigIntegerLib=function(){for(var s=0,c=0,v=c+1,g="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_=!@#$%^&*()[]{}|;:,.<>/?`~ \\'\"+-",s=0;1<<s<1<<s+1;s++);v=(c=(1<<(s>>=1))-1)+1;var l=rn(1,1,1),a=new Array(0),e=a,i=a,u=a,r=a,f=a,h=a,d=a,M=a,w=a,o=a,y=a,A=a,b=a,m=a,I=a,k=a,p=a,x=a,E=a,P=a,S=a,B=a,L=a,N=a,R=a,T=a,_=a,q=a,O=a,U=a,z=a,C=a,D=a;function G(n){for(var t,r,e=new Array(n),f=0;f<n;f++)e[f]=0;for(e[0]=2,t=0;e[t]<n;){for(f=e[t]*e[t];f<n;f+=e[t])e[f]=1;for(e[++t]=e[t-1]+1;e[t]<n&&e[e[t]];e[t]++);}for(r=new Array(t),f=0;f<t;f++)r[f]=e[f];return r}function Y(n,t){return o.length!=n.length&&(o=on(n),y=on(n),A=on(n)),gn(A,t),Z(n,A)}function Z(n,t){var r,e,f,h;for(o.length!=n.length&&(o=on(n),y=on(n),A=on(n)),ln(A,t),ln(y,n),ln(o,n),un(y,-1),un(o,-1),r=f=0;r<y.length;r++)for(e=1;e<c;e<<=1)n[r]&e?(h=f<y.length+s?f:0,r=y.length,e=c):f++;if(h&&an(y,h),Pn(A,y,n),!en(A,1)&&!fn(A,o)){for(e=1;e<=h-1&&!fn(A,o);){if(pn(A,n),en(A,1))return 0;e++}if(!fn(A,o))return 0}return 1}function j(n){for(var t,r,e=n.length-1;0==n[e]&&0<e;e--);for(t=0,r=n[e];r;r>>=1,t++);return t+=s*e}function F(n,t){t=rn(0,(n.length>t?n.length:t)*s,0);return ln(t,n),t}function t(n,t){var r,e,f=rn(0,n,0);for(0==E.length&&(E=G(3e4)),D.length!=f.length&&(D=on(f));;){for(J(f,n,0),f[0]|=1,r=e=0;r<E.length&&E[r]<=3e4;r++)if(0==tn(f,E[r])&&!en(f,E[r])){e=1;break}for(r=0;r<t&&!e;r++){for(J(D,n,0);!X(f,D);)J(D,n,0);Z(f,D)||(e=1)}if(!e)return f}}function H(n){if(V(n)){for(r=n.length;0<r&&n[r-1]==c;r--);++r}else for(r=n.length;0<r&&!n[r-1];r--);for(var t=F(n,r),r=t.length;0<=--r;)t[r]=~t[r]&c;return An(t,l),t=xn(t,1)}function J(n,t,r){for(var e,f=0;f<n.length;f++)n[f]=0;for(e=Math.floor((t-1)/s)+1,f=0;f<e;f++)n[f]=Math.floor(Math.random()*(1<<s-1));n[e-1]&=(2<<(t-1)%s)-1,1==r&&(n[e-1]|=1<<(t-1)%s)}function K(n,t){var r,e,f,h,o,l,i,g,u;for(M.length!=n.length&&(M=on(n)),u=1;u;){for(u=0,r=1;r<t.length;r++)if(t[r]){u=1;break}if(!u)break;for(r=n.length;!n[r]&&0<=r;r--);for(e=n[r],f=t[r],l=o=0,i=h=1;f+l&&f+i&&(g=Math.floor((e+h)/(f+l)))==Math.floor((e+o)/(f+i));)a=h-g*l,h=l,l=a,a=o-g*i,o=i,i=a,a=e-g*f,e=f,f=a;o?(ln(M,n),Mn(n,t,h,o),Mn(t,M,i,l)):(In(n,t),ln(M,n),ln(n,t),ln(t,M))}if(0!=t[0])for(a=tn(n,t[0]),gn(n,t[0]),t[0]=a;t[0];)n[0]%=t[0],a=n[0],n[0]=t[0],t[0]=a}function Q(n,t){for(var r=1,e=0;;){if(1==n)return r;if(0==n)return 0;if(e-=r*Math.floor(t/n),1==(t%=n))return e;if(0==t)return 0;r-=e*Math.floor(n/t),n%=t}}function V(n){return n[n.length-1]==c}function W(n,t,r){for(var e=n.length,f=t.length,h=e+r<f?e+r:f,o=f-1-r;o<e&&0<=o;o++)if(0<n[o])return 1;for(o=e-1+r;o<f;o++)if(0<t[o])return 0;for(o=h-1;r<=o;o--){if(n[o-r]>t[o])return 1;if(n[o-r]<t[o])return 0}return 0}function X(n,t){for(var r=(n.length<t.length?n:t).length,e=n.length;e<t.length;e++)if(t[e])return 0;for(e=t.length;e<n.length;e++)if(n[e])return 1;for(e=r-1;0<=e;e--){if(n[e]>t[e])return 1;if(n[e]<t[e])return 0}return 0}function $(n,t,r,e){var f,h,o,l,i,g,u,a;for(ln(e,n),h=t.length;0==t[h-1];h--);for(a=t[h-1],u=0;a;u++)a>>=1;for(sn(t,u=s-u),sn(e,u),f=e.length;0==e[f-1]&&h<f;f--);for(gn(r,0);!W(t,e,f-h);)!function(n,t,r){var e,f,h,o;for(h=n.length<r+t.length?n.length:r+t.length,o=n.length,f=0,e=r;e<h;e++)f+=n[e]-t[e-r],n[e]=f&c,f>>=s;for(e=h;f&&e<o;e++)f+=n[e],n[e]=f&c,f>>=s}(e,t,f-h),r[f-h]++;for(o=f-1;h<=o;o--){for(e[o]==t[h-1]?r[o-h]=c:r[o-h]=Math.floor((e[o]*v+e[o-1])/t[h-1]);g=(i=(1<h?t[h-2]:0)*r[o-h])>>s,i&=c,g=(l=g+r[o-h]*t[h-1])>>s,l&=c,g==e[o]?l==e[o-1]?i>(1<o?e[o-2]:0):l>e[o-1]:g>e[o];)r[o-h]--;wn(e,t,-r[o-h],o-h),V(e)&&(function(n,t,r){var e,f,h,o;for(h=n.length<r+t.length?n.length:r+t.length,o=n.length,f=0,e=r;e<h;e++)f+=n[e]+t[e-r],n[e]=f&c,f>>=s;for(e=h;f&&e<o;e++)f+=n[e],n[e]=f&c,f>>=s}(e,t,o-h),r[o-h]--)}an(t,u),an(e,u)}function nn(n){for(var t,r=n.length,e=0,f=0;f<r;f++)(e+=n[f])<(t=0)&&(e+=(t=-(e>>s))*v),n[f]=e&c,e=(e>>s)-t}function tn(n,t){for(var r=0,e=n.length-1;0<=e;e--)r=(r*v+n[e])%t;return r}function rn(n,t,r){t=Math.ceil(t/s)+1;t=t<r?r:t;t=new Array(t);return gn(t,n),t}function en(n,t){var r;if(n[0]!=t)return 0;for(r=1;r<n.length;r++)if(n[r])return 0;return 1}function fn(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)if(n[e]!=t[e])return 0;if(n.length>t.length){for(;e<n.length;e++)if(n[e])return 0}else for(;e<t.length;e++)if(t[e])return 0;return 1}function hn(n){for(var t=0;t<n.length;t++)if(n[t])return 0;return 1}function on(n){var t=new Array(n.length);return ln(t,n),t}function ln(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]=t[e];if(t[t.length-1]==c)for(e=r;e<n.length;e++)n[e]=c;else for(e=r;e<n.length;e++)n[e]=0}function gn(n,t){for(var r=t,e=0;e<n.length;e++)n[e]=r&c,2147483647<r?r/=c+1:r>>=s}function un(n,t){var r,e,f,h;for(n[0]+=t,e=n.length,r=f=0;r<e;r++)if((f+=n[r])<(h=0)&&(f+=(h=-(f>>s))*v),n[r]=f&c,!(f=(f>>s)-h))return}function an(n,t){var r,e=Math.floor(t/s);if(e){for(r=0;r<n.length-e;r++)n[r]=n[r+e];for(;r<n.length;r++)n[r]=0;t%=s}for(r=0;r<n.length-1;r++)n[r]=c&(n[r+1]<<s-t|n[r]>>t);n[r]>>=t}function cn(n){for(var t=0;t<n.length-1;t++)n[t]=c&(n[t+1]<<s-1|n[t]>>1);n[t]=n[t]>>1|n[t]&v>>1}function sn(n,t){var r,e=Math.floor(t/s);if(e){for(r=n.length;e<=r;r--)n[r]=n[r-e];for(;0<=r;r--)n[r]=0;t%=s}if(t){for(r=n.length-1;0<r;r--)n[r]=c&(n[r]<<t|n[r-1]>>s-t);n[r]=c&n[r]<<t}}function vn(n,t){var r,e,f,h;if(t)for(e=n.length,r=f=0;r<e;r++)(f+=n[r]*t)<(h=0)&&(f+=(h=-(f>>s))*v),n[r]=f&c,f=(f>>s)-h}function dn(n,t){for(var r,e=0,f=n.length-1;0<=f;f--)r=e*v+n[f],n[f]=Math.floor(r/t),e=r%t;return e}function Mn(n,t,r,e){for(var f=(n.length<t.length?n:t).length,h=n.length,o=0,l=0;l<f;l++)o+=r*n[l]+e*t[l],n[l]=o&c,o>>=s;for(l=f;l<h;l++)o+=r*n[l],n[l]=o&c,o>>=s}function wn(n,t,r,e){for(var f=n.length<e+t.length?n.length:e+t.length,h=n.length,o=0,l=e;l<f;l++)o+=n[l]+r*t[l-e],n[l]=o&c,o>>=s;for(l=f;o&&l<h;l++)o+=n[l],n[l]=o&c,o>>=s}function yn(n,t){for(var r=(n.length<t.length?n:t).length,e=0,f=0;f<r;f++)e+=n[f]-t[f],n[f]=e&c,e>>=s;for(t[t.length-1]==c&&(e=e<0?0:1),f=r;e&&f<n.length;f++)e+=n[f],n[f]=e&c,e>>=s}function An(n,t){for(var r=(n.length<t.length?n:t).length,e=0,f=0;f<r;f++)e+=n[f]+t[f],n[f]=e&c,e>>=s;for(t[t.length-1]==c&&(e=0<e?0:-1),f=r;e&&f<n.length;f++)e+=n[f],n[f]=e&c,e>>=s}function bn(n){for(var t=n.length,r=0;r<t;r++)n[r]^=c}function mn(n,t){var r;for(e.length!=2*n.length&&(e=new Array(2*n.length)),gn(e,0),r=0;r<t.length;r++)t[r]&&wn(e,n,t[r],r);ln(n,e)}function In(n,t){r.length!=n.length?r=on(n):ln(r,n),f.length!=n.length&&(f=on(n)),$(r,t,f,n)}function kn(n,t,r){var e;for(i.length!=2*n.length&&(i=new Array(2*n.length)),gn(i,0),e=0;e<t.length;e++)t[e]&&wn(i,n,t[e],e);In(i,r),ln(n,i)}function pn(n,t){for(var r,e,f,h,o=n.length;0<o&&!n[o-1];o--);for(h=o>t.length?2*o:2*t.length,i.length!=h&&(i=new Array(h)),gn(i,0),r=0;r<o;r++){for(f=i[2*r]+n[r]*n[r],i[2*r]=f&c,f>>=s,e=r+1;e<o;e++)f=i[r+e]+2*n[r]*n[e]+f,i[r+e]=f&c,f>>=s;i[r+o]=f}In(i,t),ln(n,i)}function xn(n,t){var r;if(n[n.length-1]==c)for(r=n.length;0<r&&n[r-1]==c;r--);else for(r=n.length;0<r&&!n[r-1];r--);return ln(t=new Array(r+t),n),t}function En(n){return ans=on(n),bn(ans),xn(ans,1)}function Pn(n,t,r){var e,f,h,o;if(d.length!=r.length&&(d=on(r)),0!=(1&r[0])){for(gn(d,0),h=r.length;0<h&&!r[h-1];h--);for(o=v-Q(tn(r,v),v),d[h]=1,kn(n,d,r),u.length!=n.length?u=on(n):ln(u,n),e=t.length-1;0<e&!t[e];e--);if(0!=t[e]){for(f=1<<s-1;f&&!(t[e]&f);f>>=1);for(;;){if(!(f>>=1)){if(--e<0)return void Sn(n,l,r,o);f=1<<s-1}Sn(n,n,r,o),f&t[e]&&Sn(n,u,r,o)}}else gn(n,1)}else for(ln(d,n),gn(n,1);!en(t,0);)1&t[0]&&kn(n,d,r),dn(t,2),pn(d,r)}function Sn(n,t,r,e){var f,h,o,l,i,g,u=r.length,a=t.length;for(w.length!=u&&(w=new Array(u)),gn(w,0);0<u&&0==r[u-1];u--);for(;0<a&&0==t[a-1];a--);for(g=w.length-1,f=0;f<u;f++){for(o=(i=w[0]+n[f]*t[0])+(l=(i&c)*e&c)*r[0]>>s,i=n[f],h=1;h<a-4;)o+=w[h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,h++;for(;h<a;)o+=w[h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,h++;for(;h<u-4;)o+=w[h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,h++;for(;h<u;)o+=w[h]+l*r[h],w[h-1]=o&c,o>>=s,h++;for(;h<g;)o+=w[h],w[h-1]=o&c,o>>=s,h++;w[h-1]=o&c}X(r,w)||yn(w,r),ln(n,w)}this.add=function(n,t){return An(n=F(n,n.length>t.length?n.length+1:t.length+1),t),xn(n,1)},this.addInt=function(n,t){return un(n=F(n,n.length+1),t),xn(n,1)},this.bigInt2str=function(n,t){var r,e,f="";if(h.length!=n.length?h=on(n):ln(h,n),-1==t){for(r=n.length-1;0<r;r--)f+=n[r]+",";f+=n[0]}else for(;!hn(h);)e=dn(h,t),f=g.substring(e,e+1)+f;return 0==f.length&&(f="0"),f},this.bitSize=j,this.divide_=$,this.dup=on,this.equals=fn,this.equalsInt=en,this.expand=F,this.findPrimes=G,this.GCD=function(n,t){return K(n=on(n),on(t)),n},this.greater=X,this.greaterShift=W,this.int2bigInt=rn,this.inverseMod=function(n,t){return function(n,t){var r=1+2*Math.max(n.length,t.length);if(!(1&n[0]||1&t[0]))return gn(n,0),0;m.length!=r&&(m=new Array(r),b=new Array(r),I=new Array(r),k=new Array(r),p=new Array(r),x=new Array(r));for(ln(m,n),ln(b,t),gn(I,1),gn(k,0),gn(p,0),gn(x,1);;){for(;!(1&m[0]);)cn(m),1&I[0]||1&k[0]?(An(I,t),cn(I),yn(k,n)):cn(I),cn(k);for(;!(1&b[0]);)cn(b),1&p[0]||1&x[0]?(An(p,t),cn(p),yn(x,n)):cn(p),cn(x);if(X(b,m)?(yn(b,m),yn(p,I),yn(x,k)):(yn(m,b),yn(I,p),yn(k,x)),en(m,0)){for(;V(p);)An(p,t);return ln(n,p),en(b,1)?1:(gn(n,0),0)}}}(n=F(n,t.length),t)?xn(n,1):null},this.inverseModInt=Q,this.isZero=hn,this.millerRabin=Z,this.millerRabinInt=Y,this.mod=function(n,t){return In(n=on(n),t),xn(n,1)},this.modInt=tn,this.mult=function(n,t){return mn(n=F(n,n.length+t.length),t),xn(n,1)},this.multMod=function(n,t,r){return kn(n=F(n,r.length),t,r),xn(n,1)},this.negative=V,this.powMod=function(n,t,r){return Pn(n=F(n,r.length),xn(t,2),xn(r,2)),xn(n,1)},this.randBigInt=function(n,t){var r=rn(0,0,Math.floor((n-1)/s)+2);return J(r,n,t),r},this.randTruePrime=function(n){var t=rn(0,n,0);return function n(t,r){var e,f,h,o,l,i,g,u,a,c;0==E.length&&(E=G(3e4));if(0==P.length)for(P=new Array(512),h=0;h<512;h++)P[h]=Math.pow(2,h/511-1);0;0;B.length!=t.length&&(B=on(t),L=on(t),T=on(t),q=on(t),z=on(t),on(t),on(t),U=on(t),O=on(t),S=on(t),N=on(t),R=on(t),_=on(t),C=on(t));if(r<=20){for(e=(1<<(r+2>>1))-1,gn(t,0),f=1;f;)for(t[f=0]=1|1<<r-1|Math.floor(Math.random()*(1<<r)),h=1;h<E.length&&(E[h]&e)==E[h];h++)if(0==t[0]%E[h]){f=1;break}return void nn(t)}l=.1*r*r;if(40<r)for(o=1;r-r*o<=20;)o=P[Math.floor(512*Math.random())];else o=.5;c=Math.floor(o*r)+1;n(R,c);gn(B,0);B[Math.floor((r-2)/s)]|=1<<(r-2)%s;$(B,R,S,N);u=j(S);for(;;){for(;J(L,u,0),!X(S,L););for(un(L,1),An(L,S),ln(O,R),mn(O,L),vn(O,2),un(O,1),ln(q,L),vn(q,2),h=i=0;h<E.length&&E[h]<l;h++)if(0==tn(O,E[h])&&!en(O,E[h])){i=1;break}if(i||Y(O,2)||(i=1),!i){for(un(O,-3),h=O.length-1;0==O[h]&&0<h;h--);for(a=0,g=O[h];g;g>>=1,a++);for(a+=s*h;J(_,a,0),!X(O,_););if(un(O,3),un(_,2),ln(U,_),ln(T,O),un(T,-1),Pn(U,T,O),un(U,-1),hn(U)&&(ln(U,_),Pn(U,q,O),un(U,-1),ln(C,O),ln(z,U),K(z,O),en(z,1)))return void ln(t,C)}}}(t,n),xn(t,1)},this.randProbPrime=function(n){return t(n,600<=n?2:550<=n?4:500<=n?5:400<=n?6:350<=n?7:300<=n?9:250<=n?12:200<=n?15:150<=n?18:100<=n?27:40)},this.str2bigInt=function(n,t,r){var e,f,h,o,l,i=n.length;if(-1==t){for(h=new Array(0);;){for(o=new Array(h.length+1),f=0;f<h.length;f++)o[f+1]=h[f];if(o[0]=parseInt(n,10),h=o,(e=n.indexOf(",",0))<1)break;if(0==(n=n.substring(e+1)).length)break}return h.length<r?(ln(o=new Array(r),h),o):h}for(h=rn(0,t*i,0),f=0;f<i&&(e=g.indexOf(n.substring(f,f+1),0),t<=36&&36<=e&&(e-=26),!(t<=e||e<0));f++)vn(h,t),un(h,e);for(i=h.length;0<i&&!h[i-1];i--);for(i=i+1<r?r:i+1,o=new Array(i),l=i<h.length?i:h.length,f=0;f<l;f++)o[f]=h[f];for(;f<i;f++)o[f]=0;return o},this.negate=H,this.sub=function(n,t){return yn(n=F(n,n.length>t.length?n.length+1:t.length+1),t),xn(n,1)},this.trim=xn,this.uint82bigInt=function(n){for(var t=n.length,r=8*n.BYTES_PER_ELEMENT,e=t*r,e=Math.trunc((e+s-1)/s),f=new Array(e+1),h=0,o=0,l=0,i=0,h=t-1;0<=h;--h)for(l|=n[h]<<i,i+=r;s<=i;)f[o++]=l&c,l>>=s,i-=s;for(;o<f.length;){if(0==(f[o++]=l)){f.length=o;break}l=0}return f},this.bigInt2uint8=function(n){var t;for(n[n.length-1]==c&&(n=H(n)),t=n.length;0<t&&!n[t-1];t--);for(var r=t*s,r=Math.trunc((8+r-1)/8),e=new Uint8Array(r),f=0,h=r,o=0,l=0,f=0;f<t;++f)for(o|=n[f]<<l,l+=s;8<=l;)e[--h]=o,o>>=8,l-=8;return 0<h&&(0==o?e=new Uint8Array(e.slice(h)):e[--h]=o),e},this.rightShift=function(n,t){var r=!1,e=V(n)?(r=!0,En(n)):on(n);if(t>e.length*s)e=[0];else{for(;s<=t;)an(e,s-1),t-=s-1;0<t&&an(e,t)}return r&&bn(e),xn(e,1)},this.leftShift=function(n,t){for(var r=F(n,n.length+Math.trunc((t+s)/s));s<=t;)sn(r,s-1),t-=s-1;return 0<t&&sn(r,t),xn(r,1)},this.and=function(n,t){return n=1==n.length&&n[0]==c?[c,c]:on(n),1==t.length&&t[0]==c&&(t=[c,c]),function(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]&=t[e];for(e=r;e<n.length;e++)n[e]=0}(n,t),xn(n,1)},this.or=function(n,t){var r;return n.length<t.length&&(r=n,n=t,t=r),n=1==n.length&&n[0]==c?[c,c]:on(n),1==t.length&&t[0]==c&&(t=[c,c]),function(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]|=t[e]}(n,t),xn(n,1)},this.xor=function(n,t){var r;return n.length<t.length&&(r=n,n=t,t=r),n=1==n.length&&n[0]==c?[c,c]:on(n),1==t.length&&t[0]==c&&(t=[c,c]),function(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]^=t[e]&c}(n,t),xn(n,1)},this.not=En}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
32
32
 
33
33
  /* Copyright (c) 2017-2022 by Zulch Laboratories, Inc. */
34
- !function(Qs){Qs.NaanInterpreter=function(){"use strict";var r=Qs.LeemonBigIntegerLib?Qs:require("./bigint.js"),s=new r.LeemonBigIntegerLib,d=Qs.NaanChannel?Qs:require("./naan_io.js"),l={Number:Number,String:String,Date:Date,RegExp:RegExp,Array:Array,Math:Math,Promise:Promise},m={Number:Number,String:String,Date:Date,RegExp:RegExp},B;function L(r){return r instanceof Array||"[object Array]"===Object.prototype.toString.apply(r)}function u(r){return r.prototype&&r.prototype.constructor.name}var i=Math.log2(Number.MAX_SAFE_INTEGER),a=Math.log2(Number.MAX_VALUE),o=131072,p="\b\f\n\0\r\t\v ~`@#$%^&*()_+-={}|[]\\:\";'<>?,./",h=this,D=1,z=2,Z=3,X=4,G=5,J=6,O=7,V=8,Q=9,k=10,e=10,g=0,S=1,N=2,f=2,U=3,H=4,Y=5,w=2,K=3,rr=3,er=3,nr=3,x=3,j=2,tr=3,ir=4,v=N+1,T=Y+1,n=K+1,t=rr+1,c=er+1,b=N+1,y=x+1,ar=ir+1,P={},ur=null;function A(r){return r&&r!==ur&&r!==Dr&&r!==zr}function I(r){return r===Qr||r===Gr||r===Jr||r===Vr||r===Ur||r===Hr}function $(r){return r?Zr:ur}function M(r){return r===B?Dr:null===r?zr:r}function q(r){for(var e=ur,n=r.length-1;0<=n;--n)e=Cr(r[n],e);return e}function E(r){for(var e=[];r[g]===D;)e.push(r[S]),r=r[N];return e}function R(r){for(var e=Lu();r[g]===D;){var n=r[S];n[g]===D&&ho(e,n[S],n[N]),r=r[N]}return e}function F(r,e){for(var n=Object.getOwnPropertyNames(e),t=0;t<n.length;++t){var i=n[t];r[i]=e[i]}}function W(r,e){return r===ur?ur:(F((e=e||Lu())[x],r[x]),e)}var or=[],fr=[],cr,sr,lr,pr,_=1e5;function gr(){or=[],fr=[],cr=vr(Wr("NaanRoot")),sr=vr(Wr("NaanCore")),lr=vr(Wr("NaanConst")),or.pop(),fr.push(sr),pr=cr}function vr(r,e){return r===B?ur:(e===B&&(e=new Array(ar)),e[0]=k,(e[1]=e)[2]=r,e[3]=[],e[4]={},or.push(e),e)}function C(r){r=r&&r[0]===k?us(r[j]):"nowhere";return r}function dr(r){for(var e=[],n=q(fr);r[g]===D;){var t=r[S];t===ur&&(t=cr),t[0]===k&&e.indexOf(t)<0&&e.push(t),r=r[N]}if(0<e.length){if(e[0]!==fr[0]&&pr!=e[0]&&pr!==cr)return Da(Lr(["internal","$"+us(pr)+": no privileges to activate "+C(e[0])])),ur;fr=e}return n}function hr(l){var r,e,n,p=new WeakMap,g={};function v(r){r=function r(e){var n;if("object"!=typeof e)return e;if(p.get(e))return p.get(e);switch(p.set(e,e),e[0]){case D:for(var t=e;;){var i=t[1],a=t[2];if(t[1]=v(i),a===ur)break;if(a[0]!==D){t[2]=v(a);break}if(t=a,p.get(t))break;p.set(t,t)}return e;case Q:if(e[H]===l)p.set(e,ur),e=ur;else if(Cu(e[x])){var u=e[x];if(L(e[x]))for(var o=0;o<u.length;++o)(n=r(u[o]))===g?u.splice(o,1):u[o]=n;else for(var f,c=Object.getOwnPropertyNames(u),s=0;s<c.length;++s)(n=r(u[f=c[s]]))===g?delete u[f]:u[f]=n}return e;case z:return e[H]===l?((e[1]=e)[2]=ur,e[3]=ur,e[4]=ur):(e[1]=v(e[1]),e[2]=v(e[2]),e[3]=v(e[3])),e}return e}(r);return r===g?ur:r}for(p.set(g,g),p.set(l,g),r=0;r<or.length;++r)if(or[r]!==l)for(n=or[r][tr],e=0;e<n.length;++e)v(n[e]);for(var t=1;t<=bt;++t)ht[t-1]=v(ht[t-1]);var i=fr.indexOf(l);0<=i&&fr.splice(i,1),0<=(i=or.indexOf(l))&&or.splice(i,1)}function br(o){var r,e,n,f=new WeakMap,c=[];function s(r){if("object"==typeof r&&!f.get(r))switch(f.set(r,r),r[0]){case D:for(var e=r;;){s(e[1]);var n=e[2];if(n===ur)break;if(n[0]!==D){s(n);break}if(e=n,f.get(e))break;f.set(e,e)}break;case Q:if(Cu(r[x])){var t=r[x];if(L(r[x]))for(var i=0;i<t.length;++i)s(t[i]);else for(var a=Object.getOwnPropertyNames(t),u=0;u<a.length;++u)s(t[a[u]])}break;case z:r[Y]===o&&c.push(r),s(r[1]),s(r[2]),s(r[3])}}for(r=0;r<or.length;++r)for(n=or[r][tr],e=0;e<n.length;++e)s(n[e]);for(var t=1;t<=bt;++t)s(ht[t-1]);return c}function yr(r){for(var e=0;e<fr.length;++e){var n=fr[e];if(n[ir].hasOwnProperty(r)){var t=n[ir][r];return n[tr][t]}}return!1}function mr(r){if(r[H][0]!==k)return ur;var e,n=r[H][ir][r[Y]];if(r[H][tr][n]!==r)return ur;for(e=0;e<fr.length;++e){var t=fr[e];if(t[ir].hasOwnProperty(r[Y]))return n=t[ir][r[Y]],t[tr][n]===r?ur:r[H]}return r[H]}function kr(r,e){return!!e[ir].hasOwnProperty(r)&&e[tr][e[ir][r]]}var wr={};function xr(r){var e=new Array(T);return ur||(ur=e,gr()),e[0]=z,(e[1]=e)[2]=ur,e[3]=ur,e[4]=ur,e[5]=r,e}function Or(r,e){var n=r[Y],t=e[ir][n];return e[tr][t]===r||((r[H]=e)[ir][n]=e[tr].length,e[tr].push(r)),r}function Sr(r){var e=yr(r);return e||Or(e=xr(r),fr[0])}function Nr(r){r=yr(r);return r||ur}function jr(r,e){var n,t;for(n in e)if(t=kr(r,e[n]))return t;return ur}function Tr(r,e){return jr(e,[r[H],cr,sr])}function Pr(r){if(r[H][0]!==k)return-1;var e=or.indexOf(r[H]);if(e<0)return yu(lu,"can't find namespace for symbol \""+r[Y]+'"'),0;var n=e*_,e=or[e][ir][r[Y]];return"number"!=typeof e?(yu(lu,"can't find interned symbol \""+r[Y]+'"'),0):n+e}function Ar(r,e){r=Sr(r);return r===ur&&yu(lu,"can't set that: "+e),r===ur?ur:(e===B?e=r:"string"==typeof e?e=Sr(e):"number"==typeof e&&(e=Ao(e)),r[1]=e,r)}function Ir(r,e){var n=new Array(b);return n[0]=e,(n[1]=n)[2]=ur,n[3]=r,n}function $r(r,e,n,t){var i=(t?xr:Sr)(r);i===ur&&yu(lu,"can't add builtin \""+i+'"');var a=new Array(b);return a[0]=n,(a[1]=a)[2]=i,a[3]=e,i[U]=a,t||(wr[r]=e),i}function Mr(r){for(var e=Object.getOwnPropertyNames(wr),n=0;n<e.length;++n)if(wr[e[n]]===r)return e[n];return B}function qr(r,e){var n,t=Br(r);if(t===ur)return ur;for(n=0;n<e.length;++n){var i=e[n];if("object"!=typeof i)return ur;if(!(i.length<2)){var a=i[0];if("string"!=typeof a)return ur;_c(t,Br(a),Br(i[1]))}}return t}function Er(r,e){r=Sr(r);return A(r)||yu(lu,"can't add that: "+e),r[U]=e,r}function Rr(r){r=Ce(r,fr[0]);return"string"==typeof r?(yu(lu,"can't create closure: "+r),ur):r}function Fr(r){return r[0]===z?r[Y]:r[0]===Z?r[K]:""}function Wr(r){var e=new Array(n);return e[0]=Z,(e[1]=e)[2]=ur,e[3]=r,e}function _r(r){var e=new Array(y);return e[0]=Q,(e[1]=e)[2]=ur,e[3]=r,e[4]=ur,e}function Cr(r,e){var n=new Array(v);return n[0]=D,n[1]=r,n[2]=e,n}function Br(r){if("string"==typeof r)return 1<r.length&&"."==r.substring(0,1)?Io(parseFloat(r.substring(1))):"$"==r.substring(0,1)?Wr(r.substring(1)):("\\"==r.substring(0,1)&&(r=r.substring(1)),We(r));if("number"==typeof r)return Ao(r);if("object"==typeof r){if(L(r)){for(var e=ur,n=e,t=0;t<r.length;++t){var i=new Array(v);i[0]=D,i[1]=Br(r[t]),n!==(i[2]=ur)?n[2]=i:e=i,n=i}return e}if(r.hasOwnProperty("dictionary")){var a=new Bu,u=r.dictionary,o=Object.getOwnPropertyNames(u);for(t=0;t<o.length;++t){var f=o[t];"$"!=f.substring(0,1)&&"\\"!=f.substring(0,1)||(f=f.substring(1)),a[f]=Br(u[o[t]])}var c=_r(a);return r.tag!==B&&(c[2]=Br(r.tag)),c}if(r.hasOwnProperty("array")){var s=[];for(u=r.array,s[Ru]=Fu,t=0;t<u.length;++t)s[t]=Br(u[t]);return _r(s)}if(r.hasOwnProperty("xobject"))return _r(r.xobject)}return yu(gu,"naanParseJsValue warning: can't parse "+typeof r),ur}function Lr(r){var e=fr;(fr=fr.slice()).push(cr);r=Br(r);return fr=e,r}Sr("false");var Dr=Sr("undefined"),zr=Sr("null"),Zr=Sr("true"),Xr=Sr("lambda"),Gr=Sr("function"),Jr=Sr("function&"),Vr=Sr("macro"),Qr=Sr("closure"),Ur=Sr("let"),Hr=Sr("let&"),Yr=Sr("var"),Kr=Sr("exception"),re=Sr("escape"),ee=Sr("this"),ne=Sr("`"),te=Sr("deref"),ie=Sr("."),ae=Sr("body"),ue=Sr("loop"),oe=Sr("catch"),fe=Sr("interrupt"),ce=Sr("list"),se=Sr("Naan"),le=Sr("builtin"),pe=Sr("tuple"),ge=Sr("symbol"),ve=Sr("integer"),de=Sr("float"),he=Sr("numeric"),be=Sr("string"),ye=Sr("array"),me=Sr("dictionary"),ke=Sr("object"),we=Sr("xobject"),xe=Sr("namespace"),Oe=Sr("nonce"),Se=Sr("weakmap"),Ne=Sr("textstream"),je=Sr("$");Sr("driver"),Sr("App"),Sr("identity"),Sr("js"),function(){for(var r in l)l.hasOwnProperty(r)&&Sr(r)}();var Te=Ar("cr","\n"),Pe=Sr("space");Pe[1]=Wr(" "),Ar("doublequote",'"'),Ar("rpar",")"),Ar("lpar","("),Ar("comma",","),Ar("quote","`"),Ar("period","."),fr=[cr,sr];var Ae=Sr("throw"),Ie=Sr("call"),$e=Sr("arraycall"),Me=Sr("xget"),qe=Sr("xset"),Ee=Sr("xcall"),Re=Sr("xapply");function Fe(r){if(se[1][0]!==Q)return ur;for(var e=Object.getOwnPropertyNames(se[1][x]),n=0;n<e.length;++n){var t=se[1][x][e[n]][x];if(t.hasOwnProperty(r)){if(t[r][0]===z)return t[r][U];break}}return ur}function We(r){var e=yr(r);if(e)return e;if(e=Sr(r),se[1][0]!==Q)return e;r=Fe(r);return r!==ur&&(e[U]=r),e}function _e(r,e){if((r[0]===z||e&&r[0]===Q)&&A(r)){if(r[H]===ur)return 1;if(pr==r[H])return 1;if(fr[0]===r[H])return 1;if(pr===cr)return 1;e=C(r[H])+ms.NSinfix;r[0]===z?e+=r[Y]:e+=us(r),Da(Lr(["internal","$can't modify "+e+" from "+C(pr)]),ur)}else Da(Lr(["internal","$attempt to modify constant "+us(r)]),ur)}function Ce(r,e){try{return Be(r,e)}catch(r){return r}}function Be(r,b){var u,o,e,n={};function y(r,e,n){if(e[0]!==z||((a=e)===ur||a===Dr||a===zr||a===Xr||I(a)))for(;e[0]===D;)y(r,e[1],n),e=e[2];else{var t=e[Y];if(n===Jr||n===Hr){if(e[H]===b||b===ur)return;u!==Qr&&u!==Vr&&yu(gu,"warning: using "+ms.NSinfix+t+" for parameter "+C(e[H])+ms.NSinfix+t+" in "+C(b)+ms.NSinfix+o[Y])}var i=xr(t);i[H]=b===ur?e[H]:b;a=r[t];a&&(i[U]=a[U]),r[t]=i}var a}function m(r,e){for(;e[0]===D;){if(e[1][0]===D&&e[1][1]!==ne)if(I(e[1][1])){var n=e[1][2][1];if(n!==ur&&n[Y]!==Xr[Y]){var t=n[Y],i=xr(t);if(i[H]=b===ur?n[H]:b,i[U]=e[1],r.hasOwnProperty(t))throw"duplicate procedure name "+t+" in "+o[Y];r[t]=i}}else m(r,e[1]);e=e[2]}}function k(r,e,n,t){if(r[0]!==D){if(r[0]===Q&&Cu(r[3])){var i=r[x];if(L(i)){for(var a=_u(ye,ur),u=0;u<i.length;++u)a[x][u]=k(i[u],e,n,t);return a}var o,f=Object.getOwnPropertyNames(i),c=(r[3]instanceof Du?zu:Lu)();for(c[2]=r[2],o=0;o<f.length;++o)c[x][f[o]]=k(i[f[o]],e,n,t);return c}return r[0]!==z?r:e.hasOwnProperty(r[Y])?e[r[Y]]:r}if(!n&&I(r[1])){var s=k(r[2][1],e,!1,t);s[Y]===Xr[Y]&&((s=xr(s[Y]))[S]=Xr,s[H]=b!==ur?b:s[H]);var l=r[2][2][1],p=r[2][2][2],g={};m(g,p),y(g=Object.assign({},e,g),l,r[1]);p=Cr(k(l,g,!1,t),k(p,g,!1,s)),g=Cr(r[1],Cr(s,p));return s[U]=g,t&&(s[2]===ur&&(s[2]=_u(me,ur)),(s[2][3][".parent"]=t)[2]===ur&&(t[2]=_u(me,ur)),p=(p=t[2][3][".children"])||ur,t[2][3][".children"]=Cr(s,p)),g}r[1]===ne&&(n=!0);for(var v=ur,d=null;r[0]===D;){var h=k(r[1],e,n,t);r[1].breakpoint&&(h.breakpoint=r[1].breakpoint);h=Cr(h,ur);d?d[2]=h:v=h,d=h,r=r[2]}return r!==ur&&d&&(d[2]=r),v}if(r[0]!==D)return ur;if(u=r[1],(o=r[2][1])[0]!==z)return ur;var t=b!==ur?b:o[H];o[H]!==t||(u!==Gr&&u!==Jr||o[U]!==r)&&o[U]!==ur?((e=xr(o[Y]))[S]=o,e[H]=t,e[f]=W(o[f]),u!==Qr&&u!==Vr||e[f][".base"]||(e[2]===ur&&(e[2]=_u(me,ur)),e[2][3][".base"]=o)):e=o,e[2]!=ur&&delete e[2][3][".children"],y(n,ee),n[ee[Y]][1]=e,m(n,r[2][2][2]),y(n,r[2][2][1],u),t=k(r[2][2][1],n,!1),n=k(r[2][2][2],n,!1,e);n=Cr(u,Cr(e,Cr(t,n)));return e[U]=n}var Le=0,De=1,ze=2,Ze=3,Xe=4,Ge=5,Je=6,Ve=7,Qe=8,Ue=9,He=10,Ye=11,Ke=12,rn=13,en=14,nn=15,tn=16,an=17,un=18,on=19,fn=20,cn=21,sn=22,ln=23,pn=24,gn=25,vn=26,dn=27,hn=28,bn=29,yn=30,mn=31,kn=32,wn=33,xn=34,On=35,Sn=36,Nn=37,jn=38,Tn=39,Pn=40,An=41,In=42,$n=43,Mn=44,qn=45,En=46,Rn=47,Fn=48,Wn=49,_n=50,Cn=51,Bn=52,Ln=53,Dn=54,zn=55,Zn=56,Xn=90,Gn=91,Jn=92,Vn=93,Qn=94,Un=0,Hn=1,Yn=2,Kn=3,rt=4,et=5,nt=6,tt=57,it=58,at=59,ut=95,ot=96,ft=[],ct,st,lt,pt,gt;ft[Le]=li,ft[wn]=pi,ft[Nn]=gi,ft[kn]=Si,ft[tt]=Si,ft[Qe]=_i,ft[nn]=Ni,ft[tn]=ji,ft[an]=Ti,ft[zn]=Ci,ft[Zn]=Bi,ft[Ye]=Li,ft[pn]=Di,ft[hn]=zi,ft[bn]=Zi,ft[yn]=Zi,ft[mn]=Zi,ft[at]=Xi,ft[gn]=Gi,ft[vn]=Ji,ft[dn]=Vi,ft[Ue]=Qi,ft[He]=Ui,ft[_n]=Hi,ft[Cn]=Yi,ft[sn]=Ki,ft[ln]=ra,ft[In]=ea,ft[$n]=na,ft[Mn]=ta,ft[fn]=ia,ft[cn]=aa,ft[Rn]=ua,ft[Fn]=oa,ft[Wn]=ca,ft[Xe]=fa,ft[Ge]=ca,ft[Je]=sa,ft[Ve]=da,ft[Ke]=ba,ft[De]=ba,ft[Tn]=ya,ft[en]=ma,ft[Bn]=ka,ft[Ln]=wa,ft[Dn]=xa,ft[qn]=Pi,ft[En]=Ai,ft[it]=$i,ft[ze]=xi,ft[Ze]=Oi,ft[un]=vi,ft[on]=di,ft[Pn]=hi,ft[An]=bi,ft[jn]=yi,ft[rn]=yi,ft[xn]=mi,ft[On]=ki,ft[Sn]=wi;var vt=[],dt=0,ht=[],bt=0,yt=-1,mt=0,kt=!1,wt=!1,xt=6e3,Ot=0,St=0,Nt=0,jt,Tt=0,Pt,At,It=[],$t=[],Mt=[],qt,Et,Rt=[],Ft,Wt,_t,Ct=100,Bt=3e4,Lt=1e4,Dt=2e5,zt=Bt,Zt,Xt;function Gt(){return mt=bt=dt=0,gt=Le,ct=st=lt=pt=_t=ur,Kr[1]=Kr,Ou(),1}function Jt(r){return Gt(),vt[dt++]=Le,gt=wn,ct=r}function Vt(r,e,n){return jo(),ht[bt++]=wt,ht[bt++]=kt,ht[bt++]=r,ht[bt++]=e,ht[bt++]=pr,ht[bt++]=_t,ht[bt++]=pt,ht[bt++]=lt,ht[bt++]=st,ht[bt++]=ct,ht[bt++]=mt,ht[mt=bt++]=Xn,ht[bt++]=dt+2,ht[bt++]=!1,vt[dt++]=gt,vt[dt++]=n?De:Ke,gt=wn,At=ur,wt=kt=!1,ct=r}function Qt(r){return Jt(r),Ht(!(Nt=0)),ct}function Ut(){return Tt<=0&&(gt!==Le||0<dt)}function Ht(r){if(!(0<Tt)){var e=jt,n=Ot;Zt=(new Date).getTime(),ht.length=bt,gt===Le&&0<dt&&(gt=vt[--dt]),Ot=r?0:xt,jt=r;try{Yt()}catch(r){if(r!==It){yu(lu,"caught: "+r);debugger;za(Lr(["unknown","$"+r]))}jo()}finally{jt=e,Ot=n,ht.length=bt,Bt<zt&&bt<zt-Lt/2&&(zt-=Lt/2)<Bt&&(zt=Bt),ai()}0<as.TextAvail()&&P.hasOwnProperty("console-out")&&P["console-out"](h,as.TakeText())}}function Yt(){var r=0;do{if(bu!=hu[1]){debugger;yu(lu,hu[Y]+" changed: "+us(bu)+" --\x3e "+us(hu[1])),bu=hu[1]}if(zt<bt&&(za(Lr(["internal","$maximum stack depth exceeded"])),zt=bt+Lt,Dt<bt))return yu(lu,"intractable recursion"),Gt(),void jo();if(1e3<=++r){r=0;if(ht.length=bt,1e4<(new Date).getTime()-Zt)return void za(Lr(["internal","$unresponsive"]));if(0<Ot&&(Ot-=1e3,Ot<=0&&gt!==Le)){vt[dt++]=gt,gt=Le;break}}}while(ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),gt!=Le)}var Kt=[],ri=[],ei=[],ni=[],ti=[],ii=[];function ai(){var r=(new Date).getTime(),e=r-Zt;Xt===B&&(Kt[Xt=0]=Zt,ei[0]=0,ni[0]=0,ti[0]=0,ii[0]=0),++ei[Xt],ni[Xt]+=e,ti[Xt]<e&&(ti[Xt]=e),++ii[Xt],r>=Kt[Xt]+1e3&&(ri[Xt]=r-Kt[Xt],32<++Xt&&(Xt=0),Kt[Xt]=r,ei[Xt]=0,ni[Xt]=0,ti[Xt]=0,ii[Xt]=0)}function ui(r){r=r||32;for(var e=1e3,n=[],t=[],i=Kt.length-1,a=Xt-1,u=r*e;0<=--i&&(n.push({start:Kt[a],width:ri[a],runtime:ni[a],peak:ti[a],runcount:ei[a],counter:ii[a]}),--a<0&&(a=Kt.length-1),!((u-=ri[a])<0)););if(0===n.length)return[];var o=n[0];3e3<(new Date).getTime()-o.start&&t.push({start:o.start+e,width:e,cpu:0,peak:0,average:0,samples:0});for(var f=o.start+o.width-e,c=1;t.length<r;)if(f>=o.start){var s=o.peak;e<s&&(s=e);var l=Number((o.runtime/o.width).toFixed(3)),p=Math.round(o.runtime/o.runcount);s==e&&(l=1,p=1e3),t.push({start:f,width:e,cpu:l,peak:s,average:p,samples:o.counter}),f-=e}else{if(c>=n.length)break;o=n[c++]}return t}function oi(){return $t}function fi(r,e,n,t){ct=e,st=n,lt=t,pt=r,vt[dt++]=Tn,gt=Le,Tt=1}function ci(r){if(r[U]!==ur)qt=r[U];else{if(r[1]===r)return ur;qt=r[1]}return Et=r,Mt}function si(r,e){return Ft=r,Wt=e,Rt}function li(){}function pi(){var r=ct,e=0;if(r[0]!==D){if(r[0]===Q&&Cu(r[3])){if(L((ct=r)[3]))return void(gt=un);if(r[3]instanceof Bu)return void(gt=Pn)}return ct=r[1],void(gt=vt[--dt])}for(var n=r[1];n[0]===z;){if(++e>Ct)return gt=vt[--dt],void(ct=ur);if(n[3]!==ur)n=n[3];else{if(n[1]===n)break;if((n=n[1])[0]===Q)return gt=kn,pt=n,lt=Zr,st=r[2],void(ct=n)}}if(n[0]===D&&I(n[1])||n[0]===J||n[0]===O||n[0]===V)return gt=kn,pt=r[1],lt=Zr,st=r[2],void(ct=n);gt=I(n)?vt[--dt]:gn}function gi(){for(var r=st,e=ct,n=0;e[0]===z&&!(++n>Ct);)if(e[3]!==ur)e=e[3];else{if(e[1]===e)break;e=e[1]}if(e[0]===D&&I(e[1])||e[0]===J||e[0]===O||e[0]===V)return gt=kn,lt=ur,st=r,void(ct=pt=e);ct=ur,gt=vt[--dt]}function vi(){if(lt=_u(ye,ur),0===ct[3].length)return ct=lt,void(gt=vt[--dt]);ht[bt++]=ct,ht[bt++]=lt,ht[bt++]=0,vt[dt++]=on,(ct=ct[3][0])===B&&(ct=Dr),gt=wn}function di(){if(st=ht[bt-1]++,lt=ht[bt-2],pt=ht[bt-3],lt[3][st++]=ct,st<pt[3].length)return vt[dt++]=on,ct=pt[3][st],void(gt=wn);bt-=3,ct=lt,gt=vt[--dt]}function hi(){if(lt=Lu(),0===(st=io(Object.getOwnPropertyNames(ct[3]).reverse()))[3].length)return ct=lt,void(gt=vt[--dt]);ht[bt++]=ct,ht[bt++]=lt,ht[bt++]=st,vt[dt++]=An,(ct=ct[3][st[3][st[3].length-1]])===B&&(ct=Dr),gt=wn}function bi(){if(st=ht[bt-1],lt=ht[bt-2],pt=ht[bt-3],lt[3][st[3].pop()]=ct,0<st[3].length)return vt[dt++]=An,ct=pt[3][st[3][st[3].length-1]],void(gt=wn);bt-=3,ct=lt,gt=vt[--dt]}function yi(){if(ht[bt++]=gt===jn?Zr:ur,ht[bt++]=ur,ht[bt++]=ct[1],ht[bt++]=ct[2][1],ht[bt++]=ct[2][2][1],(ct=ct[1])[0]===D){var r=ct[1][U][nr];if(r===Fa&&ct[2][2][2]===ur)ct=ct[2],gt=gn;else{if(r!==Wa)return bt-=5,ct=ur,void(gt=vt[--dt]);ct=ct[2][1],gt=wn}vt[dt++]=xn}else gt=xn}function mi(){ht[bt-4]=ct,ct=ht[bt-2],vt[dt++]=On,gt=wn}function ki(){ht[bt-2]=ct,ct=ht[bt-1],vt[dt++]=Sn,gt=wn}function wi(){var r=ht[bt-5],e=ct,n=ht[bt-2],t=ht[bt-3],i=ht[bt-4];t[0]===D&&t[1][U][nr]===Wa&&(i=Cr(i,t[2][2])),bt-=5,ct=Fc(i,n,e,r),gt=vt[--dt]}function xi(){ht[bt++]=lt,ht[bt++]=st,vt[dt++]=Ze,gt=wn}function Oi(){for(var r=0;ct[0]===z&&!(++r>Ct);)if(ct[3]!==ur)ct=ct[3];else{if(ct[1]===ct)break;ct=ct[1]}pt=ct[0]===D?ct[2][1]:Xr,st=ht[--bt],lt=ht[--bt],gt=kn}function Si(){var e,n,r,t,i=ct,a=st,u=lt!==ur;if(i[0]===J)return r=a[2][2][1],n=a[2][1],e=a[1],du<=nu&&(ku(du,us(i,{quote:Zr}),a,u),vt[dt++]=en),u?e[0]!==D&&n[0]!==D&&r[0]!==D&&e[0]!==Q&&n[0]!==Q&&r[0]!==Q?(ct=i[3](e[1],n[1],r[1],i))===$t?void fi(i,e[1],n[1],r[1]):ct===Mt?(pt=Et,lt=Zr,void(ct=qt)):ct===Rt?void ha(Ft,Wt,a,!0):void(gt=vt[--dt]):(ht[bt++]=i,ht[bt++]=r,ht[bt++]=n,ct=e,vt[dt++]=nn,void(gt=wn)):(ct=i[3](e,n,r,i))===$t?void fi(i,e,n,r):ct===Mt?(pt=Et,void(ct=qt)):ct===Rt?void ha(Ft,Wt,a):void(gt=vt[--dt]);if(i[0]===O||i[0]===Q)if(du<=nu&&(ku(du,us(i,{quote:Zr}),a,u),vt[dt++]=en),i[0]===O&&gt!==tt&&u&&(ct=!1,a[0]===D?(e=a[1])[0]!==D&&e[0]!==Q&&(a[2][0]===D?(n=a[2][1])[0]!==D&&n[0]!==Q&&a[2][2][0]!==D&&(ct=i[3](2,function(r){return 0<=r&&r<2?[e[1],n[1]][r]:ur},i,ur)):ct=i[3](1,function(r){return 0===r?e[1]:ur},i,ur)):ct=i[3](0,function(r){return ur},i,ur),ct&&ct!==$t&&ct!==Mt&&ct!==Rt))gt=vt[--dt];else{gt===tt?(ht[bt]=ht[bt-1],++bt):ht[bt++]=ur,du<=nu&&(ku(du,us(i,{quote:Zr}),a,u),vt[dt++]=en);for(var o=0;a[0]===D;)ht[bt++]=a[1],++o,a=a[2];ht[bt++]=o,ht[bt++]=u?0:o,ht[bt++]=i,gt=qn}else if(i[0]===V){if(du<=nu&&(ku(du,us(i,{quote:Zr}),a,!1),vt[dt++]=en),(ct=i[3](a,i))!==$t)return ct===Mt?(pt=Et,lt=ur,void(ct=qt)):void(ct!==Rt?gt=vt[--dt]:ha(Ft,Wt,a));fi(i,a)}else i[0]!==D||i[1]!==Vr&&i[1]!==Gr&&i[1]!==Jr&&i[1]!==Qr&&i[1]!==Ur&&i[1]!==Hr?(ct=ur,gt=vt[--dt]):(t=i[2][1],vu<=nu&&(ku(vu,us(pt),a,u),vt[dt++]=en),ht[bt++]=pr,gt===tt?(ht[bt]=bt-2,++bt):ht[bt++]=_t,t!==Xr&&t[0]===z&&t[H]!==ur?t[U]===i?(i[1]===Vr?(u=!1,lt=ur,t[H]!==cr&&(i=Ce(i,pr))):i[1]===Qr&&(i=Ce(i,t[H])),"string"!=typeof i?(t=i[2][1],r=i[2][2][1],t=t[H],r[0]!==D?r[0]===z?r[1]!==Ur?r===ur||r[H]===t?(ht[bt++]=pt,ht[bt++]=i,ct=a,gt=u?(vt[dt++]=zn,gn):zn):za(Lr(["internal","$parameter in foreign namespace: "+C(r[H])+ms.NSinfix+r[Y]+" from: "+C(t)])):za(Lr(["internal","$let parameter must be tuple"])):za(Lr(["internal","$parameter is not a symbol"])):(a[0]!==D?e=ur:(e=a[1],a=a[2]),ht[bt++]=pt,ht[bt++]=i,ht[bt++]=lt,ht[bt++]=a,ht[bt++]=r,ht[bt++]=0,ct=e,gt=u?e[0]===D||e[0]===Q?(vt[dt++]=Qe,wn):(ct=e[S],Qe):Qe)):za(Lr(["internal",i]))):za(Lr(["internal","$privilege violation in "+us(pt)])):za(Lr(["internal","$namespace invalid in "+us(pt)])))}function Ni(){var r=ht[bt-1];ht[bt-1]=ct,gt=(ct=r)===ur?tn:(vt[dt++]=tn,wn)}function ji(){var r=ht[bt-2];ht[bt-2]=ct,gt=(ct=r)===ur?an:(vt[dt++]=an,wn)}function Ti(){var r=ht[--bt],e=ht[--bt],n=ct,t=ht[--bt];if((ct=t[3](r,e,n,t))!==$t)return ct===Mt?(ct=Et,st=Cr(r,Cr(e,Cr(n,ur))),void(gt=Nn)):void(ct!==Rt?gt=vt[--dt]:ha(Ft,Wt,Cr(r,Cr(e,Cr(n,ur)))));fi(t,r,e,n)}function Pi(){var r,e=ht[bt-3],n=bt-3-e,t=ht[bt-2],i=ht[bt-1];function a(r){return r<0||e<=r?ur:ht[n+r]}if(t<e)return ct=ht[n+t],gt=lt===ie&&1==t||lt===ye&&0===t?(lt=ur,En):(vt[dt++]=En,wn),void(ht[bt++]=lt);if(ht[bt++]=mt,ht[mt=bt++]=ut,vt[dt++]=it,ht[bt++]=dt,ht[bt++]=!1,(ct=i[0]===Q?u(i[x])?wo(i,e,0,a):yo(null,i,e,0,a):i[3](e,a,i,ht[n-1]))===$t)return Ii(),vt[dt-1]=qn,gt=Le,void(Tt=1);if(ct!==Mt)if(ct!==Rt)gt=vt[--dt];else{for(st=ur,r=e;0<=--r;)st=Cr(ht[n+r],st);ha(Ft,Wt,st)}else{for(ct=Et,st=ur,r=e;0<=--r;)st=Cr(ht[n+r],st);gt=Nn}}function Ai(){lt=ht[--bt];var r=ht[bt-3],e=ht[bt-2];ht[bt-3-r+e]=ct,ht[bt-2]=e+1,gt=qn}function Ii(){bt-=2,ht[--bt]!==ut&&yu(lu,"naanUnlinkArbFrame: lost frame sync"),(mt=ht[--bt])<Nt&&So()}function $i(){var r=ht[bt-1];r&&r[x].trap?Nu(r,ct):(Ii(),r=ht[bt-3],bt=bt-4-r,gt=vt[--dt])}function Mi(){var r=mt;if(ht[r]!==Gn)return!1;for(var e=dt;;){var n=vt[--e];if(n!==yn){if(n===Ye||n===Zn)break;return!1}}for(;ht[r]===Gn;){if(ht[r+3]!==ur||ht[r+5][2][0]===D)return!1;r=ht[r-1]}return r}function qi(r,e){if(e[1]!==Gr&&e[1]!==Qr)return!1;var n,t;if(ht[r]===Vn)n=ht[r-3],t=Ei;else{if(ht[r]!==Qn)return!1;n=ht[r-ht[r-2]-6],t=Ri}if(ht[r+2])return!1;if(n[1]===Gr||n[1]===Ur){var i=n[2][1],e=e[2][1];if(i[H]!==e[H])return!1;for(var a=e;a=a[2][3][".parent"];)if(a===i)return!1}else if(n[1]!==Qr)return!1;return t(r)}function Ei(r){var e=ht[r-3],n=e[2][2][1];return n!==ur&&e[1]!==Qr&&(n[1]=ht[r-2]),dt=ht[r+1]-1,r-4}function Ri(r){var e=ht[r-2],n=ht[r-6-e];if(n[1]!==Qr)for(var t=n[2][2][1],i=r-2-e,a=e;0<=--a&&t[0]===D;)t[1]!==ur&&(t[1][1]=ht[i]),++i,t=t[2];return dt=ht[r+1]-1,r-7-e}function Fi(){var r,e,n,t=Mi();!t||(n=qi(t,e=ht[(r=bt)-1]))&&(mt=ht[t-1],ht[n+0]=ht[r-2],ht[n+1]=e,bt=n+2)}function Wi(r){var e=Mi();if(e){var n=bt,t=ht[n-4-r],i=qi(e,t);if(i){for(mt=ht[e-1],ht[i+0]=ht[n-5-r],ht[i+1]=t,ht[i+2]=ht[n-3-r],ht[i+3]=ht[n-2-r],ht[i+4]=ht[n-1-r],n-=r,i+=5;0<=--r;)ht[i++]=ht[n++];bt=i}}}function _i(){for(var r=ht[--bt],e=ht[bt-1-r],n=ht[bt-2-r],t=ht[bt-3-r],i=ct;;){if(e[0]===D)ht[bt++]=i,++r,e=e[2];else if(n[0]!==D){Wi(r);for(var a=ht[bt-4-r],u=a[2][1][H],e=a[2][2][1],o=bt-r,f=!1;e[0]===D;){if(i=e[1][1],e[1]===ur)f=!0;else{if(e[1][0]!==z)return void za(Lr(["internal","$parameter is not a symbol"]));if(e[1][H]!==u)return void za(Lr(["internal","$parameters in foreign namespace: "+C(e[1][H])+ms.NSinfix+e[1][Y]+" from: "+C(u)]));e[1][1]=f?ur:ht[o]}ht[o++]=i,e=e[2]}return ht[bt++]=r,lt=ur,st=a[2][2][2],ct=ur,ht[bt++]=mt,ht[mt=bt++]=Qn,vt[dt++]=Ye,ht[bt++]=dt,ht[bt++]=!1,gt=hn,"number"==typeof(i=ht[bt-11-r])&&(a=_t,_t=ht[i],ht[bt-11-r]=a),void(pr=u)}if(n[0]!==D?i=ur:(i=n[1],n=n[2]),t!==ur){if(i[0]===D||i[0]===Q)break;i=i[S]}}ht[bt-2-r]=n,ht[bt-1-r]=e,ht[bt++]=r,ct=i,vt[dt++]=Qe,gt=wn}function Ci(){var r;Fi();var e=ht[bt-1],n=e[2][2][1];ht[bt++]=n[1],A(n)&&(n[1]=ct),lt=ur,st=e[2][2][2],ct=ur,ht[bt++]=mt,ht[mt=bt++]=Vn,vt[dt++]=Zn,ht[bt++]=dt,ht[bt++]=!1,gt=hn,"number"==typeof(r=ht[bt-8])&&(n=_t,_t=ht[r],ht[bt-8]=n),pr=e[2][1][H]}function Bi(){var r,e=ht[bt-1];e&&e[x].trap?Nu(e,ct):(bt-=2,ht[--bt]!==Vn&&yu(lu,"nadiCallNoSpread2: lost frame sync"),(mt=ht[--bt])<Nt&&So(),(e=(r=ht[bt-2])[2][2][1])!==ur&&r[1]!==Qr&&(e[1]=ht[bt-1]),bt-=3,_t=ht[--bt],pr=ht[--bt],gt=vt[--dt])}function Li(){var r=ht[bt-1];if(r&&r[x].trap)Nu(r,ct);else{bt-=2,ht[--bt]!==Qn&&yu(lu,"nadiCallComplete: lost frame sync"),(mt=ht[--bt])<Nt&&So();var e=ht[--bt],r=ht[bt-4-e];if(r[1]!==Qr)for(var n=r[2][2][1],t=bt-e,i=e;0<=--i&&n[0]===D;)n[1]!==ur&&(n[1][1]=ht[t]),++t,n=n[2];bt-=e+5,_t=ht[--bt],pr=ht[--bt],gt=vt[--dt]}}function Di(){lt=Zr,st=ct,Pt=ct=ur,gt=hn}function zi(){ht[bt++]=mt,ht[mt=bt++]=Gn,ht[bt++]=dt,ht[bt++]=!1,ht[bt++]=lt,ht[bt++]=st,ht[bt++]=st,gt=bn}function Zi(){for(var r=ht[bt-1],e=ht[bt-3];;){if(Pt=ct,gt===yn?(gt=bn,r=r[2],ht[bt-1]=r):gt===mn&&(gt=bn,A(Pt)?(e=ur,r=r[1][2],ht[bt-3]=e):r=r[2],ht[bt-1]=r),r[0]!==D){if(e!==ur)return r=ht[bt-2],void(ht[bt-1]=r);gt=vt[--dt]}else{if(kt&&0==--kt)return void ju({state:Wr("task"),body:ht[bt-2],task:r,loop:e,value:Pt});if(r[1].breakpoint&&Su(r))return;if(r[1][0]!==D){if((ct=r[1])[0]===Q)return vt[dt++]=yn,void(gt=wn);ct=ct[1],gt=yn;continue}if(r[1][1][0]===D){if(r[1][1][1][0]!==D)return ct=r[1][1],vt[dt++]=mn,void(gt=wn);e===ur&&r[2][0]!==D?(r=r[1],e=ur,ht[bt-1]=r,ht[bt-2]=r,ht[bt-3]=e):(kt&&++kt,ht[bt-1]=r[2],r=r[1],e=ur,ht[bt++]=mt,ht[mt=bt++]=Gn,ht[bt++]=dt,ht[bt++]=!1,ht[bt++]=e,ht[bt++]=r,ht[bt++]=r,vt[dt++]=bn),ht[bt-6]!==Gn&&yu(lu,"nadiBody1: lost frame sync");continue}if(ct=r[1],gt=ct[1][U]!==ur?(pt=ct[1],lt=Zr,st=ct[2],ct=pt[U],kn):wn,!(nu<=su&&e===ur&&r[2][0]!==D))return void(vt[dt++]=yn)}var n=ht[bt-4];return n&&n[x].trap?(vt[dt++]=gt,gt=at,void Nu(n,ct)):(bt-=5,ht[--bt]!==Gn&&yu(lu,"nadiBody4: lost frame sync"),void(mt=ht[--bt]))}}function Xi(){bt-=5,ht[--bt]!==Gn&&yu(lu,"nadiBody4: lost frame sync"),mt=ht[--bt],gt=vt[--dt]}function Gi(){ht[bt++]=ur,ht[bt++]=ur,ht[bt++]=ct,gt=vn}function Ji(){var r=ht[bt-1];if(r[0]!==D)return ct=ht[bt-2],bt-=3,void(gt=vt[--dt]);ct=r[1],vt[dt++]=dn,gt=wn}function Vi(){var r=ht[bt-1],e=ht[bt-3],n=Cr(ct,ur);e!==ur?e[2]=n:ht[bt-2]=n,ht[bt-3]=n,ht[bt-1]=r[2],gt=vn}function Qi(){ht[bt++]=ct,gt=He,ct=Zr}function Ui(){var r=ht[bt-1];if(!A(ct)||r[0]!==D)return--bt,void(gt=vt[--dt]);ct=r[1],ht[bt-1]=r[2],vt[dt++]=He,gt=wn}function Hi(){ht[bt++]=ct,gt=Cn,ct=ur}function Yi(){var r=ht[bt-1];if(A(ct)||r[0]!==D)return--bt,void(gt=vt[--dt]);ct=r[1],ht[bt-1]=r[2],vt[dt++]=Cn,gt=wn}function Ki(){ht[bt++]=ct,st=ct[2][1],ct=st,vt[dt++]=ln,gt=wn}function ra(){Ec(ht[--bt][1],ct),gt=vt[--dt]}function ea(){ht[bt++]=0,ht[bt++]=ct,gt=$n}function na(){var r=ht[bt-1];if(r[0]!==D)return bt-=2,ct=ur,void(gt=vt[--dt]);ct=r[1][1],vt[dt++]=Mn,gt=wn}function ta(){var r=ht[bt-1];gt=A(ct)?(0!==ht[bt-2]&&(ht[ht[bt-2]]=Yn),bt-=2,st=r[1][2],lt=ur,hn):(ht[bt-1]=r[2],$n)}function ia(){ct=(ht[bt++]=ct)[1],vt[dt++]=cn,gt=wn}function aa(){var r=ht[--bt];ct=r[2][1][1]=Cr(ct,r[2][1][1]),gt=vt[--dt]}function ua(){ht[bt++]=ct[2][2],ht[bt++]=ct[2][1],ct=ct[1],ht[bt++]=ct,vt[dt++]=Fn,gt=wn}function oa(){ht[bt-1]=ct,ct=ht[bt-2],vt[dt++]=Wn,gt=wn}function fa(){ua(),vt[dt-1]=Ge}function ca(){gt===Wn?ht[bt-2]=ct:ht[bt-1]=ct,st=ht[--bt],ct=ht[--bt],lt=ht[--bt],gt===Ge&&ct[0]===D&&(ct[2][0]!==D?ct=ct[1]:(ht[bt++]=lt,ht[bt++]=ct[2],ht[bt++]=st,vt[dt++]=Ge,ct=ct[1],lt=ur)),gt=Je,ht[bt++]=lt,ht[bt++]=st}function sa(){var r=ur;if(st=ct,ct=ht[--bt],lt=ht[--bt],!A(ct))return ct=ur,void(gt=vt[--dt]);switch(ct[0]){case D:if(st[0]===X||st[0]===G){var e=Eo(st,65535);if(null!==e){for(r=ct,e=Math.abs(e);r[0]===D&&0<=--e;)r=r[2];s.negative(st[3])||(r=r[1])}}else if(ga(pe))return;break;case z:if(ga(ge))return;if(lt===ur)return pa();r=ur;break;case k:if(ga(xe))return;if(lt===ur)return pa();r=ur;break;case Z:return ga(be)?void 0:lt===ur?pa():void va("String");case X:return la()?void 0:ga(ve)?void 0:lt===ur?pa():void va("Number");case G:return la()?void 0:ga(de)?void 0:lt===ur?pa():void va("Number");case Q:if(Cu(ct[3])){var r=ur,n=st[0]===z?st[Y]:st[0]===Z?st[K]:(st[0]===X||st[0]===G)&&Eo(st,Number.MAX_SAFE_INTEGER);if(L(ct[3]))if("length"==n)r=Ao(ct[3].length);else{if(ga(ye))return;if(st[0]===X)(r=ct[3][n])===B&&(r=ur);else if(lt!==ur)return st=Cr(ct,Cr(pt=st,lt[1])),lt=ye,ct=$e[3],void(gt=kn)}else if(!1!==n)if(ct[3].hasOwnProperty(n))r=ct[3][n];else if(ct[3]instanceof Du)lt!==ur?(r=eo(ct,n))===ur&&(r=eo(ct,".undefined"))!==ur&&(lt=Cr(Cr(st,lt[1]),ur)):(r=eo(ct,".."+n))!==ur&&(lt=Cr(ur,ur));else if(ga(me))return}else if(r=vo(ct,st),lt!==ur)return st=Cr(ct,Cr(pt=st,lt[1])),lt=ie,ct=Ee[3],void(gt=kn);break;default:return pa()}if(lt===ur)return ct=r,void(gt=vt[--dt]);pt=st;for(var t=0;r[0]===z&&!(++t>Ct);)if(r[3]!==ur)r=r[3];else{if(r[1]===r)break;r=r[1]}ht[bt++]=ct,vt[dt++]=Ve,st=lt[1],lt=Zr,ct=r,gt=tt}function la(){return(st[0]===X||st[0]===G)&&(gt=vt[--dt],za(Lr(["internal","numeric scalar dereference"]),ur),1)}function pa(){ct=lt===ur&&ct[0]===Z&&(st[0]===Z&&"length"==st[K]||st[0]===z&&"length"==st[Y])?Ao(ct[K].length):ct[0]===z?Cr(ie,Cr(ct,Cr(st,lt))):ur,gt=vt[--dt]}function ga(r){var e=Wc(r,st);if(!A(e)){if(ct[0]===D)return;if(!A(e=Wc(ct,st)))return}pt=st;for(var n=0;e[0]===z&&!(++n>Ct);)if(e[3]!==ur)e=e[3];else{if(e[1]===e)break;e=e[1]}return st=Cr(Cr(ne,Cr(ct,ur)),lt[1]),lt=Zr,ct=e,gt=kn,1}function va(r){r=jr(r,[cr,sr]);st=Cr(r,Cr(pt=st,Cr(ct,lt[1]))),lt=ie,ct=Ee[3],gt=kn}function da(){--bt,gt=vt[--dt]}function ha(r,e,n,t){var i=eo(r,e);i===ur&&(i=eo(r,".undefined"))!==ur&&(n=Cr(Cr(Wr(e),n),ur));for(var a=0;i[0]===z&&!(++a>Ct);)if(i[3]!==ur)i=i[3];else{if(i[1]===i)break;i=i[1]}ht[bt++]=r,vt[dt++]=Ve,st=n,lt=t?Zr:ur,ct=i,gt=tt}function ba(){At=ct;var r=gt===De,e=ht[bt-1];if(e&&e[x].trap)return Nu(e,ct),ht[bt-13]=kt,void(ht[bt-14]=wt);gt=vt[--dt],bt-=2,ht[--bt]!==Xn&&yu(lu,"nadiInterruptRestore: lost frame sync"),(mt=ht[--bt])<Nt&&So(),ct=ht[--bt],st=ht[--bt],lt=ht[--bt],pt=ht[--bt],_t=ht[--bt],pr=ht[--bt],bt-=2,wt?bt-=2:(kt=ht[--bt],wt=ht[--bt]),r&&(ct=At)}function ya(){var r=pt,e=lt,n=st,t=ct,i=r[0]>=J&&r[0]<=J?r[3](t,n,e,r):ur;i===$t?fi(r,t,n,e):(ct=i,gt=vt[--dt])}function ma(){wu(ct),gt=vt[--dt]}function ka(){ht[bt++]=ur,ht[bt++]=Un,ht[bt++]=ur,ht[bt++]=ct,ht[bt++]=mt,ht[mt=bt++]=Jn,ht[bt++]=dt,ht[bt++]=!1,lt=ur,st=ct[1],ct=ur,vt[dt++]=Ln,gt=hn}function wa(){ht[bt-6]=ct,ht[bt-3]=ot,mt<Nt&&So(),ht[bt-7]===Yn&&(Kr[1]=Kr),ct=ht[bt-5],lt=ur,st=ct[2][2][1],ct=ur,vt[dt++]=Dn,gt=hn}function xa(){ct=ht[bt-6],st=ht[bt-7],lt=ht[bt-8],mt=ht[bt-4];var r=ht[bt-1];r&&r[x].trap?Nu(r,ct):(bt-=2,ht[--bt]!==ot&&yu(lu,"nadiCatch2: lost frame sync"),bt-=5,gt=(st===Yn||st===Un||(st===rt?(Za(ct),ht[mt]==Jn&&(Kr[1]=Kr)):st===et?Ga(lt):st===nt?Ja(lt):Da(Kr[1],Zr)),vt[--dt]))}function Oa(){return ur}function Sa(r){return r[0]!==D&&r[0]!==Q?r[1]:(vt[dt++]=wn,r)}function Na(r,e){return vt[dt++]=Nn,st=e,r}function ja(r){return vt[dt++]=ze,lt=Zr,st=r[2],r[1]}function Ta(r){return vt[dt++]=ze,lt=ur,st=r[2],r[1]}$r("undefined",Oa,J);var Pa=Ir(Ta,V);function Aa(r){return vt[dt++]=gn,r}function Ia(r){return vt[dt++]=Ue,r}function $a(r){return vt[dt++]=_n,r}function Ma(r){return vt[dt++]=pn,r}function qa(r){return r[0]!==D?ur:(vt[dt++]=sn,r)}function Ea(r){return vt[dt++]=In,r}function Ra(r){return r[2][1][0]!==z?ur:_e(r[2][1])?(vt[dt++]=fn,r):ct}function Fa(r){return vt[dt++]=Rn,r}function Wa(r){return vt[dt++]=Xe,r}function _a(r){return vt[dt++]=jn,r}function Ca(r){return vt[dt++]=rn,r}function Ba(r){return vt[dt++]=Bn,r}function La(){if(void 0===ct||void 0===st||void 0===lt||void 0===pt)debugger;var r,e,n,t,i=mt;if(bt<mt||mt+50<bt)debugger;for(t=0;t<bt;++t)if(void 0===ht[t])debugger;for(;0<i;){switch(ht[i]){case Vn:if(!I((e=ht[i-3])[1]))debugger;if(ht[i-6][0]!=k)debugger;if((n=ht[i+1])<0||dt+1<n)debugger;if(vt[n-1]!=Zn)debugger;break;case Qn:if((r=ht[i-2])<0||1e3<r)debugger;if(!I((e=ht[i-6-r])[1]))debugger;if(ht[i-9-r][0]!=k)debugger;if((n=ht[i+1])<0||dt+1<n)debugger;if(vt[n-1]!=Ye)debugger;break;case ut:if((r=ht[i-4])<0||1e3<r)debugger;if((e=ht[i-2])[0]!=O&&e[0]!=Q)debugger;if(n=ht[i+1],vt[n-1]!=it)debugger;break;case Gn:if((n=ht[i+1])<0||dt+1<n)debugger;break;case Jn:if(ht[i-4]<0||ht[i-4]>nt)debugger;if((n=ht[i+1])<0||dt+1<n)debugger;break;case ot:break;case Xn:if(ht[i-7][0]!=k)debugger;break;default:debugger}if(ht[i-1]<0||ht[i-1]>=i)debugger;i=ht[i-1]}}function Da(r,e){var n,t,i,a=mt;if(La(),r[0]===D&&r[1][0]===z&&"internal"==r[1][Y]&&r[2][1]===re&&re[U]!==ur)return Vt(Cr(re,ur),"escape"),vt[dt++]=gt,ct;if(Kr[U]!==ur&&e===ur)return Kr[1]===Kr&&(Kr[1]=r),gt=vt[--dt],Vt(Cr(Ae,Cr(Kr[1],Cr(Zr,ur))),"exception-rethrow"),Vt(Cr(Kr,Cr(r,ur)),"exception-hook"),vt[dt++]=gt,ct;for(ct=ur;0<a;){var u=ht[a];switch(u){case Vn:vu<=nu&&xu(r),t=ht[a-2],(i=ht[a-3][2][2][1])!==ur&&(i[1]=t),_t=ht[a-5],pr=ht[a-6];break;case Qn:for(vu<=nu&&xu(r),t=ht[a-2],i=ht[a-6-t][2][2][1],n=t-1;0<=n;--n)i[1][1]=ht[a-3-n],i=i[2];_t=ht[a-8-t],pr=ht[a-9-t];break;case ut:vu<=nu&&xu(r);break;case Gn:break;case Jn:return ht[(mt=a)-4]!==Un?(ht[a-4]===Yn&&(Kr[1]=r),ht[a-4]=Kn,bt=a+3,dt=ht[a+1],vt[dt++]=Ln):(Kr[1]=r,mt<Nt&&So(),ht[a-4]=Hn,bt=a+3,dt=ht[a+1],ct=ht[a-2],ht[bt++]=a-4,ht[bt++]=ct[2][1],vt[dt++]=Ln,vt[dt++]=$n),Kr;case ot:break;case Xn:if(_t=ht[a-6],pr=ht[a-7],"future"==ht[a-8])ht[a-9][2][2][1][x][".exception"]=r;else{if("debugger"==us(Kr[1]))break;if(!/fiberwake|escape|xcallback/.test(ht[a-8]))break}return Kr[1]=Kr,bt=a+3,dt=ht[a+1],ur;default:yu(lu,"nfuncThrow: unknown frame type on stack: "+u)}a=ht[a-1]}return Kr[1]!==Kr&&(r=Kr[1]),r[0]===D&&r[1][0]===z&&"internal"==r[1][Y]?r[2][1]!==re&&yu(lu,us(r[2][1])):"debugger"!=us(r)&&yu(lu,"uncaught exception: "+us(r)),Jt(Lr(["driver"])),vt[dt++]=gt,ct}function za(r){Da(r,ur),gt=vt[--dt]}function Za(r,e){for(var n,t,i,a,u=mt;0<u;){var o=ht[u];switch(o){case Qn:if(t=ht[u-2],(a=ht[u-6-t])[1]!==Ur)return dt=ht[u+1],(mt=u)<Nt&&So(),bt=u+3,r;for(i=a[2][2][1],n=t-1;0<=n;--n)i[1][1]=ht[u-3-n],i=i[2];_t=ht[u-8-t],pr=ht[u-9-t];break;case Vn:if((a=ht[u-3])[1]!==Ur)return dt=ht[u+1],(mt=u)<Nt&&So(),bt=u+3,r;t=ht[u-2],(i=a[2][2][1])!==ur&&(i[1]=t),_t=ht[u-5],pr=ht[u-6];break;case ut:case Gn:break;case Jn:if(e)break;return ht[(mt=u)-4]=rt,ht[u-3]=r,bt=u+3,dt=ht[u+1],vt[dt++]=Ln,r;case ot:case Xn:break;default:yu(lu,"naanReturn: unknown frame type on stack: "+o)}u=ht[u-1]}return Da(Lr(["internal","$orphaned return"]),ur)}function Xa(r,e){return Za(r?e(0):Pt)}function Ga(r){for(var e,n,t,i,a=mt;0<a;){var u=ht[a];switch(u){case Qn:if(e=ht[a-2],(i=ht[a-6-e])[1]===Ur){for(t=i[2][2][1],n=e-1;0<=n;--n)t[1][1]=ht[a-3-n],t=t[2];_t=ht[a-8-e],pr=ht[a-9-e];break}case Vn:a=-1;continue;case ut:break;case Gn:if(ht[a+3]!==Zr)break;if(r!==ur&&jc(r,ht[a+4][S])===ur)break;return dt=ht[a+1],bt=(mt=a)+6,ht[a+3]=ur,ht[a+5]=ur,vt[dt++]=bn,Pt;case Jn:return ht[(mt=a)-5]=r,ht[a-4]=et,bt=a+3,dt=ht[a+1],vt[dt++]=Ln,Pt;case ot:case Xn:break;default:yu(lu,"nfuncBreak: unknown frame type on stack: "+u)}a=ht[a-1]}return Da(Lr(["internal",'$break tag "'+us(r)+'" not found']),ur)}function Ja(r){for(var e,n,t,i,a=mt;0<a;){var u=ht[a];switch(u){case Qn:if(e=ht[a-2],(i=ht[a-6-e])[1]===Ur){for(t=i[2][2][1],n=e-1;0<=n;--n)t[1][1]=ht[a-3-n],t=t[2];_t=ht[a-8-e],pr=ht[a-9-e];break}case Vn:a=-1;continue;case ut:break;case Gn:if(ht[a+3]!==Zr)break;if(r!==ur&&jc(r,ht[a+4][S])===ur)break;return dt=ht[a+1],bt=(mt=a)+6,ht[a+5]=ht[a+4],vt[dt++]=bn,ur;case Jn:return ht[(mt=a)-5]=r,ht[a-4]=nt,bt=a+3,dt=ht[a+1],vt[dt++]=Ln,Pt;case ot:case Xn:break;default:yu(lu,"nfuncContinue: unknown frame type on stack: "+u)}a=ht[a-1]}return Da(Lr(["internal",'$continue tag "'+us(r)+'" not found']),ur)}function Va(r){var n=[],t=[];function i(r){var e=cc(r)!==ur?r[H]:r,r=n.indexOf(e);return r<0&&(r=n.push(e)-1,t[r]={}),t[r]}function e(r,e){i(r)[r[Y]]=e}function a(r){return i(r)[r[Y]]}for(var u=ur;0<r;){var o,f,c,s,l,p,g,v,d,h,b,y=ht[r];switch(y){case Vn:p=ht[r-2],g=ht[r-3],v=ht[r-4],ht[r-5],b=ht[r-6],d=g[1],(o=a(h=g[2][2][1]))===B&&(o=h[1]),e(h,p),l=h===ur?ur:Cr(h,Cr(h[1],Cr(p,ur))),s=Cr(d,Cr(v,Cr(l,Cr(g,Cr(b,ur)))));break;case Qn:for(f=ht[r-2],g=ht[r-6-f],v=ht[r-7-f],ht[r-8-f],b=ht[r-9-f],d=g[1],h=g[2][2][1],l=ur,c=f-1;0<=c;--c)(o=a(h[1]))===B&&(o=h[1][1]),l=Cr(Cr(h[1],Cr(o,Cr(ht[r-3-c],ur))),l),h=h[2];for(h=g[2][2][1],c=f-1;0<=c;--c)e(h[1],ht[r-3-c]),h=h[2];s=Cr(d,Cr(v,Cr(l=Df(l,ur),Cr(g,Cr(b,ur)))));break;case ut:for(f=ht[r-4],d=(g=ht[r-2])[0]===O?le:we,l=ur,c=f-1;0<=c;--c)l=Cr(ht[r-4-f+c],l);s=Cr(d,Cr(l,Cr(g,ur)));break;case Gn:s=Cr(d=ht[r+3]===ur?ae:ue,Cr(ht[r+4],Cr(ht[r+5],ur)));break;case Jn:s=Cr(d=oe,Cr(ht[r-2],ur));break;case ot:break;case Xn:s=Cr(d=fe,Cr(ht[r-7],Cr(Wr(ht[r-8]),Cr(ht[r-9],ur))));break;default:return yu(lu,"nfuncStacktrace: unknown frame type on stack: "+y),ur}s[1]===ur&&yu(lu,"nfuncStacktrace: bad frameid"),u=Cr(s,u),r=ht[r-1]}return Df(u,ur)}function Qa(r,e){for(var n=mt;0<n;){var t=ht[n];switch(t){case Vn:case Qn:case ut:case Gn:case Jn:case ot:case Xn:if(0<r--){n=ht[n-1];continue}var i=ht[n+2];return i=i||(e?ht[n+2]=Lu():ur);default:return yu(lu,"naanFrameHook: unknown frame type on stack: "+t),ur}}return ur}function Ua(r){for(var e,n=mt;0<n;){var t=ht[n];switch(t){case Vn:return ht[n-3];case Qn:return e=ht[n-2],ht[n-6-e];case ut:case Gn:case Jn:case ot:case Xn:break;default:return yu(lu,"nfuncCaller: unknown frame type on stack: "+t),ur}n=ht[n-1]}return ur}function Ha(r){for(var e,n=mt;0<n;){var t=ht[n];switch(t){case Vn:return ht[n-6];case Qn:return e=ht[n-2],ht[n-9-e];case ut:case Gn:case Jn:case ot:case Xn:break;default:return yu(lu,"nfuncNscaller: unknown frame type on stack: "+t),ur}n=ht[n-1]}return ur}function Ya(r,e){var n,t,i,a,u,o,f,c,s;function l(r){switch(r){case Qn:case Vn:case ut:case Jn:case ot:case Xn:return 3;case Gn:return 6}}(s=[]).saveThis=_t,s.saveExecNS=pr,s.stephook=wt,s.stepping=kt,s.stack1=ct,s.stack2=st,s.stack3=lt,s.stack4=pt,a=mt,u=bt,f=dt;r:for(;0<a;){switch(n={},0!==Nt&&Nt<a&&(n.sprint=!0),n.ftype=ht[a],o=a+l(n.ftype),n.runargs=ht.slice(o,u),n.ftype){case Qn:for(n.argcount=ht[a-2],u=a-9-n.argcount,n.execNS=ht[a-9-n.argcount],n.saveThis=ht[a-8-n.argcount],n.fname=ht[a-7-n.argcount],n.fbind=ht[a-6-n.argcount],n.feval=ht[a-5-n.argcount],n.inarg=ht[a-4-n.argcount],n.inparm=ht[a-3-n.argcount],n.arglist=[],i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)n.arglist.push(i[1][1]),i=i[2];if(c=ht[a+1]-1,n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n),e){if((n.fbind[1]===Jr||n.fbind[1]===Hr)&&n.fbind[1]!==Ur)for(i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)i[1][1]=ht[a-3-t],i=i[2];_t=n.saveThis,pr=n.execNS}if(!0===r&&n.fbind[1]!==Ur)break r;break;case Vn:if(u=a-6,n.execNS=ht[a-6],n.saveThis=ht[a-5],n.fname=ht[a-4],n.fbind=ht[a-3],i=n.fbind[2][2][1],n.arg=i[1],c=ht[a+1]-1,n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n),e&&(i===ur||n.fbind[1]!==Jr&&n.fbind[1]!==Hr||(i[1]=ht[a-2]),_t=n.saveThis,pr=n.execNS),!0===r)break r;break;case ut:for(n.argcount=ht[a-4],u=a-6-n.argcount,n.targetThis=ht[a-6-n.argcount],n.arglist=[],t=n.argcount-1;0<=t;--t)n.arglist.push(ht[a-5-t]);n.inarg=ht[a-3],n.fbind=ht[a-2],c=ht[a+1]-1,n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n),e&&(_t=n.saveThis,pr=n.execNS);break;case Gn:u=a-1,n.loop=ht[a+3],n.body=ht[a+4],n.task=ht[a+5],c=ht[a+1],n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n);break;case Jn:case ot:u=a-5,n.tag=ht[a-5],n.status=ht[a-4],n.result=ht[a-3],n.catchargs=ht[a-2],c=ht[a+1],n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n);break;case Xn:break r;default:yu(lu,"naanSaveProcState: unknown frame type on stack: "+n.ftype)}if(a=ht[a-1],f=c,"number"==typeof r&&a<=r)break r}return e&&((mt=a)<Nt&&So(),bt=a+l(ht[mt]),dt=c),s}function Ka(r){for(var e,n,t,i,a=r.length-1;0<=a;--a){switch((e=r[a]).ftype){case Qn:for(ht[bt++]=e.execNS,ht[bt++]=e.saveThis,ht[bt++]=e.fname,ht[bt++]=e.fbind,ht[bt++]=e.feval,ht[bt++]=e.inarg,ht[bt++]=e.inparm,t=e.fbind[2][2][1],n=0;n<e.argcount;++n)ht[bt++]=t[1][1],e.fbind[1]!==Jr&&e.fbind[1]!==Hr||t[1]===ur||(t[1][1]=e.arglist[n]),t=t[2];ht[bt++]=e.argcount,ht[bt++]=mt,mt=bt,ht[bt++]=Qn,ht[bt++]=dt+1,ht[bt++]=e.hook;break;case Vn:ht[bt++]=e.execNS,ht[bt++]=e.saveThis,ht[bt++]=e.fname,ht[bt++]=e.fbind,t=e.fbind[2][2][1],ht[bt++]=t[1],e.fbind[1]!==Jr&&e.fbind[1]!==Hr||t===ur||(t[1][1]=e.arg),ht[bt++]=mt,mt=bt,ht[bt++]=Vn,ht[bt++]=dt+1,ht[bt++]=e.hook;break;case ut:for(ht[bt++]=e.targetThis,n=0;n<e.argcount;++n)ht[bt++]=e.arglist[n];ht[bt++]=e.argcount,ht[bt++]=e.inarg,ht[bt++]=e.fbind,ht[bt++]=mt,mt=bt,ht[bt++]=ut,ht[bt++]=dt+1,ht[bt++]=e.hook;break;case Gn:ht[bt++]=mt,mt=bt,ht[bt++]=Gn,ht[bt++]=dt,ht[bt++]=e.hook,ht[bt++]=e.loop,ht[bt++]=e.body,ht[bt++]=e.task;break;case Jn:case ot:ht[bt++]=e.tag,ht[bt++]=e.status,ht[bt++]=e.result,ht[bt++]=e.catchargs,ht[bt++]=mt,mt=bt,ht[bt++]=e.ftype,ht[bt++]=dt,ht[bt++]=e.hook;break;case Xn:default:yu(lu,"naanRunProcState: unknown frame type on stack: "+e.ftype)}for(i=0;i<e.runstates.length;++i)vt[dt++]=e.runstates[i];for(n=0;n<e.runargs.length;++n)ht[bt++]=e.runargs[n];e.sprint&&(0===Nt?Oo():mt<Nt&&(Nt=mt))}ct=r.stack1,st=r.stack2,lt=r.stack3,pt=r.stack4,wt=r.stephook,kt=r.stepping,_t=r.saveThis,pr=r.saveExecNS}function ru(){var r=ko(0);return r[w]=ur,r[x].execstate=Ya(!0),r}function eu(r,e){return r[0]!==Q||Cu(r[x])||!L(r[x].execstate)?ur:(Ka(r[x].execstate),ct=e)}var nu=lu,tu=0,iu=0,au=30,uu=0,ou=3*au,fu="",cu=0,su=0,lu=1,pu=2,gu=3,vu=4,du=5,hu=ur,bu=hu[1];function yu(r,e){if(r<=nu&&P.hasOwnProperty("debug-write"))try{P["debug-write"](e,r)}catch(r){}}function mu(){var r="",e=0;for((ou<=tu||tu<uu)&&(iu=Math.floor(tu/au)*au-2*au,uu=iu+au,ou=iu+3*au,0<iu&&(r="*")),0<iu&&(r+=tu.toString(),r=" ".substring(r.length)+r+" ",e=iu);e++<tu;)r+=e%2==0?"| ":" ";return r}function ku(r,e,n,t){0<fu.length&&yu(cu,fu);for(var i=n,a="";i[g]===D;)0<a.length&&(a+=" "),t&&i[1][0]===z?a+=us(i[1][1],{quote:Zr}):a+=us(i[1],{quote:Zr}),i=i[N];fu=mu()+e+"("+a+")",cu=r,++tu}function wu(r){--tu<0&&(tu=0),0<fu.length?(yu(cu,fu+"==> "+us(r,{quote:Zr})),fu=""):yu(vu,mu()+"==> "+us(r,{quote:Zr}))}function xu(r){--tu<0&&(tu=0),0<fu.length?(yu(cu,fu+"==> unknown"),fu=""):yu(vu,mu()+"==> unknown"),yu(vu,"==> proc terminated by throw: ",us(r))}function Ou(){nu=pu,fu="",cu=tu=0}function Su(r){if(qu[1]===qu&&r[1].breakpoint[0]===Q){var e=r[1].breakpoint[x];if(Cu(e)&&A(e.enable))return qu[1]=r,Vt(Cr(Pa,Cr(e.proc,Cr(r[1].breakpoint,Cr(Pt,ur)))),"breakpoint"),1}}function Nu(r,e){var n;r[x].steps?(0<=(n=Eo(r[x].steps,65535))&&(kt=n+1,wt=r[x].trap),delete r[x].steps):Vt(Cr(Pa,Cr(r[x].trap,Cr(e,ur))),"frametrap"),delete r[x].trap}function ju(r){var e=wt;wt=kt=!1;var n=Lu();F(n[x],r),Vt(Cr(Pa,Cr(e,Cr(n,ur))),"steptrap")}function Tu(){return Va(mt)}function Pu(r){return r[1][0]!==z?ur:(hu=r[1],bu=hu[1],r[1])}function Au(r,e){for(var n="",t=0;t<r;++t)n+=us(e(t)),t<r-1&&(n+=" ");return""!==n&&yu(pu,n),Zr}function Iu(r,e){var n=nu;nu=pu,Au(r,e),nu=n;debugger;return Zr}function $u(r){var e=nu;return null===(nu=Eo(r,9))&&(nu=e),Ao(e)}function Mu(r,e){function i(r,e){if(r[0]===Q){var n,t=r[x];if(!L(t)||!Cu(t))return;for(n=0;n<t.length;++n)i(t[n],e)}else{if(r[0]!==D)return;e===Dr?delete r[1].breakpoint:r[1].breakpoint=e}return 1}if(0===r)return $(qu[1]===qu);var n=e(0);if(n[0]===z)return 1<r?ur:(n===Zr?qu[1]=qu:n===ur&&(qu[1]=ur),$(qu[1]===qu));if(2<r)return ur;var t=e(1);if(t!==ur){if(t!==Dr){r=Lu(),e=r[x];return e.enable=Zr,e.proc=t,i(n,r)?r:ur}i(n,t)}else if(n[1].breakpoint)return n[1].breakpoint;return ur}var qu=$r("breakpoint",Mu,O);function Eu(r,e,n){var t,i,r=Eo(r,65535);if(null===r||r<0)return ur;if(e===ur)return Qa(r);if(e[0]===X){if(s.negative(e[3]))return ur;t=e,i=n}else i=e;r=Qa(r,!0);return r!==ur&&(r[x].trap=i,t?r[x].steps=t:delete r[x].steps),r}var Ru="*饢* Rcz *饢*",Fu=function(){};function Wu(r){var p=new WeakMap;return function r(e){var n,t;if(p.get(e))return p.get(e);if(L(t=e[x])){n=_u(ye,ur),p.set(e,n);for(var i,a=n[x],u=0;u<t.length;++u)(i=t[u])[0]===Q&&Cu(i[x])?a[u]=r(i):a[u]=i}else{n=(e[3]instanceof Du?zu:Lu)(),p.set(e,n),n[2]=e[2];for(var o,f=n[x],c=Object.getOwnPropertyNames(t),s=0;s<c.length;++s){var l=t[o=c[s]];l[0]===Q&&Cu(l[x])?f[o]=r(l):f[o]=l}}return n}(r)}function _u(r,e,n){if(r===ur)return ur;if(r===me)return e[0]!==Q||L(e[x])?R(e):(Cu(e[x])?Lu:uo)(e[x]);if(r===ke){var t=zu();return e[0]===z&&e[3][1]===Qr&&_c(t,Wr(".closure"),e),t}if(r===ye){var i;if(e[0]===Q&&L(e[x])){if(!Cu(e[x]))return ao(e[x],new WeakMap);i=e[x].slice()}else i=E(e);return i[Ru]=Fu,_r(i)}if(r[0]===Q)return Cu(r[x])?Wu(r):ao(r[x],new WeakMap);if(r!==xe)return r===Oe?Vu():r===Se?Yu():r===Ne?hs(e,n):ur;if(e[0]!==Z&&e[0]!==X)return ur;e=vr(e);return fr.splice(0,0,e),e}function Cu(r){return L(r)?r[Ru]===Fu:r instanceof Fu}function Bu(){}function Lu(r){var e=_r(ur),n=new Bu;return r&&Object.assign(n,r),e[x]=n,e}function Du(){}function zu(){var r=_r(ur),e=new Du;return r[x]=e,r}Bu.prototype=Object.create(Fu.prototype),Bu.prototype.constructor=Bu,Du.prototype=Object.create(Fu.prototype),Du.prototype.constructor=Du;var Zu=0,Xu={};function Gu(r){return null===(r=Eo(r,Number.MAX_SAFE_INTEGER))||r<0?r=B:2147483647<r&&(r=2147483647),r}function Ju(i,n,t){var a,u,o=[],f=0,c=++Zu;function s(r,e){return e&&0<e?(l(),Xu[c].delay=e,setTimeout(r,e)):(Promise.resolve().then(r),-1)}function l(r){var e=Xu[c];(e=e||{nonce:i,start:(new Date).getTime(),waiting:[]}).count=f,n&&(e.execute=n),r&&e.waiting.push(r),Xu[c]=e}function p(r,e){e&&0<e&&clearTimeout(r)}function g(r){var e=i[x];if(e.hasOwnProperty(".exception")){var n=e[".exception"];return delete e[".exception"],r?Da(n,ur):za(n)}return r}function v(r){var e=Zr;for(u&&(!0===u?e=ur:(p(u,t),u=B)),a=r;0<o.length;)!function(n,t){var r;(r=Xu[c])&&r.waiting.pop(),s(function(){var r,e;r=n,e=t,Vt(Cr(ne,Cr(i,ur)),"fiberwake"),Ka(r),ct=e,g(),Ht(!0)})}(o.pop(),a);return jo(),delete Xu[c],e}function e(r){var e=pr,n=_t;return function(){!0!==u&&(++f,u=!0,Vt(Cr(Pa,Cr(r,Cr(i,ur))),"future"),_t=n,pr=e,Ht(!0),v(At),P.hasOwnProperty("interrupted")&&P.interrupted(h))}}n&&0<=t&&(u=s(e(n),t)),this.wait=$r("wait",function(r){if(a)return g(a);for(var e=mt;0<e&&ht[e]!==Xn;)e=ht[e-1];return r===ur&&(r=Ua()),gt!==Tn&&l(r),0<e?(o.push(Ya(!1,!0)),Zr):oi()},J,!0)[U],this.signal=$r("signal",v,J,!0)[U],this.reset=$r("reset",function(r){return!0===u&&a===B?Da(Lr(["internal","$can't reschedule future within itself"]),ur):(a=B,n&&(u&&!0!==u&&p(u,t),r=Gu(r),u=s(e(n),t=r||t||0)),i)},J,!0)[U]}function Vu(){var r=_r(!1),e=new Ju(r);return r[w]=ur,r[x]=e,r}function Qu(r){return $(r[0]===Q&&r[x]instanceof Ju)}function Uu(r,e){var n=_r(!1),e=new Ju(n,r,Gu(e));return e.cancel=e.signal,e.run=e.reset,delete e.signal,delete e.reset,n[w]=ur,n[x]=e,n}function Hu(){for(var r=Object.getOwnPropertyNames(Xu),e=ur,n=0;n<r.length;++n){var t=Xu[r[n]],i=new Bu;i.nonce=t.nonce,i.start=Ao(t.start),i.count=Ao(t.count),t.delay&&(i.delay=Ao(t.delay)),t.execute&&(i.execute=t.execute),t.waiting&&(i.waiting=q(t.waiting)),e=Cr(_r(i),e)}return e}function Yu(r){var e=_r(new WeakMap);return e[w]=ur,e}function Ku(r){return $(r[0]===Q&&r[x]instanceof WeakMap)}function ro(r,e){var b=[],y=[];function m(r,e){for(;;){if(r[0]!==D)return(r[0]===Q&&Cu(r[x])?k:Tc)(r,e);if(e[0]!==D)return ur;if(m(r[1],e[1])===ur)return ur;r=r[2],e=e[2]}}function k(r,e){var n;if(r===e)return Zr;if(b.push(r),L(r[x])){if(!L(e[x]))return ur;y.push(e);var t,i,a,u=r[x],o=e[x];if(u.length!=o.length)return ur;for(t=0;t<u.length;++t)if(i=u[t],a=o[t],"number"==typeof i){if(i!=a)return ur}else if(i[0]===Q&&Cu(i[x])){if((n=b.indexOf(i))!=y.indexOf(a))return ur;if(n<0&&(n=b.length,k(i,a)===ur))return ur;u[t]=n,o[t]=n}else if(m(i,a)===ur)return ur}else{if(L(e[x]))return ur;y.push(e);var f,c,s,l=r[x],p=e[x],g=Object.getOwnPropertyNames(l).sort(),v=Object.getOwnPropertyNames(p).sort();if(g.length!=v.length)return ur;for(f=0;f<g.length;++f){if((c=g[f])!=(s=v[f]))return ur;var d=l[c],h=p[s];if("number"==typeof d){if(d!=h)return ur}else if(d[0]===Q&&Cu(d[x])){if((n=b.indexOf(d))!=y.indexOf(h))return ur;if(n<0&&(n=b.length,k(d,h)===ur))return ur;l[c]=n,p[s]=n}else if(m(d,h)===ur)return ur}}return Zr}function s(r,e){if(r[0]===Q&&Cu(r[x]))if(L(r[x]))for(var n,t=r[x],i=0;i<t.length;++i)"number"==typeof(n=t[i])&&(n=e[n],t[i]=n),s(n,e);else for(var a,u=r[x],o=Object.getOwnPropertyNames(u),f=0;f<o.length;++f){var c=u[a=o[f]];"number"==typeof c&&(c=e[c],u[a]=c),s(c,e)}else r[0]===D&&(s(r[1],e),s(r[2],e))}if(r[0]!==Q||!Cu(r[x]))return ur;if(e[0]!==Q||!Cu(e[x]))return ur;var n=k(r,e);return s(r,b),s(e,y),n}function eo(r,e){for(var n=!0,t=r;t[0]===Q;){var i=t[3];if(i.hasOwnProperty(e))return i[e];if(n&&i.hasOwnProperty(".class"))t=i[".class"];else{if(!i.hasOwnProperty(".parent"))break;t=i[".parent"]}n=!1}return ur}function no(r,e,n){if(r[0]!==Q)return ur;if(r[3]instanceof Du){var t=eo(r,".="+oo(e));if(t!==ur){if(!_e(r,!0))return ct;gt=vt[--dt];t=Vt(Cr(Pa,Cr(t,Cr(n,ur))),"setdot",!0);return vt[dt++]=gt,_t=r,t}}return ho(r,e,n)}function to(r,e){for(var n=ur,t=n,i=0;i<r.length;++i){var a=new Array(v),u=(e?io:M)(u=r[i]);a[0]=D,a[1]=u,t!==(a[2]=ur)?t[2]=a:n=a,t=a}return n}function io(r){return"string"==typeof r?Wr(r):"number"==typeof r?(isFinite(r)&&Math.floor(r)==r?Ao:Io)(r):"boolean"==typeof r?$(r):r===B?Dr:null===r?zr:"object"==typeof r&&Cu(r)?r:_r(r)}function ao(r,e){if(r===B)return Dr;if(null===r)return zr;if("object"!=typeof r||Cu(r))return io(r);if(e.get(r))return e.get(r);var n=_r(r);if(e.set(r,n),L(r)){for(var t=r.length,i=[],a=0;a<t;++a)i.push(ao(r[a],e));i[Ru]=Fu}else{var u,o=Object.getOwnPropertyNames(r);if(0===o.length&&r.constructor!==Object)i=r;else if("0"===o[0]&&o[o.length-1]===(o.length-1).toString()&&"function"==typeof r.keys)i=r;else for(i=new Bu,u=0;u<o.length;++u)try{i[o[u]]=ao(r[o[u]],e)}catch(r){}}return n[x]=i,n}function uo(r){if(r===B)return Dr;if(null===r)return zr;if("object"!=typeof r||Cu(r))return io(r);for(var e=Object.getOwnPropertyNames(r),n=new Bu,t=0;t<e.length;++t)try{n[e[t]]=io(r[e[t]])}catch(r){}return _r(n)}function oo(r,e){if(r[0]===D){if(I(r[1])){var n,t=pr,i=_t;return function(){return n=to(arguments,!0),Vt(Cr(Pa,Cr(r,n)),"xcallback"),_t=i,pr=t,Ht(!0),P.hasOwnProperty("interrupted")&&P.interrupted(h),oo(At)}}for(f=[];r[0]===D;)f.push(oo(r[1])),r=r[2];return f}if(r[0]===z)return r===Zr||r!==ur&&(r===Dr?B:r===zr?null:r[Y]);if(r[0]===Z)return r[K];if(r[0]===X)return qo(r[3]);if(r[0]===G)return r[er];if(r[0]===Q){var a=r[x];if(!Cu(a))return a;if(e){if(e.get(a))return e.get(a)}else e=new WeakMap;if(L(a)){var u,o=a.length,f=[];for(e.set(a,f),u=0;u<o;++u)f.push(oo(a[u],e))}else{var c,s=Object.getOwnPropertyNames(a);for(f={},e.set(a,f),c=0;c<s.length;++c)f[s[c]]=oo(a[s[c]],e)}}return f}function fo(r){if(r[0]===D)return r;if(r[0]!==Q)return ur;var e=r[x],n=Cu(e);if(L(e))return to(e,!n);for(var t=Object.getOwnPropertyNames(e),i=ur,a=t.length-1;0<=a;--a)try{var u,o=t[a];o!==B&&e[o]!==B&&(u=e[o],n||(u=io(u)),i=Cr(Cr(io(o),u),i))}catch(r){}return i}function co(r,e){function n(e,n,t){var i,a=pr,u=_t;return function(){i=Cr(arguments[0],Cr(io(arguments[1]),Cr(n,ur))),Vt(Cr(Pa,Cr(e,i)),"arrayfilter"),_t=u,pr=a;var r=Kr[1];if(Ht(!0),r!==Kr[1])throw It;return t?At:oo(At)}}function t(e){var n,t=pr,i=_t;return function(){if(e){n=to(arguments,!1),Vt(Cr(Pa,Cr(e,n)),"arraycompare"),_t=i,pr=t;var r=Kr[1];if(Ht(!0),r!==Kr[1])throw It;r=oo(At)}else r=nf(arguments[0],arguments[1])!==ur?1:tf(arguments[0],arguments[1])!==ur?-1:0;return r}}function i(r,e,n){var t;if(e){if(e[0]!==X)return ur;null===(t=qo(e[3],Number.MAX_SAFE_INTEGER))?t=n:(t<0&&(t=r-1+t),r<=t&&(t=r-1))}else t=n;return t}function a(r,e){var n="";e=e?oo(e):",";for(var t=0;t<r.length;++t){var i=oo(r[t]);0<t?n=n+e+i:n+=i}return io(n)}if(r<2)return ur;var u=e(0),o=e(1);if(u[0]!==Q||o[0]===D||o[0]===Q&&Cu(o))return ur;var f=u[3];if(!Cu(f)||!L(f))return ur;for(var c,s=oo(o),l=[],p=0;p<r-2;++p)switch(s){case"every":case"filter":case"find":case"findIndex":case"forEach":case"some":0===p&&l.push(n(e(p+2),u));break;case"map":0===p&&l.push(n(e(p+2),u,!0));break;case"indexOf":case"join":case"lastIndexOf":case"push":case"unshift":l.push(e(p+2));break;case"concat":hc(c=e(p+2))!==ur?l.push(c[3]):l.push([c]);break;case"copyWithin":case"slice":l.push(oo(e(p+2)));break;case"pop":case"reverse":case"shift":break;case"reduce":case"reduceRight":0===p?l.push(function(e,n){var t,i=pr,a=_t;return function(){t=Cr(arguments[0],Cr(arguments[1],Cr(io(arguments[2]),Cr(n,ur)))),Vt(Cr(Pa,Cr(e,t)),"arrayreduce"),_t=a,pr=i;var r=Kr[1];if(Ht(!0),r!==Kr[1])throw It;return At}}(e(p+2),u)):1==p&&l.push(e(p+2));break;case"sort":0===p&&l.push(t(e(p+2)));break;case"fill":0===p?l.push(e(p+2)):l.push(oo(e(p+2)));break;case"splice":p<2?l.push(oo(e(p+2))):l.push(e(p+2));break;default:return ur}var g=!0;switch(s){case"find":g=!1;case"every":case"filter":case"findIndex":case"forEach":case"map":case"some":if(l.length<1)return ur;break;case"sort":0===l.length&&l.push(t());break;case"indexOf":return function(r,e,n){if((n=i(r.length,n,0))===ur)return ur;for(var t=n;t<r.length;++t)if(jc(r[t],e)!=ur)return Ao(t);return Ao(-1)}(f,l[0],l[1]);case"join":return l.length<1?a(f,!1):a(f,l[0]);case"lastIndexOf":return function(r,e,n){if((n=i(r.length,n,r.length-1))===ur)return ur;for(var t=n;0<=t;--t)if(jc(r[t],e)!=ur)return Ao(t);return Ao(-1)}(f,l[0],l[1]);case"pop":case"shift":g=!1;break;case"reduce":case"reduceRight":if(g=!1,l.length<1)return ur;if(l.length<2){if(f.length<1)return ur;l.push(f[0]),f=f.slice(1)}break;case"toString":return Qc(u,ur)}try{Tt=1,gt=Le;var v=Array.prototype[s],d=ur;return v!==B&&(d=v.apply(f,l),!g&&L(d)||(d=d===f?u:L(d)?(d[Ru]=Fu,_r(d)):io(d))),Tt=-1,d}catch(r){if(r===It)throw r;return Tt=-1,Da(Lr(["internal",'$arrayCall "'+s+'": '+r]),ur)}}function so(r,e){if(r[0]!==Q)return ur;var n,r=r[x];if(e[0]===z)n=e[Y];else{if(e[0]!==Z)return ur;n=e[K]}return $(r.hasOwnProperty(n))}function lo(r){if(r[0]===k)return zf(r);if(r[0]!==Q)return ur;r=r[x];return L(r)?ur:to(Object.getOwnPropertyNames(r),!0)}function po(r){return $(r[0]===Q&&!Cu(r[3]))}function go(r,e){if(e===ur&&(e=lr),r[0]!==Q||e[0]!==k)return ur;if(pr!==cr){if(r[H]!==ur)return r[H]==e?r:ur;if(e!==lr&&e!==pr&&e!==fr[0])return Da(Lr(["internal","$can't lock "+us(r)+" to "+C(e)]),ur),ur}return r[H]=e,r}function vo(r,e){if(r[0]!==Q)return ur;var n=r[3];if(n instanceof WeakMap&&e[0]!==Z&&e[0]!==X&&e[0]!==G){r=n.get(e);return r===B&&(r=ur),M(r)}if(e[0]===D||e[0]===Q&&Cu(e))return ur;var t=oo(e);try{return Cu(n)||n instanceof WeakMap?L(n)&&"length"==t?io(n.length):n.hasOwnProperty(t)?M(n[t]):ur:io(n[t])}catch(r){return Da(Lr(["internal",'$xget "'+t+'": '+r]),ur)}}function ho(r,e,n){if(r[0]!==Q)return ur;var t=r[3];if(t instanceof WeakMap&&e[0]!==Z&&e[0]!==X&&e[0]!==G)return _e(r,!0)?(n===Dr?t.delete(e):t.set(e,n),n):ct;if(e[0]===D||e[0]===Q&&Cu(e))return ur;if(!_e(r,!0))return ct;var i=oo(e);try{if(n===Dr)delete t[i];else if(Cu(t)||t instanceof WeakMap)if(L(t))if("length"==i)t.length=oo(n);else{var a,u=parseInt(i);if(u!=u+"")return Da(Lr(["internal","$non-numeric array index"]),ur);for(t[i]=n,a=0;a<i;++a)t[a]===B&&(t[a]=ur)}else t[i]=n;else t[i]=oo(n);return n}catch(r){return Da(Lr(["internal",'$xset "'+i+'": '+r]),ur)}}function bo(r,e){return r<2?ur:yo(e(0),e(1),r-2,2,e)}function yo(r,e,n,t,i){if(e[0]===D||e[0]===Q&&Cu(e[3]))return ur;var a=oo(e),u=null;if(r&&r[0]===Q){if(Cu(u=r[3]))return ur;if(u instanceof WeakMap)return ur}for(var o,f=ur,c=u===Number||u===String||u===Boolean,s=[],l=0;l<n;++l)s[l]=oo(i(l+t));try{return Tt=1,gt=Le,e[0]===Q?f=io(e[3].apply(u,s)):(u.prototype!==B&&(o=u.prototype[a])!==B||(c=!1,o=u[a]),o!==B&&(f=io(c?o.apply(s[0],s.slice(1)):o.apply(u,s)))),Tt=-1,f}catch(r){return Tt=-1,Da(Lr(["internal",'$xcall "'+a+'": '+r]),ur)}}function mo(r,e,n){if(r[0]!==Q||e[0]===D||e[0]===Q&&Cu(e))return ur;var t=n===ur?[]:oo(n);if(!L(t))return ur;var i=oo(e),a=null;if(r[0]===Q){if(Cu(a=r[3])){if(a.hasOwnProperty(i)){r=a[i];if(L(r))return Na(r,n)}return ur}if(a instanceof WeakMap)return ur}var u,o=ur,f=a===Number||a===String||a===Boolean;try{return Tt=1,gt=Le,e[0]===Q?o=io(e[3].apply(a,t)):(a.prototype!==B&&(u=a.prototype[i])!==B||(f=!1,u=a[i]),u!==B&&(o=io(f?u.apply(t[0],t.slice(1)):u.apply(a,t)))),Tt=-1,o}catch(r){return Tt=-1,Da(Lr(["internal",'$xapply "'+i+'": '+r]),ur)}}function ko(r,e){return Oo(),0<r?wo(e(0),r-1,1,e):wo(B,0,0,e)}function wo(r,e,n,t){var i;if(r===B)return(i=io({}))[w]=uo({persist:!0}),i;if(r[0]===Z||r[0]===z)return io(l[Fr(r)]);if(r[0]===X)return _r(s.bigInt2uint8(r[rr]));if(r[0]===D)return _r(oo(r));if(r[0]!==Q)return ur;var a,u=r[3];if(Cu(u))return io(oo(r));if(u===WeakMap)return ur;try{if("function"==typeof u){for(var o=[null],f=0;f<e;++f)o.push(oo(t(f+n)));Tt=1,gt=Le;var c=new(Function.prototype.bind.apply(u,o));return Tt=-1,_r(c)}if(1<e)return ur;c=t(n);return Tt=1,gt=Le,i=0===e?("object"==typeof(a=Object.create(u))?_r:io)(a):c[0]!==Q?ur:("object"==typeof(a=Object.create(u,c[3]))?_r:io)(a),Tt=-1,i}catch(r){return Tt=-1,Da(Lr(["internal","$xnew: "+r]),ur)}}function xo(){return Oo(),Zr}function Oo(){0===Nt&&(St=Ot,Nt=mt,Ot=0)}function So(){mt<Nt&&(jt||(Ot=St),Nt=0)}function No(r){return Tt<0?(Tt=0,Zr):(Tt=1,oi())}function jo(){Tt=-1}function To(){return No()}function Po(r,e){var n=new Array(t);return n[0]=X,(n[1]=n)[2]=e,n[3]=r,n}function Ao(r,e){return"number"!=typeof r||isNaN(r)?ur:(e=e||ur,Po($o(r),e))}function Io(r){var e=new Array(c);return e[0]=G,(e[1]=e)[2]=ur,e[3]=r,e}function $o(r){var e=Math.abs(r);"number"==typeof e&&!isNaN(e)||(e=0);e=s.int2bigInt(e,a,1);return r<0&&(e=s.negate(e)),s.trim(e,1)}function Mo(r,e){var n=s.int2bigInt(e,64,1),t=1;return s.negative(r)&&(r=s.negate(r),t=-1),s.greater(r,n)?null:t*s.modInt(r,e+1)}function qo(r){var e=s.negative(r);e&&(r=s.negate(r));var n,t=s.bitSize(r);return r=a<t?Number.POSITIVE_INFINITY:i<t?(n=s.rightShift(r,t-i),s.modInt(n,Number.MAX_VALUE)*Math.pow(2,t-i)):s.modInt(r,Number.MAX_SAFE_INTEGER+1),e?-r:r}function Eo(r,e){if(r[0]===X)return Mo(r[3],e);if(r[0]===G){r=r[3];if(-e<=r&&r<=e)return r}return null}function Ro(r){if(s.bitSize(r)<=i)return qo(r);var e="";return s.negative(r)&&(r=s.negate(r),e="-"),e+s.bigInt2str(r,10)}function Fo(r){if("string"!=typeof r)return $o(r);r="-"==r.charAt(0)?s.negate(s.str2bigInt(r.substring(1),10,1)):s.str2bigInt(r,10,1);return r}function Wo(r,e,n,t){return r[0]===X?Po(s.negate(r[3]),ur):r[0]===G?Io(-r[3]):r[0]===Q&&r[3]instanceof Du?si(r,".negate"):ci(Tr(t[2][1],"extendNegate"))}function _o(r,e){return r[0]===X&&e[0]===X?Po(s.add(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]+e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])+e[3]):r[0]===G&&e[0]===X?Io(r[3]+qo(e[3])):ur}function Co(r,e,n){var t;if(2==r&&(t=_o(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".plus")}return ci(Tr(n[2][1],"extend+"))}function Bo(r,e){return r[0]===X&&e[0]===X?Po(s.sub(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]-e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])-e[3]):r[0]===G&&e[0]===X?Io(r[3]-qo(e[3])):ur}function Lo(r,e,n){var t;if(2==r&&(t=Bo(e(0),e(1)))!==ur)return t;if(1==r)return Wo(e(0),null,null,n);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".difference")}return ci(Tr(n[2][1],"extend-"))}function Do(r,e){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]*e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])*e[3]):r[0]===G&&e[0]===X?Io(r[3]*qo(e[3])):ur;var n=r[3],t=e[3],i=s.negative(n),r=s.negative(t);return i&&(n=s.negate(n)),r&&(t=s.negate(t)),n=s.greater(n,e[3])?s.mult(n,t):s.mult(t,n),i!=r&&(n=s.negate(n)),Po(n,ur)}function zo(r,e,n){var t;if(2==r&&(t=Do(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".times")}return ci(Tr(n[2][1],"extend*"))}function Zo(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]/e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])/e[3]):r[0]===G&&e[0]===X?Io(r[3]/qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".quotient"):e[0]===Q&&e[3]instanceof Du?si(e,".quotient"):ci(Tr(t[2][1],"extend/"));if(s.isZero(e[3]))return Da(Lr(["internal","$divide by zero"]),ur);var i=r[3],a=e[3],u=s.negative(i),o=s.negative(a);u&&(i=s.negate(i)),o&&(a=s.negate(a));t=s.dup(i),r=s.dup(i),e=o;return s.divide_(i,a,t,r),u&&(e=!o,s.isZero(r)||(t=s.addInt(t,1),r=s.sub(a,r))),e&&(t=s.negate(t)),Po(s.trim(t,1),ur)}function Xo(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]%e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])%e[3]):r[0]===G&&e[0]===X?Io(r[3]%qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".modulo"):e[0]===Q&&e[3]instanceof Du?si(e,".modulo"):ci(Tr(t[2][1],"extendMod"));if(s.isZero(e[3]))return Da(Lr(["internal","$divide by zero"]),ur);var i=r[3],a=e[3],t=s.negative(i),r=s.negative(a);t&&(i=s.negate(i)),r&&(a=s.negate(a));e=s.dup(i),r=s.dup(i);return s.divide_(i,a,e,r),t&&(s.isZero(r)||(r=s.sub(a,r))),Po(s.trim(r,1),ur)}function Go(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===Q&&r[3]instanceof Du?si(r,".divide"):e[0]===Q&&e[3]instanceof Du?si(e,".divide"):ci(Tr(t[2][1],"extendDivide"));if(s.isZero(e[3]))return Da(Lr(["internal","$divide by zero"]),ur);var i=r[3],a=e[3],u=s.negative(i),t=s.negative(a);u&&(i=s.negate(i)),t&&(a=s.negate(a));r=s.dup(i),e=s.dup(i);return s.divide_(i,a,r,e),u&&(s.isZero(e)||(r=s.addInt(r,1),e=s.sub(a,e))),Cr(Po(s.trim(r,1),ur),Po(s.trim(e,1),ur))}function Jo(r,e,n,t){return r[0]===X?Po(s.not(r[3]),ur):r[0]===G?Io(~r[3]):r[0]===Q&&r[3]instanceof Du?si(r,".bitnot"):ci(Tr(t[2][1],"extendBitNot"))}function Vo(r,e){return r[0]===X&&e[0]===X?Po(s.and(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]&e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])&e[3]):r[0]===G&&e[0]===X?Io(r[3]&qo(e[3])):ur}function Qo(r,e,n){var t;if(2==r&&(t=Vo(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".bitand")}return ci(Tr(n[2][1],"extendBitAnd"))}function Uo(r,e){return r[0]===X&&e[0]===X?Po(s.or(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]|e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])|e[3]):r[0]===G&&e[0]===X?Io(r[3]|qo(e[3])):ur}function Ho(r,e,n){var t;if(2==r&&(t=Uo(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".bitor")}return ci(Tr(n[2][1],"extendBitOr"))}function Yo(r,e){return r[0]===X&&e[0]===X?Po(s.xor(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]^e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])^e[3]):r[0]===G&&e[0]===X?Io(r[3]^qo(e[3])):ur}function Ko(r,e,n){var t;if(2==r&&(t=Yo(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".bitxor")}return ci(Tr(n[2][1],"extendBitXor"))}function rf(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]<<e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])<<e[3]):r[0]===G&&e[0]===X?Io(r[3]<<qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".shiftleft"):e[0]===Q&&e[3]instanceof Du?si(e,".shiftleft"):ci(Tr(t[2][1],"extendShiftLeft"));e=qo(e[3]);if(e<0)e=0;else if(o<e)return Da(Lr(["internal","shiftleft > ".concat(o)]),ur);return Po(s.leftShift(r[3],e),ur)}function ef(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]>>e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])>>e[3]):r[0]===G&&e[0]===X?Io(r[3]>>qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".shiftright"):e[0]===Q&&e[3]instanceof Du?si(e,".shiftright"):ci(Tr(t[2][1],"extendShiftRight"));e=qo(e[3]);return e<0&&(e=0),Po(s.rightShift(r[3],e),ur)}function nf(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?$(r[3]>e[3]):r[0]===X&&e[0]===G?$(qo(r[3])>e[3]):r[0]===G&&e[0]===X?$(r[3]>qo(e[3])):r[0]===Z&&e[0]===Z?$(r[K]>e[K]):r[0]===Q&&r[3]instanceof Du?si(r,".greater"):e[0]===Q&&e[3]instanceof Du?si(e,".greater"):t?ci(Tr(t[2][1],"extend>")):ur;if(s.equals(r[3],e[3]))return ur;if(s.negative(r[3])){if(!s.negative(e[3]))return ur}else if(s.negative(e[3]))return Zr;return $(s.greater(r[3],e[3]))}function tf(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?$(r[3]<e[3]):r[0]===X&&e[0]===G?$(qo(r[3])<e[3]):r[0]===G&&e[0]===X?$(r[3]<qo(e[3])):r[0]===Z&&e[0]===Z?$(r[K]<e[K]):r[0]===Q&&r[3]instanceof Du?si(r,".lesser"):e[0]===Q&&e[3]instanceof Du?si(e,".lesser"):t?ci(Tr(t[2][1],"extend<")):ur;if(s.equals(r[3],e[3]))return ur;if(s.negative(r[3])){if(!s.negative(e[3]))return Zr}else if(s.negative(e[3]))return ur;return $(!s.greater(r[3],e[3]))}function af(r,e,n,t){return r[0]===G?r:r[0]===X?Io(qo(r[3])):r[0]===Z?Io(parseFloat(r[3])):r[0]===Q&&"number"==typeof r[x]?Io(r[x]):r[0]===Q&&r[3]instanceof Du?si(r,".tofloat"):ci(Tr(t[2][1],"extendTofloat"))}function uf(r){return null!==(r=Eo(r,36))&&2<=r?r:-1}function of(r,e){if(r[0]===G)return Ao(Math.floor(r[3]));if(r[0]===X)return Po(r[x],ur);if(r[0]===Z){if(0!==r[3].indexOf("0x"))return e===ur?Ao(parseInt(r[3])):((n=uf(e[3]))<0&&(n=10),Ao(parseInt(r[3],n)));n=Ao(parseInt(r[3],16));return n[w]=uo({hexcon:!0}),n}if(r[0]===Q){var n=r[x].valueOf();if("number"==typeof n)return isFinite(n)?Ao(n):ur;try{if(r[x]instanceof Uint8Array)return Po(s.uint82bigInt(r[x]),ur)}catch(r){return ur}}return ur}function ff(r){return r[w]!==ur&&A(r[w][x].hexcon)}function cf(r){return r[1]}function sf(r){return r[1]}function lf(r){return r[2]}function pf(r){return r[1][1]}function gf(r){return r[2][1]}function vf(r){return r[1][2]}function df(r){return r[2][2]}function hf(r){return r[1][1][1]}function bf(r){return r[2][1][1]}function yf(r){return r[1][2][1]}function mf(r){return r[2][2][1]}function kf(r){return r[1][1][2]}function wf(r){return r[2][1][2]}function xf(r){return r[1][2][2]}function Of(r){return r[2][2][2]}function Sf(r){return r[1][1][1][1]}function Nf(r){return r[2][1][1][1]}function jf(r){return r[1][2][1][1]}function Tf(r){return r[2][2][1][1]}function Pf(r){return r[1][1][2][1]}function Af(r){return r[2][1][2][1]}function If(r){return r[1][2][2][1]}function $f(r){return r[2][2][2][1]}function Mf(r){return r[1][1][1][2]}function qf(r){return r[2][1][1][2]}function Ef(r){return r[1][2][1][2]}function Rf(r){return r[2][2][1][2]}function Ff(r){return r[1][1][2][2]}function Wf(r){return r[2][1][2][2]}function _f(r){return r[1][2][2][2]}function Cf(r){return r[2][2][2][2]}function Bf(r,e){if(0===r)return ur;if(1==r)return Cr(e(0),ur);for(var n=e(--r);0<=--r;)n=Cr(e(r,e),n);return n}function Lf(r,e){if(0===r)return ur;for(var n=e(0);0<--r;)n=Cr(e(r,e),n);return n}function Df(r,e){for(;r[0]===D;)e=Cr(r[1],e),r=r[2];return e}function zf(r){var e,n;if(r[0]===k&&0<=(n=or.indexOf(r)))e=or[n][tr];else{if(r!==ur)return ur;e=fr[0][tr]}for(var t=ur,i=null,a=0;a<e.length;++a){var u=Cr(e[a],ur);i?i[2]=u:t=u,i=u}return t}function Zf(r,e){var n;e===ur&&(e=(n=r[2][1])===Xr?fr[0]:n!==ur?n[H]:ur);e=Ce(r,e);return"string"==typeof e?Da(Lr(["internal",e]),ur):_e(e[2][1])?e:ct}function Xf(r){function e(r){for(var e=-1;++e<Ct;){var n=r[2][3][".parent"];if(!n)return[r,e];r=n}return[ur,e]}function n(r){var e=r[2][3][".base"];return e||r}if(r[0]!==z||r[3]===ur)return ur;var t,i;[t,i]=e(r=r[3][2][1]);var a=n(t);if(a===ur)return ur;for(var u=br(r[Y]),o=ur,f=0;f<u.length;++f){var c,s,l=u[f];[c,s]=e(l),s==i&&n(c)===a&&(o=Cr(l,o))}return o}function Gf(r){var e=r[1];if(e[0]!==z||e[1][0]!==D)return ur;r=e[1][1];return e[1]=e[1][2],r}function Jf(r,e){return _e(r,!0)?(r[2]=e,r):ct}function Vf(r){return je[1]=r}function Qf(r,i){return function r(e){if(jc(e,i)!==ur)return ur;for(var n,t=0;;){if(jc(e,i)!==ur){t=-t,n=ur;break}if(e[0]!==D)return!1;if(n=r(e[1]))break;e=e[2],++t}return Cr(Ao(t),n)}(r)||ur}Ju.prototype=Object.create(Fu.prototype),Ju.prototype.constructor=Ju;var Uf=100,Hf=101,Yf=102,Kf=103,rc=104,ec=105,nc=106;function tc(r,e){if(!r)return-1;for(var n=!1,t=0;t<r;++t){var i=e(t),a=i[0];if(a===Q&&Cu(i[x])&&(a=L(i[x])?Hf:i[x]instanceof Du?Kf:i[x]instanceof Ju?rc:i[x]instanceof WeakMap?ec:i[x]instanceof vs?nc:Yf),n){if(a!==n)if(n===X&&a===G||n===G&&a===X)n=Uf;else if(n!==Uf||n!==G&&a!==X)return-1}else n=a}return n}function ic(r,e){switch(tc(r,e)){case D:return pe;case z:return ge;case Z:return be;case X:return ve;case G:return de;case J:case O:return le;case V:return Vr;case Q:return we;case k:return xe;case Uf:return he;case Hf:return ye;case Yf:return me;case Kf:return ke;case rc:return Oe;case ec:return Se;case nc:return Ne}return ur}function ac(r){return $(r[0]===z&&r[Y]==Xr[Y])}function uc(r,e,n){var t=tc(r,e);if(t===G||t===X||t===Uf)return Zr;for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".numeric")}return ci(Tr(n[2][1],"extendNumeric"))}function oc(r,e){return $(tc(r,e)===X)}function fc(r,e){return $(tc(r,e)===G)}function cc(r){return r[0]===z&&r[H][tr][r[H][ir][r[Y]]]===r?r:r[0]===Z?Nr(r[K]):ur}function sc(r){var e;if(r[0]===z)e=r[Y];else{if(r[0]!==Z)return ur;e=r[K]}return Fe(e)}function lc(r){return $(r[0]===z)}function pc(r){return $(r[0]===Z)}function gc(r){return $(r[0]===z||r[0]===Z)}function vc(r){return $(r[0]>=J&&r[0]<=V)}function dc(r){return $(r[0]===D&&I(r[1]))}function hc(r){return $(r[0]===Q&&Cu(r[3])&&L(r[3]))}function bc(r){return $(r[0]===Q&&r[3]instanceof Bu)}function yc(r){return $(r[0]===Q&&r[3]instanceof Du)}function mc(r){return $(r[0]!==D)}function kc(r){return $(r[0]===D)}function wc(r){return $(r[0]!==D)}function xc(r){return r[0]===X?$(!s.negative(r[3])&&!s.isZero(r[3])):r[0]===G?$(0<r[3]):ur}function Oc(r){return r[0]===X?$(s.negative(r[3])):r[0]===G?$(r[3]<0):ur}function Sc(r){return r[0]===X?$(s.isZero(r[3])):r[0]===G?$(0===r[3]):ur}function Nc(r){if(r[0]===X)return $(0===s.modInt(r[3],2));if(r[0]!==G)return ur;r=r[3]/2;return $(r==Math.floor(r))}function jc(r,e,n,t){return r[0]===X&&e[0]===X?$(s.equals(r[3],e[3])):r[0]===G&&e[0]===G?$(r[3]===e[3]):r[0]===X&&e[0]===G||r[0]===G&&e[0]===X?r[0]===Q&&r[3]instanceof Du?si(r,".eq"):e[0]===Q&&e[3]instanceof Du?si(e,".eq"):ci(Tr(t[2][1],"extendEq")):r[0]===Z&&e[0]===Z||r[0]===Q&&e[0]===Q?$(r[3]===e[3]):$(r==e)}function Tc(r,e,n,t){return r[0]===z&&e[0]===z?r===e||r[Y]===e[Y]?Zr:ur:r[0]===X&&e[0]===G?$(qo(r[3])==e[3]):r[0]===G&&e[0]===X?$(r[3]==qo(e[3])):r[0]===J&&e[0]===J||r[0]===O&&e[0]===O||r[0]===V&&e[0]===V?$(r[nr]===e[nr]):jc(r,e,n,t)}function Pc(r,e){for(;;){if(r[0]!==D)return(r[0]===Q&&Cu(r[x])?ro:Tc)(r,e);if(e[0]!==D)return ur;if(Pc(r[1],e[1])===ur)return ur;r=r[2],e=e[2]}}function Ac(r,e){for(;;){if(e[0]!==D)return ur;if(Pc(r,e[1])===Zr)return e;e=e[2]}}function Ic(r,e){for(var n;;){if(e[0]!==D)return ur;if(Pc(r,e[1])===Zr)return e;if(e[1][0]===D&&(n=Ic(r,e[1]))!==ur)return n;e=e[2]}}function $c(r,e){return r[0]===X&&e[0]===X||r[0]===G&&e[0]===G?tf(r,e):r[0]!==z||e[0]!==z?r[0]===Z&&e[0]===Z?$(r[K]<e[K]):r[0]===k&&e[0]===k?$c(r[j],e[j]):r[0]===X||e[0]!==X&&(r[0]===G||e[0]!==G&&(r[0]===z||e[0]!==z&&r[0]===Z))?Zr:ur:$(Pr(r)<Pr(e))}function Mc(r,e){for(;;){if(e[0]!==D)return r[0]!==D?$c(r,e):ur;if(r[0]!==D)return Zr;if(Mc(r[1],e[1])===Zr)return Zr;if(Pc(r[1],e[1])===ur)return ur;r=r[2],e=e[2]}}function qc(r){return $(!A(r))}function Ec(r,e){if(r[0]===D){for(var n=r;n[0]===D;){if(n[S]!==ur&&!_e(n[S]))return;n=n[N]}n=r;for(var t=e;n[0]===D;)t[0]!==D?n[S]!==ur&&(n[S][1]=t):(n[S]!==ur&&(n[S][1]=t[S]),t=t[N]),n=n[N]}else{if(!_e(r))return;r[1]=e}return 1}function Rc(r,e){return Ec(r,e)?e:ct}function Fc(r,e,n,t){function i(r){if(r[0]===z&&(r=r[U]),r[0]===J)return r[nr];if(r[0]===O){if((r=r[nr])===Co)return _o;if(r===Lo)return Bo;if(r===zo)return Do}return function(){return ur}}function a(r){return r[0]===Q&&r[3]instanceof Du&&(ha(r,t!==ur?".preadjust":".postadjust",Cr(r,Cr(e,Cr(n,ur)))),vt[dt++]=gt,1)}if(r[0]===D){var u,o=r[1],f=r[2][1];if(a(u=vo(o,f)))return ct;f=ho(o,f,i(e)(u,n))}else{if(r[0]!==z)return Da(Lr(["internal","$invalid adjust target"]),ur);if(a(u=r[1]))return ct;f=Rc(r,i(e)(u,n))}return t!==ur?f:u}function Wc(r,e){r=r[2];return bc(r)===ur?ur:vo(r,e)}function _c(r,e,n){if(!_e(r,!0))return ct;var t=r[2];if(t===ur)r[2]=t=_u(me,ur);else if(bc(t)===ur)return Da(Lr(["internal","$invalid put annotation target"]),ur);return e===ur?ur:ho(t,e,n)}function Cc(r,e,n){return _e(r,!0)?e[0]!==z?ur:(n===ur&&(t=r[2]),r[2]=W(e[2],t),r):ct;var t}function Bc(r){return r[0]>=J&&r[0]<=V&&Ns()===ur?Wr(r[3].name):r[0]!==z?ur:r[3]}function Lc(r,e){if(r[0]!==z)return ur;if(!_e(r))return ct;if(e[0]>=J&&e[0]<=V||e[0]===z)return r[3]=e;if(e[0]===D){var n=e[2][1][2];return r[2]!==n&&(r[2]=W(n)),r[3]=e}if(e[0]===Z)try{var t=function(r,e,n){return eval(r)}(e[K],{j2n:io,n2j:oo,nanu:_u,pl:os,ns:r[H]},ur);if("function"!=typeof t)return Wr("compile: not a function");var i=[O,null,r,t];return i[1]=i,r[3]=i}catch(r){return yu(gu,"compile: "+r.toString()),Wr(r)}return ur}function Dc(r,e){if(e[0]!==z||r[0]!==z)return ur;if(!_e(r))return ct;if(e[3][0]>=J&&e[3][0]<=V)return $r(r[Y],e[3][3],e[3][0]);if(e[3][0]!==D)return r[3]=e[3];var n=xr(e[Y]),t=e[3][2][1];t[Y]===Xr[Y]&&(n[S]=Xr),n[H]=t[H];e=Cr(e[3][1],Cr(n,e[3][2][2]));return n[3]=e,r[3]=e}var zc=!1;function Zc(r,e){return!zc&&gu<=nu&&(zc=!0,yu(gu,"warning: moveproc() is deprecated in favor of copyproc()")),Dc(e,r)}function Xc(r){return r===ur?cr:r[0]===z||r[0]===Q?r[H]:r[0]===k?r[j]:ur}function Gc(r){return r===ur?q(fr):r[0]===D?dr(r):r[0]===z&&r===Zr?q(or):ur}function Jc(r,e){if(0===r)return pr;var n=e(0);if(1==r&&n[0]===k){var t=pr;return pr===cr&&(pr=n),t}for(var i=0;i<r;++i){var a=e(i);if(a[0]===k)n=a;else{if(a[0]!==z&&a[0]!==Q)return ur;if(!A(a))return ur;n=a[H]}if(n!==ur&&(n!=pr&&pr!==cr))return ur}return Zr}function Vc(r,e){for(var n=[],t=0;t<r;++t)n.push(e(t));for(var i,a=ur,u=0;u<n.length;++u)(i=n[u])[0]===k?hr(i):a=Cr(i,a);return a}function Qc(r,e){var n;bc(e)&&(n=e[x]);r=Wr(us(r,n));return A(n.noquote)&&(r[w]=uo({noquote:!0})),r}function Uc(r,e){for(var n="",t=0;t<r;++t){var i=e(t);i[0]!==z&&i[0]!==X&&i[0]!==G&&i[0]!==Z||(n+=us(i))}return Wr(n)}function Hc(r){var e;if(r[0]===z)e=r[Y];else{if(r[0]!==Z){if(r[0]!==X)return ur;if(s.negative(r[3])||s.greater(r[3],s.int2bigInt(1114111,16,1)))return ur;var n=s.modInt(r[3],1114111);if(n<65536)e=String.fromCharCode(n);else try{e=String.fromCodePoint(n)}catch(r){return yu(gu,"warning: couldn't fromCodePoint("+n+")"),ur}return Wr(e)}e=r[K]}try{return Ao(e.codePointAt(0),uo({hexcon:!0}))}catch(r){return yu(gu,"warning: couldn't codePointAt(\""+e.substring(0,1)+'")'),Ao(e.charCodeAt(0))}}function Yc(r){var e;if(r[0]===z)e=xr(r[Y]);else{if(r[0]!==Z)return ur;e=xr(r[K])}return e[H]=fr[0],e}function Kc(r,e){var n,t;if(r[0]===Z)t=r[K];else if(r[0]===z)t=r[Y];else{if(r[0]!==Q||!RegExp.prototype.isPrototypeOf(r[x]))return ur;t=r[x]}if(e===ur)n=fr;else if(e===Zr)n=or;else{if(e[0]!==k)return ur;n=[e]}for(var i,a=[],u=0;u<n.length;++u){var o=n[u];if("string"==typeof t){if(o[ir].hasOwnProperty(t))return i=o[ir][t],o[tr][i]}else if(r[0]===Q)for(i=0;i<o[tr].length;++i){var f=o[tr][i];t.test(f[Y])&&a.push(f)}}return q(a)}function rs(r){if(r[0]!==D)return r[0]===z?r[Y]:r[0]===Z?r[K]:r[0]===X?ms.IntToString(r[rr],ff(r)):"";for(var e="";r[0]===D;)e+=rs(r[1]),r=r[2];return e}function es(r,e){for(var n="",t=0;t<r;++t)n+=rs(e(t));return We(n)}function ns(r){var e;if(r[0]===z)e=r[Y];else if(r[0]===Z)e=r[K];else{if(r[0]!==X)return ur;e=ms.IntToString(r[rr],ff(r))}var n,t=ur,i=null;if(0===e.length)return ur;for(n=0;n<e.length;++n){var a=Cr(Wr(e.charAt(n)),ur);i?i[2]=a:t=a,i=a}return t}function ts(r){if(r===ur)return Ao(0);if(r[0]===z)return Ao(r[Y].length);if(r[0]===Z)return Ao(r[K].length);if(r[0]===X||r[0]===G)return Ao(us(r).length);if(r[0]===Q){var e=r[x];return Cu(e)?L(e)?Ao(e.length):Ao(Object.getOwnPropertyNames(e).length):io(r[x].length)}if(r[0]!==D)return Ao(us(r).length);for(var n=1;r[2][0]===D;)++n,r=r[2];return Ao(n)}var is=new d.NaanChannel(this),as=new d.NaanChannel(this);function us(r,e,n){var t;e&&e.radix&&(t=uf(e.radix))<2&&(t=B),n===B&&(n=ms);var i="";if(r===B)return Dr[Y];if(null===r)return zr[Y];if(r[g]===D){if(r[N][0]!==D&&r[N]!==ur)i=n.ListToString([n.DottedPairToString(us(r[1],e,n),us(r[2],e,n))]);else{for(var a=r,u=[];a[g]===D;)a[N][0]!==D&&a[N]!==ur?u.push(n.DottedPairToString(us(a[1],e,n),us(a[2],e,n))):u.push(us(a[1],e,n)),a=a[N];i=n.ListToString(u)}return i}if(r[g]===z){var o=r[Y];if(e&&A(e.quote)&&(1!=o.length||p.indexOf(o)<0)){if(!A(e.nonamespace)){i=mr(r);if(i[0]===k)return o=n.QuoteSymbol(o),us(i[j],!1,n)+n.NSinfix+o}return n.QuoteSymbol(o)}return o}if(r[g]===Z)return!e||!A(e.quote)||r[w]!==ur&&A(r[w][x].noquote)?r[K]:n.QuoteString(r[K]);if(r[g]===X)return n.IntToString(r[rr],ff(r),t);if(r[g]===G)return n.FloatToString(r[er],t);if(r[g]>=J&&r[g]<=V){if(vu<=nu){var f=r[U]+"";return f.substring(9,f.indexOf("("))}f=Mr(r[3]);return f?"[Builtin "+f+"]":r[2][0]===z?"[Compiled "+r[2][Y]+"]":"[Compiled Function]"}if(r[g]===Q){var c=r[x];if(Cu(c)){if(L(c))return"Array["+c.length+"]";f=Object.getOwnPropertyNames(c).length;return c instanceof Ju?"Nonce{"+f+"}":c instanceof vs?"TextStream{"+f+"}":c instanceof WeakMap?"WeakMap{}":r[3]instanceof Du?"Object{"+f+"}":"Dictionary{"+f+"}"}try{if("function"==typeof c)return""!==c.name&&c.name?"[Function "+c.name+"]":"[Function ()]";var s=c.toString();return"["===s.substring(0,1)?s:"["+Object.prototype.toString.call(c).slice(8,-1)+" "+s+"]"}catch(r){return"[private object]"}}else if(r[g]===k)return"Namespace<"+us(r[j],!1,n)+">";debugger;return"unknown: "+r}function os(r,e){return ws[x].printline[3](r,e)}function fs(r,e){return ws[x].print[3](r,e)}function cs(r,e){return ws[x].printq[3](r,e)}function ss(r){return ws[x].printloc[3](r)}function ls(r){return ws[x].newline[3](r)}function ps(r){return ws[x].spaces[3](r)}function gs(r){return ws[x].isbreak[3](r)}function vs(r,e,n){var t,a,i=ur,u=!1,o=ur,f=ur,c=ur;function s(r){if(t.EOF())return r!==ur?ur:Da(Lr(["internal","$end-of-file"]),ur);if(c===ur)return oi();r=c;return c=ur,Da(r)}function l(){if(f[0]===D){var r=f[1];return f=f[2],o=r,1}r=function(r){var e,n;r:for(;;){if(null===(n=r.ReadToken()))return null;switch(n.type){case r.kTTNewline:case r.kTTSymbol:u&&(e=u[n.token])!==B||(e=We(n.token));break r;case r.kTTInteger:e=Po(n.token,ur);break r;case r.kTTHexInteger:e=Po(n.token,uo({hexcon:!0}));break r;case r.kTTString:e=Wr(n.token);break r;case r.kTTComment:case r.kTTCommentLine:var t=Lu();if(t[x].text=Wr(n.token),t[x].loc=Cr(Ao(n.loc.line),Cr(Ao(n.loc.column),ur)),i=Cr(t,i),n.type!=r.kTTCommentLine)continue;e=Sr("\n");break r;case r.kTTFloat:e=Io(parseFloat(n.token));break r}}return n.atom=e,n}(t);return null!==r&&((o=Lu())[x].atom=r.atom,o[x].loc=Cr(Ao(r.loc.line),Cr(Ao(r.loc.column),ur)),1)}function p(r,e){var n=r[x].atom;if(e[0]!==D)return e===be?n[0]===Z:e===ge?n[0]===z:Pc(n,e)===Zr;for(;;){if(e[0]!==D)return;if(e[1][0]===D)return;if(p(r,e[1]))return 1;e=e[2]}}function g(r,e){if(!jt&&a.Full())return oi();for(var n,t=ur,i=0;i<r;++i)n=us(t=e(i),!1,a),a.WriteString(n);return t}function v(r){return f=Cr(o,f),o=r}this.addtext=$r("addtext",function(r){return r[0]===Z?(t.AddText(r[K]),t.SetEOF(),r):ur},J,!0)[U],this.comments=$r("comments",function(){var r=i;return i=ur,r},J,!0)[U],this.isbreak=$r("isbreak",function(r){return $(r[0]===z&&a.IsBreak(r[Y].substring(0,1)))},J,!0)[U],this.linelength=$r("linelength",function(){return 80},J,!0)[U],this.newline=$r("newline",function(r){if(!jt&&a.Full())return oi();var e=1;if(r===ur||null!==(e=Eo(r,255))&&0<=e){for(;0<e--;)a.WriteString("\n");return Zr}return ur},J,!0)[U],this.spaces=$r("spaces",function(r){if(!jt&&a.Full())return oi();var e;if(null!==(e=Eo(r,255))&&0<=e)for(var n=Pe[1][Pe[1][0]===z?Y:K];0<e--;)a.WriteString(n);return Ao(a.Column())},J,!0)[U],this.printline=$r("printline",function(r,e){return e=g(r,e),a.WriteString("\n"),e},O,!0)[U],this.print=$r("print",g,O,!0)[U],this.printloc=$r("printloc",function(r){return Cr(Ao(a.Line()),Cr(Ao(a.Column()),ur))},J,!0)[U],this.printq=$r("printq",function(r,e){if(!jt&&a.Full())return oi();for(var n,t=ur,i=0;i<r;++i)n=us(t=e(i),t!==Pe[1]&&{quote:Zr},a),a.WriteString(n);return t},O,!0)[U],this.radix=$r("radix",function(r){var e,n=Cr(Ao(t.Radix()),Cr(Ao(a.Radix()),ur));return r[0]===D&&(0<=(e=uf(r[1]))&&t.SetRadix(e),0<=(r=uf(r[2][1]))&&t.SetRadix(r)),n},J,!0)[U],this.readchar=$r("readchar",function(){var r=t.ReadChar();return null!==r?Wr(r):c===ur?t.EOF()?ur:oi():(r=c,c=ur,Da(r))},J,!0)[U],this.readready=$r("readready",function(){return Ao(t.ReadReady())},J,!0)[U],this.reset=$r("reset",function(){t.Reset(),a.Reset()},J,!0)[U],this.setsymbols=$r("setsymbols",function(r){if(r===ur){if(u)return to(Object.values(u),u=!1)}else{if(r[0]!==D)return ur;for(var e={},n=r;n[0]===D;){if(n[1][0]!==z)return ur;e[n[1][Y]]=n[1],n=n[2]}u=e}return ge},J,!0)[U],this.taketext=$r("taketext",function(){return Wr(a.TakeText())},J,!0)[U],this.tokenread=$r("tokenread",function(r){return l()?o:s(r)},J,!0)[U],this.tokenlast=$r("tokenlast",function(r){return r===Zr&&(o=ur),o},J,!0)[U],this.tokenpush=$r("tokenpush",v,J,!0)[U],this.tokenmatch=$r("tokenmatch",function(r,e){var n=o;if(n[0]!==Q||!n[x].atom)return ur;if(Pc(n[x].atom,Te[1])!==Zr)return p(n,r)?n:ur;for(var t=n;;){if(!l())return s(e);if((n=o)[0]!==Q||!n[x].atom)return ur;if(Pc(n[x].atom,Te[1])!==Zr)break;t=n}return p(n,r)?n:(v(t),ur)},J,!0)[U],this.tokenpass=$r("tokenpass",function(r,e){for(var n=o;;){if(n!=ur&&!p(n,r))return n;if(!l())return s(e);n=o}},J,!0)[U],this.readex=$r("readex",function(r){return c=r},J,!0)[U],e===ur?t=is:L(e)?e[0]===Z&&((t=new d.NaanChannel(h)).ScanReset(),t.SetText(e[K]),t.SetEOF()):t=e,n===ur?a=as:L(n)?n===be&&(a=new d.NaanChannel(h)).SetWriteLimit(0):a=n,this.raw=_r({read:t,write:a})}function ds(r,e){var n=_r(!1),e=new vs(n,r,e);return n[w]=ur,n[x]=e,n}function hs(r,e){return r!==ur&&r[0]!==Z||e!==ur&&e!==be?ur:ds(r,e)}vs.prototype=Object.create(Fu.prototype),vs.prototype.constructor=vs;var bs=ds(is,as),ys=is,ms=as,ks=bs,ws=bs;function xs(r){var e=ks,n=ws;if(e===bs&&(e=ur),n===bs&&(n=ur),r[0]===D){if(r[2][0]!==D)return ur;var t=r[1],r=r[2][1];if(t===ur)t=bs;else if(t===Zr)t=ks;else if(Os(t)!==Zr)return ur;if(r===ur)r=bs;else if(r===Zr)r=ws;else if(Os(r)!==Zr)return ur;ys=(ks=t)[x].raw[x].read,ms=(ws=r)[x].raw[x].write}return Cr(e,Cr(n,ur))}function Os(r){return $(r[0]===Q&&r[x]instanceof vs)}function Ss(){return Ao((new Date).getTime())}function Ns(){return/param/.test(function(r){})?ur:Zr}function js(r){var e;if(r===ur)e=!1;else if(null===(e=Eo(r,32))||e<0)return ur;return ao(ui(e),new WeakMap)}function Ts(r){return P.hasOwnProperty("edit-set-string")?(P["edit-set-string"](us(r)),r):ur}function Ps(r){return P.hasOwnProperty("edit-get-string")?Wr(P["edit-get-string"]()):ur}var As=90,Is=e+1,$s=As+1;function Ms(){var c=new Array(1),s=[];function l(r){var e;if(r===B)return $s;if("object"!=typeof r)return r;var n,t,i=r[0];if(Is<i)return Math.floor(i/Is);if(i===Q&&!(Cu(t=(n=r)[x])?!(t instanceof Ju):!!(n[w]!==ur&&A(n[w][x].persist)||t.constructor&&m.hasOwnProperty(t.constructor.name)||t.NaanPersist)))return $s;var a=c.length+As;s.push(r),r[0]=i+a*Is;var u,o,f=Array(r.length);switch(c.push(f),(f[0]=i)===Q&&(e=function(r){var e,n,t=r[x],i=l(r[w]);if(Cu(t))if(L(t)){for(var a=[],u=0;u<t.length;++u)a.push(l(t[u]));e={na:a}}else{for(var o={},f=Object.getOwnPropertyNames(t),c=0;c<f.length;++c)o[f[c]]=l(t[f[c]],f[c]);e=r[3]instanceof Du?{no:o}:{nd:o},r[2]!==ur&&(e.tag=l(r[2]))}else try{e=t instanceof RegExp?{tag:i,type:t.constructor.name,state:[t.source,t.flags]}:t.StateSave!==B?{tag:i,type:t.constructor.name,state:t.StateSave()}:{tag:i,type:t.constructor.name,object:t}}catch(r){e={type:t.constructor.name}}return r[H]&&r[H]!==ur&&(n=or.indexOf(r[H]))<0&&(n=or.length),0<=n&&(e.xns=n),e}(r)),i){case D:f[2]=l(r[2]),f[1]=l(r[1]);break;case z:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=l(r[3]),f[4]=or.indexOf(r[4]).toString(),f[5]=r[5];break;case Z:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=r[3];break;case G:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=r[3].toString();break;case X:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=Ro(r[3]);break;case J:case O:case V:if(!(u=Mr(r[3])))return c.pop(),r[0]=i,$s;f[1]=l(r[1]),f[2]=l(r[2]),(o=jr(u,[cr,sr]))[0]===z&&o[Y]===u?f[3]=l(o):f[3]=u;break;case Q:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=e;break;case k:f[1]=or.indexOf(r).toString(),f.length=2;break;default:yu(lu,"save-state warning: invalid element type "+i+" at "+a)}return a}for(var r,e=[],n=0;n<or.length;++n){var t=n;t<=1&&(t=1-t),r=or[t][tr];for(var i=0,a=0;a<r.length;++a)!function(r,e){if("object"==typeof r&&r[0]==z){var n=c.length+As;s.push(r),r[0]=z+n*Is;n=Array(T);return c.push(n),n[0]=z,n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=e.toString(),n[5]=r[5],1}}(r[a],t)||++i;e[t]=i,l(or[t])}!function(){for(var r=1;r<c.length;++r){var e=c[r];e[0]===z&&(e[1]=l(e[1]),e[2]=l(e[2]),e[3]=l(e[3]))}}();var u=[];for(n=0;n<or.length;++n){r=or[n][tr];var o=[];o.push(l(or[n][j])),o.push(l(Ao(e[n]))),o.push(l(r[0])),u.push(o)}c[0]=u;var f=[l(pr)];for(n=0;n<fr.length;++n)f.push(l(fr[n]));var p,g=new Array(bt);for(g[0]=mt,p=1;p<=bt;++p){var v=ht[p-1];"object"==typeof v?g[p]=l(v):"number"==typeof v?g[p]=-v:v===B?yu(lu,"savestate: corrupt argstack"):g[p]=v}g[p++]=l(pt),g[p++]=l(lt),g[p++]=l(st),g[p++]=l(ct),function(){for(var r=0;r<s.length;++r)s[r][0]%=Is}();var d,h=new Array(dt);for(h[0]=gt,d=1;d<=dt;++d)h[d]=vt[d-1];var b=[];b[0]=g,b[1]=h,b[2]=yt,b[3]=f,b[4]=nu;var y=new Array("Naan",900,12002,$s);return new Array(y,c,b)}function qs(r){var e,n,t,i,a,u,o,f=r[1],c=[],s=[];function l(r){if("number"!=typeof r)return L(r)?r.length===T?yu(lu,"save-state warning: unexpected symbol "+r[Y]):yu(lu,"save-state warning: unexpected element "+r[0]):yu(lu,"save-state warning: invalid item encountered"),$s;var e,n=f[r-As];switch(n[0]){case D:break;case Z:case X:case G:if(e=n[0].toString()+"/"+n[2].toString()+"/"+n[3],s.hasOwnProperty(e))return s[e];s[e]=r,n[0]+=Is;case D+Is:case Z+Is:case X+Is:case G+Is:default:return r}var t=l(n[S]),i=l(n[N]),a=t+i/(f.length+As+1);return c.hasOwnProperty(a)?c[a]:(c[a]=r,n[0]=D+Is,n[S]=t,n[N]=i,r)}for(m=1;m<f.length;++m)switch((e=f[m])[0]){case D:case Z:case X:case G:e[1]=l(e[1]),e[2]=l(e[2]);break;case z:e[1]=l(e[1]),e[2]=l(e[2]),e[3]=l(e[3]);break;case J:case O:case V:e[1]=l(e[1]),e[2]=l(e[2]),"number"==typeof e[3]&&(e[3]=l(e[3]));break;case Q:if(e[1]=l(e[1]),e[2]=l(e[2]),e[3].na!==B)for(i=e[3].na,n=0;n<i.length;++n)i[n]=l(i[n]);else if(e[3].nd!==B||e[3].no!==B){for(a=e[3].nd||e[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=l(a[u[t]]);e[3].tag&&(e[3].tag=l(e[3].tag))}}for(var p,g=f[0],v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=l(p[o]);for(var d=r[2][0],h=1;h<d.length;++h)d[h]>As&&(d[h]=l(d[h]));for(var b=[],y=0,m=1;m<f.length;++m)switch(f[m][0]){case D:case Z:case X:case G:++y;break;default:b[m+As]=m+As-y}for(v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=b[p[o]];for(h=1;h<d.length;++h)d[h]>As&&(d[h]=b[d[h]]);for(var k=r[2][3],w=0;w<k.length;++w)k[w]>As&&(k[w]=b[k[w]]);var x=new Array(1);for(m=1;m<f.length;++m){switch((e=f[m])[0]){case D:case Z:case X:case G:continue;case D+Is:case Z+Is:case X+Is:case G+Is:e[0]-=Is,e[1]=b[e[1]],e[2]=b[e[2]];break;case z:e[1]=b[e[1]],e[2]=b[e[2]],e[3]=b[e[3]];break;case J:case O:case V:e[1]=b[e[1]],e[2]=b[e[2]],"number"==typeof e[3]&&(e[3]=b[e[3]]);break;case Q:if(e[1]=b[e[1]],e[2]=b[e[2]],e[3].na!==B)for(i=e[3].na,n=0;n<i.length;++n)i[n]=b[i[n]];else if(e[3].nd!==B||e[3].no!==B){for(a=e[3].nd||e[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=b[a[u[t]]];e[3].tag&&(e[3].tag=b[e[3].tag])}}x.push(e)}return x[0]=g,r[1]=x,r}function Es(r){var e,n=r[1];function t(r,e){r+=As;return e-r<=As&&(-9<=e-r||999<e&&-99<=e-r)?e-r:e}for(e=1;e<n.length;++e){var i=n[e];switch(i[0]){case D:case Z:case X:case G:i[1]=t(e,i[1]),i[2]=t(e,i[2]);break;case z:i[1]=t(e,i[1]),i[2]=t(e,i[2]),i[3]=t(e,i[3]);break;case J:case O:case V:i[1]=t(e,i[1]),i[2]=t(e,i[2]),"number"==typeof i[3]&&(i[3]=t(e,i[3]));break;case Q:i[1]=t(e,i[1]),i[2]=t(e,i[2])}}}function Rs(r,e){function n(r){return e.QuoteString(r)}function t(r){return"$"==r.substring(0,1)&&(r="\\".concat(r)),n(r)}if(0===r.length)return"";e===B&&(e=ms);for(var i,a,u,o,f="[",c=!1,s=0;s<r.length;++s)c&&(f+=","),"object"==typeof r[s]?((u=r[s])[0]===D?1===u[2]?f+=u[1]:u[2]===$s?1!==u[1]?f+="["+u[1]+"]":f+="0":f+="["+u[1]+","+u[2]+"]":u[0]===z&&0===u[1]&&u[2]===$s?(o=t(u[Y]),i==u[4]?u[3]===$s?f+=o:u[3]==a+1?f+="["+o+"]":f+="["+o+","+u[3]+"]":f+="["+o+","+u[3]+","+u[4]+"]"):u[0]===Z&&0===u[1]&&u[2]===$s?f+=n("$"+u[K]):u[0]===Q?f+=JSON.stringify(u[x]):u[0]===k?f+=JSON.stringify({ns:u[1]}):f+=Rs(r[s]),u[0]===z&&(i=u[4],a=u[3])):"string"==typeof r[s]?r[0]===z&&s===Y?f+=t(r[s]):r[0]===Z&&s===K?f+=n("$"+r[s]):f+=n(r[s]):r[s]!==B&&(f+=r[s]),c=!0;return f+="]"}function Fs(r){var e,n=r[0];if(!("Naan"!==n[0]||900<n[1])){var t=r[1],o=t[0],i=n[3],a=r[2],u=a[0],f=u[0],c=a[1],s=a[2],l=c[0],p=a[3],g=a[4];if(t!==B&&o!==B&&i!==B&&a!==B&&u!==B&&f!==B&&c!==B&&l!==B&&p!==B){for(var v=i-1,d=new Array(t.length),h=[],b=0;b<o.length;++b)h[b]=new Array(ar);for(w=1;w<t.length;++w)"object"==typeof(e=t[w])&&e.ns!==B?d[w]=h[e.ns]:d[w]=new Array(3);for(var y,m=h[1],k=1,w=1;w<t.length;++w)if("number"!=typeof(e=t[w]))if("string"!=typeof e){if("object"!=typeof e||0===e.length)return void yu(lu,"loadstate: unexpected token: "+typeof e);if(L(e))if(1!=e.length)if(2!=e.length)if(3!=e.length){var x,O,S,N,j=e[0];for(d[w][0]=j,x=1;x<e.length;++x)if(O=e[x],j===z&&(x===U&&(k=_(O)),x===H&&(m=(m=h[parseInt(O)])||ur)),j===X&&x===rr)d[w][x]=Fo(O);else if(j===G&&x===er)d[w][x]=parseFloat(O);else if(J<=j&&j<=V&&x===nr)if((N="string"==typeof O?wr[O]:(N="string"==typeof(S=t[_(O)])?S:3<S.length?S[Y]:S[0],wr[C(N)]))===B){debugger;yu(lu,"state-load warning: undefined builtin: "+O+"("+S+")"),d[w][x]=Oa}else d[w][x]=N;else d[w][x]=j===Z&&x===K?O:j===z&&x===Y?C(O):j===z&&x===H?h[parseInt(O)]:d[_(O)]}else{if("string"!=typeof e[0])return void yu(lu,"loadstate: malformed obj3: "+typeof e[0]);d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],k=_(e[1]),d[w][3]=d[k],m=(m=h[parseInt(e[2])])||ur,d[w][4]=m,d[w][5]=C(e[0])}else if("string"==typeof e[0])d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],k=_(e[1]),d[w][3]=d[k],d[w][4]=m,d[w][5]=C(e[0]);else{if("number"!=typeof e[0])return void yu(lu,"loadstate: malformed obj2: "+typeof e[0]);d[w][0]=D,d[w][1]=d[_(e[0])],d[w][2]=d[_(e[1])]}else if("string"==typeof e[0])d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[++k],d[w][4]=m,d[w][5]=C(e[0]);else{if("number"!=typeof e[0])return void yu(lu,"loadstate: malformed obj1: "+typeof e[0]);d[w][0]=D,d[w][1]=d[_(e[0])],d[w][2]=d[1]}else{d[w][0]=Q,d[w][1]=d[w],d[w][2]=d[1],d[w][4]=d[1];try{if(e.na!==B){var T,P=[];for(P[Ru]=Fu,T=0;T<e.na.length;++T)P.push(d[_(e.na[T])]);d[w][3]=P,0<=e.xns&&!(d[w][4]=h[e.xns])&&(d[w][4]=lr)}else if(e.nd!==B||e.no!==B){for(var A=new(e.nd?Bu:Du),I=e.nd||e.no,$=Object.getOwnPropertyNames(I),M=0;M<$.length;++M)A[$[M]]=d[_(I[$[M]])];e.tag!==B&&(d[w][2]=d[_(e.tag)]),d[w][3]=A,0<=e.xns&&!(d[w][4]=h[e.xns])&&(d[w][4]=lr)}else e.ns!==B||(y=window||global,e.tag&&(d[w][2]=d[_(e.tag)]),e.type&&e.state!==B?d[w][3]=new(Function.prototype.bind.apply(y[e.type],[null].concat(e.state))):e.object!==B?e.type&&"Object"!==e.type&&y[e.type]!==B?d[w][3]=new y[e.type](e.object):d[w][3]=e.object:d[w][3]={})}catch(r){d[w][3]={}}}}else"$"==e.substring(0,1)?(d[w][0]=Z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=e.substring(1)):(d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[1],d[w][4]=m,d[w][5]=C(e));else d[w][0]=D,0===e?(d[w][1]=d[w+1],d[w][2]=d[1]):(d[w][1]=d[_(e)],d[w][2]=d[w+1]);var q,E=new Array(u.length),R=or,F=fr,n=cr,r=sr,a=lr,i=pr;if(!function(){try{for(gr(),or=[],fr=[],cr=h[0],sr=h[1],b=0;b<o.length;++b){for(var r=o[b],e=d[r[0]-v],n=Mo(d[r[1]-v][3],99999),t=r[2]-v,i=vr(e,h[b]),a=0;a<n;++a){var u=d[t+a];(u[H]=i)[tr].push(u),i[ir][u[Y]]=a}if(i[tr].length!=n)return void yu(lu,"loadstate: symbol table sync: "+e[K]+" "+i[tr].length+" "+n)}return sr[tr].length<50||q<0||f<0||q<f?void yu(lu,"loadstate: unqualified "+sr[tr].length):1}catch(r){return void yu(lu,"loadstate failed: "+r)}}())return or=R,fr=F,cr=n,sr=r,lr=a,void(pr=i);for(fr=[cr,sr],pr=cr,Xs(),Gs(),fr=[],b=1;b<p.length;++b)fr.push(d[p[b]-v]);for(pr=d[p[0]-v],q=1;q<u.length;++q){var W=u[q],W="number"==typeof W?W<=0?-W:d[W-v]:W;E[q-1]=W}return c.splice(0,1),gt=l,dt=(vt=c).length,bt=q-1,mt=f,yt=s,ct=(ht=E)[--bt],st=ht[--bt],lt=ht[--bt],pt=ht[--bt],nu=g,1}yu(lu,"cannot load malformed state")}function _(r){return r<=v?w+r:r-v}function C(r){return"\\$"===r.substring(0,2)?r.substring(1):r}}function Ws(r){var e=jr("SaveTrap",or);if(e!==ur){if(e[S]===e){e[S]=Zr;var n=Vt(Lr(["setq","SaveTrap",["SaveTrap"]]),"savetrap");return vt[dt++]=gt,n}if(n=e[S],e[S]=e,n!==Zr)return n}e=Ms();return r&&qs(e),Es(e),n=Rs(e)}function _s(r){if(!Fs(r))return ur;Js();r=jr("LoadTrap",or);if(r===ur)return Ds;r=Vt(Cr(r,ur),"loadtrap");return vt[dt++]=gt,r}function Cs(r){return Wr(Ws(r!=ur))}var Bs=$r("save",Cs,J);function Ls(r){if(r[0]!==Z)return ur;r=JSON.parse(r[K]);if(!r||0===r.length)return ur;r=_s(r);return Vs(),r}var Ds=$r("load",Ls,J),zs=[["global","`",cf,V],["global","deref",Fa,V],["global",".",Wa,V],["global","quote",cf,V],["global","$",Vf,J],["exec","and",Ia,V],["exec","apply",Na,J],["exec","break",Ga,J],["exec","call",ja,V],["exec","catch",Ba,V],["exec","cond",Ea,V],["exec","continue",Ja,J],["exec","eval",Sa,J],["exec","lambda",ac,J],["exec","loop",Ma,V],["exec","or",$a,V],["exec","return",Xa,O],["exec","throw",Da,J],["exec","yield",ru,J],["exec","resume",eu,J],["info","builtin",vc,J],["info","procedure",dc,J],["info","eq",jc,J],["info","equal",Pc,J],["info","length",ts,J],["info","not",qc,J],["info","typeof",ic,O],["symbol","setq",qa,V],["symbol","assign",Rc,J],["symbol","compress",es,O],["symbol","copyproc",Dc,J],["symbol","copyann",Cc,J],["symbol","exists",Kc,J],["symbol","get",Wc,J],["symbol","getproc",Bc,J],["symbol","interned",cc,J],["symbol","defbinding",sc,J],["symbol","lower",$c,J],["symbol","moveproc",Zc,J],["symbol","name",gc,J],["symbol","ordered",Mc,J],["symbol","preadjust",_a,V],["symbol","postadjust",Ca,V],["symbol","put",_c,J],["symbol","putproc",Lc,J],["symbol","replacer",Jf,J],["symbol","symbol",lc,J],["symbol","unintern",Yc,J],["tuple","atom",mc,J],["tuple","car",sf,J],["tuple","cdr",lf,J],["tuple","caar",pf,J],["tuple","cadr",gf,J],["tuple","cdar",vf,J],["tuple","cddr",df,J],["tuple","caaar",hf,J],["tuple","caadr",bf,J],["tuple","cadar",yf,J],["tuple","caddr",mf,J],["tuple","cdaar",kf,J],["tuple","cdadr",wf,J],["tuple","cddar",xf,J],["tuple","cdddr",Of,J],["tuple","caaaar",Sf,J],["tuple","caaadr",Nf,J],["tuple","caadar",jf,J],["tuple","caaddr",Tf,J],["tuple","cadaar",Pf,J],["tuple","cadadr",Af,J],["tuple","caddar",If,J],["tuple","cadddr",$f,J],["tuple","cdaaar",Mf,J],["tuple","cdaadr",qf,J],["tuple","cdadar",Ef,J],["tuple","cdaddr",Rf,J],["tuple","cddaar",Ff,J],["tuple","cddadr",Wf,J],["tuple","cdddar",_f,J],["tuple","cddddr",Cf,J],["tuple","cons",Bf,O],["tuple","insert",Lf,O],["tuple","empty",wc,J],["tuple","first",sf,J],["tuple","ffirst",pf,J],["tuple","fsecond",bf,J],["tuple","list",Aa,V],["tuple","member",Ac,J],["tuple","within",Ic,J],["tuple","pop",Gf,V],["tuple","push",Ra,V],["tuple","rest",lf,J],["tuple","reverse",Df,J],["tuple","rrest",df,J],["tuple","rrrest",Of,J],["tuple","second",gf,J],["tuple","third",mf,J],["tuple","totuple",fo,J],["tuple","tuple",kc,J],["tuple","tuplepath",Qf,J],["number","bitand",Qo,O],["number","bitnot",Jo,J],["number","bitor",Ho,O],["number","bitxor",Ko,O],["number","difference",Lo,O],["number","divide",Go,J],["number","even",Nc,J],["number","float",fc,O],["number","greater",nf,J],["number","integer",oc,O],["number","lesser",tf,J],["number","mod",Xo,J],["number","negate",Wo,J],["number","negative",Oc,J],["number","numeric",uc,O],["number","plus",Co,O],["number","positive",xc,J],["number","quotient",Zo,J],["number","shiftleft",rf,J],["number","shiftright",ef,J],["number","times",zo,O],["number","tofloat",af,J],["number","toint",of,J],["number","zero",Sc,J],["string","explode",ns,J],["string","strcat",Uc,O],["string","string",pc,J],["string","tostring",Qc,J],["string","unicode",Hc,J],["array","array",hc,J],["array","arraycall",co,O],["dictionary","dictionary",bc,J],["dictionary","set.",no,J],["dictionary","set[",no,J],["dictionary","keys",lo,J],["dictionary","defined",so,J],["dictionary","object",yc,J],["local","instances",Xf,J],["local","delete",Vc,O],["local","enclose",Zf,J],["local","namespace",Xc,J],["local","new",_u,J],["local","nonce",Qu,J],["local","nsactive",Gc,J],["local","nscaller",Ha,J],["local","nsrights",Jc,O],["local","symlist",zf,J],["local","weakmap",Ku,J],["host","editget",Ps,J],["host","editset",Ts,J],["host","future",Uu,J],["host","futures",Hu,J],["host","loadstate",Ls,J],["host","milliseconds",Ss,J],["host","mangled",Ns,J],["host","runaverage",js,J],["host","savestate",Cs,J],["host","sprint",xo,J],["host","wait",To,J],["stdio","textstream",Os,J],["stdio","textstreams",xs,J],["stdio","isbreak",gs,J],["stdio","newline",ls,J],["stdio","spaces",ps,J],["stdio","printline",os,O],["stdio","print",fs,O],["stdio","printloc",ss,J],["stdio","printq",cs,O],["external","xapply",mo,J],["external","xcall",bo,O],["external","xget",vo,J],["external","xdefined",so,J],["external","xkeys",lo,J],["external","xlock",go,J],["external","xnew",ko,O],["external","xobject",po,J],["external","xset",ho,J],["debug","breakpoint",Mu,O],["debug","debuglog",Au,O],["debug","jsdebugger",Iu,O],["debug","loglevel",$u,J],["debug","stacktrace",Tu,J],["debug","stacktrap",Eu,J],["debug","symtrace",Pu,V]];function Zs(r,e,n){var t=se[S],i=t[x][r];i||(i=Lu(),go(t[x][r]=i,cr)),i[x][e]||(i[x][e]=n)}function Xs(){var r=se[S];r!==ur&&r[0]===Q&&Cu(r[x])||(go(r=Lu(),cr),se[S]=r);var e,n=Nr("App"),t=n[S];for(t!==ur&&t[0]===Q&&Cu(t[x])||(t=Lu(),n[S]=t),e=0;e<zs.length;++e){var i=zs[e][0],a=zs[e][1],u=zs[e][2],o=zs[e][3],f=(zs[e][4],Nr(a));f!==ur&&f[U]!==ur||(f=$r(a,u,o)),kr(a,sr)||Zs(i,a,f)}r[x].module||(r[x].module=Lu()),se=Nr("Naan"),te=Nr("deref"),ie=Nr("."),Kr=Nr("exception"),re=Nr("escape"),ur=Nr("false"),ne=Nr("`"),ee=Nr("this"),Dr=Nr("undefined"),zr=Nr("null"),Zr=Nr("true"),Xr=Nr("lambda"),ae=Nr("body"),Ie=Nr("call"),oe=Nr("catch"),Qr=Nr("closure"),Gr=Nr("function"),Jr=Nr("function&"),Ur=Nr("let"),Hr=Nr("let&"),ue=Nr("loop"),Vr=Nr("macro"),Yr=Nr("var"),le=Nr("builtin"),ce=Nr("list"),pe=Nr("tuple"),ge=Nr("symbol"),ve=Nr("integer"),de=Nr("float"),he=Nr("numeric"),be=Nr("string"),ye=Nr("array"),$e=Nr("arraycall"),me=Nr("dictionary"),ke=Nr("object"),xe=Nr("namespace"),Oe=Nr("nonce"),Bs=Nr("save"),Ds=Nr("load"),je=Nr("$"),Se=Nr("weakmap"),Me=Nr("xget"),qe=Nr("xset"),Ee=Nr("xcall"),Re=Nr("xapply"),we=Nr("xobject"),Ne=Nr("textstream"),Pe=Nr("space"),Te=Nr("cr"),qu=Nr("breakpoint"),fe=Nr("interrupt")}function Gs(){function r(r,e){_c(pe,Wr(r),Nr(e||r)[U])}function e(r,e){_c(pe,Wr(r),e)}function n(r,e){_c(ge,Wr(r),Nr(e||r)[U])}function t(r,e){_c(be,Wr(r),Nr(e||r)[U])}function i(r,e){_c(ve,Wr(r),Nr(e||r)[U])}function a(r,e){_c(de,Wr(r),Nr(e||r)[U])}function u(r,e){_c(ye,Wr(r),Nr(e||r)[U])}function o(r,e){_c(xe,Wr(r),Nr(e||r)[U])}function f(r,e){_c(xe,Wr(r),e)}r("atom"),r("insert"),r("length"),r("reverse"),r("tostring"),r("tuple"),r("typeof"),e("member",$r("member",function(r,e){return Ac(e,r)},J,!0)),e("toarray",$r("toarray",function(r){return _u(ye,r)},J,!0)),e("within",$r("within",function(r,e){return Ic(e,r)},J,!0)),n("atom"),n("copyproc"),n("copyann"),n("interned"),n("length"),n("namespace"),n("proc","getproc"),n("putproc"),n("symbol"),n("tostring"),n("typeof"),t("append","strcat"),t("atom"),t("interned"),t("length"),t("string"),t("tostring"),t("unicode"),t("typeof"),i("atom"),i("even"),i("integer"),i("negate"),i("negative"),i("numeric"),i("length"),i("positive"),i("tofloat"),i("toint"),i("tostring"),i("typeof"),i("unicode"),i("zero"),a("atom"),a("even"),a("float"),a("negate"),a("negative"),a("numeric"),a("length"),a("positive"),a("tofloat"),a("toint"),a("tostring"),a("typeof"),a("zero"),u("atom"),u("tostring"),u("totuple"),u("typeof"),o("atom"),o("typeof"),f("tostring",$r("tostring",function(r){return r[0]===k?r[j]:ur},J,!0)),f("length",$r("length",function(r){var e;return r[0]===k&&0<=(e=or.indexOf(r))?Ao(or[e][tr].length):ur},J,!0)),f("symbols",$r("symbols",function(r){if(r[0]===k&&0<=(e=or.indexOf(r))){var e=or[e][tr].slice();return e[Ru]=Fu,_r(e)}return ur},J,!0)),f("index",$r("index",function(r){var e;return r[0]===k&&0<=(e=or.indexOf(r))?_u(io(or[e][ir]),ur):ur},J,!0)),f("lookup",$r("lookup",function(r,e){var n,e=rs(e);if(r[0]===k&&0<=(n=or.indexOf(r))){e=or[n][ir][e],e=or[n][tr][e];if(e)return e}return ur},J,!0))}function Js(){for(var r in l)l.hasOwnProperty(r)&&Ar(r,io(l[r]))}function Vs(){P.hasOwnProperty("init-load")&&P["init-load"]()}Gt(),Xs(),Gs(),Js(),this.Process=function(r,e){try{return 0<r.length&&(jo(),ys.SetText(r),e&&ms.WriteString("\r")),Ut()||Jt(Lr(["loop",["catch",[["driver"]],[[["equal","exception","driver"]]],"false"]])),Nt=0,Ht(!1),Ut()}catch(r){return yu(lu,"Naan internal error (101): "+r),!1}},this.GetOutput=function(){return ms.TakeText()},this.SetInput=function(r,e){ys.WriteString(r),e&&ys.SetEOF()},this.RunOutput=function(){try{return Nt=0,Ht(!1),ms.TakeText()}catch(r){return yu(lu,"Naan internal error (102): "+r),null}},this.Run=function(){try{return Nt=0,Ht(!1),Ut()}catch(r){return yu(lu,"Naan internal error (103): "+r),!1}},this.Escape=function(){try{return jo(),ys.ScanReset(),ys.SetText(""),ms.TakeText(),za(Lr(["internal","escape"])),!1}catch(r){return yu(lu,"Naan internal error (104): "+r),null}},this.Banner=function(){return ms.WriteString("\rNaan © 2018-2022 by Richard C. Zulch\n"),!0},this.StateSave=function(r){r=Ws(r);return"string"==typeof r&&r},this.StateLoad=function(r){r=_s(JSON.parse(r))!==ur;return Vs(),r},this.StateDefault=function(){return Vs(),!0},this.On=function(r,e){P[r]=e},this.Signal=function(){jo()},this.Status=function(r){return ui(r)},this._SetNamespace=function(r,e){var n,t=fr;return"string"==typeof r?dr(Cr(vr(Wr(r)),q(fr))):L(r)?(n=fr[0],fr=r,!e&&fr.indexOf(n)<0&&fr.push(n)):yu(lu,"_SetNamespace: invalid argument: "+r),t},this._AddNamedObject=function(r,e){if("string"!=typeof r||0===r.length||"object"!=typeof e)return!1;e=_r(e);return We(r)[1]=e,!0},this._SetValue=function(r,e){if("string"!=typeof r||0===r.length)return!1;e=e===B?We(r):Ar(r,Br(e));return e!==ur},this._AddSymbolWithTarget=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("string"!=typeof e||0===e.length)return!1;var n=Nr(e);return n===ur&&(n=We(e)),We(r),Ar(r,n)!==ur},this._AddPropertyList=function(r,e){return"string"==typeof r&&0!==r.length&&("object"==typeof e&&qr(r,e)[Y])},this._SetBindingList=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("object"!=typeof e)return!1;e=Rr(Br(e));return e!==ur&&(Er(r,e),!0)},this._CopyBinding=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("string"!=typeof e||0===e.length)return!1;r=Nr(r);return r!==ur&&(Er(e,r[U]),!0)},this._Execute=function(r){if("object"!=typeof r)return!1;r=Br(r);return r!==ur&&oo(Qt(r))},this._Export=function(r,e){if(!se)return!1;if("string"!=typeof e||0===e.length)return!1;var n=Nr(e);return n!==ur&&(Zs(r,e,n),!0)},this._Import=function(r,e,n){if(!se)return!1;if(e===B){var t=se[S][x][r];if(t===B)return!1;for(var i=Object.getOwnPropertyNames(t[x]),a=0;a<i.length;++a)this._Import(r,i[a]);return!0}if("string"!=typeof e||0===e.length)return!1;if(n===B)n=e;else if("string"!=typeof n||0===n.length)return!1;var u,t=fr.indexOf(cr);0<=t&&fr.splice(t,1);try{u=se[S][x][r][x][e]}catch(r){u=!1}return!!u&&(Er(n,u[U]),!0)}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
34
+ !function(Qs){Qs.NaanInterpreter=function(){"use strict";var r=Qs.LeemonBigIntegerLib?Qs:require("./bigint.js"),s=new r.LeemonBigIntegerLib,d=Qs.NaanChannel?Qs:require("./naan_io.js"),l={Number:Number,String:String,Date:Date,RegExp:RegExp,Array:Array,Math:Math,Promise:Promise},m={Number:Number,String:String,Date:Date,RegExp:RegExp},B;function L(r){return r instanceof Array||"[object Array]"===Object.prototype.toString.apply(r)}function u(r){return r.prototype&&r.prototype.constructor.name}var i=Math.log2(Number.MAX_SAFE_INTEGER),a=Math.log2(Number.MAX_VALUE),o=131072,p="\b\f\n\0\r\t\v ~`@#$%^&*()_+-={}|[]\\:\";'<>?,./",h=this,D=1,z=2,Z=3,X=4,G=5,J=6,O=7,V=8,Q=9,k=10,e=10,g=0,S=1,N=2,f=2,U=3,H=4,Y=5,w=2,K=3,rr=3,er=3,nr=3,x=3,j=2,tr=3,ir=4,v=N+1,T=Y+1,n=K+1,t=rr+1,c=er+1,b=N+1,y=x+1,ar=ir+1,P={},ur=null;function A(r){return r&&r!==ur&&r!==Dr&&r!==zr}function I(r){return r===Qr||r===Gr||r===Jr||r===Vr||r===Ur||r===Hr}function $(r){return r?Zr:ur}function M(r){return r===B?Dr:null===r?zr:r}function q(r){for(var e=ur,n=r.length-1;0<=n;--n)e=Cr(r[n],e);return e}function E(r){for(var e=[];r[g]===D;)e.push(r[S]),r=r[N];return e}function R(r){for(var e=Lu();r[g]===D;){var n=r[S];n[g]===D&&ho(e,n[S],n[N]),r=r[N]}return e}function F(r,e){for(var n=Object.getOwnPropertyNames(e),t=0;t<n.length;++t){var i=n[t];r[i]=e[i]}}function W(r,e){return r===ur?ur:(F((e=e||Lu())[x],r[x]),e)}var or=[],fr=[],cr,sr,lr,pr,_=1e5;function gr(){or=[],fr=[],cr=vr(Wr("NaanRoot")),sr=vr(Wr("NaanCore")),lr=vr(Wr("NaanConst")),or.pop(),fr.push(sr),pr=cr}function vr(r,e){return r===B?ur:(e===B&&(e=new Array(ar)),e[0]=k,(e[1]=e)[2]=r,e[3]=[],e[4]={},or.push(e),e)}function C(r){r=r&&r[0]===k?us(r[j]):"nowhere";return r}function dr(r){for(var e=[],n=q(fr);r[g]===D;){var t=r[S];t===ur&&(t=cr),t[0]===k&&e.indexOf(t)<0&&e.push(t),r=r[N]}if(0<e.length){if(e[0]!==fr[0]&&pr!=e[0]&&pr!==cr)return Da(Lr(["internal","$"+us(pr)+": no privileges to activate "+C(e[0])])),ur;fr=e}return n}function hr(l){var r,e,n,p=new WeakMap,g={};function v(r){r=function r(e){var n;if("object"!=typeof e)return e;if(p.get(e))return p.get(e);switch(p.set(e,e),e[0]){case D:for(var t=e;;){var i=t[1],a=t[2];if(t[1]=v(i),a===ur)break;if(a[0]!==D){t[2]=v(a);break}if(t=a,p.get(t))break;p.set(t,t)}return e;case Q:if(e[H]===l)p.set(e,ur),e=ur;else if(Cu(e[x])){var u=e[x];if(L(e[x]))for(var o=0;o<u.length;++o)(n=r(u[o]))===g?u.splice(o,1):u[o]=n;else for(var f,c=Object.getOwnPropertyNames(u),s=0;s<c.length;++s)(n=r(u[f=c[s]]))===g?delete u[f]:u[f]=n}return e;case z:return e[H]===l?((e[1]=e)[2]=ur,e[3]=ur,e[4]=ur):(e[1]=v(e[1]),e[2]=v(e[2]),e[3]=v(e[3])),e}return e}(r);return r===g?ur:r}for(p.set(g,g),p.set(l,g),r=0;r<or.length;++r)if(or[r]!==l)for(n=or[r][tr],e=0;e<n.length;++e)v(n[e]);for(var t=1;t<=bt;++t)ht[t-1]=v(ht[t-1]);var i=fr.indexOf(l);0<=i&&fr.splice(i,1),0<=(i=or.indexOf(l))&&or.splice(i,1)}function br(o){var r,e,n,f=new WeakMap,c=[];function s(r){if("object"==typeof r&&!f.get(r))switch(f.set(r,r),r[0]){case D:for(var e=r;;){s(e[1]);var n=e[2];if(n===ur)break;if(n[0]!==D){s(n);break}if(e=n,f.get(e))break;f.set(e,e)}break;case Q:if(Cu(r[x])){var t=r[x];if(L(r[x]))for(var i=0;i<t.length;++i)s(t[i]);else for(var a=Object.getOwnPropertyNames(t),u=0;u<a.length;++u)s(t[a[u]])}break;case z:r[Y]===o&&c.push(r),s(r[1]),s(r[2]),s(r[3])}}for(r=0;r<or.length;++r)for(n=or[r][tr],e=0;e<n.length;++e)s(n[e]);for(var t=1;t<=bt;++t)s(ht[t-1]);return c}function yr(r){for(var e=0;e<fr.length;++e){var n=fr[e];if(n[ir].hasOwnProperty(r)){var t=n[ir][r];return n[tr][t]}}return!1}function mr(r){if(r[H][0]!==k)return ur;var e,n=r[H][ir][r[Y]];if(r[H][tr][n]!==r)return ur;for(e=0;e<fr.length;++e){var t=fr[e];if(t[ir].hasOwnProperty(r[Y]))return n=t[ir][r[Y]],t[tr][n]===r?ur:r[H]}return r[H]}function kr(r,e){return!!e[ir].hasOwnProperty(r)&&e[tr][e[ir][r]]}var wr={};function xr(r){var e=new Array(T);return ur||(ur=e,gr()),e[0]=z,(e[1]=e)[2]=ur,e[3]=ur,e[4]=ur,e[5]=r,e}function Or(r,e){var n=r[Y],t=e[ir][n];return e[tr][t]===r||((r[H]=e)[ir][n]=e[tr].length,e[tr].push(r)),r}function Sr(r){var e=yr(r);return e||Or(e=xr(r),fr[0])}function Nr(r){r=yr(r);return r||ur}function jr(r,e){var n,t;for(n in e)if(t=kr(r,e[n]))return t;return ur}function Tr(r,e){return jr(e,[r[H],cr,sr])}function Pr(r){if(r[H][0]!==k)return-1;var e=or.indexOf(r[H]);if(e<0)return yu(lu,"can't find namespace for symbol \""+r[Y]+'"'),0;var n=e*_,e=or[e][ir][r[Y]];return"number"!=typeof e?(yu(lu,"can't find interned symbol \""+r[Y]+'"'),0):n+e}function Ar(r,e){r=Sr(r);return r===ur&&yu(lu,"can't set that: "+e),r===ur?ur:(e===B?e=r:"string"==typeof e?e=Sr(e):"number"==typeof e&&(e=Ao(e)),r[1]=e,r)}function Ir(r,e){var n=new Array(b);return n[0]=e,(n[1]=n)[2]=ur,n[3]=r,n}function $r(r,e,n,t){var i=(t?xr:Sr)(r);i===ur&&yu(lu,"can't add builtin \""+i+'"');var a=new Array(b);return a[0]=n,(a[1]=a)[2]=i,a[3]=e,i[U]=a,t||(wr[r]=e),i}function Mr(r){for(var e=Object.getOwnPropertyNames(wr),n=0;n<e.length;++n)if(wr[e[n]]===r)return e[n];return B}function qr(r,e){var n,t=Br(r);if(t===ur)return ur;for(n=0;n<e.length;++n){var i=e[n];if("object"!=typeof i)return ur;if(!(i.length<2)){var a=i[0];if("string"!=typeof a)return ur;_c(t,Br(a),Br(i[1]))}}return t}function Er(r,e){r=Sr(r);return A(r)||yu(lu,"can't add that: "+e),r[U]=e,r}function Rr(r){r=Ce(r,fr[0]);return"string"==typeof r?(yu(lu,"can't create closure: "+r),ur):r}function Fr(r){return r[0]===z?r[Y]:r[0]===Z?r[K]:""}function Wr(r){var e=new Array(n);return e[0]=Z,(e[1]=e)[2]=ur,e[3]=r,e}function _r(r){var e=new Array(y);return e[0]=Q,(e[1]=e)[2]=ur,e[3]=r,e[4]=ur,e}function Cr(r,e){var n=new Array(v);return n[0]=D,n[1]=r,n[2]=e,n}function Br(r){if("string"==typeof r)return 1<r.length&&"."==r.substring(0,1)?Io(parseFloat(r.substring(1))):"$"==r.substring(0,1)?Wr(r.substring(1)):("\\"==r.substring(0,1)&&(r=r.substring(1)),We(r));if("number"==typeof r)return Ao(r);if("object"==typeof r){if(L(r)){for(var e=ur,n=e,t=0;t<r.length;++t){var i=new Array(v);i[0]=D,i[1]=Br(r[t]),n!==(i[2]=ur)?n[2]=i:e=i,n=i}return e}if(r.hasOwnProperty("dictionary")){var a=new Bu,u=r.dictionary,o=Object.getOwnPropertyNames(u);for(t=0;t<o.length;++t){var f=o[t];"$"!=f.substring(0,1)&&"\\"!=f.substring(0,1)||(f=f.substring(1)),a[f]=Br(u[o[t]])}var c=_r(a);return r.tag!==B&&(c[2]=Br(r.tag)),c}if(r.hasOwnProperty("array")){var s=[];for(u=r.array,s[Ru]=Fu,t=0;t<u.length;++t)s[t]=Br(u[t]);return _r(s)}if(r.hasOwnProperty("xobject"))return _r(r.xobject)}return yu(gu,"naanParseJsValue warning: can't parse "+typeof r),ur}function Lr(r){var e=fr;(fr=fr.slice()).push(cr);r=Br(r);return fr=e,r}Sr("false");var Dr=Sr("undefined"),zr=Sr("null"),Zr=Sr("true"),Xr=Sr("lambda"),Gr=Sr("function"),Jr=Sr("function&"),Vr=Sr("macro"),Qr=Sr("closure"),Ur=Sr("let"),Hr=Sr("let&"),Yr=Sr("var"),Kr=Sr("exception"),re=Sr("escape"),ee=Sr("this"),ne=Sr("`"),te=Sr("deref"),ie=Sr("."),ae=Sr("body"),ue=Sr("loop"),oe=Sr("catch"),fe=Sr("interrupt"),ce=Sr("list"),se=Sr("Naan"),le=Sr("builtin"),pe=Sr("tuple"),ge=Sr("symbol"),ve=Sr("integer"),de=Sr("float"),he=Sr("numeric"),be=Sr("string"),ye=Sr("array"),me=Sr("dictionary"),ke=Sr("object"),we=Sr("xobject"),xe=Sr("namespace"),Oe=Sr("nonce"),Se=Sr("weakmap"),Ne=Sr("textstream"),je=Sr("$");Sr("driver"),Sr("App"),Sr("identity"),Sr("js"),function(){for(var r in l)l.hasOwnProperty(r)&&Sr(r)}();var Te=Ar("cr","\n"),Pe=Sr("space");Pe[1]=Wr(" "),Ar("doublequote",'"'),Ar("rpar",")"),Ar("lpar","("),Ar("comma",","),Ar("quote","`"),Ar("period","."),fr=[cr,sr];var Ae=Sr("throw"),Ie=Sr("call"),$e=Sr("arraycall"),Me=Sr("xget"),qe=Sr("xset"),Ee=Sr("xcall"),Re=Sr("xapply");function Fe(r){if(se[1][0]!==Q)return ur;for(var e=Object.getOwnPropertyNames(se[1][x]),n=0;n<e.length;++n){var t=se[1][x][e[n]][x];if(t.hasOwnProperty(r)){if(t[r][0]===z)return t[r][U];break}}return ur}function We(r){var e=yr(r);if(e)return e;if(e=Sr(r),se[1][0]!==Q)return e;r=Fe(r);return r!==ur&&(e[U]=r),e}function _e(r,e){if((r[0]===z||e&&r[0]===Q)&&A(r)){if(r[H]===ur)return 1;if(pr==r[H])return 1;if(fr[0]===r[H])return 1;if(pr===cr)return 1;e=C(r[H])+ms.NSinfix;r[0]===z?e+=r[Y]:e+=us(r),Da(Lr(["internal","$can't modify "+e+" from "+C(pr)]),ur)}else Da(Lr(["internal","$attempt to modify constant "+us(r)]),ur)}function Ce(r,e){try{return Be(r,e)}catch(r){return r}}function Be(r,b){var u,o,e,n={};function y(r,e,n){if(e[0]!==z||((a=e)===ur||a===Dr||a===zr||a===Xr||I(a)))for(;e[0]===D;)y(r,e[1],n),e=e[2];else{var t=e[Y];if(n===Jr||n===Hr){if(e[H]===b||b===ur)return;u!==Qr&&u!==Vr&&yu(gu,"warning: using "+ms.NSinfix+t+" for parameter "+C(e[H])+ms.NSinfix+t+" in "+C(b)+ms.NSinfix+o[Y])}var i=xr(t);i[H]=b===ur?e[H]:b;a=r[t];a&&(i[U]=a[U]),r[t]=i}var a}function m(r,e){for(;e[0]===D;){if(e[1][0]===D&&e[1][1]!==ne)if(I(e[1][1])){var n=e[1][2][1];if(n!==ur&&n[Y]!==Xr[Y]){var t=n[Y],i=xr(t);if(i[H]=b===ur?n[H]:b,i[U]=e[1],r.hasOwnProperty(t))throw"duplicate procedure name "+t+" in "+o[Y];r[t]=i}}else m(r,e[1]);e=e[2]}}function k(r,e,n,t){if(r[0]!==D){if(r[0]===Q&&Cu(r[3])){var i=r[x];if(L(i)){for(var a=_u(ye,ur),u=0;u<i.length;++u)a[x][u]=k(i[u],e,n,t);return a}var o,f=Object.getOwnPropertyNames(i),c=(r[3]instanceof Du?zu:Lu)();for(c[2]=r[2],o=0;o<f.length;++o)c[x][f[o]]=k(i[f[o]],e,n,t);return c}return r[0]!==z?r:e.hasOwnProperty(r[Y])?e[r[Y]]:r}if(!n&&I(r[1])){var s=k(r[2][1],e,!1,t);s[Y]===Xr[Y]&&((s=xr(s[Y]))[S]=Xr,s[H]=b!==ur?b:s[H]);var l=r[2][2][1],p=r[2][2][2],g={};m(g,p),y(g=Object.assign({},e,g),l,r[1]);p=Cr(k(l,g,!1,t),k(p,g,!1,s)),g=Cr(r[1],Cr(s,p));return s[U]=g,t&&(s[2]===ur&&(s[2]=_u(me,ur)),(s[2][3][".parent"]=t)[2]===ur&&(t[2]=_u(me,ur)),p=(p=t[2][3][".children"])||ur,t[2][3][".children"]=Cr(s,p)),g}r[1]===ne&&(n=!0);for(var v=ur,d=null;r[0]===D;){var h=Cr(k(r[1],e,n,t),ur);r.breakpoint&&(h.breakpoint=r.breakpoint),d?d[2]=h:v=h,d=h,r=r[2]}return r!==ur&&d&&(d[2]=r),v}if(r[0]!==D)return ur;if(u=r[1],(o=r[2][1])[0]!==z)return ur;var t=b!==ur?b:o[H];o[H]!==t||(u!==Gr&&u!==Jr||o[U]!==r)&&o[U]!==ur?((e=xr(o[Y]))[S]=o,e[H]=t,e[f]=W(o[f]),u!==Qr&&u!==Vr||e[f][".base"]||(e[2]===ur&&(e[2]=_u(me,ur)),e[2][3][".base"]=o)):e=o,e[2]!=ur&&delete e[2][3][".children"],y(n,ee),n[ee[Y]][1]=e,m(n,r[2][2][2]),y(n,r[2][2][1],u),t=k(r[2][2][1],n,!1),n=k(r[2][2][2],n,!1,e);n=Cr(u,Cr(e,Cr(t,n)));return e[U]=n}var Le=0,De=1,ze=2,Ze=3,Xe=4,Ge=5,Je=6,Ve=7,Qe=8,Ue=9,He=10,Ye=11,Ke=12,rn=13,en=14,nn=15,tn=16,an=17,un=18,on=19,fn=20,cn=21,sn=22,ln=23,pn=24,gn=25,vn=26,dn=27,hn=28,bn=29,yn=30,mn=31,kn=32,wn=33,xn=34,On=35,Sn=36,Nn=37,jn=38,Tn=39,Pn=40,An=41,In=42,$n=43,Mn=44,qn=45,En=46,Rn=47,Fn=48,Wn=49,_n=50,Cn=51,Bn=52,Ln=53,Dn=54,zn=55,Zn=56,Xn=90,Gn=91,Jn=92,Vn=93,Qn=94,Un=0,Hn=1,Yn=2,Kn=3,rt=4,et=5,nt=6,tt=57,it=58,at=59,ut=95,ot=96,ft=[],ct,st,lt,pt,gt;ft[Le]=li,ft[wn]=pi,ft[Nn]=gi,ft[kn]=Si,ft[tt]=Si,ft[Qe]=_i,ft[nn]=Ni,ft[tn]=ji,ft[an]=Ti,ft[zn]=Ci,ft[Zn]=Bi,ft[Ye]=Li,ft[pn]=Di,ft[hn]=zi,ft[bn]=Zi,ft[yn]=Zi,ft[mn]=Zi,ft[at]=Xi,ft[gn]=Gi,ft[vn]=Ji,ft[dn]=Vi,ft[Ue]=Qi,ft[He]=Ui,ft[_n]=Hi,ft[Cn]=Yi,ft[sn]=Ki,ft[ln]=ra,ft[In]=ea,ft[$n]=na,ft[Mn]=ta,ft[fn]=ia,ft[cn]=aa,ft[Rn]=ua,ft[Fn]=oa,ft[Wn]=ca,ft[Xe]=fa,ft[Ge]=ca,ft[Je]=sa,ft[Ve]=da,ft[Ke]=ba,ft[De]=ba,ft[Tn]=ya,ft[en]=ma,ft[Bn]=ka,ft[Ln]=wa,ft[Dn]=xa,ft[qn]=Pi,ft[En]=Ai,ft[it]=$i,ft[ze]=xi,ft[Ze]=Oi,ft[un]=vi,ft[on]=di,ft[Pn]=hi,ft[An]=bi,ft[jn]=yi,ft[rn]=yi,ft[xn]=mi,ft[On]=ki,ft[Sn]=wi;var vt=[],dt=0,ht=[],bt=0,yt=-1,mt=0,kt=!1,wt=!1,xt=6e3,Ot=0,St=0,Nt=0,jt,Tt=0,Pt,At,It=[],$t=[],Mt=[],qt,Et,Rt=[],Ft,Wt,_t,Ct=100,Bt=3e4,Lt=1e4,Dt=2e5,zt=Bt,Zt,Xt;function Gt(){return mt=bt=dt=0,gt=Le,ct=st=lt=pt=_t=ur,Kr[1]=Kr,Ou(),1}function Jt(r){return Gt(),vt[dt++]=Le,gt=wn,ct=r}function Vt(r,e,n){return jo(),ht[bt++]=wt,ht[bt++]=kt,ht[bt++]=r,ht[bt++]=e,ht[bt++]=pr,ht[bt++]=_t,ht[bt++]=pt,ht[bt++]=lt,ht[bt++]=st,ht[bt++]=ct,ht[bt++]=mt,ht[mt=bt++]=Xn,ht[bt++]=dt+2,ht[bt++]=!1,vt[dt++]=gt,vt[dt++]=n?De:Ke,gt=wn,At=ur,wt=kt=!1,ct=r}function Qt(r){return Jt(r),Ht(!(Nt=0)),ct}function Ut(){return Tt<=0&&(gt!==Le||0<dt)}function Ht(r){if(!(0<Tt)){var e=jt,n=Ot;Zt=(new Date).getTime(),ht.length=bt,gt===Le&&0<dt&&(gt=vt[--dt]),Ot=r?0:xt,jt=r;try{Yt()}catch(r){if(r!==It){debugger;yu(lu,"caught: "+r.toString()),za(Lr(["unknown","$"+r.toString()]))}jo()}finally{jt=e,Ot=n,ht.length=bt,Bt<zt&&bt<zt-Lt/2&&(zt-=Lt/2)<Bt&&(zt=Bt),ai()}0<as.TextAvail()&&P.hasOwnProperty("console-out")&&P["console-out"](h,as.TakeText())}}function Yt(){var r=0;do{if(bu!=hu[1]){debugger;yu(lu,hu[Y]+" changed: "+us(bu)+" --\x3e "+us(hu[1])),bu=hu[1]}if(zt<bt&&(za(Lr(["internal","$maximum stack depth exceeded"])),zt=bt+Lt,Dt<bt))return yu(lu,"intractable recursion"),Gt(),void jo();if(1e3<=++r){r=0;if(ht.length=bt,1e4<(new Date).getTime()-Zt)return void za(Lr(["internal","$unresponsive"]));if(0<Ot&&(Ot-=1e3,Ot<=0&&gt!==Le)){vt[dt++]=gt,gt=Le;break}}}while(ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),ft[gt](),gt!=Le)}var Kt=[],ri=[],ei=[],ni=[],ti=[],ii=[];function ai(){var r=(new Date).getTime(),e=r-Zt;Xt===B&&(Kt[Xt=0]=Zt,ei[0]=0,ni[0]=0,ti[0]=0,ii[0]=0),++ei[Xt],ni[Xt]+=e,ti[Xt]<e&&(ti[Xt]=e),++ii[Xt],r>=Kt[Xt]+1e3&&(ri[Xt]=r-Kt[Xt],32<++Xt&&(Xt=0),Kt[Xt]=r,ei[Xt]=0,ni[Xt]=0,ti[Xt]=0,ii[Xt]=0)}function ui(r){r=r||32;for(var e=1e3,n=[],t=[],i=Kt.length-1,a=Xt-1,u=r*e;0<=--i&&(n.push({start:Kt[a],width:ri[a],runtime:ni[a],peak:ti[a],runcount:ei[a],counter:ii[a]}),--a<0&&(a=Kt.length-1),!((u-=ri[a])<0)););if(0===n.length)return[];var o=n[0];3e3<(new Date).getTime()-o.start&&t.push({start:o.start+e,width:e,cpu:0,peak:0,average:0,samples:0});for(var f=o.start+o.width-e,c=1;t.length<r;)if(f>=o.start){var s=o.peak;e<s&&(s=e);var l=Number((o.runtime/o.width).toFixed(3)),p=Math.round(o.runtime/o.runcount);s==e&&(l=1,p=1e3),t.push({start:f,width:e,cpu:l,peak:s,average:p,samples:o.counter}),f-=e}else{if(c>=n.length)break;o=n[c++]}return t}function oi(){return $t}function fi(r,e,n,t){ct=e,st=n,lt=t,pt=r,vt[dt++]=Tn,gt=Le,Tt=1}function ci(r){if(r[U]!==ur)qt=r[U];else{if(r[1]===r)return ur;qt=r[1]}return Et=r,Mt}function si(r,e){return Ft=r,Wt=e,Rt}function li(){}function pi(){var r=ct,e=0;if(r[0]!==D){if(r[0]===Q&&Cu(r[3])){if(L((ct=r)[3]))return void(gt=un);if(r[3]instanceof Bu)return void(gt=Pn)}return ct=r[1],void(gt=vt[--dt])}for(var n=r[1];n[0]===z;){if(++e>Ct)return gt=vt[--dt],void(ct=ur);if(n[3]!==ur)n=n[3];else{if(n[1]===n)break;if((n=n[1])[0]===Q)return gt=kn,pt=n,lt=Zr,st=r[2],void(ct=n)}}if(n[0]===D&&I(n[1])||n[0]===J||n[0]===O||n[0]===V)return gt=kn,pt=r[1],lt=Zr,st=r[2],void(ct=n);gt=I(n)?vt[--dt]:gn}function gi(){for(var r=st,e=ct,n=0;e[0]===z&&!(++n>Ct);)if(e[3]!==ur)e=e[3];else{if(e[1]===e)break;e=e[1]}if(e[0]===D&&I(e[1])||e[0]===J||e[0]===O||e[0]===V)return gt=kn,lt=ur,st=r,void(ct=pt=e);ct=ur,gt=vt[--dt]}function vi(){if(lt=_u(ye,ur),0===ct[3].length)return ct=lt,void(gt=vt[--dt]);ht[bt++]=ct,ht[bt++]=lt,ht[bt++]=0,vt[dt++]=on,(ct=ct[3][0])===B&&(ct=Dr),gt=wn}function di(){if(st=ht[bt-1]++,lt=ht[bt-2],pt=ht[bt-3],lt[3][st++]=ct,st<pt[3].length)return vt[dt++]=on,ct=pt[3][st],void(gt=wn);bt-=3,ct=lt,gt=vt[--dt]}function hi(){if(lt=Lu(),0===(st=io(Object.getOwnPropertyNames(ct[3]).reverse()))[3].length)return ct=lt,void(gt=vt[--dt]);ht[bt++]=ct,ht[bt++]=lt,ht[bt++]=st,vt[dt++]=An,(ct=ct[3][st[3][st[3].length-1]])===B&&(ct=Dr),gt=wn}function bi(){if(st=ht[bt-1],lt=ht[bt-2],pt=ht[bt-3],lt[3][st[3].pop()]=ct,0<st[3].length)return vt[dt++]=An,ct=pt[3][st[3][st[3].length-1]],void(gt=wn);bt-=3,ct=lt,gt=vt[--dt]}function yi(){if(ht[bt++]=gt===jn?Zr:ur,ht[bt++]=ur,ht[bt++]=ct[1],ht[bt++]=ct[2][1],ht[bt++]=ct[2][2][1],(ct=ct[1])[0]===D){var r=ct[1][U][nr];if(r===Fa&&ct[2][2][2]===ur)ct=ct[2],gt=gn;else{if(r!==Wa)return bt-=5,ct=ur,void(gt=vt[--dt]);ct=ct[2][1],gt=wn}vt[dt++]=xn}else gt=xn}function mi(){ht[bt-4]=ct,ct=ht[bt-2],vt[dt++]=On,gt=wn}function ki(){ht[bt-2]=ct,ct=ht[bt-1],vt[dt++]=Sn,gt=wn}function wi(){var r=ht[bt-5],e=ct,n=ht[bt-2],t=ht[bt-3],i=ht[bt-4];t[0]===D&&t[1][U][nr]===Wa&&(i=Cr(i,t[2][2])),bt-=5,ct=Fc(i,n,e,r),gt=vt[--dt]}function xi(){ht[bt++]=lt,ht[bt++]=st,vt[dt++]=Ze,gt=wn}function Oi(){for(var r=0;ct[0]===z&&!(++r>Ct);)if(ct[3]!==ur)ct=ct[3];else{if(ct[1]===ct)break;ct=ct[1]}pt=ct[0]===D?ct[2][1]:Xr,st=ht[--bt],lt=ht[--bt],gt=kn}function Si(){var e,n,r,t,i=ct,a=st,u=lt!==ur;if(i[0]===J)return r=a[2][2][1],n=a[2][1],e=a[1],du<=nu&&(ku(du,us(i,{quote:Zr}),a,u),vt[dt++]=en),u?e[0]!==D&&n[0]!==D&&r[0]!==D&&e[0]!==Q&&n[0]!==Q&&r[0]!==Q?(ct=i[3](e[1],n[1],r[1],i))===$t?void fi(i,e[1],n[1],r[1]):ct===Mt?(pt=Et,lt=Zr,void(ct=qt)):ct===Rt?void ha(Ft,Wt,a,!0):void(gt=vt[--dt]):(ht[bt++]=i,ht[bt++]=r,ht[bt++]=n,ct=e,vt[dt++]=nn,void(gt=wn)):(ct=i[3](e,n,r,i))===$t?void fi(i,e,n,r):ct===Mt?(pt=Et,void(ct=qt)):ct===Rt?void ha(Ft,Wt,a):void(gt=vt[--dt]);if(i[0]===O||i[0]===Q)if(du<=nu&&(ku(du,us(i,{quote:Zr}),a,u),vt[dt++]=en),i[0]===O&&gt!==tt&&u&&(ct=!1,a[0]===D?(e=a[1])[0]!==D&&e[0]!==Q&&(a[2][0]===D?(n=a[2][1])[0]!==D&&n[0]!==Q&&a[2][2][0]!==D&&(ct=i[3](2,function(r){return 0<=r&&r<2?[e[1],n[1]][r]:ur},i,ur)):ct=i[3](1,function(r){return 0===r?e[1]:ur},i,ur)):ct=i[3](0,function(r){return ur},i,ur),ct&&ct!==$t&&ct!==Mt&&ct!==Rt))gt=vt[--dt];else{gt===tt?(ht[bt]=ht[bt-1],++bt):ht[bt++]=ur,du<=nu&&(ku(du,us(i,{quote:Zr}),a,u),vt[dt++]=en);for(var o=0;a[0]===D;)ht[bt++]=a[1],++o,a=a[2];ht[bt++]=o,ht[bt++]=u?0:o,ht[bt++]=i,gt=qn}else if(i[0]===V){if(du<=nu&&(ku(du,us(i,{quote:Zr}),a,!1),vt[dt++]=en),(ct=i[3](a,i))!==$t)return ct===Mt?(pt=Et,lt=ur,void(ct=qt)):void(ct!==Rt?gt=vt[--dt]:ha(Ft,Wt,a));fi(i,a)}else i[0]!==D||i[1]!==Vr&&i[1]!==Gr&&i[1]!==Jr&&i[1]!==Qr&&i[1]!==Ur&&i[1]!==Hr?(ct=ur,gt=vt[--dt]):(t=i[2][1],vu<=nu&&(ku(vu,us(pt),a,u),vt[dt++]=en),ht[bt++]=pr,gt===tt?(ht[bt]=bt-2,++bt):ht[bt++]=_t,t!==Xr&&t[0]===z&&t[H]!==ur?t[U]===i?(i[1]===Vr?(u=!1,lt=ur,t[H]!==cr&&(i=Ce(i,pr))):i[1]===Qr&&(i=Ce(i,t[H])),"string"!=typeof i?(t=i[2][1],r=i[2][2][1],t=t[H],r[0]!==D?r[0]===z?r[1]!==Ur?r===ur||r[H]===t?(ht[bt++]=pt,ht[bt++]=i,ct=a,gt=u?(vt[dt++]=zn,gn):zn):za(Lr(["internal","$parameter in foreign namespace: "+C(r[H])+ms.NSinfix+r[Y]+" from: "+C(t)])):za(Lr(["internal","$let parameter must be tuple"])):za(Lr(["internal","$parameter is not a symbol"])):(a[0]!==D?e=ur:(e=a[1],a=a[2]),ht[bt++]=pt,ht[bt++]=i,ht[bt++]=lt,ht[bt++]=a,ht[bt++]=r,ht[bt++]=0,ct=e,gt=u?e[0]===D||e[0]===Q?(vt[dt++]=Qe,wn):(ct=e[S],Qe):Qe)):za(Lr(["internal",i]))):za(Lr(["internal","$privilege violation in "+us(pt)])):za(Lr(["internal","$namespace invalid in "+us(pt)])))}function Ni(){var r=ht[bt-1];ht[bt-1]=ct,gt=(ct=r)===ur?tn:(vt[dt++]=tn,wn)}function ji(){var r=ht[bt-2];ht[bt-2]=ct,gt=(ct=r)===ur?an:(vt[dt++]=an,wn)}function Ti(){var r=ht[--bt],e=ht[--bt],n=ct,t=ht[--bt];if((ct=t[3](r,e,n,t))!==$t)return ct===Mt?(ct=Et,st=Cr(r,Cr(e,Cr(n,ur))),void(gt=Nn)):void(ct!==Rt?gt=vt[--dt]:ha(Ft,Wt,Cr(r,Cr(e,Cr(n,ur)))));fi(t,r,e,n)}function Pi(){var r,e=ht[bt-3],n=bt-3-e,t=ht[bt-2],i=ht[bt-1];function a(r){return r<0||e<=r?ur:ht[n+r]}if(t<e)return ct=ht[n+t],gt=lt===ie&&1==t||lt===ye&&0===t?(lt=ur,En):(vt[dt++]=En,wn),void(ht[bt++]=lt);if(ht[bt++]=mt,ht[mt=bt++]=ut,vt[dt++]=it,ht[bt++]=dt,ht[bt++]=!1,(ct=i[0]===Q?u(i[x])?wo(i,e,0,a):yo(null,i,e,0,a):i[3](e,a,i,ht[n-1]))===$t)return Ii(),vt[dt-1]=qn,gt=Le,void(Tt=1);if(ct!==Mt)if(ct!==Rt)gt=vt[--dt];else{for(st=ur,r=e;0<=--r;)st=Cr(ht[n+r],st);ha(Ft,Wt,st)}else{for(ct=Et,st=ur,r=e;0<=--r;)st=Cr(ht[n+r],st);gt=Nn}}function Ai(){lt=ht[--bt];var r=ht[bt-3],e=ht[bt-2];ht[bt-3-r+e]=ct,ht[bt-2]=e+1,gt=qn}function Ii(){bt-=2,ht[--bt]!==ut&&yu(lu,"naanUnlinkArbFrame: lost frame sync"),(mt=ht[--bt])<Nt&&So()}function $i(){var r=ht[bt-1];r&&r[x].trap?Nu(r,ct):(Ii(),r=ht[bt-3],bt=bt-4-r,gt=vt[--dt])}function Mi(){var r=mt;if(ht[r]!==Gn)return!1;for(var e=dt;;){var n=vt[--e];if(n!==yn){if(n===Ye||n===Zn)break;return!1}}for(;ht[r]===Gn;){if(ht[r+3]!==ur||ht[r+5][2][0]===D)return!1;r=ht[r-1]}return r}function qi(r,e){if(e[1]!==Gr&&e[1]!==Qr)return!1;var n,t;if(ht[r]===Vn)n=ht[r-3],t=Ei;else{if(ht[r]!==Qn)return!1;n=ht[r-ht[r-2]-6],t=Ri}if(ht[r+2])return!1;if(n[1]===Gr||n[1]===Ur){var i=n[2][1],e=e[2][1];if(i[H]!==e[H])return!1;for(var a=e;a=a[2][3][".parent"];)if(a===i)return!1}else if(n[1]!==Qr)return!1;return t(r)}function Ei(r){var e=ht[r-3],n=e[2][2][1];return n!==ur&&e[1]!==Qr&&(n[1]=ht[r-2]),dt=ht[r+1]-1,r-4}function Ri(r){var e=ht[r-2],n=ht[r-6-e];if(n[1]!==Qr)for(var t=n[2][2][1],i=r-2-e,a=e;0<=--a&&t[0]===D;)t[1]!==ur&&(t[1][1]=ht[i]),++i,t=t[2];return dt=ht[r+1]-1,r-7-e}function Fi(){var r,e,n,t=Mi();!t||(n=qi(t,e=ht[(r=bt)-1]))&&(mt=ht[t-1],ht[n+0]=ht[r-2],ht[n+1]=e,bt=n+2)}function Wi(r){var e=Mi();if(e){var n=bt,t=ht[n-4-r],i=qi(e,t);if(i){for(mt=ht[e-1],ht[i+0]=ht[n-5-r],ht[i+1]=t,ht[i+2]=ht[n-3-r],ht[i+3]=ht[n-2-r],ht[i+4]=ht[n-1-r],n-=r,i+=5;0<=--r;)ht[i++]=ht[n++];bt=i}}}function _i(){for(var r=ht[--bt],e=ht[bt-1-r],n=ht[bt-2-r],t=ht[bt-3-r],i=ct;;){if(e[0]===D)ht[bt++]=i,++r,e=e[2];else if(n[0]!==D){Wi(r);for(var a=ht[bt-4-r],u=a[2][1][H],e=a[2][2][1],o=bt-r,f=!1;e[0]===D;){if(i=e[1][1],e[1]===ur)f=!0;else{if(e[1][0]!==z)return void za(Lr(["internal","$parameter is not a symbol"]));if(e[1][H]!==u)return void za(Lr(["internal","$parameters in foreign namespace: "+C(e[1][H])+ms.NSinfix+e[1][Y]+" from: "+C(u)]));e[1][1]=f?ur:ht[o]}ht[o++]=i,e=e[2]}return ht[bt++]=r,lt=ur,st=a[2][2][2],ct=ur,ht[bt++]=mt,ht[mt=bt++]=Qn,vt[dt++]=Ye,ht[bt++]=dt,ht[bt++]=!1,gt=hn,"number"==typeof(i=ht[bt-11-r])&&(a=_t,_t=ht[i],ht[bt-11-r]=a),void(pr=u)}if(n[0]!==D?i=ur:(i=n[1],n=n[2]),t!==ur){if(i[0]===D||i[0]===Q)break;i=i[S]}}ht[bt-2-r]=n,ht[bt-1-r]=e,ht[bt++]=r,ct=i,vt[dt++]=Qe,gt=wn}function Ci(){var r;Fi();var e=ht[bt-1],n=e[2][2][1];ht[bt++]=n[1],A(n)&&(n[1]=ct),lt=ur,st=e[2][2][2],ct=ur,ht[bt++]=mt,ht[mt=bt++]=Vn,vt[dt++]=Zn,ht[bt++]=dt,ht[bt++]=!1,gt=hn,"number"==typeof(r=ht[bt-8])&&(n=_t,_t=ht[r],ht[bt-8]=n),pr=e[2][1][H]}function Bi(){var r,e=ht[bt-1];e&&e[x].trap?Nu(e,ct):(bt-=2,ht[--bt]!==Vn&&yu(lu,"nadiCallNoSpread2: lost frame sync"),(mt=ht[--bt])<Nt&&So(),(e=(r=ht[bt-2])[2][2][1])!==ur&&r[1]!==Qr&&(e[1]=ht[bt-1]),bt-=3,_t=ht[--bt],pr=ht[--bt],gt=vt[--dt])}function Li(){var r=ht[bt-1];if(r&&r[x].trap)Nu(r,ct);else{bt-=2,ht[--bt]!==Qn&&yu(lu,"nadiCallComplete: lost frame sync"),(mt=ht[--bt])<Nt&&So();var e=ht[--bt],r=ht[bt-4-e];if(r[1]!==Qr)for(var n=r[2][2][1],t=bt-e,i=e;0<=--i&&n[0]===D;)n[1]!==ur&&(n[1][1]=ht[t]),++t,n=n[2];bt-=e+5,_t=ht[--bt],pr=ht[--bt],gt=vt[--dt]}}function Di(){lt=Zr,st=ct,Pt=ct=ur,gt=hn}function zi(){ht[bt++]=mt,ht[mt=bt++]=Gn,ht[bt++]=dt,ht[bt++]=!1,ht[bt++]=lt,ht[bt++]=st,ht[bt++]=st,gt=bn}function Zi(){for(var r=ht[bt-1],e=ht[bt-3];;){if(Pt=ct,gt===yn?(gt=bn,r=r[2],ht[bt-1]=r):gt===mn&&(gt=bn,A(Pt)?(e=ur,r=r[1][2],ht[bt-3]=e):r=r[2],ht[bt-1]=r),r[0]!==D){if(e!==ur)return r=ht[bt-2],void(ht[bt-1]=r);gt=vt[--dt]}else{if(kt&&0==--kt)return void ju({state:Wr("task"),body:ht[bt-2],task:r,loop:e,value:Pt});if(r[1].breakpoint&&Su(r))return;if(r[1][0]!==D){if((ct=r[1])[0]===Q)return vt[dt++]=yn,void(gt=wn);ct=ct[1],gt=yn;continue}if(r[1][1][0]===D){if(r[1][1][1][0]!==D)return ct=r[1][1],vt[dt++]=mn,void(gt=wn);e===ur&&r[2][0]!==D?(r=r[1],e=ur,ht[bt-1]=r,ht[bt-2]=r,ht[bt-3]=e):(kt&&++kt,ht[bt-1]=r[2],r=r[1],e=ur,ht[bt++]=mt,ht[mt=bt++]=Gn,ht[bt++]=dt,ht[bt++]=!1,ht[bt++]=e,ht[bt++]=r,ht[bt++]=r,vt[dt++]=bn),ht[bt-6]!==Gn&&yu(lu,"nadiBody1: lost frame sync");continue}if(ct=r[1],gt=ct[1][U]!==ur?(pt=ct[1],lt=Zr,st=ct[2],ct=pt[U],kn):wn,!(nu<=su&&e===ur&&r[2][0]!==D))return void(vt[dt++]=yn)}var n=ht[bt-4];return n&&n[x].trap?(vt[dt++]=gt,gt=at,void Nu(n,ct)):(bt-=5,ht[--bt]!==Gn&&yu(lu,"nadiBody4: lost frame sync"),void(mt=ht[--bt]))}}function Xi(){bt-=5,ht[--bt]!==Gn&&yu(lu,"nadiBody4: lost frame sync"),mt=ht[--bt],gt=vt[--dt]}function Gi(){ht[bt++]=ur,ht[bt++]=ur,ht[bt++]=ct,gt=vn}function Ji(){var r=ht[bt-1];if(r[0]!==D)return ct=ht[bt-2],bt-=3,void(gt=vt[--dt]);ct=r[1],vt[dt++]=dn,gt=wn}function Vi(){var r=ht[bt-1],e=ht[bt-3],n=Cr(ct,ur);e!==ur?e[2]=n:ht[bt-2]=n,ht[bt-3]=n,ht[bt-1]=r[2],gt=vn}function Qi(){ht[bt++]=ct,gt=He,ct=Zr}function Ui(){var r=ht[bt-1];if(!A(ct)||r[0]!==D)return--bt,void(gt=vt[--dt]);ct=r[1],ht[bt-1]=r[2],vt[dt++]=He,gt=wn}function Hi(){ht[bt++]=ct,gt=Cn,ct=ur}function Yi(){var r=ht[bt-1];if(A(ct)||r[0]!==D)return--bt,void(gt=vt[--dt]);ct=r[1],ht[bt-1]=r[2],vt[dt++]=Cn,gt=wn}function Ki(){ht[bt++]=ct,st=ct[2][1],ct=st,vt[dt++]=ln,gt=wn}function ra(){Ec(ht[--bt][1],ct),gt=vt[--dt]}function ea(){ht[bt++]=0,ht[bt++]=ct,gt=$n}function na(){var r=ht[bt-1];if(r[0]!==D)return bt-=2,ct=ur,void(gt=vt[--dt]);ct=r[1][1],vt[dt++]=Mn,gt=wn}function ta(){var r=ht[bt-1];gt=A(ct)?(0!==ht[bt-2]&&(ht[ht[bt-2]]=Yn),bt-=2,st=r[1][2],lt=ur,hn):(ht[bt-1]=r[2],$n)}function ia(){ct=(ht[bt++]=ct)[1],vt[dt++]=cn,gt=wn}function aa(){var r=ht[--bt];ct=r[2][1][1]=Cr(ct,r[2][1][1]),gt=vt[--dt]}function ua(){ht[bt++]=ct[2][2],ht[bt++]=ct[2][1],ct=ct[1],ht[bt++]=ct,vt[dt++]=Fn,gt=wn}function oa(){ht[bt-1]=ct,ct=ht[bt-2],vt[dt++]=Wn,gt=wn}function fa(){ua(),vt[dt-1]=Ge}function ca(){gt===Wn?ht[bt-2]=ct:ht[bt-1]=ct,st=ht[--bt],ct=ht[--bt],lt=ht[--bt],gt===Ge&&ct[0]===D&&(ct[2][0]!==D?ct=ct[1]:(ht[bt++]=lt,ht[bt++]=ct[2],ht[bt++]=st,vt[dt++]=Ge,ct=ct[1],lt=ur)),gt=Je,ht[bt++]=lt,ht[bt++]=st}function sa(){var r=ur;if(st=ct,ct=ht[--bt],lt=ht[--bt],!A(ct))return ct=ur,void(gt=vt[--dt]);switch(ct[0]){case D:if(st===ur)r=ct;else if(st[0]===X||st[0]===G){var e=Eo(st,65535);if(null!==e){for(r=ct,e=Math.abs(e);r[0]===D&&0<=--e;)r=r[2];s.negative(st[3])||(r=r[1])}}else if(ga(pe))return;break;case z:if(ga(ge))return;if(lt===ur)return pa();r=ur;break;case k:if(ga(xe))return;if(lt===ur)return pa();r=ur;break;case Z:return ga(be)?void 0:lt===ur?pa():void va("String");case X:return la()?void 0:ga(ve)?void 0:lt===ur?pa():void va("Number");case G:return la()?void 0:ga(de)?void 0:lt===ur?pa():void va("Number");case Q:if(Cu(ct[3])){var r=ur,n=st[0]===z?st[Y]:st[0]===Z?st[K]:(st[0]===X||st[0]===G)&&Eo(st,Number.MAX_SAFE_INTEGER);if(L(ct[3]))if("length"==n)r=Ao(ct[3].length);else{if(ga(ye))return;if(st[0]===X)(r=ct[3][n])===B&&(r=ur);else if(lt!==ur)return st=Cr(ct,Cr(pt=st,lt[1])),lt=ye,ct=$e[3],void(gt=kn)}else if(!1!==n)if(ct[3].hasOwnProperty(n))r=ct[3][n];else if(ct[3]instanceof Du)lt!==ur?(r=eo(ct,n))===ur&&(r=eo(ct,".undefined"))!==ur&&(lt=Cr(Cr(st,lt[1]),ur)):(r=eo(ct,".."+n))!==ur&&(lt=Cr(ur,ur));else if(ga(me))return}else if(r=vo(ct,st),lt!==ur)return st=Cr(ct,Cr(pt=st,lt[1])),lt=ie,ct=Ee[3],void(gt=kn);break;default:return pa()}if(lt===ur)return ct=r,void(gt=vt[--dt]);pt=st;for(var t=0;r[0]===z&&!(++t>Ct);)if(r[3]!==ur)r=r[3];else{if(r[1]===r)break;r=r[1]}ht[bt++]=ct,vt[dt++]=Ve,st=lt[1],lt=Zr,ct=r,gt=tt}function la(){return(st[0]===X||st[0]===G)&&(gt=vt[--dt],za(Lr(["internal","numeric scalar dereference"]),ur),1)}function pa(){ct=lt===ur&&ct[0]===Z&&(st[0]===Z&&"length"==st[K]||st[0]===z&&"length"==st[Y])?Ao(ct[K].length):ct[0]===z?Cr(ie,Cr(ct,Cr(st,lt))):ur,gt=vt[--dt]}function ga(r){var e=Wc(r,st);if(!A(e)){if(ct[0]===D)return;if(!A(e=Wc(ct,st)))return}pt=st;for(var n=0;e[0]===z&&!(++n>Ct);)if(e[3]!==ur)e=e[3];else{if(e[1]===e)break;e=e[1]}return st=Cr(Cr(ne,Cr(ct,ur)),lt[1]),lt=Zr,ct=e,gt=kn,1}function va(r){r=jr(r,[cr,sr]);st=Cr(r,Cr(pt=st,Cr(ct,lt[1]))),lt=ie,ct=Ee[3],gt=kn}function da(){--bt,gt=vt[--dt]}function ha(r,e,n,t){var i=eo(r,e);i===ur&&(i=eo(r,".undefined"))!==ur&&(n=Cr(Cr(Wr(e),n),ur));for(var a=0;i[0]===z&&!(++a>Ct);)if(i[3]!==ur)i=i[3];else{if(i[1]===i)break;i=i[1]}ht[bt++]=r,vt[dt++]=Ve,st=n,lt=t?Zr:ur,ct=i,gt=tt}function ba(){At=ct;var r=gt===De,e=ht[bt-1];if(e&&e[x].trap)return Nu(e,ct),ht[bt-13]=kt,void(ht[bt-14]=wt);gt=vt[--dt],bt-=2,ht[--bt]!==Xn&&yu(lu,"nadiInterruptRestore: lost frame sync"),(mt=ht[--bt])<Nt&&So(),ct=ht[--bt],st=ht[--bt],lt=ht[--bt],pt=ht[--bt],_t=ht[--bt],pr=ht[--bt],bt-=2,wt?bt-=2:(kt=ht[--bt],wt=ht[--bt]),r&&(ct=At)}function ya(){var r=pt,e=lt,n=st,t=ct,i=r[0]>=J&&r[0]<=J?r[3](t,n,e,r):ur;i===$t?fi(r,t,n,e):(ct=i,gt=vt[--dt])}function ma(){wu(ct),gt=vt[--dt]}function ka(){ht[bt++]=ur,ht[bt++]=Un,ht[bt++]=ur,ht[bt++]=ct,ht[bt++]=mt,ht[mt=bt++]=Jn,ht[bt++]=dt,ht[bt++]=!1,lt=ur,st=ct[1],ct=ur,vt[dt++]=Ln,gt=hn}function wa(){ht[bt-6]=ct,ht[bt-3]=ot,mt<Nt&&So(),ht[bt-7]===Yn&&(Kr[1]=Kr),ct=ht[bt-5],lt=ur,st=ct[2][2][1],ct=ur,vt[dt++]=Dn,gt=hn}function xa(){ct=ht[bt-6],st=ht[bt-7],lt=ht[bt-8],mt=ht[bt-4];var r=ht[bt-1];r&&r[x].trap?Nu(r,ct):(bt-=2,ht[--bt]!==ot&&yu(lu,"nadiCatch2: lost frame sync"),bt-=5,gt=(st===Yn||st===Un||(st===rt?(Za(ct),ht[mt]==Jn&&(Kr[1]=Kr)):st===et?Ga(lt):st===nt?Ja(lt):Da(Kr[1],Zr)),vt[--dt]))}function Oa(){return ur}function Sa(r){return r[0]!==D&&r[0]!==Q?r[1]:(vt[dt++]=wn,r)}function Na(r,e){return vt[dt++]=Nn,st=e,r}function ja(r){return vt[dt++]=ze,lt=Zr,st=r[2],r[1]}function Ta(r){return vt[dt++]=ze,lt=ur,st=r[2],r[1]}$r("undefined",Oa,J);var Pa=Ir(Ta,V);function Aa(r){return vt[dt++]=gn,r}function Ia(r){return vt[dt++]=Ue,r}function $a(r){return vt[dt++]=_n,r}function Ma(r){return vt[dt++]=pn,r}function qa(r){return r[0]!==D?ur:(vt[dt++]=sn,r)}function Ea(r){return vt[dt++]=In,r}function Ra(r){return r[2][1][0]!==z?ur:_e(r[2][1])?(vt[dt++]=fn,r):ct}function Fa(r){return vt[dt++]=Rn,r}function Wa(r){return vt[dt++]=Xe,r}function _a(r){return vt[dt++]=jn,r}function Ca(r){return vt[dt++]=rn,r}function Ba(r){return vt[dt++]=Bn,r}function La(){if(void 0===ct||void 0===st||void 0===lt||void 0===pt)debugger;var r,e,n,t,i=mt;if(bt<mt||mt+50<bt)debugger;for(t=0;t<bt;++t)if(void 0===ht[t])debugger;for(;0<i;){switch(ht[i]){case Vn:if(!I((e=ht[i-3])[1]))debugger;if(ht[i-6][0]!=k)debugger;if((n=ht[i+1])<0||dt+1<n)debugger;if(vt[n-1]!=Zn)debugger;break;case Qn:if((r=ht[i-2])<0||1e3<r)debugger;if(!I((e=ht[i-6-r])[1]))debugger;if(ht[i-9-r][0]!=k)debugger;if((n=ht[i+1])<0||dt+1<n)debugger;if(vt[n-1]!=Ye)debugger;break;case ut:if((r=ht[i-4])<0||1e3<r)debugger;if((e=ht[i-2])[0]!=O&&e[0]!=Q)debugger;if(n=ht[i+1],vt[n-1]!=it)debugger;break;case Gn:if((n=ht[i+1])<0||dt+1<n)debugger;break;case Jn:if(ht[i-4]<0||ht[i-4]>nt)debugger;if((n=ht[i+1])<0||dt+1<n)debugger;break;case ot:break;case Xn:if(ht[i-7][0]!=k)debugger;break;default:debugger}if(ht[i-1]<0||ht[i-1]>=i)debugger;i=ht[i-1]}}function Da(r,e){var n,t,i,a=mt;if(La(),r[0]===D&&r[1][0]===z&&"internal"==r[1][Y]&&r[2][1]===re&&re[U]!==ur)return Vt(Cr(re,ur),"escape"),vt[dt++]=gt,ct;if(Kr[U]!==ur&&e===ur)return Kr[1]===Kr&&(Kr[1]=r),gt=vt[--dt],Vt(Cr(Ae,Cr(Kr[1],Cr(Zr,ur))),"exception-rethrow"),Vt(Cr(Kr,Cr(r,ur)),"exception-hook"),vt[dt++]=gt,ct;for(ct=ur;0<a;){var u=ht[a];switch(u){case Vn:vu<=nu&&xu(r),t=ht[a-2],(i=ht[a-3][2][2][1])!==ur&&(i[1]=t),_t=ht[a-5],pr=ht[a-6];break;case Qn:for(vu<=nu&&xu(r),t=ht[a-2],i=ht[a-6-t][2][2][1],n=t-1;0<=n;--n)i[1][1]=ht[a-3-n],i=i[2];_t=ht[a-8-t],pr=ht[a-9-t];break;case ut:vu<=nu&&xu(r);break;case Gn:break;case Jn:return ht[(mt=a)-4]!==Un?(ht[a-4]===Yn&&(Kr[1]=r),ht[a-4]=Kn,bt=a+3,dt=ht[a+1],vt[dt++]=Ln):(Kr[1]=r,mt<Nt&&So(),ht[a-4]=Hn,bt=a+3,dt=ht[a+1],ct=ht[a-2],ht[bt++]=a-4,ht[bt++]=ct[2][1],vt[dt++]=Ln,vt[dt++]=$n),Kr;case ot:break;case Xn:if(_t=ht[a-6],pr=ht[a-7],"future"==ht[a-8])ht[a-9][2][2][1][x][".exception"]=r;else{if("debugger"==us(Kr[1]))break;if(!/fiberwake|escape|xcallback/.test(ht[a-8]))break}return Kr[1]=Kr,bt=a+3,dt=ht[a+1],ur;default:yu(lu,"nfuncThrow: unknown frame type on stack: "+u)}a=ht[a-1]}return Kr[1]!==Kr&&(r=Kr[1]),r[0]===D&&r[1][0]===z&&"internal"==r[1][Y]?r[2][1]!==re&&yu(lu,us(r[2][1])):"debugger"!=us(r)&&yu(lu,"uncaught exception: "+us(r)),Jt(Lr(["driver"])),vt[dt++]=gt,ct}function za(r){Da(r,ur),gt=vt[--dt]}function Za(r,e){for(var n,t,i,a,u=mt;0<u;){var o=ht[u];switch(o){case Qn:if(t=ht[u-2],(a=ht[u-6-t])[1]!==Ur)return dt=ht[u+1],(mt=u)<Nt&&So(),bt=u+3,r;for(i=a[2][2][1],n=t-1;0<=n;--n)i[1][1]=ht[u-3-n],i=i[2];_t=ht[u-8-t],pr=ht[u-9-t];break;case Vn:if((a=ht[u-3])[1]!==Ur)return dt=ht[u+1],(mt=u)<Nt&&So(),bt=u+3,r;t=ht[u-2],(i=a[2][2][1])!==ur&&(i[1]=t),_t=ht[u-5],pr=ht[u-6];break;case ut:case Gn:break;case Jn:if(e)break;return ht[(mt=u)-4]=rt,ht[u-3]=r,bt=u+3,dt=ht[u+1],vt[dt++]=Ln,r;case ot:case Xn:break;default:yu(lu,"naanReturn: unknown frame type on stack: "+o)}u=ht[u-1]}return Da(Lr(["internal","$orphaned return"]),ur)}function Xa(r,e){return Za(r?e(0):Pt)}function Ga(r){for(var e,n,t,i,a=mt;0<a;){var u=ht[a];switch(u){case Qn:if(e=ht[a-2],(i=ht[a-6-e])[1]===Ur){for(t=i[2][2][1],n=e-1;0<=n;--n)t[1][1]=ht[a-3-n],t=t[2];_t=ht[a-8-e],pr=ht[a-9-e];break}case Vn:a=-1;continue;case ut:break;case Gn:if(ht[a+3]!==Zr)break;if(r!==ur&&jc(r,ht[a+4][S])===ur)break;return dt=ht[a+1],bt=(mt=a)+6,ht[a+3]=ur,ht[a+5]=ur,vt[dt++]=bn,Pt;case Jn:return ht[(mt=a)-5]=r,ht[a-4]=et,bt=a+3,dt=ht[a+1],vt[dt++]=Ln,Pt;case ot:case Xn:break;default:yu(lu,"nfuncBreak: unknown frame type on stack: "+u)}a=ht[a-1]}return Da(Lr(["internal",'$break tag "'+us(r)+'" not found']),ur)}function Ja(r){for(var e,n,t,i,a=mt;0<a;){var u=ht[a];switch(u){case Qn:if(e=ht[a-2],(i=ht[a-6-e])[1]===Ur){for(t=i[2][2][1],n=e-1;0<=n;--n)t[1][1]=ht[a-3-n],t=t[2];_t=ht[a-8-e],pr=ht[a-9-e];break}case Vn:a=-1;continue;case ut:break;case Gn:if(ht[a+3]!==Zr)break;if(r!==ur&&jc(r,ht[a+4][S])===ur)break;return dt=ht[a+1],bt=(mt=a)+6,ht[a+5]=ht[a+4],vt[dt++]=bn,ur;case Jn:return ht[(mt=a)-5]=r,ht[a-4]=nt,bt=a+3,dt=ht[a+1],vt[dt++]=Ln,Pt;case ot:case Xn:break;default:yu(lu,"nfuncContinue: unknown frame type on stack: "+u)}a=ht[a-1]}return Da(Lr(["internal",'$continue tag "'+us(r)+'" not found']),ur)}function Va(r){var n=[],t=[];function i(r){var e=cc(r)!==ur?r[H]:r,r=n.indexOf(e);return r<0&&(r=n.push(e)-1,t[r]={}),t[r]}function e(r,e){i(r)[r[Y]]=e}function a(r){return i(r)[r[Y]]}for(var u=ur;0<r;){var o,f,c,s,l,p,g,v,d,h,b,y=ht[r];switch(y){case Vn:p=ht[r-2],g=ht[r-3],v=ht[r-4],ht[r-5],b=ht[r-6],d=g[1],(o=a(h=g[2][2][1]))===B&&(o=h[1]),e(h,p),l=h===ur?ur:Cr(h,Cr(h[1],Cr(p,ur))),s=Cr(d,Cr(v,Cr(l,Cr(g,Cr(b,ur)))));break;case Qn:for(f=ht[r-2],g=ht[r-6-f],v=ht[r-7-f],ht[r-8-f],b=ht[r-9-f],d=g[1],h=g[2][2][1],l=ur,c=f-1;0<=c;--c)(o=a(h[1]))===B&&(o=h[1][1]),l=Cr(Cr(h[1],Cr(o,Cr(ht[r-3-c],ur))),l),h=h[2];for(h=g[2][2][1],c=f-1;0<=c;--c)e(h[1],ht[r-3-c]),h=h[2];s=Cr(d,Cr(v,Cr(l=Df(l,ur),Cr(g,Cr(b,ur)))));break;case ut:for(f=ht[r-4],d=(g=ht[r-2])[0]===O?le:we,l=ur,c=f-1;0<=c;--c)l=Cr(ht[r-4-f+c],l);s=Cr(d,Cr(l,Cr(g,ur)));break;case Gn:s=Cr(d=ht[r+3]===ur?ae:ue,Cr(ht[r+4],Cr(ht[r+5],ur)));break;case Jn:s=Cr(d=oe,Cr(ht[r-2],ur));break;case ot:break;case Xn:s=Cr(d=fe,Cr(ht[r-7],Cr(Wr(ht[r-8]),Cr(ht[r-9],ur))));break;default:return yu(lu,"nfuncStacktrace: unknown frame type on stack: "+y),ur}s[1]===ur&&yu(lu,"nfuncStacktrace: bad frameid"),u=Cr(s,u),r=ht[r-1]}return Df(u,ur)}function Qa(r,e){for(var n=mt;0<n;){var t=ht[n];switch(t){case Vn:case Qn:case ut:case Gn:case Jn:case ot:case Xn:if(0<r--){n=ht[n-1];continue}var i=ht[n+2];return i=i||(e?ht[n+2]=Lu():ur);default:return yu(lu,"naanFrameHook: unknown frame type on stack: "+t),ur}}return ur}function Ua(r){for(var e,n=mt;0<n;){var t=ht[n];switch(t){case Vn:return ht[n-3];case Qn:return e=ht[n-2],ht[n-6-e];case ut:case Gn:case Jn:case ot:case Xn:break;default:return yu(lu,"nfuncCaller: unknown frame type on stack: "+t),ur}n=ht[n-1]}return ur}function Ha(r){for(var e,n=mt;0<n;){var t=ht[n];switch(t){case Vn:return ht[n-6];case Qn:return e=ht[n-2],ht[n-9-e];case ut:case Gn:case Jn:case ot:case Xn:break;default:return yu(lu,"nfuncNscaller: unknown frame type on stack: "+t),ur}n=ht[n-1]}return ur}function Ya(r,e){var n,t,i,a,u,o,f,c,s;function l(r){switch(r){case Qn:case Vn:case ut:case Jn:case ot:case Xn:return 3;case Gn:return 6}}(s=[]).saveThis=_t,s.saveExecNS=pr,s.stephook=wt,s.stepping=kt,s.stack1=ct,s.stack2=st,s.stack3=lt,s.stack4=pt,a=mt,u=bt,f=dt;r:for(;0<a;){switch(n={},0!==Nt&&Nt<a&&(n.sprint=!0),n.ftype=ht[a],o=a+l(n.ftype),n.runargs=ht.slice(o,u),n.ftype){case Qn:for(n.argcount=ht[a-2],u=a-9-n.argcount,n.execNS=ht[a-9-n.argcount],n.saveThis=ht[a-8-n.argcount],n.fname=ht[a-7-n.argcount],n.fbind=ht[a-6-n.argcount],n.feval=ht[a-5-n.argcount],n.inarg=ht[a-4-n.argcount],n.inparm=ht[a-3-n.argcount],n.arglist=[],i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)n.arglist.push(i[1][1]),i=i[2];if(c=ht[a+1]-1,n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n),e){if((n.fbind[1]===Jr||n.fbind[1]===Hr)&&n.fbind[1]!==Ur)for(i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)i[1][1]=ht[a-3-t],i=i[2];_t=n.saveThis,pr=n.execNS}if(!0===r&&n.fbind[1]!==Ur)break r;break;case Vn:if(u=a-6,n.execNS=ht[a-6],n.saveThis=ht[a-5],n.fname=ht[a-4],n.fbind=ht[a-3],i=n.fbind[2][2][1],n.arg=i[1],c=ht[a+1]-1,n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n),e&&(i===ur||n.fbind[1]!==Jr&&n.fbind[1]!==Hr||(i[1]=ht[a-2]),_t=n.saveThis,pr=n.execNS),!0===r)break r;break;case ut:for(n.argcount=ht[a-4],u=a-6-n.argcount,n.targetThis=ht[a-6-n.argcount],n.arglist=[],t=n.argcount-1;0<=t;--t)n.arglist.push(ht[a-5-t]);n.inarg=ht[a-3],n.fbind=ht[a-2],c=ht[a+1]-1,n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n),e&&(_t=n.saveThis,pr=n.execNS);break;case Gn:u=a-1,n.loop=ht[a+3],n.body=ht[a+4],n.task=ht[a+5],c=ht[a+1],n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n);break;case Jn:case ot:u=a-5,n.tag=ht[a-5],n.status=ht[a-4],n.result=ht[a-3],n.catchargs=ht[a-2],c=ht[a+1],n.runstates=vt.slice(c,f),n.hook=ht[a+2],s.push(n);break;case Xn:break r;default:yu(lu,"naanSaveProcState: unknown frame type on stack: "+n.ftype)}if(a=ht[a-1],f=c,"number"==typeof r&&a<=r)break r}return e&&((mt=a)<Nt&&So(),bt=a+l(ht[mt]),dt=c),s}function Ka(r){for(var e,n,t,i,a=r.length-1;0<=a;--a){switch((e=r[a]).ftype){case Qn:for(ht[bt++]=e.execNS,ht[bt++]=e.saveThis,ht[bt++]=e.fname,ht[bt++]=e.fbind,ht[bt++]=e.feval,ht[bt++]=e.inarg,ht[bt++]=e.inparm,t=e.fbind[2][2][1],n=0;n<e.argcount;++n)ht[bt++]=t[1][1],e.fbind[1]!==Jr&&e.fbind[1]!==Hr||t[1]===ur||(t[1][1]=e.arglist[n]),t=t[2];ht[bt++]=e.argcount,ht[bt++]=mt,mt=bt,ht[bt++]=Qn,ht[bt++]=dt+1,ht[bt++]=e.hook;break;case Vn:ht[bt++]=e.execNS,ht[bt++]=e.saveThis,ht[bt++]=e.fname,ht[bt++]=e.fbind,t=e.fbind[2][2][1],ht[bt++]=t[1],e.fbind[1]!==Jr&&e.fbind[1]!==Hr||t===ur||(t[1][1]=e.arg),ht[bt++]=mt,mt=bt,ht[bt++]=Vn,ht[bt++]=dt+1,ht[bt++]=e.hook;break;case ut:for(ht[bt++]=e.targetThis,n=0;n<e.argcount;++n)ht[bt++]=e.arglist[n];ht[bt++]=e.argcount,ht[bt++]=e.inarg,ht[bt++]=e.fbind,ht[bt++]=mt,mt=bt,ht[bt++]=ut,ht[bt++]=dt+1,ht[bt++]=e.hook;break;case Gn:ht[bt++]=mt,mt=bt,ht[bt++]=Gn,ht[bt++]=dt,ht[bt++]=e.hook,ht[bt++]=e.loop,ht[bt++]=e.body,ht[bt++]=e.task;break;case Jn:case ot:ht[bt++]=e.tag,ht[bt++]=e.status,ht[bt++]=e.result,ht[bt++]=e.catchargs,ht[bt++]=mt,mt=bt,ht[bt++]=e.ftype,ht[bt++]=dt,ht[bt++]=e.hook;break;case Xn:default:yu(lu,"naanRunProcState: unknown frame type on stack: "+e.ftype)}for(i=0;i<e.runstates.length;++i)vt[dt++]=e.runstates[i];for(n=0;n<e.runargs.length;++n)ht[bt++]=e.runargs[n];e.sprint&&(0===Nt?Oo():mt<Nt&&(Nt=mt))}ct=r.stack1,st=r.stack2,lt=r.stack3,pt=r.stack4,wt=r.stephook,kt=r.stepping,_t=r.saveThis,pr=r.saveExecNS}function ru(){var r=ko(0);return r[w]=ur,r[x].execstate=Ya(!0),r}function eu(r,e){return r[0]!==Q||Cu(r[x])||!L(r[x].execstate)?ur:(Ka(r[x].execstate),ct=e)}var nu=lu,tu=0,iu=0,au=30,uu=0,ou=3*au,fu="",cu=0,su=0,lu=1,pu=2,gu=3,vu=4,du=5,hu=ur,bu=hu[1];function yu(r,e){if(r<=nu&&P.hasOwnProperty("debug-write"))try{P["debug-write"](e,r)}catch(r){}}function mu(){var r="",e=0;for((ou<=tu||tu<uu)&&(iu=Math.floor(tu/au)*au-2*au,uu=iu+au,ou=iu+3*au,0<iu&&(r="*")),0<iu&&(r+=tu.toString(),r=" ".substring(r.length)+r+" ",e=iu);e++<tu;)r+=e%2==0?"| ":" ";return r}function ku(r,e,n,t){0<fu.length&&yu(cu,fu);for(var i=n,a="";i[g]===D;)0<a.length&&(a+=" "),t&&i[1][0]===z?a+=us(i[1][1],{quote:Zr}):a+=us(i[1],{quote:Zr}),i=i[N];fu=mu()+e+"("+a+")",cu=r,++tu}function wu(r){--tu<0&&(tu=0),0<fu.length?(yu(cu,fu+"==> "+us(r,{quote:Zr})),fu=""):yu(vu,mu()+"==> "+us(r,{quote:Zr}))}function xu(r){--tu<0&&(tu=0),0<fu.length?(yu(cu,fu+"==> unknown"),fu=""):yu(vu,mu()+"==> unknown"),yu(vu,"==> proc terminated by throw: ",us(r))}function Ou(){nu=pu,fu="",cu=tu=0}function Su(r){if(qu[1]===qu&&r[1].breakpoint[0]===Q){var e=r[1].breakpoint[x];if(Cu(e)&&A(e.enable))return qu[1]=r,Vt(Cr(Pa,Cr(e.proc,Cr(r[1].breakpoint,Cr(Pt,ur)))),"breakpoint"),1}}function Nu(r,e){var n;r[x].steps?(0<=(n=Eo(r[x].steps,65535))&&(kt=n+1,wt=r[x].trap),delete r[x].steps):Vt(Cr(Pa,Cr(r[x].trap,Cr(e,ur))),"frametrap"),delete r[x].trap}function ju(r){var e=wt;wt=kt=!1;var n=Lu();F(n[x],r),Vt(Cr(Pa,Cr(e,Cr(n,ur))),"steptrap")}function Tu(){return Va(mt)}function Pu(r){return r[1][0]!==z?ur:(hu=r[1],bu=hu[1],r[1])}function Au(r,e){for(var n="",t=0;t<r;++t)n+=us(e(t)),t<r-1&&(n+=" ");return""!==n&&yu(pu,n),Zr}function Iu(r,e){var n=nu;nu=pu,Au(r,e),nu=n;debugger;return Zr}function $u(r){var e=nu;return null===(nu=Eo(r,9))&&(nu=e),Ao(e)}function Mu(r,e){function i(r,e){if(r[0]===Q){var n,t=r[x];if(!L(t)||!Cu(t))return;for(n=0;n<t.length;++n)i(t[n],e)}else{if(r[0]!==D)return;e===Dr?delete r[1].breakpoint:r[1].breakpoint=e}return 1}if(0===r)return $(qu[1]===qu);var n=e(0);if(n[0]===z)return 1<r?ur:(n===Zr?qu[1]=qu:n===ur&&(qu[1]=ur),$(qu[1]===qu));if(2<r)return ur;var t=e(1);if(t!==ur){if(t!==Dr){r=Lu(),e=r[x];return e.enable=Zr,e.proc=t,i(n,r)?r:ur}i(n,t)}else if(n[1].breakpoint)return n[1].breakpoint;return ur}var qu=$r("breakpoint",Mu,O);function Eu(r,e,n){var t,i,r=Eo(r,65535);if(null===r||r<0)return ur;if(e===ur)return Qa(r);if(e[0]===X){if(s.negative(e[3]))return ur;t=e,i=n}else i=e;r=Qa(r,!0);return r!==ur&&(r[x].trap=i,t?r[x].steps=t:delete r[x].steps),r}var Ru="*饢* Rcz *饢*",Fu=function(){};function Wu(r){var p=new WeakMap;return function r(e){var n,t;if(p.get(e))return p.get(e);if(L(t=e[x])){n=_u(ye,ur),p.set(e,n);for(var i,a=n[x],u=0;u<t.length;++u)(i=t[u])[0]===Q&&Cu(i[x])?a[u]=r(i):a[u]=i}else{n=(e[3]instanceof Du?zu:Lu)(),p.set(e,n),n[2]=e[2];for(var o,f=n[x],c=Object.getOwnPropertyNames(t),s=0;s<c.length;++s){var l=t[o=c[s]];l[0]===Q&&Cu(l[x])?f[o]=r(l):f[o]=l}}return n}(r)}function _u(r,e,n){if(r===ur)return ur;if(r===me)return e[0]!==Q||L(e[x])?R(e):(Cu(e[x])?Lu:uo)(e[x]);if(r===ke){var t=zu();return e[0]===z&&e[3][1]===Qr&&_c(t,Wr(".closure"),e),t}if(r===ye){var i;if(e[0]===Q&&L(e[x])){if(!Cu(e[x]))return ao(e[x],new WeakMap);i=e[x].slice()}else i=E(e);return i[Ru]=Fu,_r(i)}if(r[0]===Q)return Cu(r[x])?Wu(r):ao(r[x],new WeakMap);if(r!==xe)return r===Oe?Vu():r===Se?Yu():r===Ne?hs(e,n):ur;if(e[0]!==Z&&e[0]!==X)return ur;e=vr(e);return fr.splice(0,0,e),e}function Cu(r){return L(r)?r[Ru]===Fu:r instanceof Fu}function Bu(){}function Lu(r){var e=_r(ur),n=new Bu;return r&&Object.assign(n,r),e[x]=n,e}function Du(){}function zu(){var r=_r(ur),e=new Du;return r[x]=e,r}Bu.prototype=Object.create(Fu.prototype),Bu.prototype.constructor=Bu,Du.prototype=Object.create(Fu.prototype),Du.prototype.constructor=Du;var Zu=0,Xu={};function Gu(r){return null===(r=Eo(r,Number.MAX_SAFE_INTEGER))||r<0?r=B:2147483647<r&&(r=2147483647),r}function Ju(i,n,t){var a,u,o=[],f=0,c=++Zu;function s(r,e){return e&&0<e?(l(),Xu[c].delay=e,setTimeout(r,e)):(Promise.resolve().then(r),-1)}function l(r){var e=Xu[c];(e=e||{nonce:i,start:(new Date).getTime(),waiting:[]}).count=f,n&&(e.execute=n),r&&e.waiting.push(r),Xu[c]=e}function p(r,e){e&&0<e&&clearTimeout(r)}function g(r){var e=i[x];if(e.hasOwnProperty(".exception")){var n=e[".exception"];return delete e[".exception"],r?Da(n,ur):za(n)}return r}function v(r){var e=Zr;for(u&&(!0===u?e=ur:(p(u,t),u=B)),a=r;0<o.length;)!function(n,t){var r;(r=Xu[c])&&r.waiting.pop(),s(function(){var r,e;r=n,e=t,Vt(Cr(ne,Cr(i,ur)),"fiberwake"),Ka(r),ct=e,g(),Ht(!0)})}(o.pop(),a);return jo(),delete Xu[c],e}function e(r){var e=pr,n=_t;return function(){!0!==u&&(++f,u=!0,Vt(Cr(Pa,Cr(r,Cr(i,ur))),"future"),_t=n,pr=e,Ht(!0),v(At),P.hasOwnProperty("interrupted")&&P.interrupted(h))}}n&&0<=t&&(u=s(e(n),t)),this.wait=$r("wait",function(r){if(a)return g(a);for(var e=mt;0<e&&ht[e]!==Xn;)e=ht[e-1];return r===ur&&(r=Ua()),gt!==Tn&&l(r),0<e?(o.push(Ya(!1,!0)),Zr):oi()},J,!0)[U],this.signal=$r("signal",v,J,!0)[U],this.reset=$r("reset",function(r){return!0===u&&a===B?Da(Lr(["internal","$can't reschedule future within itself"]),ur):(a=B,n&&(u&&!0!==u&&p(u,t),r=Gu(r),u=s(e(n),t=r||t||0)),i)},J,!0)[U]}function Vu(){var r=_r(!1),e=new Ju(r);return r[w]=ur,r[x]=e,r}function Qu(r){return $(r[0]===Q&&r[x]instanceof Ju)}function Uu(r,e){var n=_r(!1),e=new Ju(n,r,Gu(e));return e.cancel=e.signal,e.run=e.reset,delete e.signal,delete e.reset,n[w]=ur,n[x]=e,n}function Hu(){for(var r=Object.getOwnPropertyNames(Xu),e=ur,n=0;n<r.length;++n){var t=Xu[r[n]],i=new Bu;i.nonce=t.nonce,i.start=Ao(t.start),i.count=Ao(t.count),t.delay&&(i.delay=Ao(t.delay)),t.execute&&(i.execute=t.execute),t.waiting&&(i.waiting=q(t.waiting)),e=Cr(_r(i),e)}return e}function Yu(r){var e=_r(new WeakMap);return e[w]=ur,e}function Ku(r){return $(r[0]===Q&&r[x]instanceof WeakMap)}function ro(r,e){var b=[],y=[];function m(r,e){for(;;){if(r[0]!==D)return(r[0]===Q&&Cu(r[x])?k:Tc)(r,e);if(e[0]!==D)return ur;if(m(r[1],e[1])===ur)return ur;r=r[2],e=e[2]}}function k(r,e){var n;if(r===e)return Zr;if(b.push(r),L(r[x])){if(!L(e[x]))return ur;y.push(e);var t,i,a,u=r[x],o=e[x];if(u.length!=o.length)return ur;for(t=0;t<u.length;++t)if(i=u[t],a=o[t],"number"==typeof i){if(i!=a)return ur}else if(i[0]===Q&&Cu(i[x])){if((n=b.indexOf(i))!=y.indexOf(a))return ur;if(n<0&&(n=b.length,k(i,a)===ur))return ur;u[t]=n,o[t]=n}else if(m(i,a)===ur)return ur}else{if(L(e[x]))return ur;y.push(e);var f,c,s,l=r[x],p=e[x],g=Object.getOwnPropertyNames(l).sort(),v=Object.getOwnPropertyNames(p).sort();if(g.length!=v.length)return ur;for(f=0;f<g.length;++f){if((c=g[f])!=(s=v[f]))return ur;var d=l[c],h=p[s];if("number"==typeof d){if(d!=h)return ur}else if(d[0]===Q&&Cu(d[x])){if((n=b.indexOf(d))!=y.indexOf(h))return ur;if(n<0&&(n=b.length,k(d,h)===ur))return ur;l[c]=n,p[s]=n}else if(m(d,h)===ur)return ur}}return Zr}function s(r,e){if(r[0]===Q&&Cu(r[x]))if(L(r[x]))for(var n,t=r[x],i=0;i<t.length;++i)"number"==typeof(n=t[i])&&(n=e[n],t[i]=n),s(n,e);else for(var a,u=r[x],o=Object.getOwnPropertyNames(u),f=0;f<o.length;++f){var c=u[a=o[f]];"number"==typeof c&&(c=e[c],u[a]=c),s(c,e)}else r[0]===D&&(s(r[1],e),s(r[2],e))}if(r[0]!==Q||!Cu(r[x]))return ur;if(e[0]!==Q||!Cu(e[x]))return ur;var n=k(r,e);return s(r,b),s(e,y),n}function eo(r,e){for(var n=!0,t=r;t[0]===Q;){var i=t[3];if(i.hasOwnProperty(e))return i[e];if(n&&i.hasOwnProperty(".class"))t=i[".class"];else{if(!i.hasOwnProperty(".parent"))break;t=i[".parent"]}n=!1}return ur}function no(r,e,n){if(r[0]!==Q)return ur;if(r[3]instanceof Du){var t=eo(r,".="+oo(e));if(t!==ur){if(!_e(r,!0))return ct;gt=vt[--dt];t=Vt(Cr(Pa,Cr(t,Cr(n,ur))),"setdot",!0);return vt[dt++]=gt,_t=r,t}}return ho(r,e,n)}function to(r,e){for(var n=ur,t=n,i=0;i<r.length;++i){var a=new Array(v),u=(e?io:M)(u=r[i]);a[0]=D,a[1]=u,t!==(a[2]=ur)?t[2]=a:n=a,t=a}return n}function io(r){return"string"==typeof r?Wr(r):"number"==typeof r?(isFinite(r)&&Math.floor(r)==r?Ao:Io)(r):"boolean"==typeof r?$(r):r===B?Dr:null===r?zr:"object"==typeof r&&Cu(r)?r:_r(r)}function ao(r,e){if(r===B)return Dr;if(null===r)return zr;if("object"!=typeof r||Cu(r))return io(r);if(e.get(r))return e.get(r);var n=_r(r);if(e.set(r,n),L(r)){for(var t=r.length,i=[],a=0;a<t;++a)i.push(ao(r[a],e));i[Ru]=Fu}else{var u,o=Object.getOwnPropertyNames(r);if(0===o.length&&r.constructor!==Object)i=r;else if("0"===o[0]&&o[o.length-1]===(o.length-1).toString()&&"function"==typeof r.keys)i=r;else for(i=new Bu,u=0;u<o.length;++u)try{i[o[u]]=ao(r[o[u]],e)}catch(r){}}return n[x]=i,n}function uo(r){if(r===B)return Dr;if(null===r)return zr;if("object"!=typeof r||Cu(r))return io(r);for(var e=Object.getOwnPropertyNames(r),n=new Bu,t=0;t<e.length;++t)try{n[e[t]]=io(r[e[t]])}catch(r){}return _r(n)}function oo(r,e){if(r[0]===D){if(I(r[1])){var n,t=pr,i=_t;return function(){return n=to(arguments,!0),Vt(Cr(Pa,Cr(r,n)),"xcallback"),_t=i,pr=t,Ht(!0),P.hasOwnProperty("interrupted")&&P.interrupted(h),oo(At)}}for(f=[];r[0]===D;)f.push(oo(r[1])),r=r[2];return f}if(r[0]===z)return r===Zr||r!==ur&&(r===Dr?B:r===zr?null:r[Y]);if(r[0]===Z)return r[K];if(r[0]===X)return qo(r[3]);if(r[0]===G)return r[er];if(r[0]===Q){var a=r[x];if(!Cu(a))return a;if(e){if(e.get(a))return e.get(a)}else e=new WeakMap;if(L(a)){var u,o=a.length,f=[];for(e.set(a,f),u=0;u<o;++u)f.push(oo(a[u],e))}else{var c,s=Object.getOwnPropertyNames(a);for(f={},e.set(a,f),c=0;c<s.length;++c)f[s[c]]=oo(a[s[c]],e)}}return f}function fo(r){if(r[0]===D)return r;if(r[0]!==Q)return ur;var e=r[x],n=Cu(e);if(L(e))return to(e,!n);for(var t=Object.getOwnPropertyNames(e),i=ur,a=t.length-1;0<=a;--a)try{var u,o=t[a];o!==B&&e[o]!==B&&(u=e[o],n||(u=io(u)),i=Cr(Cr(io(o),u),i))}catch(r){}return i}function co(r,e){function n(e,n,t){var i,a=pr,u=_t;return function(){i=Cr(arguments[0],Cr(io(arguments[1]),Cr(n,ur))),Vt(Cr(Pa,Cr(e,i)),"arrayfilter"),_t=u,pr=a;var r=Kr[1];if(Ht(!0),r!==Kr[1])throw It;return t?At:oo(At)}}function t(e){var n,t=pr,i=_t;return function(){if(e){n=to(arguments,!1),Vt(Cr(Pa,Cr(e,n)),"arraycompare"),_t=i,pr=t;var r=Kr[1];if(Ht(!0),r!==Kr[1])throw It;r=oo(At)}else r=nf(arguments[0],arguments[1])!==ur?1:tf(arguments[0],arguments[1])!==ur?-1:0;return r}}function i(r,e,n){var t;if(e){if(e[0]!==X)return ur;null===(t=qo(e[3],Number.MAX_SAFE_INTEGER))?t=n:(t<0&&(t=r-1+t),r<=t&&(t=r-1))}else t=n;return t}function a(r,e){var n="";e=e?oo(e):",";for(var t=0;t<r.length;++t){var i=oo(r[t]);0<t?n=n+e+i:n+=i}return io(n)}if(r<2)return ur;var u=e(0),o=e(1);if(u[0]!==Q||o[0]===D||o[0]===Q&&Cu(o))return ur;var f=u[3];if(!Cu(f)||!L(f))return ur;for(var c,s=oo(o),l=[],p=0;p<r-2;++p)switch(s){case"every":case"filter":case"find":case"findIndex":case"forEach":case"some":0===p&&l.push(n(e(p+2),u));break;case"map":0===p&&l.push(n(e(p+2),u,!0));break;case"indexOf":case"join":case"lastIndexOf":case"push":case"unshift":l.push(e(p+2));break;case"concat":hc(c=e(p+2))!==ur?l.push(c[3]):l.push([c]);break;case"copyWithin":case"slice":l.push(oo(e(p+2)));break;case"pop":case"reverse":case"shift":break;case"reduce":case"reduceRight":0===p?l.push(function(e,n){var t,i=pr,a=_t;return function(){t=Cr(arguments[0],Cr(arguments[1],Cr(io(arguments[2]),Cr(n,ur)))),Vt(Cr(Pa,Cr(e,t)),"arrayreduce"),_t=a,pr=i;var r=Kr[1];if(Ht(!0),r!==Kr[1])throw It;return At}}(e(p+2),u)):1==p&&l.push(e(p+2));break;case"sort":0===p&&l.push(t(e(p+2)));break;case"fill":0===p?l.push(e(p+2)):l.push(oo(e(p+2)));break;case"splice":p<2?l.push(oo(e(p+2))):l.push(e(p+2));break;default:return ur}var g=!0;switch(s){case"find":g=!1;case"every":case"filter":case"findIndex":case"forEach":case"map":case"some":if(l.length<1)return ur;break;case"sort":0===l.length&&l.push(t());break;case"indexOf":return function(r,e,n){if((n=i(r.length,n,0))===ur)return ur;for(var t=n;t<r.length;++t)if(jc(r[t],e)!=ur)return Ao(t);return Ao(-1)}(f,l[0],l[1]);case"join":return l.length<1?a(f,!1):a(f,l[0]);case"lastIndexOf":return function(r,e,n){if((n=i(r.length,n,r.length-1))===ur)return ur;for(var t=n;0<=t;--t)if(jc(r[t],e)!=ur)return Ao(t);return Ao(-1)}(f,l[0],l[1]);case"pop":case"shift":g=!1;break;case"reduce":case"reduceRight":if(g=!1,l.length<1)return ur;if(l.length<2){if(f.length<1)return ur;l.push(f[0]),f=f.slice(1)}break;case"toString":return Qc(u,ur)}try{Tt=1,gt=Le;var v=Array.prototype[s],d=ur;return v!==B&&(d=v.apply(f,l),!g&&L(d)||(d=d===f?u:L(d)?(d[Ru]=Fu,_r(d)):io(d))),Tt=-1,d}catch(r){if(r===It)throw r;return Tt=-1,Da(Lr(["internal",'$arrayCall "'+s+'": '+r.toString()]),ur)}}function so(r,e){if(r[0]!==Q)return ur;var n,r=r[x];if(e[0]===z)n=e[Y];else{if(e[0]!==Z)return ur;n=e[K]}return $(r.hasOwnProperty(n))}function lo(r){if(r[0]===k)return zf(r);if(r[0]!==Q)return ur;r=r[x];return L(r)?ur:to(Object.getOwnPropertyNames(r),!0)}function po(r){return $(r[0]===Q&&!Cu(r[3]))}function go(r,e){if(e===ur&&(e=lr),r[0]!==Q||e[0]!==k)return ur;if(pr!==cr){if(r[H]!==ur)return r[H]==e?r:ur;if(e!==lr&&e!==pr&&e!==fr[0])return Da(Lr(["internal","$can't lock "+us(r)+" to "+C(e)]),ur),ur}return r[H]=e,r}function vo(r,e){if(r[0]!==Q)return ur;var n=r[3];if(n instanceof WeakMap&&e[0]!==Z&&e[0]!==X&&e[0]!==G){r=n.get(e);return r===B&&(r=ur),M(r)}if(e[0]===D||e[0]===Q&&Cu(e))return ur;var t=oo(e);try{return Cu(n)||n instanceof WeakMap?L(n)&&"length"==t?io(n.length):n.hasOwnProperty(t)?M(n[t]):ur:io(n[t])}catch(r){return Da(Lr(["internal",'$xget "'+t+'": '+r.toString()]),ur)}}function ho(r,e,n){if(r[0]!==Q)return ur;var t=r[3];if(t instanceof WeakMap&&e[0]!==Z&&e[0]!==X&&e[0]!==G)return _e(r,!0)?(n===Dr?t.delete(e):t.set(e,n),n):ct;if(e[0]===D||e[0]===Q&&Cu(e))return ur;if(!_e(r,!0))return ct;var i=oo(e);try{if(n===Dr)delete t[i];else if(Cu(t)||t instanceof WeakMap)if(L(t))if("length"==i)t.length=oo(n);else{var a,u=parseInt(i);if(u!=u+"")return Da(Lr(["internal","$non-numeric array index"]),ur);for(t[i]=n,a=0;a<i;++a)t[a]===B&&(t[a]=ur)}else t[i]=n;else t[i]=oo(n);return n}catch(r){return Da(Lr(["internal",'$xset "'+i+'": '+r.toString()]),ur)}}function bo(r,e){return r<2?ur:yo(e(0),e(1),r-2,2,e)}function yo(r,e,n,t,i){if(e[0]===D||e[0]===Q&&Cu(e[3]))return ur;var a=oo(e),u=null;if(r&&r[0]===Q){if(Cu(u=r[3]))return ur;if(u instanceof WeakMap)return ur}for(var o,f=ur,c=u===Number||u===String||u===Boolean,s=[],l=0;l<n;++l)s[l]=oo(i(l+t));try{return Tt=1,gt=Le,e[0]===Q?f=io(e[3].apply(u,s)):(u.prototype!==B&&(o=u.prototype[a])!==B||(c=!1,o=u[a]),o!==B&&(f=io(c?o.apply(s[0],s.slice(1)):o.apply(u,s)))),Tt=-1,f}catch(r){return Tt=-1,Da(Lr(["internal",'$xcall "'+a+'": '+r.toString()]),ur)}}function mo(r,e,n){if(r[0]!==Q||e[0]===D||e[0]===Q&&Cu(e))return ur;var t=n===ur?[]:oo(n);if(!L(t))return ur;var i=oo(e),a=null;if(r[0]===Q){if(Cu(a=r[3])){if(a.hasOwnProperty(i)){r=a[i];if(L(r))return Na(r,n)}return ur}if(a instanceof WeakMap)return ur}var u,o=ur,f=a===Number||a===String||a===Boolean;try{return Tt=1,gt=Le,e[0]===Q?o=io(e[3].apply(a,t)):(a.prototype!==B&&(u=a.prototype[i])!==B||(f=!1,u=a[i]),u!==B&&(o=io(f?u.apply(t[0],t.slice(1)):u.apply(a,t)))),Tt=-1,o}catch(r){return Tt=-1,Da(Lr(["internal",'$xapply "'+i+'": '+r.toString()]),ur)}}function ko(r,e){return Oo(),0<r?wo(e(0),r-1,1,e):wo(B,0,0,e)}function wo(r,e,n,t){var i;if(r===B)return(i=io({}))[w]=uo({persist:!0}),i;if(r[0]===Z||r[0]===z)return io(l[Fr(r)]);if(r[0]===X)return _r(s.bigInt2uint8(r[rr]));if(r[0]===D)return _r(oo(r));if(r[0]!==Q)return ur;var a,u=r[3];if(Cu(u))return io(oo(r));if(u===WeakMap)return ur;try{if("function"==typeof u){for(var o=[null],f=0;f<e;++f)o.push(oo(t(f+n)));Tt=1,gt=Le;var c=new(Function.prototype.bind.apply(u,o));return Tt=-1,_r(c)}if(1<e)return ur;c=t(n);return Tt=1,gt=Le,i=0===e?("object"==typeof(a=Object.create(u))?_r:io)(a):c[0]!==Q?ur:("object"==typeof(a=Object.create(u,c[3]))?_r:io)(a),Tt=-1,i}catch(r){return Tt=-1,Da(Lr(["internal","$xnew: "+r.toString()]),ur)}}function xo(){return Oo(),Zr}function Oo(){0===Nt&&(St=Ot,Nt=mt,Ot=0)}function So(){mt<Nt&&(jt||(Ot=St),Nt=0)}function No(r){return Tt<0?(Tt=0,Zr):(Tt=1,oi())}function jo(){Tt=-1}function To(){return No()}function Po(r,e){var n=new Array(t);return n[0]=X,(n[1]=n)[2]=e,n[3]=r,n}function Ao(r,e){return"number"!=typeof r||isNaN(r)?ur:(e=e||ur,Po($o(r),e))}function Io(r){var e=new Array(c);return e[0]=G,(e[1]=e)[2]=ur,e[3]=r,e}function $o(r){var e=Math.abs(r);"number"==typeof e&&!isNaN(e)||(e=0);e=s.int2bigInt(e,a,1);return r<0&&(e=s.negate(e)),s.trim(e,1)}function Mo(r,e){var n=s.int2bigInt(e,64,1),t=1;return s.negative(r)&&(r=s.negate(r),t=-1),s.greater(r,n)?null:t*s.modInt(r,e+1)}function qo(r){var e=s.negative(r);e&&(r=s.negate(r));var n,t=s.bitSize(r);return r=a<t?Number.POSITIVE_INFINITY:i<t?(n=s.rightShift(r,t-i),s.modInt(n,Number.MAX_VALUE)*Math.pow(2,t-i)):s.modInt(r,Number.MAX_SAFE_INTEGER+1),e?-r:r}function Eo(r,e){if(r[0]===X)return Mo(r[3],e);if(r[0]===G){r=r[3];if(-e<=r&&r<=e)return r}return null}function Ro(r){if(s.bitSize(r)<=i)return qo(r);var e="";return s.negative(r)&&(r=s.negate(r),e="-"),e+s.bigInt2str(r,10)}function Fo(r){if("string"!=typeof r)return $o(r);r="-"==r.charAt(0)?s.negate(s.str2bigInt(r.substring(1),10,1)):s.str2bigInt(r,10,1);return r}function Wo(r,e,n,t){return r[0]===X?Po(s.negate(r[3]),ur):r[0]===G?Io(-r[3]):r[0]===Q&&r[3]instanceof Du?si(r,".negate"):ci(Tr(t[2][1],"extendNegate"))}function _o(r,e){return r[0]===X&&e[0]===X?Po(s.add(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]+e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])+e[3]):r[0]===G&&e[0]===X?Io(r[3]+qo(e[3])):ur}function Co(r,e,n){var t;if(2==r&&(t=_o(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".plus")}return ci(Tr(n[2][1],"extend+"))}function Bo(r,e){return r[0]===X&&e[0]===X?Po(s.sub(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]-e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])-e[3]):r[0]===G&&e[0]===X?Io(r[3]-qo(e[3])):ur}function Lo(r,e,n){var t;if(2==r&&(t=Bo(e(0),e(1)))!==ur)return t;if(1==r)return Wo(e(0),null,null,n);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".difference")}return ci(Tr(n[2][1],"extend-"))}function Do(r,e){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]*e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])*e[3]):r[0]===G&&e[0]===X?Io(r[3]*qo(e[3])):ur;var n=r[3],t=e[3],i=s.negative(n),r=s.negative(t);return i&&(n=s.negate(n)),r&&(t=s.negate(t)),n=s.greater(n,e[3])?s.mult(n,t):s.mult(t,n),i!=r&&(n=s.negate(n)),Po(n,ur)}function zo(r,e,n){var t;if(2==r&&(t=Do(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".times")}return ci(Tr(n[2][1],"extend*"))}function Zo(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]/e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])/e[3]):r[0]===G&&e[0]===X?Io(r[3]/qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".quotient"):e[0]===Q&&e[3]instanceof Du?si(e,".quotient"):ci(Tr(t[2][1],"extend/"));if(s.isZero(e[3]))return Da(Lr(["internal","$divide by zero"]),ur);var i=r[3],a=e[3],u=s.negative(i),o=s.negative(a);u&&(i=s.negate(i)),o&&(a=s.negate(a));t=s.dup(i),r=s.dup(i),e=o;return s.divide_(i,a,t,r),u&&(e=!o,s.isZero(r)||(t=s.addInt(t,1),r=s.sub(a,r))),e&&(t=s.negate(t)),Po(s.trim(t,1),ur)}function Xo(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]%e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])%e[3]):r[0]===G&&e[0]===X?Io(r[3]%qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".modulo"):e[0]===Q&&e[3]instanceof Du?si(e,".modulo"):ci(Tr(t[2][1],"extendMod"));if(s.isZero(e[3]))return Da(Lr(["internal","$divide by zero"]),ur);var i=r[3],a=e[3],t=s.negative(i),r=s.negative(a);t&&(i=s.negate(i)),r&&(a=s.negate(a));e=s.dup(i),r=s.dup(i);return s.divide_(i,a,e,r),t&&(s.isZero(r)||(r=s.sub(a,r))),Po(s.trim(r,1),ur)}function Go(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===Q&&r[3]instanceof Du?si(r,".divide"):e[0]===Q&&e[3]instanceof Du?si(e,".divide"):ci(Tr(t[2][1],"extendDivide"));if(s.isZero(e[3]))return Da(Lr(["internal","$divide by zero"]),ur);var i=r[3],a=e[3],u=s.negative(i),t=s.negative(a);u&&(i=s.negate(i)),t&&(a=s.negate(a));r=s.dup(i),e=s.dup(i);return s.divide_(i,a,r,e),u&&(s.isZero(e)||(r=s.addInt(r,1),e=s.sub(a,e))),Cr(Po(s.trim(r,1),ur),Po(s.trim(e,1),ur))}function Jo(r,e,n,t){return r[0]===X?Po(s.not(r[3]),ur):r[0]===G?Io(~r[3]):r[0]===Q&&r[3]instanceof Du?si(r,".bitnot"):ci(Tr(t[2][1],"extendBitNot"))}function Vo(r,e){return r[0]===X&&e[0]===X?Po(s.and(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]&e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])&e[3]):r[0]===G&&e[0]===X?Io(r[3]&qo(e[3])):ur}function Qo(r,e,n){var t;if(2==r&&(t=Vo(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".bitand")}return ci(Tr(n[2][1],"extendBitAnd"))}function Uo(r,e){return r[0]===X&&e[0]===X?Po(s.or(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]|e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])|e[3]):r[0]===G&&e[0]===X?Io(r[3]|qo(e[3])):ur}function Ho(r,e,n){var t;if(2==r&&(t=Uo(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".bitor")}return ci(Tr(n[2][1],"extendBitOr"))}function Yo(r,e){return r[0]===X&&e[0]===X?Po(s.xor(r[3],e[3]),ur):r[0]===G&&e[0]===G?Io(r[3]^e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])^e[3]):r[0]===G&&e[0]===X?Io(r[3]^qo(e[3])):ur}function Ko(r,e,n){var t;if(2==r&&(t=Yo(e(0),e(1)))!==ur)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".bitxor")}return ci(Tr(n[2][1],"extendBitXor"))}function rf(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]<<e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])<<e[3]):r[0]===G&&e[0]===X?Io(r[3]<<qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".shiftleft"):e[0]===Q&&e[3]instanceof Du?si(e,".shiftleft"):ci(Tr(t[2][1],"extendShiftLeft"));e=qo(e[3]);if(e<0)e=0;else if(o<e)return Da(Lr(["internal","shiftleft > ".concat(o)]),ur);return Po(s.leftShift(r[3],e),ur)}function ef(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?Io(r[3]>>e[3]):r[0]===X&&e[0]===G?Io(qo(r[3])>>e[3]):r[0]===G&&e[0]===X?Io(r[3]>>qo(e[3])):r[0]===Q&&r[3]instanceof Du?si(r,".shiftright"):e[0]===Q&&e[3]instanceof Du?si(e,".shiftright"):ci(Tr(t[2][1],"extendShiftRight"));e=qo(e[3]);return e<0&&(e=0),Po(s.rightShift(r[3],e),ur)}function nf(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?$(r[3]>e[3]):r[0]===X&&e[0]===G?$(qo(r[3])>e[3]):r[0]===G&&e[0]===X?$(r[3]>qo(e[3])):r[0]===Z&&e[0]===Z?$(r[K]>e[K]):r[0]===Q&&r[3]instanceof Du?si(r,".greater"):e[0]===Q&&e[3]instanceof Du?si(e,".greater"):t?ci(Tr(t[2][1],"extend>")):ur;if(s.equals(r[3],e[3]))return ur;if(s.negative(r[3])){if(!s.negative(e[3]))return ur}else if(s.negative(e[3]))return Zr;return $(s.greater(r[3],e[3]))}function tf(r,e,n,t){if(r[0]!==X||e[0]!==X)return r[0]===G&&e[0]===G?$(r[3]<e[3]):r[0]===X&&e[0]===G?$(qo(r[3])<e[3]):r[0]===G&&e[0]===X?$(r[3]<qo(e[3])):r[0]===Z&&e[0]===Z?$(r[K]<e[K]):r[0]===Q&&r[3]instanceof Du?si(r,".lesser"):e[0]===Q&&e[3]instanceof Du?si(e,".lesser"):t?ci(Tr(t[2][1],"extend<")):ur;if(s.equals(r[3],e[3]))return ur;if(s.negative(r[3])){if(!s.negative(e[3]))return Zr}else if(s.negative(e[3]))return ur;return $(!s.greater(r[3],e[3]))}function af(r,e,n,t){return r[0]===G?r:r[0]===X?Io(qo(r[3])):r[0]===Z?Io(parseFloat(r[3])):r[0]===Q&&"number"==typeof r[x]?Io(r[x]):r[0]===Q&&r[3]instanceof Du?si(r,".tofloat"):ci(Tr(t[2][1],"extendTofloat"))}function uf(r){return null!==(r=Eo(r,36))&&2<=r?r:-1}function of(r,e){if(r[0]===G)return Ao(Math.floor(r[3]));if(r[0]===X)return Po(r[x],ur);if(r[0]===Z){if(0!==r[3].indexOf("0x"))return e===ur?Ao(parseInt(r[3])):((n=uf(e[3]))<0&&(n=10),Ao(parseInt(r[3],n)));n=Ao(parseInt(r[3],16));return n[w]=uo({hexcon:!0}),n}if(r[0]===Q){var n=r[x].valueOf();if("number"==typeof n)return isFinite(n)?Ao(n):ur;try{if(r[x]instanceof Uint8Array)return Po(s.uint82bigInt(r[x]),ur)}catch(r){return ur}}return ur}function ff(r){return r[w]!==ur&&A(r[w][x].hexcon)}function cf(r){return r[1]}function sf(r){return r[1]}function lf(r){return r[2]}function pf(r){return r[1][1]}function gf(r){return r[2][1]}function vf(r){return r[1][2]}function df(r){return r[2][2]}function hf(r){return r[1][1][1]}function bf(r){return r[2][1][1]}function yf(r){return r[1][2][1]}function mf(r){return r[2][2][1]}function kf(r){return r[1][1][2]}function wf(r){return r[2][1][2]}function xf(r){return r[1][2][2]}function Of(r){return r[2][2][2]}function Sf(r){return r[1][1][1][1]}function Nf(r){return r[2][1][1][1]}function jf(r){return r[1][2][1][1]}function Tf(r){return r[2][2][1][1]}function Pf(r){return r[1][1][2][1]}function Af(r){return r[2][1][2][1]}function If(r){return r[1][2][2][1]}function $f(r){return r[2][2][2][1]}function Mf(r){return r[1][1][1][2]}function qf(r){return r[2][1][1][2]}function Ef(r){return r[1][2][1][2]}function Rf(r){return r[2][2][1][2]}function Ff(r){return r[1][1][2][2]}function Wf(r){return r[2][1][2][2]}function _f(r){return r[1][2][2][2]}function Cf(r){return r[2][2][2][2]}function Bf(r,e){if(0===r)return ur;if(1==r)return Cr(e(0),ur);for(var n=e(--r);0<=--r;)n=Cr(e(r,e),n);return n}function Lf(r,e){if(0===r)return ur;for(var n=e(0);0<--r;)n=Cr(e(r,e),n);return n}function Df(r,e){for(;r[0]===D;)e=Cr(r[1],e),r=r[2];return e}function zf(r){var e,n;if(r[0]===k&&0<=(n=or.indexOf(r)))e=or[n][tr];else{if(r!==ur)return ur;e=fr[0][tr]}for(var t=ur,i=null,a=0;a<e.length;++a){var u=Cr(e[a],ur);i?i[2]=u:t=u,i=u}return t}function Zf(r,e){var n;e===ur&&(e=(n=r[2][1])===Xr?fr[0]:n!==ur?n[H]:ur);e=Ce(r,e);return"string"==typeof e?Da(Lr(["internal",e]),ur):_e(e[2][1])?e:ct}function Xf(r){function e(r){for(var e=-1;++e<Ct;){var n=r[2][3][".parent"];if(!n)return[r,e];r=n}return[ur,e]}function n(r){var e=r[2][3][".base"];return e||r}if(r[0]!==z||r[3]===ur)return ur;var t,i;[t,i]=e(r=r[3][2][1]);var a=n(t);if(a===ur)return ur;for(var u=br(r[Y]),o=ur,f=0;f<u.length;++f){var c,s,l=u[f];[c,s]=e(l),s==i&&n(c)===a&&(o=Cr(l,o))}return o}function Gf(r){var e=r[1];if(e[0]!==z||e[1][0]!==D)return ur;r=e[1][1];return e[1]=e[1][2],r}function Jf(r,e){return _e(r,!0)?(r[2]=e,r):ct}function Vf(r){return je[1]=r}function Qf(r,i){return function r(e){if(jc(e,i)!==ur)return ur;for(var n,t=0;;){if(jc(e,i)!==ur){t=-t,n=ur;break}if(e[0]!==D)return!1;if(n=r(e[1]))break;e=e[2],++t}return Cr(Ao(t),n)}(r)||ur}Ju.prototype=Object.create(Fu.prototype),Ju.prototype.constructor=Ju;var Uf=100,Hf=101,Yf=102,Kf=103,rc=104,ec=105,nc=106;function tc(r,e){if(!r)return-1;for(var n=!1,t=0;t<r;++t){var i=e(t),a=i[0];if(a===Q&&Cu(i[x])&&(a=L(i[x])?Hf:i[x]instanceof Du?Kf:i[x]instanceof Ju?rc:i[x]instanceof WeakMap?ec:i[x]instanceof vs?nc:Yf),n){if(a!==n)if(n===X&&a===G||n===G&&a===X)n=Uf;else if(n!==Uf||n!==G&&a!==X)return-1}else n=a}return n}function ic(r,e){switch(tc(r,e)){case D:return pe;case z:return ge;case Z:return be;case X:return ve;case G:return de;case J:case O:return le;case V:return Vr;case Q:return we;case k:return xe;case Uf:return he;case Hf:return ye;case Yf:return me;case Kf:return ke;case rc:return Oe;case ec:return Se;case nc:return Ne}return ur}function ac(r){return $(r[0]===z&&r[Y]==Xr[Y])}function uc(r,e,n){var t=tc(r,e);if(t===G||t===X||t===Uf)return Zr;for(var i=0;i<r;++i){var a=e(i);if(a[0]===Q&&a[3]instanceof Du)return si(a,".numeric")}return ci(Tr(n[2][1],"extendNumeric"))}function oc(r,e){return $(tc(r,e)===X)}function fc(r,e){return $(tc(r,e)===G)}function cc(r){return r[0]===z&&r[H][tr][r[H][ir][r[Y]]]===r?r:r[0]===Z?Nr(r[K]):ur}function sc(r){var e;if(r[0]===z)e=r[Y];else{if(r[0]!==Z)return ur;e=r[K]}return Fe(e)}function lc(r){return $(r[0]===z)}function pc(r){return $(r[0]===Z)}function gc(r){return $(r[0]===z||r[0]===Z)}function vc(r){return $(r[0]>=J&&r[0]<=V)}function dc(r){return $(r[0]===D&&I(r[1]))}function hc(r){return $(r[0]===Q&&Cu(r[3])&&L(r[3]))}function bc(r){return $(r[0]===Q&&r[3]instanceof Bu)}function yc(r){return $(r[0]===Q&&r[3]instanceof Du)}function mc(r){return $(r[0]!==D)}function kc(r){return $(r[0]===D)}function wc(r){return $(r[0]!==D)}function xc(r){return r[0]===X?$(!s.negative(r[3])&&!s.isZero(r[3])):r[0]===G?$(0<r[3]):ur}function Oc(r){return r[0]===X?$(s.negative(r[3])):r[0]===G?$(r[3]<0):ur}function Sc(r){return r[0]===X?$(s.isZero(r[3])):r[0]===G?$(0===r[3]):ur}function Nc(r){if(r[0]===X)return $(0===s.modInt(r[3],2));if(r[0]!==G)return ur;r=r[3]/2;return $(r==Math.floor(r))}function jc(r,e,n,t){return r[0]===X&&e[0]===X?$(s.equals(r[3],e[3])):r[0]===G&&e[0]===G?$(r[3]===e[3]):r[0]===X&&e[0]===G||r[0]===G&&e[0]===X?r[0]===Q&&r[3]instanceof Du?si(r,".eq"):e[0]===Q&&e[3]instanceof Du?si(e,".eq"):ci(Tr(t[2][1],"extendEq")):r[0]===Z&&e[0]===Z||r[0]===Q&&e[0]===Q?$(r[3]===e[3]):$(r==e)}function Tc(r,e,n,t){return r[0]===z&&e[0]===z?r===e||r[Y]===e[Y]?Zr:ur:r[0]===X&&e[0]===G?$(qo(r[3])==e[3]):r[0]===G&&e[0]===X?$(r[3]==qo(e[3])):r[0]===J&&e[0]===J||r[0]===O&&e[0]===O||r[0]===V&&e[0]===V?$(r[nr]===e[nr]):jc(r,e,n,t)}function Pc(r,e){for(;;){if(r[0]!==D)return(r[0]===Q&&Cu(r[x])?ro:Tc)(r,e);if(e[0]!==D)return ur;if(Pc(r[1],e[1])===ur)return ur;r=r[2],e=e[2]}}function Ac(r,e){for(;;){if(e[0]!==D)return ur;if(Pc(r,e[1])===Zr)return e;e=e[2]}}function Ic(r,e){for(var n;;){if(e[0]!==D)return ur;if(Pc(r,e[1])===Zr)return e;if(e[1][0]===D&&(n=Ic(r,e[1]))!==ur)return n;e=e[2]}}function $c(r,e){return r[0]===X&&e[0]===X||r[0]===G&&e[0]===G?tf(r,e):r[0]!==z||e[0]!==z?r[0]===Z&&e[0]===Z?$(r[K]<e[K]):r[0]===k&&e[0]===k?$c(r[j],e[j]):r[0]===X||e[0]!==X&&(r[0]===G||e[0]!==G&&(r[0]===z||e[0]!==z&&r[0]===Z))?Zr:ur:$(Pr(r)<Pr(e))}function Mc(r,e){for(;;){if(e[0]!==D)return r[0]!==D?$c(r,e):ur;if(r[0]!==D)return Zr;if(Mc(r[1],e[1])===Zr)return Zr;if(Pc(r[1],e[1])===ur)return ur;r=r[2],e=e[2]}}function qc(r){return $(!A(r))}function Ec(r,e){if(r[0]===D){for(var n=r;n[0]===D;){if(n[S]!==ur&&!_e(n[S]))return;n=n[N]}n=r;for(var t=e;n[0]===D;)t[0]!==D?n[S]!==ur&&(n[S][1]=t):(n[S]!==ur&&(n[S][1]=t[S]),t=t[N]),n=n[N]}else{if(!_e(r))return;r[1]=e}return 1}function Rc(r,e){return Ec(r,e)?e:ct}function Fc(r,e,n,t){function i(r){if(r[0]===z&&(r=r[U]),r[0]===J)return r[nr];if(r[0]===O){if((r=r[nr])===Co)return _o;if(r===Lo)return Bo;if(r===zo)return Do}return function(){return ur}}function a(r){return r[0]===Q&&r[3]instanceof Du&&(ha(r,t!==ur?".preadjust":".postadjust",Cr(r,Cr(e,Cr(n,ur)))),vt[dt++]=gt,1)}if(r[0]===D){var u,o=r[1],f=r[2][1];if(a(u=vo(o,f)))return ct;f=ho(o,f,i(e)(u,n))}else{if(r[0]!==z)return Da(Lr(["internal","$invalid adjust target"]),ur);if(a(u=r[1]))return ct;f=Rc(r,i(e)(u,n))}return t!==ur?f:u}function Wc(r,e){r=r[2];return bc(r)===ur?ur:vo(r,e)}function _c(r,e,n){if(!_e(r,!0))return ct;var t=r[2];if(t===ur)r[2]=t=_u(me,ur);else if(bc(t)===ur)return Da(Lr(["internal","$invalid put annotation target"]),ur);return e===ur?ur:ho(t,e,n)}function Cc(r,e,n){return _e(r,!0)?e[0]!==z?ur:(n===ur&&(t=r[2]),r[2]=W(e[2],t),r):ct;var t}function Bc(r){return r[0]>=J&&r[0]<=V&&Ns()===ur?Wr(r[3].name):r[0]!==z?ur:r[3]}function Lc(r,e){if(r[0]!==z)return ur;if(!_e(r))return ct;if(e[0]>=J&&e[0]<=V||e[0]===z)return r[3]=e;if(e[0]===D){var n=e[2][1][2];return r[2]!==n&&(r[2]=W(n)),r[3]=e}if(e[0]===Z)try{var t=function(r,e,n){return eval(r)}(e[K],{j2n:io,n2j:oo,nanu:_u,pl:os,ns:r[H]},ur);if("function"!=typeof t)return Wr("compile: not a function");var i=[O,null,r,t];return i[1]=i,r[3]=i}catch(r){return yu(gu,"compile: "+r.toString()),Wr(r)}return ur}function Dc(r,e){if(e[0]!==z||r[0]!==z)return ur;if(!_e(r))return ct;if(e[3][0]>=J&&e[3][0]<=V)return $r(r[Y],e[3][3],e[3][0]);if(e[3][0]!==D)return r[3]=e[3];var n=xr(e[Y]),t=e[3][2][1];t[Y]===Xr[Y]&&(n[S]=Xr),n[H]=t[H];e=Cr(e[3][1],Cr(n,e[3][2][2]));return n[3]=e,r[3]=e}var zc=!1;function Zc(r,e){return!zc&&gu<=nu&&(zc=!0,yu(gu,"warning: moveproc() is deprecated in favor of copyproc()")),Dc(e,r)}function Xc(r){return r===ur?cr:r[0]===z||r[0]===Q?r[H]:r[0]===k?r[j]:ur}function Gc(r){return r===ur?q(fr):r[0]===D?dr(r):r[0]===z&&r===Zr?q(or):ur}function Jc(r,e){if(0===r)return pr;var n=e(0);if(1==r&&n[0]===k){var t=pr;return pr===cr&&(pr=n),t}for(var i=0;i<r;++i){var a=e(i);if(a[0]===k)n=a;else{if(a[0]!==z&&a[0]!==Q)return ur;if(!A(a))return ur;n=a[H]}if(n!==ur&&(n!=pr&&pr!==cr))return ur}return Zr}function Vc(r,e){for(var n=[],t=0;t<r;++t)n.push(e(t));for(var i,a=ur,u=0;u<n.length;++u)(i=n[u])[0]===k?hr(i):a=Cr(i,a);return a}function Qc(r,e){var n;bc(e)&&(n=e[x]);r=Wr(us(r,n));return A(n.noquote)&&(r[w]=uo({noquote:!0})),r}function Uc(r,e){for(var n="",t=0;t<r;++t){var i=e(t);i[0]!==z&&i[0]!==X&&i[0]!==G&&i[0]!==Z||(n+=us(i))}return Wr(n)}function Hc(r){var e;if(r[0]===z)e=r[Y];else{if(r[0]!==Z){if(r[0]!==X)return ur;if(s.negative(r[3])||s.greater(r[3],s.int2bigInt(1114111,16,1)))return ur;var n=s.modInt(r[3],1114111);if(n<65536)e=String.fromCharCode(n);else try{e=String.fromCodePoint(n)}catch(r){return yu(gu,"warning: couldn't fromCodePoint("+n+")"),ur}return Wr(e)}e=r[K]}try{return Ao(e.codePointAt(0),uo({hexcon:!0}))}catch(r){return yu(gu,"warning: couldn't codePointAt(\""+e.substring(0,1)+'")'),Ao(e.charCodeAt(0))}}function Yc(r){var e;if(r[0]===z)e=xr(r[Y]);else{if(r[0]!==Z)return ur;e=xr(r[K])}return e[H]=fr[0],e}function Kc(r,e){var n,t;if(r[0]===Z)t=r[K];else if(r[0]===z)t=r[Y];else{if(r[0]!==Q||!RegExp.prototype.isPrototypeOf(r[x]))return ur;t=r[x]}if(e===ur)n=fr;else if(e===Zr)n=or;else{if(e[0]!==k)return ur;n=[e]}for(var i,a=[],u=0;u<n.length;++u){var o=n[u];if("string"==typeof t){if(o[ir].hasOwnProperty(t))return i=o[ir][t],o[tr][i]}else if(r[0]===Q)for(i=0;i<o[tr].length;++i){var f=o[tr][i];t.test(f[Y])&&a.push(f)}}return q(a)}function rs(r){if(r[0]!==D)return r[0]===z?r[Y]:r[0]===Z?r[K]:r[0]===X?ms.IntToString(r[rr],ff(r)):"";for(var e="";r[0]===D;)e+=rs(r[1]),r=r[2];return e}function es(r,e){for(var n="",t=0;t<r;++t)n+=rs(e(t));return We(n)}function ns(r){var e;if(r[0]===z)e=r[Y];else if(r[0]===Z)e=r[K];else{if(r[0]!==X)return ur;e=ms.IntToString(r[rr],ff(r))}var n,t=ur,i=null;if(0===e.length)return ur;for(n=0;n<e.length;++n){var a=Cr(Wr(e.charAt(n)),ur);i?i[2]=a:t=a,i=a}return t}function ts(r){if(r===ur)return Ao(0);if(r[0]===z)return Ao(r[Y].length);if(r[0]===Z)return Ao(r[K].length);if(r[0]===X||r[0]===G)return Ao(us(r).length);if(r[0]===Q){var e=r[x];return Cu(e)?L(e)?Ao(e.length):Ao(Object.getOwnPropertyNames(e).length):io(r[x].length)}if(r[0]!==D)return Ao(us(r).length);for(var n=1;r[2][0]===D;)++n,r=r[2];return Ao(n)}var is=new d.NaanChannel(this),as=new d.NaanChannel(this);function us(r,e,n){var t;e&&e.radix&&(t=uf(e.radix))<2&&(t=B),n===B&&(n=ms);var i="";if(r===B)return Dr[Y];if(null===r)return zr[Y];if(r[g]===D){if(r[N][0]!==D&&r[N]!==ur)i=n.ListToString([n.DottedPairToString(us(r[1],e,n),us(r[2],e,n))]);else{for(var a=r,u=[];a[g]===D;)a[N][0]!==D&&a[N]!==ur?u.push(n.DottedPairToString(us(a[1],e,n),us(a[2],e,n))):u.push(us(a[1],e,n)),a=a[N];i=n.ListToString(u)}return i}if(r[g]===z){var o=r[Y];if(e&&A(e.quote)&&(1!=o.length||p.indexOf(o)<0)){if(!A(e.nonamespace)){i=mr(r);if(i[0]===k)return o=n.QuoteSymbol(o),us(i[j],!1,n)+n.NSinfix+o}return n.QuoteSymbol(o)}return o}if(r[g]===Z)return!e||!A(e.quote)||r[w]!==ur&&A(r[w][x].noquote)?r[K]:n.QuoteString(r[K]);if(r[g]===X)return n.IntToString(r[rr],ff(r),t);if(r[g]===G)return n.FloatToString(r[er],t);if(r[g]>=J&&r[g]<=V){if(vu<=nu){var f=r[U]+"";return f.substring(9,f.indexOf("("))}f=Mr(r[3]);return f?"[Builtin "+f+"]":r[2][0]===z?"[Compiled "+r[2][Y]+"]":"[Compiled Function]"}if(r[g]===Q){var c=r[x];if(Cu(c)){if(L(c))return"Array["+c.length+"]";f=Object.getOwnPropertyNames(c).length;return c instanceof Ju?"Nonce{"+f+"}":c instanceof vs?"TextStream{"+f+"}":c instanceof WeakMap?"WeakMap{}":r[3]instanceof Du?"Object{"+f+"}":"Dictionary{"+f+"}"}try{if("function"==typeof c)return""!==c.name&&c.name?"[Function "+c.name+"]":"[Function ()]";var s=c.toString();return"["===s.substring(0,1)?s:"["+Object.prototype.toString.call(c).slice(8,-1)+" "+s+"]"}catch(r){return"[private object]"}}else if(r[g]===k)return"Namespace<"+us(r[j],!1,n)+">";debugger;return"unknown: "+r}function os(r,e){return ws[x].printline[3](r,e)}function fs(r,e){return ws[x].print[3](r,e)}function cs(r,e){return ws[x].printq[3](r,e)}function ss(r){return ws[x].printloc[3](r)}function ls(r){return ws[x].newline[3](r)}function ps(r){return ws[x].spaces[3](r)}function gs(r){return ws[x].isbreak[3](r)}function vs(r,e,n){var t,a,i=ur,u=!1,o=ur,f=ur,c=ur;function s(r){if(t.EOF())return r!==ur?ur:Da(Lr(["internal","$end-of-file"]),ur);if(c===ur)return oi();r=c;return c=ur,Da(r)}function l(){if(f[0]===D){var r=f[1];return f=f[2],o=r,1}r=function(r){var e,n;r:for(;;){if(null===(n=r.ReadToken()))return null;switch(n.type){case r.kTTNewline:case r.kTTSymbol:u&&(e=u[n.token])!==B||(e=We(n.token));break r;case r.kTTInteger:e=Po(n.token,ur);break r;case r.kTTHexInteger:e=Po(n.token,uo({hexcon:!0}));break r;case r.kTTString:e=Wr(n.token);break r;case r.kTTComment:case r.kTTCommentLine:var t=Lu();if(t[x].text=Wr(n.token),t[x].loc=Cr(Ao(n.loc.line),Cr(Ao(n.loc.column),ur)),i=Cr(t,i),n.type!=r.kTTCommentLine)continue;e=Sr("\n");break r;case r.kTTFloat:e=Io(parseFloat(n.token));break r}}return n.atom=e,n}(t);return null!==r&&((o=Lu())[x].atom=r.atom,o[x].loc=Cr(Ao(r.loc.line),Cr(Ao(r.loc.column),ur)),1)}function p(r,e){var n=r[x].atom;if(e[0]!==D)return e===be?n[0]===Z:e===ge?n[0]===z:Pc(n,e)===Zr;for(;;){if(e[0]!==D)return;if(e[1][0]===D)return;if(p(r,e[1]))return 1;e=e[2]}}function g(r,e){if(!jt&&a.Full())return oi();for(var n,t=ur,i=0;i<r;++i)n=us(t=e(i),!1,a),a.WriteString(n);return t}function v(r){return f=Cr(o,f),o=r}this.addtext=$r("addtext",function(r){return r[0]===Z?(t.AddText(r[K]),t.SetEOF(),r):ur},J,!0)[U],this.comments=$r("comments",function(){var r=i;return i=ur,r},J,!0)[U],this.isbreak=$r("isbreak",function(r){return $(r[0]===z&&a.IsBreak(r[Y].substring(0,1)))},J,!0)[U],this.linelength=$r("linelength",function(){return 80},J,!0)[U],this.newline=$r("newline",function(r){if(!jt&&a.Full())return oi();var e=1;if(r===ur||null!==(e=Eo(r,255))&&0<=e){for(;0<e--;)a.WriteString("\n");return Zr}return ur},J,!0)[U],this.spaces=$r("spaces",function(r){if(!jt&&a.Full())return oi();var e;if(null!==(e=Eo(r,255))&&0<=e)for(var n=Pe[1][Pe[1][0]===z?Y:K];0<e--;)a.WriteString(n);return Ao(a.Column())},J,!0)[U],this.printline=$r("printline",function(r,e){return e=g(r,e),a.WriteString("\n"),e},O,!0)[U],this.print=$r("print",g,O,!0)[U],this.printloc=$r("printloc",function(r){return Cr(Ao(a.Line()),Cr(Ao(a.Column()),ur))},J,!0)[U],this.printq=$r("printq",function(r,e){if(!jt&&a.Full())return oi();for(var n,t=ur,i=0;i<r;++i)n=us(t=e(i),t!==Pe[1]&&{quote:Zr},a),a.WriteString(n);return t},O,!0)[U],this.radix=$r("radix",function(r){var e,n=Cr(Ao(t.Radix()),Cr(Ao(a.Radix()),ur));return r[0]===D&&(0<=(e=uf(r[1]))&&t.SetRadix(e),0<=(r=uf(r[2][1]))&&t.SetRadix(r)),n},J,!0)[U],this.readchar=$r("readchar",function(){var r=t.ReadChar();return null!==r?Wr(r):c===ur?t.EOF()?ur:oi():(r=c,c=ur,Da(r))},J,!0)[U],this.readready=$r("readready",function(){return Ao(t.ReadReady())},J,!0)[U],this.reset=$r("reset",function(){t.Reset(),a.Reset()},J,!0)[U],this.setsymbols=$r("setsymbols",function(r){if(r===ur){if(u)return to(Object.values(u),u=!1)}else{if(r[0]!==D)return ur;for(var e={},n=r;n[0]===D;){if(n[1][0]!==z)return ur;e[n[1][Y]]=n[1],n=n[2]}u=e}return ge},J,!0)[U],this.taketext=$r("taketext",function(){return Wr(a.TakeText())},J,!0)[U],this.tokenread=$r("tokenread",function(r){return l()?o:s(r)},J,!0)[U],this.tokenlast=$r("tokenlast",function(r){return r===Zr&&(o=ur),o},J,!0)[U],this.tokenpush=$r("tokenpush",v,J,!0)[U],this.tokenmatch=$r("tokenmatch",function(r,e){var n=o;if(n[0]!==Q||!n[x].atom)return ur;if(Pc(n[x].atom,Te[1])!==Zr)return p(n,r)?n:ur;for(var t=n;;){if(!l())return s(e);if((n=o)[0]!==Q||!n[x].atom)return ur;if(Pc(n[x].atom,Te[1])!==Zr)break;t=n}return p(n,r)?n:(v(t),ur)},J,!0)[U],this.tokenpass=$r("tokenpass",function(r,e){for(var n=o;;){if(n!=ur&&!p(n,r))return n;if(!l())return s(e);n=o}},J,!0)[U],this.readex=$r("readex",function(r){return c=r},J,!0)[U],e===ur?t=is:L(e)?e[0]===Z&&((t=new d.NaanChannel(h)).ScanReset(),t.SetText(e[K]),t.SetEOF()):t=e,n===ur?a=as:L(n)?n===be&&(a=new d.NaanChannel(h)).SetWriteLimit(0):a=n,this.raw=_r({read:t,write:a})}function ds(r,e){var n=_r(!1),e=new vs(n,r,e);return n[w]=ur,n[x]=e,n}function hs(r,e){return r!==ur&&r[0]!==Z||e!==ur&&e!==be?ur:ds(r,e)}vs.prototype=Object.create(Fu.prototype),vs.prototype.constructor=vs;var bs=ds(is,as),ys=is,ms=as,ks=bs,ws=bs;function xs(r){var e=ks,n=ws;if(e===bs&&(e=ur),n===bs&&(n=ur),r[0]===D){if(r[2][0]!==D)return ur;var t=r[1],r=r[2][1];if(t===ur)t=bs;else if(t===Zr)t=ks;else if(Os(t)!==Zr)return ur;if(r===ur)r=bs;else if(r===Zr)r=ws;else if(Os(r)!==Zr)return ur;ys=(ks=t)[x].raw[x].read,ms=(ws=r)[x].raw[x].write}return Cr(e,Cr(n,ur))}function Os(r){return $(r[0]===Q&&r[x]instanceof vs)}function Ss(){return Ao((new Date).getTime())}function Ns(){return/param/.test(function(r){})?ur:Zr}function js(r){var e;if(r===ur)e=!1;else if(null===(e=Eo(r,32))||e<0)return ur;return ao(ui(e),new WeakMap)}function Ts(r){return P.hasOwnProperty("edit-set-string")?(P["edit-set-string"](us(r)),r):ur}function Ps(r){return P.hasOwnProperty("edit-get-string")?Wr(P["edit-get-string"]()):ur}var As=90,Is=e+1,$s=As+1;function Ms(){var c=new Array(1),s=[];function l(r){var e;if(r===B)return $s;if("object"!=typeof r)return r;var n,t,i=r[0];if(Is<i)return Math.floor(i/Is);if(i===Q&&!(Cu(t=(n=r)[x])?!(t instanceof Ju):!!(n[w]!==ur&&A(n[w][x].persist)||t.constructor&&m.hasOwnProperty(t.constructor.name)||t.NaanPersist)))return $s;var a=c.length+As;s.push(r),r[0]=i+a*Is;var u,o,f=Array(r.length);switch(c.push(f),(f[0]=i)===Q&&(e=function(r){var e,n,t=r[x],i=l(r[w]);if(Cu(t))if(L(t)){for(var a=[],u=0;u<t.length;++u)a.push(l(t[u]));e={na:a}}else{for(var o={},f=Object.getOwnPropertyNames(t),c=0;c<f.length;++c)o[f[c]]=l(t[f[c]],f[c]);e=r[3]instanceof Du?{no:o}:{nd:o},r[2]!==ur&&(e.tag=l(r[2]))}else try{e=t instanceof RegExp?{tag:i,type:t.constructor.name,state:[t.source,t.flags]}:t.StateSave!==B?{tag:i,type:t.constructor.name,state:t.StateSave()}:{tag:i,type:t.constructor.name,object:t}}catch(r){e={type:t.constructor.name}}return r[H]&&r[H]!==ur&&(n=or.indexOf(r[H]))<0&&(n=or.length),0<=n&&(e.xns=n),e}(r)),i){case D:f[2]=l(r[2]),f[1]=l(r[1]);break;case z:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=l(r[3]),f[4]=or.indexOf(r[4]).toString(),f[5]=r[5];break;case Z:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=r[3];break;case G:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=r[3].toString();break;case X:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=Ro(r[3]);break;case J:case O:case V:if(!(u=Mr(r[3])))return c.pop(),r[0]=i,$s;f[1]=l(r[1]),f[2]=l(r[2]),(o=jr(u,[cr,sr]))[0]===z&&o[Y]===u?f[3]=l(o):f[3]=u;break;case Q:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=e;break;case k:f[1]=or.indexOf(r).toString(),f.length=2;break;default:yu(lu,"save-state warning: invalid element type "+i+" at "+a)}return a}for(var r,e=[],n=0;n<or.length;++n){var t=n;t<=1&&(t=1-t),r=or[t][tr];for(var i=0,a=0;a<r.length;++a)!function(r,e){if("object"==typeof r&&r[0]==z){var n=c.length+As;s.push(r),r[0]=z+n*Is;n=Array(T);return c.push(n),n[0]=z,n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=e.toString(),n[5]=r[5],1}}(r[a],t)||++i;e[t]=i,l(or[t])}!function(){for(var r=1;r<c.length;++r){var e=c[r];e[0]===z&&(e[1]=l(e[1]),e[2]=l(e[2]),e[3]=l(e[3]))}}();var u=[];for(n=0;n<or.length;++n){r=or[n][tr];var o=[];o.push(l(or[n][j])),o.push(l(Ao(e[n]))),o.push(l(r[0])),u.push(o)}c[0]=u;var f=[l(pr)];for(n=0;n<fr.length;++n)f.push(l(fr[n]));var p,g=new Array(bt);for(g[0]=mt,p=1;p<=bt;++p){var v=ht[p-1];"object"==typeof v?g[p]=l(v):"number"==typeof v?g[p]=-v:v===B?yu(lu,"savestate: corrupt argstack"):g[p]=v}g[p++]=l(pt),g[p++]=l(lt),g[p++]=l(st),g[p++]=l(ct),function(){for(var r=0;r<s.length;++r)s[r][0]%=Is}();var d,h=new Array(dt);for(h[0]=gt,d=1;d<=dt;++d)h[d]=vt[d-1];var b=[];b[0]=g,b[1]=h,b[2]=yt,b[3]=f,b[4]=nu;var y=new Array("Naan",900,12002,$s);return new Array(y,c,b)}function qs(r){var e,n,t,i,a,u,o,f=r[1],c=[],s=[];function l(r){if("number"!=typeof r)return L(r)?r.length===T?yu(lu,"save-state warning: unexpected symbol "+r[Y]):yu(lu,"save-state warning: unexpected element "+r[0]):yu(lu,"save-state warning: invalid item encountered"),$s;var e,n=f[r-As];switch(n[0]){case D:break;case Z:case X:case G:if(e=n[0].toString()+"/"+n[2].toString()+"/"+n[3],s.hasOwnProperty(e))return s[e];s[e]=r,n[0]+=Is;case D+Is:case Z+Is:case X+Is:case G+Is:default:return r}var t=l(n[S]),i=l(n[N]),a=t+i/(f.length+As+1);return c.hasOwnProperty(a)?c[a]:(c[a]=r,n[0]=D+Is,n[S]=t,n[N]=i,r)}for(m=1;m<f.length;++m)switch((e=f[m])[0]){case D:case Z:case X:case G:e[1]=l(e[1]),e[2]=l(e[2]);break;case z:e[1]=l(e[1]),e[2]=l(e[2]),e[3]=l(e[3]);break;case J:case O:case V:e[1]=l(e[1]),e[2]=l(e[2]),"number"==typeof e[3]&&(e[3]=l(e[3]));break;case Q:if(e[1]=l(e[1]),e[2]=l(e[2]),e[3].na!==B)for(i=e[3].na,n=0;n<i.length;++n)i[n]=l(i[n]);else if(e[3].nd!==B||e[3].no!==B){for(a=e[3].nd||e[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=l(a[u[t]]);e[3].tag&&(e[3].tag=l(e[3].tag))}}for(var p,g=f[0],v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=l(p[o]);for(var d=r[2][0],h=1;h<d.length;++h)d[h]>As&&(d[h]=l(d[h]));for(var b=[],y=0,m=1;m<f.length;++m)switch(f[m][0]){case D:case Z:case X:case G:++y;break;default:b[m+As]=m+As-y}for(v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=b[p[o]];for(h=1;h<d.length;++h)d[h]>As&&(d[h]=b[d[h]]);for(var k=r[2][3],w=0;w<k.length;++w)k[w]>As&&(k[w]=b[k[w]]);var x=new Array(1);for(m=1;m<f.length;++m){switch((e=f[m])[0]){case D:case Z:case X:case G:continue;case D+Is:case Z+Is:case X+Is:case G+Is:e[0]-=Is,e[1]=b[e[1]],e[2]=b[e[2]];break;case z:e[1]=b[e[1]],e[2]=b[e[2]],e[3]=b[e[3]];break;case J:case O:case V:e[1]=b[e[1]],e[2]=b[e[2]],"number"==typeof e[3]&&(e[3]=b[e[3]]);break;case Q:if(e[1]=b[e[1]],e[2]=b[e[2]],e[3].na!==B)for(i=e[3].na,n=0;n<i.length;++n)i[n]=b[i[n]];else if(e[3].nd!==B||e[3].no!==B){for(a=e[3].nd||e[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=b[a[u[t]]];e[3].tag&&(e[3].tag=b[e[3].tag])}}x.push(e)}return x[0]=g,r[1]=x,r}function Es(r){var e,n=r[1];function t(r,e){r+=As;return e-r<=As&&(-9<=e-r||999<e&&-99<=e-r)?e-r:e}for(e=1;e<n.length;++e){var i=n[e];switch(i[0]){case D:case Z:case X:case G:i[1]=t(e,i[1]),i[2]=t(e,i[2]);break;case z:i[1]=t(e,i[1]),i[2]=t(e,i[2]),i[3]=t(e,i[3]);break;case J:case O:case V:i[1]=t(e,i[1]),i[2]=t(e,i[2]),"number"==typeof i[3]&&(i[3]=t(e,i[3]));break;case Q:i[1]=t(e,i[1]),i[2]=t(e,i[2])}}}function Rs(r,e){function n(r){return e.QuoteString(r)}function t(r){return"$"==r.substring(0,1)&&(r="\\".concat(r)),n(r)}if(0===r.length)return"";e===B&&(e=ms);for(var i,a,u,o,f="[",c=!1,s=0;s<r.length;++s)c&&(f+=","),"object"==typeof r[s]?((u=r[s])[0]===D?1===u[2]?f+=u[1]:u[2]===$s?1!==u[1]?f+="["+u[1]+"]":f+="0":f+="["+u[1]+","+u[2]+"]":u[0]===z&&0===u[1]&&u[2]===$s?(o=t(u[Y]),i==u[4]?u[3]===$s?f+=o:u[3]==a+1?f+="["+o+"]":f+="["+o+","+u[3]+"]":f+="["+o+","+u[3]+","+u[4]+"]"):u[0]===Z&&0===u[1]&&u[2]===$s?f+=n("$"+u[K]):u[0]===Q?f+=JSON.stringify(u[x]):u[0]===k?f+=JSON.stringify({ns:u[1]}):f+=Rs(r[s]),u[0]===z&&(i=u[4],a=u[3])):"string"==typeof r[s]?r[0]===z&&s===Y?f+=t(r[s]):r[0]===Z&&s===K?f+=n("$"+r[s]):f+=n(r[s]):r[s]!==B&&(f+=r[s]),c=!0;return f+="]"}function Fs(r){var e,n=r[0];if(!("Naan"!==n[0]||900<n[1])){var t=r[1],o=t[0],i=n[3],a=r[2],u=a[0],f=u[0],c=a[1],s=a[2],l=c[0],p=a[3],g=a[4];if(t!==B&&o!==B&&i!==B&&a!==B&&u!==B&&f!==B&&c!==B&&l!==B&&p!==B){for(var v=i-1,d=new Array(t.length),h=[],b=0;b<o.length;++b)h[b]=new Array(ar);for(w=1;w<t.length;++w)"object"==typeof(e=t[w])&&e.ns!==B?d[w]=h[e.ns]:d[w]=new Array(3);for(var y,m=h[1],k=1,w=1;w<t.length;++w)if("number"!=typeof(e=t[w]))if("string"!=typeof e){if("object"!=typeof e||0===e.length)return void yu(lu,"loadstate: unexpected token: "+typeof e);if(L(e))if(1!=e.length)if(2!=e.length)if(3!=e.length){var x,O,S,N,j=e[0];for(d[w][0]=j,x=1;x<e.length;++x)if(O=e[x],j===z&&(x===U&&(k=_(O)),x===H&&(m=(m=h[parseInt(O)])||ur)),j===X&&x===rr)d[w][x]=Fo(O);else if(j===G&&x===er)d[w][x]=parseFloat(O);else if(J<=j&&j<=V&&x===nr)if((N="string"==typeof O?wr[O]:(N="string"==typeof(S=t[_(O)])?S:3<S.length?S[Y]:S[0],wr[C(N)]))===B){debugger;yu(lu,"state-load warning: undefined builtin: "+O+"("+S+")"),d[w][x]=Oa}else d[w][x]=N;else d[w][x]=j===Z&&x===K?O:j===z&&x===Y?C(O):j===z&&x===H?h[parseInt(O)]:d[_(O)]}else{if("string"!=typeof e[0])return void yu(lu,"loadstate: malformed obj3: "+typeof e[0]);d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],k=_(e[1]),d[w][3]=d[k],m=(m=h[parseInt(e[2])])||ur,d[w][4]=m,d[w][5]=C(e[0])}else if("string"==typeof e[0])d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],k=_(e[1]),d[w][3]=d[k],d[w][4]=m,d[w][5]=C(e[0]);else{if("number"!=typeof e[0])return void yu(lu,"loadstate: malformed obj2: "+typeof e[0]);d[w][0]=D,d[w][1]=d[_(e[0])],d[w][2]=d[_(e[1])]}else if("string"==typeof e[0])d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[++k],d[w][4]=m,d[w][5]=C(e[0]);else{if("number"!=typeof e[0])return void yu(lu,"loadstate: malformed obj1: "+typeof e[0]);d[w][0]=D,d[w][1]=d[_(e[0])],d[w][2]=d[1]}else{d[w][0]=Q,d[w][1]=d[w],d[w][2]=d[1],d[w][4]=d[1];try{if(e.na!==B){var T,P=[];for(P[Ru]=Fu,T=0;T<e.na.length;++T)P.push(d[_(e.na[T])]);d[w][3]=P,0<=e.xns&&!(d[w][4]=h[e.xns])&&(d[w][4]=lr)}else if(e.nd!==B||e.no!==B){for(var A=new(e.nd?Bu:Du),I=e.nd||e.no,$=Object.getOwnPropertyNames(I),M=0;M<$.length;++M)A[$[M]]=d[_(I[$[M]])];e.tag!==B&&(d[w][2]=d[_(e.tag)]),d[w][3]=A,0<=e.xns&&!(d[w][4]=h[e.xns])&&(d[w][4]=lr)}else e.ns!==B||(y=window||global,e.tag&&(d[w][2]=d[_(e.tag)]),e.type&&e.state!==B?d[w][3]=new(Function.prototype.bind.apply(y[e.type],[null].concat(e.state))):e.object!==B?e.type&&"Object"!==e.type&&y[e.type]!==B?d[w][3]=new y[e.type](e.object):d[w][3]=e.object:d[w][3]={})}catch(r){d[w][3]={}}}}else"$"==e.substring(0,1)?(d[w][0]=Z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=e.substring(1)):(d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[1],d[w][4]=m,d[w][5]=C(e));else d[w][0]=D,0===e?(d[w][1]=d[w+1],d[w][2]=d[1]):(d[w][1]=d[_(e)],d[w][2]=d[w+1]);var q,E=new Array(u.length),R=or,F=fr,n=cr,r=sr,a=lr,i=pr;if(!function(){try{for(gr(),or=[],fr=[],cr=h[0],sr=h[1],b=0;b<o.length;++b){for(var r=o[b],e=d[r[0]-v],n=Mo(d[r[1]-v][3],99999),t=r[2]-v,i=vr(e,h[b]),a=0;a<n;++a){var u=d[t+a];(u[H]=i)[tr].push(u),i[ir][u[Y]]=a}if(i[tr].length!=n)return void yu(lu,"loadstate: symbol table sync: "+e[K]+" "+i[tr].length+" "+n)}return sr[tr].length<50||q<0||f<0||q<f?void yu(lu,"loadstate: unqualified "+sr[tr].length):1}catch(r){return void yu(lu,"loadstate failed: "+r.toString())}}())return or=R,fr=F,cr=n,sr=r,lr=a,void(pr=i);for(fr=[cr,sr],pr=cr,Xs(),Gs(),fr=[],b=1;b<p.length;++b)fr.push(d[p[b]-v]);for(pr=d[p[0]-v],q=1;q<u.length;++q){var W=u[q],W="number"==typeof W?W<=0?-W:d[W-v]:W;E[q-1]=W}return c.splice(0,1),gt=l,dt=(vt=c).length,bt=q-1,mt=f,yt=s,ct=(ht=E)[--bt],st=ht[--bt],lt=ht[--bt],pt=ht[--bt],nu=g,1}yu(lu,"cannot load malformed state")}function _(r){return r<=v?w+r:r-v}function C(r){return"\\$"===r.substring(0,2)?r.substring(1):r}}function Ws(r){var e=jr("SaveTrap",or);if(e!==ur){if(e[S]===e){e[S]=Zr;var n=Vt(Lr(["setq","SaveTrap",["SaveTrap"]]),"savetrap");return vt[dt++]=gt,n}if(n=e[S],e[S]=e,n!==Zr)return n}e=Ms();return r&&qs(e),Es(e),n=Rs(e)}function _s(r){if(!Fs(r))return ur;Js();r=jr("LoadTrap",or);if(r===ur)return Ds;r=Vt(Cr(r,ur),"loadtrap");return vt[dt++]=gt,r}function Cs(r){return Wr(Ws(r!=ur))}var Bs=$r("save",Cs,J);function Ls(r){if(r[0]!==Z)return ur;r=JSON.parse(r[K]);if(!r||0===r.length)return ur;r=_s(r);return Vs(),r}var Ds=$r("load",Ls,J),zs=[["global","`",cf,V],["global","deref",Fa,V],["global",".",Wa,V],["global","quote",cf,V],["global","$",Vf,J],["exec","and",Ia,V],["exec","apply",Na,J],["exec","break",Ga,J],["exec","call",ja,V],["exec","catch",Ba,V],["exec","cond",Ea,V],["exec","continue",Ja,J],["exec","eval",Sa,J],["exec","lambda",ac,J],["exec","loop",Ma,V],["exec","or",$a,V],["exec","return",Xa,O],["exec","throw",Da,J],["exec","yield",ru,J],["exec","resume",eu,J],["info","builtin",vc,J],["info","procedure",dc,J],["info","eq",jc,J],["info","equal",Pc,J],["info","length",ts,J],["info","not",qc,J],["info","typeof",ic,O],["symbol","setq",qa,V],["symbol","assign",Rc,J],["symbol","compress",es,O],["symbol","copyproc",Dc,J],["symbol","copyann",Cc,J],["symbol","exists",Kc,J],["symbol","get",Wc,J],["symbol","getproc",Bc,J],["symbol","interned",cc,J],["symbol","defbinding",sc,J],["symbol","lower",$c,J],["symbol","moveproc",Zc,J],["symbol","name",gc,J],["symbol","ordered",Mc,J],["symbol","preadjust",_a,V],["symbol","postadjust",Ca,V],["symbol","put",_c,J],["symbol","putproc",Lc,J],["symbol","replacer",Jf,J],["symbol","symbol",lc,J],["symbol","unintern",Yc,J],["tuple","atom",mc,J],["tuple","car",sf,J],["tuple","cdr",lf,J],["tuple","caar",pf,J],["tuple","cadr",gf,J],["tuple","cdar",vf,J],["tuple","cddr",df,J],["tuple","caaar",hf,J],["tuple","caadr",bf,J],["tuple","cadar",yf,J],["tuple","caddr",mf,J],["tuple","cdaar",kf,J],["tuple","cdadr",wf,J],["tuple","cddar",xf,J],["tuple","cdddr",Of,J],["tuple","caaaar",Sf,J],["tuple","caaadr",Nf,J],["tuple","caadar",jf,J],["tuple","caaddr",Tf,J],["tuple","cadaar",Pf,J],["tuple","cadadr",Af,J],["tuple","caddar",If,J],["tuple","cadddr",$f,J],["tuple","cdaaar",Mf,J],["tuple","cdaadr",qf,J],["tuple","cdadar",Ef,J],["tuple","cdaddr",Rf,J],["tuple","cddaar",Ff,J],["tuple","cddadr",Wf,J],["tuple","cdddar",_f,J],["tuple","cddddr",Cf,J],["tuple","cons",Bf,O],["tuple","insert",Lf,O],["tuple","empty",wc,J],["tuple","first",sf,J],["tuple","ffirst",pf,J],["tuple","fsecond",bf,J],["tuple","list",Aa,V],["tuple","member",Ac,J],["tuple","within",Ic,J],["tuple","pop",Gf,V],["tuple","push",Ra,V],["tuple","rest",lf,J],["tuple","reverse",Df,J],["tuple","rrest",df,J],["tuple","rrrest",Of,J],["tuple","second",gf,J],["tuple","third",mf,J],["tuple","totuple",fo,J],["tuple","tuple",kc,J],["tuple","tuplepath",Qf,J],["number","bitand",Qo,O],["number","bitnot",Jo,J],["number","bitor",Ho,O],["number","bitxor",Ko,O],["number","difference",Lo,O],["number","divide",Go,J],["number","even",Nc,J],["number","float",fc,O],["number","greater",nf,J],["number","integer",oc,O],["number","lesser",tf,J],["number","mod",Xo,J],["number","negate",Wo,J],["number","negative",Oc,J],["number","numeric",uc,O],["number","plus",Co,O],["number","positive",xc,J],["number","quotient",Zo,J],["number","shiftleft",rf,J],["number","shiftright",ef,J],["number","times",zo,O],["number","tofloat",af,J],["number","toint",of,J],["number","zero",Sc,J],["string","explode",ns,J],["string","strcat",Uc,O],["string","string",pc,J],["string","tostring",Qc,J],["string","unicode",Hc,J],["array","array",hc,J],["array","arraycall",co,O],["dictionary","dictionary",bc,J],["dictionary","set.",no,J],["dictionary","set[",no,J],["dictionary","keys",lo,J],["dictionary","defined",so,J],["dictionary","object",yc,J],["local","instances",Xf,J],["local","delete",Vc,O],["local","enclose",Zf,J],["local","namespace",Xc,J],["local","new",_u,J],["local","nonce",Qu,J],["local","nsactive",Gc,J],["local","nscaller",Ha,J],["local","nsrights",Jc,O],["local","symlist",zf,J],["local","weakmap",Ku,J],["host","editget",Ps,J],["host","editset",Ts,J],["host","future",Uu,J],["host","futures",Hu,J],["host","loadstate",Ls,J],["host","milliseconds",Ss,J],["host","mangled",Ns,J],["host","runaverage",js,J],["host","savestate",Cs,J],["host","sprint",xo,J],["host","wait",To,J],["stdio","textstream",Os,J],["stdio","textstreams",xs,J],["stdio","isbreak",gs,J],["stdio","newline",ls,J],["stdio","spaces",ps,J],["stdio","printline",os,O],["stdio","print",fs,O],["stdio","printloc",ss,J],["stdio","printq",cs,O],["external","xapply",mo,J],["external","xcall",bo,O],["external","xget",vo,J],["external","xdefined",so,J],["external","xkeys",lo,J],["external","xlock",go,J],["external","xnew",ko,O],["external","xobject",po,J],["external","xset",ho,J],["debug","breakpoint",Mu,O],["debug","debuglog",Au,O],["debug","jsdebugger",Iu,O],["debug","loglevel",$u,J],["debug","stacktrace",Tu,J],["debug","stacktrap",Eu,J],["debug","symtrace",Pu,V]];function Zs(r,e,n){var t=se[S],i=t[x][r];i||(i=Lu(),go(t[x][r]=i,cr)),i[x][e]||(i[x][e]=n)}function Xs(){var r=se[S];r!==ur&&r[0]===Q&&Cu(r[x])||(go(r=Lu(),cr),se[S]=r);var e,n=Nr("App"),t=n[S];for(t!==ur&&t[0]===Q&&Cu(t[x])||(t=Lu(),n[S]=t),e=0;e<zs.length;++e){var i=zs[e][0],a=zs[e][1],u=zs[e][2],o=zs[e][3],f=(zs[e][4],Nr(a));f!==ur&&f[U]!==ur||(f=$r(a,u,o)),kr(a,sr)||Zs(i,a,f)}r[x].module||(r[x].module=Lu()),se=Nr("Naan"),te=Nr("deref"),ie=Nr("."),Kr=Nr("exception"),re=Nr("escape"),ur=Nr("false"),ne=Nr("`"),ee=Nr("this"),Dr=Nr("undefined"),zr=Nr("null"),Zr=Nr("true"),Xr=Nr("lambda"),ae=Nr("body"),Ie=Nr("call"),oe=Nr("catch"),Qr=Nr("closure"),Gr=Nr("function"),Jr=Nr("function&"),Ur=Nr("let"),Hr=Nr("let&"),ue=Nr("loop"),Vr=Nr("macro"),Yr=Nr("var"),le=Nr("builtin"),ce=Nr("list"),pe=Nr("tuple"),ge=Nr("symbol"),ve=Nr("integer"),de=Nr("float"),he=Nr("numeric"),be=Nr("string"),ye=Nr("array"),$e=Nr("arraycall"),me=Nr("dictionary"),ke=Nr("object"),xe=Nr("namespace"),Oe=Nr("nonce"),Bs=Nr("save"),Ds=Nr("load"),je=Nr("$"),Se=Nr("weakmap"),Me=Nr("xget"),qe=Nr("xset"),Ee=Nr("xcall"),Re=Nr("xapply"),we=Nr("xobject"),Ne=Nr("textstream"),Pe=Nr("space"),Te=Nr("cr"),qu=Nr("breakpoint"),fe=Nr("interrupt")}function Gs(){function r(r,e){_c(pe,Wr(r),Nr(e||r)[U])}function e(r,e){_c(pe,Wr(r),e)}function n(r,e){_c(ge,Wr(r),Nr(e||r)[U])}function t(r,e){_c(be,Wr(r),Nr(e||r)[U])}function i(r,e){_c(ve,Wr(r),Nr(e||r)[U])}function a(r,e){_c(de,Wr(r),Nr(e||r)[U])}function u(r,e){_c(ye,Wr(r),Nr(e||r)[U])}function o(r,e){_c(xe,Wr(r),Nr(e||r)[U])}function f(r,e){_c(xe,Wr(r),e)}r("atom"),r("insert"),r("length"),r("reverse"),r("tostring"),r("tuple"),r("typeof"),e("member",$r("member",function(r,e){return Ac(e,r)},J,!0)),e("toarray",$r("toarray",function(r){return _u(ye,r)},J,!0)),e("within",$r("within",function(r,e){return Ic(e,r)},J,!0)),n("atom"),n("copyproc"),n("copyann"),n("interned"),n("length"),n("namespace"),n("proc","getproc"),n("putproc"),n("symbol"),n("tostring"),n("typeof"),t("append","strcat"),t("atom"),t("interned"),t("length"),t("string"),t("tostring"),t("unicode"),t("typeof"),i("atom"),i("even"),i("integer"),i("negate"),i("negative"),i("numeric"),i("length"),i("positive"),i("tofloat"),i("toint"),i("tostring"),i("typeof"),i("unicode"),i("zero"),a("atom"),a("even"),a("float"),a("negate"),a("negative"),a("numeric"),a("length"),a("positive"),a("tofloat"),a("toint"),a("tostring"),a("typeof"),a("zero"),u("atom"),u("tostring"),u("totuple"),u("typeof"),o("atom"),o("typeof"),f("tostring",$r("tostring",function(r){return r[0]===k?r[j]:ur},J,!0)),f("length",$r("length",function(r){var e;return r[0]===k&&0<=(e=or.indexOf(r))?Ao(or[e][tr].length):ur},J,!0)),f("symbols",$r("symbols",function(r){if(r[0]===k&&0<=(e=or.indexOf(r))){var e=or[e][tr].slice();return e[Ru]=Fu,_r(e)}return ur},J,!0)),f("index",$r("index",function(r){var e;return r[0]===k&&0<=(e=or.indexOf(r))?_u(io(or[e][ir]),ur):ur},J,!0)),f("lookup",$r("lookup",function(r,e){var n,e=rs(e);if(r[0]===k&&0<=(n=or.indexOf(r))){e=or[n][ir][e],e=or[n][tr][e];if(e)return e}return ur},J,!0))}function Js(){for(var r in l)l.hasOwnProperty(r)&&Ar(r,io(l[r]))}function Vs(){P.hasOwnProperty("init-load")&&P["init-load"]()}Gt(),Xs(),Gs(),Js(),this.Process=function(r,e){try{return 0<r.length&&(jo(),ys.SetText(r),e&&ms.WriteString("\r")),Ut()||Jt(Lr(["loop",["catch",[["driver"]],[[["equal","exception","driver"]]],"false"]])),Nt=0,Ht(!1),Ut()}catch(r){return yu(lu,"Naan internal error (101): "+r.toString()),!1}},this.GetOutput=function(){return ms.TakeText()},this.SetInput=function(r,e){ys.WriteString(r),e&&ys.SetEOF()},this.RunOutput=function(){try{return Nt=0,Ht(!1),ms.TakeText()}catch(r){return yu(lu,"Naan internal error (102): "+r.toString()),null}},this.Run=function(){try{return Nt=0,Ht(!1),Ut()}catch(r){return yu(lu,"Naan internal error (103): "+r.toString()),!1}},this.Escape=function(){try{return jo(),ys.ScanReset(),ys.SetText(""),ms.TakeText(),za(Lr(["internal","escape"])),!1}catch(r){return yu(lu,"Naan internal error (104): "+r.toString()),null}},this.Banner=function(){return ms.WriteString("\rNaan © 2018-2022 by Richard C. Zulch\n"),!0},this.StateSave=function(r){r=Ws(r);return"string"==typeof r&&r},this.StateLoad=function(r){r=_s(JSON.parse(r))!==ur;return Vs(),r},this.StateDefault=function(){return Vs(),!0},this.On=function(r,e){P[r]=e},this.Signal=function(){jo()},this.Status=function(r){return ui(r)},this._SetNamespace=function(r,e){var n,t=fr;return"string"==typeof r?dr(Cr(vr(Wr(r)),q(fr))):L(r)?(n=fr[0],fr=r,!e&&fr.indexOf(n)<0&&fr.push(n)):yu(lu,"_SetNamespace: invalid argument: "+r),t},this._AddNamedObject=function(r,e){if("string"!=typeof r||0===r.length||"object"!=typeof e)return!1;e=_r(e);return We(r)[1]=e,!0},this._SetValue=function(r,e){if("string"!=typeof r||0===r.length)return!1;e=e===B?We(r):Ar(r,Br(e));return e!==ur},this._AddSymbolWithTarget=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("string"!=typeof e||0===e.length)return!1;var n=Nr(e);return n===ur&&(n=We(e)),We(r),Ar(r,n)!==ur},this._AddPropertyList=function(r,e){return"string"==typeof r&&0!==r.length&&("object"==typeof e&&qr(r,e)[Y])},this._SetBindingList=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("object"!=typeof e)return!1;e=Rr(Br(e));return e!==ur&&(Er(r,e),!0)},this._CopyBinding=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("string"!=typeof e||0===e.length)return!1;r=Nr(r);return r!==ur&&(Er(e,r[U]),!0)},this._Execute=function(r){if("object"!=typeof r)return!1;r=Br(r);return r!==ur&&oo(Qt(r))},this._Export=function(r,e){if(!se)return!1;if("string"!=typeof e||0===e.length)return!1;var n=Nr(e);return n!==ur&&(Zs(r,e,n),!0)},this._Import=function(r,e,n){if(!se)return!1;if(e===B){var t=se[S][x][r];if(t===B)return!1;for(var i=Object.getOwnPropertyNames(t[x]),a=0;a<i.length;++a)this._Import(r,i[a]);return!0}if("string"!=typeof e||0===e.length)return!1;if(n===B)n=e;else if("string"!=typeof n||0===n.length)return!1;var u,t=fr.indexOf(cr);0<=t&&fr.splice(t,1);try{u=se[S][x][r][x][e]}catch(r){u=!1}return!!u&&(Er(n,u[U]),!0)}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
35
35
 
36
36
  /* Copyright (c) 2017-2022 by Zulch Laboratories, Inc. */
37
37
  !function(xt){xt.NaanChannel=function(t){"use strict";var r,s,a,o,u,n,c=t,i=new(xt.LeemonBigIntegerLib?xt:require("./bigint.js")).LeemonBigIntegerLib,h="",f=!1,d=0,l=!1,g=0,v=10,e=[],T=null,x=!1,S=[],b="\n!@^&*()+-={}[]|\\:;'<>?,./~`%",k="0123456789",m="0123456789abcdefghijklmnopqrstuvwxyz",C="bfnrt",O="\b\f\n\r\t",L=1e3,I=!1,p=new Array("::","++","--","~=","..","->","==","!=","<=",">=","=?","=!","+=","-=","*=","/=","%=","||","&&","^^",">>","<<","**","/.",".*","@[","@*",";;",";>","===","!==","...","..<","<=>");function w(t){e.push(t)}this.Reset=function(){h="",l=f=!1,g=d=0,v=10,e=[],T=null,L=1e3,this.ScanReset()},this.SetHTML=function(t){I=t},this.Radix=function(){return v},this.SetRadix=function(t){var e=v;return v=t,e},this.NSinfix="::",this.IsBreak=function(t){return"\\"!=t&&0<=b.indexOf(t)},this.QuoteString=function(t){for(var e,n='"',i=0;i<t.length;++i){if("\\"==(e=t.substring(i,i+1))||'"'==e)n+="\\";else{if(0<=(r=O.indexOf(e))){n+="\\"+C.substring(r,r+1);continue}if(e.charCodeAt(0)<32){var r=e.charCodeAt(0).toString(16).toLowerCase();0===r.length?r="00":1==r.length&&(r="0"+r),n+="\\u00"+r;continue}}n+=e}return n+'"'},this.QuoteSymbol=function(t){var e=!1,n=!1;if(1<t.length){if(0<=p.indexOf(t))return t;for(var i,r="",s=0;s<t.length;++s)"#"==(i=t.substring(s,s+1))?(n&&(r+="\\"),n=!(e=!0)):e?n=e=!1:(" "==i||"\\"==i||'"'==i||0<=b.indexOf(i))&&(r+="\\",n=!0),r+=i;return r}return"\\"==t.charAt(0)||'"'==t.charAt(0)?"\\"+t.charAt(0):t},this.IntToString=function(t,e,n){if(e)return"0x"+i.bigInt2str(t,16).toLowerCase();n=n||v;e="";i.negative(t)&&(t=i.negate(t),e="-");n=i.bigInt2str(t,n).toLowerCase();return k.indexOf(n.substring(0,1))<0&&(e+="0"),e+n},this.FloatToString=function(t,e){e=t.toString(e);return!isNaN(t)&&isFinite(t)&&e.indexOf(".")<0&&e.indexOf("e")<0?e+".0":e},this.ListQuote=function(t){return"("==t||")"==t||","==t||"`"==t||"."==t?"`"+t:t},this.DottedPairToString=function(t,e){return this.ListQuote(t)+" . "+this.ListQuote(e)},this.ListToString=function(t){for(var e="(",n=0;n<t.length;++n)1<e.length&&(e+=" "),e+=this.ListQuote(t[n]);return e+=")"},this.EOF=function(){return 0===h.length&&f},this.SetEOF=function(){f||(f=!0,c.Signal(this))},this.Full=function(){return L&&h.length>L},this.SetWriteLimit=function(t){L="number"==typeof t?t:1e3},this.WriteString=function(t){var e,n,i=0===h.length;if(I)for(n=0;n<t.length;++n)"\n"===(e=t.substring(n,n+1))?(h+="<br>",d=0,++g):(h+=e,++d);else for(h+=t,n=0;n<t.length;++n)"\n"===(e=t.substring(n,n+1))?(d=0,++g):"\r"===e?d=0:++d;i&&c.Signal(this)},this.TextAvail=function(){return h.length},this.TakeText=function(){var t=h,e=this.Full();return h="",e&&c.Signal(),t},this.SetText=function(t){h=t,x&&c.Signal(this)},this.AddText=function(t){f=!1,h+=t,x&&c.Signal(this)},this.ReadChar=function(){var t;if(0<e.length)t=e.pop();else{if(x=0===h.length)return null;if(t=h.substring(0,1),h=h.substring(1),"\r"==t||"\n"==t){if("\r"==T&&"\n"==t)return T=t,this.ReadChar();d=0,l=!(t="\n"),++g}else!l&&t.trim()&&(l=d),++d}return T=t},this.UnreadChar=function(t){w(t)},this.ReadReady=function(){var t=h.length;return t+=e.length},this.LastChar=function(t){return e.slice(-1)[0]},this.Line=function(){return g},this.Column=function(){return d},this.CommentLoc=function(){return S};this.Save=function(){var t={magic:"NaanIO_1.0"};return t.text=h,t.inputEOF=f,t.column=d,t.lineIndent=l,t.line=g,t.radix=v,t.scanLast=e,t.lastread=T,t.scanState=r,t.scanSkipQuote=s,t.token=a,t.codeString=o,t.nofloat=u,t.commentLoc=S,t.tokenStart=n,t},this.Load=function(t){return t.version!=kMagic?(Reset(),!1):(h=t.text,f=t.inputEOF,d=t.column,l=t.lineIndent,g=t.line,v=t.radix,e=t.scanLast,T=t.lastread,r=sstate.scanState,s=t.scanSkipQuote,a=t.token,o=t.codeString,u=t.nofloat,S=t.commentLoc,n=t.tokenStart,!0)};var R=34,A=39,F=42,y=47,N=92,Q=32,E=13,B=10,H=9,j=117,q=120,M=120,W=46,z=43,D=45,P=101,U=69,_=35,G=0,J=1,K=2,V=3,X=4,Y=5,Z=6,$=7,tt=8,et=9,nt=10,it=11,rt=12,st=13,at=14,ot=15,ut=16,ct=17,ht=18,ft=19,dt=20,lt=21,gt=22,vt=23,Tt=24;this.ScanReset=function(){r=G,o=a="",u=!(e=[])},this.ScanReset(),this.kTTSymbol=1,this.kTTInteger=2,this.kTTHexInteger=3,this.kTTString=4,this.kTTComment=5,this.kTTCommentLine=6,this.kTTFloat=7,this.kTTNewline=8,this.ReadToken=function(){for(var t=null;;){if(r==G&&0===a.length&&(n={line:g,column:d}),null===(e=this.ReadChar())&&0===a.length)return null;if(null===e&&!f)return null;if(null===e||function(t){var e,n,i=t.charCodeAt(0);switch(i==E&&(i=B),r){case G:switch(i){case Q:case H:return u=!1,0<a.length?1:void 0;case B:return u=!1,0===a.length?a="\n":w(t),1;case y:return 0<a.length?(w(t),1):(r=K,void(a=t));case N:return void(r=Z);case R:return r=et,void(s=l);case A:return void(r=st);case _:return a+=t,void(r=tt);case D:if(u&&0===a.length)return a=t,void(r=Tt)}return 0<=b.indexOf(t)?0===a.length?(a=t,void(r=J)):(w(t),1):(0===a.length&&0<=k.indexOf(t)&&(r=ct),void(a+=t));case K:if(i==y)return r=Y,a+=t,void(S=[g,d-2]);if(i==F)return r=V,a+=t,void(S=[g,d-2]);r=J;case J:return 0<=p.indexOf(a+t)?void(a+=t):(w(t),1);case V:return a+=t,void(i==F&&(r=X));case X:return(a+=t,i==y)?1:void(i!=F&&(r=V));case Y:return i==B?1:void(a+=t);case Z:return i==B?void(r=G):0<=(e=C.indexOf(t))?(a+=O.substring(e,e+1),void(r=G)):(a+=t,void(r=i==_?tt:$));case $:if(i==N)r=Z;else{if(0<=b.indexOf(t)||i==Q||i==H||i==B)return w(t),r=G,1;a+=t,r=G}return;case tt:return a+=t,void(r=0<=b.indexOf(t)?$:G);case Tt:if("0"==t)return r=G,w(t),1;if(0<=k.indexOf(t))r=ct;else{if(!(0<=p.indexOf(a+t)))return r=G,w(t),1;r=J}return void(a+=t);case et:return i==N?void(r=nt):i==R||(0===d&&i===B||!(d<=s)||t.trim())&&void(a+=t);case nt:return i==q?(r=it,void(o="")):i==j?(r=rt,void(o="")):(0<=(e=C.indexOf(t))?a+=O.substring(e,e+1):a+=t,void(r=et));case it:return void(2<=(o+=t).length&&(a+=String.fromCharCode(parseInt(o,16)),r=et));case rt:return void(4<=(o+=t).length&&(a+=String.fromCharCode(parseInt(o,16)),r=et));case st:return i==N?void(r=at):i==A||void(a+=t);case at:return i==q?(r=ot,void(o="")):i==j?(r=ut,void(o="")):(0<=(e=C.indexOf(t))?a+=O.substring(e,e+1):a+=t,void(r=st));case ot:return void(2<=(o+=t).length&&(a+=String.fromCharCode(parseInt(o,16)),r=st));case ut:return void(4<=(o+=t).length&&(a+=String.fromCharCode(parseInt(o,16)),r=st));case ct:if(k.indexOf(t)<0)if(i==W){if(u)return w(t),1;r=dt}else if(i==P||i==U)r=gt;else if(0<=(n=m.indexOf(t.toLowerCase()))&&n<v)r=ht;else{if("0"!=a||i!=M)return w(t),1;r=ft}return void(a+=t);case ht:return(n=m.indexOf(t.toLowerCase()))<0||v<=n?(w(t),1):void(a+=t);case ft:return(n=m.indexOf(t.toLowerCase()))<0||16<=n?(w(t),1):void(a+=t);case dt:return k.indexOf(t)<0?(r=ct,w(t),w("."),1):(a+=t,void(r=lt));case lt:if(k.indexOf(t)<0){if(i!=P&&i!=U)return w(t),1;r=gt}return void(a+=t);case gt:return(r=vt,k.indexOf(t)<0&&i!=z&&i!=D)?(w(t),1):void(a+=t);case vt:return k.indexOf(t)<0?(w(t),1):void(a+=t)}}(e)){switch(r){case J:case G:case K:u="."==a,t="\n"==a?this.kTTNewline:this.kTTSymbol;break;case ct:case ht:a=a.charCodeAt(0)==D?i.negate(i.str2bigInt(a.substring(1),v,1)):i.str2bigInt(a,v,1),t=this.kTTInteger;break;case ft:a=i.str2bigInt(a.substring(2),16,1),t=this.kTTHexInteger;break;case et:case st:t=this.kTTString;break;case V:if(!f)return null;t=!1;break;case X:t=this.kTTComment;break;case Y:t=this.kTTCommentLine;break;case dt:case lt:case gt:case vt:t=this.kTTFloat;break;default:t=!1}r=G;var e={token:a,type:t,loc:n};return a="",e}}}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
38
38
 
39
39
  /* Copyright (c) 2017-2022 by Zulch Laboratories, Inc. */
40
- !function(e){e.BootLingo=function(e){"use strict";var t=e._SetNamespace("Lib");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._SetValue("echo",[]),e._SetValue("err",[]),e._SetValue("rdsDriver"),e._SetBindingList("^",["macro","^",["ex1","ex2"],["list","^","ex1","ex2"]]),e._SetBindingList("!",["macro","!",["ex1"],["list","!","ex1"]]),e._SetBindingList("~",["macro","~",["ex1"],["list","~","ex1"]]),e._SetBindingList("~=",["macro","~=",["ex1","ex2"],["list","~=","ex1","ex2"]]),e._SetBindingList("tr",["macro","tr",["ex1"],["list","tr","ex1"]]),e._SetBindingList("matdiv",["macro","matdiv",["ex1","ex2"],["list","matdiv","ex1","ex2"]]),e._SetBindingList("#[",["macro","#[",["ex1","ex2"],["list","#[","ex1","ex2"]]),e._SetBindingList("[",["macro","[",["ex1","ex2"],["list","[","ex1","ex2"]]),e._SetBindingList("dereflist",["macro","dereflist","x",["cons","dereflist","x"]]),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("\\.*",["function","\\.*",["expr"],["keys","expr"]]),e._SetBindingList("@",["macro","@",["sym","write"],["=","sym",["eval","sym"]],[[["eval","write"],["put","sym"]]],["cdr","sym"]]),e._SetBindingList("@*",["function","@*",["sym"],["keys",["cdr","sym"]]]),e._SetBindingList("!==",["function","!==",["ex1","ex2"],["not",["eq","ex1","ex2"]]]),e._SetBindingList("<=>",["function","<=>",["ex1","ex2"],[["<","ex1","ex2"],-1],[[">","ex1","ex2"],1],0]),e._SetBindingList("\\..",["macro","\\..",["ex1","ex2"],["list",["`","\\.."],"ex1","ex2"]]),e._SetBindingList("\\..<",["macro","\\..<",["ex1","ex2"],["list",["`","\\..<"],"ex1","ex2"]]),e._SetBindingList("append",["function","append","lists",["function","append1",["items","result"],[["atom","items"],"result"],["cons",["car","items"],["append1",["cdr","items"],"result"]]],["function","append2",["lists","result"],[["atom","lists"],"result"],[["atom",["car","lists"]],["cons",["car","lists"],["append2",["cdr","lists"],"result"]]],["append1",["car","lists"],["append2",["cdr","lists"],"result"]]],["append2","lists"]]),e._SetBindingList("prepad",["function","prepad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat",[".","padstr","repeat",["length"]],"value"],"slice",[["-","length"]]]]),e._SetBindingList("map",["function","map",["targex","func","false","result","item","keylist"],[["array","targex"],["arraycall","targex","map","func"]],[["or",["dictionary","targex"],["xobject","targex"]],["=","result",["new","dictionary"]],["=","keylist",["keys","targex"]],["for",["let","lambda",["iter"],["=","iter",["iterate","keylist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["xset","result","item",["call","func",["deref","targex","item"],"item","targex"]]]]],"result"],[["atom","targex"],"false"],["for",["let","lambda",["iter"],["=","iter",["iterate","targex",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","result",["cons",["call","func","item",["length","result"],"targex"],"result"]]]]],["reverse","result"]]),e._SetBindingList("iterate",["function","iterate",["target","varsym","false","iterdict","keysym"],[[["not",["||",["symbol","varsym"],["tuple","varsym"]]],["throw",["list","internal",["strcat","$iteration variable invalid: ","varsym"]]]]],["=","iterdict",{dictionary:{$target:"target",$final:"final_value"}}],["function","final_value",["dict"],"dict"],[[["tuple","target"],["=","keysym",["car","target"]],[[["&&",["symbol","keysym"],["deref",["@","keysym"],["`","\\.iterate"]]],["return",["call",["deref",["@","target"],["`","\\.iterate"]],"target","varsym"]]],[["&&",["symbol","keysym"],["deref",["@","iterate"],"keysym"]],["return",["call",["deref",["@","iterate"],"keysym"],"target","varsym"]]]],["set.","iterdict",["`","traverse"],"target"],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",["length","target"],1]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"tuple_next_value"]],["set.","iterdict",["`","next"],"tuple_next"]],["function","tuple_next_value",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["car",[".","dict","traverse"]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"],["function","tuple_next",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["list",["car",[".","dict","traverse"]],["preadjust",[".","dict","index"],"+",1]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"]],[["||",["array","target"],["&&",["xobject","target"],["not",["xkeys","target"]]]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",[".","target","length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"array_next_value"]],["set.","iterdict",["`","next"],"array_next"]],["function","array_next_value",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","target"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","array_next",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["list",["deref",[".","dict","target"],[".","dict","index"]],[".","dict","index"]]],"false"]],[["&&",["object","target"],[".","target","\\.iterate"]],["return",[".","target","\\.iterate",["target","varsym"]]]],[["||",["dictionary","target"],["object","target"],["xobject","target"]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","keys"],[".",["keys","target"],"toarray"]],["set.","iterdict",["`","last"],["-",[".",[".","iterdict","keys"],"length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"dict_next_key"]],["set.","iterdict",["`","next"],"dict_next"]],["function","dict_next_key",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","keys"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","dict_next",["dict","false","index"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["=","key",["deref",[".","dict","keys"],["=","index",["preadjust",[".","dict","index"],"+",1]]]],["set.","dict",["`","value"],["list","key",["deref",[".","dict","target"],"key"],"index"]],"false"]],[["not","target"],["set.","iterdict",["`","last"],["set.","iterdict",["`","index"],-1]],["set.","iterdict",["`","next"],"empty_next"],["set.","dict",["`","done"],"true"],["function","empty_next",["dict"],"true"]],["throw",["list","internal",["strcat","$don't know how to iterate ",["typeof","target"]]]]],"iterdict"]),e._SetBindingList("defproc",["macro","defproc","exlist",["call",["function","lambda",["false","procname"],["=","procname",["caadr","exlist"]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define ",["car","exlist"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","exlist",["enclose","exlist"]],[[["&&",["!=",["getproc","procname"],"exlist"],["getproc","procname"]],["printline","$ *** redefined: ","procname"]]],["putproc","procname","exlist"],"procname"]]]),e._SetBindingList("defprop",["macro","defprop",["ex1","ex2","ex3","false","fbind","procname"],[["member",["car","ex3"],["`",["function","function&","macro","closure","let","let&"]]],["=","procname",["compress",["list","ex1","ex2"]]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define property ",["car","ex3"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","fbind",["enclose",["cons",["car","ex3"],["cons","procname",["cddr","ex3"]]]]],[[["&&",["get","ex1","ex2"],["!=",["get","ex1","ex2"],"fbind"]],["print","$ *** redefined: "],["printline","ex1","space","ex2"]]],["putproc","procname","fbind"],["put","ex1","ex2","procname"],"ex1"],[["==",["get","ex1","ex2"],"ex3"],"ex1"],[[["get","ex1","ex2"],["print","$ *** redefined: "],["printline","ex1","space","ex2"]]],["put","ex1","ex2","ex3"],"ex1"]),e._SetBindingList("sleep",["closure","sleep",["msec"],[".",["future",["function","sleep","false","true"],"msec"],"wait","false"]]),e._SetBindingList("await",["closure","await",["promise","false","pending"],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("asyncArray",["closure","asyncArray",["elements","maxActive","worker","false","pending"],["=","pending",["new","nonce"]],["set.","pending",["`","active"],0],["set.","pending",["`","index"],0],["closure","processOne",["index","false","entry"],["preadjust",[".","pending","active"],"+",1],["=","entry",["deref","elements","index"]],["future",["function","coProcess","false",["catch",[["worker","entry","index","elements"]],"false",[["preadjust",[".","pending","active"],"-",1],["doMore"]]]],0]],["function","doMore","false",[["&&",["==",[".","pending","active"],0],[">=",[".","pending","index"],[".","elements","length"]]],[".","pending","signal","false"]],["while","false",[["not",["&&",["<",[".","pending","active"],"maxActive"],["<",[".","pending","index"],[".","elements","length"]]]]],["processOne",["postadjust",[".","pending","index"],"+",1]]]],["doMore"],"pending"]),e._SetBindingList("syncAdapter",["function","syncAdapter","args",["call",["closure","syncWaiter",["proc","arglist","false","pending"],["=","pending",["new","nonce"]],["apply","proc",["reverse",["reverse","arglist"],["list",["function","lambda",["error","data"],[".","pending","signal",[["list","error","data"]]]]]]],[".","pending","wait",["proc"]]],["pop","args"],"args"]]),e._SetBindingList("asyncResult",["closure","asyncResult","args",[".",["future",["function","asyncResultF","false",["apply",["pop","args"],"args"]]],"run","false"]]),e._SetBindingList("jsInstanceOf",["function","jsInstanceOf",["item","target"],[["xobject","item","target"],["loop","false",[[["not","item"],"false",["break"]],[["eq","item","target"],["break"]],["=","item",[".",[".","js","o"],"getPrototypeOf",["item"]]]]]]]),e._SetBindingList("jsTypedArray",["function","jsTypedArray",["item"],[[["not",["xobject","jsTypedArrayType"]],[[".","js","w"],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","w"],"Uint8Array"]]]]],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","g"],"Uint8Array"]]]]]],["||",["jsInstanceOf","item","jsTypedArrayType"],["jsInstanceOf",[".","item","constructor"],"jsTypedArrayType"]]]),e._SetBindingList("makeActivator",["closure","makeActivator",["nslist","false","checkns","targns"],["=","checkns",["nscaller"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]],["throw",[".","$activate ","concat",[[".","nslist","tostring"],"$ needs ",[".","checkns","tostring"],"$ not ",[".",["nscaller"],"tostring"]]]]],"targns"]]),e._SetBindingList("dialect",["function","dialect",["id"],[["identity","id"],[[["==","id",0],["=","id",[".",["dialect"],0]]]],[".",[".",[".","module","exports"],"Registry"],"findName",["id"]]],[".",[".",[".","module","exports"],"Registry"],"dialects","false"]]),e._SetBindingList("RuntimeOperators",["function","RuntimeOperators","false",[".",[".","module","exports"],"operators"]]),e._AddPropertyList("RuntimeLibInit",[["$.lingoInit","true"]]),e._SetBindingList("RuntimeLibInit",["function","RuntimeLibInit",["modname","false","manifest","operlist","runtimelib"],["=","manifest",["`",["=","+","-","*","/","/.","<",">","&&","and","||","or","^","!","~","~=","tr","matdiv","`","#[","[","dereflist","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","=?","=!","\\..","\\..<","\\...","append","prepad","map","iterate","defproc","defprop","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect","RuntimeOperators","RuntimeLibInit"]]],["=","operlist",["`",["=","+","-","*","/","/.","<",">","&&","and","||","or","^","!","~","~=","tr","matdiv","`","#[","[","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","=?","=!","\\..","\\..<"]]],["=","runtimelib",["`",["dereflist","prepad","map","iterate","defproc","defprop","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect"]]],["function","nsCopyproc",["sym","proc"],[["nsrights","sym"],["copyproc","sym","proc"]],[["!=",[".","sym","proc"],"proc"],["debuglog","$no rights to set sym from proc","sym","proc"]]],["nsCopyproc",["`","="],"setq"],["nsCopyproc",["`","=?"],"setq"],["nsCopyproc",["`","=!"],"setq"],["nsCopyproc",["`","+"],"plus"],["nsCopyproc",["`","-"],"difference"],["nsCopyproc",["`","*"],"times"],["nsCopyproc",["`","/"],"quotient"],["nsCopyproc",["`","/."],"quotient"],["nsCopyproc",["`","<"],"lesser"],["nsCopyproc",["`",">"],"greater"],["nsCopyproc",["`","&&"],["`","and"]],["nsCopyproc",["`","||"],["`","or"]],["nsCopyproc",["`","while"],["`","loop"]],["nsCopyproc",["`","for"],"call"],["nsCopyproc",["`","=="],"equal"],["nsCopyproc",["`","==="],["`","eq"]],["sudo",["set[",["@","tuple","true"],["`","append"],"append"]],["sudo",["set[",["@","tuple","true"],["`","map"],"map"]],["sudo",["set[",["@","array","true"],["`","map"],"map"]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$RuntimeLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","append"],"append"],["set.",[".","modobj","exports"],["`","prepad"],"prepad"],["set.",[".","modobj","exports"],["`","map"],"map"],["set.",[".","modobj","exports"],["`","iterate"],"iterate"],["set.",[".","modobj","exports"],["`","operators"],[".",[".","Naan","module"],"export",["operlist"]]],["set.",[".","modobj","exports"],["`","runtimelib"],[".",[".","Naan","module"],"export",["runtimelib"]]],["sudo",["set.","Naan",["`","runtimelib"],[".",[".","modobj","exports"],"runtimelib"]]]]]]]),e._Execute(["RuntimeLibInit","$Lib"]),e._SetBindingList("defproc",["macro","defproc","exlist",["call",["function","lambda",["false","procname"],["=","procname",["caadr","exlist"]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define ",["car","exlist"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","exlist",["enclose","exlist"]],[[["&&",["!=",["getproc","procname"],"exlist"],["getproc","procname"]],["printline","$ ==> redefined: ","procname"]]],["putproc","procname","exlist"],"procname"]]]),e._SetBindingList("defprop",["macro","defprop",["ex1","ex2","ex3","false","fbind","procname"],[["member",["car","ex3"],["`",["function","function&","macro","closure","let","let&"]]],["=","procname",["compress",["list","ex1","ex2"]]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define property ",["car","ex3"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","fbind",["enclose",["cons",["car","ex3"],["cons","procname",["cddr","ex3"]]]]],[[["&&",["get","ex1","ex2"],["!=",["get","ex1","ex2"],"fbind"]],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["putproc","procname","fbind"],["put","ex1","ex2","procname"],"ex1"],[["==",["get","ex1","ex2"],"ex3"],"ex1"],[[["get","ex1","ex2"],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["put","ex1","ex2","ex3"],"ex1"]),e._SetBindingList("DefineLanguage",["closure","DefineLanguage",["langname","grammar","parser","unparser"],["closure","dialect",["name","operators","enterDNS","false","dobj"],["=","dobj",["new","object","this"]],["set.","dobj",["`","ns"],[".",["nsactive"],0]],["set.","dobj",["`","name"],"name"],["set.","dobj",["`","grammar"],["new","grammar"]],["set.","dobj",["`","operators"],"operators"],["set.","dobj",["`","exunparse"],{dictionary:{}}],["set.","dobj",["`","parser"],"parser"],["set.","dobj",["`","unparser"],"unparser"],["set.","dobj",["`","parse"],["function","parse",["source"],[".","dobj","parser",["source",[".","dobj","grammar"],[".","dobj","operators"]]]]],["set.","dobj",["`","parseErrorString"],["function","parseErrorString",["error"],["langParseErrorString","error"]]],["set.","dobj",["`","unparse"],["function","unparse",["expr","options"],[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]]]],["set.","dobj",["`","print"],["function","print",["expr","options"],[".",[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]],"string","false"]]],["set.","dobj",["`","defhook"],["function","defhook",["hook","false","returner","newsym"],["=","returner",["makeActivator"]],["enterDNS"],["=","newsym",["compress","hook"]],["copyproc","newsym","hook"],["returner"],"newsym"]],["set.","dobj",["`","defunparse"],["function","defunparse",["sym","proc"],["set[",[".","dobj","exunparse"],"sym","proc"]]],["set.","dobj",["`","redefine"],["function","redefine",["sym","proc","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],[[["tuple","proc"],["putproc","sym","proc"]],["copyproc","sym","proc"]],["returner"],"sym"]],["set.","dobj",["`","defatt"],["function","defatt",["sym","key","value","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],["put","sym","key","value"],["returner"],"sym"]],["set.","dobj",["`","defsym"],["function","defsym",["syms","false","cursyms"],["=","returner",["makeActivator"]],["enterDNS"],[[["atom","syms"],["=","cursyms",["compress","syms"]]],["while","false",[["not",["not",["atom","syms"]]]],["push",["compress",["pop","syms"]],"cursyms"]],["=","cursyms",["reverse","cursyms"]]],["returner"],"cursyms"]],["set.","dobj",["`","require"],["function","drequire",["path","reload","false","returner","result"],["=","returner",["makeActivator"]],["enterDNS"],["=","result",["require","path","options","dobj"]],["returner"],"result"]],["set.","dobj",["`","info"],["function","info","false",{dictionary:{$name:[".","dobj","name"],$grammar:[".","dobj","grammar"],$operators:[".","dobj","operators"],$parser:[".","dobj","parser"],$unparser:[".","dobj","unparser"],$namespace:[".","dobj","ns"]}}]],["set.","dobj",["`","destroy"],["function","destroy","false",[[["not",[".","dobj","module"]],["return","false"]]],[".",[".",[".","module","exports"],"Registry"],"unregister",["dobj"]],[".",[".","dobj","module"],"destroy","false"],["set.","dobj",["`","module"],"false"],"true"]],["set.","dobj",["`","derive"],["function","derive",["diname","operators","false","newdialect"],[[["not","operators"],["=","operators",[".","dobj","operators"]]]],["=","newdialect",["initialize",[".",[".","dobj","name"],"concat",["$_","diname"]],"operators"]],["set.","newdialect",["`","parent"],"dobj"],"newdialect"]],"dobj"],["function","initialize",["langname","operators","false","newdialect","dialsym"],[".",[".","Naan","module"],"build",[[".","$Lang_","concat",["langname"]],"$RuntimeLib",["function","lambda",["modobj","compobj","false","locops"],[".",[".","Naan","module"],"letimport",["operators"]],["=","dialsym",["compress","$Dialect"]],["=","locops",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","operators",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","locops","key",["compress","key"]]]]],["set[","locops","dialsym","dialsym"],["=","newdialect",["dialect","langname","locops",["makeActivator"]]],["set.","newdialect",["`","module"],"modobj"],["call",["closure","lambda",["dialect"],["putproc","dialsym",["function","lambda","false","dialect"]]],"newdialect"],["assign","dialsym","newdialect"]]]],[".",[".",[".","module","exports"],"Registry"],"register",["langname","newdialect"]],"newdialect"],["initialize","langname",["RuntimeOperators"]]]),e._SetBindingList("Registry",["closure","Registry",["false","registry"],["=","registry",["new","object","this"]],["set.","registry",["`","languages"],{array:[]}],["set.","registry",["`","register"],["function","register",["name","dobj","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["set.","lang",["`","dialect"],"dobj"],["return"]]]]]],[".",[".","registry","languages"],"push",[{dictionary:{$name:"name",$dialect:"dobj"}}]]]],["set.","registry",["`","unregister"],["function","unregister",["dobj"],["set.","registry",["`","languages"],[".",[".","registry","languages"],"filter",[["function","lambda",["item"],["!==",[".","item","dialect"],"dobj"]]]]],"true"]],["set.","registry",["`","findName"],["function","findName",["name","false","lang"],["=","name",["tostring","name"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","findNamespace"],["function","findNamespace",["ns","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["===",[".",[".","lang","dialect"],"ns"],"ns"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","dialects"],["function","dialects","false",[".",[".",[".","registry","languages"],"map",[["function","lambda",["item"],[".","item","name"]]]],"totuple"]]],"registry"]),e._SetBindingList("ParsEnvironment",["closure","ParsEnvironment",["dialect","envName","false","penv","gohome"],[[["not","envName"],["=","envName","$Parsenv"]]],["=","penv",["new","object","this"]],["=","gohome",["makeActivator"]],[[["||",["not",[".","dialect","parser"]],["not",[".","dialect","unparser"]]],["return","false"]]],["set.","penv",["`","ns"],["new","namespace","envName"]],[[["not",[".","penv","ns"]],["return","false"]]],["nsactive",["cons",[".","penv","ns"],[".",["nsactive"],-2]]],["set.","penv",["`","gons"],["makeActivator"]],["gohome"],["function","evalgo","false",[".","penv","gons","false"]],["function","evalhome","false",["gohome"]],["set.","penv",["`","eval"],["closure","evalf",["expr","false","result"],["evalgo"],["catch",[["=","result",["eval","expr"]]],[[["identity","true"],["=","result","exception"]]],[["evalhome"]]],"result"]],["set.","penv",["`","evalq"],["macro","evalq",["expr"],["evalf","expr"]]],["set.","penv",["`","parse"],["function","parse",["text","options","false","output","source","xchan","errors","error","expr","savex","errtext","row","lastrow","outext"],["=","output",{dictionary:{$errors:{array:[]},$annotations:{array:[]},$text:{array:[]},$exprs:{array:[]},$results:{array:[]}}}],["=","source",["new","textstream","text",["`","string"]]],["=","xchan",["textstreams",["list","source","source"]]],["catch",[[".","penv","gons","false"],["loop","false",["catch",[["=","savex",[".",["`","exception"],"proc"]],["sudo",["putproc",["`","exception"],"false"]],["sudo",["set.",[".","Naan","module"],["`","require"],"false"]],["=",["errors","expr"],[".","dialect","parse",["source"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","errors",["`","error"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","error",[".","iter","$value"]],["=","errtext",["langParseErrorString","error"]],["=","row",[".",[".","error","at"],0]],[[["!=","row","lastrow"],[".",[".","output","$annotations"],"push",[{dictionary:{$row:"row",$column:[".",[".","error","at"],1],$text:"errtext",$type:"$error"}}]],["=","lastrow","row"]]],[".",[".","output","errors"],"push",["errtext"]]]]],[[["identity","expr"],[".",[".","output","exprs"],"push",["expr"]],["=","expr",["call",["function","lambda","false",["evalactive","expr"]]]],[".",[".","output","results"],"push",["expr"]],[[".","options","pretty"],["set.","output",["`","pretty"],{array:[]}],[["==",[".",[".","source","tokenlast","false"],"atom"],["`",";>"]],[".",[".","output","pretty"],"push",[["tostring","expr",{dictionary:{$quote:"true"}}]]]],[["!=",[".",[".","source","tokenlast","false"],"atom"],["`",";;"]],[".",[".","output","pretty"],"push",[[".","dialect","print",["expr"]]]]]]]]],"false",[["sudo",["putproc",["`","exception"],"savex"]]]]]],[[["identity","true"],[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["and",["==",["tostring",["car","exception"]],"$internal"],["string",["second","exception"]]],[".",[".","output","errors"],"push",[["second","exception"]]]],[["ErrorObject","exception"],[".",[".","output","errors"],"push",[[".","$exception: ","concat",[["ErrorString","exception"]]]]]],[".",[".","output","errors"],"push",[[".","$exception: ","concat",["exception"]]]]]],[["gohome"],["textstreams","xchan"],["=","outext",[".",[".","source","taketext","false"],"trim","false"]],[[">",[".","outext","length"],0],["set.","output",["`","text"],["new",[".","outext","split",["$\n"]]]]]]],"output"]],["set.","penv",["`","unparse"],["function","unparse",["false","options","text","sym","didprop","key"],["=","options",{dictionary:{$wrapMaxCol:240}}],["=","text","$"],["for",["let","lambda",["iter"],["=","iter",["iterate",["symlist",[".","penv","ns"]],["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["not",["eq","sym",["car","sym"]]],["=","text",[".","text","concat",["sym","$ = ",["car","sym"],"$;;\n\n"]]]]],["=","didprop","false"],["for",["let","lambda",["iter"],["=","iter",["iterate",["@*","sym"],["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["!=",[".","key","charAt",[0]],"$."],["=","didprop","true"],["=","text",[".","text","concat",["sym","$@","key","$ = ",["deref",["@","sym"],"key"],"$;;\n"]]]]]]]],[[["identity","didprop"],["=","text",[".","text","concat",["$\n"]]]]],[[["eq",[".",[".",[".","sym","proc"],1],"namespace"],[".","penv","ns"]],["=","text",[".","text","concat",[[".","dialect","print",[[".","sym","proc"],"options"]],"$;\n\n"]]]]]]]],"text"]],["set.","penv",["`","destroy"],["function","destroy","false",["set.","penv",["`","ns"],["delete",[".","penv","ns"]]]]],"penv"]),e._AddPropertyList("LanguagesInit",[["$.lingoInit","true"]]),e._SetBindingList("LanguagesInit",["function","LanguagesInit",["false","manifest"],["=","manifest",["`",["defproc","defprop","DefineLanguage","Registry","ParsEnvironment","LanguagesInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Languages",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DefineLanguage"],"DefineLanguage"],["set.",[".","modobj","exports"],["`","ParsEnvironment"],"ParsEnvironment"],["set.",[".","modobj","exports"],["`","Registry"],["Registry"]]]]]]),e._Execute(["LanguagesInit"]),e._SetBindingList("langParser",["function&","langParser",["source","lang","operators","false","result"],["catch",[["=","langErrors",{array:[]}],["=","result",["langParse1",["tokenread"],0]],[[["==",[".","langErrors","length"],0],["=","result",["langStrip","result","operators"]]]],[[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[["!=",[".","langErrors","length"],0],[".","source","comments","false"],["while","false",[["not",["not",["atTerminator"]]]],["tokenread"]]]],[[["!=",[".","langErrors","length"],0]]],"false"],[["!=",[".","langErrors","length"],0],["list","langErrors"]],["list","false","result"]]),e._SetBindingList("langParseErrorString",["function","langParseErrorString",["error","false","output"],[[[".","error","memo"],["=","output",[".","error","memo"]]],["=","output","$parse error"]],[[[".","error","at"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","at"],0],1],"$, ",["+",[".",[".","error","at"],1],1],"$)"]]]]],[[[".","error","found"],["=","output",[".","output","concat",["$ found ",[".","error","found"]]]]]],[[[".","error","expected"],["=","output",[".","output","concat",["$ expected ",[".","error","expected"]]]]]],[[["||",[".","error","start"],[".","error","startat"]],["=","output",[".","output","concat",["$ starting"]]],[[["&&",[".","error","start"],["!=",[".","error","start"],"$\n"]],["=","output",[".","output","concat",["$ with ",[".","error","start"]]]]]],[[".","error","startat"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","startat"],0],1],"$, ",["+",[".",[".","error","startat"],1],1],"$)"]]]]]],[".","output","replace",[["RegExp","$\n","$g"],"$␍"]]]),e._SetBindingList("tokenread",["function","tokenread","false",["=","tokenlast",[".","source","tokenread","false"]]]),e._SetBindingList("tokenpush",["function","tokenpush",["token"],["=","tokenlast",[".","source","tokenpush",["token"]]]]),e._SetBindingList("tokenmatch",["function","tokenmatch",["pattern","false","result"],["=","result",[".","source","tokenmatch",["pattern"]]],["=","tokenlast",[".","source","tokenlast","false"]],"result"]),e._SetBindingList("tokenpass",["function","tokenpass",["pattern"],["=","tokenlast",[".","source","tokenpass",["pattern"]]]]),e._SetBindingList("passNewline",["function","passNewline",["testeof"],["=","tokenlast",[".","source","tokenpass",["cr","testeof"]]]]),e._SetBindingList("atTerminator",["function","atTerminator","false",["tokenmatch",["`",[";",";;",";>"]]]]),e._SetBindingList("atDelimiter",["function","atDelimiter","false",["tokenmatch",["`",[";",";;",";>",")",",","}","]"]]]]),e._SetBindingList("langPassSeparator",["function","langPassSeparator","false",["=","tokenlast",[".","source","tokenpass",[["list","cr","comma"]]]]]),e._SetBindingList("langAtSeparator",["function","langAtSeparator","false",["or",["==",[".","tokenlast","atom"],"cr"],["==",[".","tokenlast","atom"],"comma"]]]),e._SetBindingList("langExprLoc",["function","langExprLoc",["expr"],[["dictionary","expr"],[".","expr","loc"]],[["atom","expr"],"false"],[["langExprLoc",["car","expr"]]],["langExprLoc",["cdr","expr"]]]),e._SetBindingList("langConsSym",["function","langConsSym",["sym","expr","exlist"],[[["tuple","sym"],["debuglog","$langConsSym warning - non-atomic token","sym"]]],["cons",{dictionary:{$atom:"sym",$loc:["langExprLoc","expr"]}},"exlist"]]),e._SetBindingList("langEnlistSym",["function","langEnlistSym","exlist",[[["tuple",["car","exlist"]],["debuglog","$langEnlistSym warning - non-atomic token",["car","exlist"]]]],["cons",{dictionary:{$atom:["car","exlist"],$loc:["langExprLoc",["second","exlist"]]}},["cddr","exlist"]]]),e._SetBindingList("langSyntax",["function","langSyntax",["expr","startoken","dict"],["=","dict",["new","dict"]],[[["identity","expr"],["set.","dict",["`","at"],["langExprLoc","expr"]],[["dictionary","expr"],["set.","dict",["`","found"],[".","expr","atom"]]]]],[[["identity","startoken"],["set.","dict",["`","start"],[".","startoken","atom"]],["set.","dict",["`","startat"],[".","startoken","loc"]]]],[".","langErrors","push",["dict"]],"false"]),e._SetBindingList("langDebuglog",["function","langDebuglog","args",["function","convlist",["expr"],[["defined","expr","atom"],[".","expr","atom"]],[["atom","expr"],"expr"],["cons",["convlist",["car","expr"]],["convlist",["cdr","expr"]]]],["call",["function","lambda",["args","false","arg","exlist"],["loop","false",[["empty","args"]],["=","arg",["pop","args"]],[[["eq","arg","`"],["push",["pop","args"],"exlist"]],["push",["convlist","arg"],"exlist"]]],["apply",[".",[".","Naan","debug"],"debuglog"],["reverse","exlist"]]],"args"]]),e._SetBindingList("langCleanup",["function","langCleanup",["tree","false","blocknest","inloop"],["function","debugCleanup","args",[["identity","false"],["apply","langDebuglog","args"]]],["function","inbody",["xbody"],[["atom","xbody"],"xbody"],["debugCleanup","$inbody:","xbody"],[[["and","inloop",["<=","blocknest",1]]],[["and",["not",["atom",["car","xbody"]]],["not",["atom",["caar","xbody"]]],["not",["atom",["caaar","xbody"]]]],["debugCleanup","$testing hoist in body:","xbody"],["=","xbody",["hoist","xbody"]]]],["cons",["inbodyitem",["car","xbody"]],["inbody",["cdr","xbody"]]]],["function","inbodyitem",["expr","false","sym"],["debugCleanup","$inbodyitem:","expr"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inevalist",["expr"],[["atom","expr"],"expr"],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inquote",["expr"],[["atom","expr"],"expr"],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function&","inloop",["pbody","blocknest","inloop"],["debugCleanup","$inloop:","pbody","blocknest","inloop"],["=","blocknest",0],["=","inloop","true"],["cons",["car","pbody"],["second","pbody"],["inbody",["cddr","pbody"]]]],["function&","inproc",["fbind","blocknest"],["debugCleanup","$inproc:","fbind","blocknest"],["=","blocknest",0],["cons",["car","fbind"],["cons",["second","fbind"],["cons",["inquote",["third","fbind"]],["inbody",["cdddr","fbind"]]]]]],["function","inconditem",["expr"],["debugCleanup","$inconditem:","expr"],[["atom","expr"],"expr"],["cons",["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]]],["function&","incond",["expr","blocknest"],["debugCleanup","$incond:","expr"],["cons",["car","expr"],["inconditem",["cdr","expr"]]]],["function","incatch",["expr"],["debugCleanup","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["inconditem",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym"],["debugCleanup","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==","sym",["`","loop"]],["inloop","expr"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody","expr"]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["debugCleanup","$inquote:","expr"],["inquote","expr"]],["cons",["car","expr"],["inevalist",["cdr","expr"]]]],["function","inwhen",["expr","false","nexpr"],["debugCleanup","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugCleanup","$inwhen block","blocknest"],["=","nexpr",["hoist","nexpr"]],["cons",["incall",["car","expr"]],["inblock","nexpr","blocknest"]]],["cons",["incall",["car","expr"]],["hoist",["delbreak",["cdr","expr"],"blocknest"]]]],["function&","delbreak",["expr","blocknest"],["debugCleanup","$delbreak:","expr","blocknest"],[["atom","expr"],"expr"],[[["&&",["tuple",["car","expr"]],["tuple",["caar","expr"]],["tuple",["caaar","expr"]]],["preadjust","blocknest","+",1],["debugCleanup","$delbreak block:","blocknest"]]],["=","expr",["hoist","expr"]],[["and",["==",[".",["caar","expr"],"atom"],["`","break"]],["not",["cdr",["car","expr"]]],["<=","blocknest",1]],["debugCleanup","$did delbreak from:","expr"],["=","delbreak","true"],"false"],["cons",["inbodyitem",["car","expr"]],["delbreak",["cdr","expr"],"blocknest"]]],["function&","inblock",["expr","blocknest","false","nexpr","delbreak"],["debugCleanup","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["=","nexpr",["inbodyitem",["car","expr"]]],[["identity","delbreak"],["debugCleanup","$did delbreak below:","nexpr"],"nexpr"],["cons","nexpr",["inbody",["cdr","expr"]]]],["function","hoist",["expr"],[["or",["cdr","expr"],["atom","expr"],["atom",["car","expr"]],["atom",["caar","expr"]],["atom",["caaar","expr"]]],"expr"],["debugCleanup","$hoisted:",["car","expr"]],["hoist",["car","expr"]]],["debugCleanup","$\n### in tree:","tree"],["=","blocknest",0],["ineval","tree"]]),e._SetBindingList("langErrorCheck",["function","langErrorCheck",["tree"],"tree"]),e._SetBindingList("langCorrelateComments",["function","langCorrelateComments",["locmap","false","comments","locations","locdex","loc"],["function","tupleCompare",["a","b"],[["<",[".","a",0],[".","b",0]],-1],[[">",[".","a",0],[".","b",0]],1],[["<",[".","a",1],[".","b",1]],-1],[[">",[".","a",1],[".","b",1]],1],0],["=","comments",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",["reverse",[".","source","comments","false"]],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],[".","comments","push",[["append",[".","acom","loc"],[".","acom","text"]]]]]]],[".","comments","sort",["tupleSort"]],["=","locations",{array:[]}],["=","locdex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","loc"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","loc",[".","iter","$value"]],[[["identity","loc"],[".","locations","push",[["list",[".","loc",0],[".","loc",1],"locdex"]]]]],["preadjust","locdex","+",1]]]],[".","locations","sort",["tupleSort"]],["call",["let","lambda",["false","acom","curloc","output","nextdex","nextloc"],["=","locdex",0],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["while","false",[["not",[">",[".","acom",0],[".","curloc",0]]]],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]]],[[["not","curloc"],[".","output","push",[["list","false","false",[".","acom",2]]]]],[["<",[".","acom",0],[".","curloc",0]],[".","output","push",[["list",[".","curloc",2],-1,[".","acom",2]]]]],["=","nextdex","locdex"],["=","nextloc","curloc"],["while","false",[["not",["&&",["==",[".","acom",0],[".","nextloc",0]],[">",[".","acom",1],[".","nextloc",1]]]]],["=","nextloc",["deref","locations",["postadjust","nextdex","+",1]]]],[["==",[".","acom",0],[".","nextloc",0]],[".","output","push",[["list",[".","nextloc",2],0,[".","acom",2]]]],["=","locdex","nextdex"],["=","curloc","nextloc"]],[".","output","push",[["list",[".","curloc",2],1,[".","acom",2]]]]]]]],"output"]]]),e._SetBindingList("langStrip",["function","langStrip",["tree","operators","valproc"],["=","tree",["langCleanup","tree"]],["=","tree",["langErrorCheck","tree"]],["langStripLoc","tree","operators","valproc"]]),e._SetBindingList("langStripLoc",["function","langStripLoc",["tree","operators","valproc","false","procnest","fname","locmap","nodecount","curns","nscurrent","nscore","sourcemap"],["=","curns",["nsactive"]],["=","nscurrent",[".","curns",0]],["=","nscore",[".",["nsactive","true"],1]],["function","topmap",["expr"],["function","remap",["expr"],[["dictionary","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","expr","loc"]]]],[["atom","expr"],["preadjust","nodecount","+",1],["debuglog","$langStripLoc: found atom:","expr"],[".","locmap","push",["false"]]],["remap",["car","expr"]],[["cdr","expr"],["remap",["cdr","expr"]]]],[["atom","expr"],"false"],[["==",[".",["car","expr"],"atom"],"`"],"true"],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],["remap","expr"],"true"],[["topmap",["car","expr"]],"true"],["topmap",["cdr","expr"]]],["function","moveatom",["item","false","sym"],[["not",["symbol",[".","item","atom"]]],[".","item","atom"]],[["&&",["interned",[".","item","atom"]],["dictionary","operators"],["deref","operators",[".","item","atom"]]]],[["&&",[".",[".","item","atom"],"proc"],["!=",[".",[".","item","atom"],"namespace"],"nscurrent"],["!=",[".",[".","item","atom"],"namespace"],"nscore"]],["=","sym",["interned",[".",[".","item","atom"],"tostring"]]],[["&&",["eq",[".","sym","namespace"],"nscurrent"],[".","sym","proc"]],"sym"],[".","item","atom"]],[".","item","atom"]],["function","inbody",["xbody","false","sym"],[["atom","xbody"],["moveatom","xbody"]],["=","sym",[".",["car","xbody"],"atom"]],[["==","sym","`"],["inquote","xbody"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","xbody","procnest"]],["split","xbody"]],["function","inquote",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function","split",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inbody",["car","expr"]],["split",["cdr","expr"]]]],["function&","inproc",["pbody","procnest","false","wasnest","fbind"],[[["=","wasnest","procnest"]],["=","procnest","true"]],["=","fbind",["cons",["split",["car","pbody"]],["split",["second","pbody"]],["split",["third","pbody"]],["split",["cdddr","pbody"]]]],[["identity","wasnest"],"fbind"],["=","fname",["second","fbind"]],[["and",["&&",["not","valproc"],"fname"],["not",["lambda","fname"]],["not",["eq",["car","fbind"],["`","let"]]]],["cons",["`","defproc"],"fbind"]],["enclose","fbind"]],["function","lmCompress",["locmap","false","entry","lastrow","lastcol","nextrow","nextcol"],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","entry"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","entry",[".","iter","$value"]],["=","nextrow",[".","entry",0]],["=","nextcol",[".","entry",1]],[[["not","entry"],[".","output","push",["false"]]],[["not","lastrow"],[".","output","push",["entry"]]],[["==","lastrow","nextrow"],[".","output","push",[["-","nextcol","lastcol"]]]],[".","output","push",[["list",["-","nextrow","lastrow"],"nextcol"]]]],["=","lastrow","nextrow"],["=","lastcol","nextcol"]]]],"output"],["=","locmap",{array:[]}],["=","nodecount",0],["topmap","tree"],["=","tree",["inbody","tree"]],[[["and","fname",[">",["length","locmap"],1]],["=","comments",["langCorrelateComments","locmap"]],["=","sourcemap",{dictionary:{$count:"nodecount",$comments:"comments"}}],[[["identity","false"],["set.","sourcemap",["`","map"],["lmCompress","locmap"]]]],["put","fname",["`","\\.sourcemap"],"sourcemap"]]],"tree"]),e._SetBindingList("langParse1",["function&","langParse1",["ltoken","riplop","false","rtoken"],["function&","naryCoalesce",["optoken","lexpr","rexpr","false","opsym"],["=","opsym",[".","optoken","atom"]],[["and",["defined","optoken","atom"],["symbol","opsym"],["deref",[".","lang","naryop"],"opsym"]],[["and",["tuple","lexpr"],["==","opsym",[".",["car","lexpr"],"atom"]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["cdr","lexpr"],["cdr","rexpr"]]]],["cons","optoken",["append",["cdr","lexpr"],["list","rexpr"]]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["list","lexpr"],["cdr","rexpr"]]]],["list","optoken","lexpr","rexpr"]],["list","optoken","lexpr","rexpr"]],["function&","leprop",["false","nlToken"],[["==",[".","tokenlast","atom"],"cr"],["=","nlToken","tokenlast"],[[["not",["passNewline","true"]],["return","false"]]],[["and",["not",["string",[".","tokenlast","atom"]]],["deref",[".","lang","left"],[".","tokenlast","atom"]]]],["tokenpush","nlToken"],"false"],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["=","ltoken",["passNewline"]],[["atDelimiter"],["langSyntax","ltoken","false",{dictionary:{$memo:"$unexpected delimiter"}}]],["=","rtoken",["tokenread"]],[[["string",[".","ltoken","atom"]]],[["deref",[".","lang","prefix"],[".","ltoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","prefix"],[".","ltoken","atom"]]]]],[["deref",[".","lang","left"],[".","ltoken","atom"]],["langSyntax","ltoken","false",{dictionary:{$memo:"$not a prefix operator"}}]],[["deref",[".","lang","right"],[".","ltoken","atom"]],["=","ltoken",["list","ltoken",["langParse1","rtoken",["deref",[".","lang","right"],[".","ltoken","atom"]]]]]]],["loop","false",["=","rtoken","tokenlast"],[[["and",["string",[".","ltoken","atom"]],["tokenmatch","string"]],["=","ltoken",{dictionary:{$atom:["strcat",[".","ltoken","atom"],[".","tokenlast","atom"]],$loc:[".","ltoken","loc"]}}],["tokenread"],["continue"]],[["string",[".","rtoken","atom"]]],[["and",["<","riplop",["deref",[".","lang","postleft"],[".","rtoken","atom"]]],["deref",[".","lang","postfix"],[".","rtoken","atom"]]],["=","ltoken",["eval",["deref",[".","lang","postfix"],[".","rtoken","atom"]]]],["=","rtoken",["tokenread"]]]],[["not",["<","riplop",["leprop"]]],"ltoken"],["=","rtoken","tokenlast"],["tokenread"],[[["string",[".","rtoken","atom"]]],[["deref",[".","lang","infix"],[".","rtoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","infix"],[".","rtoken","atom"]]]]],[["deref",[".","lang","right"],[".","rtoken","atom"]],["=","ltoken",["naryCoalesce","rtoken","ltoken",["langParse1","tokenlast",["deref",[".","lang","right"],[".","rtoken","atom"]]]]]],["=","ltoken",["list","rtoken","ltoken"]]]]]),e._SetBindingList("langParseTo",["function&","langParseTo",["delim","sloc","false","expr"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","lptFound","false"],["langPassSeparator"],["loop","false",[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"]],[[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$delimiter not found"}}],[["atTerminator"],["break"]]],["push",["langParse1","tokenlast",0],"expr"],[[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"],["break"]]],[["not",["langAtSeparator","delim"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$mismatched delimiter"}}],[["atTerminator"],["break"]]]],["tokenread"]]]),e._SetBindingList("langParseToList",["function&","langParseToList",["delim","sloc","false","expr"],["=","expr",["langParseTo","delim","sloc"]],[[["not","expr"],["=","expr",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]]],"expr"]),e._SetBindingList("langReadExpr",["function&","langReadExpr",["false","expr"],["=","expr",["passNewline"]],[["tokenmatch","rpar"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$mismatched parens"}}]],[["tokenmatch","quote"],["=","expr",["tokenread"]],["tokenread"],"expr"],[["tokenmatch","{"],["tokenread"],["langBraceParse"]],[["tokenmatch","["],["tokenread"],["langBracketParse"]],[["not",["tokenmatch","lpar"]],["tokenread"],"expr"],["tokenread"],["=","expr","false"],["loop","false",["passNewline"],[[["tokenmatch","comma"],["tokenread"],[["||",["not","expr"],["tokenmatch",["list","rpar","comma"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$extra comma"}}]]]],[["tokenmatch","rpar"],["tokenread"],["reverse","expr"]],["push",["langReadExpr"],"expr"],[[["tokenmatch","period"],["tokenread"],["=","expr",["reverse",["cdr","expr"],["cons",["car","expr"],["langReadExpr"]]]],[[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$invalid dotted pair"}}],"false"],["break"]]]]]),e._SetBindingList("langBraceParse",["function&","langBraceParse",["doeval","false","expr","value","exlist","sloc"],["function&","setobj",["exlist","obj"],[["empty","exlist"],"obj"],["setobj",["cdr","exlist"],"obj"],["=","exlist",["car","exlist"]],["xset","obj",[".",["car","exlist"],"atom"],["second","exlist"]],"obj"],["=","sloc","tokenlast"],["loop","false",["passNewline"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["atDelimiter"],["langSyntax",["langExprLoc","tokenlast"],"$} not found"]],["=","expr","tokenlast"],["tokenread"],["passNewline"],[[["==",[".","expr","atom"],"`"],["=","expr","tokenlast"],["tokenread"],["passNewline"]]],[["not",["tokenmatch",["`",":"]]],["langSyntax","tokenlast","sloc",{dictionary:{$memo:"$missing : in dictionary"}}]],["=","value",["langValueParse","doeval"]],["push",["list","expr","value"],"exlist"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["not",["langAtSeparator"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$, or }",$memo:"$malformed dictionary entry"}}]],["tokenread"]],{dictionary:{$atom:"expr",$loc:["langExprLoc","sloc"]}}]),e._SetBindingList("langBracketParse",["function&","langBracketParse",["doeval","ltoken","false","sloc","exlist"],["function&","strip",["expr"],[["dictionary","expr"],[".","expr","atom"]],[["atom","expr"],"expr"],["cons",["strip",["car","expr"]],["strip",["cdr","expr"]]]],["=","sloc","tokenlast"],["=","exlist",["langParseTo",["`","]"],"sloc"]],[["identity","ltoken"],[["atom",["cdr","exlist"]],["langEnlistSym","deref","sloc","ltoken",["car","exlist"]]],["langEnlistSym","dereflist","sloc","ltoken","exlist"]],["=","exlist",["strip","exlist"]],[[["identity","doeval"],["=","exlist",["cdr",["eval",["cons","false","exlist"]]]]]],{dictionary:{$atom:["new","array","exlist"],$loc:[".","sloc","loc"]}}]),e._SetBindingList("langValueParse",["function","langValueParse",["doeval","false","value"],["=","value",["langParse1",["tokenread"],0]],[[["==",[".","langErrors","length"],0],["=","value",["langStrip","value","operators","true"]],[["identity","doeval"],["=","value",["eval","value"]]]]],"value"]),e._SetBindingList("langGenIterate",["function","langGenIterate",["calltok","tagtok","varex","target","xbody","false","sloc","forsym","itersym","bodyloc","iterlist"],["=","sloc",[".","calltok","loc"]],["=","forsym",["unintern",["`","lambda"]]],["=","itersym",["unintern",["`","iter"]]],["=","bodyloc",["langExprLoc","xbody"]],["=","iterlist",["langEnlistSym","itersym","sloc"]],[[["&&",["atom","varex"],["not",["&&",["defined","varex","atom"],["symbol",[".","varex","atom"]],[".","varex","atom"]]]],["return",["langSyntax","varex","false",{dictionary:{$memo:"$invalid iteration variable",$found:[".","varex","atom"]}}]]]],["langConsSym",[".","calltok","atom"],"sloc",["cons",["langEnlistSym",["`","let"],"sloc",{dictionary:{$atom:"forsym",$loc:["langExprLoc","sloc"]}},"iterlist",["langEnlistSym",["`","="],"varex",{dictionary:{$atom:"itersym",$loc:["langExprLoc","varex"]}},["langEnlistSym",["`","iterate"],"varex","target",["langEnlistSym","`","varex","varex"]]],["langConsSym",["`","loop"],"xbody",["cons","tagtok",["list",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$next",$loc:"bodyloc"}},"iterlist"],["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$final",$loc:"bodyloc"}},"iterlist"]],["langEnlistSym",["`","="],"xbody","varex",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$value",$loc:"bodyloc"}}]],"xbody"]]]]]]),e._SetBindingList("langParseRule",["function","langParseRule",["lang","sym"],["or",["deref",[".","lang","left"],"sym"],["deref",[".","lang","right"],"sym"],["deref",[".","lang","prefix"],"sym"],["deref",[".","lang","infix"],"sym"],["deref",[".","lang","postfix"],"sym"]]]),e._AddPropertyList("LangLibInit",[["$.lingoInit","true"]]),e._SetBindingList("LangLibInit",["function","LangLibInit",["false","manifest"],["=","manifest",["`",["langParser","langParseErrorString","tokenread","tokenpush","tokenmatch","tokenpass","passNewline","atTerminator","atDelimiter","langPassSeparator","langAtSeparator","langExprLoc","langConsSym","langEnlistSym","langSyntax","langDebuglog","langCleanup","langErrorCheck","langCorrelateComments","langStrip","langStripLoc","langParse1","langParseTo","langParseToList","langReadExpr","langBraceParse","langBracketParse","langValueParse","langGenIterate","langParseRule","LangLibInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$LangLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","ParseErrorString"],"langParseErrorString"]]]]]),e._Execute(["LangLibInit"]),e._SetNamespace("Lingo"),e._Execute([".",[".","Naan","module"],"letlocal",["module"]]),e._Execute([".",[".","Naan","module"],"letinherit",["$Lib"]]),e._AddPropertyList("LingoPreload",[["$.lingoInit","true"]]),e._SetBindingList("LingoPreload",["function","LingoPreload","false",[".",[".","Naan","module"],"letinherit",["$Lib"]]]),e._SetBindingList("LingoParser",["function","LingoParser",["source","grammar","operators"],["=","SynLoop","false"],["=","InProc","false"],["langParser","source","grammar","operators"]]),e._SetValue("lingoGrammar",{dictionary:{$left:{dictionary:{"$(":520,"$[":520,"$@[":520,"$.":500,"$.*":500,"$@":500,"$@*":500,"$=":420,"$+=":420,"$-=":420,"$*=":420,"$/=":420,"$=?":420,"$=!":420,"$^":380,"$*":340,"$/.":340,"$/":340,"$+":320,"$-":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$~=":120}},$right:{dictionary:{"$.":540,"$@":540,"$^":375,"$++":360,"$--":360,"$*":340,"$/.":340,"$/":340,"$+":320,"$-":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,$not:240,"$!":240,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$~=":120,"$=":100,"$+=":100,"$-=":100,"$*=":100,"$/=":100,"$=?":100,"$=!":100}},$rightSign:360,$rightEqual:100,$highBind:1e3,$prefix:{dictionary:{"$,":"false","$[":["constObject",["lingoBracketParse","false"]],"$#[":["langConsSym",["`","#["],"tokenlast",["lingoParseTo",["`","#]"],"tokenlast"]],$try:["catchParse"],"$(":["parenParse"],"$`":["quoteParse"],$property:["putParse"],$function:["procParse",["`","function"]],$macro:["procParse",["`","macro"]],$closure:["procParse",["`","closure"]],$let:["procParse",["`","let"]],$if:["ifParse","IfBody"],$body:["bodyParse"],$cond:["condParse"],$loop:["loopParse"],$break:["deloopParse",["`","break"]],$continue:["deloopParse",["`","continue"]],$return:["returnParse"],$while:["whileParse"],$for:["for2Parse"],$switch:["switchParse"],"$+":["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]],"$-":["negateParse"],"$!":["notParse"],"$++":["preCrementParse","rtoken",["`","++"],["`","+"]],"$--":["preCrementParse","rtoken",["`","--"],["`","-"]],"${":["constObject",["lingoBraceParse","false"]],"$@":["atPrefixParse"]}},$infix:{dictionary:{"$/":["quotientParse","ltoken"],"$/.":["quotientParse","ltoken"],"$@":["atParse","ltoken"],"$@[":["atBracketParse","ltoken"],"$[":["constObject",["lingoBracketParse","false","ltoken"]],"$=":["equalParse","ltoken",["`","="]],"$=?":["equalParse","ltoken",["`","=?"]],"$=!":["equalParse","ltoken",["`","=!"]],"$+=":["opEqualParse","ltoken",["`","+"]],"$-=":["opEqualParse","ltoken",["`","-"]],"$*=":["opEqualParse","ltoken",["`","*"]],"$/=":["opEqualParse","ltoken",["`","/"]],"$(":["lparParse","ltoken"]}},$postfix:{dictionary:{"$++":["postCrementParse","ltoken",["`","++"],["`","+"]],"$--":["postCrementParse","ltoken",["`","--"],["`","-"]],"$!":["postBangParse","ltoken"]}},$postleft:{dictionary:{"$++":420,"$--":420,"$!":400}},$naryop:{dictionary:{"$&&":"true",$and:"true","$||":"true",$or:"true"}}}}),e._SetBindingList("lingoParse1",["function&","lingoParse1",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParse1","arg1","arg2"]]),e._SetBindingList("lingoReadExpr",["function&","lingoReadExpr",["false","IfBody"],["=","IfBody",["`","IfBody"]],["langReadExpr"]]),e._SetBindingList("lingoBraceParse",["function&","lingoBraceParse",["arg1","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBraceParse","arg1"]]),e._SetBindingList("lingoBracketParse",["function&","lingoBracketParse",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBracketParse","arg1","arg2"]]),e._SetBindingList("lingoParseTo",["function&","lingoParseTo",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseTo","arg1","bloc"]]),e._SetBindingList("lingoParseToList",["function&","lingoParseToList",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseToList","arg1","bloc"]]),e._SetBindingList("constObject",["function","constObject",["tok"],["xlock",[".","tok","atom"]],"tok"]),e._SetBindingList("parenParse",["function","parenParse",["false","expr","sloc"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",0]],[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax",["tokenread"],"false",{dictionary:{$expected:"rpar",$memo:"$) or operator not found"}}]]),e._SetBindingList("negateParse",["function","negateParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]]],[["numeric",[".","expr","atom"]],{dictionary:{$atom:["negate",[".","expr","atom"]],$loc:[".","expr","loc"]}}],["langEnlistSym",["`","-"],"expr","expr"]]),e._SetBindingList("notParse",["function","notParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","!"]]]],["langEnlistSym",["`","not"],"expr","expr"]]),e._SetBindingList("postBangParse",["function","postBangParse",["expr","false","sloc"],["=","sloc","tokenlast"],["langEnlistSym",[".","tokenlast","atom"],"sloc","expr"]]),e._SetBindingList("atPrefixParse",["function","atPrefixParse",["false","expr","ltoken","destoken"],["=","ltoken","tokenlast"],["=","expr",["lingoParse1","ltoken",["deref",[".","lingoGrammar","right"],["`","@"]]]],["=","destoken",{dictionary:{$atom:["`","annotations"],$loc:["langExprLoc","ltoken"]}}],[[["not",["dictionary","annotations"]],["=","annotations",{dictionary:{}}]]],["=","expr",["langEnlistSym","`","expr","expr"]],["langEnlistSym","set.","ltoken","destoken","expr","expr"]]),e._SetBindingList("atParse",["function","atParse",["ltoken","false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","@"]]]],["langEnlistSym",["`","deref"],"ltoken",["langEnlistSym",["`","@"],"ltoken","ltoken"],["langEnlistSym","`","expr","expr"]]]),e._SetBindingList("atBracketParse",["function","atBracketParse",["ltoken"],["lingoBracketParse","false",["langEnlistSym",["`","@"],"ltoken","ltoken"]]]),e._SetBindingList("quotientParse",["function","quotientParse",["lhs","false","rhs"],["=","rhs",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","/"]]]],["langEnlistSym",["`","quotient"],"lhs","lhs","rhs"]]),e._SetBindingList("ifParse",["function&","ifParse",["IfBody"],[[["eq","IfBody",["`","IfBody"]],["return",["langConsSym",["`","cond"],"tokenlast",["ifParse"]]]]],["call",["let","lambda",["notcond","false","expr","nexpr","bloc"],["=","IfBody","true"],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],[[["dictionary","expr"],["=","expr",["langEnlistSym",["`","identity"],"expr","expr"]]]],[[["not",["tokenmatch","{"]],["langPassSeparator"],["=","expr",["list","expr",["langParse1","tokenlast",0]]]],["=","bloc","tokenlast"],["tokenread"],["=","expr",["cons","expr",["langParseTo",["`","}"],"bloc"]]]],[["not",["tokenmatch",["`","else"]]],["list","expr"]],["tokenread"],[["identity","notcond"],[["tokenmatch",["`","if"]],["tokenread"],["list","expr",["ifParse","true"]]],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["cons","expr",["langParseTo",["`","}"],"bloc"]]],["list","expr",["langParse1","tokenlast",0]]],[["tokenmatch",["`","if"]],["tokenread"],["cons","expr",["ifParse","false"]]],["=","nexpr",["langConsSym",["`","identity"],"tokenlast",["langConsSym",["`","true"],"tokenlast"]]],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","nexpr",["cons","nexpr",["langParseTo",["`","}"],"bloc"]]]],["=","nexpr",["list","nexpr",["langParse1","tokenlast",0]]]],["list","expr","nexpr"]],"IfBody"]]),e._SetBindingList("bodyParse",["function&","bodyParse",["false","IfBody"],["call",["let","lambda",["bloc"],[["tokenmatch","lpar"],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","body"],"tokenlast",["langParseTo","rpar","bloc"]]],{dictionary:{$atom:["`","body"],$loc:["langExprLoc","tokenlast"]}}]]]),e._SetBindingList("condParse",["function&","condParse",["false","IfBody"],["call",["let","lambda",["bloc"],[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],[["not",["tokenmatch",["`","if"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$cond( requires if expression"}}]],["langConsSym",["`","cond"],"tokenlast",["apply","append",["langParseTo","rpar","bloc"]]]],{dictionary:{$atom:["`","cond"],$loc:["langExprLoc","tokenlast"]}}]]]),e._SetBindingList("loopParse",["function&","loopParse",["false","SynLoop","IfBody"],["call",["let","lambda",["tagex","sloc","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$loop tag must be an atom"}}]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","loop"],"sloc",["cons","tagex",["langParseTo",["`","}"],"bloc"]]]],["langConsSym",["`","loop"],"sloc",["cons","tagex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("deloopParse",["function","deloopParse",["keyword","false","tagex","sloc","expr"],[["not","SynLoop"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$only allowed within loops"}}]],["=","sloc","tokenlast"],[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$tag must be an atom"}}]],["langEnlistSym","keyword","tokenlast","tagex"]],["langConsSym","keyword","tokenlast"]]),e._SetBindingList("returnParse",["function","returnParse","false",[["tokenmatch","lpar"],["langEnlistSym",["`","return"],"tokenlast",["lingoParse1","tokenlast",0]]],["langConsSym",["`","return"],"tokenlast"]]),e._SetBindingList("whileParse",["function&","whileParse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","expr","tagex","testex","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["dictionary",["car","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$while tag must be an atom"}}]],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],["=","testex",["list",["langEnlistSym",["`","not"],"expr","expr"]]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["langParseTo",["`","}"],"bloc"]]]],["langPassSeparator"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("for2Parse",["function&","for2Parse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","varex","tagex","targex","bloc","bodyex"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["defined","tagex","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$for tag must be an atom"}}]],["=","varex",["lingoParse1","tokenlast",0]],[[["==",[".",["car","varex"],"atom"],"quote"],["=","varex",["cadr","varex"]]]],[["not",["tokenmatch",["`","in"]]],["langSyntax","tokenlast","false",{dictionary:{$expected:"$in",$memo:"$malformed for loop"}}]],["tokenread"],["=","targex",["lingoParse1","tokenlast",0]],["=","SynLoop","true"],["=","IfBody","true"],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","bodyex",["langParseTo",["`","}"],"bloc"]]],["=","bodyex",["cons",["langParse1","tokenlast",0]]]],["langGenIterate",{dictionary:{$atom:["`","for"],$loc:"sloc"}},"tagex","varex","targex","bodyex"]]]]),e._SetBindingList("switchParse",["function","switchParse",["false","sloc"],["=","sloc","tokenlast"],["langSyntax","sloc",{dictionary:{$memo:"$switch not implemented"}}]]),e._SetBindingList("procParse",["function&","procParse",["begin","false","InProc","IfBody"],["function","convlocal",["parms","false","ptoken","result"],[["atom","parms"],"parms"],["loop","false",["=","ptoken",["pop","parms"]],[[["==",[".","ptoken","atom"],"local"],["=","result",["cons",{dictionary:{$atom:"false",$loc:[".","ptoken","loc"]}},"result"]]],["=","result",["cons","ptoken","result"]]],[["atom","parms"],["reverse","result"]]]],["function","checkparms",["parms","false","sym"],[["not","parms"],"false"],[["&&",["dictionary","parms"],["not",["not",["=","sym",[".","parms","atom"]]]]],[["||",["not",["symbol","sym"]],["langParseRule","lingoGrammar","sym"]],["langSyntax","parms","false",{dictionary:{$memo:"$invalid parameter"}}]]],[["tuple","parms"],["checkparms",["car","parms"]],["checkparms",["cdr","parms"]]]],["call",["let","lambda",["expr","procname","parms","sloc","akey","bloc"],["=","InProc","true"],["=","sloc","tokenlast"],["=","expr",["langReadExpr"]],[[["==",[".","expr","atom"],["`","&"]],[["eq","begin",["`","function"]],["=","begin","function&"],["=","expr",["langReadExpr"]]],[["eq","begin",["`","let"]],["=","begin","let&"],["=","expr",["langReadExpr"]]],["langSyntax","sloc","false",{dictionary:{$memo:"$only function& and let& allowed"}}],["return"]]],[[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["=","procname",{dictionary:{$atom:["unintern",[".","expr","atom"]],$loc:["langExprLoc","sloc"]}}],["assign",[".","procname","atom"],[".","expr","atom"]],["=","parms",["langReadExpr"]]],["=","procname",{dictionary:{$atom:["unintern","lambda"],$loc:["langExprLoc","sloc"]}}],["=","parms","expr"]],[[["dictionary","annotations"],["for",["let","lambda",["iter"],["=","iter",["iterate","annotations",["`","akey"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","akey",[".","iter","$value"]],["put",[".","procname","atom"],"akey",["deref","annotations","akey"]]]]],["=","annotations",["`","annotations"]]]],[[["||",["&&",["dictionary","parms"],["not",[".","parms","atom"]]],["not","parms"]],["=","parms",{dictionary:{$atom:"false",$loc:["langExprLoc","tokenlast"]}}]],["=","parms",["convlocal","parms"]]],["checkparms","parms"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc",{dictionary:{$memo:"$missing { at start of procedure body"}}]],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym","begin","sloc",["cons","procname",["cons","parms",["langParseTo",["`","}"],"bloc"]]]]]]]),e._SetBindingList("putParse",["function","putParse",["false","sloc","symtoken","keytoken","value"],["=","sloc","tokenlast"],["=","symtoken",["langReadExpr"]],["=","keytoken",["langReadExpr"]],[["&&",["not",["defined","symtoken","atom"]],["symbol",[".","symtoken","atom"]]],["langSyntax","symtoken","sloc",{dictionary:{$memo:"$malformed property statement"}}]],[["&&",["not",["defined","keytoken","atom"]],["symbol",[".","keytoken","atom"]]],["langSyntax","keytoken","sloc",{dictionary:{$memo:"$malformed property statement"}}]],["langPassSeparator"],["=","value",["lingoParse1","tokenlast",0]],[[["==",["caar","value"],"quote"],["=","value",["rest","value"]]]],["langEnlistSym",["`","defprop"],"sloc","symtoken","keytoken","value"]]),e._SetBindingList("catchParse",["function","catchParse",["false","sloc1","sloc2","sloc3","exbod","ccond","finbod","expr","bloc"],["=","sloc1","tokenlast"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$missing { after try"}}]],["tokenread"],["=","exbod",["langParseToList",["`","}"],"sloc1"]],["=","sloc2","tokenlast"],[[["tokenmatch",["`","catch"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc2",{dictionary:{$memo:"$missing { after catch"}}]],["=","bloc","tokenlast"],["tokenread"],["=","ccond",["call",["function&","lambda",["false","IfBody"],["apply","append",["langParseToList",["`","}"],"bloc"]]]]],[["not","ccond"],["=","ccond",["list",["list",["langConsSym",["`","identity"],"bloc",["langConsSym",["`","true"],"bloc"]]]]]]]],["=","sloc3","tokenlast"],[[["tokenmatch",["`","finally"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc3",{dictionary:{$memo:"$missing { after finally"}}]],["=","bloc","tokenlast"],["tokenread"],["=","finbod",["langParseToList",["`","}"],"bloc"]]]],[["not","ccond"],[["not","finbod"],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$try requires catch or finally"}}]],["=","ccond",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc2"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],[["not","finbod"],["=","finbod",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc3"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]]),e._SetBindingList("equalParse",["function","equalParse",["lhs","op","false","rhs","atex","equex"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],["=","equex",["call",["let","lambda","false",[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","op","lhs","lhs","rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","op","lhs",["second","lhs"],"rhs"]],[["==",[".",["car","lhs"],"atom"],"period"],["langEnlistSym","set.","lhs",["second","lhs"],["langEnlistSym","quote",["third","lhs"],["third","lhs"]],"rhs"]],[["and",["==",[".",["car","lhs"],"atom"],"set."],["eq",[".",["second","lhs"],"atom"],["`","annotations"]]],["langEnlistSym","set.","lhs",["second","lhs"],["third","lhs"],"rhs"]],[["or",["==",[".",["caar","lhs"],"atom"],"deref"],["==",[".",["caar","lhs"],"atom"],"dereflist"]],["=","atex",["second","lhs"]],[[["==",[".",["car","atex"],"atom"],["`","@"]],["=","atex",["langEnlistSym",["`","@"],"atex",["second","atex"],{dictionary:{$atom:"true",$loc:[".",["car","atex"],"loc"]}}]]]],["langEnlistSym","set[","lhs","atex",["third","lhs"],"rhs"]],["return",["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad assignment"}}]]]]],[["eq","op",["`","=!"]],["langEnlistSym",["`","not"],"lhs","equex"]],"equex"]),e._SetBindingList("opEqualParse",["function","opEqualParse",["lhs","op","false","sloc","rhs"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","preadjust","lhs",["second","lhs"],{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["member",[".",["car","lhs"],"atom"],["`",[".","deref","dereflist"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad operator assignment"}}]]),e._SetBindingList("lparParse",["function","lparParse",["expr","false","bloc"],["=","bloc","tokenlast"],[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["cons","expr",["lingoParseTo","rpar","bloc"]]],[["==",[".",["car","expr"],"atom"],"period"],["langEnlistSym","period","expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],[[["not","InProc"],["set[",["@",[".",[".","expr",1],"atom"],"true"],["`","\\.lingoInit"],"true"]]],["langConsSym",["`","call"],"expr",["cons","expr",["lingoParseTo","rpar","bloc"]]]],[["or",["==",[".",["caar","expr"],"atom"],"deref"],["==",[".",["caar","expr"],"atom"],"dereflist"]],["langEnlistSym",[".",["caar","expr"],"atom"],"expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],["langSyntax","bloc","false",{dictionary:{$memo:"$operator missing before ("}}]]),e._SetBindingList("preCrementParse",["function","preCrementParse",["rtoken","opsym","adjuster","false","sloc","expr"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],"opsym"]]],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","preadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("postCrementParse",["function","postCrementParse",["expr","opsym","adjuster","false","sloc"],["=","sloc","tokenlast"],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","postadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("quoteParse",["function","quoteParse",["false","expr"],["=","expr","tokenlast"],[["member",[".","expr","atom"],["`",["quote",")","{","[","`","\n"]]],["tokenread"],"expr"],["langEnlistSym","`","expr",["langReadExpr"]]]),e._SetBindingList("makeBootJS",["function","makeBootJS",["false","content"],["=","content",{array:[]}],["set[","content",0,"$/*\n * naan_lingo.js\n *\n * Contains Confidential Trade Secrets of Zulch Laboratories, Inc.\n * Portions Copyright (c) 2017-2021 by Richard C. Zulch\n *\n * This confidential source file is licensed to:\n * %%%Licensee%%%\n * Version %%%Version%%%\n *\n * This file contains the Lib runtime library and the Lingo language subsystem.\n * Lib:\n * RuntimeLib.nlg - basic functionality accessed through the language\n * LangLib.nlg - generic language utilities, e.g. parser and unparser\n * Lingo components:\n * Parse.nlg - parser\n * Unparse.nlg - unparser\n * CLI components:\n * CliUtils.nlg - CLI shared utility functions\n * Driver.nlg - repl driver\n * Debugger.nlg - CLI debugger\n *\n * column positioning: // // !\n *\n */\n\n(function(exports){\n\nexports.BootLingo = function(ninti) {\n\n 'use strict';\n\n //\n // Namespace<Lib>\n //\n\n var savens = ninti._SetNamespace('Lib');\n\n ninti._CopyBinding('equal', '==');\n ninti._CopyBinding('setq', '=');\n ninti._CopyBinding('and', '&&');\n ninti._CopyBinding('or', '||');\n ninti._CopyBinding('loop', 'while');\n\n ninti._Import('number', 'difference', '-');\n ninti._Import('number', 'greater', '>');\n ninti._Import('number', 'lesser', '<');\n ninti._Import('number', 'times', '*');\n ninti._Import('number', 'plus', '+');\n ninti._Import('number', 'quotient', '/');\n ninti._Import('number', 'quotient', '/.');\n\n ninti._SetValue('echo', []);\n ninti._SetValue('err', []);\n ninti._SetValue('rdsDriver');\n\n"],["set[","content",0,[".",["deref","content",0],"replace",[["RegExp","$%%%","$g"],"$$"]]],["set[","content",1,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"Lib"],"components"],"RuntimeLib"],"jspackage","false"]],["set[","content",2,"$ ninti._Execute(['RuntimeLibInit', '$Lib']);\n\n"],["set[","content",3,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"Lib"],"components"],"Languages"],"jspackage","false"]],["set[","content",4,"$ ninti._Execute(['LanguagesInit']);\n\n"],["set[","content",5,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"Lib"],"components"],"LangLib"],"jspackage","false"]],["set[","content",6,"$ ninti._Execute(['LangLibInit']);\n\n ninti._SetNamespace('Lingo');\n ninti._Execute(['.', ['.', 'Naan', 'module'], 'letlocal', ['module']]);\n\n ninti._Execute(['.', ['.', 'Naan', 'module'], 'letinherit', ['$Lib']]);\n\n"],["set[","content",7,[".",[".",[".","module","components"],"Parse"],"jspackage","false"]],["set[","content",8,"$ ninti._Execute(['LingoInit', '$Lingo']);\n"],["set[","content",9,[".",[".",[".","module","components"],"Unparse"],"jspackage","false"]],["set[","content",10,"$ ninti._Execute(['LingoUnparseInit']);\n\n ninti._SetNamespace(savens.slice(1), true);\n ninti._SetNamespace('CLI');\n ninti._Execute(['.', ['.', 'Naan', 'module'], 'letinherit', ['$Lang_Lingo']]);\n\n"],["set[","content",11,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"CLI"],"components"],"CliUtils"],"jspackage","false"]],["set[","content",12,"$ ninti._Execute(['CliUtilsInit']);\n\n"],["set[","content",13,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"CLI"],"components"],"Driver"],"jspackage","false"]],["set[","content",14,"$ ninti._Execute(['DriverInit']);\n ninti._CopyBinding('Driver', 'driver');\n\n"],["set[","content",15,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"CLI"],"components"],"Debugger"],"jspackage","false"]],["set[","content",16,"$ ninti._Execute(['DebuggerInit']);\n\n ninti._SetNamespace(savens, true);\n};\n\n})(typeof exports === 'undefined'? this.naan_lingo={}: exports);\n"],[".","content","join",["$"]]]),e._AddPropertyList("LingoInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoInit",["function","LingoInit",["modname","false","manifest"],["=","manifest",["`",["LingoPreload","LingoParser","lingoGrammar","lingoParse1","lingoReadExpr","lingoBraceParse","lingoBracketParse","lingoParseTo","lingoParseToList","constObject","parenParse","negateParse","notParse","postBangParse","atPrefixParse","atParse","atBracketParse","quotientParse","ifParse","bodyParse","condParse","loopParse","deloopParse","returnParse","whileParse","for1Parse","for2Parse","switchParse","procParse","putParse","catchParse","equalParse","opEqualParse","lparParse","preCrementParse","postCrementParse","quoteParse","makeBootJS","LingoInit"]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$Parse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Base"],["DefineLanguage","$Lingo","lingoGrammar","LingoParser","LingoUnparser"]],["=","lingoOperators",[".",[".",[".",[".","modobj","exports"],"Base"],"info","false"],"operators"]]]]]]),e._Execute(["LingoInit","$Lingo"]),e._SetBindingList("LingoPrinter",["function","LingoPrinter",["expr","options"],[".",["LingoUnparser","expr","options"],"string","false"]]),e._SetBindingList("LingoUnparser",["closure","LingoUnparser",["origexpr","options","grammar","extensions","false","unparser","sink","formatter","key","expr","rbp","lbp","owntuple","hookif"],["=","unparser",["new","object","this"]],["set.","unparser",["`","expression"],"origexpr"],[[["not","grammar"],["=","grammar","lingoGrammar"]]],["set.","unparser",["`","sink"],["=","sink",{dictionary:{$row:0,$col:0,$incol:0,$hangdent:0,$wrapping:"true",$rowtokens:{array:[{array:[]}]},$procnesting:0,$endprocNL:"true",$quoteDict:["RegExp","$[`:,}]$"],$breaks:"false",$mirrors:"false",$mirroroot:"false",$tuplemap:"false",$maxmarklen:0,$markdict:"false",$nocycles:["new","weakmap"],$maproot:"false",$defoptions:{dictionary:{$point:"false",$quoted:"true",$indentSize:4,$wrapMinAmount:29,$wrapMaxCol:79,$leftMargin:0,$compact:"true",$maxKeyLength:20,$maxElements:1024,$maxStringLength:["*",64,1024],$noComments:"false",$commentCol:64}}}}]],["call",["let","lambda",["false","item"],[[["not",["dictionary","options"]],["=","options",[".","sink","defoptions"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","options",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["set[",[".","sink","defoptions"],"item",["deref","options","item"]]]]],["=","options",[".","sink","defoptions"]]],["set.","unparser",["`","options"],"options"]]],["set.","sink",["`","col"],[".","options","leftMargin"]],["=","formatter",{dictionary:{"$`":"uhook`","$=":"uhook=",$deref:"uhookderef",$dereflist:"uhookderef","$set.":"uhookset.","$set[":"uhookset[","$.":"uhook.","$.*":"uhookref*","$@*":"uhookref*",$quotient:"uhookquotient",$catch:"uhookcatch",$for:"uhookfor",$call:"uhookcall",$while:"uhookwhile",$loop:"uhookloop",$cond:"uhookcond",$return:"uhookreturn",$continue:"uhookbreco",$break:"uhookbreco",$preadjust:"uhookpreadjust",$postadjust:"uhookpostadjust",$not:"uhooknot","$!":"uhookbang",$let:"uhookproc","$let&":"uhookproc",$closure:"uhookproc",$macro:"uhookproc",$function:"uhookproc","$function&":"uhookproc"}}],["for",["let","lambda",["iter"],["=","iter",["iterate","extensions",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","formatter","key",["deref","extensions","key"]]]]],["function","earlier",["loc1","loc2"],[["<",["car","loc1"],["car","loc2"]],"loc1"],[[">",["car","loc1"],["car","loc2"]],"loc2"],[["<",["second","loc1"],["second","loc2"]],"loc1"],[[">",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","later",["loc1","loc2"],[[">",["car","loc1"],["car","loc2"]],"loc1"],[["<",["car","loc1"],["car","loc2"]],"loc2"],[[">",["second","loc1"],["second","loc2"]],"loc1"],[["<",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","indentadj",["delta"],["preadjust",[".","sink","incol"],"+",["*","delta",[".","options","indentSize"]]],[["<",[".","sink","incol"],0],["set.","sink",["`","incol"],0]]],["function","nextline","false",["set[",[".","sink","rowtokens"],["preadjust",[".","sink","row"],"+",1],{array:[]}],["set.","sink",["`","col"],[".","sink","incol"]],[[">",[".","sink","hangdent"],0],["preadjust",[".","sink","col"],"+",[".","options","indentSize"]]]],["function&","outoken",["strs","false","str","toklen","outok","sym"],[[["<",[".","sink","col"],[".","sink","incol"]],["set.","sink",["`","col"],[".","sink","incol"]]]],["while","false",[["not",["not",["atom","strs"]]]],["=","str",["pop","strs"]],[[["not",["atom","str"]],["=","owntuple","str"],["continue"]]],[[["symbol","str"],["=","sym","str"],["=","str",["tostring","sym",{dictionary:{$quote:"true",$nonamespace:"true"}}]]]],[[[">",[".","str","length"],[".","options","maxStringLength"]],["=","str",[".","$[String ","concat",[[".","str","length"],"$]"]]]]],[[["==","str","$\n"],["nextline"],["continue"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","str",["totuple",[".","str","split",["$\n"]]]],["=","outok","false"],["loop","false",["push",["pop","str"],"outok"],[["empty","str"]],["push","$\n","outok"]],["outoken",["reverse","outok"]],["continue"]]]],["=","toklen",["length","str"]],[[["!=",[".","str","trim","false"],"$"],[[["&&",[".","sink","wrapping"],[">",["+",[".","sink","col"],"toklen"],[".","options","wrapMaxCol"]],[">",["-",[".","sink","col"],[".","sink","incol"]],[".","options","wrapMinAmount"]]],["nextline"]]],["=","outok",{dictionary:{$str:"str",$column:[".","sink","col"],$tuple:"owntuple"}}],[[["identity","sym"],["set.","outok",["`","symbol"],"sym"]]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["outok"]]]],["preadjust",[".","sink","col"],"+","toklen"]]],["function","mktok","strs",["outoken","strs"]],["function","mktokil","strs",["call",["function","lambda",["false","result"],["set.","sink",["`","wrapping"],"false"],["=","result",["apply","mktok","strs"]],["set.","sink",["`","wrapping"],"true"],"result"]]],["function","spaces",["lop1"],[["not",["and","lop1",["atom","lop1"]]],[["identity","spaceout"],["mktok","space"]]],[["<",["deref",[".","grammar","right"],"lop1"],"lbp"],["mktok","space"]],[["<",["deref",[".","grammar","left"],"lop1"],"rbp"],["mktok","space"]],[["identity","spaceout"],["mktok","space"]],[["not",["isbreak","lop1"]],["mktok","space"]]],["function","parens",["str"],[["deref",[".","grammar","right"],"lop1"],[[">","lbp",["deref",[".","grammar","right"],"lop1"]],["mktokil","str"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]],["=","spaceout","false"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]]],["macro","getokens",["outputter","false","rowstart","colstart"],["function","dequeue",["false","rowdex","coldex","outqueue","col"],["=","outqueue",{array:[]}],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowstart"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[">=",[".","col","column"],"colstart"],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowstart"],"splice",["coldex"]]]]],["set.","sink",["`","col"],[".","col","column"]]],["preadjust","coldex","+",1]]]],["set.","sink",["`","row"],"rowstart"],["set.","sink",["`","col"],"colstart"],["=","rowdex","rowstart"],["while","false",[["not",["<",["preadjust","rowdex","+",1],[".",[".","sink","rowtokens"],"length"]]]],[".","outqueue","push",[["`","row"]]],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[0]]]]]],[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[["+","rowstart",1]]],"outqueue"],["=","rowstart",[".","sink","row"]],["=","colstart",[".","sink","col"]],[["eval","outputter"],["dequeue"]]],["function","putokens",["tokens","false","item"],["for",["let","lambda",["iter"],["=","iter",["iterate","tokens",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[[["eq","item",["`","row"]],["nextline"]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["item"]],["set.","sink",["`","col"],["+",[".","item","column"],["length",[".","item","str"]]]]]]]]],["function","tokenmark","false",{dictionary:{$rowstart:[".","sink","row"],$colstart:[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"length"],$col:[".","sink","col"],$incol:[".","sink","incol"]}}],["function","tokentruncate",["mark"],[".",["deref",[".","sink","rowtokens"],[".","mark","rowstart"]],"splice",[[".","mark","colstart"]]],[".",[".","sink","rowtokens"],"splice",[["+",[".","mark","rowstart"],1]]],["set.","sink",["`","row"],[".","mark","rowstart"]],["set.","sink",["`","col"],[".","mark","col"]],["set.","sink",["`","incol"],[".","mark","incol"]]],["function","exarray",["arr","false","adex","separator"],[[["deref",[".","sink","nocycles"],"arr"],["mktokil","$[","$<cyclic>","$]"],["return"]]],["set[",[".","sink","nocycles"],"arr","true"],["=","adex",0],["=","separator","space"],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[["dictionary",["deref","arr",["postadjust","adex","+",1]]],["=","separator","$\n"],["break"]]]],["mktok","$["],[[["==","separator","$\n"],["nextline"],["indentadj",1]]],["=","adex",0],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[[">=","adex",[".","options","maxElements"]],["mktok","$<...>"],["break"]]],[[[">","adex",0],["mktokil","$,","separator"]]],["exoutput",["deref","arr",["postadjust","adex","+",1]],"arr",0,0]],[[["==","separator","$\n"],["indentadj",-1]]],["mktok","$]"],["set[",[".","sink","nocycles"],"arr","false"]],["function","exdictionary",["dict","false","tokens","keylenmax","depths","dictmap","completed"],["function","render",["whitespace","keypad","false","mark","startrow","notfirst","keylen","keystr","savehang","key"],["=","mark",["tokenmark"]],["=","startrow",[".","sink","row"]],["=","savehang",[".","sink","hangdent"]],["set.","sink",["`","hangdent"],0],["set.","sink",["`","endprocNL"],"false"],[[["identity","keypad"],["mktok","{","$\n"]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["||",["eq",["typeof",["deref","dict","key"]],"dictionary"],["eq",["typeof",["deref","dict","key"]],"array"]],["tokentruncate","mark"],["return","false"]]]]]],["mktok","{"]],[[["identity","keypad"],["indentadj",1]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keystr","key"],[[["&&",[".","options","quoted"],[".",[".","sink","quoteDict"],"test",["keystr"]]],["=","keystr",[".",'$"',"concat",["keystr",'$"']]]]],["=","keylen",["length","keystr"]],[[["&&","keypad",[">","keypad","keylen"]],["=","keystr",[".","keystr","concat",[[".","space","repeat",[["-","keypad","keylen"]]]]]]]],[[["identity","notfirst"],["mktokil","$,","whitespace"]],[[">",[".","sink","col"],[".","sink","incol"]],["mktokil","space"]]],["=","notfirst","true"],["mktokil","keystr","$:","space"],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],[["||",["deref",[".","sink","nocycles"],["deref","dict","key"]],["deref","dictmap",["deref","dict","key"]]],["mktokil","${","$<cyclic>","$}"]],["set[","dictmap",["deref","dict","key"],"true"],["outputdict",["deref","dict","key"],["+","depth",1]],["set[","dictmap",["deref","dict","key"],"false"]],["exoutput",["deref","dict","key"],"dict",0,0]],[[["&&",["not","keypad"],["!=",[".","sink","row"],"startrow"]],["tokentruncate","mark"],["return","false"]]]]]],[[["identity","keypad"],["indentadj",-1]]],["mktokil","space",["`","}"]],["set.","sink",["`","endprocNL"],"true"],["set.","sink",["`","hangdent"],"savehang"],["return","true"]],["function","computeMaxKeyLengths",["dict","depth","false","key","keylen"],[[["deref","dictmap","dict"],["return"]]],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["return"]]],["set[","dictmap","dict","true"],[[["not",["deref","depths","depth"]],["set[","depths","depth",0]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keylen",["length","key"]],[[["<",["deref","depths","depth"],"keylen"],["set[","depths","depth","keylen"]]],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],["computeMaxKeyLengths",["deref","dict","key"],["+","depth",1]]]]]]],[[[">",["deref","depths","depth"],[".","options","maxKeyLength"]],["set[","depths","depth",[".","options","maxKeyLength"]]]],["set[","dictmap","dict","false"]],["function&","outputdict",["dict","depth","false","keypad"],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["mktok","$<...>"],["return"]]],["=","keypad",["deref","depths","depth"]],[[["&&",[">","depth",0],["<","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]],["=","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]]],[["not",["render","$ "]],["render","$\n","keypad"]]],[[["deref",[".","sink","nocycles"],"dict"],["mktokil","${","$<cyclic>","$}"],["return","true"]]],["set[",[".","sink","nocycles"],"dict","true"],["=","depths",{array:[]}],["=","dictmap",["new","weakmap"]],["=","completed",0],["computeMaxKeyLengths","dict",0],["=","completed",0],["set[","dictmap","dict","true"],["outputdict","dict",0],["set[",[".","sink","nocycles"],"dict","false"],"true"],["function","exobject",["obj","false","str"],["=","str",[".","obj","\\.tostring",["obj"]]],[[["not","str"],["=","str",["tostring","obj"]]]],["mktok","str"]],["function","exlist",["lex1","owner","paramlist","false","ex1","xpar","savetup","savenest"],["=","savetup","owntuple"],["=","savenest",[".","sink","procnesting"]],["set.","sink",["`","procnesting"],0],[[["identity","owner"],["=","owntuple","owner"]]],[[["empty","lex1"],["mktokil","$(","$)"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]],["mktok","$("],["preadjust",[".","sink","hangdent"],"+",1],["loop","false",[[["&&","paramlist",["not","ex1"]],["=","ex1","local"]]],["exoutput","ex1","xpar"],[[["empty","lex1"],[[["identity","lex1"],["mktokil","space","$.","space","lex1"]]],["break"]]],[[["eq","ex1","local"],["mktokil","space"]],["mktokil","$,","space"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]]],["preadjust",[".","sink","hangdent"],"-",1],["mktokil","$)"]],["set.","sink",["`","procnesting"],"savenest"],["=","owntuple","savetup"]],["function","exannotation",["lex1"],["exoutput",["cadar","lex1"],"owntuple",0,["deref",[".","grammar","left"],["`","@"]]],["mktok",["`","@"]],[["==",["caadr","lex1"],"`"],["exoutput",["cadadr","lex1"],"owntuple",["deref",[".","grammar","right"],["`","@"]],0]],["mktok","$["],["exoutput",["second","lex1"],"owntuple",0,0],["mktok","$]"]],["function&","exoutput",["expr","owntuple","rbp","lbp","spaceout","false","ex1","ex2","ex3","lop1","lex1"],[[["not","rbp"],["=","rbp",0]]],[[["not","lbp"],["=","lbp",0]]],[["atom","expr"],[["dictionary","expr"],["exdictionary","expr"]],[["array","expr"],["exarray","expr"]],[["object","expr"],["exobject","expr"]],[["and",["float","expr"],["or",["positive",[".","options","point"]],["zero",[".","options","point"]]]],["mktok",[".","expr","toFixed",["point"]]]],[["and",["negative","expr"],[">","lbp",[".","grammar","rightSign"]]],["mktok","$(",["tostring","expr"],"$)"]],[["symbol","expr"],["mktok","expr"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],["=","owntuple","expr"],["=","lop1",["car","expr"]],["=","lex1",["cdr","expr"]],[["and","lex1",["empty","lex1"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],[["not",["symbol","lop1"]],["exlist","expr"]],[["apply",["deref","formatter","lop1"],["list","lex1","lop1","rbp","lbp","hookif"]]],[["and",["not",["deref",[".","grammar","left"],"lop1"]],["not",["deref",[".","grammar","right"],"lop1"]],["not",["getproc","lop1"]]],["exlist","expr"]],[["empty","lex1"],["mktok","lop1"],["mktokil","$(","$)"]],[["==","lop1","quote"],["mktok","lop1"],["exoutput","ex1","owntuple",[".","grammar","highBind"],0]],["=","ex1",["pop","lex1"]],[["empty","lex1"],["parens","$("],[["deref",[".","grammar","right"],"lop1"],["mktok","lop1"],["spaces","lop1"],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],[["deref",[".","grammar","left"],"lop1"],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["spaces","lop1"],["mktok","lop1"],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],[["and",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]],["parens","$("],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["loop","false",["=","ex1",["pop","lex1"]],["spaces","lop1"],["mktok","lop1"],["spaces","lop1"],[["empty","lex1"]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],["function&","exbody",["upbody","inloop","nobrace","false","item","startin","lastitem"],["function","debugExbody","args",[["identity","false"],["apply",[".",[".","Naan","debug"],"debuglog"],"args"]]],["function","braceOpen","false",[[[".","options","compact"],["mktokil","space","${"]],["nextline"],["mktok","${"]],["indentadj",1]],["function","braceClose",["goleft"],["indentadj",-1],[["&&",["and",[".","options","compact"],["not","goleft"]],[">",[".","sink","incol"],"startin"]],["mktokil","space","$}"]],["nextline"],["mktok","$}"]],["function","mkiftest",["test","didif"],["nextline"],["preadjust",[".","sink","hangdent"],"+",1],[[["==","test",["`",["identity","true"]]],["mktok","test","$else"]],[[["identity","didif"],["mktok","test","$else if","space"]],["mktok","test","$if","space"]],[["==",["car","test"],["`","identity"]],["exoutput",["second","test"],"test",0,0,"true"]],["exoutput","test","test",0,0,"true"]],["preadjust",[".","sink","hangdent"],"-",1]],["function","mkindented",["upbody","inloop","elseafter"],[["||",[">=",["length",["cdr","upbody"]],2],["&&",["atom",["caar","upbody"]],[">=",["length","upbody"],2]],["&&","upbody","inloop"],["&&","elseafter",["tuple",["car","upbody"]],["tuple",["caar","upbody"]]],["dictionary",["car","upbody"]]],["debugExbody","$mkindented 0","upbody","$|","inloop","$|","elseafter"],["braceOpen"],["mkitems","upbody","false","false"],[[["identity","inloop"],["nextline"],["mktok","$break"]]],["braceClose"]],["debugExbody","$mkindented 1","upbody","$|","inloop","$|","elseafter"],["indentadj",1],["mkitems","upbody","false","false"],[[["identity","inloop"],["mktokil","space","$break"]],[["not","upbody"],["mktokil","space","${ }"]]],["indentadj",-1]],["function","mkitems",["upbody","didif","inloop","false","item","fitem","ffitem","fffitem"],[["empty","upbody"]],["set.",["deref",[".","sink","tuplemap"],"upbody"],["`","bp"],"true"],["=","item",["car","upbody"]],["=","fitem",["car","item"]],["=","ffitem",["car","fitem"]],["=","fffitem",["car","ffitem"]],["debugExbody","$mkitems 0","item","$|","fitem","$|","ffitem","$|","fffitem","$>",["cdr","upbody"]],[[["and","didif",["or",["atom","item"],["atom","fitem"],["and",["not",["atom","ffitem"]],["atom","fffitem"]]]],["debugExbody","$mkitems 1","didif"],["nextline"],["mktok","$else"],["mkindented","upbody","false",["&&",["not",["atom","item"]],["not",["atom","fitem"]]]],["=","upbody","false"]],[["or",["atom","item"],["atom","fitem"]],["debugExbody","$mkitems 2"],[[["&&","lastitem",["array","item"]],["mktok","$,"]]],["nextline"],["exoutput","item","upbody",0,0,"true"]],[["atom","ffitem"],["debugExbody","$mkitems 3","didif","inloop",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]],["mkiftest",["car","item"],"didif"],["mkindented",["cdr","item"],"inloop",["&&",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]]],["=","didif",["not","inloop"]]],["mkiftest",["caar","item"],"didif"],["debugExbody","$mkitems 4",["cdar","item"],"$|",["cadr","item"],"$|",["caadr","item"]],["mkindented",["cdar","item"],"false",["tuple",["&&",["caaar","item"],["tuple",["cadr","item"]]]]],["mkitems",["cdr","item"],"true","false"],["=","didif","false"]],["=","lastitem","item"],["mkitems",["cdr","upbody"],"didif","inloop"]],["=","startin",[".","sink","incol"]],["debugExbody","$=====","upbody","nobrace"],[["identity","nobrace"],["indentadj",1],["mkitems","upbody","false","inloop"],["indentadj",-1]],["braceOpen"],["mkitems","upbody","false","inloop"],["braceClose",["&&",["==",[".","sink","procnesting"],1],[".","sink","endprocNL"]]]],["=","hookif",{dictionary:{$parens:"parens",$spaces:"spaces",$mktok:"mktok",$mktokil:"mktokil",$nextline:"nextline",$indentadj:"indentadj",$grammar:"grammar",$exlist:"exlist",$exannotation:"exannotation",$exoutput:["function","lambda",["expr","owner","rbp","lbp","spaceout"],[[["not","owner"],["=","owner","owntuple"]]],["exoutput","expr","tuple","rbp","lbp","spaceout"]],$exbody:["function","lambda",["upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"-",1]]}}],["function","uhookproc",["lex1","proctype","false","data","fname","fbind"],["preadjust",[".","sink","procnesting"],"+",1],["=","fname",["car","lex1"]],[[["&&",["not",[".","options","noComments"]],["not",[".","sink","maproot"]],["deref",["@","fname"],["`","\\.sourcemap"]]],["set.","sink",["`","maproot"],["cons","proctype","lex1"]]]],["=","fbind","lex1"],["mktok",["tostring","proctype",{dictionary:{$noquote:"true"}}]],["mktok","space"],[[["not",["lambda","fname"]],["exoutput","fname","lex1",0,0,"true"]]],["=","parms",["cadr","fbind"]],[[["identity","parms"],[["atom","parms"],["mktok","space","parms"]],["exlist","parms",["cdr","fbind"],"true"]],["mktok","$(","$)"]],["exbody",["cddr","fbind"]],[[["deref",["@","fname"],["`","\\.lingoInit"]],["mktok","$(","$)"]]],[[["and",[">",[".","sink","procnesting"],1],[".","sink","endprocNL"]],["nextline"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhook`",["lex1","lop1","false","ex1"],["parens","$("],["mktok","lop1"],["=","ex1",["car","lex1"]],[[["atom","ex1"],["exoutput","ex1","owntuple",0,0]],["exlist","ex1"]],["parens","$)"],"true"],["function","uhook=",["lex1","lop1"],["parens","$("],[[["tuple",["car","lex1"]],["mktok","quote"]]],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","lop1","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0,"true"],["parens","$)"],"true"],["function","uhookpreadjust",["lex1","lop1","false","target","adjuster","value"],["parens","$("],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[[["==","value",1],["mktok","adjuster","adjuster"],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]]],["exoutput","target","owntuple",0,["deref",[".","grammar","left"],["`","="]]],["mktok","space","adjuster",["`","="],"space"],["exoutput","value","expr",["deref",[".","grammar","right"],["`","="]],0]],["parens","$)"],"true"],["function","uhookpostadjust",["lex1","lop1","false","target","adjuster","value"],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[["==","value",1],["parens","$("],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]],["mktok","adjuster","adjuster"],["parens","$)"],"true"]],["function","uhookbreco",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$:",["tostring",["car","lex1"],{dictionary:{$quote:"true",$nonamespace:"true"}}]]],["mktok","lop1"],"true"],["function","uhookreturn",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","$)"]],["mktok","lop1"],"true"],["function","uhookcond",["lex1","lop1"],["mktok","lop1","$("],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1"],["preadjust",[".","sink","procnesting"],"-",1],["mktok","$)"],"true"],["function","uhookloop",["lex1","lop1","false","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1","true",["not",["cdr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookwhile",["lex1","lop1","false","flex","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["=","flex",["car","lex1"]],[[["==",["caar","flex"],["`","not"]],["exoutput",["cadar","flex"],"owntuple",0,0,"true"]],["exoutput","flex","owntuple",0,0,"true"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["cdr","lex1"],"true",["not",["cddr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookfor",["lex1","lop1","false","flex","looptag","targex","varex","upbody"],["=","flex",["car","lex1"]],["=","looptag",[".",[".","flex",4],1]],["=","targex",[".",[".",[".","flex",3],2],1]],["=","varex",[".",[".",[".",[".","flex",3],2],2],1]],["=","upbody",[".",[".","flex",4],-4]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["exoutput","varex","owntuple",0,0,"true"],["mktok","space","$in","space"],["exoutput","targex","owntuple",0,0,"true"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","true",["not",["cdr","upbody"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookcall",["lex1","lop1","false","callee"],["=","callee",["car","lex1"]],["set.","sink",["`","endprocNL"],"false"],["preadjust",[".","sink","procnesting"],"+",1],["lprAdjust","uhookProc",1],[[["procedure","callee"],["exoutput","callee","owntuple",0,0],["mktokil","space","$("]],["mktokil","lop1","$("],["exoutput","callee","owntuple",0,0],[["not",["empty",["cdr","lex1"]]],["mktok","$,","space"]]],["set.","sink",["`","endprocNL"],"true"],["=","lex1",["cdr","lex1"]],["loop","false",[["empty","lex1"]],["exoutput",["pop","lex1"],"owntuple",0,0],[["empty","lex1"]],["mktok","$,","space"]],["mktokil","$)"],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookquotient",["lex1","lop1","false","op"],[[["==",["deref",[".","grammar","infix"],["`","/"]],["deref",[".","grammar","infix"],["`","/."]]],["=","op",["`","/"]]],["=","op",["`","/."]]],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","op","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"op"],0,"true"],["parens","$)"],"true"],["function&","uhookcatch",["lex1","lop1"],["set.","sink",["`","endprocNL"],"false"],["mktok","$try"],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["car","lex1"]],[[["not",["second","lex1"]]],["nextline"],["mktok","$catch"],["exbody",["second","lex1"]]],[[["not",["third","lex1"]]],["nextline"],["mktok","$finally"],["exbody",["third","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],["set.","sink",["`","endprocNL"],"true"],"true"],["function","uhook.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["second","lex1"],"owntuple",0,0],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookset.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["cadadr","lex1"],"owntuple",0,0],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookset[",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["||",["empty","expr"],["getproc",["car","expr"]]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["empty","expr"]],["mktok","$,"]]],["mktok","$]"]],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookderef",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["==","lop1",["`","deref"]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["atom","expr"]],["mktok","$,"]]],["mktok","$]"]],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookref*",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0],["mktok","lop1"],["parens","$)"],"true"],["function","uhooknot",["lex1","lop1"],[[["==",["caar","lex1"],["`","=!"]],["return",["uhook=",["cdar","lex1"],["`","=!"]]]]],["parens","$("],["mktok","$!"],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","right"],"lop1"]],["parens","$)"],"true"],["function","uhookbang",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","postleft"],"lop1"]],["mktok","$!"],["parens","$)"],"true"],["function","commentInject",["comments","false","newrows","readx","added","acom","type","textlines","text","col"],["function","addcol",["row","str","col"],[".","row","push",[{dictionary:{$str:"str",$column:"col"}}]],"row"],["=","newrows",{array:[]}],["=","readx",0],["=","added",0],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","type",[".","acom",2]],["=","col",[".","acom",1]],["=","textlines",[".",[".","acom",3],"split",["$\n"]]],["while","false",[["not",[">",[".","textlines","length"],0]]],["=","text",[".","textlines","shift","false"]],[[["not",[".","acom",0]],[".","newrows","push",[["addcol",{array:[]},"text",[".","acom",1]]]],["preadjust","added","+",1]],["while","false",[["not",["&&",["<",[".","newrows","length"],["+",[".","acom",0],"added"]],["<","readx",[".",[".","sink","rowtokens"],"length"]]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],[[["||",["<=","type",0],[">=","readx",[".",[".","sink","rowtokens"],"length"]]],[".","newrows","push",[["addcol",{array:[]},"text","col"]]],["preadjust","added","+",1]],[[["<","col",[".","options","commentCol"]],["=","col",[".","options","commentCol"]]]],[".","newrows","push",[["addcol",["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]],"text","col"]]],["=","type",0]]]]]]],["while","false",[["not",["<","readx",[".",[".","sink","rowtokens"],"length"]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],["set.","sink",["`","rowtokens"],"newrows"],["set.","sink",["`","row"],[".","newrows","length"]]],["function","commentMap",["false","locmap","nodecount","sourcemap","output","acom","nodeloc"],["function","remap",["expr","nodeloc"],[["atom","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","nodeloc","first"]]]],["=","nodeloc",["deref",[".","sink","tuplemap"],"expr"]],["remap",["car","expr"],"nodeloc"],[["cdr","expr"],["remap",["cdr","expr"],"nodeloc"]]],[[["not",[".","sink","maproot"]],["return","false"]]],["=","locmap",{array:[]}],["=","nodecount",0],["remap",[".","sink","maproot"]],["=","sourcemap",["deref",["@",[".",[".","sink","maproot"],1]],["`","\\.sourcemap"]]],[[["!=",[".","sourcemap","count"],"nodecount"],["debuglog",[".","$sourcemap mismatch in ","concat",[[".",[".","sink","maproot"],1],"$: "]],"nodecount","$vs",[".","sourcemap","count"]]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sourcemap","comments"],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","nodeloc",["deref","locmap",[".","acom",0]]],[".","output","push",[["list",[".","nodeloc",0],[".","nodeloc",1],[".","acom",1],[".","acom",2]]]]]]],"output"],["function","indextuples",["false","remaining"],["function","enqueue",["expr","false","node"],[["atom","expr"],"expr"],["=","node",{dictionary:{$tuple:"expr",$sink:"sink"}}],[".",[".","sink","mirrors"],"push",["node"]],[".","remaining","push",["node"]],["set[",[".","sink","tuplemap"],"expr","node"]],["function","dequeue",["false","node"],["while","false",[["not",[">",[".","remaining","length"],0]]],["=","node",[".","remaining","pop","false"]],["set.","node",["`","car"],["enqueue",["car",[".","node","tuple"]]]],["set.","node",["`","cdr"],["enqueue",["cdr",[".","node","tuple"]]]]]],["=","remaining",{array:[]}],["set.","sink",["`","mirrors"],{array:[]}],["set.","sink",["`","tuplemap"],["new","weakmap"]],["set.","sink",["`","mirroroot"],["enqueue","origexpr"]],["dequeue"]],["function","tuplelocupdate",["false","tuplex","data","rowdex","col","nodemap"],["function","childloc",["node","false","ex1","lex1","loc","retloc"],[[["deref","nodemap","node"],["return",["deref","nodemap","node"]]]],["set[","nodemap","node","true"],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],["=","ex1",[".","lex1","car"]],[[["eq",[".","ex1","sink"],"sink"],["=","loc",["childloc","ex1"]]],["=","loc","false"]],[[["identity","loc"],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","loc","first"]],["set.","lex1",["`","last"],[".","loc","last"]]],["set.","lex1",["`","first"],["earlier",[".","loc","first"],[".","lex1","first"]]],["set.","lex1",["`","last"],["later",[".","loc","last"],[".","lex1","last"]]]]]],[[["not","retloc"],["=","retloc",{dictionary:{$first:[".","lex1","first"],$last:[".","lex1","last"]}}]],[[[".","lex1","first"],["set.","retloc",["`","first"],["earlier",[".","lex1","first"],[".","retloc","first"]]],["set.","retloc",["`","last"],["later",[".","lex1","last"],[".","retloc","last"]]]]]],["=","lex1",[".","lex1","cdr"]]],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","retloc","first"]],["set.","lex1",["`","last"],[".","retloc","last"]]]],["=","lex1",[".","lex1","cdr"]]],["set[","nodemap","node","retloc"],"retloc"],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],["postadjust","tuplex","+",1]]],["set.","data",["`","first"],"undefined"]],["=","rowdex",0],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],[[["not",[".","data","first"]],["set.","data",["`","first"],["list","rowdex",[".","col","column"]]]]],["set.","data",["`","last"],["list","rowdex",["+",[".","col","column"],["length",[".","col","str"]]]]]]]],["preadjust","rowdex","+",1]],["=","nodemap",["new","weakmap"]],["childloc",[".","sink","mirroroot"]],"true"],["function","indexbps",["false","tuplex","node"],["set.","sink",["`","breaks"],{array:[]}],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","node",["deref",[".","sink","mirrors"],"tuplex"]],[[[".","node","bp"],[".",[".","sink","breaks"],"push",["node"]]]],["preadjust","tuplex","+",1]],[".",[".","sink","breaks"],"sort",[["function","lambda",["a","b"],["=","compare",["<=>",[".",[".","a","first"],0],[".",[".","b","first"],0]]],[[["==","compare",0],["=","compare",["<=>",[".",[".","a","first"],1],[".",[".","b","first"],1]]]]],"compare"]]]],["function","updatecheck",["false","update","comments"],[[["not",[".","sink","tuplemap"]],["set.","sink",["`","rowtokens"],{array:[{array:[]}]}],["indextuples"],["=","update","true"]]],[[["||",["<",[".",[".","sink","rowtokens"],"length"],1],["&&",["==",[".",[".","sink","rowtokens"],"length"],1],["<",[".",["deref",[".","sink","rowtokens"],0],"length"],1]]],["exoutput","origexpr","origexpr",0,0,"true"]]],[["identity","update"],["tuplelocupdate"],["indexbps"],[[".","sink","maproot"],["=","comments",["commentMap"]],[["identity","comments"],["commentInject","comments"],["tuplelocupdate"]]]]],["set.","unparser",["`","dumptuples"],["function","dumptuples",["false","tuplex","data","count","bp","mismatch","summary"],["updatecheck"],["=","tuplex",0],["debuglog","$=====tuples====="],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],"tuplex"]],[[["eq",["deref",[".","sink","tuplemap"],[".","data","tuple"]],"data"],["=","mismatch","$"]],["=","mismatch","$mismatch"]],[[[".","data","bp"],["=","bp","$bp"]],["=","bp","$ "]],["=","summary",[".",["tostring",[".","data","tuple"]],"substr",[0,80]]],["debuglog",["prepad","tuplex",4],["prepad",[".","data","first"],9],["prepad",[".","data","last"],9],"bp","mismatch","summary"],["preadjust","tuplex","+",1]]]],["set.","unparser",["`","dumptokens"],["function","dumptokens",["false","rowdex","data","summary","col"],["updatecheck"],["=","rowdex",0],["debuglog","$=====tokens====="],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["debuglog","$row","rowdex"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],["=","summary",[".",["tostring",[".","col","tuple"]],"substr",[0,80]]],["debuglog",["prepad",[".","col","column"],6],["prepad",[".","col","str"],9],"$ ","summary"]]]],["preadjust","rowdex","+",1]]]],["set.","unparser",["`","breakpoints"],["function","breakpoints",["false","result","data"],["updatecheck"],["=","result",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[".","result","push",[{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]],"result"]],["set.","unparser",["`","findbreak"],["function","findbreak",["location","false","data"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[[["&&",["<=",["car","location"],["car",[".","data","first"]]],["||",["not",["second","location"]],["<=",["second","location"],["second",[".","data","first"]]]]],["return",{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtoken"],["function","findtoken",["location","false","rowdex","col"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],["car","location"]],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["||",["not",["second","location"]],["&&",[">=",["second","location"],[".","col","column"]],["<",["second","location"],["+",[".","col","column"],["length",[".","col","str"]]]]]],["return",{dictionary:{$first:[".","col","column"],$last:["+",[".","col","column"],["length",[".","col","str"]]],$str:[".","col","str"],$symbol:[".","col","symbol"],$tuple:[".","col","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtuple"],["function","findtuple",["expr","false","data"],["updatecheck"],["=","data",["deref",[".","sink","tuplemap"],"expr"]],[["identity","data"],{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]],["set.","unparser",["`","setmarks"],["function","setmarks",["dict","false","mark","marklen"],["set.","sink",["`","maxmarklen"],0],["set.","sink",["`","markdict"],"dict"],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","mark"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","mark",[".","iter","$value"]],["=","marklen",[".",["tostring",["deref","dict","mark"]],"length"]],[[["<",[".","sink","maxmarklen"],"marklen"],["set.","sink",["`","maxmarklen"],"marklen"]]]]]]]],["set.","unparser",["`","string"],["function","string",["firstloc","lastloc","soptions","false","rowdex","row","col","found","outstr","colpos","lineno","linepad"],["updatecheck"],[[["numeric",[".","soptions","lineNumbers"]],["=","lineno",["toint",[".","soptions","lineNumbers"]]],["=","linepad",["length",["+",["+",["tostring",["+","lineno",[".",[".","sink","rowtokens"],"length"]]],[".","sink","maxmarklen"]],1]]]]],[[["dictionary","firstloc"],["=","lastloc",[".","firstloc","last"]],["=","firstloc",[".","firstloc","first"]]]],[[["identity","firstloc"],[[["not",["apply","numeric","firstloc"]],["return","false"]]],["=","rowdex",["car","firstloc"]],[["identity","lineno"],["preadjust","lineno","+","rowdex"]]],["=","rowdex",0]],["=","found",["not",["&&","firstloc",["second","firstloc"]]]],[[["&&","lastloc",["not",["apply","numeric","lastloc"]]],["return","false"]]],["loop","false",[["||",[">=","rowdex",[".",[".","sink","rowtokens"],"length"]],["&&","lastloc",[">","rowdex",["car","lastloc"]]]]],["=","row",["deref",[".","sink","rowtokens"],"rowdex"]],[[["identity","outstr"],["=","outstr",[".","outstr","concat",["$\n"]]]],["=","outstr","$"]],[[["identity","lineno"],["=","outstr",[".","outstr","concat",[["prepad",["postadjust","lineno","+",1],"linepad"],"$ "]]],[[".","sink","maxmarklen"],[["deref",[".","sink","markdict"],"lineno"],["=","outstr",[".","outstr","concat",[["deref",[".","sink","markdict"],"lineno"],"$ "]]]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["+",[".","sink","maxmarklen"],1]]]]]]]]],["=","colpos",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not","found"],["=","colpos",["second","firstloc"]],[[["<=",["+",[".","col","column"],["length",[".","col","str"]]],["second","firstloc"]],["continue"]]],["=","found","true"]]],[["&&","lastloc",["second","lastloc"],[">=","rowdex",["car","lastloc"]],[">=",[".","col","column"],["second","lastloc"]]]],[[["<","colpos",[".","col","column"]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["-",[".","col","column"],"colpos"]]],[".","col","str"]]]]],["=","outstr",[".","outstr","concat",[[".","col","str"]]]]],["=","colpos",["+",[".","col","column"],["length",[".","col","str"]]]]]]],["preadjust","rowdex","+",1]],"outstr"]],"unparser"]),e._AddPropertyList("LingoUnparseInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoUnparseInit",["function","LingoUnparseInit",["false","manifest"],["=","manifest",["`",["LingoPrinter","LingoUnparser","LingoUnparseInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Unparse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Printer"],"LingoPrinter"],["set.",[".","modobj","exports"],["`","LingoUnparser"],"LingoUnparser"]]]]]),e._Execute(["LingoUnparseInit"]),e._SetNamespace(t.slice(1),!0),e._SetNamespace("CLI"),e._Execute([".",[".","Naan","module"],"letinherit",["$Lang_Lingo"]]),e._SetBindingList("Utils",["closure","Utils",["options","false","utils","registry","upcache"],["=","utils",["new","object","this"]],[[["not","options"],["=","options",{dictionary:{}}]]],[[["not",[".","options","cacheSize"]],["set.","options",["`","cacheSize"],50]]],["=","registry",[".",[".",[".",["modlist"],"Lib"],"exports"],"Registry"]],["set.","utils",["`","calculateDialects"],["function","calculateDialects",["expr","false","nsmap","nslist","ns","dialect","langs"],["function","travProc",["trav"],[[["&&",["symbol","trav"],"trav"],[[["not",["deref","nsmap",[".","trav","namespace"]]],["push",[".","trav","namespace"],"nslist"],["set[","nsmap",[".","trav","namespace"],"true"]]],["return"]]],["while","false",[["not",["tuple","trav"]]],["travProc",["car","trav"]],["=","trav",["cdr","trav"]]]],["=","nsmap",["new","weakmap"]],["travProc","expr"],["for",["let","lambda",["iter"],["=","iter",["iterate","nslist",["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],["=","dialect",[".","registry","findNamespace",["ns"]]],[[["&&","dialect",["not",["member","dialect","langs"]]],["push","dialect","langs"]]]]]],"langs"]],["set.","utils",["`","unparseInfo"],["function","unparseInfo",["expr","false","up"],[[["not","upcache"],["=","upcache",["new","nonce"]],["set.","upcache",["`","map"],["new","weakmap"]],["set.","upcache",["`","lru"],{array:[]}]],["=","up",["deref",[".","upcache","map"],"expr"]],[["&&","up",["!==",["deref","lru",["-",[".","lru","length"],1]],"up"]],["set.","upcache",["`","lru"],[".",[".","upcache","lru"],"filter",[["function","lambda",["entry"],["!==","entry","up"]]]]],[".",[".","upcache","lru"],"push",["up"]]]],[[["not","up"],["=","up",{dictionary:{$expression:"expr",$dialects:[".","utils","calculateDialects",["expr"]]}}],["set.","up",["`","dialect"],[".",[".","up","dialects"],0]],[[["not",[".","up","dialect"]],["set.","up",["`","dialect"],[".","registry","findName",[[".",[".","registry","dialects","false"],0]]]]]],[[[".","up","dialect"],["set.","up",["`","unparser"],[".",[".","up","dialect"],"unparse",["expr"]]]]],["set[",[".","upcache","map"],"expr","up"],[".",[".","upcache","lru"],"push",["up"]],[[">",[".",[".","upcache","lru"],"length"],[".","options","cacheSize"]],["set[",[".","upcache","map"],[".",[".",[".","upcache","lru"],"shift","false"],"expression"],"undefined"]]]],"up"]],["set.","utils",["`","unparser"],["function","unparser",["expr"],[".",["unparseInfo","expr"],"unparser"]]],["set.","utils",["`","sourcelist"],["function","sourcelist",["procdef","start","end","marks","false","up"],["=","up",[".","utils","unparser",["procdef"]]],[".","up","setmarks",["marks"]],[[["identity","start"],["=","start",["list",["-","start",1]]],[[["identity","end"],["=","end",["list",["-","end",1]]]],["=","end","start"]],"else"]],[".","up","string",["start","end",{dictionary:{$lineNumbers:1}}]]]],["set.","utils",["`","symns"],["function","symns",["name","ns","false","sym"],[[["symbol","name"],["return","name"]]],[[["not","ns"],["=","ns",[".",["nsactive"],0]]]],[".","ns","lookup",["name"]]]],["set.","utils",["`","findns"],["function","findns",["nstr","false","ns"],[[["not",["string","nstr"]],["return","nstr"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive","true"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],"false"]],["set.","utils",["`","makeLocation"],["function","makeLocation",["sym","task","false","start"],[[["identity","task"],["=","tuplespec",[".",[".","utils","unparser",[["getproc","sym"]]],"findtuple",["task"]]],["=","start",["+",[".",[".","tuplespec","first"],0],1]]]],["list",[".",[".","sym","namespace"],"tostring"],"sym","start"]]],["set.","utils",["`","resolveLocation"],["function","resolveLocation",["location","symbols","false","path","procname","procsym","ns","procdef"],["function","pathmatch",["parent","path","false","segment"],[[["empty","path"],["return","parent"]]],["=","segment",["tostring",["pop","path"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",["@","parent"],["`","\\.children"]],["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],[[["==",["tostring","child"],"segment"],["return",["pathmatch","child","path"]]]]]]],"false"],["function","findsym",["name"],["for",["let","lambda",["iter"],["=","iter",["iterate","symbols",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["==","sym","name"],["return","sym"]]]]]],"false"],["=","path",[".","location",1]],[[["symbol","path"],["=","procsym","path"]],[[["tuple","path"],["=","procname",["car","path"]]],["=","procname","path"]],["=","procsym",["findsym","procname"]],[[["not","procsym"],[[".","location",0],[[["string",[".","location",0]],["=","ns",[".","utils","findns",[[".","location",0]]]]],["=","ns",[".","location",0]]],["=","procsym",[".","utils","symns",["procname","ns"]]]],["=","procsym",["interned","procname"]]]],[["tuple","path"],["=","procsym",["pathmatch","procsym",["cdr","path"]]]]],["=","procdef",["getproc","procsym"]],[[["||",["not",["tuple","procdef"]],["not",["cdddr","procdef"]]],["=","procdef","false"]]],"procdef"]],["set.","utils",["`","breakLocation"],["function","breakLocation",["location","symbols","false","procdef"],["=","procdef",[".","utils","resolveLocation",["location","symbols"]]],[[["not","procdef"],["return"]]],[[".","location",2],[".",[".",[".","utils","unparser",["procdef"]],"findbreak",[["list",["-",[".","location",2],1]]]],"tuple"]],["cdddr","procdef"]]],["set.","utils",["`","locationString"],["function","locationString",["location","false","output"],[[["symbol",[".","location",1]],["=","output",[".","utils","procname",[[".","location",1]]]]],[["tuple",[".","location",1]],["=","output",[".",["new","array",[".","location",1]],"join",["$."]]]],["=","output",["tostring",[".","location",1]]]],[[[".","location",0],["=","output",[".",[".","location",0],"concat",["$::","output"]]]]],[[[".","location",2],["=","output",[".","output","concat",["$:",[".","location",2]]]]]],[[[".","location",3],["=","output",[".","output","concat",["$:",[".","location",3]]]]]],"output"]],["set.","utils",["`","alignColumns"],["function","alignColumns",["lex1","widths","false","ex1"],["function","calcrow",["row","false","col","coldex"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field"],"length"]],[[["<","width","prev"],["=","width","prev"]]],"width"],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not",["deref","widths","coldex"]],["set[","widths","coldex",0]]],["set[","widths","coldex",["cf","col",["deref","widths","coldex"]]],["preadjust","coldex","+",1]]]]],["=","widths",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","lex1",["`","ex1"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ex1",[".","iter","$value"]],["calcrow","ex1"]]]],"widths"]],["set.","utils",["`","proclist"],["function","proclist",["name","false","result"],["while","false",[["not","name"]],["=","result",["cons","name","result"]],["=","name",["deref",["@","name"],["`","\\.parent"]]]],"result"]],["set.","utils",["`","procname"],["function","procname",["name","false","parent"],[".",[".",[".",["proclist","name"],"toarray"],"map",[["function","lambda",["x"],["tostring","x"]]]],"join",["$."]]]],["set.","utils",["`","procstring"],["function","procstring",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","callstring"],["function","callstring",["proc","dons","false","output","parm","name"],["=","name",["procname",[".","proc",1]]],[[["identity","dons"],["=","name",[".",[".",[".",[".","proc",1],"namespace"],"tostring"],"concat",["$::","name"]]]]],[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],[".","name","concat",["$()"]]],[["atom",[".","proc",2]],[".","name","concat",["space",[".","proc",2]]]],["=","output",[".","name","concat",["$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",[["car","parm"],"$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","getnumargs"],["function","getnumargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["toint",["deref","args",1]]]]],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*:\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["list",["`","range"],["toint",["deref","args",1]],["toint",["deref","args",2]]]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\d+","$g"]]]],[[["identity","args"],["return",["cons",["`","set"],["totuple",[".","args","map",[["function","lambda",["nstr"],["toint","nstr"]]]]]]]]],"false"]],["set.","utils",["`","getnameargs"],["function","getnameargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["return",["deref","args",1]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],[[["identity","args"],["return",["totuple","args"]]]],"false"]],["set.","utils",["`","getprocarg"],["function","getprocarg",["cmdargs","false","args","procpath"],["=","args",[".","cmdargs","match",[["RegExp","$^(\\S*::)?([^\\s:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[["identity","args"],["=","procpath",[".",["deref","args",2],"split",["$."]]],[[["==",[".","procpath","length"],1],["=","procpath",[".","procpath",0]]],["=","procpath",["totuple","procpath"]]],["list",[".",["deref","args",1],"substring",[0,["-",[".",["deref","args",1],"length"],2]]],"procpath",["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",4],"substring",[1]],"trim","false"]]]],"false"]],"utils"]),e._SetBindingList("Info",["closure","Info",["console","false","info"],["=","info",["new","object","this"]],["set.","info",["`","utils"],["Utils"]],["set.","info",["`","options"],{dictionary:{$indent:4,$wrapMinAmount:29,$wrapMaxCol:79,$maxColWidth:60,$maxSymColWidth:40}}],["function","plist",["itemlist","depth","false","item","first","width"],["=","first","$"],["for",["let","lambda",["iter"],["=","iter",["iterate","itemlist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","width",[".",["tostring","item"],"length"]],[[["&&",[">",["+","width",[".",[".","console","printloc","false"],1]],[".",[".","info","options"],"wrapMaxCol"]],[">=",[".",[".","console","printloc","false"],1],[".",[".","info","options"],"wrapMinAmount"]]],[".","console","print",["$,\n"]],["=","first",[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]]],[".","console","print",["first","item"]],["=","first","$, "]]]]],["function","prows",["rows","depth","widths","false","coldex","row"],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[[">",[".","col","length"],["deref","widths","coldex"]],[".","console","print",[[".","col","substring",[0,["-",["deref","widths","coldex"],1]]],"$…","space"]]],[".","console","print",["col",[".","space","repeat",[["+",["-",["deref","widths","coldex"],[".","col","length"]],1]]]]]],["preadjust","coldex","+",1]]]],[".","console","newline","false"]]]]],["function","printmods",["onemod","false","modid"],["function","pexports",["mod","false","xid","maxwidth"],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports:"]],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["symbol",["deref",[".","mod","exports"],"xid"]],[".","console","print",[[".",[".","info","utils"],"procstring",[["getproc",["deref",[".","mod","exports"],"xid"]]]]]]],[".","console","print",[["deref",[".","mod","exports"],"xid"]]]],[".","console","newline","false"]]]]],["function","pcomponents",["mod","false","xid","maxwidth"],["printline",[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components:"],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["not",[".",["deref",[".","mod","components"],"xid"],"manifest"]],[".","console","print",["$<empty manifest>"]]],["plist",[".",["deref",[".","mod","components"],"xid"],"manifest"],3]],[".","console","newline","false"]]]]],["function","pdetailmod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],["pexports","mod"]]],[["\\.*",[".","mod","components"]],["pcomponents","mod"]]],["function","psummarymod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports: "]],["plist",[".","mod","exports"],3],[".","console","newline","false"]]],[["\\.*",[".","mod","components"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components: "]],["plist",[".","mod","components"],3],[".","console","newline","false"]]],[["identity","onemod"],["pdetailmod","onemod"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".",[".","Naan","module"],"modlist","false"],["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["psummarymod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]]]]]],["function","printsyms",["syms","false","sym","rows","row","col","coldex","nprops","bound","widths"],["=","rows",["cons",["list","$symbol","$namespace","$value","$procedure","$attr."]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],["=","bound",["getproc","sym"]],[[["tuple","bound"],["=","bound",["tostring",[".","bound",0]]]],[["not","bound"],["=","bound","$"]]],[[["rest","sym"],["=","nprops",["prepad",["length",["rest","sym"]],3]]],["=","nprops","$"]],["push",["list",["tostring","sym"],["namespace",["namespace","sym"]],["tostring",["car","sym"]],"bound","nprops"],"rows"]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxSymColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxSymColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]],["set.","info",["`","setDefloc"],["function","setDefloc",["location"],["set.","info",["`","defloc"],"location"]]],["function","getDefproc",["cmdargs","nochain","false","location","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","location",[".","info","defloc"]],[["identity","nochain"],["=","location",["list",[".","location",0],["car",[".","location",1]]]]]]],[[["not","location"],["=","location",[".",[".","info","utils"],"getprocarg",["cmdargs"]]]]],[[["not","location"],[".","console","printline",['$error: "',"cmdargs",'$" not a valid procedure specification']],["return"]]],["=","procdef",[".",[".","info","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","cmdargs",[".",[".","info","utils"],"locationString",["location"]]]]],[".","console","printline",['$error: procedure "',"cmdargs",'$" not found']],["return","false"]]],["list","location","procdef"]],["set.","info",["`","infoproc"],["function","infoproc",["cmdargs","false","location","procdef","child"],["=",["location","procdef"],["getDefproc","cmdargs","true"]],[[["not","location"],["return"]]],[".","console","printline",[[".",[".","info","utils"],"locationString",["location"]]]],["=","syms",["reverse",["deref",["@",[".","procdef",1]],["`","\\.children"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],["=","procdef",["getproc","child"]],[[["not","procdef"],["continue"]]],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],[".",[".","info","utils"],"procstring",["procdef"]]]]]]]]],["set.","info",["`","infolist"],["function","infolist",["cmdargs","false","location","procdef","start","end"],["=",["location","procdef"],["getDefproc","cmdargs"]],[[["not","location"],["return"]]],["=","start",[".","location",2]],["=","end",[".","location",3]],[[["&&","start",["not","end"]],["=","end",["+","start",10]]]],[".","console","print",[[".",[".","info","utils"],"sourcelist",["procdef","start","end"]]]]]],["set.","info",["`","infomod"],["function","infomod",["cmdargs","false","modlist","modid","mod"],[[["not","modlist"],["=","modlist",[".",[".","info","utils"],"getnameargs",["cmdargs"]]]]],[["not","modlist"],["printmods"]],[[["string","modlist"],["=","modlist",["list","modlist"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","modlist",["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["=","mod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]],[[["identity","mod"],["printmods","mod"]],[".","console","printline",['$error: module "',"modid",'$" not found']]]]]]]],["set.","info",["`","infofind"],["function","infofind",["cmdargs","false","args","pattern","ns","found"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["=","pattern",["deref","args",1]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],["=","pattern",["deref","args",0]],[["&&",["==",[".","args","length"],3],["==",["deref","args",1],"$in"]],["=","ns",[".",[".","info","utils"],"findns",[["deref","args",2]]]],[["not","ns"],[".","console","printline",['$error: namespace "',["deref","args",2],'$" not found']],["return"]]],[["&&",["==",[".","args","length"],2],["==",["deref","args",1],"$all"]],["=","ns","true"]],[".","console","printline",['$error: cannot interpret "',"cmdargs",'$"']],["return"]],["catch",[[[".","pattern","match",[["RegExp",'$".*"']]],["=","found",["exists",["RegExp",[".","$^","concat",[[".","pattern","slice",[1,-1]],"$$"]]],"ns"]]],["=","found",["exists",["RegExp","pattern","$i"],"ns"]]],[[["."]],[["console"]],[["printline"]],[['$error: regular expression "'],"cmdargs",'$" not valid'],[["return"]]],"false"],[[["==","ns","true"],["=","locstr","$in all namespaces"]],[["identity","ns"],["=","locstr","$in namespace "]],["=","locstr","$in active namespaces"]],[["identity","found"],[[[">",["length","found"],1],[".","console","print",[["length","found"],"$ symbols "]]],[".","console","print",["$one symbol "]]],[".","console","printline",['$matching "',"pattern",'$" ',"locstr","$:"]],["printsyms","found"]],[".","console","printline",['$no symbols match "',"pattern",'$" ',"locstr"]]]],["set.","info",["`","infofutures"],["function","infofutures",["cmdargs","false","pending","rows","row","item","procstr","waiting","waiter","delays","delayms","widths","coldex"],["function","procReference",["procdef","prefix","false","str"],[[["not","prefix"],["=","prefix","$"]]],[["identity","procdef"],[[["&&",["symbol","procdef"],[".","procdef","proc"]],["=","procdef",[".","procdef","proc"]]]],[[["procedure","procdef"],["=","str",[".",[".","info","utils"],"callstring",["procdef","true"]]]],["=","str",[".","procdef","tostring"]]],[".","prefix","concat",["str"]]],"$"],["=","pending",["reverse",["futures"]]],[[["not","pending"],[".","console","printline",["$no futures pending"]],["return"]]],[".","console","printline",[["length","pending"],"$ futures pending:"]],["=","rows",["cons",["list","$start","$count","$delay","$procedures"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","pending",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","procstr",["procReference",[".","item","execute"],"$x "]],["=","waiting",[".","item","waiting"]],[[["==",[".","procstr","length"],0],["=","procstr",["procReference",["pop","waiting"],"$w "]]]],["=","delayms",[".","Math","trunc",[[".","item","delay"]]]],["=","delays",[".","Math","trunc",[["quotient","delayms",1e3]]]],["preadjust","delayms","-",["*","delays",1e3]],["push",["list",[".","item","start"],["prepad",[".","item","count"],4],[".",["tostring","delays"],"concat",["$.",["prepad","delayms",3,"$0"]]],"procstr"],"rows"],["while","false",[["not",["not",["empty","waiting"]]]],["push",["list","$","$","$",["procReference",["pop","waiting"],"$w "]],"rows"]]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]]],"info"]),e._AddPropertyList("CliUtilsInit",[["$.lingoInit","true"]]),e._SetBindingList("CliUtilsInit",["function","CliUtilsInit",["false","manifest"],["=","manifest",["`",["CliUtilsPreload","Utils","Info","CliUtilsInit"]]],[".",[".","Naan","module"],"build",["$CLI","$CliUtils",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Utils"],"Utils"],["set.",[".","modobj","exports"],["`","Info"],"Info"]]]]]),e._Execute(["CliUtilsInit"]),e._SetBindingList("driver_chmods",["function","driver_chmods",["driverob","cmdword","cmdargs"],[".",[".","Naan","module"],"chns",["cmdargs"]]]),e._SetBindingList("driver_debugs",["function","driver_debugs",["driverob","cmdword","cmdargs"],["debugger"]]),e._SetBindingList("driver_helps",["function","driver_helps",["driverob","cmdword","cmdargs","false","text"],["=","text",["call",["let","lambda",["proc"],[["eq","proc","driver_chmods"],"$ /ch[mod] - list modules\n /ch[mod] <module> - change active module\n"],[["eq","proc","driver_debugs"],"$ /d[ebug] - enter debugger\n"],[["eq","proc","driver_helps"],"$ /help - display overall help\n /help <command> - display help for <command>\n"],[["eq","proc","driver_infos"],["return",["driver_infos","driverob","cmdword","$"]]],[["eq","proc","driver_languages"],"$ /dialect - list available dialects\n /dialect <name> - change the CLI dialect\n"],[["eq","proc","driver_list"],"$ /list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["eq","proc","driver_options"],["return",["driver_options","driverob","cmdword","$"]]],[["eq","proc","driver_quit"],"$ /quit - decamp / depart / absquatulate\n"],"$/commands:\n /ch[mod] [<module>] - change active module\n /d[ebug] - enter debugger\n /help [<command>] - help [command]\n /i[nfo] <topic> - info on topic\n /op[tions] - view or modify options\n /quit - decamp / depart / absquatulate\n"],["deref","driverCmds","cmdargs"]]],[".",[".","driverob","console"],"print",["text"]]]),e._SetBindingList("driver_infos",["function","driver_infos",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/info topics:\n /i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n /i[nfo] f(u)tures - show pending futures\n /i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n /i[nfo] (p)rocedure <name> - summarize a procedure\n"]]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","driverob","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","driverob","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","driverob","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","driverob","info"],"infoproc",["cmdargs"]]],[".",[".","driverob","console"],"printline",["$info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("driver_languages",["function","driver_languages",["driverob","cmdword","cmdargs","false","dialob"],[["==","cmdword","$dialect"],[["!=","cmdargs","$"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["cmdargs"]]],[["not","dialob"],[".",[".","driverob","console"],"print",["$unregistered language"]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],[".",[".","driverob","console"],"print",["$language is now ","cmdargs"]]],[".",[".","driverob","console"],"print",["$dialects: ",[".",[".",[".",[".","Naan","runtimelib"],"dialect","false"],"toarray"],"join",["space"]]]]]]),e._SetBindingList("driver_list",["function","driver_list",["driverob","cmdword","cmdargs"],[".",[".","driverob","info"],"infolist",["cmdargs"]]]),e._SetBindingList("driver_options",["function","driver_options",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/options:\n /op[tions] noprompt - turn off command line prompt\n"]]],[["==","cmdword","$noprompt"],[".","driverob","noprompt","false"]]]),e._SetBindingList("driver_quits",["function","driver_quits",["driverob","cmdword","cmdargs"],["return",["`","break"]]]),e._SetValue("driverCmds",{dictionary:{$ch:"driver_chmods",$chmod:"driver_chmods",$d:"driver_debugs",$debug:"driver_debugs",$help:"driver_helps",$i:"driver_infos",$info:"driver_infos",$dialect:"driver_languages",$list:"driver_list",$op:"driver_options",$option:"driver_options",$options:"driver_options",$q:"driver_quits",$quit:"driver_quits"}}),e._SetBindingList("Driver",["closure","Driver",["false","driverob","console","dialob","source","emptyflag","endtoken"],["=","driverob",["new","object","this"]],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","options"],{dictionary:{$prompt:"true"}}],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],["=","emptyflag",{dictionary:{}}],["function","readline",["false","cc","output"],[[["not",[".","console","readchar"]],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]]]],["=","output","$"],["while","false",[["not",["=","cc",[".","console","readchar","false"]]]],["=","output",[".","output","concat",["cc"]]],[[["==","cc","$\n"],["break"]]]],"output"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["function","driverPrompt",["false","prompt"],["catch",[["=","prompt",["strcat",["namespace",["first",["nsactive"]]],"$-lng> "]],["set.",[".","js","p"],["`","$_prompt"],["set.",[".","js","p"],["`","$_initialPrompt"],"prompt"]]],[[["identity","true"],["=","prompt","$lng >"]]],"false"],"prompt"],["function","parseBuffer",["false","result"],[[["not","source"],["return","emptyflag"]]],["catch",[["=","result",[".","driverob","parse",["source"]]],["=","endtoken",[".","source","tokenlast","false"]],[[["==",[".","source","readready","false"],0],["=","source","false"]]],"result"],[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["=","source","false"],"emptyflag"]],"false"]],["function","repl",["false","text","result","expr","cmdword","accum"],["=","driverExecutor","false"],["=","driverConsole","console"],["loop","repl",["catch",[[[["identity","source"],["freshline"],["=","result",["parseBuffer"]],[["eq","result","emptyflag"],["continue"]]],[["not","driverExecutor"],["freshline"],[[[".",[".","driverob","options"],"prompt"],[".","console","print",[["driverPrompt"]]]]],["loop","false",["=","text",["readline"]],[[[">",[".","console","readready","false"],0],["while","false",[["not",[">",[".","console","readready","false"],0]]],["=","text",[".","text","concat",[[".","console","readchar","false"]]]]],["=","source",["new","textstream","text"]],["continue","repl"]]],["=","expr",[".","text","match",[["RegExp","$^/([A-Za-z_]+)\\s*(.*)"]]]],[[["identity","expr"],["=","cmdword",["deref","expr",1]],[[["deref","driverCmds","cmdword"],[["eq",["call",["deref","driverCmds","cmdword"],"driverob","cmdword",["deref","expr",2]],["`","break"]],["break","repl"]]],[".","console","printline",['$driver command "/',"cmdword",'$" not understood']]],["continue","repl"]],[["!=",[".",[".","text","trim","false"],"length"],0],["break"]]]],["loop","false",["=","source",["new","textstream","text"]],["=","result",["parseBuffer"]],[["not",["eq","result","emptyflag"]]],["=","source","false"],["=","accum","text"],["freshline"],[".","console","print",["$>> "]],["=","text",["readline"]],[[["==",[".","text","trim","false"],"$"],[".","console","print",["$command entry canceled"]],["continue","repl"]]],["=","text",[".","accum","concat",["$\n","text"]]]]],[[[".","driverExecutor","display"],[".","console","printline",[[".","driverExecutor","display"]]]]],["=","result",["list","false",[".","driverExecutor","expr"]]],["=","endtoken",{dictionary:{$atom:["`",";"]}}],[[[".","driverExecutor","ending"],["set.","endtoken",["`","atom"],[".","driverExecutor","ending"]]]],["=","driverExecutor","false"]],[[[".","result",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","result",0],["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","driverob","errorstr",["expr"]]]]]]],["=","source","false"]],[["==",[".","endtoken","atom"],["`",";;"]],["\\$",["evalactive",[".","result",1]]]],["\\$",["evalactive",[".","result",1]]],["freshline"],[".","console","print",["$$: "]],[["!=",[".","endtoken","atom"],["`",";>"]],[".","console","print",[[".","driverob","print",["\\$"]]]]],[".","console","printq",["\\$"]]]],[[["==","exception","Driver"]],[["==","exception","driver"],["=","driverExecutor","false"],["=","driverConsole","false"],["throw","driver"]],[["identity","true"],["=","expr",["tostring",["first","exception"]]],[["==","expr","$debugger"],[".","console","printline",["$==> terminated in debugger"]],["=","driverExecutor","false"],["=","driverConsole","false"],["throw",["list","internal","$exit"]]],[["==","expr","$internal"],[".","console","printline",["$==> error: ",["second","exception"]]]],[[["&&",["dictionary","exception"],["==",[".","exception","error"],"$Naan Error"]],["=","expr",["ErrorString","exception"]]],["=","expr","exception"]],[".","console","printline",["$==> exception: ","expr"]]]],"false"]]],["set.","driverob",["`","noprompt"],["function","noprompt","false",["set.",[".","driverob","options"],["`","prompt"],"false"]]],[".","console","printline",["$Starting REPL for Lingo..."]],[".","console","newline",[1]],["repl"]]),e._SetBindingList("driverExec",["function","driverExec",["expr","options"],[[["not","options"],["=","options",{dictionary:{}}]]],["set.","options",["`","expr"],"expr"],[["identity","driverConsole"],["=","driverExecutor","options"],[".","driverConsole","readex",["Driver"]],"true"]]),e._SetBindingList("DriverInstall",["function","DriverInstall",["false","curnsactive"],["=","curnsactive",["nsactive"]],["sudo",["nsactive",["list",[".",["nsactive","true"],1]]]],["copyproc",["compress","$driver"],"Driver"],["sudo",["nsactive","curnsactive"]],["throw",["`","driver"]]]),e._AddPropertyList("DriverInit",[["$.lingoInit","true"]]),e._SetBindingList("DriverInit",["function","DriverInit",["false","manifest"],["=","manifest",["`",["driver_chmods","driver_debugs","driver_helps","driver_infos","driver_languages","driver_list","driver_options","driver_quits","driverCmds","Driver","driverExec","DriverInstall","DriverInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Driver",["function","lambda",["modobj","compobj","false","runtime"],["set.",[".","Naan","runtimelib"],["`","exec"],"driverExec"],[".",[".","Naan","module"],"require",["$Lib/RuntimeLib.nlg"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DriverInstall"],"DriverInstall"]]]]]),e._Execute(["DriverInit"]),e._CopyBinding("Driver","driver"),e._SetBindingList("DebuggerREPL",["closure","DebuggerREPL",["debug","false","commander","console","dialob","lastCmd"],["=","commander",["new","object","this"]],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","commander",["`","parse"],[".","dialob","parse"]],["set.","commander",["`","print"],[".","dialob","print"]],["set.","commander",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","commander",["`","utils"],["Utils"]],["set.","commander",["`","info"],["Info","console"]],["set.","commander",["`","catch"],"true"],["set.","commander",["`","breakpoints"],{dictionary:{}}],["function","frameDict",["frame","false","proctask","location","markdict"],["=","proctask",[".","debug","frameProcTask",["frame"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","frame",3],1],[".","proctask",1]]]],[[[".","location",2],["=","markdict",{dictionary:{}}],["set[","markdict",["+",[".","location",2],1],"$--\x3e"]]],"markdict"],["function","frameProc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".","proctask",1]]]],[".",["tostring",[".",[".","proctask",0],0]],"concat",["space",[".",[".","commander","utils"],"locationString",["location"]]]]]],["function","readline",["crok","false","cc","output"],[[["not",[".","console","readchar"]],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["set.","commander",["`","utils"],["Utils","console"]],["set.","commander",["`","info"],["Info","console"]]]],[[["identity","crok"],["=","output","$"]],["while","false",[["not",["==",["=","cc",[".","console","readchar","false"]],"$\n"]]]],["=","output","cc"]],["while","false",[["not",["&&",["!=",["=","cc",[".","console","readchar","false"]],"$\n"],"cc"]]],["=","output",[".","output","concat",["cc"]]]],"output"],["function","driverprompt",["false","prompt"],["=","prompt",["strcat","$(ndb-",[".","debug","depth","false"],"$) "]],["catch",[["set.",[".","js","p"],["`","$_prompt"],["set.",[".","js","p"],["`","$_initialPrompt"],"prompt"]]],[[["identity","true"]]],"false"],"prompt"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["set.","commander",["`","parseText"],["function","parseText",["cmdargs","false","error","expr"],["catch",[["=","source",["new","textstream",[".","cmdargs","concat",["$ ;"]]]],[".","source","setsymbols",[[".","commander","localist",[["deref",[".","commander","frames"],[".","commander","focus"]]]]]],["=",["error","expr"],[".","commander","parse",["source"]]]],[[["identity","true"]]],"false"],[[["identity","error"],["for",["let","lambda",["iter"],["=","iter",["iterate","error",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","commander","errorstr",["expr"]]]]]]],["=","expr","false"]]],"expr"]],["set.","commander",["`","getprocarg"],["function","getprocarg",["text","false","args","expr","result","location"],["=","args",[".","text","match",[["RegExp","$^([^:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[[["&&",[">",[".","args","length"],1],["=","expr",[".","commander","parseText",[["deref","args",1]]]]],["catch",[["=","result",["eval","expr"]],[["procedure","result"],["=","result",[".","result",1]]],[["symbol","result"],["=","result",[".",[".","result","proc"],1]]],["=","result","false"]],[[["identity","true"],["=","result","false"]]],"false"],[["identity","result"],["=","location",["list",[".",[".","result","namespace"],"tostring"],"result",["toint",[".",[".",["deref","args",2],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]]]]]]],[[["not","location"],["=","location",[".",[".","commander","utils"],"getprocarg",["text"]]]]],"location"]],["function","breakHit",["where","value","false","firstid","procdef","location","entry","result","sourceline"],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]],["=","firstid","bpid"]]]]],[[["not",["deref",[".","commander","breakpoints"],"firstid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","true"]]],["=","entry",["deref",[".","commander","breakpoints"],"firstid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","true"]]]],[".","console","printline",["$Breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",[[".","entry","location"]]],"$ with value ","value"]],[[["not",[".","entry","sourced"]],["set.","entry",["`","sourced"],"true"],[[[".",[".","entry","location"],2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",[[".","entry","procdef"],[".",[".","entry","location"],2],[".",[".","entry","location"],2]]]]],["=","sourceline",["tostring",["car",[".","where","task"]]]]],[".","console","printline",["$ ","sourceline"]]]],"false"],["function","stepHit",["dict","false","procdef","location","sourceline"],["=","procdef",[".","debug","insideProc","false"]],[[["not","procdef"],[".","console","printline",["$Stepped to unknown location: ",[".","dict","task"]]],["return","false"]]],[[["member",[".",[".","procdef",1],"namespace"],[".","debug","nshidden"]],[".","debug","stepup","false"],["return","true"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".","procdef",1],[".","dict","task"]]]],[".",[".","commander","info"],"setDefloc",["location"]],[".","console","printline",["$Stepped to ",[".",[".","commander","utils"],"locationString",["location"]],"$ with value ",[".","dict","value"]]],[[["!=",[".","dict","state"],"$task"],["=","sourceline","$[end of body]"]],[[".","location",2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",["procdef",[".","location",2],[".","location",2]]]]],["=","sourceline","$unknown line"]],[".","console","printline",["$ ","sourceline"]],"false"],["function","exceptionHit",["except","false","exceptstr","proctask","location"],[[["||",["not",[".","commander","catch"]],["&&",["tuple",[".","commander","catch"]],["not",["eval",[".","commander","catch"]]]]],["return","true"]]],["freshline"],["=","exceptstr",[".","debug","startExcept"]],[[["&&",["dictionary","exceptstr"],["==",[".","exceptstr","error"],"$Naan Error"]],["=","exceptstr",["ErrorString","exceptstr"]]]],[".","console","printline",["$==> Entering debugger on exception: ","exceptstr"]],["=","proctask",[".","debug","frameProcTask",["false"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]],[[["&&","proctask","location"],[".","console","printline",[[".",[".","commander","utils"],"locationString",["location"]]]],[[".","location",2],[".","console","printline",["$ ",[".",[".","commander","utils"],"sourcelist",[[".","proctask",0],[".","location",2],[".","location",2]]]]]]]],"false"],["set.","commander",["`","updateDefproc"],["function","updateDefproc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]]]],[".",[".","commander","info"],"setDefloc",["location"]]]],["function","findCommand",["text","false","cmd","found"],[["deref","debugCmds","text"],"text"],["for",["let","lambda",["iter"],["=","iter",["iterate","debugCmds",["`","cmd"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","cmd",[".","iter","$value"]],[[[".","cmd","startsWith",["text"]],[["identity","found"],["return","false"]],["=","found","cmd"]]]]]],"found"],["set.","commander",["`","entering"],["function","entering","false",["textstreams",["`",["false","false"]]]]],["set.","commander",["`","pauser"],["function","pauser",["entry","arg1","arg2","arg3","false","cmd","cmdword","proc1"],["updateDefproc","false"],[[["==","entry","$startpause"],[[["atom","arg1"],[".","console","printline",["$can't debug atoms like: \"","arg1",'$"']],["return"]]],["freshline"],[".","console","printline",["$debugger paused before eval: ","arg1"]]],[["==","entry","$breakpoint"],[["breakHit","arg1","arg2"],["return"]]],[["==","entry","$steptrap"],[["stepHit","arg1"],["return"]]],[["==","entry","$startfail"],["freshline"],[".","console","printline",["$debugger could not pause before eval"]]],[["==","entry","$escape"],[".","console","printline",["$^C"]]],[["==","entry","$exception"],[["exceptionHit","arg1"],["return"]]],[["==","entry","$"]],["freshline"],[".","console","printline",['$debugger entry type "',"entry",'$" not known']]],["set.","commander",["`","frames"],{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","debug","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","proc1","true"]]],[[["&&",["!=",[".","frame",0],["`","body"]],["||",["not","proc1"],["!=",[".","frame",0],["`","loop"]]]],[".",[".","commander","frames"],"push",["frame"]]]]]]],["set.","commander",["`","focus"],0],[".","console","readex",["false"]],["loop","false",["catch",[["freshline"],[".","console","print",[["driverprompt"]]],["=","cmd",["readline","true"]],["=","cmd",[".","cmd","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],[[["not","cmd"],[[["||",["not","lastCmd"],["not",["eq",["deref","debugCmds",["deref","lastCmd",1]],"debug_execs"]]],["continue"]]],["=","cmd","lastCmd"]]],["=","lastCmd","cmd"],["=","cmdword",["findCommand",["deref","cmd",1]]],[[["deref","debugCmds","cmdword"],[["eq",["call",["deref","debugCmds","cmdword"],"cmdword",["deref","cmd",2],"commander","debug"],["`","break"]],["return"]]],[".","console","printline",['$debugger command "',["deref","cmd",1],'$" is undefined or ambiguous']]]],[[["==","exception","DebuggerREPL"],["return","false"]],[["!=","exception","debugger"],[".","console","printline",["$debugger caught: ","exception"]],"false"]],"false"]]]],["set.","commander",["`","endPauser"],["function","endPauser","false",[".","console","readex",["DebuggerREPL"]]]],["set.","commander",["`","procstring"],["function","procstr",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","commander",["`","localist"],["function","localist",["frame","false","symbols"],[[["not",["procedure","frame"]],["return","false"]]],["call",["function","scope",["parent","false","lex1","ex1","proc"],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["push","lex1","symbols"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["identity","ex1"],["push","ex1","symbols"]]]]],["push","parent","symbols"],["=","lex1",["deref",["@","parent"],["`","\\.children"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&","ex1",["not",["member","ex1","symbols"]]],["push","ex1","symbols"]]]],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[".",[".","frame",3],1]],["reverse","symbols"]]],["set.","commander",["`","exprstr"],["function","exprstr",["expr","false","condexpr"],[[["not","expr"],["return","$"]]],["=","condexpr",[".",[".","commander","utils"],"sourcelist",["expr"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$^ *\\d+","$mg"],"$"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$[\\s\\n\\r]{2,}","$mg"],"$ "]]],[".","condexpr","trim","false"]]],["set.","commander",["`","printlocals"],["function","printlocals",["frame","uopts","false","uopt","widths","header","begun"],["=","options",{dictionary:{$indent:4,$header:"false",$parents:"true",$trim:"false",$maxstr:30}}],["for",["let","lambda",["iter"],["=","iter",["iterate","uopts",["`","uopt"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","uopt",[".","iter","$value"]],["set[","options","uopt",["deref","uopts","uopt"]]]]],["=","header",["list","$symbol","$value","$previous"]],["function","calc1",["lex1","false","ex1","width"],["function","calcitem",["item"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field",{dictionary:{$quote:"true"}}],"length"]],[[[">","width",[".","options","maxstr"]],["=","width",[".","options","maxstr"]]]],[[["<","width","prev"],["=","width","prev"]]],"width"],["set[","widths",0,["cf",["first","item"],["deref","widths",0]]],["set[","widths",1,["cf",["second","item"],["deref","widths",1]]],[["cddr","item"],["set[","widths",2,["cf",["third","item"],["deref","widths",2]]]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","widths"],["=","widths",{array:[0,0,0]}],[[".","options","header"],["calcitem","header"]]]],["calcitem","ex1"]]]]],["function","print1",["lex1","nameline","false","ex1"],["function","printitem",["item"],["function","pf",["field","width","false","fwidth"],["=","field",["tostring","field",{dictionary:{$quote:"true"}}]],["=","fwidth",[".","field","length"]],[[[">","fwidth",[".","options","maxstr"]],["=","fwidth",[".","options","maxstr"]],["=","field",[".","field","substring",[0,"fwidth"]]]]],[".","console","print",["field",[".","space","repeat",[["-","width","fwidth"]]]]]],[".","console","print",[[".","$ ","repeat",[[".","options","indent"]]]]],["pf",["first","item"],["deref","widths",0]],[".","console","print",["$ "]],["pf",["second","item"],["deref","widths",1]],[[["&&",["cddr","item"],[">",["deref","widths",2],0]],[".","console","print",["$ "]],["pf",["third","item"],["deref","widths",2]]]],[".","console","newline","false"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","begun"],[[[".","options","header"],["printitem","header"],["printitem",["list",[".","$-","repeat",[["deref","widths",0]]],[".","$-","repeat",[["deref","widths",1]]],[".","$-","repeat",[["deref","widths",2]]]]]]],["=","begun","true"]]],[[["identity","nameline"],[".","console","printline",["nameline"]],["=","nameline","false"]]],["printitem","ex1"]]]]],["function","printer",["false","procsym","procname","parent","proc","params","parents"],["calc1",["third","frame"]],["=","procsym",[".",[".","frame",3],1]],["=","parent",["deref",["@","procsym"],["`","\\.parent"]]],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["=","params",["push",["list","lex1",["first","lex1"]],"params"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&",[".","options","trim"],["not",["within","ex1",[".","frame",3]]]],["continue"]]],[[["identity","ex1"],["push",["list","ex1",["first","ex1"]],"params"]]]]],["calc1","params"],["push","params","parents"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]],["=","parents",["reverse","parents"]],["push",["third","frame"],"parents"],["=","parent","procsym"],["while","false",[["not","parent"]],[[["identity","begun"],["=","procname","$"]],["=","procname",[".","procname","concat",["$\n"]]]],["=","proc",["getproc","parent"]],["=","procname",[".","procname","concat",[["first","proc"],"space",["tostring",["namespace","parent"]],"$::",[".","debug","procname",["parent"]]]]],["print1",["pop","parents"],"procname"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[["procedure","frame"],["printer"]]]],["set.","commander",["`","printframe"],["function","printframe",["frame","false","procstr"],["function","printparms",["lex1","false","ex1"],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[".","console","print",["$ ",["first","ex1"],"$: ",["second","ex1"],"$ (",["third","ex1"],"$)"]],[".","console","newline","false"]]]]],[["member",["first","frame"],["`",["let","let","&"]]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","printparms",[["third","frame"]]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","builtin"]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","print",[["second","frame"]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","interrupt"]],[".","console","print",[["first","frame"],"$ ",["third","frame"],"$ in ",["second","frame"]]],[".","console","newline","false"],[".","console","print",["$exec: ",[".","frame",3]]],[".","console","newline",[2]]],[["procedure","frame"],[".","commander","printlocals",["frame",{dictionary:{$trim:"true"}}]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","catch"]],[".","console","print",[["first","frame"]]],["=","procstr",["frameProc","frame"]],[[["identity","procstr"],[".","console","newline","false"],[".","console","print",["procstr"]]]],[".","console","newline",[2]]],[".","console","print",["$frame type:",["first","frame"]]],[".","console","newline",[2]]]],["set.","commander",["`","printframedivider"],["function","printframedivider",["frameno","false","header","trailer"],["=","header",[".","$============ Frame #","concat",["frameno","$ ==========="]]],["=","trailer","$================================"],[["not","frameno"],[".","console","printline",["trailer"]]],[".","console","printline",[[".","header","slice",[["length","frameno"]]]]]]],["set.","commander",["`","breakGlobalEnable"],["function","breakGlobalEnable",["enable"],[".","debug","breakGlobalAble",["enable"]]]],["set.","commander",["`","breakAdd"],["function","breakAdd",["location","expr","false","task","firstid","bpdict","procdef","exprstr"],["=","procdef",[".",[".","commander","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find procedure ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],[[["not",[".","location",0]],["=","location",["cons",[".",[".",[".","procdef",1],"namespace"],"tostring"],["cdr","location"]]]]],[[["not",["integer",[".","location",2]]],["=","location",["list",[".","location",0],[".","location",1],1]]],[[".","location",3],["=","location",["list",[".","location",0],[".","location",1],[".","location",2]]]]],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],[".","console","printline",["$ndb: can't find location ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],[".","console","printline",["$ndb: breakpoint ","bpid","$ already exists"]],["return","false"]]]]]],["=","bpdict",["breakpoint","task"]],[[["identity","bpdict"],[["eq",[".","bpdict","proc"],[".","debug","debugBlock"]],[".","console","printline",["$ndb: warning: closure breakpoints would conflict"]],["return","false"]],[".","console","printline",["$ndb: warning: overwriting breakpoint from different debugger"]]]],["=","bpdict",["breakpoint","task",[".","debug","debugBlock"]]],[[["not","bpdict"],[".","console","printline",["$ndb: cannot add that breakpoint"]],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","commander","breakpoints"],"firstid",{dictionary:{$location:"location",$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],[[["identity","expr"],["=","exprstr","$ (conditional)"]],["=","exprstr","$"]],[".","console","printline",["$breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",["location"]],"exprstr"]],[[["not",[".","debug","bpenable"]],[".","console","printline",["$ndb: warning: breakpoints currently disabled"]]]],"firstid"]],["set.","commander",["`","breakClear"],["function","breakClear",["location","false","task"],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],["return","false"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],["breakpoint","task","undefined"],[".","console","printline",["$breakpoint ","bpid","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],"$ cleared"]],["set[",[".","commander","breakpoints"],"bpid","undefined"],["return"]]]]]],[".","console","printline",["$ndb: breakpoint not found for ",[".",[".","commander","utils"],"locationString",["location"]]]]]],["set.","commander",["`","breakDelete"],["function","breakDelete",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]],["return","false"]]],["breakpoint",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"task"],"undefined"],[".","console","printline",["$breakpoint ","breaknum","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"breaknum"],"location"]]],"$ deleted"]],["set[",[".","commander","breakpoints"],"breaknum","undefined"]]],["set.","commander",["`","breakDisable"],["function","breakDisable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"false"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ disabled"]]]]],["set.","commander",["`","breakEnable"],["function","breakEnable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[["not",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"]],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"true"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ enabled"]]]]],["set.","commander",["`","breakList"],["function","breakList",["false","rows","counts","rowdex","coldex"],[[["==",["length",[".","commander","breakpoints"]],0],[".","console","printline",["$no breakpoints"]],["return"]]],["=","rows",{array:[]}],["=","counts",{array:[]}],["set[","rows",0,{array:["$num","$enable","$count","$location","$condition"]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","rowdex",["+",-1,[".","rows","push",[{array:["bpid","$N",[".",["deref",[".","commander","breakpoints"],"bpid"],"hitcount"],[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],[".","commander","exprstr",[[".",["deref",[".","commander","breakpoints"],"bpid"],"conditional"]]]]}]]]],[[[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"enable"],["set[",["deref","rows","rowdex"],1,"$Y"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],["=","coldex",0],["while","false",[["not",["<=","coldex",4]]],[[["||",["not",["deref","counts","coldex"]],["<",["deref","counts","coldex"],[".",["deref","row","coldex"],"length"]]],["set[","counts","coldex",[".",["deref","row","coldex"],"length"]]]],["preadjust","coldex","+",1]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[["prepad",["deref","row",0],["deref","counts",0]]]],[".","console","print",[["prepad",["deref","row",1],["+",["deref","counts",1],1]]]],[".","console","print",[["prepad",["deref","row",2],["+",["deref","counts",2],1]]]],[".","console","print",["$ ",["deref","row",3],[".","space","repeat",[["-",["deref","counts",3],[".",["deref","row",3],"length"]]]]]],[[["deref","row",4],[".","console","print",["$ ",["deref","row",4]]]]],[".","console","newline","false"],[[[">","coldex",0],["=","coldex",0],[".","console","print",[["prepad","$",["deref","counts",0],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",1],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",2],"$-"]]],[".","console","print",["$ ",[".","$-","repeat",[["deref","counts",3]]]]],[".","console","printline",["$ ",[".","$-","repeat",[["deref","counts",4]]]]]]]]]]]],["=","debugCmds",{dictionary:{$b:"debug_breaks",$break:"debug_breaks",$clear:"debug_breaks",$delete:"debug_breaks",$disable:"debug_breaks",$enable:"debug_breaks",$catch:"debug_exceptions",$c:"debug_execs",$continue:"debug_execs",$f:"debug_execs",$finish:"debug_execs",$n:"debug_execs",$next:"debug_execs",$s:"debug_execs",$step:"debug_execs",$eval:"debug_evals",$p:"debug_evals",$print:"debug_evals",$pp:"debug_evals",$help:"debug_helps",$i:"debug_infos",$info:"debug_infos",$list:"debug_list",$bt:"debug_stacks",$backtrace:"debug_stacks",$frame:"debug_stacks",$scope:"debug_stacks",$up:"debug_stacks",$down:"debug_stacks",$q:"debug_quit",$quit:"debug_quit"}}],"commander"]),e._SetBindingList("debug_breaks",["function","debug_breaks",["cmdword","cmdargs","commander","debug","false","console","args","expr","location","breaknum"],["=","console",[".","commander","console"]],[["==",[".","cmdword","charAt",[0]],"$b"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s+if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","location",[".","commander","getprocarg",[["deref","args",1]]]],["=","expr",[".","commander","parseText",[["deref","args",2]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional breakpoint expression not understood"]]]]],["=","location",[".","commander","getprocarg",["cmdargs"]]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]]],[".","commander","breakAdd",["location","expr"]]],[["==","cmdword","$clear"],["=","location",[".","commander","getprocarg",["cmdargs"]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]],[["numeric",["toint",[".","location",1]]],["return",[".","console","print",["$ndb: please specify a procedure (or use delete <number>)"]]]]],[".","commander","breakClear",["location"]]],[["||",["==","cmdword","$delete"],["==","cmdword","$disable"],["==","cmdword","$enable"]],["=","breaknum",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["||",["==","cmdargs","$"],["==",[".","cmdargs","toLowerCase","false"],"$all"]],[["==","cmdword","$enable"],[".","console","printline",["$breakpoints enabled"]],["return",[".","commander","breakGlobalEnable",["true"]]]],[["==","cmdword","$disable"],[".","console","printline",["$breakpoints disabled"]],["return",[".","commander","breakGlobalEnable",["false"]]]]]],[[["||",["not","breaknum"],["&&",["not",["numeric","breaknum"]],["!=",["pop","breaknum"],["`","set"]]]],["return",[".","console","print",["$ndb: please specify breakpoint number(s)"]]]]],["loop","false",[[["numeric","breaknum"],["=","expr","breaknum"],["=","breaknum","false"]],[["empty","breaknum"],["break"]],["=","expr",["pop","breaknum"]]],[[["==","cmdword","$delete"],[".","commander","breakDelete",["expr"]]],[["==","cmdword","$disable"],[".","commander","breakDisable",["expr"]]],[".","commander","breakEnable",["expr"]]]]]]),e._SetBindingList("debug_exceptions",["function","debug_exceptions",["cmdword","cmdargs","commander","debug","nsteps","false","console","args","expr"],["=","console",[".","commander","console"]],[[["==","cmdargs","$disable"],["set.","commander",["`","catch"],"false"]],[["||",["==","cmdargs","$enable"],["==","cmdargs","$all"]],["set.","commander",["`","catch"],"true"]],[["!=","cmdargs","$"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","expr",[".","commander","parseText",[["deref","args",1]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional catch expression not understood"]]]]]],["set.","commander",["`","catch"],"expr"]]],[["not",[".","commander","catch"]],[".","console","printline",["$exceptions: catch disabled"]]],[["atom",[".","commander","catch"]],[".","console","printline",["$exceptions: catch all"]]],[".","console","printline",["$exceptions: catch if ",[".","commander","exprstr",[[".","commander","catch"]]]]]]),e._SetBindingList("debug_execs",["function","debug_execs",["cmdword","cmdargs","commander","debug","nsteps"],[[["==",[".","cmdword","charAt",[0]],"$c"],[".","debug","resume","false"]],[["==",[".","cmdword","charAt",[0]],"$f"],[".","debug","stepup","false"]],[["==",[".","cmdword","charAt",[0]],"$n"],[".","debug","stepover","false"]],[["==",[".","cmdword","charAt",[0]],"$s"],["=","nsteps",["toint","cmdargs"]],[[["not",["numeric","nsteps"]],["=","nsteps",1]]],[".","debug","step",["nsteps"]]],["return"]],["`","break"]]),e._SetBindingList("debug_evals",["function","debug_evals",["cmdword","cmdargs","commander","debug","false","console","ex1","ex2","aterm","printlevel","result"],["=","console",[".","commander","console"]],["=","ex1",[".","commander","parseText",["cmdargs"]]],[[["==","cmdword","$eval"],["=","ex2",["tokenlast"]],["=","aterm",["atTerminator"]],[["==",["first","ex2"],["`",";"]],["=","printlevel",2]],[["==",["first","ex2"],["`",";>"]],["=","printlevel",1]]],["=","aterm","true"],[["==","cmdword","$pp"],["=","printlevel",2]],[["==",[".","cmdword","charAt",[0]],"$p"],["=","printlevel",1]],["return"]],[["not","aterm"],[".","console","printline",[["langExprLoc","ex2"],"$operator missing between ","ex1","$ and ","ex2"]],[".","console","newline","false"]],["=","result",["eval","ex1"]],[["identity","printlevel"],[".","console","print",["$ result: "]],[[["==","printlevel",2],[".","console","print",[[".","commander","print",["result"]]]]],[".","console","printq",["result"]]],[".","console","newline","false"]]]),e._SetBindingList("debug_helps",["function","debug_helps",["cmdword","cmdargs","commander","debug","false","console","text"],["=","console",[".","commander","console"]],[[["==","cmdargs","$me"],["=","text","$you're beyond it"]],["=","text",["call",["let","lambda",["proc"],[["||",["eq","proc","debug_breaks"],["==","cmdargs","$breakpoints"]],"$ b[reak] <location> - set breakpoint at location\n <location> if function(count, value) { <body> }\n <location> if <expression>\n clear <location> - clear breakpoint at location\n delete <#> [<#>...] - delete breakpoint(s) by #\n disable [<#>] - disable breakpoint # | all\n enable [<#>] - enable breakpoint # | all\n i[nfo] (b)reakpoints - show current breakpoints\n"],[["||",["eq","proc","debug_exceptions"],["==","cmdargs","$exceptions"]],"$ catch enable - catch all exceptions (default)\n catch disable - don't catch any exceptions\n catch if <expr> - catch if <expr> true\n"],[["||",["eq","proc","debug_execs"],["==","cmdargs","$execution"]],"$ c[continue] - continue execution\n f[finish] - finish current procedure\n n[ext] - step over to next expression\n s[tep] - step into next expression\n"],[["||",["eq","proc","debug_evals"],["==","cmdargs","$eval"]],"$ pp <expr> - evaluate expr and pretty-print result\n eval <expr> [;] - (same)\n p <expr> - evaluate expr and print basic result\n eval <expr> ;> - (same)\n eval <expr> ;; - evaluate expr and don't print result\n"],[["eq","proc","debug_helps"],"$ help - list help topics\n help <debug-command> - get specific help on a command\n"],[["||",["eq","proc","debug_infos"],["==","cmdargs","$info"]],"$ i[nfo] - list info topics\n i[nfo] <topic> - print debugger info on topic\n"],[["eq","proc","debug_list"],"$ list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["==","cmdargs","$locations"],"$ [<namespace>::] <procname> [.<procname>...] [: line-number]\n"],[["||",["eq","proc","debug_stacks"],["==","cmdargs","$stacks"]],"$ bt - print backtrace\n backtrace - (same)\n frame <start#> [- <end#>] - display stack frame(s)\n scope <frame#> - change focus frame and display variables\n up - change focus frame higher\n down - change focus frame lower\n"],[["eq","proc","debug_quit"],"$ q[uit] - abandon all execution and restart repl\n"],"$help topics:\n breakpoints - work with breakpoints\n exceptions - work with exceptions\n execution - stepping and continuing execution\n eval - evaluating and printing expressions\n help - using help\n info - print debugger information\n list - list procedure source\n locations - syntax for procedure location references\n stacks - backtrace and stack frame details\n quit - quitting current execution\n"],["deref","debugCmds","cmdargs"]]]],[".","console","print",["text"]]]),e._SetBindingList("debug_infos",["function","debug_infos",["cmdword","cmdargs","commander","debug","false","console","args"],["=","console",[".","commander","console"]],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".","console","print",["$info topics:\n i[nfo] (b)reakpoints - show current breakpoints\n i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n i[nfo] f(u)tures - show pending futures\n i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n i[nfo] (p)roc [<name>] - show information about procedure\n i[nfo] (s)scope [<frame>] - show parameters and locals for frame\n"]]],[["||",["==","cmdword","$b"],["==","cmdword","$breakpoints"]],[".","commander","breakList","false"]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","commander","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","commander","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","commander","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$s"],["==","cmdword","$scope"]],["debug_stacks","$scope","cmdargs","commander","debug"]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","commander","info"],"infoproc",["cmdargs"]]],[".","console","printline",["$ndb: info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("debug_list",["function","debug_list",["cmdword","cmdargs","commander","debug","false","console","procdef","start","end","center","markdict"],["=","console",[".","commander","console"]],[[["&&","cmdargs",["!=","cmdargs","$"]],[".",[".","commander","info"],"infolist",["cmdargs"]],["return"]]],[[["not",[".",[".","commander","info"],"defloc"]],[".","console","printline",["$ndb: nothing to list"]],["return"]]],["=","procdef",[".",[".","commander","utils"],"resolveLocation",[[".",[".","commander","info"],"defloc"]]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find ",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],["return"]]],["=","start",[".",[".",[".","commander","info"],"defloc"],2]],["=","center",20],[[["not","start"],["=","start",1],["=","end","center"]],["preadjust","start","-",["quotient","center",2]],[[["<","start",1],["=","start",1]]],["=","end",["-",["+","start","center"],1]]],[".","console","printline",[[".","procdef",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[[[".",[".",[".","commander","info"],"defloc"],2],["=","markdict",{dictionary:{}}],["set[","markdict",["+",[".",[".",[".","commander","info"],"defloc"],2],1],"$--\x3e"]]],[".","console","print",[[".",[".",[".","commander","info"],"utils"],"sourcelist",["procdef","start","end","markdict"]]]]]),e._SetBindingList("debug_stacks",["function","debug_stacks",["cmdword","cmdargs","commander","debug","false","console"],["=","console",[".","commander","console"]],["function","backtrace",["false","stack","framedex","frame"],["function","paramstr",["frame","false","params","pinfo"],["=","params",[".",[".","frame",3],2]],[["not","params"],["=","pinfo","$()"]],[["atom","params"],["=","pinfo",[".","$ ","concat",[["tostring","params"]]]]],["=","pinfo","false"],["for",["let","lambda",["iter"],["=","iter",["iterate","params",["`","param"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","param",[".","iter","$value"]],[[["not","param"],["push",["`","local"],"pinfo"]],["push","param","pinfo"]]]]],["=","pinfo",["tostring",["reverse","pinfo"]]]],["=","framedex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","finfo",[".","$ ","concat",[["tostring",["namespace",["second","frame"]]],"$::",[".","debug","procname",[[".",[".","frame",3],1]]],["paramstr","frame"]]]]],[["eq",["first","frame"],["`","interrupt"]],["=","finfo",[".","$ ","concat",[["tostring",["third","frame"]]]]]],["=","finfo","$"]],[".","console","printline",[["prepad",["postadjust","framedex","+",1],5],"$ ",["prepad",[".","frame",0],10],"finfo"]]]]]],["function","pscope",["false","nargs","frame"],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["not","nargs"],["=","nargs",[".","commander","focus"]],[".","console","printline",["$Scope is frame #","nargs"]]],[["||",["not",["numeric","nargs"]],[">=","nargs",[".",[".","commander","frames"],"length"]]],[".","console","printline",["$ndb: invalid frame number:","nargs"]],["return"]],[".","console","printline",["$Scope now frame #","nargs"]]],["set.","commander",["`","focus"],"nargs"],["=","frame",["deref",[".","commander","frames"],"nargs"]],[".","commander","updateDefproc",["frame"]],[".","console","printline",[[".","frame",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[".","commander","printlocals",["frame"]]],["function","pframes",["false","nargs","startx","lastx"],["=","startx",["=","lastx",[".","commander","focus"]]],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["numeric","nargs"],["=","startx",["=","lastx","nargs"]]],[["eq",["first","nargs"],["`","range"]],[["<",[".","nargs",1],[".","nargs",2]],["=","startx",[".","nargs",1]],["=","lastx",[".","nargs",2]]],["=","startx",[".","nargs",2]],["=","lastx",[".","nargs",1]]],[["identity","nargs"],[".","console","print",["$ndb: invalid frame number or range:","nargs"]],["return"]]],[["<","startx",[".",[".","commander","frames"],"length"]],[[[">=","lastx",[".",[".","commander","frames"],"length"]],["=","lastx",["-",[".",[".","commander","frames"],"length"],1]]]],["while","false",[["not",["<=","startx","lastx"]]],[".","commander","printframedivider",["startx"]],[".","commander","printframe",[["deref",[".","commander","frames"],["postadjust","startx","+",1]]]]],[".","commander","printframedivider","false"]]],[["||",["==","cmdword","$bt"],["==","cmdword","$backtrace"]],["backtrace"]],[["==","cmdword","$frame"],["pframes"]],[["==","cmdword","$scope"],["pscope"]],[["||",["==","cmdword","$up"],["==","cmdword","$down"]],[[["&&",["==","cmdword","$up"],["<",[".","commander","focus"],["-",[".",[".","commander","frames"],"length"],1]]],[".","console","print",["$+Scope now frame #",["preadjust",[".","commander","focus"],"+",1]]]],[["&&",["==","cmdword","$down"],[">",[".","commander","focus"],0]],[".","console","print",["$-Scope now frame #",["preadjust",[".","commander","focus"],"-",1]]]],["return"]],[".","commander","updateDefproc",[["deref",[".","commander","frames"],"nargs"]]]],[".","console","printline",["$ndb: ","cmdword","$ not implemented yet"]]]),e._SetBindingList("debug_quit",["function","debug_quit",["cmdword","cmdargs","commander","debug"],["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]),e._AddPropertyList("DebuggerInit",[["$.lingoInit","true"]]),e._SetBindingList("DebuggerInit",["function","DebuggerInit",["false","manifest"],["=","manifest",["`",["DebuggerREPL","debug_breaks","debug_exceptions","debug_execs","debug_evals","debug_helps","debug_infos","debug_list","debug_stacks","debug_quit","DebuggerInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Debugger",["function","lambda",["modobj","compobj","false","debug"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebuggerREPL"],"DebuggerREPL"],["=","debug",[".",[".",[".",["modlist"],"Util"],"exports"],"DebugController","false"]],[".","debug","setDefCommander",[["DebuggerREPL","debug"]]]]]]]),e._Execute(["DebuggerInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
40
+ !function(e){e.BootLingo=function(e){"use strict";var t=e._SetNamespace("Lib");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._SetValue("echo",[]),e._SetValue("err",[]),e._SetValue("rdsDriver"),e._SetBindingList("^",["macro","^",["ex1","ex2"],["list","^","ex1","ex2"]]),e._SetBindingList("!",["macro","!",["ex1"],["list","!","ex1"]]),e._SetBindingList("~",["macro","~",["ex1"],["list","~","ex1"]]),e._SetBindingList("~=",["macro","~=",["ex1","ex2"],["list","~=","ex1","ex2"]]),e._SetBindingList("tr",["macro","tr",["ex1"],["list","tr","ex1"]]),e._SetBindingList("matdiv",["macro","matdiv",["ex1","ex2"],["list","matdiv","ex1","ex2"]]),e._SetBindingList("#[",["macro","#[",["ex1","ex2"],["list","#[","ex1","ex2"]]),e._SetBindingList("[",["macro","[",["ex1","ex2"],["list","[","ex1","ex2"]]),e._SetBindingList("dereflist",["macro","dereflist","x",["cons","dereflist","x"]]),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("\\.*",["function","\\.*",["expr"],["keys","expr"]]),e._SetBindingList("@",["macro","@",["sym","write"],["=","sym",["eval","sym"]],[[["eval","write"],["put","sym"]]],["cdr","sym"]]),e._SetBindingList("@*",["function","@*",["sym"],["keys",["cdr","sym"]]]),e._SetBindingList("!==",["function","!==",["ex1","ex2"],["not",["eq","ex1","ex2"]]]),e._SetBindingList("<=>",["function","<=>",["ex1","ex2"],[["<","ex1","ex2"],-1],[[">","ex1","ex2"],1],0]),e._SetBindingList("\\..",["macro","\\..",["ex1","ex2"],["list",["`","\\.."],"ex1","ex2"]]),e._SetBindingList("\\..<",["macro","\\..<",["ex1","ex2"],["list",["`","\\..<"],"ex1","ex2"]]),e._SetBindingList("append",["function","append","lists",["function","append1",["items","result"],[["atom","items"],"result"],["cons",["car","items"],["append1",["cdr","items"],"result"]]],["function","append2",["lists","result"],[["atom","lists"],"result"],[["atom",["car","lists"]],["cons",["car","lists"],["append2",["cdr","lists"],"result"]]],["append1",["car","lists"],["append2",["cdr","lists"],"result"]]],["append2","lists"]]),e._SetBindingList("prepad",["function","prepad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat",[".","padstr","repeat",["length"]],"value"],"slice",[["-","length"]]]]),e._SetBindingList("map",["function","map",["targex","func","false","result","item","keylist"],[["array","targex"],["arraycall","targex","map","func"]],[["or",["dictionary","targex"],["xobject","targex"]],["=","result",["new","dictionary"]],["=","keylist",["keys","targex"]],["for",["let","lambda",["iter"],["=","iter",["iterate","keylist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["xset","result","item",["call","func",["deref","targex","item"],"item","targex"]]]]],"result"],[["atom","targex"],"false"],["for",["let","lambda",["iter"],["=","iter",["iterate","targex",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","result",["cons",["call","func","item",["length","result"],"targex"],"result"]]]]],["reverse","result"]]),e._SetBindingList("iterate",["function","iterate",["target","varsym","false","iterdict","keysym"],[[["not",["||",["symbol","varsym"],["tuple","varsym"]]],["throw",["list","internal",["strcat","$iteration variable invalid: ","varsym"]]]]],["=","iterdict",{dictionary:{$target:"target",$final:"final_value"}}],["function","final_value",["dict"],"dict"],[[["tuple","target"],["=","keysym",["car","target"]],[[["&&",["symbol","keysym"],["deref",["@","keysym"],["`","\\.iterate"]]],["return",["call",["deref",["@","target"],["`","\\.iterate"]],"target","varsym"]]],[["&&",["symbol","keysym"],["deref",["@","iterate"],"keysym"]],["return",["call",["deref",["@","iterate"],"keysym"],"target","varsym"]]]],["set.","iterdict",["`","traverse"],"target"],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",["length","target"],1]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"tuple_next_value"]],["set.","iterdict",["`","next"],"tuple_next"]],["function","tuple_next_value",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["car",[".","dict","traverse"]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"],["function","tuple_next",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["list",["car",[".","dict","traverse"]],["preadjust",[".","dict","index"],"+",1]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"]],[["||",["array","target"],["&&",["xobject","target"],["not",["xkeys","target"]]]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",[".","target","length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"array_next_value"]],["set.","iterdict",["`","next"],"array_next"]],["function","array_next_value",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","target"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","array_next",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["list",["deref",[".","dict","target"],[".","dict","index"]],[".","dict","index"]]],"false"]],[["&&",["object","target"],[".","target","\\.iterate"]],["return",[".","target","\\.iterate",["target","varsym"]]]],[["||",["dictionary","target"],["object","target"],["xobject","target"]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","keys"],[".",["keys","target"],"toarray"]],["set.","iterdict",["`","last"],["-",[".",[".","iterdict","keys"],"length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"dict_next_key"]],["set.","iterdict",["`","next"],"dict_next"]],["function","dict_next_key",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","keys"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","dict_next",["dict","false","index"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["=","key",["deref",[".","dict","keys"],["=","index",["preadjust",[".","dict","index"],"+",1]]]],["set.","dict",["`","value"],["list","key",["deref",[".","dict","target"],"key"],"index"]],"false"]],[["not","target"],["set.","iterdict",["`","last"],["set.","iterdict",["`","index"],-1]],["set.","iterdict",["`","next"],"empty_next"],["set.","dict",["`","done"],"true"],["function","empty_next",["dict"],"true"]],["throw",["list","internal",["strcat","$don't know how to iterate ",["typeof","target"]]]]],"iterdict"]),e._SetBindingList("defproc",["macro","defproc","exlist",["call",["function","lambda",["false","procname"],["=","procname",["caadr","exlist"]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define ",["car","exlist"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","exlist",["enclose","exlist"]],[[["&&",["!=",["getproc","procname"],"exlist"],["getproc","procname"]],["printline","$ ==> redefined: ","procname"]]],["putproc","procname","exlist"],"procname"]]]),e._SetBindingList("defprop",["macro","defprop",["ex1","ex2","ex3","false","fbind","procname"],[["member",["car","ex3"],["`",["function","function&","macro","closure","let","let&"]]],["=","procname",["compress",["list","ex1","ex2"]]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define property ",["car","ex3"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","fbind",["enclose",["cons",["car","ex3"],["cons","procname",["cddr","ex3"]]]]],[[["&&",["get","ex1","ex2"],["!=",["get","ex1","ex2"],"fbind"]],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["putproc","procname","fbind"],["put","ex1","ex2","procname"],"ex1"],[["==",["get","ex1","ex2"],"ex3"],"ex1"],[[["get","ex1","ex2"],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["put","ex1","ex2","ex3"],"ex1"]),e._SetBindingList("sleep",["closure","sleep",["msec"],[".",["future",["function","sleep","false","true"],"msec"],"wait","false"]]),e._SetBindingList("await",["closure","await",["promise","false","pending"],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("asyncArray",["closure","asyncArray",["elements","maxActive","worker","false","pending","results"],[[["not",["array","elements"]],["return","false"]]],["=","results",{array:[]}],["=","pending",["new","nonce"]],["set.","pending",["`","active"],0],["set.","pending",["`","index"],0],["closure","processOne",["index","false","entry"],["preadjust",[".","pending","active"],"+",1],["=","entry",["deref","elements","index"]],["future",["function","coProcess","false",["catch",[["set[","results","index",["worker","entry","index","elements"]]],"false",[["preadjust",[".","pending","active"],"-",1],["doMore"]]]],0]],["function","doMore","false",[["&&",["==",[".","pending","active"],0],[">=",[".","pending","index"],[".","elements","length"]]],[".","pending","signal",["results"]]],["while","false",[["not",["&&",["<",[".","pending","active"],"maxActive"],["<",[".","pending","index"],[".","elements","length"]]]]],["processOne",["postadjust",[".","pending","index"],"+",1]]]],["doMore"],"pending"]),e._SetBindingList("syncAdapter",["function","syncAdapter","args",["call",["closure","syncWaiter",["proc","arglist","false","pending"],["=","pending",["new","nonce"]],["apply","proc",["reverse",["reverse","arglist"],["list",["function","lambda",["error","data"],[".","pending","signal",[["list","error","data"]]]]]]],[".","pending","wait",["proc"]]],["pop","args"],"args"]]),e._SetBindingList("asyncResult",["closure","asyncResult","args",[".",["future",["function","asyncResultF","false",["apply",["pop","args"],"args"]]],"run","false"]]),e._SetBindingList("jsInstanceOf",["function","jsInstanceOf",["item","target"],[["xobject","item","target"],["loop","false",[[["not","item"],"false",["break"]],[["eq","item","target"],["break"]],["=","item",[".",[".","js","o"],"getPrototypeOf",["item"]]]]]]]),e._SetBindingList("jsTypedArray",["function","jsTypedArray",["item"],[[["not",["xobject","jsTypedArrayType"]],[[".","js","w"],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","w"],"Uint8Array"]]]]],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","g"],"Uint8Array"]]]]]],["||",["jsInstanceOf","item","jsTypedArrayType"],["jsInstanceOf",[".","item","constructor"],"jsTypedArrayType"]]]),e._SetBindingList("makeActivator",["closure","makeActivator",["nslist","false","checkns","targns"],["=","checkns",["nscaller"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]],["throw",[".","$activate ","concat",[[".","nslist","tostring"],"$ needs ",[".","checkns","tostring"],"$ not ",[".",["nscaller"],"tostring"]]]]],"targns"]]),e._SetBindingList("dialect",["function","dialect",["id"],[["identity","id"],[[["==","id",0],["=","id",[".",["dialect"],0]]]],[".",[".",[".","module","exports"],"Registry"],"findName",["id"]]],[".",[".",[".","module","exports"],"Registry"],"dialects","false"]]),e._SetBindingList("RuntimeOperators",["function","RuntimeOperators","false",[".",[".","module","exports"],"operators"]]),e._AddPropertyList("RuntimeLibInit",[["$.lingoInit","true"]]),e._SetBindingList("RuntimeLibInit",["function","RuntimeLibInit",["modname","false","manifest","operlist","runtimelib"],["=","manifest",["`",["=","+","-","*","/","/.","<",">","&&","and","||","or","^","!","~","~=","tr","matdiv","`","#[","[","dereflist","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","=?","=!","\\..","\\..<","\\...","append","prepad","map","iterate","defproc","defprop","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect","RuntimeOperators","RuntimeLibInit"]]],["=","operlist",["`",["=","+","-","*","/","/.","<",">","&&","and","||","or","^","!","~","~=","tr","matdiv","`","#[","[","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","=?","=!","\\..","\\..<"]]],["=","runtimelib",["`",["dereflist","prepad","map","iterate","defproc","defprop","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect"]]],["function","nsCopyproc",["sym","proc"],[["nsrights","sym"],["copyproc","sym","proc"]],[["!=",[".","sym","proc"],"proc"],["debuglog","$no rights to set sym from proc","sym","proc"]]],["nsCopyproc",["`","="],"setq"],["nsCopyproc",["`","=?"],"setq"],["nsCopyproc",["`","=!"],"setq"],["nsCopyproc",["`","+"],"plus"],["nsCopyproc",["`","-"],"difference"],["nsCopyproc",["`","*"],"times"],["nsCopyproc",["`","/"],"quotient"],["nsCopyproc",["`","/."],"quotient"],["nsCopyproc",["`","<"],"lesser"],["nsCopyproc",["`",">"],"greater"],["nsCopyproc",["`","&&"],["`","and"]],["nsCopyproc",["`","||"],["`","or"]],["nsCopyproc",["`","while"],["`","loop"]],["nsCopyproc",["`","for"],"call"],["nsCopyproc",["`","=="],"equal"],["nsCopyproc",["`","==="],["`","eq"]],[[["symbol","NideBuild"],["sudo",["set[",["@","tuple","true"],["`","append"],"append"]],["sudo",["set[",["@","tuple","true"],["`","map"],"map"]],["sudo",["set[",["@","array","true"],["`","map"],"map"]]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$RuntimeLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","append"],"append"],["set.",[".","modobj","exports"],["`","prepad"],"prepad"],["set.",[".","modobj","exports"],["`","map"],"map"],["set.",[".","modobj","exports"],["`","iterate"],"iterate"],["set.",[".","modobj","exports"],["`","operators"],[".",[".","Naan","module"],"export",["operlist"]]],["set.",[".","modobj","exports"],["`","runtimelib"],[".",[".","Naan","module"],"export",["runtimelib"]]],["sudo",["set.","Naan",["`","runtimelib"],[".",[".","modobj","exports"],"runtimelib"]]]]]]]),e._Execute(["RuntimeLibInit","$Lib"]),e._SetBindingList("defproc",["macro","defproc","exlist",["call",["function","lambda",["false","procname"],["=","procname",["caadr","exlist"]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define ",["car","exlist"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","exlist",["enclose","exlist"]],[[["&&",["!=",["getproc","procname"],"exlist"],["getproc","procname"]],["printline","$ ==> redefined: ","procname"]]],["putproc","procname","exlist"],"procname"]]]),e._SetBindingList("defprop",["macro","defprop",["ex1","ex2","ex3","false","fbind","procname"],[["member",["car","ex3"],["`",["function","function&","macro","closure","let","let&"]]],["=","procname",["compress",["list","ex1","ex2"]]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define property ",["car","ex3"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","fbind",["enclose",["cons",["car","ex3"],["cons","procname",["cddr","ex3"]]]]],[[["&&",["get","ex1","ex2"],["!=",["get","ex1","ex2"],"fbind"]],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["putproc","procname","fbind"],["put","ex1","ex2","procname"],"ex1"],[["==",["get","ex1","ex2"],"ex3"],"ex1"],[[["get","ex1","ex2"],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["put","ex1","ex2","ex3"],"ex1"]),e._SetBindingList("DefineLanguage",["closure","DefineLanguage",["langname","grammar","parser","unparser"],["closure","dialect",["name","operators","enterDNS","false","dobj"],["=","dobj",["new","object","this"]],["set.","dobj",["`","ns"],[".",["nsactive"],0]],["set.","dobj",["`","name"],"name"],["set.","dobj",["`","grammar"],["new","grammar"]],["set.","dobj",["`","operators"],"operators"],["set.","dobj",["`","exunparse"],{dictionary:{}}],["set.","dobj",["`","parser"],"parser"],["set.","dobj",["`","unparser"],"unparser"],["set.","dobj",["`","parse"],["function","parse",["source"],[".","dobj","parser",["source",[".","dobj","grammar"],[".","dobj","operators"]]]]],["set.","dobj",["`","parseErrorString"],["function","parseErrorString",["error"],["langParseErrorString","error"]]],["set.","dobj",["`","unparse"],["function","unparse",["expr","options"],[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]]]],["set.","dobj",["`","print"],["function","print",["expr","options"],[".",[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]],"string","false"]]],["set.","dobj",["`","defhook"],["function","defhook",["hook","false","returner","newsym"],["=","returner",["makeActivator"]],["enterDNS"],["=","newsym",["compress","hook"]],["copyproc","newsym","hook"],["returner"],"newsym"]],["set.","dobj",["`","defunparse"],["function","defunparse",["sym","proc"],["set[",[".","dobj","exunparse"],"sym","proc"]]],["set.","dobj",["`","redefine"],["function","redefine",["sym","proc","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],[[["tuple","proc"],["putproc","sym","proc"]],["copyproc","sym","proc"]],["returner"],"sym"]],["set.","dobj",["`","defatt"],["function","defatt",["sym","key","value","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],["put","sym","key","value"],["returner"],"sym"]],["set.","dobj",["`","defsym"],["function","defsym",["syms","false","cursyms"],["=","returner",["makeActivator"]],["enterDNS"],[[["atom","syms"],["=","cursyms",["compress","syms"]]],["while","false",[["not",["not",["atom","syms"]]]],["push",["compress",["pop","syms"]],"cursyms"]],["=","cursyms",["reverse","cursyms"]]],["returner"],"cursyms"]],["set.","dobj",["`","require"],["function","drequire",["path","reload","false","returner","result"],["=","returner",["makeActivator"]],["enterDNS"],["=","result",["require","path","options","dobj"]],["returner"],"result"]],["set.","dobj",["`","info"],["function","info","false",{dictionary:{$name:[".","dobj","name"],$grammar:[".","dobj","grammar"],$operators:[".","dobj","operators"],$parser:[".","dobj","parser"],$unparser:[".","dobj","unparser"],$namespace:[".","dobj","ns"]}}]],["set.","dobj",["`","destroy"],["function","destroy","false",[[["not",[".","dobj","module"]],["return","false"]]],[".",[".",[".","module","exports"],"Registry"],"unregister",["dobj"]],[".",[".","dobj","module"],"destroy","false"],["set.","dobj",["`","module"],"false"],"true"]],["set.","dobj",["`","derive"],["function","derive",["diname","operators","false","newdialect"],[[["not","operators"],["=","operators",[".","dobj","operators"]]]],["=","newdialect",["initialize",[".",[".","dobj","name"],"concat",["$_","diname"]],"operators"]],["set.","newdialect",["`","parent"],"dobj"],"newdialect"]],"dobj"],["function","initialize",["langname","operators","false","newdialect","dialsym"],[".",[".","Naan","module"],"build",[[".","$Lang_","concat",["langname"]],"$RuntimeLib",["function","lambda",["modobj","compobj","false","locops"],[".",[".","Naan","module"],"letimport",["operators"]],["=","dialsym",["compress","$Dialect"]],["=","locops",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","operators",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","locops","key",["compress","key"]]]]],["set[","locops","dialsym","dialsym"],["=","newdialect",["dialect","langname","locops",["makeActivator"]]],["set.","newdialect",["`","module"],"modobj"],["call",["closure","lambda",["dialect"],["putproc","dialsym",["function","lambda","false","dialect"]]],"newdialect"],["assign","dialsym","newdialect"]]]],[".",[".",[".","module","exports"],"Registry"],"register",["langname","newdialect"]],"newdialect"],["initialize","langname",["RuntimeOperators"]]]),e._SetBindingList("Registry",["closure","Registry",["false","registry"],["=","registry",["new","object","this"]],["set.","registry",["`","languages"],{array:[]}],["set.","registry",["`","register"],["function","register",["name","dobj","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["set.","lang",["`","dialect"],"dobj"],["return"]]]]]],[".",[".","registry","languages"],"push",[{dictionary:{$name:"name",$dialect:"dobj"}}]]]],["set.","registry",["`","unregister"],["function","unregister",["dobj"],["set.","registry",["`","languages"],[".",[".","registry","languages"],"filter",[["function","lambda",["item"],["!==",[".","item","dialect"],"dobj"]]]]],"true"]],["set.","registry",["`","findName"],["function","findName",["name","false","lang"],["=","name",["tostring","name"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","findNamespace"],["function","findNamespace",["ns","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["===",[".",[".","lang","dialect"],"ns"],"ns"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","dialects"],["function","dialects","false",[".",[".",[".","registry","languages"],"map",[["function","lambda",["item"],[".","item","name"]]]],"totuple"]]],"registry"]),e._SetBindingList("ParsEnvironment",["closure","ParsEnvironment",["dialect","envName","false","penv","gohome","localnaan"],[[["not","envName"],["=","envName","$Parsenv"]]],["=","penv",["new","object","this"]],["=","gohome",["makeActivator"]],[[["||",["not",[".","dialect","parser"]],["not",[".","dialect","unparser"]]],["return","false"]]],["set.","penv",["`","ns"],["new","namespace","envName"]],[[["not",[".","penv","ns"]],["return","false"]]],["nsactive",["cons",[".","penv","ns"],[".",["nsactive"],-2]]],["set.","penv",["`","gons"],["makeActivator"]],["set.","penv",["`","saves"],{dictionary:{$exception:[".",["`","exception"],"proc"],$require:[".",["`","require"],"proc"],$sudo:[".",["`","sudo"],"proc"],$naan:"Naan"}}],["set.","penv",["`","locals"],["letlocal","Naan","require","sudo"]],["=","localnaan",[".",[".","penv","locals"],0]],["assign","localnaan",["new",[".",[".","penv","saves"],"naan"]]],["set.",[".","localnaan","module"],["`","require"],"false"],["set.",[".","localnaan","module"],["`","sudo"],"false"],["putproc",[".",[".","penv","locals"],1],"false"],["putproc",[".",[".","penv","locals"],2],"false"],["set.",[".","localnaan","module"],["`","require"],"false"],["set.",[".","localnaan","module"],["`","sudo"],"false"],["gohome"],["function","evalgo","false",[".","penv","gons","false"]],["function","evalhome","false",["gohome"]],["set.","penv",["`","eval"],["closure","evalf",["expr","false","result"],["evalgo"],["catch",[["=","result",["eval","expr"]]],[[["identity","true"],["=","result","exception"]]],[["evalhome"]]],"result"]],["set.","penv",["`","evalq"],["macro","evalq",["expr"],["evalf","expr"]]],["set.","penv",["`","parse"],["function","parse",["text","options","false","output","source","xchan","errors","error","expr","saves","localnaan","errtext","row","lastrow","outext"],["=","output",{dictionary:{$errors:{array:[]},$annotations:{array:[]},$text:{array:[]},$exprs:{array:[]},$results:{array:[]}}}],["=","source",["new","textstream","text",["`","string"]]],["=","xchan",["textstreams",["list","source","source"]]],["catch",[[".","penv","gons","false"],["loop","false",["catch",[[".",[".","penv","saves"],"sudo",[["putproc",["`","exception"],"false"]]],["=",["errors","expr"],[".","dialect","parse",["source"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","errors",["`","error"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","error",[".","iter","$value"]],["=","errtext",["langParseErrorString","error"]],["=","row",[".",[".","error","at"],0]],[[["!=","row","lastrow"],[".",[".","output","$annotations"],"push",[{dictionary:{$row:"row",$column:[".",[".","error","at"],1],$text:"errtext",$type:"$error"}}]],["=","lastrow","row"]]],[".",[".","output","errors"],"push",["errtext"]]]]],[[["identity","expr"],[".",[".","output","exprs"],"push",["expr"]],["=","expr",["call",["function","lambda","false",["evalactive","expr"]]]],[".",[".","output","results"],"push",["expr"]],[[".","options","pretty"],["set.","output",["`","pretty"],{array:[]}],[["==",[".",[".","source","tokenlast","false"],"atom"],["`",";>"]],[".",[".","output","pretty"],"push",[["tostring","expr",{dictionary:{$quote:"true"}}]]]],[["!=",[".",[".","source","tokenlast","false"],"atom"],["`",";;"]],[".",[".","output","pretty"],"push",[[".","dialect","print",["expr"]]]]]]]]],"false",[[".",[".","penv","saves"],"sudo",[["putproc",["`","exception"],[".","saves","exception"]]]]]]]],[[["identity","true"],[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["and",["==",["tostring",["car","exception"]],"$internal"],["string",["second","exception"]]],[".",[".","output","errors"],"push",[["second","exception"]]]],[["ErrorObject","exception"],[".",[".","output","errors"],"push",[[".","$exception: ","concat",[["ErrorString","exception"]]]]]],[".",[".","output","errors"],"push",[[".","$exception: ","concat",["exception"]]]]]],[["gohome"],["textstreams","xchan"],["=","outext",[".",[".","source","taketext","false"],"trim","false"]],[[">",[".","outext","length"],0],["set.","output",["`","text"],["new",[".","outext","split",["$\n"]]]]]]],"output"]],["set.","penv",["`","unparse"],["function","unparse",["false","options","text","sym","didprop","key"],["=","options",{dictionary:{$wrapMaxCol:240}}],["=","text","$"],["for",["let","lambda",["iter"],["=","iter",["iterate",["symlist",[".","penv","ns"]],["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["not",["eq","sym",["car","sym"]]],["=","text",[".","text","concat",["sym","$ = ",["car","sym"],"$;;\n\n"]]]]],["=","didprop","false"],["for",["let","lambda",["iter"],["=","iter",["iterate",["@*","sym"],["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["!=",[".","key","charAt",[0]],"$."],["=","didprop","true"],["=","text",[".","text","concat",["sym","$@","key","$ = ",["deref",["@","sym"],"key"],"$;;\n"]]]]]]]],[[["identity","didprop"],["=","text",[".","text","concat",["$\n"]]]]],[[["eq",[".",[".",[".","sym","proc"],1],"namespace"],[".","penv","ns"]],["=","text",[".","text","concat",[[".","dialect","print",[[".","sym","proc"],"options"]],"$;\n\n"]]]]]]]],"text"]],["set.","penv",["`","destroy"],["function","destroy","false",["set.","penv",["`","ns"],["delete",[".","penv","ns"]]]]],"penv"]),e._AddPropertyList("LanguagesInit",[["$.lingoInit","true"]]),e._SetBindingList("LanguagesInit",["function","LanguagesInit",["false","manifest"],["=","manifest",["`",["defproc","defprop","DefineLanguage","Registry","ParsEnvironment","LanguagesInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Languages",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DefineLanguage"],"DefineLanguage"],["set.",[".","modobj","exports"],["`","ParsEnvironment"],"ParsEnvironment"],["set.",[".","modobj","exports"],["`","Registry"],["Registry"]]]]]]),e._Execute(["LanguagesInit"]),e._SetBindingList("langParser",["function&","langParser",["source","lang","operators","false","result"],["catch",[["=","langErrors",{array:[]}],["=","result",["langParse1",["tokenread"],0]],[[["==",[".","langErrors","length"],0],["=","result",["langStrip","result","operators"]]]],[[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[["!=",[".","langErrors","length"],0],[".","source","comments","false"],["while","false",[["not",["not",["atTerminator"]]]],["tokenread"]]]],[[["!=",[".","langErrors","length"],0]]],"false"],[["!=",[".","langErrors","length"],0],["list","langErrors"]],["list","false","result"]]),e._SetBindingList("langParseErrorString",["function","langParseErrorString",["error","false","output"],[[[".","error","memo"],["=","output",[".","error","memo"]]],["=","output","$parse error"]],[[[".","error","at"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","at"],0],1],"$, ",["+",[".",[".","error","at"],1],1],"$)"]]]]],[[[".","error","found"],["=","output",[".","output","concat",["$ found ",[".","error","found"]]]]]],[[[".","error","expected"],["=","output",[".","output","concat",["$ expected ",[".","error","expected"]]]]]],[[["||",[".","error","start"],[".","error","startat"]],["=","output",[".","output","concat",["$ starting"]]],[[["&&",[".","error","start"],["!=",[".","error","start"],"$\n"]],["=","output",[".","output","concat",["$ with ",[".","error","start"]]]]]],[[".","error","startat"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","startat"],0],1],"$, ",["+",[".",[".","error","startat"],1],1],"$)"]]]]]],[".","output","replace",[["RegExp","$\n","$g"],"$␍"]]]),e._SetBindingList("tokenread",["function","tokenread","false",["=","tokenlast",[".","source","tokenread","false"]]]),e._SetBindingList("tokenpush",["function","tokenpush",["token"],["=","tokenlast",[".","source","tokenpush",["token"]]]]),e._SetBindingList("tokenmatch",["function","tokenmatch",["pattern","false","result"],["=","result",[".","source","tokenmatch",["pattern"]]],["=","tokenlast",[".","source","tokenlast","false"]],"result"]),e._SetBindingList("tokenpass",["function","tokenpass",["pattern"],["=","tokenlast",[".","source","tokenpass",["pattern"]]]]),e._SetBindingList("passNewline",["function","passNewline",["testeof"],["=","tokenlast",[".","source","tokenpass",["cr","testeof"]]]]),e._SetBindingList("atTerminator",["function","atTerminator","false",["tokenmatch",["`",[";",";;",";>"]]]]),e._SetBindingList("atDelimiter",["function","atDelimiter","false",["tokenmatch",["`",[";",";;",";>",")",",","}","]"]]]]),e._SetBindingList("langPassSeparator",["function","langPassSeparator","false",["=","tokenlast",[".","source","tokenpass",[["list","cr","comma"]]]]]),e._SetBindingList("langAtSeparator",["function","langAtSeparator","false",["or",["==",[".","tokenlast","atom"],"cr"],["==",[".","tokenlast","atom"],"comma"]]]),e._SetBindingList("langExprLoc",["function","langExprLoc",["expr"],[["dictionary","expr"],[".","expr","loc"]],[["atom","expr"],"false"],[["langExprLoc",["car","expr"]]],["langExprLoc",["cdr","expr"]]]),e._SetBindingList("langConsSym",["function","langConsSym",["sym","expr","exlist"],[[["tuple","sym"],["debuglog","$langConsSym warning - non-atomic token","sym"]]],["cons",{dictionary:{$atom:"sym",$loc:["langExprLoc","expr"]}},"exlist"]]),e._SetBindingList("langEnlistSym",["function","langEnlistSym","exlist",[[["tuple",["car","exlist"]],["debuglog","$langEnlistSym warning - non-atomic token",["car","exlist"]]]],["cons",{dictionary:{$atom:["car","exlist"],$loc:["langExprLoc",["second","exlist"]]}},["cddr","exlist"]]]),e._SetBindingList("langSyntax",["function","langSyntax",["expr","startoken","dict"],["=","dict",["new","dict"]],[[["identity","expr"],["set.","dict",["`","at"],["langExprLoc","expr"]],[["dictionary","expr"],["set.","dict",["`","found"],[".","expr","atom"]]]]],[[["identity","startoken"],["set.","dict",["`","start"],[".","startoken","atom"]],["set.","dict",["`","startat"],[".","startoken","loc"]]]],[".","langErrors","push",["dict"]],"false"]),e._SetBindingList("langDebuglog",["function","langDebuglog","args",["function","convlist",["expr"],[["defined","expr","atom"],[".","expr","atom"]],[["atom","expr"],"expr"],["cons",["convlist",["car","expr"]],["convlist",["cdr","expr"]]]],["call",["function","lambda",["args","false","arg","exlist"],["loop","false",[["empty","args"]],["=","arg",["pop","args"]],[[["eq","arg","`"],["push",["pop","args"],"exlist"]],["push",["convlist","arg"],"exlist"]]],["apply",[".",[".","Naan","debug"],"debuglog"],["reverse","exlist"]]],"args"]]),e._SetBindingList("langCleanup",["function","langCleanup",["tree","false","blocknest","inloop"],["function","debugCleanup","args",[["identity","false"],["apply","langDebuglog","args"]]],["function","inbody",["xbody"],[["atom","xbody"],"xbody"],["debugCleanup","$inbody:","xbody"],[[["and","inloop",["<=","blocknest",1]]],[["and",["not",["atom",["car","xbody"]]],["not",["atom",["caar","xbody"]]],["not",["atom",["caaar","xbody"]]]],["debugCleanup","$testing hoist in body:","xbody"],["=","xbody",["hoist","xbody"]]]],["cons",["inbodyitem",["car","xbody"]],["inbody",["cdr","xbody"]]]],["function","inbodyitem",["expr","false","sym"],["debugCleanup","$inbodyitem:","expr"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inevalist",["expr"],[["atom","expr"],"expr"],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inquote",["expr"],[["atom","expr"],"expr"],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function&","inloop",["pbody","blocknest","inloop"],["debugCleanup","$inloop:","pbody","blocknest","inloop"],["=","blocknest",0],["=","inloop","true"],["cons",["car","pbody"],["second","pbody"],["inbody",["cddr","pbody"]]]],["function&","inproc",["fbind","blocknest"],["debugCleanup","$inproc:","fbind","blocknest"],["=","blocknest",0],["cons",["car","fbind"],["cons",["second","fbind"],["cons",["inquote",["third","fbind"]],["inbody",["cdddr","fbind"]]]]]],["function","inconditem",["expr"],["debugCleanup","$inconditem:","expr"],[["atom","expr"],"expr"],["cons",["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]]],["function&","incond",["expr","blocknest"],["debugCleanup","$incond:","expr"],["cons",["car","expr"],["inconditem",["cdr","expr"]]]],["function","incatch",["expr"],["debugCleanup","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["inconditem",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym"],["debugCleanup","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==","sym",["`","loop"]],["inloop","expr"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody","expr"]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["debugCleanup","$inquote:","expr"],["inquote","expr"]],["cons",["car","expr"],["inevalist",["cdr","expr"]]]],["function","inwhen",["expr","false","nexpr"],["debugCleanup","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugCleanup","$inwhen block","blocknest"],["=","nexpr",["hoist","nexpr"]],["cons",["incall",["car","expr"]],["inblock","nexpr","blocknest"]]],["cons",["incall",["car","expr"]],["hoist",["delbreak",["cdr","expr"],"blocknest"]]]],["function&","delbreak",["expr","blocknest"],["debugCleanup","$delbreak:","expr","blocknest"],[["atom","expr"],"expr"],[[["&&",["tuple",["car","expr"]],["tuple",["caar","expr"]],["tuple",["caaar","expr"]]],["preadjust","blocknest","+",1],["debugCleanup","$delbreak block:","blocknest"]]],["=","expr",["hoist","expr"]],[["and",["==",[".",["caar","expr"],"atom"],["`","break"]],["not",["cdr",["car","expr"]]],["<=","blocknest",1]],["debugCleanup","$did delbreak from:","expr"],["=","delbreak","true"],"false"],["cons",["inbodyitem",["car","expr"]],["delbreak",["cdr","expr"],"blocknest"]]],["function&","inblock",["expr","blocknest","false","nexpr","delbreak"],["debugCleanup","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["=","nexpr",["inbodyitem",["car","expr"]]],[["identity","delbreak"],["debugCleanup","$did delbreak below:","nexpr"],"nexpr"],["cons","nexpr",["inbody",["cdr","expr"]]]],["function","hoist",["expr"],[["or",["cdr","expr"],["atom","expr"],["atom",["car","expr"]],["atom",["caar","expr"]],["atom",["caaar","expr"]]],"expr"],["debugCleanup","$hoisted:",["car","expr"]],["hoist",["car","expr"]]],["debugCleanup","$\n### in tree:","tree"],["=","blocknest",0],["ineval","tree"]]),e._SetBindingList("langErrorCheck",["function","langErrorCheck",["tree"],"tree"]),e._SetBindingList("langCorrelateComments",["function","langCorrelateComments",["locmap","false","comments","locations","locdex","loc"],["function","tupleCompare",["a","b"],[["<",[".","a",0],[".","b",0]],-1],[[">",[".","a",0],[".","b",0]],1],[["<",[".","a",1],[".","b",1]],-1],[[">",[".","a",1],[".","b",1]],1],0],["=","comments",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",["reverse",[".","source","comments","false"]],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],[".","comments","push",[["append",[".","acom","loc"],[".","acom","text"]]]]]]],[".","comments","sort",["tupleSort"]],["=","locations",{array:[]}],["=","locdex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","loc"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","loc",[".","iter","$value"]],[[["identity","loc"],[".","locations","push",[["list",[".","loc",0],[".","loc",1],"locdex"]]]]],["preadjust","locdex","+",1]]]],[".","locations","sort",["tupleSort"]],["call",["let","lambda",["false","acom","curloc","output","nextdex","nextloc"],["=","locdex",0],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["while","false",[["not",[">",[".","acom",0],[".","curloc",0]]]],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]]],[[["not","curloc"],[".","output","push",[["list","false","false",[".","acom",2]]]]],[["<",[".","acom",0],[".","curloc",0]],[".","output","push",[["list",[".","curloc",2],-1,[".","acom",2]]]]],["=","nextdex","locdex"],["=","nextloc","curloc"],["while","false",[["not",["&&",["==",[".","acom",0],[".","nextloc",0]],[">",[".","acom",1],[".","nextloc",1]]]]],["=","nextloc",["deref","locations",["postadjust","nextdex","+",1]]]],[["==",[".","acom",0],[".","nextloc",0]],[".","output","push",[["list",[".","nextloc",2],0,[".","acom",2]]]],["=","locdex","nextdex"],["=","curloc","nextloc"]],[".","output","push",[["list",[".","curloc",2],1,[".","acom",2]]]]]]]],"output"]]]),e._SetBindingList("langStrip",["function","langStrip",["tree","operators","valproc"],["=","tree",["langCleanup","tree"]],["=","tree",["langErrorCheck","tree"]],["langStripLoc","tree","operators","valproc"]]),e._SetBindingList("langStripLoc",["function","langStripLoc",["tree","operators","valproc","false","procnest","fname","locmap","nodecount","curns","nscurrent","nscore","sourcemap"],["=","curns",["nsactive"]],["=","nscurrent",[".","curns",0]],["=","nscore",[".",["nsactive","true"],1]],["function","topmap",["expr"],["function","remap",["expr"],[["dictionary","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","expr","loc"]]]],[["atom","expr"],["preadjust","nodecount","+",1],["debuglog","$langStripLoc: found atom:","expr"],[".","locmap","push",["false"]]],["remap",["car","expr"]],[["cdr","expr"],["remap",["cdr","expr"]]]],[["atom","expr"],"false"],[["==",[".",["car","expr"],"atom"],"`"],"true"],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],["remap","expr"],"true"],[["topmap",["car","expr"]],"true"],["topmap",["cdr","expr"]]],["function","moveatom",["item","false","sym"],[["not",["symbol",[".","item","atom"]]],[".","item","atom"]],[["&&",["interned",[".","item","atom"]],["dictionary","operators"],["deref","operators",[".","item","atom"]]]],[["&&",[".",[".","item","atom"],"proc"],["!=",[".",[".","item","atom"],"namespace"],"nscurrent"],["!=",[".",[".","item","atom"],"namespace"],"nscore"]],["=","sym",["interned",[".",[".","item","atom"],"tostring"]]],[["&&",["eq",[".","sym","namespace"],"nscurrent"],[".","sym","proc"]],"sym"],[".","item","atom"]],[".","item","atom"]],["function","inbody",["xbody","false","sym"],[["atom","xbody"],["moveatom","xbody"]],["=","sym",[".",["car","xbody"],"atom"]],[["==","sym","`"],["inquote","xbody"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","xbody","procnest"]],["split","xbody"]],["function","inquote",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function","split",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inbody",["car","expr"]],["split",["cdr","expr"]]]],["function&","inproc",["pbody","procnest","false","wasnest","fbind"],[[["=","wasnest","procnest"]],["=","procnest","true"]],["=","fbind",["cons",["split",["car","pbody"]],["split",["second","pbody"]],["split",["third","pbody"]],["split",["cdddr","pbody"]]]],[["identity","wasnest"],"fbind"],["=","fname",["second","fbind"]],[["and",["&&",["not","valproc"],"fname"],["not",["lambda","fname"]],["not",["eq",["car","fbind"],["`","let"]]]],["cons",["`","defproc"],"fbind"]],["enclose","fbind"]],["function","lmCompress",["locmap","false","entry","lastrow","lastcol","nextrow","nextcol"],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","entry"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","entry",[".","iter","$value"]],["=","nextrow",[".","entry",0]],["=","nextcol",[".","entry",1]],[[["not","entry"],[".","output","push",["false"]]],[["not","lastrow"],[".","output","push",["entry"]]],[["==","lastrow","nextrow"],[".","output","push",[["-","nextcol","lastcol"]]]],[".","output","push",[["list",["-","nextrow","lastrow"],"nextcol"]]]],["=","lastrow","nextrow"],["=","lastcol","nextcol"]]]],"output"],["=","locmap",{array:[]}],["=","nodecount",0],["topmap","tree"],["=","tree",["inbody","tree"]],[[["and","fname",[">",["length","locmap"],1]],["=","comments",["langCorrelateComments","locmap"]],["=","sourcemap",{dictionary:{$count:"nodecount",$comments:"comments"}}],[[["identity","false"],["set.","sourcemap",["`","map"],["lmCompress","locmap"]]]],["put","fname",["`","\\.sourcemap"],"sourcemap"]]],"tree"]),e._SetBindingList("langParse1",["function&","langParse1",["ltoken","riplop","false","rtoken"],["function&","naryCoalesce",["optoken","lexpr","rexpr","false","opsym"],["=","opsym",[".","optoken","atom"]],[["and",["defined","optoken","atom"],["symbol","opsym"],["deref",[".","lang","naryop"],"opsym"]],[["and",["tuple","lexpr"],["==","opsym",[".",["car","lexpr"],"atom"]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["cdr","lexpr"],["cdr","rexpr"]]]],["cons","optoken",["append",["cdr","lexpr"],["list","rexpr"]]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["list","lexpr"],["cdr","rexpr"]]]],["list","optoken","lexpr","rexpr"]],["list","optoken","lexpr","rexpr"]],["function&","leprop",["false","nlToken"],[["==",[".","tokenlast","atom"],"cr"],["=","nlToken","tokenlast"],[[["not",["passNewline","true"]],["return","false"]]],[["and",["not",["string",[".","tokenlast","atom"]]],["deref",[".","lang","left"],[".","tokenlast","atom"]]]],["tokenpush","nlToken"],"false"],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["=","ltoken",["passNewline"]],[["atDelimiter"],["langSyntax","ltoken","false",{dictionary:{$memo:"$unexpected delimiter"}}]],["=","rtoken",["tokenread"]],[[["string",[".","ltoken","atom"]]],[["deref",[".","lang","prefix"],[".","ltoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","prefix"],[".","ltoken","atom"]]]]],[["deref",[".","lang","left"],[".","ltoken","atom"]],["langSyntax","ltoken","false",{dictionary:{$memo:"$not a prefix operator"}}]],[["deref",[".","lang","right"],[".","ltoken","atom"]],["=","ltoken",["list","ltoken",["langParse1","rtoken",["deref",[".","lang","right"],[".","ltoken","atom"]]]]]]],["loop","false",["=","rtoken","tokenlast"],[[["and",["string",[".","ltoken","atom"]],["tokenmatch","string"]],["=","ltoken",{dictionary:{$atom:["strcat",[".","ltoken","atom"],[".","tokenlast","atom"]],$loc:[".","ltoken","loc"]}}],["tokenread"],["continue"]],[["string",[".","rtoken","atom"]]],[["and",["<","riplop",["deref",[".","lang","postleft"],[".","rtoken","atom"]]],["deref",[".","lang","postfix"],[".","rtoken","atom"]]],["=","ltoken",["eval",["deref",[".","lang","postfix"],[".","rtoken","atom"]]]],["=","rtoken",["tokenread"]]]],[["not",["<","riplop",["leprop"]]],"ltoken"],["=","rtoken","tokenlast"],["tokenread"],[[["string",[".","rtoken","atom"]]],[["deref",[".","lang","infix"],[".","rtoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","infix"],[".","rtoken","atom"]]]]],[["deref",[".","lang","right"],[".","rtoken","atom"]],["=","ltoken",["naryCoalesce","rtoken","ltoken",["langParse1","tokenlast",["deref",[".","lang","right"],[".","rtoken","atom"]]]]]],["=","ltoken",["list","rtoken","ltoken"]]]]]),e._SetBindingList("langParseTo",["function&","langParseTo",["delim","sloc","false","expr"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","lptFound","false"],["langPassSeparator"],["loop","false",[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"]],[[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$delimiter not found"}}],[["atTerminator"],["break"]]],["push",["langParse1","tokenlast",0],"expr"],[[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"],["break"]]],[["not",["langAtSeparator","delim"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$mismatched delimiter"}}],[["atTerminator"],["break"]]]],["tokenread"]]]),e._SetBindingList("langParseToList",["function&","langParseToList",["delim","sloc","false","expr"],["=","expr",["langParseTo","delim","sloc"]],[[["not","expr"],["=","expr",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]]],"expr"]),e._SetBindingList("langReadExpr",["function&","langReadExpr",["false","expr"],["=","expr",["passNewline"]],[["tokenmatch","rpar"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$mismatched parens"}}]],[["tokenmatch","quote"],["=","expr",["tokenread"]],["tokenread"],"expr"],[["tokenmatch","{"],["tokenread"],["langBraceParse"]],[["tokenmatch","["],["tokenread"],["langBracketParse"]],[["not",["tokenmatch","lpar"]],["tokenread"],"expr"],["tokenread"],["=","expr","false"],["loop","false",["passNewline"],[[["tokenmatch","comma"],["tokenread"],[["||",["not","expr"],["tokenmatch",["list","rpar","comma"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$extra comma"}}]]]],[["tokenmatch","rpar"],["tokenread"],["reverse","expr"]],["push",["langReadExpr"],"expr"],[[["tokenmatch","period"],["tokenread"],["=","expr",["reverse",["cdr","expr"],["cons",["car","expr"],["langReadExpr"]]]],[[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$invalid dotted pair"}}],"false"],["break"]]]]]),e._SetBindingList("langBraceParse",["function&","langBraceParse",["doeval","false","expr","value","exlist","sloc"],["function&","setobj",["exlist","obj"],[["empty","exlist"],"obj"],["setobj",["cdr","exlist"],"obj"],["=","exlist",["car","exlist"]],["xset","obj",[".",["car","exlist"],"atom"],["second","exlist"]],"obj"],["=","sloc","tokenlast"],["loop","false",["passNewline"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["atDelimiter"],["langSyntax",["langExprLoc","tokenlast"],"$} not found"]],["=","expr","tokenlast"],["tokenread"],["passNewline"],[[["==",[".","expr","atom"],"`"],["=","expr","tokenlast"],["tokenread"],["passNewline"]]],[["not",["tokenmatch",["`",":"]]],["langSyntax","tokenlast","sloc",{dictionary:{$memo:"$missing : in dictionary"}}]],["=","value",["langValueParse","doeval"]],["push",["list","expr","value"],"exlist"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["not",["langAtSeparator"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$, or }",$memo:"$malformed dictionary entry"}}]],["tokenread"]],{dictionary:{$atom:"expr",$loc:["langExprLoc","sloc"]}}]),e._SetBindingList("langBracketParse",["function&","langBracketParse",["doeval","ltoken","false","sloc","exlist"],["function&","strip",["expr"],[["dictionary","expr"],[".","expr","atom"]],[["atom","expr"],"expr"],["cons",["strip",["car","expr"]],["strip",["cdr","expr"]]]],["=","sloc","tokenlast"],["=","exlist",["langParseTo",["`","]"],"sloc"]],[["identity","ltoken"],[["atom",["cdr","exlist"]],["langEnlistSym","deref","sloc","ltoken",["car","exlist"]]],["langEnlistSym","dereflist","sloc","ltoken","exlist"]],["=","exlist",["strip","exlist"]],[[["identity","doeval"],["=","exlist",["cdr",["eval",["cons","false","exlist"]]]]]],{dictionary:{$atom:["new","array","exlist"],$loc:[".","sloc","loc"]}}]),e._SetBindingList("langValueParse",["function","langValueParse",["doeval","false","value"],["=","value",["langParse1",["tokenread"],0]],[[["==",[".","langErrors","length"],0],["=","value",["langStrip","value","operators","true"]],[["identity","doeval"],["=","value",["eval","value"]]]]],"value"]),e._SetBindingList("langGenIterate",["function","langGenIterate",["calltok","tagtok","varex","target","xbody","false","sloc","forsym","itersym","bodyloc","iterlist"],["=","sloc",[".","calltok","loc"]],["=","forsym",["unintern",["`","lambda"]]],["=","itersym",["unintern",["`","iter"]]],["=","bodyloc",["langExprLoc","xbody"]],["=","iterlist",["langEnlistSym","itersym","sloc"]],[[["&&",["atom","varex"],["not",["&&",["defined","varex","atom"],["symbol",[".","varex","atom"]],[".","varex","atom"]]]],["return",["langSyntax","varex","false",{dictionary:{$memo:"$invalid iteration variable",$found:[".","varex","atom"]}}]]]],["langConsSym",[".","calltok","atom"],"sloc",["cons",["langEnlistSym",["`","let"],"sloc",{dictionary:{$atom:"forsym",$loc:["langExprLoc","sloc"]}},"iterlist",["langEnlistSym",["`","="],"varex",{dictionary:{$atom:"itersym",$loc:["langExprLoc","varex"]}},["langEnlistSym",["`","iterate"],"varex","target",["langEnlistSym","`","varex","varex"]]],["langConsSym",["`","loop"],"xbody",["cons","tagtok",["list",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$next",$loc:"bodyloc"}},"iterlist"],["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$final",$loc:"bodyloc"}},"iterlist"]],["langEnlistSym",["`","="],"xbody","varex",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$value",$loc:"bodyloc"}}]],"xbody"]]]]]]),e._SetBindingList("langParseRule",["function","langParseRule",["lang","sym"],["or",["deref",[".","lang","left"],"sym"],["deref",[".","lang","right"],"sym"],["deref",[".","lang","prefix"],"sym"],["deref",[".","lang","infix"],"sym"],["deref",[".","lang","postfix"],"sym"]]]),e._AddPropertyList("LangLibInit",[["$.lingoInit","true"]]),e._SetBindingList("LangLibInit",["function","LangLibInit",["false","manifest"],["=","manifest",["`",["langParser","langParseErrorString","tokenread","tokenpush","tokenmatch","tokenpass","passNewline","atTerminator","atDelimiter","langPassSeparator","langAtSeparator","langExprLoc","langConsSym","langEnlistSym","langSyntax","langDebuglog","langCleanup","langErrorCheck","langCorrelateComments","langStrip","langStripLoc","langParse1","langParseTo","langParseToList","langReadExpr","langBraceParse","langBracketParse","langValueParse","langGenIterate","langParseRule","LangLibInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$LangLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","ParseErrorString"],"langParseErrorString"]]]]]),e._Execute(["LangLibInit"]),e._SetNamespace("Lingo"),e._Execute([".",[".","Naan","module"],"letlocal",["module"]]),e._Execute([".",[".","Naan","module"],"letinherit",["$Lib"]]),e._AddPropertyList("LingoPreload",[["$.lingoInit","true"]]),e._SetBindingList("LingoPreload",["function","LingoPreload","false",[".",[".","Naan","module"],"letinherit",["$Lib"]]]),e._SetBindingList("LingoParser",["function","LingoParser",["source","grammar","operators"],["=","SynLoop","false"],["=","InProc","false"],["langParser","source","grammar","operators"]]),e._SetValue("lingoGrammar",{dictionary:{$left:{dictionary:{"$(":520,"$[":520,"$@[":520,"$.":500,"$.*":500,"$@":500,"$@*":500,"$=":420,"$+=":420,"$-=":420,"$*=":420,"$/=":420,"$=?":420,"$=!":420,"$^":380,"$*":340,"$/.":340,"$/":340,"$+":320,"$-":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$~=":120}},$right:{dictionary:{"$.":540,"$@":540,"$^":375,"$++":360,"$--":360,"$*":340,"$/.":340,"$/":340,"$+":320,"$-":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,$not:240,"$!":240,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$~=":120,"$=":100,"$+=":100,"$-=":100,"$*=":100,"$/=":100,"$=?":100,"$=!":100}},$rightSign:360,$rightEqual:100,$highBind:1e3,$prefix:{dictionary:{"$,":"false","$[":["constObject",["lingoBracketParse","false"]],"$#[":["langConsSym",["`","#["],"tokenlast",["lingoParseTo",["`","#]"],"tokenlast"]],$try:["catchParse"],"$(":["parenParse"],"$`":["quoteParse"],$property:["putParse"],$function:["procParse",["`","function"]],$macro:["procParse",["`","macro"]],$closure:["procParse",["`","closure"]],$let:["procParse",["`","let"]],$if:["ifParse","IfBody"],$body:["bodyParse"],$cond:["condParse"],$loop:["loopParse"],$break:["deloopParse",["`","break"]],$continue:["deloopParse",["`","continue"]],$return:["returnParse"],$while:["whileParse"],$for:["for2Parse"],$switch:["switchParse"],"$+":["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]],"$-":["negateParse"],"$!":["notParse"],"$++":["preCrementParse","rtoken",["`","++"],["`","+"]],"$--":["preCrementParse","rtoken",["`","--"],["`","-"]],"${":["constObject",["lingoBraceParse","false"]],"$@":["atPrefixParse"]}},$infix:{dictionary:{"$/":["quotientParse","ltoken"],"$/.":["quotientParse","ltoken"],"$@":["atParse","ltoken"],"$@[":["atBracketParse","ltoken"],"$[":["constObject",["lingoBracketParse","false","ltoken"]],"$=":["equalParse","ltoken",["`","="]],"$=?":["equalParse","ltoken",["`","=?"]],"$=!":["equalParse","ltoken",["`","=!"]],"$+=":["opEqualParse","ltoken",["`","+"]],"$-=":["opEqualParse","ltoken",["`","-"]],"$*=":["opEqualParse","ltoken",["`","*"]],"$/=":["opEqualParse","ltoken",["`","/"]],"$(":["lparParse","ltoken"]}},$postfix:{dictionary:{"$++":["postCrementParse","ltoken",["`","++"],["`","+"]],"$--":["postCrementParse","ltoken",["`","--"],["`","-"]],"$!":["postBangParse","ltoken"]}},$postleft:{dictionary:{"$++":420,"$--":420,"$!":400}},$naryop:{dictionary:{"$&&":"true",$and:"true","$||":"true",$or:"true"}}}}),e._SetBindingList("lingoParse1",["function&","lingoParse1",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParse1","arg1","arg2"]]),e._SetBindingList("lingoReadExpr",["function&","lingoReadExpr",["false","IfBody"],["=","IfBody",["`","IfBody"]],["langReadExpr"]]),e._SetBindingList("lingoBraceParse",["function&","lingoBraceParse",["arg1","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBraceParse","arg1"]]),e._SetBindingList("lingoBracketParse",["function&","lingoBracketParse",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBracketParse","arg1","arg2"]]),e._SetBindingList("lingoParseTo",["function&","lingoParseTo",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseTo","arg1","bloc"]]),e._SetBindingList("lingoParseToList",["function&","lingoParseToList",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseToList","arg1","bloc"]]),e._SetBindingList("constObject",["function","constObject",["tok"],["xlock",[".","tok","atom"]],"tok"]),e._SetBindingList("parenParse",["function","parenParse",["false","expr","sloc"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",0]],[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax",["tokenread"],"false",{dictionary:{$expected:"rpar",$memo:"$) or operator not found"}}]]),e._SetBindingList("negateParse",["function","negateParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]]],[["numeric",[".","expr","atom"]],{dictionary:{$atom:["negate",[".","expr","atom"]],$loc:[".","expr","loc"]}}],["langEnlistSym",["`","-"],"expr","expr"]]),e._SetBindingList("notParse",["function","notParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","!"]]]],["langEnlistSym",["`","not"],"expr","expr"]]),e._SetBindingList("postBangParse",["function","postBangParse",["expr","false","sloc"],["=","sloc","tokenlast"],["langEnlistSym",[".","tokenlast","atom"],"sloc","expr"]]),e._SetBindingList("atPrefixParse",["function","atPrefixParse",["false","expr","ltoken","destoken"],["=","ltoken","tokenlast"],["=","expr",["lingoParse1","ltoken",["deref",[".","lingoGrammar","right"],["`","@"]]]],["=","destoken",{dictionary:{$atom:["`","annotations"],$loc:["langExprLoc","ltoken"]}}],[[["not",["dictionary","annotations"]],["=","annotations",{dictionary:{}}]]],["=","expr",["langEnlistSym","`","expr","expr"]],["langEnlistSym","set.","ltoken","destoken","expr","expr"]]),e._SetBindingList("atParse",["function","atParse",["ltoken","false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","@"]]]],["langEnlistSym",["`","deref"],"ltoken",["langEnlistSym",["`","@"],"ltoken","ltoken"],["langEnlistSym","`","expr","expr"]]]),e._SetBindingList("atBracketParse",["function","atBracketParse",["ltoken"],["lingoBracketParse","false",["langEnlistSym",["`","@"],"ltoken","ltoken"]]]),e._SetBindingList("quotientParse",["function","quotientParse",["lhs","false","rhs"],["=","rhs",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","/"]]]],["langEnlistSym",["`","quotient"],"lhs","lhs","rhs"]]),e._SetBindingList("ifParse",["function&","ifParse",["IfBody"],[[["eq","IfBody",["`","IfBody"]],["return",["langConsSym",["`","cond"],"tokenlast",["ifParse"]]]]],["call",["let","lambda",["notcond","false","expr","nexpr","bloc"],["=","IfBody","true"],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],[[["dictionary","expr"],["=","expr",["langEnlistSym",["`","identity"],"expr","expr"]]]],[[["not",["tokenmatch","{"]],["langPassSeparator"],["=","expr",["list","expr",["langParse1","tokenlast",0]]]],["=","bloc","tokenlast"],["tokenread"],["=","expr",["cons","expr",["langParseTo",["`","}"],"bloc"]]]],[["not",["tokenmatch",["`","else"]]],["list","expr"]],["tokenread"],[["identity","notcond"],[["tokenmatch",["`","if"]],["tokenread"],["list","expr",["ifParse","true"]]],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["cons","expr",["langParseTo",["`","}"],"bloc"]]],["list","expr",["langParse1","tokenlast",0]]],[["tokenmatch",["`","if"]],["tokenread"],["cons","expr",["ifParse","false"]]],["=","nexpr",["langConsSym",["`","identity"],"tokenlast",["langConsSym",["`","true"],"tokenlast"]]],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","nexpr",["cons","nexpr",["langParseTo",["`","}"],"bloc"]]]],["=","nexpr",["list","nexpr",["langParse1","tokenlast",0]]]],["list","expr","nexpr"]],"IfBody"]]),e._SetBindingList("bodyParse",["function&","bodyParse",["false","IfBody"],["call",["let","lambda",["bloc"],[["tokenmatch","lpar"],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","body"],"tokenlast",["langParseTo","rpar","bloc"]]],{dictionary:{$atom:["`","body"],$loc:["langExprLoc","tokenlast"]}}]]]),e._SetBindingList("condParse",["function&","condParse",["false","IfBody"],["call",["let","lambda",["bloc"],[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],[["not",["tokenmatch",["`","if"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$cond( requires if expression"}}]],["langConsSym",["`","cond"],"tokenlast",["apply","append",["langParseTo","rpar","bloc"]]]],{dictionary:{$atom:["`","cond"],$loc:["langExprLoc","tokenlast"]}}]]]),e._SetBindingList("loopParse",["function&","loopParse",["false","SynLoop","IfBody"],["call",["let","lambda",["tagex","sloc","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$loop tag must be an atom"}}]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","loop"],"sloc",["cons","tagex",["langParseTo",["`","}"],"bloc"]]]],["langConsSym",["`","loop"],"sloc",["cons","tagex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("deloopParse",["function","deloopParse",["keyword","false","tagex","sloc","expr"],[["not","SynLoop"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$only allowed within loops"}}]],["=","sloc","tokenlast"],[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$tag must be an atom"}}]],["langEnlistSym","keyword","tokenlast","tagex"]],["langConsSym","keyword","tokenlast"]]),e._SetBindingList("returnParse",["function","returnParse","false",[["tokenmatch","lpar"],["langEnlistSym",["`","return"],"tokenlast",["lingoParse1","tokenlast",0]]],["langConsSym",["`","return"],"tokenlast"]]),e._SetBindingList("whileParse",["function&","whileParse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","expr","tagex","testex","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["dictionary",["car","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$while tag must be an atom"}}]],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],["=","testex",["list",["langEnlistSym",["`","not"],"expr","expr"]]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["langParseTo",["`","}"],"bloc"]]]],["langPassSeparator"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("for2Parse",["function&","for2Parse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","varex","tagex","targex","bloc","bodyex"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["defined","tagex","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$for tag must be an atom"}}]],["=","varex",["lingoParse1","tokenlast",0]],[[["==",[".",["car","varex"],"atom"],"quote"],["=","varex",["cadr","varex"]]]],[["not",["tokenmatch",["`","in"]]],["langSyntax","tokenlast","false",{dictionary:{$expected:"$in",$memo:"$malformed for loop"}}]],["tokenread"],["=","targex",["lingoParse1","tokenlast",0]],["=","SynLoop","true"],["=","IfBody","true"],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","bodyex",["langParseTo",["`","}"],"bloc"]]],["=","bodyex",["cons",["langParse1","tokenlast",0]]]],["langGenIterate",{dictionary:{$atom:["`","for"],$loc:"sloc"}},"tagex","varex","targex","bodyex"]]]]),e._SetBindingList("switchParse",["function","switchParse",["false","sloc"],["=","sloc","tokenlast"],["langSyntax","sloc",{dictionary:{$memo:"$switch not implemented"}}]]),e._SetBindingList("procParse",["function&","procParse",["begin","false","InProc","IfBody"],["function","convlocal",["parms","false","ptoken","result"],[["atom","parms"],"parms"],["loop","false",["=","ptoken",["pop","parms"]],[[["==",[".","ptoken","atom"],"local"],["=","result",["cons",{dictionary:{$atom:"false",$loc:[".","ptoken","loc"]}},"result"]]],["=","result",["cons","ptoken","result"]]],[["atom","parms"],["reverse","result"]]]],["function","checkparms",["parms","false","sym"],[["not","parms"],"false"],[["&&",["dictionary","parms"],["not",["not",["=","sym",[".","parms","atom"]]]]],[["||",["not",["symbol","sym"]],["langParseRule","lingoGrammar","sym"]],["langSyntax","parms","false",{dictionary:{$memo:"$invalid parameter"}}]]],[["tuple","parms"],["checkparms",["car","parms"]],["checkparms",["cdr","parms"]]]],["call",["let","lambda",["expr","procname","parms","sloc","akey","bloc"],["=","InProc","true"],["=","sloc","tokenlast"],["=","expr",["langReadExpr"]],[[["==",[".","expr","atom"],["`","&"]],[["eq","begin",["`","function"]],["=","begin","function&"],["=","expr",["langReadExpr"]]],[["eq","begin",["`","let"]],["=","begin","let&"],["=","expr",["langReadExpr"]]],["langSyntax","sloc","false",{dictionary:{$memo:"$only function& and let& allowed"}}],["return"]]],[[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["=","procname",{dictionary:{$atom:["unintern",[".","expr","atom"]],$loc:["langExprLoc","sloc"]}}],["assign",[".","procname","atom"],[".","expr","atom"]],["=","parms",["langReadExpr"]]],["=","procname",{dictionary:{$atom:["unintern","lambda"],$loc:["langExprLoc","sloc"]}}],["=","parms","expr"]],[[["dictionary","annotations"],["for",["let","lambda",["iter"],["=","iter",["iterate","annotations",["`","akey"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","akey",[".","iter","$value"]],["put",[".","procname","atom"],"akey",["deref","annotations","akey"]]]]],["=","annotations",["`","annotations"]]]],[[["||",["&&",["dictionary","parms"],["not",[".","parms","atom"]]],["not","parms"]],["=","parms",{dictionary:{$atom:"false",$loc:["langExprLoc","tokenlast"]}}]],["=","parms",["convlocal","parms"]]],["checkparms","parms"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc",{dictionary:{$memo:"$missing { at start of procedure body"}}]],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym","begin","sloc",["cons","procname",["cons","parms",["langParseTo",["`","}"],"bloc"]]]]]]]),e._SetBindingList("putParse",["function","putParse",["false","sloc","symtoken","keytoken","value"],["=","sloc","tokenlast"],["=","symtoken",["langReadExpr"]],["=","keytoken",["langReadExpr"]],[["&&",["not",["defined","symtoken","atom"]],["symbol",[".","symtoken","atom"]]],["langSyntax","symtoken","sloc",{dictionary:{$memo:"$malformed property statement"}}]],[["&&",["not",["defined","keytoken","atom"]],["symbol",[".","keytoken","atom"]]],["langSyntax","keytoken","sloc",{dictionary:{$memo:"$malformed property statement"}}]],["langPassSeparator"],["=","value",["lingoParse1","tokenlast",0]],[[["==",["caar","value"],"quote"],["=","value",["rest","value"]]]],["langEnlistSym",["`","defprop"],"sloc","symtoken","keytoken","value"]]),e._SetBindingList("catchParse",["function","catchParse",["false","sloc1","sloc2","sloc3","exbod","ccond","finbod","expr","bloc"],["=","sloc1","tokenlast"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$missing { after try"}}]],["tokenread"],["=","exbod",["langParseToList",["`","}"],"sloc1"]],["=","sloc2","tokenlast"],[[["tokenmatch",["`","catch"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc2",{dictionary:{$memo:"$missing { after catch"}}]],["=","bloc","tokenlast"],["tokenread"],["=","ccond",["call",["function&","lambda",["false","IfBody"],["apply","append",["langParseToList",["`","}"],"bloc"]]]]],[["not","ccond"],["=","ccond",["list",["list",["langConsSym",["`","identity"],"bloc",["langConsSym",["`","true"],"bloc"]]]]]]]],["=","sloc3","tokenlast"],[[["tokenmatch",["`","finally"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc3",{dictionary:{$memo:"$missing { after finally"}}]],["=","bloc","tokenlast"],["tokenread"],["=","finbod",["langParseToList",["`","}"],"bloc"]]]],[["not","ccond"],[["not","finbod"],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$try requires catch or finally"}}]],["=","ccond",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc2"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],[["not","finbod"],["=","finbod",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc3"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]]),e._SetBindingList("equalParse",["function","equalParse",["lhs","op","false","rhs","atex","equex"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],["=","equex",["call",["let","lambda","false",[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","op","lhs","lhs","rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","op","lhs",["second","lhs"],"rhs"]],[["==",[".",["car","lhs"],"atom"],"period"],["langEnlistSym","set.","lhs",["second","lhs"],["langEnlistSym","quote",["third","lhs"],["third","lhs"]],"rhs"]],[["and",["==",[".",["car","lhs"],"atom"],"set."],["eq",[".",["second","lhs"],"atom"],["`","annotations"]]],["langEnlistSym","set.","lhs",["second","lhs"],["third","lhs"],"rhs"]],[["or",["==",[".",["caar","lhs"],"atom"],"deref"],["==",[".",["caar","lhs"],"atom"],"dereflist"]],["=","atex",["second","lhs"]],[[["==",[".",["car","atex"],"atom"],["`","@"]],["=","atex",["langEnlistSym",["`","@"],"atex",["second","atex"],{dictionary:{$atom:"true",$loc:[".",["car","atex"],"loc"]}}]]]],["langEnlistSym","set[","lhs","atex",["third","lhs"],"rhs"]],["return",["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad assignment"}}]]]]],[["eq","op",["`","=!"]],["langEnlistSym",["`","not"],"lhs","equex"]],"equex"]),e._SetBindingList("opEqualParse",["function","opEqualParse",["lhs","op","false","sloc","rhs"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","preadjust","lhs",["second","lhs"],{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["member",[".",["car","lhs"],"atom"],["`",[".","deref","dereflist"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad operator assignment"}}]]),e._SetBindingList("lparParse",["function","lparParse",["expr","false","bloc"],["=","bloc","tokenlast"],[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["cons","expr",["lingoParseTo","rpar","bloc"]]],[["==",[".",["car","expr"],"atom"],"period"],["langEnlistSym","period","expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],[[["not","InProc"],["set[",["@",[".",[".","expr",1],"atom"],"true"],["`","\\.lingoInit"],"true"]]],["langConsSym",["`","call"],"expr",["cons","expr",["lingoParseTo","rpar","bloc"]]]],[["or",["==",[".",["caar","expr"],"atom"],"deref"],["==",[".",["caar","expr"],"atom"],"dereflist"]],["langEnlistSym",[".",["caar","expr"],"atom"],"expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],["langSyntax","bloc","false",{dictionary:{$memo:"$operator missing before ("}}]]),e._SetBindingList("preCrementParse",["function","preCrementParse",["rtoken","opsym","adjuster","false","sloc","expr"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],"opsym"]]],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","preadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("postCrementParse",["function","postCrementParse",["expr","opsym","adjuster","false","sloc"],["=","sloc","tokenlast"],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","postadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("quoteParse",["function","quoteParse",["false","expr"],["=","expr","tokenlast"],[["member",[".","expr","atom"],["`",["quote",")","{","[","`","\n"]]],["tokenread"],"expr"],["langEnlistSym","`","expr",["langReadExpr"]]]),e._SetBindingList("makeBootJS",["function","makeBootJS",["false","content"],["=","content",{array:[]}],["set[","content",0,"$/*\n * naan_lingo.js\n *\n * Contains Confidential Trade Secrets of Zulch Laboratories, Inc.\n * Portions Copyright (c) 2017-2021 by Richard C. Zulch\n *\n * This confidential source file is licensed to:\n * %%%Licensee%%%\n * Version %%%Version%%%\n *\n * This file contains the Lib runtime library and the Lingo language subsystem.\n * Lib:\n * RuntimeLib.nlg - basic functionality accessed through the language\n * LangLib.nlg - generic language utilities, e.g. parser and unparser\n * Lingo components:\n * Parse.nlg - parser\n * Unparse.nlg - unparser\n * CLI components:\n * CliUtils.nlg - CLI shared utility functions\n * Driver.nlg - repl driver\n * Debugger.nlg - CLI debugger\n *\n * column positioning: // // !\n *\n */\n\n(function(exports){\n\nexports.BootLingo = function(ninti) {\n\n 'use strict';\n\n //\n // Namespace<Lib>\n //\n\n var savens = ninti._SetNamespace('Lib');\n\n ninti._CopyBinding('equal', '==');\n ninti._CopyBinding('setq', '=');\n ninti._CopyBinding('and', '&&');\n ninti._CopyBinding('or', '||');\n ninti._CopyBinding('loop', 'while');\n\n ninti._Import('number', 'difference', '-');\n ninti._Import('number', 'greater', '>');\n ninti._Import('number', 'lesser', '<');\n ninti._Import('number', 'times', '*');\n ninti._Import('number', 'plus', '+');\n ninti._Import('number', 'quotient', '/');\n ninti._Import('number', 'quotient', '/.');\n\n ninti._SetValue('echo', []);\n ninti._SetValue('err', []);\n ninti._SetValue('rdsDriver');\n\n"],["set[","content",0,[".",["deref","content",0],"replace",[["RegExp","$%%%","$g"],"$$"]]],["set[","content",1,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"Lib"],"components"],"RuntimeLib"],"jspackage","false"]],["set[","content",2,"$ ninti._Execute(['RuntimeLibInit', '$Lib']);\n\n"],["set[","content",3,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"Lib"],"components"],"Languages"],"jspackage","false"]],["set[","content",4,"$ ninti._Execute(['LanguagesInit']);\n\n"],["set[","content",5,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"Lib"],"components"],"LangLib"],"jspackage","false"]],["set[","content",6,"$ ninti._Execute(['LangLibInit']);\n\n ninti._SetNamespace('Lingo');\n ninti._Execute(['.', ['.', 'Naan', 'module'], 'letlocal', ['module']]);\n\n ninti._Execute(['.', ['.', 'Naan', 'module'], 'letinherit', ['$Lib']]);\n\n"],["set[","content",7,[".",[".",[".","module","components"],"Parse"],"jspackage","false"]],["set[","content",8,"$ ninti._Execute(['LingoInit', '$Lingo']);\n"],["set[","content",9,[".",[".",[".","module","components"],"Unparse"],"jspackage","false"]],["set[","content",10,"$ ninti._Execute(['LingoUnparseInit']);\n\n ninti._SetNamespace(savens.slice(1), true);\n ninti._SetNamespace('CLI');\n ninti._Execute(['.', ['.', 'Naan', 'module'], 'letinherit', ['$Lang_Lingo']]);\n\n"],["set[","content",11,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"CLI"],"components"],"CliUtils"],"jspackage","false"]],["set[","content",12,"$ ninti._Execute(['CliUtilsInit']);\n\n"],["set[","content",13,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"CLI"],"components"],"Driver"],"jspackage","false"]],["set[","content",14,"$ ninti._Execute(['DriverInit']);\n ninti._CopyBinding('Driver', 'driver');\n\n"],["set[","content",15,[".",[".",[".",[".",[".",[".","module","owner"],"list"],"CLI"],"components"],"Debugger"],"jspackage","false"]],["set[","content",16,"$ ninti._Execute(['DebuggerInit']);\n\n ninti._SetNamespace(savens, true);\n};\n\n})(typeof exports === 'undefined'? this.naan_lingo={}: exports);\n"],[".","content","join",["$"]]]),e._AddPropertyList("LingoInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoInit",["function","LingoInit",["modname","false","manifest"],["=","manifest",["`",["LingoPreload","LingoParser","lingoGrammar","lingoParse1","lingoReadExpr","lingoBraceParse","lingoBracketParse","lingoParseTo","lingoParseToList","constObject","parenParse","negateParse","notParse","postBangParse","atPrefixParse","atParse","atBracketParse","quotientParse","ifParse","bodyParse","condParse","loopParse","deloopParse","returnParse","whileParse","for1Parse","for2Parse","switchParse","procParse","putParse","catchParse","equalParse","opEqualParse","lparParse","preCrementParse","postCrementParse","quoteParse","makeBootJS","LingoInit"]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$Parse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Base"],["DefineLanguage","$Lingo","lingoGrammar","LingoParser","LingoUnparser"]],["=","lingoOperators",[".",[".",[".",[".","modobj","exports"],"Base"],"info","false"],"operators"]]]]]]),e._Execute(["LingoInit","$Lingo"]),e._SetBindingList("LingoPrinter",["function","LingoPrinter",["expr","options"],[".",["LingoUnparser","expr","options"],"string","false"]]),e._SetBindingList("LingoUnparser",["closure","LingoUnparser",["origexpr","options","grammar","extensions","false","unparser","sink","formatter","key","expr","rbp","lbp","owntuple","hookif"],["=","unparser",["new","object","this"]],["set.","unparser",["`","expression"],"origexpr"],[[["not","grammar"],["=","grammar","lingoGrammar"]]],["set.","unparser",["`","sink"],["=","sink",{dictionary:{$row:0,$col:0,$incol:0,$hangdent:0,$wrapping:"true",$rowtokens:{array:[{array:[]}]},$procnesting:0,$endprocNL:"true",$quoteDict:["RegExp","$[`:,}]$"],$breaks:"false",$mirrors:"false",$mirroroot:"false",$tuplemap:"false",$maxmarklen:0,$markdict:"false",$nocycles:["new","weakmap"],$maproot:"false",$defoptions:{dictionary:{$point:"false",$quoted:"true",$indentSize:4,$wrapMinAmount:29,$wrapMaxCol:79,$leftMargin:0,$compact:"true",$maxKeyLength:20,$maxElements:1024,$maxStringLength:["*",64,1024],$noComments:"false",$commentCol:64}}}}]],["call",["let","lambda",["false","item"],[[["not",["dictionary","options"]],["=","options",[".","sink","defoptions"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","options",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["set[",[".","sink","defoptions"],"item",["deref","options","item"]]]]],["=","options",[".","sink","defoptions"]]],["set.","unparser",["`","options"],"options"]]],["set.","sink",["`","col"],[".","options","leftMargin"]],["=","formatter",{dictionary:{"$`":"uhook`","$=":"uhook=",$deref:"uhookderef",$dereflist:"uhookderef","$set.":"uhookset.","$set[":"uhookset[","$.":"uhook.","$.*":"uhookref*","$@*":"uhookref*",$quotient:"uhookquotient",$catch:"uhookcatch",$for:"uhookfor",$call:"uhookcall",$while:"uhookwhile",$loop:"uhookloop",$cond:"uhookcond",$return:"uhookreturn",$continue:"uhookbreco",$break:"uhookbreco",$preadjust:"uhookpreadjust",$postadjust:"uhookpostadjust",$not:"uhooknot","$!":"uhookbang",$let:"uhookproc","$let&":"uhookproc",$closure:"uhookproc",$macro:"uhookproc",$function:"uhookproc","$function&":"uhookproc"}}],["for",["let","lambda",["iter"],["=","iter",["iterate","extensions",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","formatter","key",["deref","extensions","key"]]]]],["function","earlier",["loc1","loc2"],[["<",["car","loc1"],["car","loc2"]],"loc1"],[[">",["car","loc1"],["car","loc2"]],"loc2"],[["<",["second","loc1"],["second","loc2"]],"loc1"],[[">",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","later",["loc1","loc2"],[[">",["car","loc1"],["car","loc2"]],"loc1"],[["<",["car","loc1"],["car","loc2"]],"loc2"],[[">",["second","loc1"],["second","loc2"]],"loc1"],[["<",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","indentadj",["delta"],["preadjust",[".","sink","incol"],"+",["*","delta",[".","options","indentSize"]]],[["<",[".","sink","incol"],0],["set.","sink",["`","incol"],0]]],["function","nextline","false",["set[",[".","sink","rowtokens"],["preadjust",[".","sink","row"],"+",1],{array:[]}],["set.","sink",["`","col"],[".","sink","incol"]],[[">",[".","sink","hangdent"],0],["preadjust",[".","sink","col"],"+",[".","options","indentSize"]]]],["function&","outoken",["strs","false","str","toklen","outok","sym"],[[["<",[".","sink","col"],[".","sink","incol"]],["set.","sink",["`","col"],[".","sink","incol"]]]],["while","false",[["not",["not",["atom","strs"]]]],["=","str",["pop","strs"]],[[["not",["atom","str"]],["=","owntuple","str"],["continue"]]],[[["symbol","str"],["=","sym","str"],["=","str",["tostring","sym",{dictionary:{$quote:"true",$nonamespace:"true"}}]]]],[[[">",[".","str","length"],[".","options","maxStringLength"]],["=","str",[".","$[String ","concat",[[".","str","length"],"$]"]]]]],[[["==","str","$\n"],["nextline"],["continue"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","str",["totuple",[".","str","split",["$\n"]]]],["=","outok","false"],["loop","false",["push",["pop","str"],"outok"],[["empty","str"]],["push","$\n","outok"]],["outoken",["reverse","outok"]],["continue"]]]],["=","toklen",["length","str"]],[[["!=",[".","str","trim","false"],"$"],[[["&&",[".","sink","wrapping"],[">",["+",[".","sink","col"],"toklen"],[".","options","wrapMaxCol"]],[">",["-",[".","sink","col"],[".","sink","incol"]],[".","options","wrapMinAmount"]]],["nextline"]]],["=","outok",{dictionary:{$str:"str",$column:[".","sink","col"],$tuple:"owntuple"}}],[[["identity","sym"],["set.","outok",["`","symbol"],"sym"]]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["outok"]]]],["preadjust",[".","sink","col"],"+","toklen"]]],["function","mktok","strs",["outoken","strs"]],["function","mktokil","strs",["call",["function","lambda",["false","result"],["set.","sink",["`","wrapping"],"false"],["=","result",["apply","mktok","strs"]],["set.","sink",["`","wrapping"],"true"],"result"]]],["function","spaces",["lop1"],[["not",["and","lop1",["atom","lop1"]]],[["identity","spaceout"],["mktok","space"]]],[["<",["deref",[".","grammar","right"],"lop1"],"lbp"],["mktok","space"]],[["<",["deref",[".","grammar","left"],"lop1"],"rbp"],["mktok","space"]],[["identity","spaceout"],["mktok","space"]],[["not",["isbreak","lop1"]],["mktok","space"]]],["function","parens",["str"],[["deref",[".","grammar","right"],"lop1"],[[">","lbp",["deref",[".","grammar","right"],"lop1"]],["mktokil","str"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]],["=","spaceout","false"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]]],["macro","getokens",["outputter","false","rowstart","colstart"],["function","dequeue",["false","rowdex","coldex","outqueue","col"],["=","outqueue",{array:[]}],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowstart"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[">=",[".","col","column"],"colstart"],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowstart"],"splice",["coldex"]]]]],["set.","sink",["`","col"],[".","col","column"]]],["preadjust","coldex","+",1]]]],["set.","sink",["`","row"],"rowstart"],["set.","sink",["`","col"],"colstart"],["=","rowdex","rowstart"],["while","false",[["not",["<",["preadjust","rowdex","+",1],[".",[".","sink","rowtokens"],"length"]]]],[".","outqueue","push",[["`","row"]]],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[0]]]]]],[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[["+","rowstart",1]]],"outqueue"],["=","rowstart",[".","sink","row"]],["=","colstart",[".","sink","col"]],[["eval","outputter"],["dequeue"]]],["function","putokens",["tokens","false","item"],["for",["let","lambda",["iter"],["=","iter",["iterate","tokens",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[[["eq","item",["`","row"]],["nextline"]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["item"]],["set.","sink",["`","col"],["+",[".","item","column"],["length",[".","item","str"]]]]]]]]],["function","tokenmark","false",{dictionary:{$rowstart:[".","sink","row"],$colstart:[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"length"],$col:[".","sink","col"],$incol:[".","sink","incol"]}}],["function","tokentruncate",["mark"],[".",["deref",[".","sink","rowtokens"],[".","mark","rowstart"]],"splice",[[".","mark","colstart"]]],[".",[".","sink","rowtokens"],"splice",[["+",[".","mark","rowstart"],1]]],["set.","sink",["`","row"],[".","mark","rowstart"]],["set.","sink",["`","col"],[".","mark","col"]],["set.","sink",["`","incol"],[".","mark","incol"]]],["function","exarray",["arr","false","adex","separator"],[[["deref",[".","sink","nocycles"],"arr"],["mktokil","$[","$<cyclic>","$]"],["return"]]],["set[",[".","sink","nocycles"],"arr","true"],["=","adex",0],["=","separator","space"],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[["dictionary",["deref","arr",["postadjust","adex","+",1]]],["=","separator","$\n"],["break"]]]],["mktok","$["],[[["==","separator","$\n"],["nextline"],["indentadj",1]]],["=","adex",0],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[[">=","adex",[".","options","maxElements"]],["mktok","$<...>"],["break"]]],[[[">","adex",0],["mktokil","$,","separator"]]],["exoutput",["deref","arr",["postadjust","adex","+",1]],"arr",0,0]],[[["==","separator","$\n"],["indentadj",-1]]],["mktok","$]"],["set[",[".","sink","nocycles"],"arr","false"]],["function","exdictionary",["dict","false","tokens","keylenmax","depths","dictmap","completed"],["function","render",["whitespace","keypad","false","mark","startrow","notfirst","keylen","keystr","savehang","key"],["=","mark",["tokenmark"]],["=","startrow",[".","sink","row"]],["=","savehang",[".","sink","hangdent"]],["set.","sink",["`","hangdent"],0],["set.","sink",["`","endprocNL"],"false"],[[["identity","keypad"],["mktok","{","$\n"]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["||",["eq",["typeof",["deref","dict","key"]],"dictionary"],["eq",["typeof",["deref","dict","key"]],"array"]],["tokentruncate","mark"],["return","false"]]]]]],["mktok","{"]],[[["identity","keypad"],["indentadj",1]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keystr","key"],[[["&&",[".","options","quoted"],[".",[".","sink","quoteDict"],"test",["keystr"]]],["=","keystr",[".",'$"',"concat",["keystr",'$"']]]]],["=","keylen",["length","keystr"]],[[["&&","keypad",[">","keypad","keylen"]],["=","keystr",[".","keystr","concat",[[".","space","repeat",[["-","keypad","keylen"]]]]]]]],[[["identity","notfirst"],["mktokil","$,","whitespace"]],[[">",[".","sink","col"],[".","sink","incol"]],["mktokil","space"]]],["=","notfirst","true"],["mktokil","keystr","$:","space"],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],[["||",["deref",[".","sink","nocycles"],["deref","dict","key"]],["deref","dictmap",["deref","dict","key"]]],["mktokil","${","$<cyclic>","$}"]],["set[","dictmap",["deref","dict","key"],"true"],["outputdict",["deref","dict","key"],["+","depth",1]],["set[","dictmap",["deref","dict","key"],"false"]],["exoutput",["deref","dict","key"],"dict",0,0]],[[["&&",["not","keypad"],["!=",[".","sink","row"],"startrow"]],["tokentruncate","mark"],["return","false"]]]]]],[[["identity","keypad"],["indentadj",-1]]],["mktokil","space",["`","}"]],["set.","sink",["`","endprocNL"],"true"],["set.","sink",["`","hangdent"],"savehang"],["return","true"]],["function","computeMaxKeyLengths",["dict","depth","false","key","keylen"],[[["deref","dictmap","dict"],["return"]]],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["return"]]],["set[","dictmap","dict","true"],[[["not",["deref","depths","depth"]],["set[","depths","depth",0]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keylen",["length","key"]],[[["<",["deref","depths","depth"],"keylen"],["set[","depths","depth","keylen"]]],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],["computeMaxKeyLengths",["deref","dict","key"],["+","depth",1]]]]]]],[[[">",["deref","depths","depth"],[".","options","maxKeyLength"]],["set[","depths","depth",[".","options","maxKeyLength"]]]],["set[","dictmap","dict","false"]],["function&","outputdict",["dict","depth","false","keypad"],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["mktok","$<...>"],["return"]]],["=","keypad",["deref","depths","depth"]],[[["&&",[">","depth",0],["<","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]],["=","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]]],[["not",["render","$ "]],["render","$\n","keypad"]]],[[["deref",[".","sink","nocycles"],"dict"],["mktokil","${","$<cyclic>","$}"],["return","true"]]],["set[",[".","sink","nocycles"],"dict","true"],["=","depths",{array:[]}],["=","dictmap",["new","weakmap"]],["=","completed",0],["computeMaxKeyLengths","dict",0],["=","completed",0],["set[","dictmap","dict","true"],["outputdict","dict",0],["set[",[".","sink","nocycles"],"dict","false"],"true"],["function","exobject",["obj","false","str"],["=","str",[".","obj","\\.tostring",["obj"]]],[[["not","str"],["=","str",["tostring","obj"]]]],["mktok","str"]],["function","exlist",["lex1","owner","paramlist","false","ex1","xpar","savetup","savenest"],["=","savetup","owntuple"],["=","savenest",[".","sink","procnesting"]],["set.","sink",["`","procnesting"],0],[[["identity","owner"],["=","owntuple","owner"]]],[[["empty","lex1"],["mktokil","$(","$)"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]],["mktok","$("],["preadjust",[".","sink","hangdent"],"+",1],["loop","false",[[["&&","paramlist",["not","ex1"]],["=","ex1","local"]]],["exoutput","ex1","xpar"],[[["empty","lex1"],[[["identity","lex1"],["mktokil","space","$.","space","lex1"]]],["break"]]],[[["eq","ex1","local"],["mktokil","space"]],["mktokil","$,","space"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]]],["preadjust",[".","sink","hangdent"],"-",1],["mktokil","$)"]],["set.","sink",["`","procnesting"],"savenest"],["=","owntuple","savetup"]],["function","exannotation",["lex1"],["exoutput",["cadar","lex1"],"owntuple",0,["deref",[".","grammar","left"],["`","@"]]],["mktok",["`","@"]],[["==",["caadr","lex1"],"`"],["exoutput",["cadadr","lex1"],"owntuple",["deref",[".","grammar","right"],["`","@"]],0]],["mktok","$["],["exoutput",["second","lex1"],"owntuple",0,0],["mktok","$]"]],["function&","exoutput",["expr","owntuple","rbp","lbp","spaceout","false","ex1","ex2","ex3","lop1","lex1"],[[["not","rbp"],["=","rbp",0]]],[[["not","lbp"],["=","lbp",0]]],[["atom","expr"],[["dictionary","expr"],["exdictionary","expr"]],[["array","expr"],["exarray","expr"]],[["object","expr"],["exobject","expr"]],[["and",["float","expr"],["or",["positive",[".","options","point"]],["zero",[".","options","point"]]]],["mktok",[".","expr","toFixed",["point"]]]],[["and",["negative","expr"],[">","lbp",[".","grammar","rightSign"]]],["mktok","$(",["tostring","expr"],"$)"]],[["symbol","expr"],["mktok","expr"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],["=","owntuple","expr"],["=","lop1",["car","expr"]],["=","lex1",["cdr","expr"]],[["and","lex1",["empty","lex1"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],[["not",["symbol","lop1"]],["exlist","expr"]],[["apply",["deref","formatter","lop1"],["list","lex1","lop1","rbp","lbp","hookif"]]],[["and",["not",["deref",[".","grammar","left"],"lop1"]],["not",["deref",[".","grammar","right"],"lop1"]],["not",["getproc","lop1"]]],["exlist","expr"]],[["empty","lex1"],["mktok","lop1"],["mktokil","$(","$)"]],[["==","lop1","quote"],["mktok","lop1"],["exoutput","ex1","owntuple",[".","grammar","highBind"],0]],["=","ex1",["pop","lex1"]],[["empty","lex1"],["parens","$("],[["deref",[".","grammar","right"],"lop1"],["mktok","lop1"],["spaces","lop1"],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],[["deref",[".","grammar","left"],"lop1"],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["spaces","lop1"],["mktok","lop1"],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],[["and",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]],["parens","$("],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["loop","false",["=","ex1",["pop","lex1"]],["spaces","lop1"],["mktok","lop1"],["spaces","lop1"],[["empty","lex1"]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],["function&","exbody",["upbody","inloop","nobrace","false","item","startin","lastitem"],["function","debugExbody","args",[["identity","false"],["apply",[".",[".","Naan","debug"],"debuglog"],"args"]]],["function","braceOpen","false",[[[".","options","compact"],["mktokil","space","${"]],["nextline"],["mktok","${"]],["indentadj",1]],["function","braceClose",["goleft"],["indentadj",-1],[["&&",["and",[".","options","compact"],["not","goleft"]],[">",[".","sink","incol"],"startin"]],["mktokil","space","$}"]],["nextline"],["mktok","$}"]],["function","mkiftest",["test","didif"],["nextline"],["preadjust",[".","sink","hangdent"],"+",1],[[["==","test",["`",["identity","true"]]],["mktok","test","$else"]],[[["identity","didif"],["mktok","test","$else if","space"]],["mktok","test","$if","space"]],[["==",["car","test"],["`","identity"]],["exoutput",["second","test"],"test",0,0,"true"]],["exoutput","test","test",0,0,"true"]],["preadjust",[".","sink","hangdent"],"-",1]],["function","mkindented",["upbody","inloop","elseafter"],[["||",[">=",["length",["cdr","upbody"]],2],["&&",["atom",["caar","upbody"]],[">=",["length","upbody"],2]],["&&","upbody","inloop"],["&&","elseafter",["tuple",["car","upbody"]],["tuple",["caar","upbody"]]],["dictionary",["car","upbody"]]],["debugExbody","$mkindented 0","upbody","$|","inloop","$|","elseafter"],["braceOpen"],["mkitems","upbody","false","false"],[[["identity","inloop"],["nextline"],["mktok","$break"]]],["braceClose"]],["debugExbody","$mkindented 1","upbody","$|","inloop","$|","elseafter"],["indentadj",1],["mkitems","upbody","false","false"],[[["identity","inloop"],["mktokil","space","$break"]],[["not","upbody"],["mktokil","space","${ }"]]],["indentadj",-1]],["function","mkitems",["upbody","didif","inloop","false","item","fitem","ffitem","fffitem"],[["empty","upbody"]],["set.",["deref",[".","sink","tuplemap"],"upbody"],["`","bp"],"true"],["=","item",["car","upbody"]],["=","fitem",["car","item"]],["=","ffitem",["car","fitem"]],["=","fffitem",["car","ffitem"]],["debugExbody","$mkitems 0","item","$|","fitem","$|","ffitem","$|","fffitem","$>",["cdr","upbody"]],[[["and","didif",["or",["atom","item"],["atom","fitem"],["and",["not",["atom","ffitem"]],["atom","fffitem"]]]],["debugExbody","$mkitems 1","didif"],["nextline"],["mktok","$else"],["mkindented","upbody","false",["&&",["not",["atom","item"]],["not",["atom","fitem"]]]],["=","upbody","false"]],[["or",["atom","item"],["atom","fitem"]],["debugExbody","$mkitems 2"],[[["&&","lastitem",["array","item"]],["mktok","$,"]]],["nextline"],["exoutput","item","upbody",0,0,"true"]],[["atom","ffitem"],["debugExbody","$mkitems 3","didif","inloop",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]],["mkiftest",["car","item"],"didif"],["mkindented",["cdr","item"],"inloop",["&&",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]]],["=","didif",["not","inloop"]]],["mkiftest",["caar","item"],"didif"],["debugExbody","$mkitems 4",["cdar","item"],"$|",["cadr","item"],"$|",["caadr","item"]],["mkindented",["cdar","item"],"false",["tuple",["&&",["caaar","item"],["tuple",["cadr","item"]]]]],["mkitems",["cdr","item"],"true","false"],["=","didif","false"]],["=","lastitem","item"],["mkitems",["cdr","upbody"],"didif","inloop"]],["=","startin",[".","sink","incol"]],["debugExbody","$=====","upbody","nobrace"],[["identity","nobrace"],["indentadj",1],["mkitems","upbody","false","inloop"],["indentadj",-1]],["braceOpen"],["mkitems","upbody","false","inloop"],["braceClose",["&&",["==",[".","sink","procnesting"],1],[".","sink","endprocNL"]]]],["=","hookif",{dictionary:{$parens:"parens",$spaces:"spaces",$mktok:"mktok",$mktokil:"mktokil",$nextline:"nextline",$indentadj:"indentadj",$grammar:"grammar",$exlist:"exlist",$exannotation:"exannotation",$exoutput:["function","lambda",["expr","owner","rbp","lbp","spaceout"],[[["not","owner"],["=","owner","owntuple"]]],["exoutput","expr","tuple","rbp","lbp","spaceout"]],$exbody:["function","lambda",["upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"-",1]]}}],["function","uhookproc",["lex1","proctype","false","data","fname","fbind"],["preadjust",[".","sink","procnesting"],"+",1],["=","fname",["car","lex1"]],[[["&&",["not",[".","options","noComments"]],["not",[".","sink","maproot"]],["deref",["@","fname"],["`","\\.sourcemap"]]],["set.","sink",["`","maproot"],["cons","proctype","lex1"]]]],["=","fbind","lex1"],["mktok",["tostring","proctype",{dictionary:{$noquote:"true"}}]],["mktok","space"],[[["not",["lambda","fname"]],["exoutput","fname","lex1",0,0,"true"]]],["=","parms",["cadr","fbind"]],[[["identity","parms"],[["atom","parms"],["mktok","space","parms"]],["exlist","parms",["cdr","fbind"],"true"]],["mktok","$(","$)"]],["exbody",["cddr","fbind"]],[[["deref",["@","fname"],["`","\\.lingoInit"]],["mktok","$(","$)"]]],[[["and",[">",[".","sink","procnesting"],1],[".","sink","endprocNL"]],["nextline"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhook`",["lex1","lop1","false","ex1"],["parens","$("],["mktok","lop1"],["=","ex1",["car","lex1"]],[[["atom","ex1"],["exoutput","ex1","owntuple",0,0]],["exlist","ex1"]],["parens","$)"],"true"],["function","uhook=",["lex1","lop1"],["parens","$("],[[["tuple",["car","lex1"]],["mktok","quote"]]],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","lop1","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0,"true"],["parens","$)"],"true"],["function","uhookpreadjust",["lex1","lop1","false","target","adjuster","value"],["parens","$("],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[[["==","value",1],["mktok","adjuster","adjuster"],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]]],["exoutput","target","owntuple",0,["deref",[".","grammar","left"],["`","="]]],["mktok","space","adjuster",["`","="],"space"],["exoutput","value","expr",["deref",[".","grammar","right"],["`","="]],0]],["parens","$)"],"true"],["function","uhookpostadjust",["lex1","lop1","false","target","adjuster","value"],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[["==","value",1],["parens","$("],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]],["mktok","adjuster","adjuster"],["parens","$)"],"true"]],["function","uhookbreco",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$:",["tostring",["car","lex1"],{dictionary:{$quote:"true",$nonamespace:"true"}}]]],["mktok","lop1"],"true"],["function","uhookreturn",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","$)"]],["mktok","lop1"],"true"],["function","uhookcond",["lex1","lop1"],["mktok","lop1","$("],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1"],["preadjust",[".","sink","procnesting"],"-",1],["mktok","$)"],"true"],["function","uhookloop",["lex1","lop1","false","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1","true",["not",["cdr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookwhile",["lex1","lop1","false","flex","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["=","flex",["car","lex1"]],[[["==",["caar","flex"],["`","not"]],["exoutput",["cadar","flex"],"owntuple",0,0,"true"]],["exoutput","flex","owntuple",0,0,"true"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["cdr","lex1"],"true",["not",["cddr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookfor",["lex1","lop1","false","flex","looptag","targex","varex","upbody"],["=","flex",["car","lex1"]],["=","looptag",[".",[".","flex",4],1]],["=","targex",[".",[".",[".","flex",3],2],1]],["=","varex",[".",[".",[".",[".","flex",3],2],2],1]],["=","upbody",[".",[".","flex",4],-4]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["exoutput","varex","owntuple",0,0,"true"],["mktok","space","$in","space"],["exoutput","targex","owntuple",0,0,"true"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","true",["not",["cdr","upbody"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookcall",["lex1","lop1","false","callee"],["=","callee",["car","lex1"]],["set.","sink",["`","endprocNL"],"false"],["preadjust",[".","sink","procnesting"],"+",1],["lprAdjust","uhookProc",1],[[["procedure","callee"],["exoutput","callee","owntuple",0,0],["mktokil","space","$("]],["mktokil","lop1","$("],["exoutput","callee","owntuple",0,0],[["not",["empty",["cdr","lex1"]]],["mktok","$,","space"]]],["set.","sink",["`","endprocNL"],"true"],["=","lex1",["cdr","lex1"]],["loop","false",[["empty","lex1"]],["exoutput",["pop","lex1"],"owntuple",0,0],[["empty","lex1"]],["mktok","$,","space"]],["mktokil","$)"],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookquotient",["lex1","lop1","false","op"],[[["==",["deref",[".","grammar","infix"],["`","/"]],["deref",[".","grammar","infix"],["`","/."]]],["=","op",["`","/"]]],["=","op",["`","/."]]],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","op","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"op"],0,"true"],["parens","$)"],"true"],["function&","uhookcatch",["lex1","lop1"],["set.","sink",["`","endprocNL"],"false"],["mktok","$try"],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["car","lex1"]],[[["not",["second","lex1"]]],["nextline"],["mktok","$catch"],["exbody",["second","lex1"]]],[[["not",["third","lex1"]]],["nextline"],["mktok","$finally"],["exbody",["third","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],["set.","sink",["`","endprocNL"],"true"],"true"],["function","uhook.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["second","lex1"],"owntuple",0,0],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookset.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["cadadr","lex1"],"owntuple",0,0],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookset[",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["||",["empty","expr"],["getproc",["car","expr"]]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["empty","expr"]],["mktok","$,"]]],["mktok","$]"]],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookderef",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["==","lop1",["`","deref"]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["atom","expr"]],["mktok","$,"]]],["mktok","$]"]],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookref*",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0],["mktok","lop1"],["parens","$)"],"true"],["function","uhooknot",["lex1","lop1"],[[["==",["caar","lex1"],["`","=!"]],["return",["uhook=",["cdar","lex1"],["`","=!"]]]]],["parens","$("],["mktok","$!"],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","right"],"lop1"]],["parens","$)"],"true"],["function","uhookbang",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","postleft"],"lop1"]],["mktok","$!"],["parens","$)"],"true"],["function","commentInject",["comments","false","newrows","readx","added","acom","type","textlines","text","col"],["function","addcol",["row","str","col"],[".","row","push",[{dictionary:{$str:"str",$column:"col"}}]],"row"],["=","newrows",{array:[]}],["=","readx",0],["=","added",0],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","type",[".","acom",2]],["=","col",[".","acom",1]],["=","textlines",[".",[".","acom",3],"split",["$\n"]]],["while","false",[["not",[">",[".","textlines","length"],0]]],["=","text",[".","textlines","shift","false"]],[[["not",[".","acom",0]],[".","newrows","push",[["addcol",{array:[]},"text",[".","acom",1]]]],["preadjust","added","+",1]],["while","false",[["not",["&&",["<",[".","newrows","length"],["+",[".","acom",0],"added"]],["<","readx",[".",[".","sink","rowtokens"],"length"]]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],[[["||",["<=","type",0],[">=","readx",[".",[".","sink","rowtokens"],"length"]]],[".","newrows","push",[["addcol",{array:[]},"text","col"]]],["preadjust","added","+",1]],[[["<","col",[".","options","commentCol"]],["=","col",[".","options","commentCol"]]]],[".","newrows","push",[["addcol",["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]],"text","col"]]],["=","type",0]]]]]]],["while","false",[["not",["<","readx",[".",[".","sink","rowtokens"],"length"]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],["set.","sink",["`","rowtokens"],"newrows"],["set.","sink",["`","row"],[".","newrows","length"]]],["function","commentMap",["false","locmap","nodecount","sourcemap","output","acom","nodeloc"],["function","remap",["expr","nodeloc"],[["atom","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","nodeloc","first"]]]],["=","nodeloc",["deref",[".","sink","tuplemap"],"expr"]],["remap",["car","expr"],"nodeloc"],[["cdr","expr"],["remap",["cdr","expr"],"nodeloc"]]],[[["not",[".","sink","maproot"]],["return","false"]]],["=","locmap",{array:[]}],["=","nodecount",0],["remap",[".","sink","maproot"]],["=","sourcemap",["deref",["@",[".",[".","sink","maproot"],1]],["`","\\.sourcemap"]]],[[["!=",[".","sourcemap","count"],"nodecount"],["debuglog",[".","$sourcemap mismatch in ","concat",[[".",[".","sink","maproot"],1],"$: "]],"nodecount","$vs",[".","sourcemap","count"]]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sourcemap","comments"],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","nodeloc",["deref","locmap",[".","acom",0]]],[".","output","push",[["list",[".","nodeloc",0],[".","nodeloc",1],[".","acom",1],[".","acom",2]]]]]]],"output"],["function","indextuples",["false","remaining"],["function","enqueue",["expr","false","node"],[["atom","expr"],"expr"],["=","node",{dictionary:{$tuple:"expr",$sink:"sink"}}],[".",[".","sink","mirrors"],"push",["node"]],[".","remaining","push",["node"]],["set[",[".","sink","tuplemap"],"expr","node"]],["function","dequeue",["false","node"],["while","false",[["not",[">",[".","remaining","length"],0]]],["=","node",[".","remaining","pop","false"]],["set.","node",["`","car"],["enqueue",["car",[".","node","tuple"]]]],["set.","node",["`","cdr"],["enqueue",["cdr",[".","node","tuple"]]]]]],["=","remaining",{array:[]}],["set.","sink",["`","mirrors"],{array:[]}],["set.","sink",["`","tuplemap"],["new","weakmap"]],["set.","sink",["`","mirroroot"],["enqueue","origexpr"]],["dequeue"]],["function","tuplelocupdate",["false","tuplex","data","rowdex","col","nodemap"],["function","childloc",["node","false","ex1","lex1","loc","retloc"],[[["deref","nodemap","node"],["return",["deref","nodemap","node"]]]],["set[","nodemap","node","true"],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],["=","ex1",[".","lex1","car"]],[[["eq",[".","ex1","sink"],"sink"],["=","loc",["childloc","ex1"]]],["=","loc","false"]],[[["identity","loc"],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","loc","first"]],["set.","lex1",["`","last"],[".","loc","last"]]],["set.","lex1",["`","first"],["earlier",[".","loc","first"],[".","lex1","first"]]],["set.","lex1",["`","last"],["later",[".","loc","last"],[".","lex1","last"]]]]]],[[["not","retloc"],["=","retloc",{dictionary:{$first:[".","lex1","first"],$last:[".","lex1","last"]}}]],[[[".","lex1","first"],["set.","retloc",["`","first"],["earlier",[".","lex1","first"],[".","retloc","first"]]],["set.","retloc",["`","last"],["later",[".","lex1","last"],[".","retloc","last"]]]]]],["=","lex1",[".","lex1","cdr"]]],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","retloc","first"]],["set.","lex1",["`","last"],[".","retloc","last"]]]],["=","lex1",[".","lex1","cdr"]]],["set[","nodemap","node","retloc"],"retloc"],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],["postadjust","tuplex","+",1]]],["set.","data",["`","first"],"undefined"]],["=","rowdex",0],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],[[["not",[".","data","first"]],["set.","data",["`","first"],["list","rowdex",[".","col","column"]]]]],["set.","data",["`","last"],["list","rowdex",["+",[".","col","column"],["length",[".","col","str"]]]]]]]],["preadjust","rowdex","+",1]],["=","nodemap",["new","weakmap"]],["childloc",[".","sink","mirroroot"]],"true"],["function","indexbps",["false","tuplex","node"],["set.","sink",["`","breaks"],{array:[]}],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","node",["deref",[".","sink","mirrors"],"tuplex"]],[[[".","node","bp"],[".",[".","sink","breaks"],"push",["node"]]]],["preadjust","tuplex","+",1]],[".",[".","sink","breaks"],"sort",[["function","lambda",["a","b"],["=","compare",["<=>",[".",[".","a","first"],0],[".",[".","b","first"],0]]],[[["==","compare",0],["=","compare",["<=>",[".",[".","a","first"],1],[".",[".","b","first"],1]]]]],"compare"]]]],["function","updatecheck",["false","update","comments"],[[["not",[".","sink","tuplemap"]],["set.","sink",["`","rowtokens"],{array:[{array:[]}]}],["indextuples"],["=","update","true"]]],[[["||",["<",[".",[".","sink","rowtokens"],"length"],1],["&&",["==",[".",[".","sink","rowtokens"],"length"],1],["<",[".",["deref",[".","sink","rowtokens"],0],"length"],1]]],["exoutput","origexpr","origexpr",0,0,"true"]]],[["identity","update"],["tuplelocupdate"],["indexbps"],[[".","sink","maproot"],["=","comments",["commentMap"]],[["identity","comments"],["commentInject","comments"],["tuplelocupdate"]]]]],["set.","unparser",["`","dumptuples"],["function","dumptuples",["false","tuplex","data","count","bp","mismatch","summary"],["updatecheck"],["=","tuplex",0],["debuglog","$=====tuples====="],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],"tuplex"]],[[["eq",["deref",[".","sink","tuplemap"],[".","data","tuple"]],"data"],["=","mismatch","$"]],["=","mismatch","$mismatch"]],[[[".","data","bp"],["=","bp","$bp"]],["=","bp","$ "]],["=","summary",[".",["tostring",[".","data","tuple"]],"substr",[0,80]]],["debuglog",["prepad","tuplex",4],["prepad",[".","data","first"],9],["prepad",[".","data","last"],9],"bp","mismatch","summary"],["preadjust","tuplex","+",1]]]],["set.","unparser",["`","dumptokens"],["function","dumptokens",["false","rowdex","data","summary","col"],["updatecheck"],["=","rowdex",0],["debuglog","$=====tokens====="],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["debuglog","$row","rowdex"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],["=","summary",[".",["tostring",[".","col","tuple"]],"substr",[0,80]]],["debuglog",["prepad",[".","col","column"],6],["prepad",[".","col","str"],9],"$ ","summary"]]]],["preadjust","rowdex","+",1]]]],["set.","unparser",["`","breakpoints"],["function","breakpoints",["false","result","data"],["updatecheck"],["=","result",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[".","result","push",[{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]],"result"]],["set.","unparser",["`","findbreak"],["function","findbreak",["location","false","data"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[[["&&",["<=",["car","location"],["car",[".","data","first"]]],["||",["not",["second","location"]],["<=",["second","location"],["second",[".","data","first"]]]]],["return",{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtoken"],["function","findtoken",["location","false","rowdex","col"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],["car","location"]],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["||",["not",["second","location"]],["&&",[">=",["second","location"],[".","col","column"]],["<",["second","location"],["+",[".","col","column"],["length",[".","col","str"]]]]]],["return",{dictionary:{$first:[".","col","column"],$last:["+",[".","col","column"],["length",[".","col","str"]]],$str:[".","col","str"],$symbol:[".","col","symbol"],$tuple:[".","col","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtuple"],["function","findtuple",["expr","false","data"],["updatecheck"],["=","data",["deref",[".","sink","tuplemap"],"expr"]],[["identity","data"],{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]],["set.","unparser",["`","setmarks"],["function","setmarks",["dict","false","mark","marklen"],["set.","sink",["`","maxmarklen"],0],["set.","sink",["`","markdict"],"dict"],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","mark"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","mark",[".","iter","$value"]],["=","marklen",[".",["tostring",["deref","dict","mark"]],"length"]],[[["<",[".","sink","maxmarklen"],"marklen"],["set.","sink",["`","maxmarklen"],"marklen"]]]]]]]],["set.","unparser",["`","string"],["function","string",["firstloc","lastloc","soptions","false","rowdex","row","col","found","outstr","colpos","lineno","linepad"],["updatecheck"],[[["numeric",[".","soptions","lineNumbers"]],["=","lineno",["toint",[".","soptions","lineNumbers"]]],["=","linepad",["length",["+",["+",["tostring",["+","lineno",[".",[".","sink","rowtokens"],"length"]]],[".","sink","maxmarklen"]],1]]]]],[[["dictionary","firstloc"],["=","lastloc",[".","firstloc","last"]],["=","firstloc",[".","firstloc","first"]]]],[[["identity","firstloc"],[[["not",["apply","numeric","firstloc"]],["return","false"]]],["=","rowdex",["car","firstloc"]],[["identity","lineno"],["preadjust","lineno","+","rowdex"]]],["=","rowdex",0]],["=","found",["not",["&&","firstloc",["second","firstloc"]]]],[[["&&","lastloc",["not",["apply","numeric","lastloc"]]],["return","false"]]],["loop","false",[["||",[">=","rowdex",[".",[".","sink","rowtokens"],"length"]],["&&","lastloc",[">","rowdex",["car","lastloc"]]]]],["=","row",["deref",[".","sink","rowtokens"],"rowdex"]],[[["identity","outstr"],["=","outstr",[".","outstr","concat",["$\n"]]]],["=","outstr","$"]],[[["identity","lineno"],["=","outstr",[".","outstr","concat",[["prepad",["postadjust","lineno","+",1],"linepad"],"$ "]]],[[".","sink","maxmarklen"],[["deref",[".","sink","markdict"],"lineno"],["=","outstr",[".","outstr","concat",[["deref",[".","sink","markdict"],"lineno"],"$ "]]]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["+",[".","sink","maxmarklen"],1]]]]]]]]],["=","colpos",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not","found"],["=","colpos",["second","firstloc"]],[[["<=",["+",[".","col","column"],["length",[".","col","str"]]],["second","firstloc"]],["continue"]]],["=","found","true"]]],[["&&","lastloc",["second","lastloc"],[">=","rowdex",["car","lastloc"]],[">=",[".","col","column"],["second","lastloc"]]]],[[["<","colpos",[".","col","column"]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["-",[".","col","column"],"colpos"]]],[".","col","str"]]]]],["=","outstr",[".","outstr","concat",[[".","col","str"]]]]],["=","colpos",["+",[".","col","column"],["length",[".","col","str"]]]]]]],["preadjust","rowdex","+",1]],"outstr"]],"unparser"]),e._AddPropertyList("LingoUnparseInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoUnparseInit",["function","LingoUnparseInit",["false","manifest"],["=","manifest",["`",["LingoPrinter","LingoUnparser","LingoUnparseInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Unparse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Printer"],"LingoPrinter"],["set.",[".","modobj","exports"],["`","LingoUnparser"],"LingoUnparser"]]]]]),e._Execute(["LingoUnparseInit"]),e._SetNamespace(t.slice(1),!0),e._SetNamespace("CLI"),e._Execute([".",[".","Naan","module"],"letinherit",["$Lang_Lingo"]]),e._SetBindingList("Utils",["closure","Utils",["options","false","utils","registry","upcache"],["=","utils",["new","object","this"]],[[["not","options"],["=","options",{dictionary:{}}]]],[[["not",[".","options","cacheSize"]],["set.","options",["`","cacheSize"],50]]],["=","registry",[".",[".",[".",["modlist"],"Lib"],"exports"],"Registry"]],["set.","utils",["`","calculateDialects"],["function","calculateDialects",["expr","false","nsmap","nslist","ns","dialect","langs"],["function","travProc",["trav"],[[["&&",["symbol","trav"],"trav"],[[["not",["deref","nsmap",[".","trav","namespace"]]],["push",[".","trav","namespace"],"nslist"],["set[","nsmap",[".","trav","namespace"],"true"]]],["return"]]],["while","false",[["not",["tuple","trav"]]],["travProc",["car","trav"]],["=","trav",["cdr","trav"]]]],["=","nsmap",["new","weakmap"]],["travProc","expr"],["for",["let","lambda",["iter"],["=","iter",["iterate","nslist",["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],["=","dialect",[".","registry","findNamespace",["ns"]]],[[["&&","dialect",["not",["member","dialect","langs"]]],["push","dialect","langs"]]]]]],"langs"]],["set.","utils",["`","unparseInfo"],["function","unparseInfo",["expr","false","up"],[[["not","upcache"],["=","upcache",["new","nonce"]],["set.","upcache",["`","map"],["new","weakmap"]],["set.","upcache",["`","lru"],{array:[]}]],["=","up",["deref",[".","upcache","map"],"expr"]],[["&&","up",["!==",["deref","lru",["-",[".","lru","length"],1]],"up"]],["set.","upcache",["`","lru"],[".",[".","upcache","lru"],"filter",[["function","lambda",["entry"],["!==","entry","up"]]]]],[".",[".","upcache","lru"],"push",["up"]]]],[[["not","up"],["=","up",{dictionary:{$expression:"expr",$dialects:[".","utils","calculateDialects",["expr"]]}}],["set.","up",["`","dialect"],[".",[".","up","dialects"],0]],[[["not",[".","up","dialect"]],["set.","up",["`","dialect"],[".","registry","findName",[[".",[".","registry","dialects","false"],0]]]]]],[[[".","up","dialect"],["set.","up",["`","unparser"],[".",[".","up","dialect"],"unparse",["expr"]]]]],["set[",[".","upcache","map"],"expr","up"],[".",[".","upcache","lru"],"push",["up"]],[[">",[".",[".","upcache","lru"],"length"],[".","options","cacheSize"]],["set[",[".","upcache","map"],[".",[".",[".","upcache","lru"],"shift","false"],"expression"],"undefined"]]]],"up"]],["set.","utils",["`","unparser"],["function","unparser",["expr"],[".",["unparseInfo","expr"],"unparser"]]],["set.","utils",["`","sourcelist"],["function","sourcelist",["procdef","start","end","marks","false","up"],["=","up",[".","utils","unparser",["procdef"]]],[".","up","setmarks",["marks"]],[[["identity","start"],["=","start",["list",["-","start",1]]],[[["identity","end"],["=","end",["list",["-","end",1]]]],["=","end","start"]],"else"]],[".","up","string",["start","end",{dictionary:{$lineNumbers:1}}]]]],["set.","utils",["`","symns"],["function","symns",["name","ns","false","sym"],[[["symbol","name"],["return","name"]]],[[["not","ns"],["=","ns",[".",["nsactive"],0]]]],[".","ns","lookup",["name"]]]],["set.","utils",["`","findns"],["function","findns",["nstr","false","ns"],[[["not",["string","nstr"]],["return","nstr"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive","true"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],"false"]],["set.","utils",["`","makeLocation"],["function","makeLocation",["sym","task","false","start"],[[["identity","task"],["=","tuplespec",[".",[".","utils","unparser",[["getproc","sym"]]],"findtuple",["task"]]],["=","start",["+",[".",[".","tuplespec","first"],0],1]]]],["list",[".",[".","sym","namespace"],"tostring"],"sym","start"]]],["set.","utils",["`","resolveLocation"],["function","resolveLocation",["location","symbols","false","path","procname","procsym","ns","procdef"],["function","pathmatch",["parent","path","false","segment"],[[["empty","path"],["return","parent"]]],["=","segment",["tostring",["pop","path"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",["@","parent"],["`","\\.children"]],["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],[[["==",["tostring","child"],"segment"],["return",["pathmatch","child","path"]]]]]]],"false"],["function","findsym",["name"],["for",["let","lambda",["iter"],["=","iter",["iterate","symbols",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["==","sym","name"],["return","sym"]]]]]],"false"],["=","path",[".","location",1]],[[["symbol","path"],["=","procsym","path"]],[[["tuple","path"],["=","procname",["car","path"]]],["=","procname","path"]],["=","procsym",["findsym","procname"]],[[["not","procsym"],[[".","location",0],[[["string",[".","location",0]],["=","ns",[".","utils","findns",[[".","location",0]]]]],["=","ns",[".","location",0]]],["=","procsym",[".","utils","symns",["procname","ns"]]]],["=","procsym",["interned","procname"]]]],[["tuple","path"],["=","procsym",["pathmatch","procsym",["cdr","path"]]]]],["=","procdef",["getproc","procsym"]],[[["||",["not",["tuple","procdef"]],["not",["cdddr","procdef"]]],["=","procdef","false"]]],"procdef"]],["set.","utils",["`","breakLocation"],["function","breakLocation",["location","symbols","false","procdef"],["=","procdef",[".","utils","resolveLocation",["location","symbols"]]],[[["not","procdef"],["return"]]],[[".","location",2],[".",[".",[".","utils","unparser",["procdef"]],"findbreak",[["list",["-",[".","location",2],1]]]],"tuple"]],["cdddr","procdef"]]],["set.","utils",["`","locationString"],["function","locationString",["location","false","output"],[[["symbol",[".","location",1]],["=","output",[".","utils","procname",[[".","location",1]]]]],[["tuple",[".","location",1]],["=","output",[".",["new","array",[".","location",1]],"join",["$."]]]],["=","output",["tostring",[".","location",1]]]],[[[".","location",0],["=","output",[".",[".","location",0],"concat",["$::","output"]]]]],[[[".","location",2],["=","output",[".","output","concat",["$:",[".","location",2]]]]]],[[[".","location",3],["=","output",[".","output","concat",["$:",[".","location",3]]]]]],"output"]],["set.","utils",["`","alignColumns"],["function","alignColumns",["lex1","widths","false","ex1"],["function","calcrow",["row","false","col","coldex"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field"],"length"]],[[["<","width","prev"],["=","width","prev"]]],"width"],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not",["deref","widths","coldex"]],["set[","widths","coldex",0]]],["set[","widths","coldex",["cf","col",["deref","widths","coldex"]]],["preadjust","coldex","+",1]]]]],["=","widths",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","lex1",["`","ex1"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ex1",[".","iter","$value"]],["calcrow","ex1"]]]],"widths"]],["set.","utils",["`","proclist"],["function","proclist",["name","false","result"],["while","false",[["not","name"]],["=","result",["cons","name","result"]],["=","name",["deref",["@","name"],["`","\\.parent"]]]],"result"]],["set.","utils",["`","procname"],["function","procname",["name","false","parent"],[".",[".",[".",["proclist","name"],"toarray"],"map",[["function","lambda",["x"],["tostring","x"]]]],"join",["$."]]]],["set.","utils",["`","procstring"],["function","procstring",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","callstring"],["function","callstring",["proc","dons","false","output","parm","name"],["=","name",["procname",[".","proc",1]]],[[["identity","dons"],["=","name",[".",[".",[".",[".","proc",1],"namespace"],"tostring"],"concat",["$::","name"]]]]],[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],[".","name","concat",["$()"]]],[["atom",[".","proc",2]],[".","name","concat",["space",[".","proc",2]]]],["=","output",[".","name","concat",["$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",[["car","parm"],"$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","getnumargs"],["function","getnumargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["toint",["deref","args",1]]]]],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*:\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["list",["`","range"],["toint",["deref","args",1]],["toint",["deref","args",2]]]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\d+","$g"]]]],[[["identity","args"],["return",["cons",["`","set"],["totuple",[".","args","map",[["function","lambda",["nstr"],["toint","nstr"]]]]]]]]],"false"]],["set.","utils",["`","getnameargs"],["function","getnameargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["return",["deref","args",1]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],[[["identity","args"],["return",["totuple","args"]]]],"false"]],["set.","utils",["`","getprocarg"],["function","getprocarg",["cmdargs","false","args","procpath"],["=","args",[".","cmdargs","match",[["RegExp","$^(\\S*::)?([^\\s:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[["identity","args"],["=","procpath",[".",["deref","args",2],"split",["$."]]],[[["==",[".","procpath","length"],1],["=","procpath",[".","procpath",0]]],["=","procpath",["totuple","procpath"]]],["list",[".",["deref","args",1],"substring",[0,["-",[".",["deref","args",1],"length"],2]]],"procpath",["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",4],"substring",[1]],"trim","false"]]]],"false"]],"utils"]),e._SetBindingList("Info",["closure","Info",["console","false","info"],["=","info",["new","object","this"]],["set.","info",["`","utils"],["Utils"]],["set.","info",["`","options"],{dictionary:{$indent:4,$wrapMinAmount:29,$wrapMaxCol:79,$maxColWidth:60,$maxSymColWidth:40}}],["function","plist",["itemlist","depth","false","item","first","width"],["=","first","$"],["for",["let","lambda",["iter"],["=","iter",["iterate","itemlist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","width",[".",["tostring","item"],"length"]],[[["&&",[">",["+","width",[".",[".","console","printloc","false"],1]],[".",[".","info","options"],"wrapMaxCol"]],[">=",[".",[".","console","printloc","false"],1],[".",[".","info","options"],"wrapMinAmount"]]],[".","console","print",["$,\n"]],["=","first",[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]]],[".","console","print",["first","item"]],["=","first","$, "]]]]],["function","prows",["rows","depth","widths","false","coldex","row"],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[[">",[".","col","length"],["deref","widths","coldex"]],[".","console","print",[[".","col","substring",[0,["-",["deref","widths","coldex"],1]]],"$…","space"]]],[".","console","print",["col",[".","space","repeat",[["+",["-",["deref","widths","coldex"],[".","col","length"]],1]]]]]],["preadjust","coldex","+",1]]]],[".","console","newline","false"]]]]],["function","printmods",["onemod","false","modid"],["function","pexports",["mod","false","xid","maxwidth"],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports:"]],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["symbol",["deref",[".","mod","exports"],"xid"]],[".","console","print",[[".",[".","info","utils"],"procstring",[["getproc",["deref",[".","mod","exports"],"xid"]]]]]]],[".","console","print",[["deref",[".","mod","exports"],"xid"]]]],[".","console","newline","false"]]]]],["function","pcomponents",["mod","false","xid","maxwidth"],["printline",[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components:"],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["not",[".",["deref",[".","mod","components"],"xid"],"manifest"]],[".","console","print",["$<empty manifest>"]]],["plist",[".",["deref",[".","mod","components"],"xid"],"manifest"],3]],[".","console","newline","false"]]]]],["function","pdetailmod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],["pexports","mod"]]],[["\\.*",[".","mod","components"]],["pcomponents","mod"]]],["function","psummarymod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports: "]],["plist",[".","mod","exports"],3],[".","console","newline","false"]]],[["\\.*",[".","mod","components"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components: "]],["plist",[".","mod","components"],3],[".","console","newline","false"]]],[["identity","onemod"],["pdetailmod","onemod"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".",[".","Naan","module"],"modlist","false"],["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["psummarymod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]]]]]],["function","printsyms",["syms","false","sym","rows","row","col","coldex","nprops","bound","widths"],["=","rows",["cons",["list","$symbol","$namespace","$value","$procedure","$attr."]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],["=","bound",["getproc","sym"]],[[["tuple","bound"],["=","bound",["tostring",[".","bound",0]]]],[["not","bound"],["=","bound","$"]]],[[["rest","sym"],["=","nprops",["prepad",["length",["rest","sym"]],3]]],["=","nprops","$"]],["push",["list",["tostring","sym"],["namespace",["namespace","sym"]],["tostring",["car","sym"]],"bound","nprops"],"rows"]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxSymColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxSymColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]],["set.","info",["`","setDefloc"],["function","setDefloc",["location"],["set.","info",["`","defloc"],"location"]]],["function","getDefproc",["cmdargs","nochain","false","location","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","location",[".","info","defloc"]],[["identity","nochain"],["=","location",["list",[".","location",0],["car",[".","location",1]]]]]]],[[["not","location"],["=","location",[".",[".","info","utils"],"getprocarg",["cmdargs"]]]]],[[["not","location"],[".","console","printline",['$error: "',"cmdargs",'$" not a valid procedure specification']],["return"]]],["=","procdef",[".",[".","info","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","cmdargs",[".",[".","info","utils"],"locationString",["location"]]]]],[".","console","printline",['$error: procedure "',"cmdargs",'$" not found']],["return","false"]]],["list","location","procdef"]],["set.","info",["`","infoproc"],["function","infoproc",["cmdargs","false","location","procdef","child"],["=",["location","procdef"],["getDefproc","cmdargs","true"]],[[["not","location"],["return"]]],[".","console","printline",[[".",[".","info","utils"],"locationString",["location"]]]],["=","syms",["reverse",["deref",["@",[".","procdef",1]],["`","\\.children"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],["=","procdef",["getproc","child"]],[[["not","procdef"],["continue"]]],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],[".",[".","info","utils"],"procstring",["procdef"]]]]]]]]],["set.","info",["`","infolist"],["function","infolist",["cmdargs","false","location","procdef","start","end"],["=",["location","procdef"],["getDefproc","cmdargs"]],[[["not","location"],["return"]]],["=","start",[".","location",2]],["=","end",[".","location",3]],[[["&&","start",["not","end"]],["=","end",["+","start",10]]]],[".","console","print",[[".",[".","info","utils"],"sourcelist",["procdef","start","end"]]]]]],["set.","info",["`","infomod"],["function","infomod",["cmdargs","false","modlist","modid","mod"],[[["not","modlist"],["=","modlist",[".",[".","info","utils"],"getnameargs",["cmdargs"]]]]],[["not","modlist"],["printmods"]],[[["string","modlist"],["=","modlist",["list","modlist"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","modlist",["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["=","mod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]],[[["identity","mod"],["printmods","mod"]],[".","console","printline",['$error: module "',"modid",'$" not found']]]]]]]],["set.","info",["`","infofind"],["function","infofind",["cmdargs","false","args","pattern","ns","found"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["=","pattern",["deref","args",1]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],["=","pattern",["deref","args",0]],[["&&",["==",[".","args","length"],3],["==",["deref","args",1],"$in"]],["=","ns",[".",[".","info","utils"],"findns",[["deref","args",2]]]],[["not","ns"],[".","console","printline",['$error: namespace "',["deref","args",2],'$" not found']],["return"]]],[["&&",["==",[".","args","length"],2],["==",["deref","args",1],"$all"]],["=","ns","true"]],[".","console","printline",['$error: cannot interpret "',"cmdargs",'$"']],["return"]],["catch",[[[".","pattern","match",[["RegExp",'$".*"']]],["=","found",["exists",["RegExp",[".","$^","concat",[[".","pattern","slice",[1,-1]],"$$"]]],"ns"]]],["=","found",["exists",["RegExp","pattern","$i"],"ns"]]],[[["."]],[["console"]],[["printline"]],[['$error: regular expression "'],"cmdargs",'$" not valid'],[["return"]]],"false"],[[["==","ns","true"],["=","locstr","$in all namespaces"]],[["identity","ns"],["=","locstr","$in namespace "]],["=","locstr","$in active namespaces"]],[["identity","found"],[[[">",["length","found"],1],[".","console","print",[["length","found"],"$ symbols "]]],[".","console","print",["$one symbol "]]],[".","console","printline",['$matching "',"pattern",'$" ',"locstr","$:"]],["printsyms","found"]],[".","console","printline",['$no symbols match "',"pattern",'$" ',"locstr"]]]],["set.","info",["`","infofutures"],["function","infofutures",["cmdargs","false","pending","rows","row","item","procstr","waiting","waiter","delays","delayms","widths","coldex"],["function","procReference",["procdef","prefix","false","str"],[[["not","prefix"],["=","prefix","$"]]],[["identity","procdef"],[[["&&",["symbol","procdef"],[".","procdef","proc"]],["=","procdef",[".","procdef","proc"]]]],[[["procedure","procdef"],["=","str",[".",[".","info","utils"],"callstring",["procdef","true"]]]],["=","str",[".","procdef","tostring"]]],[".","prefix","concat",["str"]]],"$"],["=","pending",["reverse",["futures"]]],[[["not","pending"],[".","console","printline",["$no futures pending"]],["return"]]],[".","console","printline",[["length","pending"],"$ futures pending:"]],["=","rows",["cons",["list","$start","$count","$delay","$procedures"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","pending",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","procstr",["procReference",[".","item","execute"],"$x "]],["=","waiting",[".","item","waiting"]],[[["==",[".","procstr","length"],0],["=","procstr",["procReference",["pop","waiting"],"$w "]]]],["=","delayms",[".","Math","trunc",[[".","item","delay"]]]],["=","delays",[".","Math","trunc",[["quotient","delayms",1e3]]]],["preadjust","delayms","-",["*","delays",1e3]],["push",["list",[".","item","start"],["prepad",[".","item","count"],4],[".",["tostring","delays"],"concat",["$.",["prepad","delayms",3,"$0"]]],"procstr"],"rows"],["while","false",[["not",["not",["empty","waiting"]]]],["push",["list","$","$","$",["procReference",["pop","waiting"],"$w "]],"rows"]]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]]],"info"]),e._AddPropertyList("CliUtilsInit",[["$.lingoInit","true"]]),e._SetBindingList("CliUtilsInit",["function","CliUtilsInit",["false","manifest"],["=","manifest",["`",["CliUtilsPreload","Utils","Info","CliUtilsInit"]]],[".",[".","Naan","module"],"build",["$CLI","$CliUtils",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Utils"],"Utils"],["set.",[".","modobj","exports"],["`","Info"],"Info"]]]]]),e._Execute(["CliUtilsInit"]),e._SetBindingList("driver_chmods",["function","driver_chmods",["driverob","cmdword","cmdargs"],[".",[".","Naan","module"],"chns",["cmdargs"]]]),e._SetBindingList("driver_debugs",["function","driver_debugs",["driverob","cmdword","cmdargs"],["debugger"]]),e._SetBindingList("driver_helps",["function","driver_helps",["driverob","cmdword","cmdargs","false","text"],["=","text",["call",["let","lambda",["proc"],[["eq","proc","driver_chmods"],"$ /ch[mod] - list modules\n /ch[mod] <module> - change active module\n"],[["eq","proc","driver_debugs"],"$ /d[ebug] - enter debugger\n"],[["eq","proc","driver_helps"],"$ /help - display overall help\n /help <command> - display help for <command>\n"],[["eq","proc","driver_infos"],["return",["driver_infos","driverob","cmdword","$"]]],[["eq","proc","driver_languages"],"$ /dialect - list available dialects\n /dialect <name> - change the CLI dialect\n"],[["eq","proc","driver_list"],"$ /list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["eq","proc","driver_options"],["return",["driver_options","driverob","cmdword","$"]]],[["eq","proc","driver_quit"],"$ /quit - decamp / depart / absquatulate\n"],"$/commands:\n /ch[mod] [<module>] - change active module\n /d[ebug] - enter debugger\n /help [<command>] - help [command]\n /i[nfo] <topic> - info on topic\n /op[tions] - view or modify options\n /quit - decamp / depart / absquatulate\n"],["deref","driverCmds","cmdargs"]]],[".",[".","driverob","console"],"print",["text"]]]),e._SetBindingList("driver_infos",["function","driver_infos",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/info topics:\n /i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n /i[nfo] f(u)tures - show pending futures\n /i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n /i[nfo] (p)rocedure <name> - summarize a procedure\n"]]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","driverob","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","driverob","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","driverob","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","driverob","info"],"infoproc",["cmdargs"]]],[".",[".","driverob","console"],"printline",["$info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("driver_languages",["function","driver_languages",["driverob","cmdword","cmdargs","false","dialob"],[["==","cmdword","$dialect"],[["!=","cmdargs","$"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["cmdargs"]]],[["not","dialob"],[".",[".","driverob","console"],"print",["$unregistered language"]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],[".",[".","driverob","console"],"print",["$language is now ","cmdargs"]]],[".",[".","driverob","console"],"print",["$dialects: ",[".",[".",[".",[".","Naan","runtimelib"],"dialect","false"],"toarray"],"join",["space"]]]]]]),e._SetBindingList("driver_list",["function","driver_list",["driverob","cmdword","cmdargs"],[".",[".","driverob","info"],"infolist",["cmdargs"]]]),e._SetBindingList("driver_options",["function","driver_options",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/options:\n /op[tions] noprompt - turn off command line prompt\n"]]],[["==","cmdword","$noprompt"],[".","driverob","noprompt","false"]]]),e._SetBindingList("driver_quits",["function","driver_quits",["driverob","cmdword","cmdargs"],["return",["`","break"]]]),e._SetValue("driverCmds",{dictionary:{$ch:"driver_chmods",$chmod:"driver_chmods",$d:"driver_debugs",$debug:"driver_debugs",$help:"driver_helps",$i:"driver_infos",$info:"driver_infos",$dialect:"driver_languages",$list:"driver_list",$op:"driver_options",$option:"driver_options",$options:"driver_options",$q:"driver_quits",$quit:"driver_quits"}}),e._SetBindingList("Driver",["closure","Driver",["false","driverob","console","dialob","source","emptyflag","endtoken"],["=","driverob",["new","object","this"]],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","options"],{dictionary:{$prompt:"true"}}],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],["=","emptyflag",{dictionary:{}}],["function","readline",["false","cc","output"],[[["not",[".","console","readchar"]],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]]]],["=","output","$"],["while","false",[["not",["=","cc",[".","console","readchar","false"]]]],["=","output",[".","output","concat",["cc"]]],[[["==","cc","$\n"],["break"]]]],"output"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["function","driverPrompt",["false","prompt"],["catch",[["=","prompt",["strcat",["namespace",["first",["nsactive"]]],"$-lng> "]],["set.",[".","js","p"],["`","$_prompt"],["set.",[".","js","p"],["`","$_initialPrompt"],"prompt"]]],[[["identity","true"],["=","prompt","$lng >"]]],"false"],"prompt"],["function","parseBuffer",["false","result"],[[["not","source"],["return","emptyflag"]]],["catch",[["=","result",[".","driverob","parse",["source"]]],["=","endtoken",[".","source","tokenlast","false"]],[[["==",[".","source","readready","false"],0],["=","source","false"]]],"result"],[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["=","source","false"],"emptyflag"]],"false"]],["function","repl",["false","text","result","expr","cmdword","accum"],["=","driverExecutor","false"],["=","driverConsole","console"],["loop","repl",["catch",[[[["identity","source"],["freshline"],["=","result",["parseBuffer"]],[["eq","result","emptyflag"],["continue"]]],[["not","driverExecutor"],["freshline"],[[[".",[".","driverob","options"],"prompt"],[".","console","print",[["driverPrompt"]]]]],["loop","false",["=","text",["readline"]],[[[">",[".","console","readready","false"],0],["while","false",[["not",[">",[".","console","readready","false"],0]]],["=","text",[".","text","concat",[[".","console","readchar","false"]]]]],["=","source",["new","textstream","text"]],["continue","repl"]]],["=","expr",[".","text","match",[["RegExp","$^/([A-Za-z_]+)\\s*(.*)"]]]],[[["identity","expr"],["=","cmdword",["deref","expr",1]],[[["deref","driverCmds","cmdword"],[["eq",["call",["deref","driverCmds","cmdword"],"driverob","cmdword",["deref","expr",2]],["`","break"]],["break","repl"]]],[".","console","printline",['$driver command "/',"cmdword",'$" not understood']]],["continue","repl"]],[["!=",[".",[".","text","trim","false"],"length"],0],["break"]]]],["loop","false",["=","source",["new","textstream","text"]],["=","result",["parseBuffer"]],[["not",["eq","result","emptyflag"]]],["=","source","false"],["=","accum","text"],["freshline"],[".","console","print",["$>> "]],["=","text",["readline"]],[[["==",[".","text","trim","false"],"$"],[".","console","print",["$command entry canceled"]],["continue","repl"]]],["=","text",[".","accum","concat",["$\n","text"]]]]],[[[".","driverExecutor","display"],[".","console","printline",[[".","driverExecutor","display"]]]]],["=","result",["list","false",[".","driverExecutor","expr"]]],["=","endtoken",{dictionary:{$atom:["`",";"]}}],[[[".","driverExecutor","ending"],["set.","endtoken",["`","atom"],[".","driverExecutor","ending"]]]],["=","driverExecutor","false"]],[[[".","result",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","result",0],["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","driverob","errorstr",["expr"]]]]]]],["=","source","false"]],[["==",[".","endtoken","atom"],["`",";;"]],["\\$",["evalactive",[".","result",1]]]],["\\$",["evalactive",[".","result",1]]],["freshline"],[".","console","print",["$$: "]],[["!=",[".","endtoken","atom"],["`",";>"]],[".","console","print",[[".","driverob","print",["\\$"]]]]],[".","console","printq",["\\$"]]]],[[["==","exception","Driver"]],[["==","exception","driver"],["=","driverExecutor","false"],["=","driverConsole","false"],["throw","driver"]],[["identity","true"],["=","expr",["tostring",["first","exception"]]],[["==","expr","$debugger"],[".","console","printline",["$==> terminated in debugger"]],["=","driverExecutor","false"],["=","driverConsole","false"],["throw",["list","internal","$exit"]]],[["==","expr","$internal"],[".","console","printline",["$==> error: ",["second","exception"]]]],[[["&&",["dictionary","exception"],["==",[".","exception","error"],"$Naan Error"]],["=","expr",["ErrorString","exception"]]],["=","expr","exception"]],[".","console","printline",["$==> exception: ","expr"]]]],"false"]]],["set.","driverob",["`","noprompt"],["function","noprompt","false",["set.",[".","driverob","options"],["`","prompt"],"false"]]],[".","console","printline",["$Starting REPL for Lingo..."]],[".","console","newline",[1]],["repl"]]),e._SetBindingList("driverExec",["function","driverExec",["expr","options"],[[["not","options"],["=","options",{dictionary:{}}]]],["set.","options",["`","expr"],"expr"],[["identity","driverConsole"],["=","driverExecutor","options"],[".","driverConsole","readex",["Driver"]],"true"]]),e._SetBindingList("DriverInstall",["function","DriverInstall",["false","curnsactive"],["=","curnsactive",["nsactive"]],["sudo",["nsactive",["list",[".",["nsactive","true"],1]]]],["copyproc",["compress","$driver"],"Driver"],["sudo",["nsactive","curnsactive"]],["throw",["`","driver"]]]),e._AddPropertyList("DriverInit",[["$.lingoInit","true"]]),e._SetBindingList("DriverInit",["function","DriverInit",["false","manifest"],["=","manifest",["`",["driver_chmods","driver_debugs","driver_helps","driver_infos","driver_languages","driver_list","driver_options","driver_quits","driverCmds","Driver","driverExec","DriverInstall","DriverInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Driver",["function","lambda",["modobj","compobj","false","runtime"],["set.",[".","Naan","runtimelib"],["`","exec"],"driverExec"],[".",[".","Naan","module"],"require",["$Lib/RuntimeLib.nlg"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DriverInstall"],"DriverInstall"]]]]]),e._Execute(["DriverInit"]),e._CopyBinding("Driver","driver"),e._SetBindingList("DebuggerREPL",["closure","DebuggerREPL",["debug","false","commander","console","dialob","lastCmd"],["=","commander",["new","object","this"]],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","commander",["`","parse"],[".","dialob","parse"]],["set.","commander",["`","print"],[".","dialob","print"]],["set.","commander",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","commander",["`","utils"],["Utils"]],["set.","commander",["`","info"],["Info","console"]],["set.","commander",["`","catch"],"false"],["set.","commander",["`","breakpoints"],{dictionary:{}}],["function","frameDict",["frame","false","proctask","location","markdict"],["=","proctask",[".","debug","frameProcTask",["frame"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","frame",3],1],[".","proctask",1]]]],[[[".","location",2],["=","markdict",{dictionary:{}}],["set[","markdict",["+",[".","location",2],1],"$--\x3e"]]],"markdict"],["function","frameProc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".","proctask",1]]]],[".",["tostring",[".",[".","proctask",0],0]],"concat",["space",[".",[".","commander","utils"],"locationString",["location"]]]]]],["function","readline",["crok","false","cc","output"],[[["not",[".","console","readchar"]],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["set.","commander",["`","utils"],["Utils","console"]],["set.","commander",["`","info"],["Info","console"]]]],[[["identity","crok"],["=","output","$"]],["while","false",[["not",["==",["=","cc",[".","console","readchar","false"]],"$\n"]]]],["=","output","cc"]],["while","false",[["not",["&&",["!=",["=","cc",[".","console","readchar","false"]],"$\n"],"cc"]]],["=","output",[".","output","concat",["cc"]]]],"output"],["function","driverprompt",["false","prompt"],["=","prompt",["strcat","$(ndb-",[".","debug","depth","false"],"$) "]],["catch",[["set.",[".","js","p"],["`","$_prompt"],["set.",[".","js","p"],["`","$_initialPrompt"],"prompt"]]],[[["identity","true"]]],"false"],"prompt"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["set.","commander",["`","parseText"],["function","parseText",["cmdargs","false","error","expr"],["catch",[["=","source",["new","textstream",[".","cmdargs","concat",["$ ;"]]]],[".","source","setsymbols",[[".","commander","localist",[["deref",[".","commander","frames"],[".","commander","focus"]]]]]],["=",["error","expr"],[".","commander","parse",["source"]]]],[[["identity","true"]]],"false"],[[["identity","error"],["for",["let","lambda",["iter"],["=","iter",["iterate","error",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","commander","errorstr",["expr"]]]]]]],["=","expr","false"]]],"expr"]],["set.","commander",["`","getprocarg"],["function","getprocarg",["text","false","args","expr","result","location"],["=","args",[".","text","match",[["RegExp","$^([^:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[[["&&",[">",[".","args","length"],1],["=","expr",[".","commander","parseText",[["deref","args",1]]]]],["catch",[["=","result",["eval","expr"]],[["procedure","result"],["=","result",[".","result",1]]],[["symbol","result"],["=","result",[".",[".","result","proc"],1]]],["=","result","false"]],[[["identity","true"],["=","result","false"]]],"false"],[["identity","result"],["=","location",["list",[".",[".","result","namespace"],"tostring"],"result",["toint",[".",[".",["deref","args",2],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]]]]]]],[[["not","location"],["=","location",[".",[".","commander","utils"],"getprocarg",["text"]]]]],"location"]],["function","breakHit",["where","value","false","firstid","procdef","location","entry","result","sourceline"],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]],["=","firstid","bpid"]]]]],[[["not",["deref",[".","commander","breakpoints"],"firstid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","true"]]],["=","entry",["deref",[".","commander","breakpoints"],"firstid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","true"]]]],[".","console","printline",["$Breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",[[".","entry","location"]]],"$ with value ","value"]],[[["not",[".","entry","sourced"]],["set.","entry",["`","sourced"],"true"],[[[".",[".","entry","location"],2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",[[".","entry","procdef"],[".",[".","entry","location"],2],[".",[".","entry","location"],2]]]]],["=","sourceline",["tostring",["car",[".","where","task"]]]]],[".","console","printline",["$ ","sourceline"]]]],"false"],["function","stepHit",["dict","false","procdef","location","sourceline"],["=","procdef",[".","debug","insideProc","false"]],[[["not","procdef"],[".","console","printline",["$Stepped to unknown location: ",[".","dict","task"]]],["return","false"]]],[[["member",[".",[".","procdef",1],"namespace"],[".","debug","nshidden"]],[".","debug","stepup","false"],["return","true"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".","procdef",1],[".","dict","task"]]]],[".",[".","commander","info"],"setDefloc",["location"]],[".","console","printline",["$Stepped to ",[".",[".","commander","utils"],"locationString",["location"]],"$ with value ",[".","dict","value"]]],[[["!=",[".","dict","state"],"$task"],["=","sourceline","$[end of body]"]],[[".","location",2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",["procdef",[".","location",2],[".","location",2]]]]],["=","sourceline","$unknown line"]],[".","console","printline",["$ ","sourceline"]],"false"],["function","exceptionHit",["except","false","exceptstr","proctask","location"],[[["||",["not",[".","commander","catch"]],["&&",["tuple",[".","commander","catch"]],["not",["eval",[".","commander","catch"]]]]],["return","true"]]],["freshline"],["=","exceptstr",[".","debug","startExcept"]],[[["&&",["dictionary","exceptstr"],["==",[".","exceptstr","error"],"$Naan Error"]],["=","exceptstr",["ErrorString","exceptstr"]]]],[".","console","printline",["$==> Entering debugger on exception: ","exceptstr"]],["=","proctask",[".","debug","frameProcTask",["false"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]],[[["&&","proctask","location"],[".","console","printline",[[".",[".","commander","utils"],"locationString",["location"]]]],[[".","location",2],[".","console","printline",["$ ",[".",[".","commander","utils"],"sourcelist",[[".","proctask",0],[".","location",2],[".","location",2]]]]]]]],"false"],["set.","commander",["`","updateDefproc"],["function","updateDefproc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]]]],[".",[".","commander","info"],"setDefloc",["location"]]]],["function","findCommand",["text","false","cmd","found"],[["deref","debugCmds","text"],"text"],["for",["let","lambda",["iter"],["=","iter",["iterate","debugCmds",["`","cmd"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","cmd",[".","iter","$value"]],[[[".","cmd","startsWith",["text"]],[["identity","found"],["return","false"]],["=","found","cmd"]]]]]],"found"],["set.","commander",["`","entering"],["function","entering","false",["textstreams",["`",["false","false"]]]]],["set.","commander",["`","pauser"],["function","pauser",["entry","arg1","arg2","arg3","false","cmd","cmdword","proc1"],["updateDefproc","false"],[[["==","entry","$startpause"],[[["atom","arg1"],[".","console","printline",["$can't debug atoms like: \"","arg1",'$"']],["return"]]],["freshline"],[".","console","printline",["$debugger paused before eval: ","arg1"]]],[["==","entry","$breakpoint"],[["breakHit","arg1","arg2"],["return"]]],[["==","entry","$steptrap"],[["stepHit","arg1"],["return"]]],[["==","entry","$startfail"],["freshline"],[".","console","printline",["$debugger could not pause before eval"]]],[["==","entry","$escape"],[".","console","printline",["$^C"]]],[["==","entry","$exception"],[["exceptionHit","arg1"],["return"]]],[["==","entry","$"]],["freshline"],[".","console","printline",['$debugger entry type "',"entry",'$" not known']]],["set.","commander",["`","frames"],{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","debug","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","proc1","true"]]],[[["&&",["!=",[".","frame",0],["`","body"]],["||",["not","proc1"],["!=",[".","frame",0],["`","loop"]]]],[".",[".","commander","frames"],"push",["frame"]]]]]]],["set.","commander",["`","focus"],0],[".","console","readex",["false"]],["loop","false",["catch",[["freshline"],[".","console","print",[["driverprompt"]]],["=","cmd",["readline","true"]],["=","cmd",[".","cmd","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],[[["not","cmd"],[[["||",["not","lastCmd"],["not",["eq",["deref","debugCmds",["deref","lastCmd",1]],"debug_execs"]]],["continue"]]],["=","cmd","lastCmd"]]],["=","lastCmd","cmd"],["=","cmdword",["findCommand",["deref","cmd",1]]],[[["deref","debugCmds","cmdword"],[["eq",["call",["deref","debugCmds","cmdword"],"cmdword",["deref","cmd",2],"commander","debug"],["`","break"]],["return"]]],[".","console","printline",['$debugger command "',["deref","cmd",1],'$" is undefined or ambiguous']]]],[[["==","exception","DebuggerREPL"],["return","false"]],[["!=","exception","debugger"],[".","console","printline",["$debugger caught: ","exception"]],"false"]],"false"]]]],["set.","commander",["`","endPauser"],["function","endPauser","false",[".","console","readex",["DebuggerREPL"]]]],["set.","commander",["`","procstring"],["function","procstr",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","commander",["`","localist"],["function","localist",["frame","false","symbols"],[[["not",["procedure","frame"]],["return","false"]]],["call",["function","scope",["parent","false","lex1","ex1","proc"],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["push","lex1","symbols"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["identity","ex1"],["push","ex1","symbols"]]]]],["push","parent","symbols"],["=","lex1",["deref",["@","parent"],["`","\\.children"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&","ex1",["not",["member","ex1","symbols"]]],["push","ex1","symbols"]]]],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[".",[".","frame",3],1]],["reverse","symbols"]]],["set.","commander",["`","exprstr"],["function","exprstr",["expr","false","condexpr"],[[["not","expr"],["return","$"]]],["=","condexpr",[".",[".","commander","utils"],"sourcelist",["expr"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$^ *\\d+","$mg"],"$"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$[\\s\\n\\r]{2,}","$mg"],"$ "]]],[".","condexpr","trim","false"]]],["set.","commander",["`","printlocals"],["function","printlocals",["frame","uopts","false","uopt","widths","header","begun"],["=","options",{dictionary:{$indent:4,$header:"false",$parents:"true",$trim:"false",$maxstr:30}}],["for",["let","lambda",["iter"],["=","iter",["iterate","uopts",["`","uopt"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","uopt",[".","iter","$value"]],["set[","options","uopt",["deref","uopts","uopt"]]]]],["=","header",["list","$symbol","$value","$previous"]],["function","calc1",["lex1","false","ex1","width"],["function","calcitem",["item"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field",{dictionary:{$quote:"true"}}],"length"]],[[[">","width",[".","options","maxstr"]],["=","width",[".","options","maxstr"]]]],[[["<","width","prev"],["=","width","prev"]]],"width"],["set[","widths",0,["cf",["first","item"],["deref","widths",0]]],["set[","widths",1,["cf",["second","item"],["deref","widths",1]]],[["cddr","item"],["set[","widths",2,["cf",["third","item"],["deref","widths",2]]]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","widths"],["=","widths",{array:[0,0,0]}],[[".","options","header"],["calcitem","header"]]]],["calcitem","ex1"]]]]],["function","print1",["lex1","nameline","false","ex1"],["function","printitem",["item"],["function","pf",["field","width","false","fwidth"],["=","field",["tostring","field",{dictionary:{$quote:"true"}}]],["=","fwidth",[".","field","length"]],[[[">","fwidth",[".","options","maxstr"]],["=","fwidth",[".","options","maxstr"]],["=","field",[".","field","substring",[0,"fwidth"]]]]],[".","console","print",["field",[".","space","repeat",[["-","width","fwidth"]]]]]],[".","console","print",[[".","$ ","repeat",[[".","options","indent"]]]]],["pf",["first","item"],["deref","widths",0]],[".","console","print",["$ "]],["pf",["second","item"],["deref","widths",1]],[[["&&",["cddr","item"],[">",["deref","widths",2],0]],[".","console","print",["$ "]],["pf",["third","item"],["deref","widths",2]]]],[".","console","newline","false"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","begun"],[[[".","options","header"],["printitem","header"],["printitem",["list",[".","$-","repeat",[["deref","widths",0]]],[".","$-","repeat",[["deref","widths",1]]],[".","$-","repeat",[["deref","widths",2]]]]]]],["=","begun","true"]]],[[["identity","nameline"],[".","console","printline",["nameline"]],["=","nameline","false"]]],["printitem","ex1"]]]]],["function","printer",["false","procsym","procname","parent","proc","params","parents"],["calc1",["third","frame"]],["=","procsym",[".",[".","frame",3],1]],["=","parent",["deref",["@","procsym"],["`","\\.parent"]]],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["=","params",["push",["list","lex1",["first","lex1"]],"params"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&",[".","options","trim"],["not",["within","ex1",[".","frame",3]]]],["continue"]]],[[["identity","ex1"],["push",["list","ex1",["first","ex1"]],"params"]]]]],["calc1","params"],["push","params","parents"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]],["=","parents",["reverse","parents"]],["push",["third","frame"],"parents"],["=","parent","procsym"],["while","false",[["not","parent"]],[[["identity","begun"],["=","procname","$"]],["=","procname",[".","procname","concat",["$\n"]]]],["=","proc",["getproc","parent"]],["=","procname",[".","procname","concat",[["first","proc"],"space",["tostring",["namespace","parent"]],"$::",[".","debug","procname",["parent"]]]]],["print1",["pop","parents"],"procname"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[["procedure","frame"],["printer"]]]],["set.","commander",["`","printframe"],["function","printframe",["frame","false","procstr"],["function","printparms",["lex1","false","ex1"],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[".","console","print",["$ ",["first","ex1"],"$: ",["second","ex1"],"$ (",["third","ex1"],"$)"]],[".","console","newline","false"]]]]],[["member",["first","frame"],["`",["let","let","&"]]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","printparms",[["third","frame"]]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","builtin"]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","print",[["second","frame"]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","interrupt"]],[".","console","print",[["first","frame"],"$ ",["third","frame"],"$ in ",["second","frame"]]],[".","console","newline","false"],[".","console","print",["$exec: ",[".","frame",3]]],[".","console","newline",[2]]],[["procedure","frame"],[".","commander","printlocals",["frame",{dictionary:{$trim:"true"}}]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","catch"]],[".","console","print",[["first","frame"]]],["=","procstr",["frameProc","frame"]],[[["identity","procstr"],[".","console","newline","false"],[".","console","print",["procstr"]]]],[".","console","newline",[2]]],[".","console","print",["$frame type:",["first","frame"]]],[".","console","newline",[2]]]],["set.","commander",["`","printframedivider"],["function","printframedivider",["frameno","false","header","trailer"],["=","header",[".","$============ Frame #","concat",["frameno","$ ==========="]]],["=","trailer","$================================"],[["not","frameno"],[".","console","printline",["trailer"]]],[".","console","printline",[[".","header","slice",[["length","frameno"]]]]]]],["set.","commander",["`","breakGlobalEnable"],["function","breakGlobalEnable",["enable"],[".","debug","breakGlobalAble",["enable"]]]],["set.","commander",["`","breakAdd"],["function","breakAdd",["location","expr","false","task","firstid","bpdict","procdef","exprstr"],["=","procdef",[".",[".","commander","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find procedure ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],[[["not",[".","location",0]],["=","location",["cons",[".",[".",[".","procdef",1],"namespace"],"tostring"],["cdr","location"]]]]],[[["not",["integer",[".","location",2]]],["=","location",["list",[".","location",0],[".","location",1],1]]],[[".","location",3],["=","location",["list",[".","location",0],[".","location",1],[".","location",2]]]]],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],[".","console","printline",["$ndb: can't find location ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],[".","console","printline",["$ndb: breakpoint ","bpid","$ already exists"]],["return","false"]]]]]],["=","bpdict",["breakpoint","task"]],[[["identity","bpdict"],[["eq",[".","bpdict","proc"],[".","debug","debugBlock"]],[".","console","printline",["$ndb: warning: closure breakpoints would conflict"]],["return","false"]],[".","console","printline",["$ndb: warning: overwriting breakpoint from different debugger"]]]],["=","bpdict",["breakpoint","task",[".","debug","debugBlock"]]],[[["not","bpdict"],[".","console","printline",["$ndb: cannot add that breakpoint"]],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","commander","breakpoints"],"firstid",{dictionary:{$location:"location",$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],[[["identity","expr"],["=","exprstr","$ (conditional)"]],["=","exprstr","$"]],[".","console","printline",["$breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",["location"]],"exprstr"]],[[["not",[".","debug","bpenable"]],[".","console","printline",["$ndb: warning: breakpoints currently disabled"]]]],"firstid"]],["set.","commander",["`","breakClear"],["function","breakClear",["location","false","task"],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],["return","false"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],["breakpoint","task","undefined"],[".","console","printline",["$breakpoint ","bpid","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],"$ cleared"]],["set[",[".","commander","breakpoints"],"bpid","undefined"],["return"]]]]]],[".","console","printline",["$ndb: breakpoint not found for ",[".",[".","commander","utils"],"locationString",["location"]]]]]],["set.","commander",["`","breakDelete"],["function","breakDelete",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]],["return","false"]]],["breakpoint",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"task"],"undefined"],[".","console","printline",["$breakpoint ","breaknum","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"breaknum"],"location"]]],"$ deleted"]],["set[",[".","commander","breakpoints"],"breaknum","undefined"]]],["set.","commander",["`","breakDisable"],["function","breakDisable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"false"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ disabled"]]]]],["set.","commander",["`","breakEnable"],["function","breakEnable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[["not",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"]],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"true"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ enabled"]]]]],["set.","commander",["`","breakList"],["function","breakList",["false","rows","counts","rowdex","coldex"],[[["==",["length",[".","commander","breakpoints"]],0],[".","console","printline",["$no breakpoints"]],["return"]]],["=","rows",{array:[]}],["=","counts",{array:[]}],["set[","rows",0,{array:["$num","$enable","$count","$location","$condition"]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","rowdex",["+",-1,[".","rows","push",[{array:["bpid","$N",[".",["deref",[".","commander","breakpoints"],"bpid"],"hitcount"],[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],[".","commander","exprstr",[[".",["deref",[".","commander","breakpoints"],"bpid"],"conditional"]]]]}]]]],[[[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"enable"],["set[",["deref","rows","rowdex"],1,"$Y"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],["=","coldex",0],["while","false",[["not",["<=","coldex",4]]],[[["||",["not",["deref","counts","coldex"]],["<",["deref","counts","coldex"],[".",["deref","row","coldex"],"length"]]],["set[","counts","coldex",[".",["deref","row","coldex"],"length"]]]],["preadjust","coldex","+",1]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[["prepad",["deref","row",0],["deref","counts",0]]]],[".","console","print",[["prepad",["deref","row",1],["+",["deref","counts",1],1]]]],[".","console","print",[["prepad",["deref","row",2],["+",["deref","counts",2],1]]]],[".","console","print",["$ ",["deref","row",3],[".","space","repeat",[["-",["deref","counts",3],[".",["deref","row",3],"length"]]]]]],[[["deref","row",4],[".","console","print",["$ ",["deref","row",4]]]]],[".","console","newline","false"],[[[">","coldex",0],["=","coldex",0],[".","console","print",[["prepad","$",["deref","counts",0],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",1],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",2],"$-"]]],[".","console","print",["$ ",[".","$-","repeat",[["deref","counts",3]]]]],[".","console","printline",["$ ",[".","$-","repeat",[["deref","counts",4]]]]]]]]]]]],["=","debugCmds",{dictionary:{$b:"debug_breaks",$break:"debug_breaks",$clear:"debug_breaks",$delete:"debug_breaks",$disable:"debug_breaks",$enable:"debug_breaks",$catch:"debug_exceptions",$c:"debug_execs",$continue:"debug_execs",$f:"debug_execs",$finish:"debug_execs",$n:"debug_execs",$next:"debug_execs",$s:"debug_execs",$step:"debug_execs",$eval:"debug_evals",$p:"debug_evals",$print:"debug_evals",$pp:"debug_evals",$help:"debug_helps",$i:"debug_infos",$info:"debug_infos",$list:"debug_list",$bt:"debug_stacks",$backtrace:"debug_stacks",$frame:"debug_stacks",$scope:"debug_stacks",$up:"debug_stacks",$down:"debug_stacks",$q:"debug_quit",$quit:"debug_quit"}}],"commander"]),e._SetBindingList("debug_breaks",["function","debug_breaks",["cmdword","cmdargs","commander","debug","false","console","args","expr","location","breaknum"],["=","console",[".","commander","console"]],[["==",[".","cmdword","charAt",[0]],"$b"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s+if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","location",[".","commander","getprocarg",[["deref","args",1]]]],["=","expr",[".","commander","parseText",[["deref","args",2]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional breakpoint expression not understood"]]]]],["=","location",[".","commander","getprocarg",["cmdargs"]]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]]],[".","commander","breakAdd",["location","expr"]]],[["==","cmdword","$clear"],["=","location",[".","commander","getprocarg",["cmdargs"]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]],[["numeric",["toint",[".","location",1]]],["return",[".","console","print",["$ndb: please specify a procedure (or use delete <number>)"]]]]],[".","commander","breakClear",["location"]]],[["||",["==","cmdword","$delete"],["==","cmdword","$disable"],["==","cmdword","$enable"]],["=","breaknum",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["||",["==","cmdargs","$"],["==",[".","cmdargs","toLowerCase","false"],"$all"]],[["==","cmdword","$enable"],[".","console","printline",["$breakpoints enabled"]],["return",[".","commander","breakGlobalEnable",["true"]]]],[["==","cmdword","$disable"],[".","console","printline",["$breakpoints disabled"]],["return",[".","commander","breakGlobalEnable",["false"]]]]]],[[["||",["not","breaknum"],["&&",["not",["numeric","breaknum"]],["!=",["pop","breaknum"],["`","set"]]]],["return",[".","console","print",["$ndb: please specify breakpoint number(s)"]]]]],["loop","false",[[["numeric","breaknum"],["=","expr","breaknum"],["=","breaknum","false"]],[["empty","breaknum"],["break"]],["=","expr",["pop","breaknum"]]],[[["==","cmdword","$delete"],[".","commander","breakDelete",["expr"]]],[["==","cmdword","$disable"],[".","commander","breakDisable",["expr"]]],[".","commander","breakEnable",["expr"]]]]]]),e._SetBindingList("debug_exceptions",["function","debug_exceptions",["cmdword","cmdargs","commander","debug","nsteps","false","console","args","expr"],["=","console",[".","commander","console"]],[[["==","cmdargs","$disable"],["set.","commander",["`","catch"],"false"]],[["||",["==","cmdargs","$enable"],["==","cmdargs","$all"]],["set.","commander",["`","catch"],"true"]],[["!=","cmdargs","$"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","expr",[".","commander","parseText",[["deref","args",1]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional catch expression not understood"]]]]]],["set.","commander",["`","catch"],"expr"]]],[["not",[".","commander","catch"]],[".","console","printline",["$exceptions: catch disabled"]]],[["atom",[".","commander","catch"]],[".","console","printline",["$exceptions: catch all"]]],[".","console","printline",["$exceptions: catch if ",[".","commander","exprstr",[[".","commander","catch"]]]]]]),e._SetBindingList("debug_execs",["function","debug_execs",["cmdword","cmdargs","commander","debug","nsteps"],[[["==",[".","cmdword","charAt",[0]],"$c"],[".","debug","resume","false"]],[["==",[".","cmdword","charAt",[0]],"$f"],[".","debug","stepup","false"]],[["==",[".","cmdword","charAt",[0]],"$n"],[".","debug","stepover","false"]],[["==",[".","cmdword","charAt",[0]],"$s"],["=","nsteps",["toint","cmdargs"]],[[["not",["numeric","nsteps"]],["=","nsteps",1]]],[".","debug","step",["nsteps"]]],["return"]],["`","break"]]),e._SetBindingList("debug_evals",["function","debug_evals",["cmdword","cmdargs","commander","debug","false","console","ex1","ex2","aterm","printlevel","result"],["=","console",[".","commander","console"]],["=","ex1",[".","commander","parseText",["cmdargs"]]],[[["==","cmdword","$eval"],["=","ex2",["tokenlast"]],["=","aterm",["atTerminator"]],[["==",["first","ex2"],["`",";"]],["=","printlevel",2]],[["==",["first","ex2"],["`",";>"]],["=","printlevel",1]]],["=","aterm","true"],[["==","cmdword","$pp"],["=","printlevel",2]],[["==",[".","cmdword","charAt",[0]],"$p"],["=","printlevel",1]],["return"]],[["not","aterm"],[".","console","printline",[["langExprLoc","ex2"],"$operator missing between ","ex1","$ and ","ex2"]],[".","console","newline","false"]],["=","result",["eval","ex1"]],[["identity","printlevel"],[".","console","print",["$ result: "]],[[["==","printlevel",2],[".","console","print",[[".","commander","print",["result"]]]]],[".","console","printq",["result"]]],[".","console","newline","false"]]]),e._SetBindingList("debug_helps",["function","debug_helps",["cmdword","cmdargs","commander","debug","false","console","text"],["=","console",[".","commander","console"]],[[["==","cmdargs","$me"],["=","text","$you're beyond it"]],["=","text",["call",["let","lambda",["proc"],[["||",["eq","proc","debug_breaks"],["==","cmdargs","$breakpoints"]],"$ b[reak] <location> - set breakpoint at location\n <location> if function(count, value) { <body> }\n <location> if <expression>\n clear <location> - clear breakpoint at location\n delete <#> [<#>...] - delete breakpoint(s) by #\n disable [<#>] - disable breakpoint # | all\n enable [<#>] - enable breakpoint # | all\n i[nfo] (b)reakpoints - show current breakpoints\n"],[["||",["eq","proc","debug_exceptions"],["==","cmdargs","$exceptions"]],"$ catch enable - catch all exceptions (default)\n catch disable - don't catch any exceptions\n catch if <expr> - catch if <expr> true\n"],[["||",["eq","proc","debug_execs"],["==","cmdargs","$execution"]],"$ c[continue] - continue execution\n f[finish] - finish current procedure\n n[ext] - step over to next expression\n s[tep] - step into next expression\n"],[["||",["eq","proc","debug_evals"],["==","cmdargs","$eval"]],"$ pp <expr> - evaluate expr and pretty-print result\n eval <expr> [;] - (same)\n p <expr> - evaluate expr and print basic result\n eval <expr> ;> - (same)\n eval <expr> ;; - evaluate expr and don't print result\n"],[["eq","proc","debug_helps"],"$ help - list help topics\n help <debug-command> - get specific help on a command\n"],[["||",["eq","proc","debug_infos"],["==","cmdargs","$info"]],"$ i[nfo] - list info topics\n i[nfo] <topic> - print debugger info on topic\n"],[["eq","proc","debug_list"],"$ list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["==","cmdargs","$locations"],"$ [<namespace>::] <procname> [.<procname>...] [: line-number]\n"],[["||",["eq","proc","debug_stacks"],["==","cmdargs","$stacks"]],"$ bt - print backtrace\n backtrace - (same)\n frame <start#> [- <end#>] - display stack frame(s)\n scope <frame#> - change focus frame and display variables\n up - change focus frame higher\n down - change focus frame lower\n"],[["eq","proc","debug_quit"],"$ q[uit] - abandon all execution and restart repl\n"],"$help topics:\n breakpoints - work with breakpoints\n exceptions - work with exceptions\n execution - stepping and continuing execution\n eval - evaluating and printing expressions\n help - using help\n info - print debugger information\n list - list procedure source\n locations - syntax for procedure location references\n stacks - backtrace and stack frame details\n quit - quitting current execution\n"],["deref","debugCmds","cmdargs"]]]],[".","console","print",["text"]]]),e._SetBindingList("debug_infos",["function","debug_infos",["cmdword","cmdargs","commander","debug","false","console","args"],["=","console",[".","commander","console"]],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".","console","print",["$info topics:\n i[nfo] (b)reakpoints - show current breakpoints\n i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n i[nfo] f(u)tures - show pending futures\n i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n i[nfo] (p)roc [<name>] - show information about procedure\n i[nfo] (s)scope [<frame>] - show parameters and locals for frame\n"]]],[["||",["==","cmdword","$b"],["==","cmdword","$breakpoints"]],[".","commander","breakList","false"]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","commander","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","commander","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","commander","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$s"],["==","cmdword","$scope"]],["debug_stacks","$scope","cmdargs","commander","debug"]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","commander","info"],"infoproc",["cmdargs"]]],[".","console","printline",["$ndb: info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("debug_list",["function","debug_list",["cmdword","cmdargs","commander","debug","false","console","procdef","start","end","center","markdict"],["=","console",[".","commander","console"]],[[["&&","cmdargs",["!=","cmdargs","$"]],[".",[".","commander","info"],"infolist",["cmdargs"]],["return"]]],[[["not",[".",[".","commander","info"],"defloc"]],[".","console","printline",["$ndb: nothing to list"]],["return"]]],["=","procdef",[".",[".","commander","utils"],"resolveLocation",[[".",[".","commander","info"],"defloc"]]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find ",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],["return"]]],["=","start",[".",[".",[".","commander","info"],"defloc"],2]],["=","center",20],[[["not","start"],["=","start",1],["=","end","center"]],["preadjust","start","-",["quotient","center",2]],[[["<","start",1],["=","start",1]]],["=","end",["-",["+","start","center"],1]]],[".","console","printline",[[".","procdef",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[[[".",[".",[".","commander","info"],"defloc"],2],["=","markdict",{dictionary:{}}],["set[","markdict",["+",[".",[".",[".","commander","info"],"defloc"],2],1],"$--\x3e"]]],[".","console","print",[[".",[".",[".","commander","info"],"utils"],"sourcelist",["procdef","start","end","markdict"]]]]]),e._SetBindingList("debug_stacks",["function","debug_stacks",["cmdword","cmdargs","commander","debug","false","console"],["=","console",[".","commander","console"]],["function","backtrace",["false","stack","framedex","frame"],["function","paramstr",["frame","false","params","pinfo"],["=","params",[".",[".","frame",3],2]],[["not","params"],["=","pinfo","$()"]],[["atom","params"],["=","pinfo",[".","$ ","concat",[["tostring","params"]]]]],["=","pinfo","false"],["for",["let","lambda",["iter"],["=","iter",["iterate","params",["`","param"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","param",[".","iter","$value"]],[[["not","param"],["push",["`","local"],"pinfo"]],["push","param","pinfo"]]]]],["=","pinfo",["tostring",["reverse","pinfo"]]]],["=","framedex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","finfo",[".","$ ","concat",[["tostring",["namespace",["second","frame"]]],"$::",[".","debug","procname",[[".",[".","frame",3],1]]],["paramstr","frame"]]]]],[["eq",["first","frame"],["`","interrupt"]],["=","finfo",[".","$ ","concat",[["tostring",["third","frame"]]]]]],["=","finfo","$"]],[".","console","printline",[["prepad",["postadjust","framedex","+",1],5],"$ ",["prepad",[".","frame",0],10],"finfo"]]]]]],["function","pscope",["false","nargs","frame"],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["not","nargs"],["=","nargs",[".","commander","focus"]],[".","console","printline",["$Scope is frame #","nargs"]]],[["||",["not",["numeric","nargs"]],[">=","nargs",[".",[".","commander","frames"],"length"]]],[".","console","printline",["$ndb: invalid frame number:","nargs"]],["return"]],[".","console","printline",["$Scope now frame #","nargs"]]],["set.","commander",["`","focus"],"nargs"],["=","frame",["deref",[".","commander","frames"],"nargs"]],[".","commander","updateDefproc",["frame"]],[".","console","printline",[[".","frame",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[".","commander","printlocals",["frame"]]],["function","pframes",["false","nargs","startx","lastx"],["=","startx",["=","lastx",[".","commander","focus"]]],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["numeric","nargs"],["=","startx",["=","lastx","nargs"]]],[["eq",["first","nargs"],["`","range"]],[["<",[".","nargs",1],[".","nargs",2]],["=","startx",[".","nargs",1]],["=","lastx",[".","nargs",2]]],["=","startx",[".","nargs",2]],["=","lastx",[".","nargs",1]]],[["identity","nargs"],[".","console","print",["$ndb: invalid frame number or range:","nargs"]],["return"]]],[["<","startx",[".",[".","commander","frames"],"length"]],[[[">=","lastx",[".",[".","commander","frames"],"length"]],["=","lastx",["-",[".",[".","commander","frames"],"length"],1]]]],["while","false",[["not",["<=","startx","lastx"]]],[".","commander","printframedivider",["startx"]],[".","commander","printframe",[["deref",[".","commander","frames"],["postadjust","startx","+",1]]]]],[".","commander","printframedivider","false"]]],[["||",["==","cmdword","$bt"],["==","cmdword","$backtrace"]],["backtrace"]],[["==","cmdword","$frame"],["pframes"]],[["==","cmdword","$scope"],["pscope"]],[["||",["==","cmdword","$up"],["==","cmdword","$down"]],[[["&&",["==","cmdword","$up"],["<",[".","commander","focus"],["-",[".",[".","commander","frames"],"length"],1]]],[".","console","print",["$+Scope now frame #",["preadjust",[".","commander","focus"],"+",1]]]],[["&&",["==","cmdword","$down"],[">",[".","commander","focus"],0]],[".","console","print",["$-Scope now frame #",["preadjust",[".","commander","focus"],"-",1]]]],["return"]],[".","commander","updateDefproc",[["deref",[".","commander","frames"],"nargs"]]]],[".","console","printline",["$ndb: ","cmdword","$ not implemented yet"]]]),e._SetBindingList("debug_quit",["function","debug_quit",["cmdword","cmdargs","commander","debug"],["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]),e._AddPropertyList("DebuggerInit",[["$.lingoInit","true"]]),e._SetBindingList("DebuggerInit",["function","DebuggerInit",["false","manifest"],["=","manifest",["`",["DebuggerREPL","debug_breaks","debug_exceptions","debug_execs","debug_evals","debug_helps","debug_infos","debug_list","debug_stacks","debug_quit","DebuggerInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Debugger",["function","lambda",["modobj","compobj","false","debug"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebuggerREPL"],"DebuggerREPL"],["=","debug",[".",[".",[".",["modlist"],"Util"],"exports"],"DebugController","false"]],[".","debug","setDefCommander",[["DebuggerREPL","debug"]]]]]]]),e._Execute(["DebuggerInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
41
41
 
42
42
  /* Copyright (c) 2017-2022 by Zulch Laboratories, Inc. */
43
- !function(e){e.BootModule=function(e){"use strict";var t=e._SetNamespace("Util");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("times","*"),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("+=",["macro","+=",["ex1","ex2"],["assign","ex1",["+",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("-=",["macro","-=",["ex1","ex2"],["assign","ex1",["-",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("*=",["macro","*=",["ex1","ex2"],["assign","ex1",["*",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("/=",["macro","/=",["ex1","ex2"],["assign","ex1",["/",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("Component",["closure","Component",["modobj","name","filename","false","compobj"],["=","compobj",["new","object","this"]],["set.","compobj",["`","module"],"modobj"],["set.","compobj",["`","name"],"name"],["set.","compobj",["`","filename"],"filename"],["set.","compobj",["`","modsym"],[".","modobj","modsym"]],["set.","compobj",["`","manifest"],"false"],["set.","compobj",["`","loaded"],"false"],["set.","compobj",["`","package"],["function","package",["false","pkg","curactns","returner"],[".",[".","Naan","module"],"require",["$Util/Packager.nlg"]],[[["not",[".",[".","module","exports"],"pkgSave"]],["return","false"]]],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["catch",[[".","modobj","activate","false"],["=","pkg",["pkgSave",["compress",[".","compobj","name"]],[".","compobj","manifest"]]]],[[["identity","true"],["ErrorDebuglog","$package exception: ","exception"],["return","false"]]],[["returner"]]],"pkg"]],["set.","compobj",["`","jspackage"],["function","jspackage",["false","pkg"],["=","pkg",["package"]],[[["not","pkg"],["return","false"]]],["pkgToJsSource","pkg"]]],["set.","compobj",["`","npackage"],["function","npackage",["false","pkg"],["=","pkg",["package"]],[["identity","pkg"],["JSONstringify","pkg"]]]],["set.","compobj",["`","save"],["function","save",["fpath","overwrite","false","text","pathobj","options"],["=","text",["jspackage"]],[[["not","text"],["return","false"]]],["=","fpath",[".","JSpath","normalize",["fpath"]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["==",["length",[".","pathobj","ext"]],0],["=","fpath",["strcat","fpath","$.json"]]]],["=","options",["xnew"]],[[["identity","overwrite"],["set.","options",["`","flags"],"$w"]],["set.","options",["`","flags"],"$wx"]],["=","fpath",[".","JSpath","join",[[".","js","d"],"fpath"]]],[".",[".","js","r",["$fs"]],"writeFileSync",["fpath","text","options"]],"fpath"]],"compobj"]),e._SetBindingList("Module",["closure","Module",["modules","modid","exns","false","modobj"],["=","modobj",["new","object","this"]],["set.","modobj",["`","owner"],"modules"],["set.","modobj",["`","id"],"modid"],["set.","modobj",["`","created"],[".","Date","now","false"]],["closure","makeActivator",["false","checkns","targns"],["=","checkns",["nsrights"]],["=","targns",["car",["nsactive"]]],["call",["enclose",["function","lambda","false",["function","returner","false",[["eq","checkns",[".",[".","Naan","local"],"nscaller","false"]],["nsactive",["cons","targns",["inherits"]]]]],"returner"],"targns"]]],["set.","modobj",["`","inherits"],["function","inherits",["false","result","nslist"],["=","nslist",[".","modobj","inherit"]],["loop","false",[["empty","nslist"]],["=","ns",["pop","nslist"]],[[["not",["member","ns","result"]],["push","ns","result"]]]],["push",["second",["nsactive","true"]],"result"],["reverse","result"]]],["set.","modobj",["`","makeComponent"],["function","lambda",["compname","filename","false","compobj"],["=","compobj",["Component","modobj","compname","filename"]],["set[",[".","modobj","components"],"compname","compobj"]]],["set.","modobj",["`","destroy"],["function","destroy","false",[".","modules","destroy",["modobj"]],"true"]],["call",["let","lambda",["false","mtuple"],["function","nsinit",["modobj","false","modsym"],["letlocal","$module"],["=","modsym",["compress","$module"]],["putproc","modsym",[".","modules","moduleProc"]],["assign","modsym","modobj"],["list",["car",["nsactive"]],["makeActivator"],"modsym"]],["function","registerns",["ns","modobj","false","curactns"],["=","curactns",["nsactive"]],["sudo",["nsactive",["cons","ns","curactns"]]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive","curactns"]],"ns"],["function","makens",["nsname","modobj","false","ns"],["=","ns",["new","namespace","nsname"]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive",["cdr",["nsactive"]]]],"ns"],["set.","modobj",["`","locpath"],"$"],["set.","modobj",["`","exports"],{dictionary:{}}],["set.","modobj",["`","children"],{array:[]}],["set.","modobj",["`","components"],{dictionary:{}}],[[["identity","exns"],["=","mtuple",["registerns","exns","modobj"]]],["=","mtuple",["makens","modid","modobj"]]],["set.","modobj",["`","namespace"],["car","mtuple"]],["set.","modobj",["`","activate"],["second","mtuple"]],["set.","modobj",["`","modsym"],["third","mtuple"]]]],"modobj"]),e._SetBindingList("Modules",["closure","Modules",["false","modules"],["=","modules",["new","object","this"]],["set.","modules",["`","list"],{dictionary:{}}],["set.","modules",["`","locations"],{dictionary:{}}],["function","reload",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"reload","false"]],[[["identity","true"]]],"false"]],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"postload","false"]],[[["identity","true"]]],"false"]]],["loadNotify","reload"],["set.","modules",["`","moduleProc"],["function","moduleProc",["modid"],[["not","modid"],["keys",[".","modules","list"]]],["deref",[".","modules","list"],"modid"]]],["set.","modules",["`","findModule"],["function","findModule",["ns","id","locpath","false","modobj","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"],"false"],["=","modobj",["xget",[".","modules","list"],["pop","mkeys"]]],[["&&",["||",["not","ns"],["eq",[".","modobj","namespace"],"ns"]],["||",["not","id"],["==",[".","modobj","id"],"id"]],["||",["not","locpath"],["==",[".","modobj","locpath"],"locpath"]]],"modobj"]]]],["set.","modules",["`","letinherit"],["function","letinherit",["modfrom","false","modto","curac","nsfrom","nsto"],["=","curac",["nsactive"]],[[["string","modfrom"],["=","modfrom",["findModule","false","modfrom"]]]],[["not","modfrom"],"false"],["=","modto",["findModule",["car","curac"]]],[[[".","modfrom","inherit"],["=","nsfrom",["cons",[".","modfrom","namespace"],[".","modfrom","inherit"]]]],["=","nsfrom",["list",[".","modfrom","namespace"]]]],[[["identity","modto"],[[[".","modto","inherit"],["set.","modto",["`","inherit"],["append","nsfrom",[".","modto","inherit"]]]],["set.","modto",["`","inherit"],"nsfrom"]],["=","nsto",[".","modto","inherits","false"]]],["=","nsto","nsfrom"]],["nsactive",["append",["car","curac"],"nsto",["cdr","curac"]]],["nsactive"]]],["set.","modules",["`","require"],["closure","require",["fpath","options","data","false","parent","pathobj","locpath","modname","modobj","compname","compath","compobj","presult","returner","extensions","pathext"],[[["&&","options",["not",["dictionary","options"]]],["throw",["Error",[".","$require(","concat",["fpath","$): invalid options"]]]]]],[[[".","options","parent"],["=","parent",["findModule",[".","options","parent"]]]],["=","parent",["findModule",["nscaller"]]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["||",["==",[".","pathobj","ext"],"$"],[".",["RegExp","$[/\\\\]$"],"test",["fpath"]]],["=","compath",[".","JSpath","join",["fpath",[".","pathobj","base"]]]],["=","pathobj",[".","JSpath","parse",["compath"]]]]],["=","locpath",[".","pathobj","dir"]],["=","modname",[".","JSpath","basename",["locpath"]]],[[[".","options","in"],["=","presult",["deref",[".","modules","locations"],[".","options","in"]]],[[["not","presult"],["throw",["Error",[".","$require(","concat",["fpath","$): in:",[".","options","in"],"$ undefined"]]]]]],["=","locpath",[".","JSpath","resolve",["presult","locpath"]]]],[["&&",["!=",[".","pathobj","ext"],"$"],["==","locpath","$"]],["=","locpath",[".","parent","locpath"]]],[[".",["RegExp","$^[.][.]?[/\\\\]"],"test",["fpath"]],["=","locpath",[".","JSpath","join",[[".","parent","locpath"],"locpath"]]]]],["set.","pathobj",["`","dir"],"locpath"],["=","compname",[".","pathobj","name"]],[[["&&","locpath",["!=","locpath","$"]],["=","modobj",["findModule","false","false","locpath"]]]],[[["not","modobj"],[["==","modname","$"],["=","modobj","parent"]],["=","modobj",["findModule","false","modname"]]]],[[["&&",["not",[".","options","read"]],["not",[".","options","reload"]],["deref",[".","modobj","components"],"compname"]],["return",[".","modobj","exports"]]]],["=","returner",["makeReturner"]],["catch",[["=","extensions",{array:["$nlg","$npk"]}],["loop","false",["=","pathext",[".","extensions","pop","false"]],[["not","pathext"]],["set.","pathobj",["`","ext"],[".","$.","concat",["pathext"]]],["set.","pathobj",["`","base"],[".",[".","pathobj","name"],"concat",[[".","pathobj","ext"]]]],["=","compath",[".","JSpath","format",["pathobj"]]],[[[".",[".",[".","js","w"],"location"],"href"],["=","presult",["modWebReadFile","compath",[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"href"]]]]]],["=","presult",["modNodeReadFile","compath"]]],[[[">",["length","presult"],0],[[[".","options","read"],["return","presult"]]],[[["not","modobj"],["=","modobj",["makeModule","modname"]],["set.","modobj",["`","locpath"],"locpath"]]],["=","compobj",[".","modobj","makeComponent",["compname",[".","pathobj","base"]]]],[".","modobj","activate","false"],["set.","modobj",["`","data"],"data"],["rdsDriver","presult","compath"],["set.","modobj",["`","data"],"undefined"],["returner"],["set.","compobj",["`","loaded"],"true"],["return",[".","modobj","exports"]]]]],["throw",["Error",[".","$require(","concat",["fpath","$): failed at ","compath"]]]],["set[",[".","modobj","components"],"compname","false"],"false"],[[["identity","true"],["ErrorDebuglog",[".","$require(","concat",["fpath","$): exception:"]],"exception"],["set[",[".","modobj","components"],"compname","false"],["returner"],["throw","exception"]]],"false"]]],["set.","modules",["`","defineLoc"],["function","defineLoc",["id","path"],[["not","id"],[".","modules","locations"]],["set[",[".","modules","locations"],"id","path"]]],["set.","modules",["`","build"],["closure","build","args",["call",["function","lambda",["modname","compname","proc","args","false","modobj","compobj","curactns","presult","returner"],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["=","modobj",["findModule","false","modname"]],[[["identity","modobj"]],[["==",["namespace",["car","curactns"]],"modname"],["=","modobj",["makeModule","modname",["car","curactns"]]]],["=","modobj",["makeModule","modname"]]],["=","compobj",["deref",[".","modobj","components"],"compname"]],[[["not","compobj"],["=","compobj",[".","modobj","makeComponent",["compname"]]]]],["catch",[[".","modobj","activate","false"],["set.","compobj",["`","loaded"],"false"],["=","presult",["apply","proc",["cons","modobj","compobj","args"]]],["returner"],[["not","presult"],"false"],["set.","compobj",["`","loaded"],"true"],[".","modobj","exports"]],[[["identity","true"],["ErrorDebuglog","$module build exception: ","exception"],["returner"],["throw","exception"]]],"false"]],["car","args"],["second","args"],["third","args"],["cdddr","args"]]]],["set.","modules",["`","changeModNS"],["function","changeModNS",["name","false","modobj"],["=","name",["tostring","name"]],["=","modobj",["findModule","false","name"]],[["not","modobj"],["printline","$can't find ","name","$ -- please select from ",["keys",[".","modules","list"]]],"false"],[".","modobj","activate","false"],[".","modobj","id"]]],["set.","modules",["`","makeModule"],["function","makeModule",["name","exns","false","modobj"],["=","modobj",["Module","modules","name","exns"]],["set[",[".","modules","list"],"name","modobj"],"modobj"]],["set.","modules",["`","destroy"],["function","destroy",["modobj"],["set[",[".","modules","list"],[".","modobj","id"],"undefined"],["delete",[".","modobj","namespace"]],"true"]],"modules"]),e._SetBindingList("modWebReadFile",["closure","modWebReadFile",["filename","href","false","complete","text"],["closure","clientRequest",["method","path","putdata","cbLoad","false","request","options"],["=","request",["xnew",[".",[".","js","w"],"XMLHttpRequest"]]],[".","request","addEventListener",["$load",["function","lambda",["event"],[["identity","cbLoad"],["cbLoad","request","event"]]]]],[".","request","addEventListener",["$error",["function","reqFailed",["event"],["debuglog","$client request failed: ","event"]]]],[".","request","open",["method","path"]],[".","request","send",["putdata"]]],["function","readFile",["false","url"],[[["not",[".","href","endsWith",["$/"]]],["=","href",[".","href","concat",["$/"]]]]],[[[".","filename","startsWith",["$/"]],["=","filename",[".","filename","slice",[0,-1]]]]],["=","url",[".","href","concat",["filename"]]],["clientRequest","$GET","url","false",["function","lambda",["req","evt"],[[["==",[".","req","status"],200],["=","text",[".","req","responseText"]]]],[".","complete","signal",["true"]]]]],["=","complete",["new","nonce"]],["readFile","filename"],[".","complete","wait","false"],"text"]),e._SetBindingList("modWebParseFile",["closure","modWebParseFile",["filename","href","false","text"],["=","text",["modWebReadFile","filename","href"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modNodeReadFile",["closure","modNodeReadFile",["filename","false","jspath","fs","locpath"],["=","jspath","JSpath"],["=","fs",[".","js","r",["$fs"]]],["=","locpath",[".","jspath","resolve",[[".","js","d"],"filename"]]],[[".","fs","existsSync",["locpath"]],[".","fs","readFileSync",["locpath","$utf8"]]],[[".","fs","existsSync",[["=","locpath",[".","jspath","resolve",[[".","js","d"],"$../","filename"]]]]],[".","fs","readFileSync",["locpath","$utf8"]]]]),e._SetBindingList("modNodeParseFile",["closure","modNodeParseFile",["filename","false","text"],["=","text",["modNodeReadFile","filename"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modDriver",["closure","modDriver",["text","sourcename","false","package","dialob","errors","source","error","expr"],[[[".","text","startsWith",['$[["NaanPackage"']],["catch",[[[".",[".","js","w"],"JSON"],["=","package",[".",[".",[".","js","w"],"JSON"],"parse",["text"]]]],["=","package",[".",[".",[".","js","g"],"JSON"],"parse",["text"]]]],[[["ErrorDebuglog"]],[["$require("]],[["sourcename"]],[["$) package failed: "]],[["exception"]],[["throw"]],[["exception"]]],"false"],[[["identity","package"],["pkgLoad","package"]],["printline","$require(","sourcename","$): package load failed"],"false"],["return"]]],["=","text",[".","text","replace",[["RegExp","$[\\r\\n^]+/(dialect)\\s+(\\w+)(?=[\\r\\n$])","$g"],["function","lambda",["match","cmd","arg","offset","str"],[[["==","cmd","$dialect"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["arg"]]],[["not","dialob"],["debuglog",[".","$require(","concat",["sourcename","$): dialect ","arg","$ not found"]]]]],["debuglog",[".","$require(","concat",["sourcename","$): /","cmd","$ not understood"]]]],[".","$\n","repeat",[["-",[".",[".","match","split",["$\n"]],"length"],1]]]]]]],[[["not","dialob"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],[["not","dialob"],["throw","$dialect support not available"]]]],["catch",[["=","errors",{array:[]}],["=","source",["new","textstream","text"]],["loop","false",["=",["error","expr"],[".","dialob","parse",["source"]]],[[["identity","expr"],["\\$",["evalactive","expr"]]],["=","errors",[".","errors","concat",["error"]]]]]],[[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["identity","true"],["ErrorDebugLog","$require(","sourcename","$) failed: ","exception"],["throw","exception"]]],"false"],[["==",[".","errors","length"],0],"true"],["printline","$Errors from require(","sourcename","$):"],["=","errors",[".","errors","reverse","false"]],["loop","false",[["==",[".","errors","length"],0]],["printline",[".","dialob","parseErrorString",[[".","errors","pop","false"]]]]],"false"]),e._SetBindingList("letlocal",["macro","letlocal","names",["call",["function","lambda",["false","localname","curac","syms"],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["loop","false",[["atom","names"]],["=","localname",["pop","names"]],["=","syms",["cons",["compress","localname"],"syms"]]],["nsactive","curac"],["reverse","syms"]]]]),e._SetBindingList("letimport",["function","letimport","names",["call",["function","lambda",["false","item","exlist","category","count"],["function","import1",["source","localname","false","curac","sym"],[["not","source"],["debuglog","$letimport: source undefined:","source"]],[["not",["deref",[".",[".",["nsactive","true"],1],"index"],"localname"]],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["=","sym",["compress","localname"]],["nsactive","curac"],[[["getproc","source"],["copyproc","sym","source"]],[["||",["procedure","source"],["xobject","source"]],["assign","sym","source"]],["debuglog","$letimport: no procedure binding:","source"],["return"]],["=","count",["+","count",1]]]],["function","importCat",["category","false","item","exlist","source"],[["not",["dictionary","category"]],["debuglog","$letimport: invalid category:","category"]],["=","exlist",["keys","category"]],["loop","false",[["empty","exlist"]],["=","item",["pop","exlist"]],["=","source",["xget","category","item"]],[[["||",["symbol","source"],["tuple","source"],["xobject","source"]],["import1","source",["tostring",["unintern","item"]]]],[["dictionary","source"],["importCat","source"]],["debuglog","$letimport: invalid category entry:",["keys","category"],"item"]]]],["=","count",0],["loop","false",[["empty","names"]],["=","item",["pop","names"]],[[["not",["atom","item"]],[["and",["==",["length","item"],2],["atom",["car","item"]],["string",["second","item"]]],["import1",["car","item"],["second","item"]]],["debuglog","$letimport: invalid pair:","item"],"false"],[["getproc","item"],["import1","item",["tostring",["unintern","item"]]]],[["dictionary","item"],["importCat","item"]],["debuglog","$letimport: invalid source:","item"]]],"count"]]]),e._SetBindingList("makeExport",["function","makeExport",["syms","false","result","sym"],["=","result",["new","dictionary"]],["loop","false",[["empty","syms"]],["=","sym",["pop","syms"]],["xset","result","sym","sym"]],"result"]),e._SetBindingList("makeReturner",["closure","makeReturner",["nslist","false","checkns","targns"],["=","checkns",["nsrights"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]]],"targns"]]),e._SetBindingList("loadNotify",["function","loadNotify",["recipient"],[[["not",["member","recipient","notifyList"]],["push","recipient","notifyList"]]],"true"]),e._SetBindingList("loadTrap",["function","loadTrap",["false","trav","tell"],["=","tell",[".","notifyList","reverse"]],["while","false",[["not",["tuple","tell"]]],["=","trav",["pop","tell"]],["call","trav"]]]),e._SetBindingList("jsReload",["function","jsReload",["false","wsg"],["=","wsg",["||",[".","js","w"],[".","js","s"],[".","js","g"]]],["=","JSpath",[".","js","r",["$path"]]],["=","JSONstringify",[".",[".","wsg","JSON"],"stringify"]],["=","JSONparse",[".",[".","wsg","JSON"],"parse"]]]),e._SetValue("NaanBuildComponent",{dictionary:{$filename:"$Module.nlg",$name:"$Module",$manifest:["Component","Module","Modules","modWebReadFile","modWebParseFile","modNodeReadFile","modNodeParseFile","modDriver","letlocal","letimport","makeExport","makeReturner","loadNotify","loadTrap","jsReload","NaanBuildComponent","ModuleInit"]}}),e._SetBindingList("ModuleInit",["closure","ModuleInit",["false","modules","naanMod","utilMod"],["function","findNS",["nsid","false","allns","nsns"],["=","allns",["nsactive","true"]],["loop","false",[["empty","allns"]],["=","nsns",["pop","allns"]],[["==",["namespace","nsns"],"nsid"],"nsns"]]],["function","modlist","false",[".","modules","list"]],["jsReload"],["loadNotify","jsReload"],["=","modules",["Modules"]],["=","naanMod",[".","modules","makeModule",["$Naan","false",["findNS","$NaanRoot"]]]],["=","utilMod",[".","modules","makeModule",["$Util","naanMod",["nsrights"]]]],["set.",[".","utilMod","components"],["`","Module"],["Component","utilMod",[".","NaanBuildComponent","name"]]],["set.",[".",[".","utilMod","components"],"Module"],["`","loaded"],"true"],["set.",[".",[".","utilMod","components"],"Module"],["`","manifest"],[".","NaanBuildComponent","manifest"]],["set.",[".","Naan","module"],["`","require"],[".",[".","modules","require"],1]],["set.",[".","Naan","module"],["`","defineLoc"],[".",[".","modules","defineLoc"],1]],["set.",[".","Naan","module"],["`","build"],[".",[".","modules","build"],1]],["set.",[".","Naan","module"],["`","letinherit"],[".",[".","modules","letinherit"],1]],["set.",[".","Naan","module"],["`","chns"],[".",[".","modules","changeModNS"],1]],["set.",[".","Naan","module"],["`","letimport"],"letimport"],["set.",[".","Naan","module"],["`","export"],"makeExport"],["set.",[".","Naan","module"],["`","letlocal"],"letlocal"],["set.",[".","Naan","module"],["`","modlist"],"modlist"],["set.",[".","Naan","module"],["`","nodeparse"],"modNodeParseFile"],["set.",[".","Naan","module"],["`","webparse"],"modWebParseFile"],["=","LoadTrap","loadTrap"],["set.",[".","Naan","module"],["`","LoadNotify"],"loadNotify"],["xlock",[".","Naan","module"],["car",["nsactive"]]],["sudo",["putproc","rdsDriver",["enclose",["getproc","modDriver"],["car",["nsactive","true"]]]]],"true"]),e._Execute(["ModuleInit"]),e._AddPropertyList("bt",[["$lingoDriver","bt"],["$escape","bt"],["$debugger","bt"],["$debugexception","bt"],["$driver","bt"],["$evalactive","break"]]),e._SetBindingList("debugCon",["closure","debugCon",["false","debug","defCommander"],["=","debug",["new","object","this"]],["set.","debug",["`","nshidden"],["list",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"namespace"]]],["set.","debug",["`","breakpoints"],{dictionary:{}}],["set.","debug",["`","bpenable"],"true"],["function","dsave",["false","saveob"],["=","saveob",{dictionary:{}}],["set.","saveob",["`","curns"],["nsactive"]],[[["not",["positive","debugDepth"]],["=","debugDepth",1]],["preadjust","debugDepth","+",1]],"saveob"],["function","drestore",["saveob"],["preadjust","debugDepth","-",1],["nsactive",[".","saveob","curns"]],"saveob"],["function","insertns",["curns"],[["not",["rest","curns"]],["cons",["nsrights"],"curns"]],["cons",["first","curns"],["insertns",["rest","curns"]]]],["function","clearframes","false",["set.","debug",["`","entrystack"],"false"]],["function","storeframes",["all","false","procount","framex","framelist","frame","status"],["function","evaluate",["expr"],["eval","expr"]],[["not",[".","debug","entrystack"]],["=","procount",0],["set.","debug",["`","entrystack"],["stacktrace"]],[[["identity","all"],["=","framex",1]],["=","framex",["stepframe",[".","debug","entrystack"]]]],["set.","debug",["`","frames"],{array:[]}],["=","framelist",["deref",[".","debug","entrystack"],["-",["-","framex"],1]]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["procedure","frame"],[[["not","all"],["=","status",["get","bt",["procname",[".",[".","frame",3],1]]]],[[["eq","status","bt"],["continue"]]],[["&&",[">","procount",0],["eq","status",["`","break"]]],["break"]]]],["preadjust","procount","+",1]]],[".",[".","debug","frames"],"push",["frame"]]],[["==","procount",0],[".",[".","debug","frames"],"push",[["list",["`","function"],"evaluate",[".",[".","evaluate","proc"],-3],[".","evaluate","proc"]]]]]]],["function","stepframe",["stack","false","framex","framelist","frame","found","debugout"],["=","framex",0],["=","framelist","stack"],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["&&","debugout",["==",[".","frame",0],"interrupt"]],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["=","found","framex"],["break"]],[["&&",["not",["eq","exception",["`","exception"]]],["==",[".","frame",2],"$exception-hook"]],["=","found",["+","framex",1]],["break"]]],[["&&",["member",[".","frame",0],["`",["function","closure"]]],["member",[".","frame",1],["`",["debugBlock","startException","startEscape","start"]]]],["=","debugout","true"],["=","found","framex"]],[["&&",["==",[".","frame",0],["`","function"]],["==",[".","frame",1],["`","debugger"]]],["=","found","framex"],["break"]]],["preadjust","framex","+",1]],"found"],["function","procframe",["stack","startx","false","frame"],["loop","false",["=","frame",["deref","stack","startx"]],[[["not","frame"],["return","false"]]],[["procedure","frame"]],["preadjust","startx","+",1]],"startx"],["function","intrap",["false","framelist","frame"],["=","framelist",["stacktrace"]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["==",[".","frame",0],"interrupt"],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["return",[".","frame",2]]]]]],"false"],["function","steppedover",["dict","false","stack","curframe","origframe","procdex"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["=","origframe",["-",["length","stack"],[".","debug","nextOffset"]]],["=","procdex",["procframe","stack","curframe"]],["set.","debug",["`","nextOffset"],"false"],[[["||",["not","procdex"],[">","procdex","origframe"]],["return","false"]]],[[["==","procdex",["procframe","stack",["+","origframe",1]]],["return","false"]]],[[["stacktrap",["+","procdex",1],0,"debugBlock"],["return"]]],"false"],["function","brokeover",["dict","false","resume"],["=","resume",[".",[".","debug","breakHitDict"],"resume"]],["set.",[".","debug","breakHitDict"],["`","resume"],"undefined"],["set.",[".","debug","breakHitDict"],["`","enable"],"true"],["set.","debug",["`","breakHitDict"],"false"],"resume"],["set.","debug",["`","depth"],["function","depth","false","debugDepth"]],["set.","debug",["`","procname"],["function","procname",["name","false","parent"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],["=","name",["tostring","name"]],[["identity","parent"],[".",["procname","parent"],"concat",["$.","name"]]],"name"]],["set.","debug",["`","insideProc"],["function","insideProc",["false","frames","frame"],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","frame",[".","frames","shift","false"]],[[["procedure","frame"],["return",[".","frame",3]]]]],"false"]],["set.","debug",["`","frameProcTask"],["function","frameProcTask",["frame","false","frames","framedex","ftrav","procdef","bodydef","location"],[[["not",["array",[".","debug","frames"]]],["return","false"]]],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","ftrav",[".","frames","shift","false"]],[[["eq","ftrav","frame"],["=","frame","false"]]],[[["procedure","ftrav"],[[["not","frame"],["=","procdef",[".","ftrav",3]],[[["not","bodydef"],["=","bodydef","procdef"]]],["break"]]],["=","bodydef","false"]],[["||",["==",[".","ftrav",0],["`","body"]],["==",[".","ftrav",0],["`","loop"]]],[["not","bodydef"],["=","bodydef",[".","ftrav",2]]]]]],[["identity","procdef"],["list","procdef","bodydef"]]]],["set.","debug",["`","debugBlock"],["closure","debugBlock",["arg1","arg2","arg3","false","saveob","savech","savecmd","entry"],[[[">=","debugDepth",1],["set.","debug",["`","entrystack"],"false"],["storeframes","true"]],["storeframes"]],["=","saveob",["dsave"]],["=","savech",["textstreams"]],["nsactive",["insertns",[".","saveob","curns"]]],["=","savecmd",{dictionary:{}}],[".",[".","debug","commander"],"entering",["savecmd"]],["catch",[[[["string","arg1"],["=","entry","arg1"]],["=","entry",["intrap"]],[["==","entry","$steptrap"],[[[".","debug","breakHitDict"],[["brokeover","arg1"],["return"]]]],[[".","debug","nextOffset"],[["steppedover","arg1"],["return"]]],[[".","debug","startPause"],["set.","debug",["`","startPause"],"false"],["=","entry","$startpause"]]],[["==","entry","$breakpoint"],[[["not",[".","debug","bpenable"]],["return"]]],["set.","debug",["`","breakHitDict"],"arg1"]],[["not","entry"],["=","entry","$"]]],["set.","debug",["`","nextOffset"],"false"],["loop","false",[[".",[".","debug","commander"],"pauser",["entry","arg1","arg2","arg3"]]]]],"false",[[".",[".","debug","commander"],"leaving",["savecmd"]],["textstreams","savech"],["drestore","saveob"],[[[".","debug","bpenable"],["breakpoint","true"]]],["clearframes"]]]]],["function","skipbreak","false",["set.",[".","debug","breakHitDict"],["`","enable"],"false"]],["set.","debug",["`","resume"],["function","resume","false",[[".",[".","debug","breakHitDict"],"enable"],["set.",[".","debug","breakHitDict"],["`","resume"],"true"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],1,"debugBlock"]]]],["set.","debug",["`","step"],["function","step",["nstep","false","stack","stackdex","task"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["=","task",[".",[".",["deref","stack","stackdex"],3],2]],[[["&&",["symbol",[".","task",0]],["member",[".",[".",[".",[".","task",0],"proc"],1],"namespace"],[".","debug","nshidden"]]],["return",["stepover"]]]],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],"nstep","debugBlock"]]],["set.","debug",["`","stepup"],["function","stepup",["false","stack","stackdex","found"],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["loop","false",[[[">=","stackdex",["length","stack"]],["return"]]],[[["procedure",["deref","stack","stackdex"]],[[["get","bt",["procname",[".",[".",["deref","stack","stackdex"],3],1]]],["return"]]],[[["identity","found"],["break"]]],["=","found","stackdex"]]],[[["eq",["deref","stack",0],["`","loop"]],["=","found","stackdex"]]],["preadjust","stackdex","+",1]],["stacktrap","found",0,"debugBlock"]]],["set.","debug",["`","stepover"],["function","stepover",["false","stack","curframe"],["skipbreak"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["set.","debug",["`","nextOffset"],["-",["length","stack"],"curframe"]],[[["stacktrap","curframe",1,"debugBlock"],["return","true"]]],["set.","debug",["`","nextOffset"],"false"]]],["set.","debug",["`","quit"],["function","quit","false",["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]],["set.","debug",["`","startEscape"],["function","startEscape","false",["storeframes"],["debugBlock","$escape"]]],["set.","debug",["`","startException"],["function","startException",["except"],["storeframes"],["set.","debug",["`","startExcept"],"except"],["debugBlock","$exception","except"]]],["set.","debug",["`","start"],["function","start",["pause"],["storeframes"],[["identity","pause"],["set.","debug",["`","startPause"],"true"],[[["stacktrap",["stepframe",["stacktrace"]],0,"debugBlock"],["return"]]],["debugBlock","$startfail"]],["debugBlock","$"]]],["set.","debug",["`","setDefCommander"],["function","setDefCommander",["commander"],["=","defCommander","commander"],[["not",[".","debug","commander"]],["set.","debug",["`","commander"],"defCommander"]]]],["set.","debug",["`","setCommander"],["function","setCommander",["commander"],[["not","commander"],["set.","debug",["`","commander"],"defCommander"]],[".",[".","debug","commander"],"endPauser","false"],["set.","debug",["`","commander"],"commander"]]],["set.","debug",["`","breakHit"],["function","breakHit",["where","value","false","keylist","bpid","entry","result"],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",["=","bpid","false"],[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[["eq",[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]]]],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","false"]]],["=","entry",["deref",[".","debug","breakpoints"],"bpid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","false"]]]],"bpid"]],["function","breakTasks",["procdef","task","false","procs","taskpath","tasks"],[["member",[".","procdef",0],["`",["closure","macro"]]],["=","taskpath",["tuplepath","procdef","task"]],["=","procs",["instances",[".","procdef",1]]],[[["||",["not","taskpath"],["not","procs"]],["return","task"]]],["=","tasks",{array:[]}],["loop","false",[["atom","procs"]],["=","task",["apply",["`","."],["list",[".",["pop","procs"],"proc"],"taskpath"]]],[[["identity","task"],[".","tasks","push",["task"]]]]],"tasks"],"task"],["set.","debug",["`","breakAdd"],["function","breakAdd",["procdef","task","expr","false","firstid","keylist","bpid","tasks","bpdict"],["=","firstid",0],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",[["not",["member",["tostring",["preadjust","firstid","+",1]],"keylist"]]]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[[["eq",[".","bpdict","task"],"task"],["set.","bpdict",["`","conditional"],"expr"],["set.","pbdict",["`","hitcount"],0],["return","bpid"]]]],["=","tasks",["breakTasks","procdef","task"]],["=","bpdict",["breakpoint","tasks",[".","debug","debugBlock"]]],["set.","bpdict",["`","task"],"task"],[[["not","bpdict"],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","debug","breakpoints"],"firstid",{dictionary:{$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],"firstid"]],["set.","debug",["`","breakClear"],["function","breakClear",["procdef","task","false","keylist","tasks","bpid"],["=","keylist",["keys",[".","debug","breakpoints"]]],["=","tasks",["breakTasks","procdef","task"]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[[[">=",[".","tasks","indexOf",[[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],0],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],["return","true"]]]],"false"]],["set.","debug",["`","breakDelete"],["function","breakDelete",["bpid","false","tasks"],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["return","false"]]],["=","tasks",["breakTasks",[".",["deref",[".","debug","breakpoints"],"bpid"],"procdef"],[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],"true"]],["set.","debug",["`","breakAble"],["function","breakAble",["bpid","enabled","false","bpdict"],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[["identity","enable"],["set.","bpdict",["`","enable"],"true"]],["set.","bpdict",["`","enable"],"false"]]],["set.","debug",["`","breakGlobalAble"],["function","breakGlobalAble",["enable"],[[["identity","enable"],["set.","debug",["`","bpenable"],"true"]],["set.","debug",["`","bpenable"],"false"]],["breakpoint",[".","debug","bpenable"]]]],"debug"]),e._SetBindingList("debugger",["function","debugger",["pause"],[".",["DebugController"],"start",["pause"]]]),e._SetBindingList("debugescape",["function","debugescape","false",[".",["DebugController"],"startEscape","false"]]),e._SetBindingList("debugexception",["function","debugexception","false",[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["return"]]],[[["==",["tostring","exception"],"$driver"],["return"]]],[[["==",["tostring","exception"],"$debugger"],["return"]]],[[["==",["tostring","exception"],"$DebuggerREPL"],["return"]]],[".",["DebugController"],"startException",["exception"]]]),e._SetBindingList("DebugController",["function","DebugController","false",[[["eq","ndbController",["`","ndbController"]],["=","ndbController",["debugCon"]]]],"ndbController"]),e._AddPropertyList("DebugInit",[["$.lingoInit","true"]]),e._SetBindingList("DebugInit",["function","DebugInit",["false","manifest"],["=","manifest",["`",["bt","debugCon","debugger","debugescape","debugexception","DebugController","DebugInit"]]],[".",[".","Naan","module"],"build",["$Util","$Debug",["function","lambda",["modobj","compobj"],["=","ndbController",["`","ndbController"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebugController"],"DebugController"],["set.",[".","modobj","exports"],["`","debugger"],"debugger"],["sudo",["moveproc","debugescape",["`","escape"]]],["sudo",["moveproc","debugexception",["`","exception"]]],["sudo",["set.",[".","Naan","debug"],["`","debugger"],"debugger"]]]]]]),e._Execute(["DebugInit"]),e._SetBindingList("NaanError",["closure","NaanError",["false","nerr"],["=","nerr",["new","object","this"]],["set.","nerr",["`","errorID"],"$Naan Error"],["set.","nerr",["`","debug"],"false"],["function","procname",["name","defns","false","parent","strname"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],[[["lambda","name"],["=","strname","$()"]],["=","strname",[".","name","tostring","false"]]],[["identity","parent"],[".",["procname","parent","defns"],"concat",["$.","strname"]]],[["!=",[".","name","namespace"],"defns"],[".",[".",[".","name","namespace"],"tostring"],"concat",["$::","strname"]]],"strname"],["function","trace",["exclude","defns","false","stack","frame","output"],["=","stack",["stacktrace"]],["=","output",{array:[]}],["loop","false",[["atom","stack"]],["=","frame",["pop","stack"]],[[["procedure","frame"],[["<=",["postadjust","exclude","-",1],0],[".","output","push",[["procname",[".",[".","frame",3],1],"defns"]]]]],[["==",[".","frame",0],["`","interrupt"]],[".","output","push",["$[interrupt]"]],["break"]]]],[".",[".","output","reverse","false"],"join",["$ / "]]],["set.","nerr",["`","createError"],["function","createError",["parts","ns","false","nanerr","part","lastparts","badarray"],["function","addToHistory",["item","false","hist","keylist","key","history"],[[["||",["not",[".","nanerr","history"]],["not",["array",[".","nanerr","history"]]]],["set.","nanerr",["`","history"],{array:[]}]]],["=","hist",{dictionary:{}}],["=","keylist",["keys","item"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$history"],["=","history",[".","item","history"]]],[["!=","key","$error"],["set[","hist","key",["deref","item","key"]]]]],[".",[".","nanerr","history"],"push",["hist"]],[".","history","forEach",[["function","lambda",["old"],["addToHistory","old"]]]]],["function","addErrorList",["errs","false","err","etrim","keylist","key","badness"],["loop","false",[["atom","errs"]],["=","err",["pop","errs"]],[[["==",[".","err","error"],[".","nerr","errorID"]],["=","etrim",{dictionary:{}}],["=","keylist",["keys","err"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["&&",["!=","key","$error"],["||",["!=","key","$stack"],["!=",["deref","err","key"],[".","nanerr","stack"]]],["||",["!=","key","$module"],["!=",["deref","err","key"],[".","nanerr","module"]]]],["set[","etrim","key",["deref","err","key"]]]]],[[["||",["not",[".","nanerr","errors"]],["not",["array",[".","nanerr","errors"]]]],["set.","nanerr",["`","errors"],{array:[]}]]],[".",[".","nanerr","errors"],"push",["etrim"]]],["=","badarray","true"]]]],["function","addDictionary",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],["set[","nanerr","key",["deref","dict","key"]]]],["function","addJSerror",["item","false","keylist","key","dkey"],["=","keylist",["keys","item"]],[[["not","keylist"],["=","keylist",["`",["$name","$message"]]]]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["deref","nanerr","key"],["=","dkey",[".","$_","concat",["key"]]]],["=","dkey","key"]],[[["&&",["deref","item","key"],["not",["deref","nanerr","dkey"]]],["set[","nanerr","dkey",["deref","item","key"]]]]]],["=","nanerr",{dictionary:{$error:[".","nerr","errorID"],$occurred:[".","Date","now","false"]}}],["loop","false",[["atom","parts"]],["=","part",["pop","parts"]],[[["xobject","part"],["addJSerror","part"]],[["dictionary","part"],[["==",[".","part","error"],[".","nerr","errorID"]],["addToHistory","part"]],["addDictionary","part"]],[["array","part"],["push","part","lastparts"]],[[".","nanerr","memo"],["set.","nanerr",["`","memo"],[".",[".","nanerr","memo"],"concat",["$ ",["tostring","part"]]]]],["set.","nanerr",["`","memo"],["tostring","part"]]]],["set.","nanerr",["`","stack"],["trace",3,"ns"]],["set.","nanerr",["`","module"],[".",["car",["exists","$module","ns"]],"id"]],["loop","false",[["atom","lastparts"]],["addErrorList",["pop","lastparts"]]],[[["not",[".","nanerr","memo"]],["debuglog","$NaanError.createError: no error memo at",[".","nanerr","stack"]]]],[[["identity","badarray"],["debuglog","$NaanError.createError: ignoring array argument"]]],[[[".","nerr","debug"],["call",["function","ErrorDebuglog","args",[".","nerr","debugError",["args"]]],"$new","nanerr"]]],"nanerr"]],["set.","nerr",["`","toString"],["function","toString",["nanerr","options","false","output","keylist","key","history"],["=","output","$"],["=","keylist",["keys","nanerr"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$error"]],[["==","key","$occurred"]],[["==","key","$memo"]],[["==","key","$stack"]],[["==","key","$history"],["=","history",[".","nanerr","history"]]],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["key","$=",["tostring",["deref","nanerr","key"]]]]]]],[[["identity","history"],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["$<<"]]],[".",[".","nanerr","history"],"forEach",[["function","lambda",["item","index"],[[["!=","index",0],["=","output",[".","output","concat",["$ | "]]]]],["=","output",[".","output","concat",[["toString","item",{dictionary:{$memo:"true"}}]]]]]]],["=","output",[".","output","concat",["$>>"]]]]],[["&&",[".","options","memo"],[".","nanerr","memo"]],[".",[".","nanerr","memo"],"concat",["$ ","output"]]],"output"]],["set.","nerr",["`","toDescription"],["function","toDescription",["nanerr"],[["!=",[".","nanerr","error"],[".","nerr","errorID"]],["tostring","nanerr"]],[[".","nanerr","memo"],["toString","nanerr",{dictionary:{$memo:"true"}}]],[".","$Error ","concat",[["toString","nanerr"]]]]],["set.","nerr",["`","debugError"],["function","debugError",["args","false","arg","text","nanerr","nanerrs"],["loop","false",[["atom","args"]],["=","arg",["pop","args"]],[[["&&",["dictionary","arg"],["==",[".","arg","error"],[".","nerr","errorID"]]],["=","nanerr","arg"]],[["array","arg"],["=","nanerrs","arg"]],["push","arg","text"]]],["=","text",["reverse","text"]],[[["identity","nanerr"],[[["identity","text"],["=","text",["append","text","$=>"]]],["=","text","$"]],["=","text",["append","text",[".","nerr","toDescription",["nanerr"]]]]],[["&&",["not","text"],"nanerrs"],["=","text",[".",[".",[".","nanerrs","length"],"tostring"],"concat",["$ errors:"]]]]],["apply","debuglog","text"],["loop","false",[["||",["not","nanerrs"],["==",[".","nanerrs","length"],0]]],["=","nanerr",[".","nanerrs","shift","false"]],["=","text",["append","$ ",[".","nerr","toDescription",["nanerr"]]]],["apply","debuglog","text"]]]],"nerr"]),e._SetBindingList("Error",["function","Error","parts",[".","naneErrorManager","createError",["parts",["nscaller"]]]]),e._SetBindingList("ErrorString",["function","ErrorString",["nanerr"],[".","naneErrorManager","toString",["nanerr","true"]]]),e._SetBindingList("ErrorDebuglog",["function","ErrorDebuglog","args",[".","naneErrorManager","debugError",["args"]]]),e._AddPropertyList("ErrorInit",[["$.lingoInit","true"]]),e._SetBindingList("ErrorInit",["function","ErrorInit",["false","manifest"],["=","manifest",["`",["NaanError","Error","ErrorString","ErrorDebuglog","ErrorInit"]]],[".",[".","Naan","module"],"build",["$Util","$Error",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Error"],"Error"],["set.",[".","modobj","exports"],["`","ErrorString"],"ErrorString"],["set.",[".","modobj","exports"],["`","ErrorDebuglog"],"ErrorDebuglog"],["set.",[".","Naan","module"],["`","Error"],"Error"],["set.",[".","Naan","module"],["`","ErrorObject"],"ErrorObject"],["set.",[".","Naan","module"],["`","ErrorString"],"ErrorString"],["set.",[".","Naan","module"],["`","ErrorDebuglog"],"ErrorDebuglog"]]]],["=","naneErrorManager",["NaanError"]]]),e._Execute(["ErrorInit"]),e._SetBindingList("MakeComponentJS",["function","MakeComponentJS",["fpath","false","pkg"],[["=","pkg",[".",[".","Naan","module"],"package",["fpath"]]],["pkgToJsSource","pkg"]]]),e._SetBindingList("MakePackage",["function","MakePackage",["pkgname","roots","prerequisites","omitlist"],["pkgSave","pkgname","roots","prerequisites","omitlist"]]),e._SetBindingList("makeSourceString",["function","makeSourceString",["item","false","text","result"],["=","text",["explode","item"]],["=","result",'$"'],[[["string","item"],["=","result",[".","result","concat",["$$"]]]],[["==",["tostring","item"],"$."]],[["or",["eq",["car","text"],"$$"],["eq",["car","text"],"$."],["eq",["car","text"],"$\\"]],["=","result",[".","result","concat",["$\\\\"]]]]],["loop","false",[["empty","text"]],[[["eq",["car","text"],'$"'],["=","result",[".","result","concat",['$\\"']]]],[["eq",["car","text"],"$\\"],["=","result",[".","result","concat",["$\\\\"]]]],[["eq",["car","text"],"$\t"],["=","result",[".","result","concat",["$\\t"]]]],[["eq",["car","text"],"$\n"],["=","result",[".","result","concat",["$\\n"]]]],[["eq",["car","text"],"$\r"],["=","result",[".","result","concat",["$\\r"]]]],[["eq",["car","text"],"$\b"],["=","result",[".","result","concat",["$\\b"]]]],[["eq",["car","text"],"$\f"],["=","result",[".","result","concat",["$\\f"]]]],[["eq",["car","text"],"$\v"],["=","result",[".","result","concat",["$\\u000b"]]]],[["eq",["car","text"],"$\0"],["=","result",[".","result","concat",["$\\u0000"]]]],["=","result",[".","result","concat",[["car","text"]]]]],["=","text",["cdr","text"]]],[".","result","concat",['$"']]]),e._SetBindingList("WritePackageJS",["function","WritePackageJS",["list","false","chan"],["function","writeList",["list","false","item","notfirst"],[[["not",["empty","list"]],[".","chan","print",["["]]]],["loop","false",[["empty","list"]],[[["identity","notfirst"],[".","chan","print",["comma","space"]]],["=","notfirst","true"]],["=","item",["pop","list"]],[[["or",["symbol","item"],["string","item"]],[".","chan","print",[["makeSourceString","item"]]]],[["integer","item"],[".","chan","print",["item"]]],[["float","item"],[".","chan","print",['$".',"item",'$"']]],[["or",["dictionary","item"],["array","item"]],[".","chan","print",[[".",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lingo"],"exports"],"Base"],"print",["item"]]]]],[".","chan","writeList",["item"]]]],[".","chan","print",[["`","]"]]]],["=","chan",["new","textstream","$","string"]],["writeList","list"],[".","chan","taketext","false"]]),e._SetBindingList("pkgSave",["function","pkgSave",["pkgname","roots","options","false","pkgns","goodns","registry","xlate","storenum","wmapSymbol","wmapUnintern","mapString","mapInteger","mapFloat","wmapArray","wmapDictionary","mapList","wmapProcedure","mapDialect","indexValue","listSymbol","listUnintern","listString","listInteger","listFloat","listArray","listDictionary","listList","listProcedure","listDialect","reported"],["function","store",["expr","false","key","exlist","dialect"],[["symbol","expr"],[[["&&","expr",["not",["interned","expr"]],["not",["member","expr","roots"]]],[[["deref","wmapUnintern","expr"]],["set[","wmapUnintern","expr",["preadjust","storenum","+",1]],["push","expr","listUnintern"],["set[","indexValue","storenum","expr"],"storenum"],["return"]]],[[["&&","expr",["not",["member",[".","expr","namespace"],"goodns"]]],["=","dialect",[".","registry","findNamespace",[[".","expr","namespace"]]]],[[["identity","dialect"],["=","key",["store",["list",[".","dialect","name"],[".","expr","tostring"]]]],[[["deref","mapDialect","key"]],["set[","mapDialect","key",["preadjust","storenum","+",1]],["push","key","listDialect"],["set[","indexValue","storenum","key"],"storenum"],["return"]]],[["defbinding","expr"],[["not",["eq",["defbinding","expr"],[".","expr","proc"]]],["printline","$pkgSave: cannot save non-default binding for well-known symbol ","expr"],["set[","reported","expr","true"]]],[["&&",["not",[".","options","nsignore"]],["not",["deref","reported","expr"]]],["printline","$pkgSave: cannot save ",[".","expr","namespace"],"$ from ","pkgns","$ for symbol ","expr"],["set[","reported","expr","true"]]]],[[["eq","expr","undefined"],["=","expr","$undefined"]]],[["deref","wmapSymbol","expr"]],["set[","wmapSymbol","expr",["preadjust","storenum","+",1]],["push","expr","listSymbol"],["set[","indexValue","storenum","expr"],"storenum"],[["string","expr"],[["deref","mapString","expr"]],["set[","mapString","expr",["preadjust","storenum","+",1]],["push","expr","listString"],["set[","indexValue","storenum","expr"],"storenum"],[["integer","expr"],["=","key",["tostring","expr"]],[["deref","mapInteger","key"]],["set[","mapInteger","key",["preadjust","storenum","+",1]],["push","key","listInteger"],[[["<","expr",[".","Number","$MAX_SAFE_INTEGER"]],["set[","indexValue","storenum","expr"]],["set[","indexValue","storenum","key"]],"storenum"],[["float","expr"],["=","key",["tostring","expr"]],[["deref","mapFloat","key"]],["set[","mapFloat","key",["preadjust","storenum","+",1]],["push","key","listFloat"],["set[","indexValue","storenum","expr"],"storenum"],[["array","expr"],[["deref","wmapArray","expr"]],["=","exlist","false"],["=","key",0],["loop","false",[[">=","key",[".","expr","length"]]],["push",["deref","expr",["postadjust","key","+",1]],"exlist"]],["=","key",["store",["reverse","exlist"]]],["set[","wmapArray","expr",["preadjust","storenum","+",1]],["push","expr","listArray"],["set[","indexValue","storenum","key"],"storenum"],[["dictionary","expr"],[["deref","wmapDictionary","expr"]],["=","key",["store",["objToList","expr"]]],["set[","wmapDictionary","expr",["preadjust","storenum","+",1]],["push","expr","listDictionary"],["set[","indexValue","storenum","key"],"storenum"],[["tuple","expr"],[["&&",["procedure","expr"],["eq",[".",[".","expr",1],"proc"],"expr"]],["storeProcedure","expr"]],["storeList","expr"]],[[["not",["deref","reported","expr"]],["printline","$pkgSave: cannot save type ",["typeof","expr"],"$ - ","expr"],["set[","reported","expr","true"]]],1],["function","storeList",["exlist","false","result","left","key"],["=","key",{array:[]}],["=","exlist",["reverse","exlist"]],["loop","false",[["empty","exlist"]],["=","left",["store",["pop","exlist"]]],["push","left","result"],[".","key","push",["left"]]],["=","key",[".","key","join",["$,"]]],[["deref","mapList","key"]],["set[","mapList","key",["preadjust","storenum","+",1]],["push","key","listList"],["set[","indexValue","storenum","result"],"storenum"],["function","storeProcedure",["procdef","false","key"],[[["builtin","procdef"],["return",["store",["tostring","procdef"]]]]],[["deref","wmapProcedure",[".","procdef",1]]],["=","key",["storeList","procdef"]],["set[","wmapProcedure",[".","procdef",1],["preadjust","storenum","+",1]],["push",[".","procdef",1],"listProcedure"],["set[","indexValue","storenum","key"],"storenum"],["function","objToList",["obj","false","keylist","trav","datlist"],["=","trav",["=","keylist",["xkeys","obj"]]],["loop","false",[["empty","trav"]],["push",["deref","obj",["pop","trav"]],"datlist"]],["list","keylist",["reverse","datlist"]]],["function","saveSymbol",["sym","sites","false","proc","props"],["=","proc",["getproc","sym"]],["=","props",["cdr","sym"]],[[["dictionary","props"],["=","props",["new","props"]],["set.","props",["`","\\.children"],"undefined"],["set.","props",["`","\\.parent"],"undefined"],[[["not",[".","options","comments"]],["set.","props",["`","\\.sourcemap"],"undefined"]],["set.",[".","props","\\.sourcemap"],["`","map"],"undefined"]],[["==",["length","props"],0],["=","props","false"]]]],["list",["store","sym"],["store",["car","sym"]],["store","props"],["storeProcedure","proc"],["store","sites"]]],["function","makeXlate",["false","rdex"],["function","buildXlate",["typeList","typeMap"],["=","typeList",["reverse","typeList"]],["loop","false",[["empty","typeList"]],["set[","xlate",["deref","typeMap",["pop","typeList"]],["postadjust","rdex","+",1]]]],["=","rdex",0],["=","xlate",["new","dictionary"]],["buildXlate","listSymbol","wmapSymbol"],["buildXlate","listUnintern","wmapUnintern"],["buildXlate","listString","mapString"],["buildXlate","listInteger","mapInteger"],["buildXlate","listFloat","mapFloat"],["buildXlate","listArray","wmapArray"],["buildXlate","listDictionary","wmapDictionary"],["buildXlate","listList","mapList"],["buildXlate","listProcedure","wmapProcedure"],["buildXlate","listDialect","mapDialect"],"rdex"],["function","renumber",["exlist","false","output"],[["integer","exlist"],["deref","xlate","exlist"]],[["atom","exlist"],"false"],["=","exlist",["reverse","exlist"]],["while","false",[["not",["tuple","exlist"]]],["push",["renumber",["pop","exlist"]],"output"]],"output"],["function","saveMaps",["false","count","maps"],["function","makeAtom",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["deref","indexValue",["deref","typeMap",["pop","typeList"]]],"result"],["preadjust","count","+",1]],"result"],["function","makeList",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["renumber",["deref","indexValue",["deref","typeMap",["pop","typeList"]]]],"result"],["preadjust","count","+",1]],"result"],["=","count",0],["=","maps",["list",["makeAtom","listSymbol","wmapSymbol"],["makeAtom","listUnintern","wmapUnintern"],["makeAtom","listString","mapString"],["makeAtom","listInteger","mapInteger"],["makeAtom","listFloat","mapFloat"],["makeList","listArray","wmapArray"],["makeList","listDictionary","wmapDictionary"],["makeList","listList","mapList"],["makeList","listProcedure","wmapProcedure"],["makeList","listDialect","mapDialect"]]],["cons","count","maps"]],["function","export",["symbols","false","sym","problist","trav","ptrav","plist","pitem","sitesym","symstates","sites"],["=","ptrav",["symlist",["namespace",["car","symbols"]]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["cdr","pitem"],["=","problist",["cons","pitem","problist"]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],[[["not",["symbol","sym"]],["throw",["list","$error","pkgSave",["strcat","$non-symbol specified: ","sym"]]]]],[[["and",["eq","pkgns",["namespace","sym"]],["not",["member","sym","omitlist"]]],["=","ptrav",["totuple",["cdr","sym"]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["and",["symbol",["cdr","pitem"]],["not",["member",["cdr","pitem"],"symbols"]]],["=","symbols",["cons",["cdr","pitem"],"symbols"]]]]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],["=","sites","false"],["=","ptrav","problist"],["loop","false",[["empty","ptrav"]],["=","sitesym",["pop","ptrav"]],["=","plist",["totuple",["cdr","sitesym"]]],["loop","false",[["empty","plist"]],["=","pitem",["pop","plist"]],[[["or",["eq",["car","pitem"],"sym"],["eq",["cdr","pitem"],"sym"]],["push",["list","sitesym",["car","pitem"],["cdr","pitem"]],"sites"]]]]],["push",["saveSymbol","sym","sites"],"symstates"]],["reverse","symstates"]],["call",["function","lambda",["false","header","rootnum","syms","ops"],[[["not","options"],["=","options",{dictionary:{$comments:"true"}}]]],["=","reported",["new","weakmap"]],["=","storenum",0],["=","wmapSymbol",["new","weakmap"]],["=","wmapUnintern",["new","weakmap"]],["=","mapString",["new","dictionary"]],["=","mapInteger",["new","dictionary"]],["=","mapFloat",["new","dictionary"]],["=","wmapArray",["new","weakmap"]],["=","wmapDictionary",["new","weakmap"]],["=","mapList",["new","dictionary"]],["=","wmapProcedure",["new","weakmap"]],["=","mapDialect",["new","dictionary"]],["=","indexValue",["new","dictionary"]],[["not","pkgname"],"false"],[["not",["symbol","pkgname"]],["throw",["list","$error","pkgSave",["strcat","$package name not a symbol: ","pkgname"]]]],[["atom","roots"],["throw",["list","$error","pkgSave",["strcat","$no roots specified: ","roots"]]]],["=","pkgns",["namespace","pkgname"]],["=","goodns",["list","pkgns",[".",["nsactive","true"],1]]],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["store","false"],["=","rootnum",["store","roots"]],["=","syms",["export","roots"]],["makeXlate"],["=","header",["list","$NaanPackage",1,1,"pkgname",[".","options","prereqs"]]],["list","header",["saveMaps"],["renumber","rootnum"],["renumber","syms"]]]]]),e._SetBindingList("pkgDecode",["function","pkgDecode",["pkg","intern","false","registry","maxdepth","mapSymbol","mapUnintern","mapString","mapInteger","mapFloat","mapDictionary","mapArray","mapList","mapProcedure","mapDialect","cache"],["function","lookupArray",["key","depth","false","exlist","adex","result"],["=","exlist",["lookup",["deref","mapArray","key"],"depth"]],["=","result",["new","array"]],["=","adex",0],["loop","false",[["empty","exlist"]],["set[","result",["postadjust","adex","+",1],["pop","exlist"]]],"result"],["function","lookupDictionary",["key","depth","false","exlist","keylist","datalist","result"],["=","exlist",["lookup",["deref","mapDictionary","key"],"depth"]],["=","result",["new","dictionary"]],["=","keylist",[".","exlist",0]],["=","datalist",[".","exlist",1]],["loop","false",[["empty","keylist"]],["set[","result",["pop","keylist"],["pop","datalist"]]],"result"],["function","lookupList",["key","depth","false","exlist","result"],["=","exlist",["deref","mapList","key"]],["loop","false",[["empty","exlist"]],["=","result",["cons",["lookup",["pop","exlist"],"depth"],"result"]]],["reverse","result"]],["function","lookupProcedure",["key","depth","false","procdef"],["=","procdef",["lookup",["deref","mapProcedure","key"],"depth"]],[["procedure","procdef"],["=","procdef",["enclose","procdef"]]],[["string","procdef"],["=","procdef","procdef"]]],["function","lookupDialect",["key","depth","false","pair","dialect"],["=","pair",["lookup",["deref","mapDialect","key"],"depth"]],["=","dialect",[".","registry","findName",[[".","pair",0]]]],[[["not","dialect"],["throw",[".","$pkgDecode: unregistered dialect: ","concat",[[".","pair",0]]]]]],["deref",[".",[".","dialect","ns"],"symbols"],["deref",[".",[".","dialect","ns"],"index"],[".","pair",1]]]],["function","lookup",["expr","depth","false","key","sexpr","result","cachekey"],[[["not","expr"],["return","expr"]]],["=","cachekey","expr"],[[["&&",["integer","cachekey"],["defined","cache","cachekey"]],["return",["deref","cache","cachekey"]]]],[[["not","depth"],["=","depth",1]]],["=","key","expr"],["=","result",["loop","false",[[[">","depth","maxdepth"],["throw",[".","$pkgDecode: cycle corruption: ","concat",["expr"]]]]],[["not",["atom","expr"]],["loop","false",[["empty","expr"]],["=","result",["cons",["lookup",["pop","expr"],["+","depth",1]],"result"]]],["reverse","result"]],[["not",["integer","expr"]],["throw",[".","$pkgDecode: can't lookup: ","concat",["expr"]]],"false"],[[["<","key",[".","mapSymbol","length"]],["=","sexpr",["deref","mapSymbol","key"]],[[["==","sexpr","$undefined"],"undefined"],[["==","sexpr","$null"],"null"],[["||","intern",["==","key",0],["interned","sexpr"]],["compress","sexpr"]],["unintern","sexpr"]],["break"]]],["preadjust","key","-",[".","mapSymbol","length"]],[["<","key",[".","mapUnintern","length"]],["unintern",["deref","mapUnintern","key"]]],["preadjust","key","-",[".","mapUnintern","length"]],[["<","key",[".","mapString","length"]],["deref","mapString","key"]],["preadjust","key","-",[".","mapString","length"]],[["<","key",[".","mapInteger","length"]],["deref","mapInteger","key"]],["preadjust","key","-",[".","mapInteger","length"]],[["<","key",[".","mapFloat","length"]],["deref","mapFloat","key"]],["preadjust","key","-",[".","mapFloat","length"]],[["<","key",[".","mapArray","length"]],["lookupArray","key",["+","depth",1]]],["preadjust","key","-",[".","mapArray","length"]],[["<","key",[".","mapDictionary","length"]],["lookupDictionary","key",["+","depth",1]]],["preadjust","key","-",[".","mapDictionary","length"]],[["<","key",[".","mapList","length"]],["lookupList","key",["+","depth",1]]],["preadjust","key","-",[".","mapList","length"]],[["<","key",[".","mapProcedure","length"]],["lookupProcedure","key",["+","depth",1]]],["preadjust","key","-",[".","mapProcedure","length"]],[["<","key",[".","mapDialect","length"]],["lookupDialect","key",["+","depth",1]]],["throw",[".","$pkgDecode: invalid refnum: ","concat",["expr"]]],[["identity","true"]]]],[["integer","cachekey"],["set[","cache","cachekey","result"]],"result"],["function","recurList",["expr","false","adex","result"],[["||",["array","expr"],["xobject","expr"]],["=","adex",[".","expr","length"]],["loop","false",[["<",["preadjust","adex","-",1],0]],["push",["recurList",["deref","expr","adex"]],"result"]],"result"],"expr"],["call",["function","lambda",["false","pkgname","firstVer","lastVer"],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["=","firstVer",1],["=","lastVer",1],[[["and",["atom","pkg"],["not",["=","pkg",["recurList","pkg"]]]],["return","$invalid package argument"]]],["=","pkgname",[".",[".","pkg",0],3]],[[["or",["atom","pkg"],["!=",[".",[".","pkg",0],0],"$NaanPackage"],["not","pkgname"],["not",["name","pkgname"]]],["return","$package not recognized"]]],[[["or",[">",[".",[".","pkg",0],1],"lastVer"],["<",[".",[".","pkg",0],2],"firstVer"],["<=",[".",[".","pkg",1],0],0],["<=",["length",[".",[".","pkg",1],1]],0]],["return",[".","$package version not supported: ","concat",[[".",[".","pkg",0],1],"$-",[".",[".","pkg",0],2]]]]]],["=","maxdepth",[".",[".","pkg",1],0]],["=","mapSymbol",["new","array",[".",[".","pkg",1],1]]],["=","mapUnintern",["new","array",[".",[".","pkg",1],2]]],["=","mapString",["new","array",[".",[".","pkg",1],3]]],["=","mapInteger",["new","array",[".",[".","pkg",1],4]]],["=","mapFloat",["new","array",[".",[".","pkg",1],5]]],["=","mapArray",["new","array",[".",[".","pkg",1],6]]],["=","mapDictionary",["new","array",[".",[".","pkg",1],7]]],["=","mapList",["new","array",[".",[".","pkg",1],8]]],["=","mapProcedure",["new","array",[".",[".","pkg",1],9]]],["=","mapDialect",["new","array",[".",[".","pkg",1],10]]],["=","cache",{array:[]}],["catch",[["cons",["list","pkgname",["lookup",[".",[".","pkg",0],4]],["lookup",[".",[".","pkg",0],5]],["lookup",[".","pkg",2]]],["lookup",[".","pkg",3]]]],[[["string","exception"],"exception"]],"false"]]]]),e._SetBindingList("pkgExamine",["function","pkgExamine",["pkg","false","exlist","header","state"],["function","printProps",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["member","key",["`",["$.sourcemap","$.children","$.parent"]]],["printline","$ ","key"]],["printline","$ ","key","$, ",["xget","dict","key"]]]]],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["printline",[".","$pkgExamine error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["newline"],["printline","$=================================================="],["printline","$ package: ",[".","header",0]],["printline","$ version: ",[".","header",1]],["printline","$ prereqs: ",[".","header",2]],["printline","$root symbols: ",[".","header",3]],["printline","$ states: ",["length","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],["printline","$=================================================="],["printline","$ name: ",[".","state",0]],["printline","$--------------------------------------------------"],["printline","$ val: ",[".","state",1]],[[["dictionary",[".","state",2]],["printline","$ prop:"],["printProps",[".","state",2]]],["printline","$ prop: ",[".","state",2]]],["printline","$ sites: ",[".","state",4]],[["atom",[".","state",3]],["printline","$ proc: ",[".","state",3]]],["printline","$ proc: "],["printline",[".",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lingo"],"exports"],"Base"],"print",[[".","state",3]]]]]],["printline","$=================================================="],[".","header",0]]),e._SetBindingList("pkgLoad",["function","pkgLoad",["pkg","options","false","exlist","header","roots","state","sym","sitelist","site","proc"],[[["not","options"],["=","options",{dictionary:{$localroots:"true",$intern:"true",$execute:"true"}}]]],["=","exlist",["pkgDecode","pkg",[".","options","intern"]]],[[["atom","exlist"],["printline",[".","$pkgLoad error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],[[[".","options","intern"],["=","sym",["compress",[".","state",0]]],[["not",["eq",[".","sym","namespace"],[".",["nsactive"],0]]],[[".","options","localroots"],["=","sym",["car",["letlocal","sym"]]]],["printline","$cannot overwrite symbol ","sym","$ in ",[".","sym","namespace"]],["continue"]]],["=","sym",["unintern",[".","state",0]]]],["push","sym","roots"],["assign","sym",[".","state",1]],["=","proc",[".","state",3]],["putproc","sym","proc"],["replacer","sym",[".","state",2]],[[[".","proc",1],["copyann",[".","proc",1],"sym"]]],["=","sitelist",[".","state",4]],["loop","false",[["empty","sitelist"]],["=","site",["pop","sitelist"]],["put",[".","site",0],[".","site",1],[".","site",2]]],[["&&",[".","options","execute"],[".","state",3],["get","sym","$.lingoInit"]],["call","sym"]]]],["reverse","roots"]]),e._SetBindingList("pkgToJsSource",["function","pkgToJsSource",["pkg","false","output","indent","atnl"],["=","output","$"],["=","indent",0],["=","atnl","true"],["function","indent",["adj"],["preadjust","indent","+","adj"]],["function","newline","false",["=","atnl","true"],["=","output",[".","output","concat",["cr"]]]],["function","write","strings",["call",["function","lambda",["false","cnt","str"],["while","false",[["not",["not",["empty","strings"]]]],[[["identity","atnl"],["=","atnl","false"],["=","cnt","indent"],["while","false",[["not",[">",["postadjust","cnt","-",1],0]]],["=","output",[".","output","concat",["$ "]]]]]],["=","str",["pop","strings"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","atnl","true"]]],["=","output",[".","output","concat",["str"]]]]]],"output"],["function","writeline","strings",["apply","write","strings"],["newline"]],["function","atomString",["expr","false","vertical"],[["||",["symbol","expr"],["string","expr"]],["makeSourceString","expr"]],[["float","expr"],[".",'$".',"concat",["expr",'$"']]],[["integer","expr"],"expr"],[["array","expr"],["arrayString","expr","vertical"]],[["dictionary","expr"],["dictionaryString","expr","vertical"]],["printline","$pkgToJsSource: unsupported atom: ","expr"],"$false"],["function","arrayString",["arr","false","adex","expr","separator","result"],["=","result","${array:["],["=","adex",0],["loop","false",[[">=","adex",[".","arr","length"]]],["=","expr",["deref","arr",["postadjust","adex","+",1]]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["exprString","expr"]]]]],["=","result",[".","result","concat",["separator",["exprString","expr"]]]]]],[".","result","concat",["$]}"]]],["function","dictionaryString",["obj","false","keylist","key","separator","result"],[[["cdr","obj"],["=","result",[".","${tag:","concat",[["atomString",["cdr","obj"]],"$,dictionary:{"]]]],["=","result","${dictionary:{"]],["=","keylist",["keys","obj"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]],["=","result",[".","result","concat",["separator",["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]]],[".","result","concat",["$}}"]]],["function","openListString",["exlist","false","expr","comma","result"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["=","comma","$"],["=","result","$"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],["=","result",[".","result","concat",["comma",["exprString","expr"]]]],["=","comma","$, "]],"result"],["function","paramListString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["exprString","exlist"]],["function","exprString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],[".","$[","concat",[["openListString","exlist"],"$]"]]],["function","procsym",["sym"],["=","sym",["tostring","sym"]],["return",["||",["==","sym","$function"],["==","sym","$function&"],["==","sym","$macro"],["==","sym","$closure"],["==","sym","$let"],["==","sym","$let&"]]]],["function","writeCall",["exlist","more","false","opstr"],[[["atom","exlist"],["write",["atomString","exlist"]],["return"]]],["=","opstr",["tostring",["car","exlist"]]],[[["procsym",["car","exlist"]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$, ",["paramListString",["third","exlist"]],"$,"],["indent",1],["writeBody",["cdddr","exlist"]],["indent",-1],["write","$]"]],[["||",["==","opstr","$loop"],["==",[".",["car","exlist"],"proc"],[".",["`","loop"],"proc"]]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$,"],["indent",1],["writeBody",["cddr","exlist"]],["indent",-1],["write","$]"]],[["==","opstr","$call"],["writeline","$[",["atomString",["car","exlist"]],"$,"],["indent",1],[[["cddr","exlist"],["writeCall",["second","exlist"],"$,"],["indent",-1],["newline"],["write",["openListString",["cddr","exlist"]]]],["writeCall",["second","exlist"],"$"],["indent",-1]],["write","$]"]],[["==","opstr","$catch"],["writeline","$[",["atomString",["pop","exlist"]],"$,"],["indent",1],[[["car","exlist"],["write","$["],["indent",1],["writeBody",["car","exlist"],"$"],["indent",-1],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["second","exlist"],["write","$["],["writeBody",["second","exlist"],"$"],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["third","exlist"],["write","$["],["indent",1],["writeBody",["third","exlist"],"$"],["indent",-1],["write","$]"]],["write",["atomString","false"]]],["indent",-1],["write","$]"]],[["||",["==","opstr","$quote"],["==","opstr","$`"]],["write",["exprString","exlist"]]],["write",[".","$[","concat",[["openListString","exlist"],"$]"]]]],["write","more"]],["function","writeBody",["exlist","false","expr","more"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],[[["empty","exlist"],["=","more","$"]],["=","more","$,\n"]],[[["atom","expr"],["write",["atomString","expr"],"more"]],[["atom",["car","expr"]],["writeCall","expr","more"]],[["atom",["caar","expr"]],[["cdr","expr"],["write","$["],["writeCall",["car","expr"],"$,\n"],["indent",1],["writeBody",["cdr","expr"]],["indent",-1],["write","$]","more"]],["write","$[",["exprString",["car","expr"]],"$]","more"]],["writeline","$["],["indent",1],["writeBody",["list",["car","expr"]]],[[["cdr","expr"],["writeline","$,"],["writeBody",["cdr","expr"]]]],["indent",-1],["write","$]","more"]]]],["function","writeProc",["sym","proc"],["writeline","$ninti._SetBindingList(",["atomString","sym"],"$,"],["indent",1],[[["string","proc"],["writeline","proc"]],["writeline","$[",["atomString",["car","proc"]],"$, ",["atomString",["second","proc"]],"$, ",["paramListString",["third","proc"]],"$,"],["indent",1],["writeBody",["cdddr","proc"]],["indent",-1],["writeline","$]"]],["indent",-1],["writeline","$);"]],["function","writeProps",["sym","props","false","prop","preceded","header"],[[["atom","props"],["return"]]],["=","preceded","$"],["while","false",[["not",["not",["empty","props"]]]],["=","prop",["pop","props"]],[[["==",["tostring",["car","prop"]],"$.sourcemap"],["continue"]]],[[["==",["tostring",["car","prop"]],"$.children"],["continue"]]],[[["not","header"],["=","header","true"],["writeline","$ninti._AddPropertyList(",["atomString","sym"],"$,"],["indent",1],["write","$["]]],["write","preceded","$[",["atomString",["car","prop"]],"$, ",["exprString",["cdr","prop"]],"$]"],["=","preceded","$,\n"]],[[["not","header"],["return"]]],["write","$]"],["indent",-1],["newline"],["writeline","$);"]],["function","writeValue",["sym","value"],["writeline","$ninti._SetValue(",["atomString","sym"],"$, ",["exprString","value"],"$);"]],["call",["function","lambda",["false","exlist","header","state","sym","proc"],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["printline",[".","$pkgToJsSource:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["indent",1],["writeline","$/*"],["writeline","$ * ",[".",[".","pkg",0],3]],["writeline","$ *"],["writeline","$ */"],["newline"],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],[[["!=",[".","state",1],[".","state",0]],["writeValue",[".","state",0],[".","state",1]]]],[[[".","state",2],["writeProps",[".","state",0],["totuple",[".","state",2]]]]],["=","proc",[".","state",3]],[[["tuple","proc"],["writeProc",[".","state",0],"proc"]]],[["||",[".","state",2],["tuple","proc"]],["newline"]]]],["indent",-1],"output"]]]),e._AddPropertyList("PackagerInit",[["$.lingoInit","true"]]),e._SetBindingList("PackagerInit",["function","PackagerInit",["false","manifest"],["=","manifest",["`",["MakeComponentJS","MakePackage","makeSourceString","WritePackageJS","pkgSave","pkgDecode","pkgExamine","pkgLoad","pkgToJsSource","PackagerInit"]]],[".",[".","Naan","module"],"build",["$Util","$Packager",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","MakeComponentJS"],"MakeComponentJS"],["set.",[".","modobj","exports"],["`","WritePackageJS"],"WritePackageJS"],["set.",[".","modobj","exports"],["`","pkgSave"],"pkgSave"],["set.",[".","modobj","exports"],["`","pkgExamine"],"pkgExamine"],["set.",[".","modobj","exports"],["`","pkgLoad"],"pkgLoad"],["set.",[".","modobj","exports"],["`","pkgToJsSource"],"pkgToJsSource"],["set.",[".","Naan","module"],["`","MakeComponentJS"],"MakeComponentJS"]]]]]),e._Execute(["PackagerInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
43
+ !function(e){e.BootModule=function(e){"use strict";var t=e._SetNamespace("Util");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("times","*"),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("+=",["macro","+=",["ex1","ex2"],["assign","ex1",["+",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("-=",["macro","-=",["ex1","ex2"],["assign","ex1",["-",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("*=",["macro","*=",["ex1","ex2"],["assign","ex1",["*",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("/=",["macro","/=",["ex1","ex2"],["assign","ex1",["/",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("Component",["closure","Component",["modobj","name","filename","false","compobj"],["=","compobj",["new","object","this"]],["set.","compobj",["`","module"],"modobj"],["set.","compobj",["`","name"],"name"],["set.","compobj",["`","filename"],"filename"],["set.","compobj",["`","modsym"],[".","modobj","modsym"]],["set.","compobj",["`","manifest"],"false"],["set.","compobj",["`","loaded"],"false"],["set.","compobj",["`","package"],["function","package",["false","pkg","curactns","returner"],[".",[".","Naan","module"],"require",["$Util/Packager.nlg"]],[[["not",[".",[".","module","exports"],"pkgSave"]],["return","false"]]],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["catch",[[".","modobj","activate","false"],["=","pkg",["pkgSave",["compress",[".","compobj","name"]],[".","compobj","manifest"]]]],[[["identity","true"],["ErrorDebuglog","$package exception: ","exception"],["return","false"]]],[["returner"]]],"pkg"]],["set.","compobj",["`","jspackage"],["function","jspackage",["false","pkg"],["=","pkg",["package"]],[[["not","pkg"],["return","false"]]],["pkgToJsSource","pkg"]]],["set.","compobj",["`","npackage"],["function","npackage",["false","pkg"],["=","pkg",["package"]],[["identity","pkg"],["JSONstringify","pkg"]]]],["set.","compobj",["`","save"],["function","save",["fpath","overwrite","false","text","pathobj","options"],["=","text",["jspackage"]],[[["not","text"],["return","false"]]],["=","fpath",[".","JSpath","normalize",["fpath"]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["==",["length",[".","pathobj","ext"]],0],["=","fpath",["strcat","fpath","$.json"]]]],["=","options",["xnew"]],[[["identity","overwrite"],["set.","options",["`","flags"],"$w"]],["set.","options",["`","flags"],"$wx"]],["=","fpath",[".","JSpath","join",[[".","js","d"],"fpath"]]],[".",[".","js","r",["$fs"]],"writeFileSync",["fpath","text","options"]],"fpath"]],"compobj"]),e._SetBindingList("Module",["closure","Module",["modules","modid","exns","false","modobj"],["=","modobj",["new","object","this"]],["set.","modobj",["`","owner"],"modules"],["set.","modobj",["`","id"],"modid"],["set.","modobj",["`","created"],[".","Date","now","false"]],["closure","makeActivator",["false","checkns","targns"],["=","checkns",["nsrights"]],["=","targns",["car",["nsactive"]]],["call",["enclose",["function","lambda","false",["function","returner","false",[["eq","checkns",[".",[".","Naan","local"],"nscaller","false"]],["nsactive",["cons","targns",["inherits"]]]]],"returner"],"targns"]]],["set.","modobj",["`","inherits"],["function","inherits",["false","result","nslist"],["=","nslist",[".","modobj","inherit"]],["loop","false",[["empty","nslist"]],["=","ns",["pop","nslist"]],[[["not",["member","ns","result"]],["push","ns","result"]]]],["push",["second",["nsactive","true"]],"result"],["reverse","result"]]],["set.","modobj",["`","makeComponent"],["function","lambda",["compname","filename","false","compobj"],["=","compobj",["Component","modobj","compname","filename"]],["set[",[".","modobj","components"],"compname","compobj"]]],["set.","modobj",["`","destroy"],["function","destroy","false",[".","modules","destroy",["modobj"]],"true"]],["call",["let","lambda",["false","mtuple"],["function","nsinit",["modobj","false","modsym"],["letlocal","$module"],["=","modsym",["compress","$module"]],["putproc","modsym",[".","modules","moduleProc"]],["assign","modsym","modobj"],["list",["car",["nsactive"]],["makeActivator"],"modsym"]],["function","registerns",["ns","modobj","false","curactns"],["=","curactns",["nsactive"]],["sudo",["nsactive",["cons","ns","curactns"]]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive","curactns"]],"ns"],["function","makens",["nsname","modobj","false","ns"],["=","ns",["new","namespace","nsname"]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive",["cdr",["nsactive"]]]],"ns"],["set.","modobj",["`","locpath"],"$"],["set.","modobj",["`","exports"],{dictionary:{}}],["set.","modobj",["`","children"],{array:[]}],["set.","modobj",["`","components"],{dictionary:{}}],[[["identity","exns"],["=","mtuple",["registerns","exns","modobj"]]],["=","mtuple",["makens","modid","modobj"]]],["set.","modobj",["`","namespace"],["car","mtuple"]],["set.","modobj",["`","activate"],["second","mtuple"]],["set.","modobj",["`","modsym"],["third","mtuple"]]]],"modobj"]),e._SetBindingList("Modules",["closure","Modules",["false","modules"],["=","modules",["new","object","this"]],["set.","modules",["`","list"],{dictionary:{}}],["set.","modules",["`","locations"],{dictionary:{}}],["function","reload",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"reload","false"]],[[["identity","true"]]],"false"]],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"postload","false"]],[[["identity","true"]]],"false"]]],["loadNotify","reload"],["set.","modules",["`","moduleProc"],["function","moduleProc",["modid"],[["not","modid"],["keys",[".","modules","list"]]],["deref",[".","modules","list"],"modid"]]],["set.","modules",["`","findModule"],["function","findModule",["ns","id","locpath","false","modobj","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"],"false"],["=","modobj",["xget",[".","modules","list"],["pop","mkeys"]]],[["&&",["||",["not","ns"],["eq",[".","modobj","namespace"],"ns"]],["||",["not","id"],["==",[".","modobj","id"],"id"]],["||",["not","locpath"],["==",[".","modobj","locpath"],"locpath"]]],"modobj"]]]],["set.","modules",["`","letinherit"],["function","letinherit",["modfrom","false","modto","curac","nsfrom","nsto"],["=","curac",["nsactive"]],[[["string","modfrom"],["=","modfrom",["findModule","false","modfrom"]]]],[["not","modfrom"],"false"],["=","modto",["findModule",["car","curac"]]],[[[".","modfrom","inherit"],["=","nsfrom",["cons",[".","modfrom","namespace"],[".","modfrom","inherit"]]]],["=","nsfrom",["list",[".","modfrom","namespace"]]]],[[["identity","modto"],[[[".","modto","inherit"],["set.","modto",["`","inherit"],["append","nsfrom",[".","modto","inherit"]]]],["set.","modto",["`","inherit"],"nsfrom"]],["=","nsto",[".","modto","inherits","false"]]],["=","nsto","nsfrom"]],["nsactive",["append",["car","curac"],"nsto",["cdr","curac"]]],["nsactive"]]],["set.","modules",["`","require"],["closure","require",["fpath","options","data","false","parent","pathobj","locpath","modname","modobj","compname","compath","compobj","presult","returner","extensions","pathext"],[[["&&","options",["not",["dictionary","options"]]],["throw",["Error",[".","$require(","concat",["fpath","$): invalid options"]]]]]],[[[".","options","parent"],["=","parent",["findModule",[".","options","parent"]]]],["=","parent",["findModule",["nscaller"]]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["||",["==",[".","pathobj","ext"],"$"],[".",["RegExp","$[/\\\\]$"],"test",["fpath"]]],["=","compath",[".","JSpath","join",["fpath",[".","pathobj","base"]]]],["=","pathobj",[".","JSpath","parse",["compath"]]]]],["=","locpath",[".","pathobj","dir"]],["=","modname",[".","JSpath","basename",["locpath"]]],[[[".","options","in"],["=","presult",["deref",[".","modules","locations"],[".","options","in"]]],[[["not","presult"],["throw",["Error",[".","$require(","concat",["fpath","$): in:",[".","options","in"],"$ undefined"]]]]]],["=","locpath",[".","JSpath","resolve",["presult","locpath"]]]],[["&&",["!=",[".","pathobj","ext"],"$"],["==","locpath","$"]],["=","locpath",[".","parent","locpath"]]],[[".",["RegExp","$^[.][.]?[/\\\\]"],"test",["fpath"]],["=","locpath",[".","JSpath","join",[[".","parent","locpath"],"locpath"]]]]],["set.","pathobj",["`","dir"],"locpath"],["=","compname",[".","pathobj","name"]],[[["&&","locpath",["!=","locpath","$"]],["=","modobj",["findModule","false","false","locpath"]]]],[[["not","modobj"],[["==","modname","$"],["=","modobj","parent"]],["=","modobj",["findModule","false","modname"]]]],[[["&&",["not",[".","options","read"]],["not",[".","options","reload"]],["deref",[".","modobj","components"],"compname"]],["return",[".","modobj","exports"]]]],["=","returner",["makeReturner"]],["catch",[["=","extensions",{array:["$nlg","$npk"]}],["loop","false",["=","pathext",[".","extensions","pop","false"]],[["not","pathext"]],["set.","pathobj",["`","ext"],[".","$.","concat",["pathext"]]],["set.","pathobj",["`","base"],[".",[".","pathobj","name"],"concat",[[".","pathobj","ext"]]]],["=","compath",[".","JSpath","format",["pathobj"]]],[[[".",[".",[".","js","w"],"location"],"href"],["=","presult",["modWebReadFile","compath",[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"href"]]]]]],["=","presult",["modNodeReadFile","compath"]]],[[[">",["length","presult"],0],[[[".","options","read"],["return","presult"]]],[[["not","modobj"],["=","modobj",["makeModule","modname"]],["set.","modobj",["`","locpath"],"locpath"]]],["=","compobj",[".","modobj","makeComponent",["compname",[".","pathobj","base"]]]],[".","modobj","activate","false"],["set.","modobj",["`","data"],"data"],["rdsDriver","presult","compath"],["set.","modobj",["`","data"],"undefined"],["returner"],["set.","compobj",["`","loaded"],"true"],["return",[".","modobj","exports"]]]]],["throw",["Error",[".","$require(","concat",["fpath","$): failed at ","compath"]]]],["set[",[".","modobj","components"],"compname","false"],"false"],[[["identity","true"],["ErrorDebuglog",[".","$require(","concat",["fpath","$): exception:"]],"exception"],["set[",[".","modobj","components"],"compname","false"],["returner"],["throw","exception"]]],"false"]]],["set.","modules",["`","defineLoc"],["function","defineLoc",["id","path"],[["not","id"],[".","modules","locations"]],["set[",[".","modules","locations"],"id","path"]]],["set.","modules",["`","build"],["closure","build","args",["call",["function","lambda",["modname","compname","proc","args","false","modobj","compobj","curactns","presult","returner"],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["=","modobj",["findModule","false","modname"]],[[["identity","modobj"]],[["==",["namespace",["car","curactns"]],"modname"],["=","modobj",["makeModule","modname",["car","curactns"]]]],["=","modobj",["makeModule","modname"]]],["=","compobj",["deref",[".","modobj","components"],"compname"]],[[["not","compobj"],["=","compobj",[".","modobj","makeComponent",["compname"]]]]],["catch",[[".","modobj","activate","false"],["set.","compobj",["`","loaded"],"false"],["=","presult",["apply","proc",["cons","modobj","compobj","args"]]],["returner"],[["not","presult"],"false"],["set.","compobj",["`","loaded"],"true"],[".","modobj","exports"]],[[["identity","true"],["ErrorDebuglog","$module build exception: ","exception"],["returner"],["throw","exception"]]],"false"]],["car","args"],["second","args"],["third","args"],["cdddr","args"]]]],["set.","modules",["`","changeModNS"],["function","changeModNS",["name","false","modobj"],["=","name",["tostring","name"]],["=","modobj",["findModule","false","name"]],[["not","modobj"],["printline","$can't find ","name","$ -- please select from ",["keys",[".","modules","list"]]],"false"],[".","modobj","activate","false"],[".","modobj","id"]]],["set.","modules",["`","makeModule"],["function","makeModule",["name","exns","false","modobj"],["=","modobj",["Module","modules","name","exns"]],["set[",[".","modules","list"],"name","modobj"],"modobj"]],["set.","modules",["`","destroy"],["function","destroy",["modobj"],["set[",[".","modules","list"],[".","modobj","id"],"undefined"],["delete",[".","modobj","namespace"]],"true"]],"modules"]),e._SetBindingList("modWebReadFile",["closure","modWebReadFile",["filename","href","false","complete","text"],["closure","clientRequest",["method","path","putdata","cbLoad","false","request","options"],["=","request",["xnew",[".",[".","js","w"],"XMLHttpRequest"]]],[".","request","addEventListener",["$load",["function","lambda",["event"],[["identity","cbLoad"],["cbLoad","request","event"]]]]],[".","request","addEventListener",["$error",["function","reqFailed",["event"],["debuglog","$client request failed: ","event"]]]],[".","request","open",["method","path"]],[".","request","send",["putdata"]]],["function","readFile",["false","url"],[[["not",[".","href","endsWith",["$/"]]],["=","href",[".","href","concat",["$/"]]]]],[[[".","filename","startsWith",["$/"]],["=","filename",[".","filename","slice",[0,-1]]]]],["=","url",[".","href","concat",["filename"]]],["clientRequest","$GET","url","false",["function","lambda",["req","evt"],[[["==",[".","req","status"],200],["=","text",[".","req","responseText"]]]],[".","complete","signal",["true"]]]]],["=","complete",["new","nonce"]],["readFile","filename"],[".","complete","wait","false"],"text"]),e._SetBindingList("modWebParseFile",["closure","modWebParseFile",["filename","href","false","text"],["=","text",["modWebReadFile","filename","href"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modNodeReadFile",["closure","modNodeReadFile",["filename","false","jspath","fs","locpath"],["=","jspath","JSpath"],["=","fs",[".","js","r",["$fs"]]],["=","locpath",[".","jspath","resolve",[[".","js","d"],"filename"]]],[[".","fs","existsSync",["locpath"]],[".","fs","readFileSync",["locpath","$utf8"]]],[[".","fs","existsSync",[["=","locpath",[".","jspath","resolve",[[".","js","d"],"$../","filename"]]]]],[".","fs","readFileSync",["locpath","$utf8"]]]]),e._SetBindingList("modNodeParseFile",["closure","modNodeParseFile",["filename","false","text"],["=","text",["modNodeReadFile","filename"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modDriver",["closure","modDriver",["text","sourcename","false","package","dialob","errors","source","error","expr"],[[[".","text","startsWith",['$[["NaanPackage"']],["catch",[[[".",[".","js","w"],"JSON"],["=","package",[".",[".",[".","js","w"],"JSON"],"parse",["text"]]]],["=","package",[".",[".",[".","js","g"],"JSON"],"parse",["text"]]]],[[["ErrorDebuglog"]],[["$require("]],[["sourcename"]],[["$) package failed: "]],[["exception"]],[["throw"]],[["exception"]]],"false"],[[["identity","package"],["pkgLoad","package"]],["printline","$require(","sourcename","$): package load failed"],"false"],["return"]]],["=","text",[".","text","replace",[["RegExp","$[\\r\\n^]+/(dialect)\\s+(\\w+)(?=[\\r\\n$])","$g"],["function","lambda",["match","cmd","arg","offset","str"],[[["==","cmd","$dialect"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["arg"]]],[["not","dialob"],["debuglog",[".","$require(","concat",["sourcename","$): dialect ","arg","$ not found"]]]]],["debuglog",[".","$require(","concat",["sourcename","$): /","cmd","$ not understood"]]]],[".","$\n","repeat",[["-",[".",[".","match","split",["$\n"]],"length"],1]]]]]]],[[["not","dialob"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],[["not","dialob"],["throw","$dialect support not available"]]]],["catch",[["=","errors",{array:[]}],["=","source",["new","textstream","text"]],["loop","false",["=",["error","expr"],[".","dialob","parse",["source"]]],[[["identity","expr"],["\\$",["evalactive","expr"]]],["=","errors",[".","errors","concat",["error"]]]]]],[[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["identity","true"],["ErrorDebugLog","$require(","sourcename","$) failed: ","exception"],["throw","exception"]]],"false"],[["==",[".","errors","length"],0],"true"],["printline","$Errors from require(","sourcename","$):"],["=","errors",[".","errors","reverse","false"]],["loop","false",[["==",[".","errors","length"],0]],["printline",[".","dialob","parseErrorString",[[".","errors","pop","false"]]]]],"false"]),e._SetBindingList("letlocal",["macro","letlocal","names",["call",["function","lambda",["false","localname","curac","syms"],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["loop","false",[["atom","names"]],["=","localname",["pop","names"]],["=","syms",["cons",["compress","localname"],"syms"]]],["nsactive","curac"],["reverse","syms"]]]]),e._SetBindingList("letimport",["function","letimport","names",["call",["function","lambda",["false","item","exlist","category","count"],["function","import1",["source","localname","false","curac","sym"],[["not","source"],["debuglog","$letimport: source undefined:","source"]],[["not",["deref",[".",[".",["nsactive","true"],1],"index"],"localname"]],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["=","sym",["compress","localname"]],["nsactive","curac"],[[["getproc","source"],["copyproc","sym","source"]],[["||",["procedure","source"],["xobject","source"]],["assign","sym","source"]],["debuglog","$letimport: no procedure binding:","source"],["return"]],["=","count",["+","count",1]]]],["function","importCat",["category","false","item","exlist","source"],[["not",["dictionary","category"]],["debuglog","$letimport: invalid category:","category"]],["=","exlist",["keys","category"]],["loop","false",[["empty","exlist"]],["=","item",["pop","exlist"]],["=","source",["xget","category","item"]],[[["||",["symbol","source"],["tuple","source"],["xobject","source"]],["import1","source",["tostring",["unintern","item"]]]],[["dictionary","source"],["importCat","source"]],["debuglog","$letimport: invalid category entry:",["keys","category"],"item"]]]],["=","count",0],["loop","false",[["empty","names"]],["=","item",["pop","names"]],[[["not",["atom","item"]],[["and",["==",["length","item"],2],["atom",["car","item"]],["string",["second","item"]]],["import1",["car","item"],["second","item"]]],["debuglog","$letimport: invalid pair:","item"],"false"],[["getproc","item"],["import1","item",["tostring",["unintern","item"]]]],[["dictionary","item"],["importCat","item"]],["debuglog","$letimport: invalid source:","item"]]],"count"]]]),e._SetBindingList("makeExport",["function","makeExport",["syms","false","result","sym"],["=","result",["new","dictionary"]],["loop","false",[["empty","syms"]],["=","sym",["pop","syms"]],["xset","result","sym","sym"]],"result"]),e._SetBindingList("makeReturner",["closure","makeReturner",["nslist","false","checkns","targns"],["=","checkns",["nsrights"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]]],"targns"]]),e._SetBindingList("loadNotify",["function","loadNotify",["recipient"],[[["not",["member","recipient","notifyList"]],["push","recipient","notifyList"]]],"true"]),e._SetBindingList("loadTrap",["function","loadTrap",["false","trav","tell"],["=","tell",[".","notifyList","reverse"]],["while","false",[["not",["tuple","tell"]]],["=","trav",["pop","tell"]],["call","trav"]]]),e._SetBindingList("jsReload",["function","jsReload",["false","wsg"],["=","wsg",["||",[".","js","w"],[".","js","s"],[".","js","g"]]],["=","JSpath",[".","js","r",["$path"]]],["=","JSONstringify",[".",[".","wsg","JSON"],"stringify"]],["=","JSONparse",[".",[".","wsg","JSON"],"parse"]]]),e._SetValue("NaanBuildComponent",{dictionary:{$filename:"$Module.nlg",$name:"$Module",$manifest:["Component","Module","Modules","modWebReadFile","modWebParseFile","modNodeReadFile","modNodeParseFile","modDriver","letlocal","letimport","makeExport","makeReturner","loadNotify","loadTrap","jsReload","NaanBuildComponent","ModuleInit"]}}),e._SetBindingList("ModuleInit",["closure","ModuleInit",["false","modules","naanMod","utilMod"],["function","findNS",["nsid","false","allns","nsns"],["=","allns",["nsactive","true"]],["loop","false",[["empty","allns"]],["=","nsns",["pop","allns"]],[["==",["namespace","nsns"],"nsid"],"nsns"]]],["function","modlist","false",[".","modules","list"]],["jsReload"],["loadNotify","jsReload"],["=","modules",["Modules"]],["=","naanMod",[".","modules","makeModule",["$Naan","false",["findNS","$NaanRoot"]]]],["=","utilMod",[".","modules","makeModule",["$Util","naanMod",["nsrights"]]]],["set.",[".","utilMod","components"],["`","Module"],["Component","utilMod",[".","NaanBuildComponent","name"]]],["set.",[".",[".","utilMod","components"],"Module"],["`","loaded"],"true"],["set.",[".",[".","utilMod","components"],"Module"],["`","manifest"],[".","NaanBuildComponent","manifest"]],["set.",[".","Naan","module"],["`","require"],[".",[".","modules","require"],1]],["set.",[".","Naan","module"],["`","defineLoc"],[".",[".","modules","defineLoc"],1]],["set.",[".","Naan","module"],["`","build"],[".",[".","modules","build"],1]],["set.",[".","Naan","module"],["`","letinherit"],[".",[".","modules","letinherit"],1]],["set.",[".","Naan","module"],["`","chns"],[".",[".","modules","changeModNS"],1]],["set.",[".","Naan","module"],["`","letimport"],"letimport"],["set.",[".","Naan","module"],["`","export"],"makeExport"],["set.",[".","Naan","module"],["`","letlocal"],"letlocal"],["set.",[".","Naan","module"],["`","modlist"],"modlist"],["set.",[".","Naan","module"],["`","nodeparse"],"modNodeParseFile"],["set.",[".","Naan","module"],["`","webparse"],"modWebParseFile"],["=","LoadTrap","loadTrap"],["set.",[".","Naan","module"],["`","LoadNotify"],"loadNotify"],["xlock",[".","Naan","module"],["car",["nsactive"]]],["sudo",["putproc","rdsDriver",["enclose",["getproc","modDriver"],["car",["nsactive","true"]]]]],"true"]),e._Execute(["ModuleInit"]),e._AddPropertyList("bt",[["$lingoDriver","bt"],["$escape","bt"],["$debugger","bt"],["$debugexception","bt"],["$driver","bt"],["$evalactive","break"]]),e._SetBindingList("debugCon",["closure","debugCon",["false","debug","defCommander"],["=","debug",["new","object","this"]],["set.","debug",["`","nshidden"],["list",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"namespace"]]],["set.","debug",["`","breakpoints"],{dictionary:{}}],["set.","debug",["`","bpenable"],"true"],["function","dsave",["false","saveob"],["=","saveob",{dictionary:{}}],["set.","saveob",["`","curns"],["nsactive"]],[[["not",["positive","debugDepth"]],["=","debugDepth",1]],["preadjust","debugDepth","+",1]],"saveob"],["function","drestore",["saveob"],["preadjust","debugDepth","-",1],["nsactive",[".","saveob","curns"]],"saveob"],["function","insertns",["curns"],[["not",["rest","curns"]],["cons",["nsrights"],"curns"]],["cons",["first","curns"],["insertns",["rest","curns"]]]],["function","clearframes","false",["set.","debug",["`","entrystack"],"false"],["set.","debug",["`","frames"],{array:[]}]],["function","storeframes",["all","false","procount","framex","framelist","frame","status"],["function","evaluate",["expr"],["eval","expr"]],[["not",[".","debug","entrystack"]],["=","procount",0],["set.","debug",["`","entrystack"],["stacktrace"]],[[["identity","all"],["=","framex",1]],["=","framex",["stepframe",[".","debug","entrystack"]]]],["set.","debug",["`","frames"],{array:[]}],["=","framelist",["deref",[".","debug","entrystack"],["-",["-","framex"],1]]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["procedure","frame"],[[["not","all"],["=","status",["get","bt",["procname",[".",[".","frame",3],1]]]],[[["eq","status","bt"],["continue"]]],[["&&",[">","procount",0],["eq","status",["`","break"]]],["break"]]]],["preadjust","procount","+",1]]],[".",[".","debug","frames"],"push",["frame"]]],[["==","procount",0],[".",[".","debug","frames"],"push",[["list",["`","function"],"evaluate",[".",[".","evaluate","proc"],-3],[".","evaluate","proc"]]]]]]],["function","stepframe",["stack","false","framex","framelist","frame","found","debugout"],["=","framex",0],["=","framelist","stack"],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["&&","debugout",["==",[".","frame",0],"interrupt"]],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["=","found","framex"],["break"]],[["&&",["not",["eq","exception",["`","exception"]]],["==",[".","frame",2],"$exception-hook"]],["=","found",["+","framex",1]],["break"]]],[["&&",["member",[".","frame",0],["`",["function","closure"]]],["member",[".","frame",1],["`",["debugBlock","startException","startEscape","start"]]]],["=","debugout","true"],["=","found","framex"]],[["&&",["==",[".","frame",0],["`","function"]],["==",[".","frame",1],["`","debugger"]]],["=","found","framex"],["break"]]],["preadjust","framex","+",1]],"found"],["function","procframe",["stack","startx","false","frame"],["loop","false",["=","frame",["deref","stack","startx"]],[[["not","frame"],["return","false"]]],[["procedure","frame"]],["preadjust","startx","+",1]],"startx"],["function","intrap",["false","framelist","frame"],["=","framelist",["stacktrace"]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["==",[".","frame",0],"interrupt"],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["return",[".","frame",2]]]]]],"false"],["function","steppedover",["dict","false","stack","curframe","origframe","procdex"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["=","origframe",["-",["length","stack"],[".","debug","nextOffset"]]],["=","procdex",["procframe","stack","curframe"]],["set.","debug",["`","nextOffset"],"false"],[[["||",["not","procdex"],[">","procdex","origframe"]],["return","false"]]],[[["==","procdex",["procframe","stack",["+","origframe",1]]],["return","false"]]],[[["stacktrap",["+","procdex",1],0,"debugBlock"],["return"]]],"false"],["function","brokeover",["dict","false","resume"],["=","resume",[".",[".","debug","breakHitDict"],"resume"]],["set.",[".","debug","breakHitDict"],["`","resume"],"undefined"],["set.",[".","debug","breakHitDict"],["`","enable"],"true"],["set.","debug",["`","breakHitDict"],"false"],"resume"],["function","checkReady","false",["!=",[".",[".",[".","js","t"],"termlist"],"length"],0]],["set.","debug",["`","depth"],["function","depth","false","debugDepth"]],["set.","debug",["`","procname"],["function","procname",["name","false","parent"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],["=","name",["tostring","name"]],[["identity","parent"],[".",["procname","parent"],"concat",["$.","name"]]],"name"]],["set.","debug",["`","insideProc"],["function","insideProc",["false","frames","frame"],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","frame",[".","frames","shift","false"]],[[["procedure","frame"],["return",[".","frame",3]]]]],"false"]],["set.","debug",["`","frameProcTask"],["function","frameProcTask",["frame","false","frames","framedex","ftrav","procdef","bodydef","location"],[[["not",["array",[".","debug","frames"]]],["return","false"]]],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","ftrav",[".","frames","shift","false"]],[[["eq","ftrav","frame"],["=","frame","false"]]],[[["procedure","ftrav"],[[["not","frame"],["=","procdef",[".","ftrav",3]],[[["not","bodydef"],["=","bodydef","procdef"]]],["break"]]],["=","bodydef","false"]],[["||",["==",[".","ftrav",0],["`","body"]],["==",[".","ftrav",0],["`","loop"]]],[["not","bodydef"],["=","bodydef",[".","ftrav",2]]]]]],[["identity","procdef"],["list","procdef","bodydef"]]]],["set.","debug",["`","debugBlock"],["closure","debugBlock",["arg1","arg2","arg3","false","saveob","savech","savecmd","entry"],[[[">=","debugDepth",1],["set.","debug",["`","entrystack"],"false"],["storeframes","true"]],["storeframes"]],["=","saveob",["dsave"]],["=","savech",["textstreams"]],["nsactive",["insertns",[".","saveob","curns"]]],["=","savecmd",{dictionary:{}}],[".",[".","debug","commander"],"entering",["savecmd"]],["catch",[[[["string","arg1"],["=","entry","arg1"]],["=","entry",["intrap"]],[["==","entry","$steptrap"],[[[".","debug","breakHitDict"],[["brokeover","arg1"],["return"]]]],[[".","debug","nextOffset"],[["steppedover","arg1"],["return"]]],[[".","debug","startPause"],["set.","debug",["`","startPause"],"false"],["=","entry","$startpause"]]],[["==","entry","$breakpoint"],[[["not",[".","debug","bpenable"]],["return"]]],["set.","debug",["`","breakHitDict"],"arg1"]],[["not","entry"],["=","entry","$"]]],["set.","debug",["`","nextOffset"],"false"],["loop","false",[[".",[".","debug","commander"],"pauser",["entry","arg1","arg2","arg3"]]]]],"false",[[".",[".","debug","commander"],"leaving",["savecmd"]],["textstreams","savech"],["drestore","saveob"],[[[".","debug","bpenable"],["breakpoint","true"]]],["clearframes"]]]]],["function","skipbreak","false",["set.",[".","debug","breakHitDict"],["`","enable"],"false"]],["set.","debug",["`","resume"],["function","resume","false",[[".",[".","debug","breakHitDict"],"enable"],["set.",[".","debug","breakHitDict"],["`","resume"],"true"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],1,"debugBlock"]]]],["set.","debug",["`","step"],["function","step",["nstep","false","stack","stackdex","task"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["=","task",[".",[".",["deref","stack","stackdex"],3],2]],[[["&&",["symbol",[".","task",0]],["member",[".",[".",[".",[".","task",0],"proc"],1],"namespace"],[".","debug","nshidden"]]],["return",["stepover"]]]],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],"nstep","debugBlock"]]],["set.","debug",["`","stepup"],["function","stepup",["false","stack","stackdex","found"],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["loop","false",[[[">=","stackdex",["length","stack"]],["return"]]],[[["procedure",["deref","stack","stackdex"]],[[["get","bt",["procname",[".",[".",["deref","stack","stackdex"],3],1]]],["return"]]],[[["identity","found"],["break"]]],["=","found","stackdex"]]],[[["eq",["deref","stack",0],["`","loop"]],["=","found","stackdex"]]],["preadjust","stackdex","+",1]],["stacktrap","found",0,"debugBlock"]]],["set.","debug",["`","stepover"],["function","stepover",["false","stack","curframe"],["skipbreak"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["set.","debug",["`","nextOffset"],["-",["length","stack"],"curframe"]],[[["stacktrap","curframe",1,"debugBlock"],["return","true"]]],["set.","debug",["`","nextOffset"],"false"]]],["set.","debug",["`","quit"],["function","quit","false",["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]],["set.","debug",["`","startEscape"],["function","startEscape","false",[[["not",["checkReady"]],["debuglog","$debug.startEscape: can't enter debugger before terminal is ready"],["return"]]],["storeframes"],["debugBlock","$escape"]]],["set.","debug",["`","startException"],["function","startException",["except"],[[["not",["checkReady"]],["debuglog","$debug.startException: debugger not ready for","except"],["return"]]],["storeframes"],["set.","debug",["`","startExcept"],"except"],["debugBlock","$exception","except"]]],["set.","debug",["`","start"],["function","start",["pause"],[[["not",["checkReady"]],["debuglog","$debug.start: can't enter debugger before terminal is ready"],["return"]]],["storeframes"],[["identity","pause"],["set.","debug",["`","startPause"],"true"],[[["stacktrap",["stepframe",["stacktrace"]],0,"debugBlock"],["return"]]],["debugBlock","$startfail"]],["debugBlock","$"]]],["set.","debug",["`","setDefCommander"],["function","setDefCommander",["commander"],["=","defCommander","commander"],[["not",[".","debug","commander"]],["set.","debug",["`","commander"],"defCommander"]]]],["set.","debug",["`","setCommander"],["function","setCommander",["commander"],[["not","commander"],["set.","debug",["`","commander"],"defCommander"]],[".",[".","debug","commander"],"endPauser","false"],["set.","debug",["`","commander"],"commander"]]],["set.","debug",["`","breakHit"],["function","breakHit",["where","value","false","keylist","bpid","entry","result"],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",["=","bpid","false"],[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[["eq",[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]]]],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","false"]]],["=","entry",["deref",[".","debug","breakpoints"],"bpid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","false"]]]],"bpid"]],["function","breakTasks",["procdef","task","false","taskpath","above","below","pardef","procs","tasks"],["=","taskpath",["tuplepath","procdef","task"]],["=","above",["new","array","taskpath"]],["loop","false",["=","pardef",["apply",["`","."],["list","procdef",["totuple","above"]]]],[[["member",[".","pardef",0],["`",["closure","macro"]]],["=","procs",["instances",[".","pardef",1]]],[[["not","procs"],["return","task"]]],["=","tasks",{array:[]}],["while","false",[["not",["tuple","procs"]]],["=","task",["apply",["`","."],["list",[".",["pop","procs"],"proc"],"below"]]],[[["identity","task"],[".","tasks","push",["task"]]]]],["return","tasks"]]],[["==",[".","above","length"],0]],["push",[".","above","pop","false"],"below"]],"task"],["set.","debug",["`","breakAdd"],["function","breakAdd",["procdef","task","expr","false","firstid","keylist","bpid","tasks","bpdict"],["=","firstid",0],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",[["not",["member",["tostring",["preadjust","firstid","+",1]],"keylist"]]]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[[["eq",[".","bpdict","task"],"task"],["set.","bpdict",["`","conditional"],"expr"],["set.","pbdict",["`","hitcount"],0],["return","bpid"]]]],["=","tasks",["breakTasks","procdef","task"]],["=","bpdict",["breakpoint","tasks",[".","debug","debugBlock"]]],["set.","bpdict",["`","task"],"task"],[[["not","bpdict"],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","debug","breakpoints"],"firstid",{dictionary:{$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],"firstid"]],["set.","debug",["`","breakClear"],["function","breakClear",["procdef","task","false","keylist","tasks","bpid"],["=","keylist",["keys",[".","debug","breakpoints"]]],["=","tasks",["breakTasks","procdef","task"]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[[[">=",[".","tasks","indexOf",[[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],0],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],["return","true"]]]],"false"]],["set.","debug",["`","breakDelete"],["function","breakDelete",["bpid","false","tasks"],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["return","false"]]],["=","tasks",["breakTasks",[".",["deref",[".","debug","breakpoints"],"bpid"],"procdef"],[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],"true"]],["set.","debug",["`","breakAble"],["function","breakAble",["bpid","enabled","false","bpdict"],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[["identity","enable"],["set.","bpdict",["`","enable"],"true"]],["set.","bpdict",["`","enable"],"false"]]],["set.","debug",["`","breakGlobalAble"],["function","breakGlobalAble",["enable"],[[["identity","enable"],["set.","debug",["`","bpenable"],"true"]],["set.","debug",["`","bpenable"],"false"]],["breakpoint",[".","debug","bpenable"]]]],"debug"]),e._SetBindingList("debugger",["function","debugger",["pause"],[".",["DebugController"],"start",["pause"]]]),e._SetBindingList("debugescape",["function","debugescape","false",[".",["DebugController"],"startEscape","false"]]),e._SetBindingList("debugexception",["function","debugexception","false",[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["return"]]],[[["==",["tostring","exception"],"$driver"],["return"]]],[[["==",["tostring","exception"],"$debugger"],["return"]]],[[["==",["tostring","exception"],"$DebuggerREPL"],["return"]]],[".",["DebugController"],"startException",["exception"]]]),e._SetBindingList("DebugController",["function","DebugController","false",[[["eq","ndbController",["`","ndbController"]],["=","ndbController",["debugCon"]]]],"ndbController"]),e._AddPropertyList("DebugInit",[["$.lingoInit","true"]]),e._SetBindingList("DebugInit",["function","DebugInit",["false","manifest"],["=","manifest",["`",["bt","debugCon","debugger","debugescape","debugexception","DebugController","DebugInit"]]],[".",[".","Naan","module"],"build",["$Util","$Debug",["function","lambda",["modobj","compobj"],["=","ndbController",["`","ndbController"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebugController"],"DebugController"],["set.",[".","modobj","exports"],["`","debugger"],"debugger"],[["symbol","NideBuild"],["sudo",["moveproc","debugescape",["`","escape"]]],["sudo",["moveproc","debugexception",["`","exception"]]],["sudo",["set.",[".","Naan","debug"],["`","debugger"],"debugger"]]]]]]]),e._Execute(["DebugInit"]),e._SetBindingList("NaanError",["closure","NaanError",["false","nerr"],["=","nerr",["new","object","this"]],["set.","nerr",["`","errorID"],"$Naan Error"],["set.","nerr",["`","debug"],"false"],["function","procname",["name","defns","false","parent","strname"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],[[["lambda","name"],["=","strname","$()"]],["=","strname",[".","name","tostring","false"]]],[["identity","parent"],[".",["procname","parent","defns"],"concat",["$.","strname"]]],[["!=",[".","name","namespace"],"defns"],[".",[".",[".","name","namespace"],"tostring"],"concat",["$::","strname"]]],"strname"],["function","trace",["exclude","defns","false","stack","frame","output"],["=","stack",["stacktrace"]],["=","output",{array:[]}],["loop","false",[["atom","stack"]],["=","frame",["pop","stack"]],[[["procedure","frame"],[["<=",["postadjust","exclude","-",1],0],[".","output","push",[["procname",[".",[".","frame",3],1],"defns"]]]]],[["==",[".","frame",0],["`","interrupt"]],[".","output","push",["$[interrupt]"]],["break"]]]],[".",[".","output","reverse","false"],"join",["$ / "]]],["set.","nerr",["`","createError"],["function","createError",["parts","ns","false","nanerr","part","lastparts","badarray"],["function","addToHistory",["item","false","hist","keylist","key","history"],[[["||",["not",[".","nanerr","history"]],["not",["array",[".","nanerr","history"]]]],["set.","nanerr",["`","history"],{array:[]}]]],["=","hist",{dictionary:{}}],["=","keylist",["keys","item"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$history"],["=","history",[".","item","history"]]],[["!=","key","$error"],["set[","hist","key",["deref","item","key"]]]]],[".",[".","nanerr","history"],"push",["hist"]],[".","history","forEach",[["function","lambda",["old"],["addToHistory","old"]]]]],["function","addErrorList",["errs","false","err","etrim","keylist","key","badness"],["loop","false",[["atom","errs"]],["=","err",["pop","errs"]],[[["==",[".","err","error"],[".","nerr","errorID"]],["=","etrim",{dictionary:{}}],["=","keylist",["keys","err"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["&&",["!=","key","$error"],["||",["!=","key","$stack"],["!=",["deref","err","key"],[".","nanerr","stack"]]],["||",["!=","key","$module"],["!=",["deref","err","key"],[".","nanerr","module"]]]],["set[","etrim","key",["deref","err","key"]]]]],[[["||",["not",[".","nanerr","errors"]],["not",["array",[".","nanerr","errors"]]]],["set.","nanerr",["`","errors"],{array:[]}]]],[".",[".","nanerr","errors"],"push",["etrim"]]],["=","badarray","true"]]]],["function","addDictionary",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],["set[","nanerr","key",["deref","dict","key"]]]],["function","addJSerror",["item","false","keylist","key","dkey"],["=","keylist",["keys","item"]],[[["not","keylist"],["=","keylist",["`",["$name","$message"]]]]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["deref","nanerr","key"],["=","dkey",[".","$_","concat",["key"]]]],["=","dkey","key"]],[[["&&",["deref","item","key"],["not",["deref","nanerr","dkey"]]],["set[","nanerr","dkey",["deref","item","key"]]]]]],["=","nanerr",{dictionary:{$error:[".","nerr","errorID"],$occurred:[".","Date","now","false"]}}],["loop","false",[["atom","parts"]],["=","part",["pop","parts"]],[[["xobject","part"],["addJSerror","part"]],[["dictionary","part"],[["==",[".","part","error"],[".","nerr","errorID"]],["addToHistory","part"]],["addDictionary","part"]],[["array","part"],["push","part","lastparts"]],[[".","nanerr","memo"],["set.","nanerr",["`","memo"],[".",[".","nanerr","memo"],"concat",["$ ",["tostring","part"]]]]],["set.","nanerr",["`","memo"],["tostring","part"]]]],["set.","nanerr",["`","stack"],["trace",3,"ns"]],["set.","nanerr",["`","module"],[".",["car",["exists","$module","ns"]],"id"]],["loop","false",[["atom","lastparts"]],["addErrorList",["pop","lastparts"]]],[[["not",[".","nanerr","memo"]],["debuglog","$NaanError.createError: no error memo at",[".","nanerr","stack"]]]],[[["identity","badarray"],["debuglog","$NaanError.createError: ignoring array argument"]]],[[[".","nerr","debug"],["call",["function","ErrorDebuglog","args",[".","nerr","debugError",["args"]]],"$new","nanerr"]]],"nanerr"]],["set.","nerr",["`","toString"],["function","toString",["nanerr","options","false","output","keylist","key","history"],["=","output","$"],["=","keylist",["keys","nanerr"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$error"]],[["==","key","$occurred"]],[["==","key","$memo"]],[["==","key","$stack"]],[["==","key","$history"],["=","history",[".","nanerr","history"]]],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["key","$=",["tostring",["deref","nanerr","key"]]]]]]],[[["identity","history"],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["$<<"]]],[".",[".","nanerr","history"],"forEach",[["function","lambda",["item","index"],[[["!=","index",0],["=","output",[".","output","concat",["$ | "]]]]],["=","output",[".","output","concat",[["toString","item",{dictionary:{$memo:"true"}}]]]]]]],["=","output",[".","output","concat",["$>>"]]]]],[["&&",[".","options","memo"],[".","nanerr","memo"]],[".",[".","nanerr","memo"],"concat",["$ ","output"]]],"output"]],["set.","nerr",["`","toDescription"],["function","toDescription",["nanerr"],[["!=",[".","nanerr","error"],[".","nerr","errorID"]],["tostring","nanerr"]],[[".","nanerr","memo"],["toString","nanerr",{dictionary:{$memo:"true"}}]],[".","$Error ","concat",[["toString","nanerr"]]]]],["set.","nerr",["`","debugError"],["function","debugError",["args","false","arg","text","nanerr","nanerrs"],["loop","false",[["atom","args"]],["=","arg",["pop","args"]],[[["&&",["dictionary","arg"],["==",[".","arg","error"],[".","nerr","errorID"]]],["=","nanerr","arg"]],[["array","arg"],["=","nanerrs","arg"]],["push","arg","text"]]],["=","text",["reverse","text"]],[[["identity","nanerr"],[[["identity","text"],["=","text",["append","text","$=>"]]],["=","text","$"]],["=","text",["append","text",[".","nerr","toDescription",["nanerr"]]]]],[["&&",["not","text"],"nanerrs"],["=","text",[".",[".",[".","nanerrs","length"],"tostring"],"concat",["$ errors:"]]]]],["apply","debuglog","text"],["loop","false",[["||",["not","nanerrs"],["==",[".","nanerrs","length"],0]]],["=","nanerr",[".","nanerrs","shift","false"]],["=","text",["append","$ ",[".","nerr","toDescription",["nanerr"]]]],["apply","debuglog","text"]]]],"nerr"]),e._SetBindingList("Error",["function","Error","parts",[".","naneErrorManager","createError",["parts",["nscaller"]]]]),e._SetBindingList("ErrorObject",["function","ErrorObject",["nerr"],["&&",["object","nerr"],["==",[".","nerr","errorID"],"$Naan Error"]]]),e._SetBindingList("ErrorString",["function","ErrorString",["nanerr"],[".","naneErrorManager","toString",["nanerr","true"]]]),e._SetBindingList("ErrorDebuglog",["function","ErrorDebuglog","args",[".","naneErrorManager","debugError",["args"]]]),e._AddPropertyList("ErrorInit",[["$.lingoInit","true"]]),e._SetBindingList("ErrorInit",["function","ErrorInit",["false","manifest"],["=","manifest",["`",["NaanError","Error","ErrorObject","ErrorString","ErrorDebuglog","ErrorInit"]]],[".",[".","Naan","module"],"build",["$Util","$Error",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Error"],"Error"],["set.",[".","modobj","exports"],["`","ErrorObject"],"ErrorObject"],["set.",[".","modobj","exports"],["`","ErrorString"],"ErrorString"],["set.",[".","modobj","exports"],["`","ErrorDebuglog"],"ErrorDebuglog"],["set.",[".","Naan","module"],["`","Error"],"Error"],["set.",[".","Naan","module"],["`","ErrorObject"],"ErrorObject"],["set.",[".","Naan","module"],["`","ErrorString"],"ErrorString"],["set.",[".","Naan","module"],["`","ErrorDebuglog"],"ErrorDebuglog"]]]],["=","naneErrorManager",["NaanError"]]]),e._Execute(["ErrorInit"]),e._SetBindingList("MakeComponentJS",["function","MakeComponentJS",["fpath","false","pkg"],[["=","pkg",[".",[".","Naan","module"],"package",["fpath"]]],["pkgToJsSource","pkg"]]]),e._SetBindingList("MakePackage",["function","MakePackage",["pkgname","roots","prerequisites","omitlist"],["pkgSave","pkgname","roots","prerequisites","omitlist"]]),e._SetBindingList("makeSourceString",["function","makeSourceString",["item","false","text","result"],["=","text",["explode","item"]],["=","result",'$"'],[[["string","item"],["=","result",[".","result","concat",["$$"]]]],[["==",["tostring","item"],"$."]],[["or",["eq",["car","text"],"$$"],["eq",["car","text"],"$."],["eq",["car","text"],"$\\"]],["=","result",[".","result","concat",["$\\\\"]]]]],["loop","false",[["empty","text"]],[[["eq",["car","text"],'$"'],["=","result",[".","result","concat",['$\\"']]]],[["eq",["car","text"],"$\\"],["=","result",[".","result","concat",["$\\\\"]]]],[["eq",["car","text"],"$\t"],["=","result",[".","result","concat",["$\\t"]]]],[["eq",["car","text"],"$\n"],["=","result",[".","result","concat",["$\\n"]]]],[["eq",["car","text"],"$\r"],["=","result",[".","result","concat",["$\\r"]]]],[["eq",["car","text"],"$\b"],["=","result",[".","result","concat",["$\\b"]]]],[["eq",["car","text"],"$\f"],["=","result",[".","result","concat",["$\\f"]]]],[["eq",["car","text"],"$\v"],["=","result",[".","result","concat",["$\\u000b"]]]],[["eq",["car","text"],"$\0"],["=","result",[".","result","concat",["$\\u0000"]]]],["=","result",[".","result","concat",[["car","text"]]]]],["=","text",["cdr","text"]]],[".","result","concat",['$"']]]),e._SetBindingList("WritePackageJS",["function","WritePackageJS",["list","false","chan"],["function","writeList",["list","false","item","notfirst"],[[["not",["empty","list"]],[".","chan","print",["["]]]],["loop","false",[["empty","list"]],[[["identity","notfirst"],[".","chan","print",["comma","space"]]],["=","notfirst","true"]],["=","item",["pop","list"]],[[["or",["symbol","item"],["string","item"]],[".","chan","print",[["makeSourceString","item"]]]],[["integer","item"],[".","chan","print",["item"]]],[["float","item"],[".","chan","print",['$".',"item",'$"']]],[["or",["dictionary","item"],["array","item"]],[".","chan","print",[[".",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lingo"],"exports"],"Base"],"print",["item"]]]]],[".","chan","writeList",["item"]]]],[".","chan","print",[["`","]"]]]],["=","chan",["new","textstream","$","string"]],["writeList","list"],[".","chan","taketext","false"]]),e._SetBindingList("pkgSave",["function","pkgSave",["pkgname","roots","options","false","pkgns","goodns","registry","xlate","storenum","wmapSymbol","wmapUnintern","mapString","mapInteger","mapFloat","wmapArray","wmapDictionary","mapList","wmapProcedure","mapDialect","indexValue","listSymbol","listUnintern","listString","listInteger","listFloat","listArray","listDictionary","listList","listProcedure","listDialect","reported"],["function","store",["expr","false","key","exlist","dialect"],[["symbol","expr"],[[["&&","expr",["not",["interned","expr"]],["not",["member","expr","roots"]]],[[["deref","wmapUnintern","expr"]],["set[","wmapUnintern","expr",["preadjust","storenum","+",1]],["push","expr","listUnintern"],["set[","indexValue","storenum","expr"],"storenum"],["return"]]],[[["&&","expr",["not",["member",[".","expr","namespace"],"goodns"]]],["=","dialect",[".","registry","findNamespace",[[".","expr","namespace"]]]],[[["identity","dialect"],["=","key",["store",["list",[".","dialect","name"],[".","expr","tostring"]]]],[[["deref","mapDialect","key"]],["set[","mapDialect","key",["preadjust","storenum","+",1]],["push","key","listDialect"],["set[","indexValue","storenum","key"],"storenum"],["return"]]],[["defbinding","expr"],[["not",["eq",["defbinding","expr"],[".","expr","proc"]]],["printline","$pkgSave: cannot save non-default binding for well-known symbol ","expr"],["set[","reported","expr","true"]]],[["&&",["not",[".","options","nsignore"]],["not",["deref","reported","expr"]]],["printline","$pkgSave: cannot save ",[".","expr","namespace"],"$ from ","pkgns","$ for symbol ","expr"],["set[","reported","expr","true"]]]],[[["eq","expr","undefined"],["=","expr","$undefined"]]],[["deref","wmapSymbol","expr"]],["set[","wmapSymbol","expr",["preadjust","storenum","+",1]],["push","expr","listSymbol"],["set[","indexValue","storenum","expr"],"storenum"],[["string","expr"],[["deref","mapString","expr"]],["set[","mapString","expr",["preadjust","storenum","+",1]],["push","expr","listString"],["set[","indexValue","storenum","expr"],"storenum"],[["integer","expr"],["=","key",["tostring","expr"]],[["deref","mapInteger","key"]],["set[","mapInteger","key",["preadjust","storenum","+",1]],["push","key","listInteger"],[[["<","expr",[".","Number","$MAX_SAFE_INTEGER"]],["set[","indexValue","storenum","expr"]],["set[","indexValue","storenum","key"]],"storenum"],[["float","expr"],["=","key",["tostring","expr"]],[["deref","mapFloat","key"]],["set[","mapFloat","key",["preadjust","storenum","+",1]],["push","key","listFloat"],["set[","indexValue","storenum","expr"],"storenum"],[["array","expr"],[["deref","wmapArray","expr"]],["=","exlist","false"],["=","key",0],["loop","false",[[">=","key",[".","expr","length"]]],["push",["deref","expr",["postadjust","key","+",1]],"exlist"]],["=","key",["store",["reverse","exlist"]]],["set[","wmapArray","expr",["preadjust","storenum","+",1]],["push","expr","listArray"],["set[","indexValue","storenum","key"],"storenum"],[["dictionary","expr"],[["deref","wmapDictionary","expr"]],["=","key",["store",["objToList","expr"]]],["set[","wmapDictionary","expr",["preadjust","storenum","+",1]],["push","expr","listDictionary"],["set[","indexValue","storenum","key"],"storenum"],[["tuple","expr"],[["&&",["procedure","expr"],["eq",[".",[".","expr",1],"proc"],"expr"]],["storeProcedure","expr"]],["storeList","expr"]],[[["not",["deref","reported","expr"]],["printline","$pkgSave: cannot save type ",["typeof","expr"],"$ - ","expr"],["set[","reported","expr","true"]]],1],["function","storeList",["exlist","false","result","left","key"],["=","key",{array:[]}],["=","exlist",["reverse","exlist"]],["loop","false",[["empty","exlist"]],["=","left",["store",["pop","exlist"]]],["push","left","result"],[".","key","push",["left"]]],["=","key",[".","key","join",["$,"]]],[["deref","mapList","key"]],["set[","mapList","key",["preadjust","storenum","+",1]],["push","key","listList"],["set[","indexValue","storenum","result"],"storenum"],["function","storeProcedure",["procdef","false","key"],[[["builtin","procdef"],["return",["store",["tostring","procdef"]]]]],[["deref","wmapProcedure",[".","procdef",1]]],["=","key",["storeList","procdef"]],["set[","wmapProcedure",[".","procdef",1],["preadjust","storenum","+",1]],["push",[".","procdef",1],"listProcedure"],["set[","indexValue","storenum","key"],"storenum"],["function","objToList",["obj","false","keylist","trav","datlist"],["=","trav",["=","keylist",["xkeys","obj"]]],["loop","false",[["empty","trav"]],["push",["deref","obj",["pop","trav"]],"datlist"]],["list","keylist",["reverse","datlist"]]],["function","saveSymbol",["sym","sites","false","proc","props"],["=","proc",["getproc","sym"]],["=","props",["cdr","sym"]],[[["dictionary","props"],["=","props",["new","props"]],["set.","props",["`","\\.children"],"undefined"],["set.","props",["`","\\.parent"],"undefined"],[[["not",[".","options","comments"]],["set.","props",["`","\\.sourcemap"],"undefined"]],["set.",[".","props","\\.sourcemap"],["`","map"],"undefined"]],[["==",["length","props"],0],["=","props","false"]]]],["list",["store","sym"],["store",["car","sym"]],["store","props"],["storeProcedure","proc"],["store","sites"]]],["function","makeXlate",["false","rdex"],["function","buildXlate",["typeList","typeMap"],["=","typeList",["reverse","typeList"]],["loop","false",[["empty","typeList"]],["set[","xlate",["deref","typeMap",["pop","typeList"]],["postadjust","rdex","+",1]]]],["=","rdex",0],["=","xlate",["new","dictionary"]],["buildXlate","listSymbol","wmapSymbol"],["buildXlate","listUnintern","wmapUnintern"],["buildXlate","listString","mapString"],["buildXlate","listInteger","mapInteger"],["buildXlate","listFloat","mapFloat"],["buildXlate","listArray","wmapArray"],["buildXlate","listDictionary","wmapDictionary"],["buildXlate","listList","mapList"],["buildXlate","listProcedure","wmapProcedure"],["buildXlate","listDialect","mapDialect"],"rdex"],["function","renumber",["exlist","false","output"],[["integer","exlist"],["deref","xlate","exlist"]],[["atom","exlist"],"false"],["=","exlist",["reverse","exlist"]],["while","false",[["not",["tuple","exlist"]]],["push",["renumber",["pop","exlist"]],"output"]],"output"],["function","saveMaps",["false","count","maps"],["function","makeAtom",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["deref","indexValue",["deref","typeMap",["pop","typeList"]]],"result"],["preadjust","count","+",1]],"result"],["function","makeList",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["renumber",["deref","indexValue",["deref","typeMap",["pop","typeList"]]]],"result"],["preadjust","count","+",1]],"result"],["=","count",0],["=","maps",["list",["makeAtom","listSymbol","wmapSymbol"],["makeAtom","listUnintern","wmapUnintern"],["makeAtom","listString","mapString"],["makeAtom","listInteger","mapInteger"],["makeAtom","listFloat","mapFloat"],["makeList","listArray","wmapArray"],["makeList","listDictionary","wmapDictionary"],["makeList","listList","mapList"],["makeList","listProcedure","wmapProcedure"],["makeList","listDialect","mapDialect"]]],["cons","count","maps"]],["function","export",["symbols","false","sym","problist","trav","ptrav","plist","pitem","sitesym","symstates","sites"],["=","ptrav",["symlist",["namespace",["car","symbols"]]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["cdr","pitem"],["=","problist",["cons","pitem","problist"]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],[[["not",["symbol","sym"]],["throw",["list","$error","pkgSave",["strcat","$non-symbol specified: ","sym"]]]]],[[["and",["eq","pkgns",["namespace","sym"]],["not",["member","sym","omitlist"]]],["=","ptrav",["totuple",["cdr","sym"]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["and",["symbol",["cdr","pitem"]],["not",["member",["cdr","pitem"],"symbols"]]],["=","symbols",["cons",["cdr","pitem"],"symbols"]]]]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],["=","sites","false"],["=","ptrav","problist"],["loop","false",[["empty","ptrav"]],["=","sitesym",["pop","ptrav"]],["=","plist",["totuple",["cdr","sitesym"]]],["loop","false",[["empty","plist"]],["=","pitem",["pop","plist"]],[[["or",["eq",["car","pitem"],"sym"],["eq",["cdr","pitem"],"sym"]],["push",["list","sitesym",["car","pitem"],["cdr","pitem"]],"sites"]]]]],["push",["saveSymbol","sym","sites"],"symstates"]],["reverse","symstates"]],["call",["function","lambda",["false","header","rootnum","syms","ops"],[[["not","options"],["=","options",{dictionary:{$comments:"true"}}]]],["=","reported",["new","weakmap"]],["=","storenum",0],["=","wmapSymbol",["new","weakmap"]],["=","wmapUnintern",["new","weakmap"]],["=","mapString",["new","dictionary"]],["=","mapInteger",["new","dictionary"]],["=","mapFloat",["new","dictionary"]],["=","wmapArray",["new","weakmap"]],["=","wmapDictionary",["new","weakmap"]],["=","mapList",["new","dictionary"]],["=","wmapProcedure",["new","weakmap"]],["=","mapDialect",["new","dictionary"]],["=","indexValue",["new","dictionary"]],[["not","pkgname"],"false"],[["not",["symbol","pkgname"]],["throw",["list","$error","pkgSave",["strcat","$package name not a symbol: ","pkgname"]]]],[["atom","roots"],["throw",["list","$error","pkgSave",["strcat","$no roots specified: ","roots"]]]],["=","pkgns",["namespace","pkgname"]],["=","goodns",["list","pkgns",[".",["nsactive","true"],1]]],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["store","false"],["=","rootnum",["store","roots"]],["=","syms",["export","roots"]],["makeXlate"],["=","header",["list","$NaanPackage",1,1,"pkgname",[".","options","prereqs"]]],["list","header",["saveMaps"],["renumber","rootnum"],["renumber","syms"]]]]]),e._SetBindingList("pkgDecode",["function","pkgDecode",["pkg","intern","false","registry","maxdepth","mapSymbol","mapUnintern","mapString","mapInteger","mapFloat","mapDictionary","mapArray","mapList","mapProcedure","mapDialect","cache"],["function","lookupArray",["key","depth","false","exlist","adex","result"],["=","exlist",["lookup",["deref","mapArray","key"],"depth"]],["=","result",["new","array"]],["=","adex",0],["loop","false",[["empty","exlist"]],["set[","result",["postadjust","adex","+",1],["pop","exlist"]]],"result"],["function","lookupDictionary",["key","depth","false","exlist","keylist","datalist","result"],["=","exlist",["lookup",["deref","mapDictionary","key"],"depth"]],["=","result",["new","dictionary"]],["=","keylist",[".","exlist",0]],["=","datalist",[".","exlist",1]],["loop","false",[["empty","keylist"]],["set[","result",["pop","keylist"],["pop","datalist"]]],"result"],["function","lookupList",["key","depth","false","exlist","result"],["=","exlist",["deref","mapList","key"]],["loop","false",[["empty","exlist"]],["=","result",["cons",["lookup",["pop","exlist"],"depth"],"result"]]],["reverse","result"]],["function","lookupProcedure",["key","depth","false","procdef"],["=","procdef",["lookup",["deref","mapProcedure","key"],"depth"]],[["procedure","procdef"],["=","procdef",["enclose","procdef"]]],[["string","procdef"],["=","procdef","procdef"]]],["function","lookupDialect",["key","depth","false","pair","dialect"],["=","pair",["lookup",["deref","mapDialect","key"],"depth"]],["=","dialect",[".","registry","findName",[[".","pair",0]]]],[[["not","dialect"],["throw",[".","$pkgDecode: unregistered dialect: ","concat",[[".","pair",0]]]]]],["deref",[".",[".","dialect","ns"],"symbols"],["deref",[".",[".","dialect","ns"],"index"],[".","pair",1]]]],["function","lookup",["expr","depth","false","key","sexpr","result","cachekey"],[[["not","expr"],["return","expr"]]],["=","cachekey","expr"],[[["&&",["integer","cachekey"],["defined","cache","cachekey"]],["return",["deref","cache","cachekey"]]]],[[["not","depth"],["=","depth",1]]],["=","key","expr"],["=","result",["loop","false",[[[">","depth","maxdepth"],["throw",[".","$pkgDecode: cycle corruption: ","concat",["expr"]]]]],[["not",["atom","expr"]],["loop","false",[["empty","expr"]],["=","result",["cons",["lookup",["pop","expr"],["+","depth",1]],"result"]]],["reverse","result"]],[["not",["integer","expr"]],["throw",[".","$pkgDecode: can't lookup: ","concat",["expr"]]],"false"],[[["<","key",[".","mapSymbol","length"]],["=","sexpr",["deref","mapSymbol","key"]],[[["==","sexpr","$undefined"],"undefined"],[["==","sexpr","$null"],"null"],[["||","intern",["==","key",0],["interned","sexpr"]],["compress","sexpr"]],["unintern","sexpr"]],["break"]]],["preadjust","key","-",[".","mapSymbol","length"]],[["<","key",[".","mapUnintern","length"]],["unintern",["deref","mapUnintern","key"]]],["preadjust","key","-",[".","mapUnintern","length"]],[["<","key",[".","mapString","length"]],["deref","mapString","key"]],["preadjust","key","-",[".","mapString","length"]],[["<","key",[".","mapInteger","length"]],["deref","mapInteger","key"]],["preadjust","key","-",[".","mapInteger","length"]],[["<","key",[".","mapFloat","length"]],["deref","mapFloat","key"]],["preadjust","key","-",[".","mapFloat","length"]],[["<","key",[".","mapArray","length"]],["lookupArray","key",["+","depth",1]]],["preadjust","key","-",[".","mapArray","length"]],[["<","key",[".","mapDictionary","length"]],["lookupDictionary","key",["+","depth",1]]],["preadjust","key","-",[".","mapDictionary","length"]],[["<","key",[".","mapList","length"]],["lookupList","key",["+","depth",1]]],["preadjust","key","-",[".","mapList","length"]],[["<","key",[".","mapProcedure","length"]],["lookupProcedure","key",["+","depth",1]]],["preadjust","key","-",[".","mapProcedure","length"]],[["<","key",[".","mapDialect","length"]],["lookupDialect","key",["+","depth",1]]],["throw",[".","$pkgDecode: invalid refnum: ","concat",["expr"]]],[["identity","true"]]]],[["integer","cachekey"],["set[","cache","cachekey","result"]],"result"],["function","recurList",["expr","false","adex","result"],[["||",["array","expr"],["xobject","expr"]],["=","adex",[".","expr","length"]],["loop","false",[["<",["preadjust","adex","-",1],0]],["push",["recurList",["deref","expr","adex"]],"result"]],"result"],"expr"],["call",["function","lambda",["false","pkgname","firstVer","lastVer"],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["=","firstVer",1],["=","lastVer",1],[[["and",["atom","pkg"],["not",["=","pkg",["recurList","pkg"]]]],["return","$invalid package argument"]]],["=","pkgname",[".",[".","pkg",0],3]],[[["or",["atom","pkg"],["!=",[".",[".","pkg",0],0],"$NaanPackage"],["not","pkgname"],["not",["name","pkgname"]]],["return","$package not recognized"]]],[[["or",[">",[".",[".","pkg",0],1],"lastVer"],["<",[".",[".","pkg",0],2],"firstVer"],["<=",[".",[".","pkg",1],0],0],["<=",["length",[".",[".","pkg",1],1]],0]],["return",[".","$package version not supported: ","concat",[[".",[".","pkg",0],1],"$-",[".",[".","pkg",0],2]]]]]],["=","maxdepth",[".",[".","pkg",1],0]],["=","mapSymbol",["new","array",[".",[".","pkg",1],1]]],["=","mapUnintern",["new","array",[".",[".","pkg",1],2]]],["=","mapString",["new","array",[".",[".","pkg",1],3]]],["=","mapInteger",["new","array",[".",[".","pkg",1],4]]],["=","mapFloat",["new","array",[".",[".","pkg",1],5]]],["=","mapArray",["new","array",[".",[".","pkg",1],6]]],["=","mapDictionary",["new","array",[".",[".","pkg",1],7]]],["=","mapList",["new","array",[".",[".","pkg",1],8]]],["=","mapProcedure",["new","array",[".",[".","pkg",1],9]]],["=","mapDialect",["new","array",[".",[".","pkg",1],10]]],["=","cache",{array:[]}],["catch",[["cons",["list","pkgname",["lookup",[".",[".","pkg",0],4]],["lookup",[".",[".","pkg",0],5]],["lookup",[".","pkg",2]]],["lookup",[".","pkg",3]]]],[[["string","exception"],"exception"]],"false"]]]]),e._SetBindingList("pkgExamine",["function","pkgExamine",["pkg","false","exlist","header","state"],["function","printProps",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["member","key",["`",["$.sourcemap","$.children","$.parent"]]],["printline","$ ","key"]],["printline","$ ","key","$, ",["xget","dict","key"]]]]],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["printline",[".","$pkgExamine error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["newline"],["printline","$=================================================="],["printline","$ package: ",[".","header",0]],["printline","$ version: ",[".","header",1]],["printline","$ prereqs: ",[".","header",2]],["printline","$root symbols: ",[".","header",3]],["printline","$ states: ",["length","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],["printline","$=================================================="],["printline","$ name: ",[".","state",0]],["printline","$--------------------------------------------------"],["printline","$ val: ",[".","state",1]],[[["dictionary",[".","state",2]],["printline","$ prop:"],["printProps",[".","state",2]]],["printline","$ prop: ",[".","state",2]]],["printline","$ sites: ",[".","state",4]],[["atom",[".","state",3]],["printline","$ proc: ",[".","state",3]]],["printline","$ proc: "],["printline",[".",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lingo"],"exports"],"Base"],"print",[[".","state",3]]]]]],["printline","$=================================================="],[".","header",0]]),e._SetBindingList("pkgLoad",["function","pkgLoad",["pkg","options","false","exlist","header","roots","state","sym","sitelist","site","proc"],[[["not","options"],["=","options",{dictionary:{$localroots:"true",$intern:"true",$execute:"true"}}]]],["=","exlist",["pkgDecode","pkg",[".","options","intern"]]],[[["atom","exlist"],["printline",[".","$pkgLoad error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],[[[".","options","intern"],["=","sym",["compress",[".","state",0]]],[["not",["eq",[".","sym","namespace"],[".",["nsactive"],0]]],[[".","options","localroots"],["=","sym",["car",["letlocal","sym"]]]],["printline","$cannot overwrite symbol ","sym","$ in ",[".","sym","namespace"]],["continue"]]],["=","sym",["unintern",[".","state",0]]]],["push","sym","roots"],["assign","sym",[".","state",1]],["=","proc",[".","state",3]],["putproc","sym","proc"],["replacer","sym",[".","state",2]],[[[".","proc",1],["copyann",[".","proc",1],"sym"]]],["=","sitelist",[".","state",4]],["loop","false",[["empty","sitelist"]],["=","site",["pop","sitelist"]],["put",[".","site",0],[".","site",1],[".","site",2]]],[["&&",[".","options","execute"],[".","state",3],["get","sym","$.lingoInit"]],["call","sym"]]]],["reverse","roots"]]),e._SetBindingList("pkgToJsSource",["function","pkgToJsSource",["pkg","false","output","indent","atnl"],["=","output","$"],["=","indent",0],["=","atnl","true"],["function","indent",["adj"],["preadjust","indent","+","adj"]],["function","newline","false",["=","atnl","true"],["=","output",[".","output","concat",["cr"]]]],["function","write","strings",["call",["function","lambda",["false","cnt","str"],["while","false",[["not",["not",["empty","strings"]]]],[[["identity","atnl"],["=","atnl","false"],["=","cnt","indent"],["while","false",[["not",[">",["postadjust","cnt","-",1],0]]],["=","output",[".","output","concat",["$ "]]]]]],["=","str",["pop","strings"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","atnl","true"]]],["=","output",[".","output","concat",["str"]]]]]],"output"],["function","writeline","strings",["apply","write","strings"],["newline"]],["function","atomString",["expr","false","vertical"],[["||",["symbol","expr"],["string","expr"]],["makeSourceString","expr"]],[["float","expr"],[".",'$".',"concat",["expr",'$"']]],[["integer","expr"],"expr"],[["array","expr"],["arrayString","expr","vertical"]],[["dictionary","expr"],["dictionaryString","expr","vertical"]],["printline","$pkgToJsSource: unsupported atom: ","expr"],"$false"],["function","arrayString",["arr","false","adex","expr","separator","result"],["=","result","${array:["],["=","adex",0],["loop","false",[[">=","adex",[".","arr","length"]]],["=","expr",["deref","arr",["postadjust","adex","+",1]]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["exprString","expr"]]]]],["=","result",[".","result","concat",["separator",["exprString","expr"]]]]]],[".","result","concat",["$]}"]]],["function","dictionaryString",["obj","false","keylist","key","separator","result"],[[["cdr","obj"],["=","result",[".","${tag:","concat",[["atomString",["cdr","obj"]],"$,dictionary:{"]]]],["=","result","${dictionary:{"]],["=","keylist",["keys","obj"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]],["=","result",[".","result","concat",["separator",["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]]],[".","result","concat",["$}}"]]],["function","openListString",["exlist","false","expr","comma","result"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["=","comma","$"],["=","result","$"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],["=","result",[".","result","concat",["comma",["exprString","expr"]]]],["=","comma","$, "]],"result"],["function","paramListString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["exprString","exlist"]],["function","exprString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],[".","$[","concat",[["openListString","exlist"],"$]"]]],["function","procsym",["sym"],["=","sym",["tostring","sym"]],["return",["||",["==","sym","$function"],["==","sym","$function&"],["==","sym","$macro"],["==","sym","$closure"],["==","sym","$let"],["==","sym","$let&"]]]],["function","writeCall",["exlist","more","false","opstr"],[[["atom","exlist"],["write",["atomString","exlist"]],["return"]]],["=","opstr",["tostring",["car","exlist"]]],[[["procsym",["car","exlist"]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$, ",["paramListString",["third","exlist"]],"$,"],["indent",1],["writeBody",["cdddr","exlist"]],["indent",-1],["write","$]"]],[["||",["==","opstr","$loop"],["==",[".",["car","exlist"],"proc"],[".",["`","loop"],"proc"]]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$,"],["indent",1],["writeBody",["cddr","exlist"]],["indent",-1],["write","$]"]],[["==","opstr","$call"],["writeline","$[",["atomString",["car","exlist"]],"$,"],["indent",1],[[["cddr","exlist"],["writeCall",["second","exlist"],"$,"],["indent",-1],["newline"],["write",["openListString",["cddr","exlist"]]]],["writeCall",["second","exlist"],"$"],["indent",-1]],["write","$]"]],[["==","opstr","$catch"],["writeline","$[",["atomString",["pop","exlist"]],"$,"],["indent",1],[[["car","exlist"],["write","$["],["indent",1],["writeBody",["car","exlist"],"$"],["indent",-1],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["second","exlist"],["write","$["],["writeBody",["second","exlist"],"$"],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["third","exlist"],["write","$["],["indent",1],["writeBody",["third","exlist"],"$"],["indent",-1],["write","$]"]],["write",["atomString","false"]]],["indent",-1],["write","$]"]],[["||",["==","opstr","$quote"],["==","opstr","$`"]],["write",["exprString","exlist"]]],["write",[".","$[","concat",[["openListString","exlist"],"$]"]]]],["write","more"]],["function","writeBody",["exlist","false","expr","more"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],[[["empty","exlist"],["=","more","$"]],["=","more","$,\n"]],[[["atom","expr"],["write",["atomString","expr"],"more"]],[["atom",["car","expr"]],["writeCall","expr","more"]],[["atom",["caar","expr"]],[["cdr","expr"],["write","$["],["writeCall",["car","expr"],"$,\n"],["indent",1],["writeBody",["cdr","expr"]],["indent",-1],["write","$]","more"]],["write","$[",["exprString",["car","expr"]],"$]","more"]],["writeline","$["],["indent",1],["writeBody",["list",["car","expr"]]],[[["cdr","expr"],["writeline","$,"],["writeBody",["cdr","expr"]]]],["indent",-1],["write","$]","more"]]]],["function","writeProc",["sym","proc"],["writeline","$ninti._SetBindingList(",["atomString","sym"],"$,"],["indent",1],[[["string","proc"],["writeline","proc"]],["writeline","$[",["atomString",["car","proc"]],"$, ",["atomString",["second","proc"]],"$, ",["paramListString",["third","proc"]],"$,"],["indent",1],["writeBody",["cdddr","proc"]],["indent",-1],["writeline","$]"]],["indent",-1],["writeline","$);"]],["function","writeProps",["sym","props","false","prop","preceded","header"],[[["atom","props"],["return"]]],["=","preceded","$"],["while","false",[["not",["not",["empty","props"]]]],["=","prop",["pop","props"]],[[["==",["tostring",["car","prop"]],"$.sourcemap"],["continue"]]],[[["==",["tostring",["car","prop"]],"$.children"],["continue"]]],[[["not","header"],["=","header","true"],["writeline","$ninti._AddPropertyList(",["atomString","sym"],"$,"],["indent",1],["write","$["]]],["write","preceded","$[",["atomString",["car","prop"]],"$, ",["exprString",["cdr","prop"]],"$]"],["=","preceded","$,\n"]],[[["not","header"],["return"]]],["write","$]"],["indent",-1],["newline"],["writeline","$);"]],["function","writeValue",["sym","value"],["writeline","$ninti._SetValue(",["atomString","sym"],"$, ",["exprString","value"],"$);"]],["call",["function","lambda",["false","exlist","header","state","sym","proc"],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["printline",[".","$pkgToJsSource:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["indent",1],["writeline","$/*"],["writeline","$ * ",[".",[".","pkg",0],3]],["writeline","$ *"],["writeline","$ */"],["newline"],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],[[["!=",[".","state",1],[".","state",0]],["writeValue",[".","state",0],[".","state",1]]]],[[[".","state",2],["writeProps",[".","state",0],["totuple",[".","state",2]]]]],["=","proc",[".","state",3]],[[["tuple","proc"],["writeProc",[".","state",0],"proc"]]],[["||",[".","state",2],["tuple","proc"]],["newline"]]]],["indent",-1],"output"]]]),e._AddPropertyList("PackagerInit",[["$.lingoInit","true"]]),e._SetBindingList("PackagerInit",["function","PackagerInit",["false","manifest"],["=","manifest",["`",["MakeComponentJS","MakePackage","makeSourceString","WritePackageJS","pkgSave","pkgDecode","pkgExamine","pkgLoad","pkgToJsSource","PackagerInit"]]],[".",[".","Naan","module"],"build",["$Util","$Packager",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","MakeComponentJS"],"MakeComponentJS"],["set.",[".","modobj","exports"],["`","WritePackageJS"],"WritePackageJS"],["set.",[".","modobj","exports"],["`","pkgSave"],"pkgSave"],["set.",[".","modobj","exports"],["`","pkgExamine"],"pkgExamine"],["set.",[".","modobj","exports"],["`","pkgLoad"],"pkgLoad"],["set.",[".","modobj","exports"],["`","pkgToJsSource"],"pkgToJsSource"],["set.",[".","Naan","module"],["`","MakeComponentJS"],"MakeComponentJS"]]]]]),e._Execute(["PackagerInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
44
44
 
45
45
  /* Copyright (c) 2017-2022 by Zulch Laboratories, Inc. */
46
46
  !function(t){t.BootRoot=function(t){"use strict";t._SetBindingList("append",["function","append","lists",["function","append1",["items","result"],[["atom","items"],"result"],["cons",["car","items"],["append1",["cdr","items"],"result"]]],["function","append2",["lists","result"],[["atom","lists"],"result"],[["atom",["car","lists"]],["cons",["car","lists"],["append2",["cdr","lists"],"result"]]],["append1",["car","lists"],["append2",["cdr","lists"],"result"]]],["append2","lists"]]),t._Export("tuple","append"),t._SetBindingList("body",["macro","body","expr",["eval",["list","cond",["cons",["identity","true"],"false","expr"]]]]),t._Export("exec","body"),t._SetBindingList("sudo",["macro","sudo",["expr"],["eval","expr"]]),t._Export("local","sudo"),t._SetBindingList("evalactive",["function","evalactive",["expr"],["cond",[["nsrights",["first",["nsactive"]]],["eval","expr"]]]]),t._Export("local","evalactive"),t._SetBindingList("identity",["function","identity",["expr"],"expr"])},t.BootPlay=function(t){t._SetNamespace("Play"),t._SetBindingList("PlayInit",["function&","PlayInit",["false","manifest","export"],["=","manifest",["`",["PlayInit"]]],[".",[".","Naan","module"],"build",["$Play","$Play",["function&","lambda",["modobj","compobj"],["xset","compobj",["`","manifest"],"manifest"]]]]]),t._Execute(["PlayInit"])}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
@@ -68,6 +68,6 @@
68
68
  // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
69
69
  // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
70
70
  // USE OR OTHER DEALINGS IN THE SOFTWARE.
71
- !function(n){n.require=function(e){"use strict";var r={"./naan_interpreter.js":n.NaanInterpreter,"./bigint.js":n.LeemonBigIntegerLib,"./naan_io.js":n.NaanChannel,"./naan_lingo.js":n.BootLingo,"./naan_module.js":n.BootModule,"./naan_start.js":n.BootRoot};function A(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+typeof e)}function g(e,r){for(var t,n="",o=0,i=-1,a=0,l=0;l<=e.length;++l){if(l<e.length)t=e.charCodeAt(l);else{if(47===t||92===t)break;t=47}if(47===t||92===t){if(i!==l-1&&1!==a)if(i!==l-1&&2===a){if(n.length<2||2!==o||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2))if(2<n.length){var h=n.lastIndexOf("\\");if(h!==n.length-1){o=-1===h?(n="",0):(n=n.slice(0,h)).length-1-n.lastIndexOf("\\"),i=l,a=0;continue}}else if(2===n.length||1===n.length){n="",i=l,a=o=0;continue}r&&(0<n.length?n+="\\..":n="..",o=2)}else 0<n.length?n+="\\"+e.slice(i+1,l):n=e.slice(i+1,l),o=l-i-1;i=l,a=0}else 46===t&&-1!==a?++a:a=-1}return n}function o(e,r){for(var t,n="",o=0,i=-1,a=0,l=0;l<=e.length;++l){if(l<e.length)t=e.charCodeAt(l);else{if(47===t)break;t=47}if(47===t){if(i!==l-1&&1!==a)if(i!==l-1&&2===a){if(n.length<2||2!==o||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2))if(2<n.length){var h=n.lastIndexOf("/");if(h!==n.length-1){o=-1===h?(n="",0):(n=n.slice(0,h)).length-1-n.lastIndexOf("/"),i=l,a=0;continue}}else if(2===n.length||1===n.length){n="",i=l,a=o=0;continue}r&&(0<n.length?n+="/..":n="..",o=2)}else 0<n.length?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),o=l-i-1;i=l,a=0}else 46===t&&-1!==a?++a:a=-1}return n}function t(e,r){var t=r.dir||r.root,n=r.base||(r.name||"")+(r.ext||"");return t?t===r.root?t+n:t+e+n:n}const C={resolve:function(){for(var e="",r="",t=!1,n=arguments.length-1;-1<=n;n--){var o=0<=n?arguments[n]:"\\";if(A(o),0!==o.length){var i=o.length,a=0,l=o.charCodeAt(0),h="",f=!1;if(1<i)if(47===l||92===l)if(f=!0,47===(l=o.charCodeAt(1))||92===l){for(var c=2,s=c;c<i&&(47!==(l=o.charCodeAt(c))&&92!==l);++c);if(c<i&&c!==s){for(var d=o.slice(s,c),s=c;c<i&&(47===(l=o.charCodeAt(c))||92===l);++c);if(c<i&&c!==s){for(s=c;c<i&&(47!==(l=o.charCodeAt(c))&&92!==l);++c);c===i?(h="\\\\"+d+"\\"+o.slice(s),a=c):c!==s&&(h="\\\\"+d+"\\"+o.slice(s,c),a=c)}}}else a=1;else(65<=l&&l<=90||97<=l&&l<=122)&&58===o.charCodeAt(1)&&(h=o.slice(0,2),(a=2)<i&&(47!==(l=o.charCodeAt(2))&&92!==l||(f=!0,a=3)));else 47!==l&&92!==l||(a=1,f=!0);if(!(0<h.length&&0<e.length&&h.toLowerCase()!==e.toLowerCase())&&(0===e.length&&0<h.length&&(e=h),t||(r=o.slice(a)+"\\"+r,t=f),0<e.length&&t))break}}return e+(t?"\\":"")+(r=g(r,!t))||"."},normalize:function(e){A(e);var r=e.length;if(0===r)return".";var t,n=0,o=e.charCodeAt(0),i=!1;if(1<r)if(47===o||92===o)if(i=!0,47===(o=e.charCodeAt(1))||92===o){for(var a=2,l=a;a<r&&(47!==(o=e.charCodeAt(a))&&92!==o);++a);if(a<r&&a!==l){for(var h=e.slice(l,a),l=a;a<r&&(47===(o=e.charCodeAt(a))||92===o);++a);if(a<r&&a!==l){for(l=a;a<r&&(47!==(o=e.charCodeAt(a))&&92!==o);++a);if(a===r)return"\\\\"+h+"\\"+e.slice(l)+"\\";a!==l&&(t="\\\\"+h+"\\"+e.slice(l,a),n=a)}}}else n=1;else(65<=o&&o<=90||97<=o&&o<=122)&&58===e.charCodeAt(1)&&(t=e.slice(0,2),(n=2)<r&&(47!==(o=e.charCodeAt(2))&&92!==o||(i=!0,n=3)));else if(47===o||92===o)return"\\";l=47===(o=e.charCodeAt(r-1))||92===o,n=n<r?g(e.slice(n),!i):"";return 0!==n.length||i||(n="."),0<n.length&&l&&(n+="\\"),void 0===t?i?0<n.length?"\\"+n:"\\":0<n.length?n:"":i?0<n.length?t+"\\"+n:t+"\\":0<n.length?t+n:t},isAbsolute:function(e){A(e);var r=e.length;if(0===r)return!1;var t=e.charCodeAt(0);return 47===t||92===t||(65<=t&&t<=90||97<=t&&t<=122)&&2<r&&58===e.charCodeAt(1)&&(47===(t=e.charCodeAt(2))||92===t)},join:function(){if(0===arguments.length)return".";for(var e,r,t=0;t<arguments.length;++t){var n=arguments[t];A(n),0<n.length&&(void 0===e?e=r=n:e+="\\"+n)}if(void 0===e)return".";var o,i=!0,a=0,l=r.charCodeAt(0);if(47!==l&&92!==l||(++a,1<(o=r.length)&&(47!==(l=r.charCodeAt(1))&&92!==l||(++a,2<o&&(47===(l=r.charCodeAt(2))||92===l?++a:i=!1)))),i){for(;a<e.length&&(47===(l=e.charCodeAt(a))||92===l);++a);2<=a&&(e="\\"+e.slice(a))}return C.normalize(e)},relative:function(e,r){if(A(e),A(r),e===r)return"";var t=C.resolve(e),n=C.resolve(r);if(t===n)return"";if((e=t.toLowerCase())===(r=n.toLowerCase()))return"";for(var o=0;o<e.length&&92===e.charCodeAt(o);++o);for(var i=e.length;o<i-1&&92===e.charCodeAt(i-1);--i);for(var a=i-o,l=0;l<r.length&&92===r.charCodeAt(l);++l);for(var h=r.length;l<h-1&&92===r.charCodeAt(h-1);--h);for(var f=h-l,c=a<f?a:f,s=-1,d=0;d<=c;++d){if(d===c){if(c<f){if(92===r.charCodeAt(l+d))return n.slice(l+d+1);if(2===d)return n.slice(l+d)}c<a&&(92===e.charCodeAt(o+d)?s=d:2===d&&(s=3));break}var g=e.charCodeAt(o+d);if(g!==r.charCodeAt(l+d))break;92===g&&(s=d)}if(d!==c&&-1===s)return n;var u="";for(-1===s&&(s=0),d=o+s+1;d<=i;++d)d!==i&&92!==e.charCodeAt(d)||(0===u.length?u+="..":u+="\\..");return 0<u.length?u+n.slice(l+s,h):(l+=s,92===n.charCodeAt(l)&&++l,n.slice(l,h))},toNamespacedPath:function(e){if("string"!=typeof e)return e;if(0===e.length)return"";const r=C.resolve(e);if(3<=r.length){var t=r.charCodeAt(0);if(92===t){if(92===r.charCodeAt(1)&&63!==(t=r.charCodeAt(2))&&46!==t)return"\\\\?\\UNC\\"+r.slice(2)}else if((65<=t&&t<=90||97<=t&&t<=122)&&58===r.charCodeAt(1)&&92===r.charCodeAt(2))return"\\\\?\\"+r}return e},dirname:function(e){A(e);var r=e.length;if(0===r)return".";var t=-1,n=-1,o=!0,i=0,a=e.charCodeAt(0);if(1<r)if(47===a||92===a){if(t=i=1,47===(a=e.charCodeAt(1))||92===a){for(var l=2,h=l;l<r&&(47!==(a=e.charCodeAt(l))&&92!==a);++l);if(l<r&&l!==h){for(h=l;l<r&&(47===(a=e.charCodeAt(l))||92===a);++l);if(l<r&&l!==h){for(h=l;l<r&&(47!==(a=e.charCodeAt(l))&&92!==a);++l);if(l===r)return e;l!==h&&(t=i=l+1)}}}}else(65<=a&&a<=90||97<=a&&a<=122)&&58===e.charCodeAt(1)&&(t=i=2)<r&&(47!==(a=e.charCodeAt(2))&&92!==a||(t=i=3));else if(47===a||92===a)return e;for(var f=r-1;i<=f;--f)if(47===(a=e.charCodeAt(f))||92===a){if(!o){n=f;break}}else o=!1;if(-1===n){if(-1===t)return".";n=t}return e.slice(0,n)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","ext","string");A(e);var t,n=0,o=-1,i=!0;if(2<=e.length&&((65<=(t=e.charCodeAt(0))&&t<=90||97<=t&&t<=122)&&58===e.charCodeAt(1)&&(n=2)),void 0!==r&&0<r.length&&r.length<=e.length){if(r.length===e.length&&r===e)return"";for(var a=r.length-1,l=-1,h=e.length-1;n<=h;--h){var f=e.charCodeAt(h);if(47===f||92===f){if(!i){n=h+1;break}}else-1===l&&(i=!1,l=h+1),0<=a&&(f===r.charCodeAt(a)?-1==--a&&(o=h):(a=-1,o=l))}return n===o?o=l:-1===o&&(o=e.length),e.slice(n,o)}for(h=e.length-1;n<=h;--h){var c=e.charCodeAt(h);if(47===c||92===c){if(!i){n=h+1;break}}else-1===o&&(i=!1,o=h+1)}return-1===o?"":e.slice(n,o)},extname:function(e){A(e);var r,t=0,n=-1,o=0,i=-1,a=!0,l=0;2<=e.length&&(r=e.charCodeAt(0),58===e.charCodeAt(1)&&(65<=r&&r<=90||97<=r&&r<=122)&&(t=o=2));for(var h=e.length-1;t<=h;--h){var f=e.charCodeAt(h);if(47===f||92===f){if(a)continue;o=h+1;break}-1===i&&(a=!1,i=h+1),46===f?-1===n?n=h:1!==l&&(l=1):-1!==n&&(l=-1)}return-1===n||-1===i||0===l||1===l&&n===i-1&&n===o+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","pathObject","Object",e);return t("\\",e)},parse:function(e){A(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var t=e.length,n=0,o=e.charCodeAt(0);if(1<t){if(47===o||92===o){if(n=1,47===(o=e.charCodeAt(1))||92===o){for(var i=2,a=i;i<t&&(47!==(o=e.charCodeAt(i))&&92!==o);++i);if(i<t&&i!==a){for(a=i;i<t&&(47===(o=e.charCodeAt(i))||92===o);++i);if(i<t&&i!==a){for(a=i;i<t&&(47!==(o=e.charCodeAt(i))&&92!==o);++i);i===t?n=i:i!==a&&(n=i+1)}}}}else if((65<=o&&o<=90||97<=o&&o<=122)&&58===e.charCodeAt(1)){if(!((n=2)<t))return r.root=r.dir=e,r;if(47===(o=e.charCodeAt(2))||92===o){if(3===t)return r.root=r.dir=e,r;n=3}}}else if(47===o||92===o)return r.root=r.dir=e,r;0<n&&(r.root=e.slice(0,n));for(var l=-1,h=n,f=-1,c=!0,s=e.length-1,d=0;n<=s;--s){if(47===(o=e.charCodeAt(s))||92===o){if(c)continue;h=s+1;break}-1===f&&(c=!1,f=s+1),46===o?-1===l?l=s:1!==d&&(d=1):-1!==l&&(d=-1)}return-1===l||-1===f||0===d||1===d&&l===f-1&&l===h+1?-1!==f&&(r.base=r.name=e.slice(h,f)):(r.name=e.slice(h,l),r.base=e.slice(h,f),r.ext=e.slice(l,f)),r.dir=0<h&&h!==n?e.slice(0,h-1):r.root,r},sep:"\\",delimiter:";",win32:null,posix:null},d={resolve:function(){for(var e="",r=!1,t=arguments.length-1;-1<=t&&!r;t--){var n=0<=t?arguments[t]:void 0;A(n),0!==n.length&&(e=n+"/"+e,r=47===n.charCodeAt(0))}return e=o(e,!r),r?0<e.length?"/"+e:"/":0<e.length?e:"."},normalize:function(e){if(A(e),0===e.length)return".";var r=47===e.charCodeAt(0),t=47===e.charCodeAt(e.length-1);return 0!==(e=o(e,!r)).length||r||(e="."),0<e.length&&t&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return A(e),0<e.length&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var t=arguments[r];A(t),0<t.length&&(void 0===e?e=t:e+="/"+t)}return void 0===e?".":d.normalize(e)},relative:function(e,r){if(A(e),A(r),e===r)return"";if((e=d.resolve(e))===(r=d.resolve(r)))return"";for(var t=1;t<e.length&&47===e.charCodeAt(t);++t);for(var n=e.length,o=n-t,i=1;i<r.length&&47===r.charCodeAt(i);++i);for(var a=r.length-i,l=o<a?o:a,h=-1,f=0;f<=l;++f){if(f===l){if(l<a){if(47===r.charCodeAt(i+f))return r.slice(i+f+1);if(0===f)return r.slice(i+f)}else l<o&&(47===e.charCodeAt(t+f)?h=f:0===f&&(h=0));break}var c=e.charCodeAt(t+f);if(c!==r.charCodeAt(i+f))break;47===c&&(h=f)}for(var s="",f=t+h+1;f<=n;++f)f!==n&&47!==e.charCodeAt(f)||(0===s.length?s+="..":s+="/..");return 0<s.length?s+r.slice(i+h):(i+=h,47===r.charCodeAt(i)&&++i,r.slice(i))},toNamespacedPath:function(e){return e},dirname:function(e){if(A(e),0===e.length)return".";for(var r=e.charCodeAt(0),t=47===r,n=-1,o=!0,i=e.length-1;1<=i;--i)if(47===e.charCodeAt(i)){if(!o){n=i;break}}else o=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","ext","string");A(e);var t=0,n=-1,o=!0;if(void 0!==r&&0<r.length&&r.length<=e.length){if(r.length===e.length&&r===e)return"";for(var i=r.length-1,a=-1,l=e.length-1;0<=l;--l){var h=e.charCodeAt(l);if(47===h){if(!o){t=l+1;break}}else-1===a&&(o=!1,a=l+1),0<=i&&(h===r.charCodeAt(i)?-1==--i&&(n=l):(i=-1,n=a))}return t===n?n=a:-1===n&&(n=e.length),e.slice(t,n)}for(l=e.length-1;0<=l;--l)if(47===e.charCodeAt(l)){if(!o){t=l+1;break}}else-1===n&&(o=!1,n=l+1);return-1===n?"":e.slice(t,n)},extname:function(e){A(e);for(var r=-1,t=0,n=-1,o=!0,i=0,a=e.length-1;0<=a;--a){var l=e.charCodeAt(a);if(47===l){if(o)continue;t=a+1;break}-1===n&&(o=!1,n=a+1),46===l?-1===r?r=a:1!==i&&(i=1):-1!==r&&(i=-1)}return-1===r||-1===n||0===i||1===i&&r===n-1&&r===t+1?"":e.slice(r,n)},format:function(e){if(null===e||"object"!=typeof e)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","pathObject","Object",e);return t("/",e)},parse:function(e){A(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;for(var t=e.charCodeAt(0),n=47===t,o=n?(r.root="/",1):0,i=-1,a=0,l=-1,h=!0,f=e.length-1,c=0;o<=f;--f){if(47===(t=e.charCodeAt(f))){if(h)continue;a=f+1;break}-1===l&&(h=!1,l=f+1),46===t?-1===i?i=f:1!==c&&(c=1):-1!==i&&(c=-1)}return-1===i||-1===l||0===c||1===c&&i===l-1&&i===a+1?-1!==l&&(r.base=r.name=0===a&&n?e.slice(1,l):e.slice(a,l)):(0===a&&n?(r.name=e.slice(1,i),r.base=e.slice(1,l)):(r.name=e.slice(a,i),r.base=e.slice(a,l)),r.ext=e.slice(i,l)),0<a?r.dir=e.slice(0,a-1):n&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};return d.win32=C.win32=C,d.posix=C.posix=d,r.path=d,r[e]}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
71
+ !function(n){n.require=function(e){"use strict";var r={"./naan_interpreter.js":n.NaanInterpreter,"./bigint.js":n.LeemonBigIntegerLib,"./naan_io.js":n.NaanChannel,"./naan_lingo.js":n.BootLingo,"./naan_module.js":n.BootModule,"./naan_start.js":n.BootRoot};function A(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+typeof e)}function g(e,r){for(var t,n="",o=0,i=-1,a=0,l=0;l<=e.length;++l){if(l<e.length)t=e.charCodeAt(l);else{if(47===t||92===t)break;t=47}if(47===t||92===t){if(i!==l-1&&1!==a)if(i!==l-1&&2===a){if(n.length<2||2!==o||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2))if(2<n.length){var h=n.lastIndexOf("\\");if(h!==n.length-1){o=-1===h?(n="",0):(n=n.slice(0,h)).length-1-n.lastIndexOf("\\"),i=l,a=0;continue}}else if(2===n.length||1===n.length){n="",i=l,a=o=0;continue}r&&(0<n.length?n+="\\..":n="..",o=2)}else 0<n.length?n+="\\"+e.slice(i+1,l):n=e.slice(i+1,l),o=l-i-1;i=l,a=0}else 46===t&&-1!==a?++a:a=-1}return n}function o(e,r){for(var t,n="",o=0,i=-1,a=0,l=0;l<=e.length;++l){if(l<e.length)t=e.charCodeAt(l);else{if(47===t)break;t=47}if(47===t){if(i!==l-1&&1!==a)if(i!==l-1&&2===a){if(n.length<2||2!==o||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2))if(2<n.length){var h=n.lastIndexOf("/");if(h!==n.length-1){o=-1===h?(n="",0):(n=n.slice(0,h)).length-1-n.lastIndexOf("/"),i=l,a=0;continue}}else if(2===n.length||1===n.length){n="",i=l,a=o=0;continue}r&&(0<n.length?n+="/..":n="..",o=2)}else 0<n.length?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),o=l-i-1;i=l,a=0}else 46===t&&-1!==a?++a:a=-1}return n}function t(e,r){var t=r.dir||r.root,n=r.base||(r.name||"")+(r.ext||"");return t?t===r.root?t+n:t+e+n:n}const C={resolve:function(){for(var e="",r="",t=!1,n=arguments.length-1;-1<=n;n--){var o=0<=n?arguments[n]:"\\";if(A(o),0!==o.length){var i=o.length,a=0,l=o.charCodeAt(0),h="",f=!1;if(1<i)if(47===l||92===l)if(f=!0,47===(l=o.charCodeAt(1))||92===l){for(var c=2,s=c;c<i&&(47!==(l=o.charCodeAt(c))&&92!==l);++c);if(c<i&&c!==s){for(var d=o.slice(s,c),s=c;c<i&&(47===(l=o.charCodeAt(c))||92===l);++c);if(c<i&&c!==s){for(s=c;c<i&&(47!==(l=o.charCodeAt(c))&&92!==l);++c);c===i?(h="\\\\"+d+"\\"+o.slice(s),a=c):c!==s&&(h="\\\\"+d+"\\"+o.slice(s,c),a=c)}}}else a=1;else(65<=l&&l<=90||97<=l&&l<=122)&&58===o.charCodeAt(1)&&(h=o.slice(0,2),(a=2)<i&&(47!==(l=o.charCodeAt(2))&&92!==l||(f=!0,a=3)));else 47!==l&&92!==l||(a=1,f=!0);if(!(0<h.length&&0<e.length&&h.toLowerCase()!==e.toLowerCase())&&(0===e.length&&0<h.length&&(e=h),t||(r=o.slice(a)+"\\"+r,t=f),0<e.length&&t))break}}return e+(t?"\\":"")+(r=g(r,!t))||"."},normalize:function(e){A(e);var r=e.length;if(0===r)return".";var t,n=0,o=e.charCodeAt(0),i=!1;if(1<r)if(47===o||92===o)if(i=!0,47===(o=e.charCodeAt(1))||92===o){for(var a=2,l=a;a<r&&(47!==(o=e.charCodeAt(a))&&92!==o);++a);if(a<r&&a!==l){for(var h=e.slice(l,a),l=a;a<r&&(47===(o=e.charCodeAt(a))||92===o);++a);if(a<r&&a!==l){for(l=a;a<r&&(47!==(o=e.charCodeAt(a))&&92!==o);++a);if(a===r)return"\\\\"+h+"\\"+e.slice(l)+"\\";a!==l&&(t="\\\\"+h+"\\"+e.slice(l,a),n=a)}}}else n=1;else(65<=o&&o<=90||97<=o&&o<=122)&&58===e.charCodeAt(1)&&(t=e.slice(0,2),(n=2)<r&&(47!==(o=e.charCodeAt(2))&&92!==o||(i=!0,n=3)));else if(47===o||92===o)return"\\";l=47===(o=e.charCodeAt(r-1))||92===o,n=n<r?g(e.slice(n),!i):"";return 0!==n.length||i||(n="."),0<n.length&&l&&(n+="\\"),void 0===t?i?0<n.length?"\\"+n:"\\":0<n.length?n:"":i?0<n.length?t+"\\"+n:t+"\\":0<n.length?t+n:t},isAbsolute:function(e){A(e);var r=e.length;if(0===r)return!1;var t=e.charCodeAt(0);return 47===t||92===t||(65<=t&&t<=90||97<=t&&t<=122)&&2<r&&58===e.charCodeAt(1)&&(47===(t=e.charCodeAt(2))||92===t)},join:function(){if(0===arguments.length)return".";for(var e,r,t=0;t<arguments.length;++t){var n=arguments[t];A(n),0<n.length&&(void 0===e?e=r=n:e+="\\"+n)}if(void 0===e)return".";var o,i=!0,a=0,l=r.charCodeAt(0);if(47!==l&&92!==l||(++a,1<(o=r.length)&&(47!==(l=r.charCodeAt(1))&&92!==l||(++a,2<o&&(47===(l=r.charCodeAt(2))||92===l?++a:i=!1)))),i){for(;a<e.length&&(47===(l=e.charCodeAt(a))||92===l);++a);2<=a&&(e="\\"+e.slice(a))}return C.normalize(e)},relative:function(e,r){if(A(e),A(r),e===r)return"";var t=C.resolve(e),n=C.resolve(r);if(t===n)return"";if((e=t.toLowerCase())===(r=n.toLowerCase()))return"";for(var o=0;o<e.length&&92===e.charCodeAt(o);++o);for(var i=e.length;o<i-1&&92===e.charCodeAt(i-1);--i);for(var a=i-o,l=0;l<r.length&&92===r.charCodeAt(l);++l);for(var h=r.length;l<h-1&&92===r.charCodeAt(h-1);--h);for(var f=h-l,c=a<f?a:f,s=-1,d=0;d<=c;++d){if(d===c){if(c<f){if(92===r.charCodeAt(l+d))return n.slice(l+d+1);if(2===d)return n.slice(l+d)}c<a&&(92===e.charCodeAt(o+d)?s=d:2===d&&(s=3));break}var g=e.charCodeAt(o+d);if(g!==r.charCodeAt(l+d))break;92===g&&(s=d)}if(d!==c&&-1===s)return n;var u="";for(-1===s&&(s=0),d=o+s+1;d<=i;++d)d!==i&&92!==e.charCodeAt(d)||(0===u.length?u+="..":u+="\\..");return 0<u.length?u+n.slice(l+s,h):(l+=s,92===n.charCodeAt(l)&&++l,n.slice(l,h))},toNamespacedPath:function(e){if("string"!=typeof e)return e;if(0===e.length)return"";const r=C.resolve(e);if(3<=r.length){var t=r.charCodeAt(0);if(92===t){if(92===r.charCodeAt(1)&&63!==(t=r.charCodeAt(2))&&46!==t)return"\\\\?\\UNC\\"+r.slice(2)}else if((65<=t&&t<=90||97<=t&&t<=122)&&58===r.charCodeAt(1)&&92===r.charCodeAt(2))return"\\\\?\\"+r}return e},dirname:function(e){A(e);var r=e.length;if(0===r)return".";var t=-1,n=-1,o=!0,i=0,a=e.charCodeAt(0);if(1<r)if(47===a||92===a){if(t=i=1,47===(a=e.charCodeAt(1))||92===a){for(var l=2,h=l;l<r&&(47!==(a=e.charCodeAt(l))&&92!==a);++l);if(l<r&&l!==h){for(h=l;l<r&&(47===(a=e.charCodeAt(l))||92===a);++l);if(l<r&&l!==h){for(h=l;l<r&&(47!==(a=e.charCodeAt(l))&&92!==a);++l);if(l===r)return e;l!==h&&(t=i=l+1)}}}}else(65<=a&&a<=90||97<=a&&a<=122)&&58===e.charCodeAt(1)&&(t=i=2)<r&&(47!==(a=e.charCodeAt(2))&&92!==a||(t=i=3));else if(47===a||92===a)return e;for(var f=r-1;i<=f;--f)if(47===(a=e.charCodeAt(f))||92===a){if(!o){n=f;break}}else o=!1;if(-1===n){if(-1===t)return".";n=t}return e.slice(0,n)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","ext","string");A(e);var t,n=0,o=-1,i=!0;if(2<=e.length&&((65<=(t=e.charCodeAt(0))&&t<=90||97<=t&&t<=122)&&58===e.charCodeAt(1)&&(n=2)),void 0!==r&&0<r.length&&r.length<=e.length){if(r.length===e.length&&r===e)return"";for(var a=r.length-1,l=-1,h=e.length-1;n<=h;--h){var f=e.charCodeAt(h);if(47===f||92===f){if(!i){n=h+1;break}}else-1===l&&(i=!1,l=h+1),0<=a&&(f===r.charCodeAt(a)?-1==--a&&(o=h):(a=-1,o=l))}return n===o?o=l:-1===o&&(o=e.length),e.slice(n,o)}for(h=e.length-1;n<=h;--h){var c=e.charCodeAt(h);if(47===c||92===c){if(!i){n=h+1;break}}else-1===o&&(i=!1,o=h+1)}return-1===o?"":e.slice(n,o)},extname:function(e){A(e);var r,t=0,n=-1,o=0,i=-1,a=!0,l=0;2<=e.length&&(r=e.charCodeAt(0),58===e.charCodeAt(1)&&(65<=r&&r<=90||97<=r&&r<=122)&&(t=o=2));for(var h=e.length-1;t<=h;--h){var f=e.charCodeAt(h);if(47===f||92===f){if(a)continue;o=h+1;break}-1===i&&(a=!1,i=h+1),46===f?-1===n?n=h:1!==l&&(l=1):-1!==n&&(l=-1)}return-1===n||-1===i||0===l||1===l&&n===i-1&&n===o+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","pathObject","Object",e);return t("\\",e)},parse:function(e){A(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var t=e.length,n=0,o=e.charCodeAt(0);if(1<t){if(47===o||92===o){if(n=1,47===(o=e.charCodeAt(1))||92===o){for(var i=2,a=i;i<t&&(47!==(o=e.charCodeAt(i))&&92!==o);++i);if(i<t&&i!==a){for(a=i;i<t&&(47===(o=e.charCodeAt(i))||92===o);++i);if(i<t&&i!==a){for(a=i;i<t&&(47!==(o=e.charCodeAt(i))&&92!==o);++i);i===t?n=i:i!==a&&(n=i+1)}}}}else if((65<=o&&o<=90||97<=o&&o<=122)&&58===e.charCodeAt(1)){if(!((n=2)<t))return r.root=r.dir=e,r;if(47===(o=e.charCodeAt(2))||92===o){if(3===t)return r.root=r.dir=e,r;n=3}}}else if(47===o||92===o)return r.root=r.dir=e,r;0<n&&(r.root=e.slice(0,n));for(var l=-1,h=n,f=-1,c=!0,s=e.length-1,d=0;n<=s;--s){if(47===(o=e.charCodeAt(s))||92===o){if(c)continue;h=s+1;break}-1===f&&(c=!1,f=s+1),46===o?-1===l?l=s:1!==d&&(d=1):-1!==l&&(d=-1)}return-1===l||-1===f||0===d||1===d&&l===f-1&&l===h+1?-1!==f&&(r.base=r.name=e.slice(h,f)):(r.name=e.slice(h,l),r.base=e.slice(h,f),r.ext=e.slice(l,f)),r.dir=0<h&&h!==n?e.slice(0,h-1):r.root,r},sep:"\\",delimiter:";",win32:null,posix:null},d={resolve:function(){for(var e="",r=!1,t=arguments.length-1;-1<=t&&!r;t--){var n=0<=t?arguments[t]:"";A(n),0!==n.length&&(e=n+"/"+e,r=47===n.charCodeAt(0))}return e=o(e,!r),r?0<e.length?"/"+e:"/":0<e.length?e:"."},normalize:function(e){if(A(e),0===e.length)return".";var r=47===e.charCodeAt(0),t=47===e.charCodeAt(e.length-1);return 0!==(e=o(e,!r)).length||r||(e="."),0<e.length&&t&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return A(e),0<e.length&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var t=arguments[r];A(t),0<t.length&&(void 0===e?e=t:e+="/"+t)}return void 0===e?".":d.normalize(e)},relative:function(e,r){if(A(e),A(r),e===r)return"";if((e=d.resolve(e))===(r=d.resolve(r)))return"";for(var t=1;t<e.length&&47===e.charCodeAt(t);++t);for(var n=e.length,o=n-t,i=1;i<r.length&&47===r.charCodeAt(i);++i);for(var a=r.length-i,l=o<a?o:a,h=-1,f=0;f<=l;++f){if(f===l){if(l<a){if(47===r.charCodeAt(i+f))return r.slice(i+f+1);if(0===f)return r.slice(i+f)}else l<o&&(47===e.charCodeAt(t+f)?h=f:0===f&&(h=0));break}var c=e.charCodeAt(t+f);if(c!==r.charCodeAt(i+f))break;47===c&&(h=f)}for(var s="",f=t+h+1;f<=n;++f)f!==n&&47!==e.charCodeAt(f)||(0===s.length?s+="..":s+="/..");return 0<s.length?s+r.slice(i+h):(i+=h,47===r.charCodeAt(i)&&++i,r.slice(i))},toNamespacedPath:function(e){return e},dirname:function(e){if(A(e),0===e.length)return".";for(var r=e.charCodeAt(0),t=47===r,n=-1,o=!0,i=e.length-1;1<=i;--i)if(47===e.charCodeAt(i)){if(!o){n=i;break}}else o=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","ext","string");A(e);var t=0,n=-1,o=!0;if(void 0!==r&&0<r.length&&r.length<=e.length){if(r.length===e.length&&r===e)return"";for(var i=r.length-1,a=-1,l=e.length-1;0<=l;--l){var h=e.charCodeAt(l);if(47===h){if(!o){t=l+1;break}}else-1===a&&(o=!1,a=l+1),0<=i&&(h===r.charCodeAt(i)?-1==--i&&(n=l):(i=-1,n=a))}return t===n?n=a:-1===n&&(n=e.length),e.slice(t,n)}for(l=e.length-1;0<=l;--l)if(47===e.charCodeAt(l)){if(!o){t=l+1;break}}else-1===n&&(o=!1,n=l+1);return-1===n?"":e.slice(t,n)},extname:function(e){A(e);for(var r=-1,t=0,n=-1,o=!0,i=0,a=e.length-1;0<=a;--a){var l=e.charCodeAt(a);if(47===l){if(o)continue;t=a+1;break}-1===n&&(o=!1,n=a+1),46===l?-1===r?r=a:1!==i&&(i=1):-1!==r&&(i=-1)}return-1===r||-1===n||0===i||1===i&&r===n-1&&r===t+1?"":e.slice(r,n)},format:function(e){if(null===e||"object"!=typeof e)throw new errors.TypeError("ERR_INVALID_ARG_TYPE","pathObject","Object",e);return t("/",e)},parse:function(e){A(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;for(var t=e.charCodeAt(0),n=47===t,o=n?(r.root="/",1):0,i=-1,a=0,l=-1,h=!0,f=e.length-1,c=0;o<=f;--f){if(47===(t=e.charCodeAt(f))){if(h)continue;a=f+1;break}-1===l&&(h=!1,l=f+1),46===t?-1===i?i=f:1!==c&&(c=1):-1!==i&&(c=-1)}return-1===i||-1===l||0===c||1===c&&i===l-1&&i===a+1?-1!==l&&(r.base=r.name=0===a&&n?e.slice(1,l):e.slice(a,l)):(0===a&&n?(r.name=e.slice(1,i),r.base=e.slice(1,l)):(r.name=e.slice(a,i),r.base=e.slice(a,l)),r.ext=e.slice(i,l)),0<a?r.dir=e.slice(0,a-1):n&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};return d.win32=C.win32=C,d.posix=C.posix=d,r.path=d,r[e]}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
72
72
 
73
73
  })(typeof exports === 'undefined'? this['Naanlang']={}: exports);