@naanlang/naan 1.4.0 → 1.4.1

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 (39) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +1 -1
  3. package/bin/index.js +25 -15
  4. package/dist/naan.min.js +5 -5
  5. package/frameworks/browser/sworker.js +23 -23
  6. package/frameworks/browser/terminals.nlg +1 -1
  7. package/frameworks/client/psm_client.nlg +2 -0
  8. package/frameworks/client/relaycon.nlg +1 -1
  9. package/frameworks/common/common.nlg +5 -2
  10. package/frameworks/node/filesystem.nlg +5 -4
  11. package/frameworks/node/psm_server.nlg +1 -1
  12. package/frameworks/node/shell.nlg +134 -0
  13. package/frameworks/node/worker.nlg +1 -1
  14. package/frameworks/project/build.nlg +1 -1
  15. package/frameworks/project/projects.nlg +1 -1
  16. package/frameworks/running/debugnub.nlg +102 -12
  17. package/frameworks/running/debugutil.nlg +30 -13
  18. package/frameworks/running/running.nlg +2 -2
  19. package/frameworks/running/sourcecode.nlg +3 -1
  20. package/frameworks/storage/dbt_pouch.nlg +29 -16
  21. package/frameworks/storage/file_manager.nlg +1 -1
  22. package/frameworks/storage/psm_dbtables.nlg +21 -22
  23. package/frameworks/storage/resources.nlg +12 -4
  24. package/frameworks/storage/storage.nlg +2 -2
  25. package/lib/browser/env_web.js +6 -6
  26. package/lib/core/naanlib.js +5 -5
  27. package/package.json +1 -1
  28. package/plugins/gitClient/gitClient.nlg +3 -3
  29. package/plugins/openSearch/openSearch.nlg +2 -2
  30. package/plugins/serviceAws/psm_aws.nlg +4 -2
  31. package/plugins/serviceAws/serviceAws.nlg +1 -1
  32. package/plugins/serviceGC/gc_api.nlg +4 -4
  33. package/plugins/serviceGitHub/serviceGitHub.nlg +1 -1
  34. package/plugins/serviceGitLab/psm_gitlab.nlg +1 -1
  35. package/plugins/serviceGitLab/serviceGitLab.nlg +1 -1
  36. package/test/harness.nlg +9 -9
  37. package/test/test_01_core.nlg +24 -2
  38. package/test/test_02_context.nlg +1 -1
  39. package/plugins/serviceGC/russian_trusted_root_ca_pem.crt +0 -33
package/dist/naan.min.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * naan.min.js
3
3
  *
4
- * Naan for NPM version 1.4.0+1 is released under the MIT License:
4
+ * Naan for NPM version 1.4.1+1 is released under the MIT License:
5
5
  *
6
6
  * Copyright (c) 2017-2024 Zulch Laboratories, Inc.
7
7
  *
@@ -31,19 +31,19 @@
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-2024 by Zulch Laboratories, Inc. */
34
- !function(gl){gl.NaanInterpreter=function(){"use strict";var e=gl.LeemonBigIntegerLib?gl:require("./bigint.js"),s=new e.LeemonBigIntegerLib,b=gl.NaanChannel?gl: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},L;function B(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.apply(e)}function u(e){return e.prototype&&e.prototype.constructor.name}var i=Math.log2(Number.MAX_SAFE_INTEGER),a=Math.log2(Number.MAX_VALUE),n=131072,p="\b\f\n\0\r\t\v ~`@#$%^&*()_+-={}|[]\\:\";'<>?,./",y=this,D=1,X=2,z=3,G=4,Z=5,J=6,O=7,V=8,Q=9,k=10,r=10,g=0,S=1,N=2,f=2,U=3,H=4,Y=5,w=2,K=3,ee=3,re=3,ne=3,x=3,j=2,te=3,ie=4,v=N+1,P=Y+1,t=K+1,o=ee+1,c=re+1,d=N+1,h=x+1,ae=ie+1,T={},ue=null;function A(e){return e&&e!==ue&&e!==Xe&&e!==ze}function I(e){return e===Ue||e===Je||e===Ve||e===Qe||e===He||e===Ye}function E(e){return e?Ge:ue}function M(e){return e===L?Xe:null===e?ze:e}function $(e){for(var r=ue,n=e.length-1;0<=n;--n)r=Le(e[n],r);return r}function q(e){for(var r=[];e[g]===D;)r.push(e[S]),e=e[N];return r}function _(e){for(var r=Zu();e[g]===D;){var n=e[S];n[g]===D&&xo(r,n[S],n[N]),e=e[N]}return r}function R(e,r){for(var n=Object.getOwnPropertyNames(r),t=0;t<n.length;++t){var i=n[t];e[i]=r[i]}}function F(e,r){return e===ue?ue:(r&&r!==ue||(r=Zu()),$c(e)!==ue&&R(r[x],e[x]),r)}function W(e){for(var r=0;e[0]===X;){if(++r>zt)return ue;if(e[U]!==ue)e=e[U];else{if(e[1]===e)break;e=e[1]}}return e}var oe=[],fe=[],ce,se,le,pe,C=1e5;function ge(){oe=[],fe=[],ce=ve(We("NaanRoot")),se=ve(We("NaanCore")),le=ve(We("NaanConst")),oe.pop(),fe.push(se),pe=ce}function ve(e,r){return e===L?ue:(r===L&&(r=new Array(ae)),r[0]=k,(r[1]=r)[2]=e,r[3]=[],r[4]={},oe.push(r),r)}function de(e){e=e&&e[0]===k?Os(e[j]):"nowhere";return e}function he(e,r){for(var n=[],t=$(fe);e[g]===D;){var i=e[S];i===ue&&(i=ce),i[0]===k&&n.indexOf(i)<0&&n.push(i),e=e[N]}if(0<n.length){if(!r&&n[0]!==fe[0]&&pe!=n[0]&&pe!==ce)return Ja(De(["internal","$"+Os(pe)+": no privileges to activate "+de(n[0])])),ue;fe=n}return t}function be(l){var e,r,n,p=new WeakMap,g={};function v(e){e=function e(r){var n;if("object"!=typeof r)return r;if(p.get(r))return p.get(r);switch(p.set(r,r),r[0]){case D:for(var t=r;;){var i=t[1],a=t[2];if(t[1]=v(i),a===ue)break;if(a[0]!==D){t[2]=v(a);break}if(t=a,p.get(t))break;p.set(t,t)}return r;case Q:if(r[H]===l)p.set(r,ue),r=ue;else if(zu(r[x])){var u=r[x];if(B(r[x]))for(var o=0;o<u.length;++o)(n=e(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=e(u[f=c[s]]))===g?delete u[f]:u[f]=n}return r;case X:return r[H]===l?((r[1]=r)[2]=ue,r[3]=ue,r[4]=ue):(r[1]=v(r[1]),r[2]=v(r[2]),r[3]=v(r[3])),r}return r}(e);return e===g?ue:e}for(p.set(g,g),p.set(l,g),e=0;e<oe.length;++e)if(oe[e]!==l)for(n=oe[e][te],r=0;r<n.length;++r)v(n[r]);for(var t=1;t<=xt;++t)wt[t-1]=v(wt[t-1]);var i=fe.indexOf(l);0<=i&&fe.splice(i,1),0<=(i=oe.indexOf(l))&&oe.splice(i,1)}function ye(o){var e,r,n,f=new WeakMap,c=[];function s(e){if("object"==typeof e&&!f.get(e))switch(f.set(e,e),e[0]){case D:for(var r=e;;){s(r[1]);var n=r[2];if(n===ue)break;if(n[0]!==D){s(n);break}if(r=n,f.get(r))break;f.set(r,r)}break;case Q:if(zu(e[x])){var t=e[x];if(B(e[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 X:e[Y]===o&&c.push(e),s(e[1]),s(e[2]),s(e[3])}}for(e=0;e<oe.length;++e)for(n=oe[e][te],r=0;r<n.length;++r)s(n[r]);for(var t=1;t<=xt;++t)s(wt[t-1]);return c}function me(e){for(var r=0;r<fe.length;++r){var n=fe[r];if(n[ie].hasOwnProperty(e)){var t=n[ie][e];return n[te][t]}}return!1}function ke(e){if(e[H][0]!==k)return ue;var r,n=e[H][ie][e[Y]];if(e[H][te][n]!==e)return ue;for(r=0;r<fe.length;++r){var t=fe[r];if(t[ie].hasOwnProperty(e[Y]))return n=t[ie][e[Y]],t[te][n]===e?ue:e[H]}return e[H]}function we(e,r){return!!r[ie].hasOwnProperty(e)&&r[te][r[ie][e]]}var xe={};function Oe(e){var r=new Array(P);return ue||(ue=r,ge()),r[0]=X,(r[1]=r)[2]=ue,r[3]=ue,r[4]=ue,r[5]=e,r}function Se(e,r){var n=e[Y],t=r[ie][n];return r[te][t]===e||((e[H]=r)[ie][n]=r[te].length,r[te].push(e)),e}function Ne(e){var r=me(e);return r||Se(r=Oe(e),fe[0])}function je(e){e=me(e);return e||ue}function Pe(e,r){var n,t;for(n in r)if(t=we(e,r[n]))return t;return ue}function Te(e,r){return Pe(r,[e[H],ce,se])}function Ae(e){if(e[H][0]!==k)return-1;var r=oe.indexOf(e[H]);if(r<0)return Ou(hu,"can't find namespace for symbol \""+e[Y]+'"'),0;var n=r*C,r=oe[r][ie][e[Y]];return"number"!=typeof r?(Ou(hu,"can't find interned symbol \""+e[Y]+'"'),0):n+r}function Ie(e,r){e=Ne(e);return e===ue&&Ou(hu,"can't set that: "+r),e===ue?ue:(r===L?r=e:"string"==typeof r?r=Ne(r):"number"==typeof r&&(r=_o(r)),e[1]=r,e)}function Ee(e,r){var n=new Array(d);return n[0]=r,(n[1]=n)[2]=ue,n[3]=e,n}function Me(e,r,n,t){var i=(t?Oe:Ne)(e);i===ue&&Ou(hu,"can't add builtin \""+i+'"');var a=new Array(d);return a[0]=n,(a[1]=a)[2]=i,a[3]=r,i[U]=a,t||(xe[e]=r),i}function $e(e){for(var r=Object.getOwnPropertyNames(xe),n=0;n<r.length;++n)if(xe[r[n]]===e)return r[n];return L}function qe(e,r){var n,t=Be(e);if(t===ue)return ue;for(n=0;n<r.length;++n){var i=r[n];if("object"!=typeof i)return ue;if(!(i.length<2)){var a=i[0];if("string"!=typeof a)return ue;rs(t,Be(a),Be(i[1]))}}return t}function _e(e,r){e=Ne(e);return A(e)||Ou(hu,"can't add that: "+r),e[U]=r,e}function Re(e){e=zr(e,fe[0]);return"string"==typeof e?(Ou(hu,"can't create closure: "+e),ue):e}function Fe(e){return e[0]===X?e[Y]:e[0]===z?e[K]:""}function We(e){var r=new Array(t);return r[0]=z,(r[1]=r)[2]=ue,r[3]=e,r}function Ce(e){var r=new Array(h);return r[0]=Q,(r[1]=r)[2]=ue,r[3]=e,r[4]=ue,r}function Le(e,r){var n=new Array(v);return n[0]=D,n[1]=e,n[2]=r,n}function Be(e){if("string"==typeof e)return 1<e.length&&"."==e.substring(0,1)?Ro(parseFloat(e.substring(1))):"$"==e.substring(0,1)?We(e.substring(1)):("\\"==e.substring(0,1)&&(e=e.substring(1)),Dr(e));if("number"==typeof e)return _o(e);if("object"==typeof e){if(B(e)){for(var r=ue,n=r,t=0;t<e.length;++t){var i=new Array(v);i[0]=D,i[1]=Be(e[t]),n!==(i[2]=ue)?n[2]=i:r=i,n=i}return r}if(e.hasOwnProperty("dictionary")){var a=new Gu,u=e.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]=Be(u[o[t]])}var c=Ce(a);return e.tag!==L&&(c[2]=Be(e.tag)),c}if(e.hasOwnProperty("array")){var s=[];for(u=e.array,s[Lu]=Bu,t=0;t<u.length;++t)s[t]=Be(u[t]);return Ce(s)}if(e.hasOwnProperty("xobject"))return Ce(e.xobject)}return Ou(yu,"naanParseJsValue warning: can't parse "+typeof e),ue}function De(e){var r=fe;(fe=fe.slice()).push(ce);e=Be(e);return fe=r,e}Ne("false");var Xe=Ne("undefined"),ze=Ne("null"),Ge=Ne("true"),Ze=Ne("lambda"),Je=Ne("function"),Ve=Ne("function&"),Qe=Ne("macro"),Ue=Ne("closure"),He=Ne("let"),Ye=Ne("let&"),Ke=Ne("var"),er=Ne("exception"),rr=Ne("escape"),nr=Ne("this"),tr=Ne("self"),ir=Ne("`"),ar=Ne("deref"),ur=Ne("."),or=Ne("body"),fr=Ne("loop"),cr=Ne("catch"),sr=Ne("interrupt"),lr=Ne("list"),pr=Ne("Naan"),gr=Ne("builtin"),vr=Ne("tuple"),dr=Ne("symbol"),hr=Ne("integer"),br=Ne("float"),yr=Ne("numeric"),mr=Ne("string"),kr=Ne("array"),wr=Ne("dictionary"),xr=Ne("object"),Or=Ne("xobject"),Sr=Ne("namespace"),Nr=Ne("nonce"),jr=Ne("weakmap"),Pr=Ne("textstream"),Tr=Ne("sprint"),Ar=Ne("$");Ne("driver"),Ne("App"),Ne("identity"),Ne("js"),function(){for(var e in l)l.hasOwnProperty(e)&&Ne(e)}();var Ir=Ie("cr","\n"),Er=Ne("space");Er[1]=We(" "),Ie("doublequote",'"'),Ie("rpar",")"),Ie("lpar","("),Ie("comma",","),Ie("quote","`"),Ie("period","."),Ie("sprint",ue),fe=[ce,se];var Mr=We(".closure"),$r=We(".tostring"),qr=Ne("throw"),_r=Ne("call"),Rr=Ne("arraycall"),Fr=Ne("xget"),Wr=Ne("xset"),Cr=Ne("xcall"),Lr=Ne("xapply");function Br(e){if(pr[1][0]!==Q)return ue;for(var r=Object.getOwnPropertyNames(pr[1][x]),n=0;n<r.length;++n){var t=pr[1][x][r[n]][x];if(t.hasOwnProperty(e)){if(t[e][0]===X)return t[e];break}}return ue}function Dr(e){var r=me(e);if(r)return r;if(r=Ne(e),pr[1][0]!==Q)return r;var n=Br(e);return"future"!==e&&(n=n[U])===ue||(r[U]=n),r}function Xr(e,r){if((e[0]===X||r&&e[0]===Q)&&A(e)){if(e[H]===ue)return 1;if(pe==e[H])return 1;if(fe[0]===e[H])return 1;if(pe===ce)return 1;r=de(e[H])+Fs.NSinfix;e[0]===X?r+=e[Y]:r+=Os(e),Ja(De(["internal","$can't modify "+r+" from "+de(pe)]),ue)}else Ja(De(["internal","$attempt to modify constant "+Os(e)]),ue)}function zr(e,r){try{return Gr(e,r)}catch(e){return e}}function Gr(e,b){var u,o,r,n={};function y(e,r,n){if(r[0]!==X||((a=r)===ue||a===Xe||a===ze||a===Ze||I(a)))for(;r[0]===D;)y(e,r[1],n),r=r[2];else{var t=r[Y];if(n===Ve||n===Ye){if(r[H]===b||b===ue)return;u!==Ue&&u!==Qe&&Ou(yu,"warning: using "+Fs.NSinfix+t+" for parameter "+de(r[H])+Fs.NSinfix+t+" in "+de(b)+Fs.NSinfix+o[Y])}var i=Oe(t);i[H]=b===ue?r[H]:b;a=e[t];a&&(i[U]=a[U]),e[t]=i}var a}function m(e,r){for(;r[0]===D;){if(r[1][0]===D&&r[1][1]!==ir)if(I(r[1][1])){var n=r[1][2][1];if(n!==ue&&n[Y]!==Ze[Y]){var t=n[Y],i=Oe(t);if(i[H]=b===ue?n[H]:b,i[U]=r[1],e.hasOwnProperty(t))throw"duplicate procedure name "+t+" in "+o[Y];e[t]=i}}else m(e,r[1]);r=r[2]}}function k(e,r,n,t){if(e[0]!==D){if(e[0]===Q&&zu(e[3])){var i=e[x];if(B(i)){for(var a=Xu(kr,ue),u=0;u<i.length;++u)a[x][u]=k(i[u],r,n,t);return a}var o,f=Object.getOwnPropertyNames(i),c=(e[3]instanceof Ju?Vu:Zu)();for(c[2]=e[2],o=0;o<f.length;++o)c[x][f[o]]=k(i[f[o]],r,n,t);return c}return e[0]!==X?e:r.hasOwnProperty(e[Y])?r[e[Y]]:e}if(!n&&I(e[1])){var s=k(e[2][1],r,!1,t);s[Y]===Ze[Y]&&((s=Oe(s[Y]))[S]=Ze,s[H]=b!==ue?b:s[H]);var l=e[2][2][1],p=e[2][2][2],g={};m(g,p),y(g=Object.assign({},r,g),l,e[1]);p=Le(k(l,g,!1,t),k(p,g,!1,s)),g=Le(e[1],Le(s,p));return s[U]=g,t&&(s[2]===ue&&(s[2]=Xu(wr,ue)),(s[2][3][".parent"]=t)[2]===ue&&(t[2]=Xu(wr,ue)),p=(p=t[2][3][".children"])||ue,t[2][3][".children"]=Le(s,p)),g}e[1]===ir&&(n=!0);for(var v=ue,d=null;e[0]===D;){var h=Le(k(e[1],r,n,t),ue);e.breakpoint&&(h.breakpoint=e.breakpoint),d?d[2]=h:v=h,d=h,e=e[2]}return e!==ue&&d&&(d[2]=e),v}if(e[0]!==D)return ue;if(u=e[1],(o=e[2][1])[0]!==X)return ue;var t=b!==ue?b:o[H];o[H]!==t||(u!==Je&&u!==Ve||o[U]!==e)&&o[U]!==ue?((r=Oe(o[Y]))[S]=o,r[H]=t,r[f]=F(o[f]),u!==Ue&&u!==Qe||r[f][".base"]||(r[2]===ue&&(r[2]=Xu(wr,ue)),r[2][3][".base"]=o)):r=o,r[2]!=ue&&delete r[2][3][".children"],y(n,nr),n[nr[Y]][1]=r,m(n,e[2][2][2]),y(n,e[2][2][1],u),t=k(e[2][2][1],n,!1),n=k(e[2][2][2],n,!1,r);n=Le(u,Le(r,Le(t,n)));return r[U]=n}var Zr=0,Jr=1,Vr=2,Qr=3,Ur=4,Hr=5,Yr=6,Kr=7,en=8,rn=9,nn=10,tn=11,an=12,un=13,on=14,fn=15,cn=16,sn=17,ln=18,pn=19,gn=20,vn=21,dn=22,hn=23,bn=24,yn=25,mn=26,kn=27,wn=28,xn=29,On=30,Sn=31,Nn=32,jn=33,Pn=34,Tn=35,An=36,In=37,En=38,Mn=39,$n=40,qn=41,_n=42,Rn=43,Fn=44,Wn=45,Cn=46,Ln=47,Bn=48,Dn=49,Xn=50,zn=51,Gn=52,Zn=53,Jn=54,Vn=55,Qn=56,Un=90,Hn=91,Yn=92,Kn=93,et=94,rt=0,nt=1,tt=2,it=3,at=4,ut=5,ot=6,ft=57,ct=58,st=59,lt=95,pt=96,gt=[],vt,dt,ht,bt,yt;gt[Zr]=hi,gt[jn]=bi,gt[In]=yi,gt[Nn]=Ai,gt[ft]=Ai,gt[en]=Xi,gt[fn]=Ii,gt[cn]=Ei,gt[sn]=Mi,gt[Vn]=zi,gt[Qn]=Gi,gt[tn]=Zi,gt[bn]=Ji,gt[wn]=Vi,gt[xn]=Qi,gt[On]=Qi,gt[Sn]=Qi,gt[st]=Ui,gt[yn]=Hi,gt[mn]=Yi,gt[kn]=Ki,gt[rn]=ea,gt[nn]=ra,gt[Xn]=na,gt[zn]=ta,gt[dn]=ia,gt[hn]=aa,gt[_n]=ua,gt[Rn]=oa,gt[Fn]=fa,gt[gn]=ca,gt[vn]=sa,gt[Ln]=la,gt[Bn]=pa,gt[Dn]=va,gt[Ur]=ga,gt[Hr]=va,gt[Yr]=da,gt[Kr]=ka,gt[an]=xa,gt[Jr]=xa,gt[Mn]=Oa,gt[on]=Sa,gt[Gn]=Na,gt[Zn]=ja,gt[Jn]=Pa,gt[Wn]=$i,gt[Cn]=qi,gt[ct]=Ri,gt[Vr]=Pi,gt[Qr]=Ti,gt[ln]=mi,gt[pn]=ki,gt[$n]=wi,gt[qn]=xi,gt[En]=Oi,gt[un]=Oi,gt[Pn]=Si,gt[Tn]=Ni,gt[An]=ji;var mt=[],kt=0,wt=[],xt=0,Ot=-1,St=0,Nt=!1,jt=!1,Pt=6e3,Tt=0,At=0,It=0,Et,Mt=0,$t,qt,_t=[],Rt=[],Ft=[],Wt,Ct,Lt=[],Bt,Dt,Xt=0,zt=100,Gt=3e4,Zt=1e4,Jt=2e5,Vt=Gt,Qt,Ut;function Ht(){return St=xt=kt=0,yt=Zr,vt=dt=ht=bt=tr[1]=ue,er[1]=er,Tu(),1}function Yt(e){return mt[kt++]=Zr,yt=jn,vt=e}function Kt(e,r,n){return Mo(),wt[xt++]=jt,wt[xt++]=Nt,wt[xt++]=e,wt[xt++]=r,wt[xt++]=pe,wt[xt++]=tr[1],wt[xt++]=bt,wt[xt++]=ht,wt[xt++]=dt,wt[xt++]=vt,wt[xt++]=St,wt[St=xt++]=Un,wt[xt++]=kt+2,wt[xt++]=!1,mt[kt++]=yt,mt[kt++]=n?Jr:an,yt=jn,qt=ue,jt=Nt=!1,vt=e}function ei(e){return Yt(e),ni(!(It=0)),vt}function ri(){return Mt<=0&&(yt!==Zr||0<kt)}function ni(e){if(!(0<Mt)){var r=Et,n=Tt;Qt=(new Date).getTime(),wt.length=xt,yt===Zr&&0<kt&&(yt=mt[--kt]),Tt=(e=e||Et)?0:Pt,Et=e,Tr[1]=E(e);try{ti()}catch(e){if(e!==_t){debugger;Ou(hu,"caught: "+e.toString()),Va(De(["unknown","$"+e.toString()]))}Mo()}finally{Et=r,Tt=n,wt.length=xt,Gt<Vt&&xt<Vt-Zt/2&&(Vt-=Zt/2)<Gt&&(Vt=Gt),si()}0<xs.TextAvail()&&T.hasOwnProperty("console-out")&&T["console-out"](y,xs.TakeText())}}function ti(){var e=0;do{if(xu!=wu[1]){debugger;Ou(hu,wu[Y]+" changed: "+Os(xu)+" --\x3e "+Os(wu[1])),xu=wu[1]}if(Vt<xt&&(Va(De(["internal","$maximum stack depth exceeded"])),Vt=xt+Zt,Jt<xt))return Ou(hu,"intractable recursion"),Ht(),void Mo();if(1e3<=++e){e=0;if(wt.length=xt,1e4<(new Date).getTime()-Qt)return void Va(De(["internal","$unresponsive"]));if(0<Tt&&(Tt-=1e3,Tt<=0&&(Tt=Pt,yt!==Zr))){mt[kt++]=yt,yt=Zr;break}}}while(gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),yt!=Zr)}var ii=[],ai=[],ui=[],oi=[],fi=[],ci=[];function si(){var e=(new Date).getTime(),r=e-Qt;Ut===L&&(ii[Ut=0]=Qt,ui[0]=0,oi[0]=0,fi[0]=0,ci[0]=0),++ui[Ut],oi[Ut]+=r,fi[Ut]<r&&(fi[Ut]=r),++ci[Ut],e>=ii[Ut]+200&&(ai[Ut]=e-ii[Ut],50<++Ut&&(Ut=0),ii[Ut]=e,ui[Ut]=0,oi[Ut]=0,fi[Ut]=0,ci[Ut]=0)}function li(e,r){e=e||4,r=r||1e3;for(var n=[],t=[],i=ii.length-1,a=Ut-1,u=e*r;0<=--i&&(n.push({start:ii[a],width:ai[a],runtime:oi[a],peak:fi[a],runcount:ui[a],counter:ci[a]}),--a<0&&(a=ii.length-1),!((u-=ai[a])<0)););if(0===n.length)return[];var o=n[0];(new Date).getTime()-o.start>3*r&&t.push({start:o.start+r,width:r,cpu:0,peak:0,average:0,samples:0});for(var f=o.start+o.width-r,c=1;t.length<e;)if(f>=o.start){var s=o.peak;r<s&&(s=r);var l=Number((o.runtime/o.width).toFixed(3)),p=Math.round(o.runtime/o.runcount);s==r&&(l=1,p=1e3),t.push({start:f,width:r,cpu:l,peak:s,average:p,samples:o.counter}),f-=r}else{if(c>=n.length)break;o=n[c++]}return t}function pi(){return Rt}function gi(e,r,n,t){vt=r,dt=n,ht=t,bt=e,mt[kt++]=Mn,yt=Zr,Mt=1}function vi(e){if(e[U]!==ue)Wt=e[U];else{if(e[1]===e)return ue;Wt=e[1]}return Ct=e,Ft}function di(e,r){return Bt=e,Dt=r,Lt}function hi(){}function bi(){var e=vt,r=0;if(e[0]!==D){if(e[0]===Q&&zu(e[3])){if(B((vt=e)[3]))return void(yt=ln);if(e[3]instanceof Gu)return void(yt=$n)}return vt=e[1],void(yt=mt[--kt])}for(var n=e[1];n[0]===X;){if(++r>zt)return yt=mt[--kt],void(vt=ue);if(n[3]!==ue)n=n[3];else{if(n[1]===n)break;if((n=n[1])[0]===Q)return yt=Nn,bt=n,ht=Ge,dt=e[2],void(vt=n)}}if(n[0]===D&&I(n[1])||n[0]===J||n[0]===O||n[0]===V)return yt=Nn,bt=e[1],ht=Ge,dt=e[2],void(vt=n);yt=I(n)?mt[--kt]:yn}function yi(){vt[0]===X&&(vt=W(vt[U])),bt=vt[0]===D?vt:Ze,ht=ue,yt=Nn}function mi(){if(ht=Xu(kr,ue),0===vt[3].length)return vt=ht,void(yt=mt[--kt]);wt[xt++]=vt,wt[xt++]=ht,wt[xt++]=0,mt[kt++]=pn,(vt=vt[3][0])===L&&(vt=Xe),yt=jn}function ki(){if(dt=wt[xt-1]++,ht=wt[xt-2],bt=wt[xt-3],ht[3][dt++]=vt,dt<bt[3].length)return mt[kt++]=pn,vt=bt[3][dt],void(yt=jn);xt-=3,vt=ht,yt=mt[--kt]}function wi(){if(ht=Zu(),0===(dt=co(Object.getOwnPropertyNames(vt[3]).reverse()))[3].length)return vt=ht,void(yt=mt[--kt]);wt[xt++]=vt,wt[xt++]=ht,wt[xt++]=dt,mt[kt++]=qn,(vt=vt[3][dt[3][dt[3].length-1]])===L&&(vt=Xe),yt=jn}function xi(){if(dt=wt[xt-1],ht=wt[xt-2],bt=wt[xt-3],vt===Xe?dt[3].pop():ht[3][dt[3].pop()]=vt,0<dt[3].length)return mt[kt++]=qn,vt=bt[3][dt[3][dt[3].length-1]],void(yt=jn);xt-=3,vt=ht,yt=mt[--kt]}function Oi(){if(wt[xt++]=yt===En?Ge:ue,wt[xt++]=ue,wt[xt++]=vt[1],wt[xt++]=vt[2][1],wt[xt++]=vt[2][2][1],(vt=vt[1])[0]===D){var e=vt[1][U][ne];if(e===Ba&&vt[2][2][2]===ue)vt=vt[2],yt=yn;else{if(e!==Da)return xt-=5,vt=ue,void(yt=mt[--kt]);vt=vt[2][1],yt=jn}mt[kt++]=Pn}else yt=Pn}function Si(){wt[xt-4]=vt,vt=wt[xt-2],mt[kt++]=Tn,yt=jn}function Ni(){wt[xt-2]=vt,vt=wt[xt-1],mt[kt++]=An,yt=jn}function ji(){var e=wt[xt-5],r=vt,n=wt[xt-2],t=wt[xt-3],i=wt[xt-4];t[0]===D&&t[1][U][ne]===Da&&(i=Le(i,t[2][2])),xt-=5,vt=Kc(i,n,r,e),yt=mt[--kt]}function Pi(){wt[xt++]=ht,wt[xt++]=dt,mt[kt++]=Qr,yt=jn}function Ti(){vt[0]===X&&(vt=W(vt[U])),bt=vt[0]===D?vt[2][1]:Ze,dt=wt[--xt],ht=wt[--xt],yt=Nn}function Ai(){var r,n,e,t,i=vt,a=dt,u=ht!==ue;if(i[0]===X&&(i=W(i[U])),i[0]===J)return e=a[2][2][1],n=a[2][1],r=a[1],ku<=ou&&(Nu(ku,Os(i,{quote:Ge}),a,u),mt[kt++]=on),u?r[0]!==D&&n[0]!==D&&e[0]!==D&&r[0]!==Q&&n[0]!==Q&&e[0]!==Q?(vt=i[3](r[1],n[1],e[1],i))===Rt?void gi(i,r[1],n[1],e[1]):vt===Ft?(bt=Ct,ht=Ge,void(vt=Wt)):vt===Lt?void wa(Bt,Dt,a,!0):void(yt=mt[--kt]):(wt[xt++]=i,wt[xt++]=e,wt[xt++]=n,vt=r,mt[kt++]=fn,void(yt=jn)):(vt=i[3](r,n,e,i))===Rt?void gi(i,r,n,e):vt===Ft?(bt=Ct,void(vt=Wt)):vt===Lt?void wa(Bt,Dt,a):void(yt=mt[--kt]);if(i[0]===O||i[0]===Q)if(ku<=ou&&(Nu(ku,Os(i,{quote:Ge}),a,u),mt[kt++]=on),i[0]===O&&yt!==ft&&u&&(vt=!1,a[0]===D?(r=a[1])[0]!==D&&r[0]!==Q&&(a[2][0]===D?(n=a[2][1])[0]!==D&&n[0]!==Q&&a[2][2][0]!==D&&(vt=i[3](2,function(e){return 0<=e&&e<2?[r[1],n[1]][e]:ue},i,ue)):vt=i[3](1,function(e){return 0===e?r[1]:ue},i,ue)):vt=i[3](0,function(e){return ue},i,ue),vt&&vt!==Rt&&vt!==Ft&&vt!==Lt||mt[kt-1]===an))yt=mt[--kt];else{yt===ft?(wt[xt]=wt[xt-1],++xt):wt[xt++]=ue,ku<=ou&&(Nu(ku,Os(i,{quote:Ge}),a,u),mt[kt++]=on);for(var o=0;a[0]===D;)wt[xt++]=a[1],++o,a=a[2];wt[xt++]=o,wt[xt++]=u?0:o,wt[xt++]=i,yt=Wn}else if(i[0]===V){if(ku<=ou&&(Nu(ku,Os(i,{quote:Ge}),a,!1),mt[kt++]=on),(vt=i[3](a,i))!==Rt)return vt===Ft?(bt=Ct,ht=ue,void(vt=Wt)):void(vt!==Lt?yt=mt[--kt]:wa(Bt,Dt,a));gi(i,a)}else i[0]!==D||i[1]!==Qe&&i[1]!==Je&&i[1]!==Ve&&i[1]!==Ue&&i[1]!==He&&i[1]!==Ye?(vt=ue,yt=mt[--kt]):(t=i[2][1],mu<=ou&&(Nu(mu,Os(bt),a,u),mt[kt++]=on),wt[xt++]=pe,yt===ft?(wt[xt]=xt-2,++xt):wt[xt++]=tr[1],t!==Ze&&t[0]===X&&t[H]!==ue?t[U]===i?(i[1]===Qe?(u=!1,ht=ue,t[H]!==ce&&(i=zr(i,pe))):i[1]===Ue&&(i=zr(i,t[H])),"string"!=typeof i?(t=i[2][1],e=i[2][2][1],t=t[H],e[0]!==D?e[0]===X?e[1]!==He?e===ue||e[H]===t?(wt[xt++]=bt,wt[xt++]=i,vt=a,yt=u?(mt[kt++]=Vn,yn):Vn):Va(De(["internal","$parameter in foreign namespace: "+de(e[H])+Fs.NSinfix+e[Y]+" from: "+de(t)])):Va(De(["internal","$let parameter must be tuple"])):Va(De(["internal","$parameter is not a symbol"])):(a[0]!==D?r=ue:(r=a[1],a=a[2]),wt[xt++]=bt,wt[xt++]=i,wt[xt++]=ht,wt[xt++]=a,wt[xt++]=e,wt[xt++]=0,vt=r,yt=u?r[0]===D||r[0]===Q?(mt[kt++]=en,jn):(vt=r[S],en):en)):Va(De(["internal",i]))):Va(De(["internal","$privilege violation in "+Os(bt)])):Va(De(["internal","$namespace invalid in "+Os(bt)])))}function Ii(){var e=wt[xt-1];wt[xt-1]=vt,yt=(vt=e)===ue?cn:(mt[kt++]=cn,jn)}function Ei(){var e=wt[xt-2];wt[xt-2]=vt,yt=(vt=e)===ue?sn:(mt[kt++]=sn,jn)}function Mi(){var e=wt[--xt],r=wt[--xt],n=vt,t=wt[--xt];if((vt=t[3](e,r,n,t))!==Rt)return vt===Ft?(vt=Ct,dt=Le(e,Le(r,Le(n,ue))),void(yt=In)):void(vt!==Lt?yt=mt[--kt]:wa(Bt,Dt,Le(e,Le(r,Le(n,ue)))));gi(t,e,r,n)}function $i(){var e,r=wt[xt-3],n=xt-3-r,t=wt[xt-2],i=wt[xt-1];function a(e){return e<0||r<=e?ue:wt[n+e]}if(t<r)return vt=wt[n+t],yt=ht===ur&&1==t||ht===kr&&(0===t||1===t)?Cn:(mt[kt++]=Cn,jn),void(wt[xt++]=ht);if(wt[xt++]=St,wt[St=xt++]=lt,mt[kt++]=ct,wt[xt++]=kt,wt[xt++]=!1,(vt=i[0]===Q?u(i[x])?Po(i,r,0,a):So(null,i,r,0,a):i[3]!==ue?i[3](r,a,i,wt[n-1]):ue)===Rt)return _i(),mt[kt-1]=Wn,yt=Zr,void(Mt=1);if(vt!==Ft)if(vt!==Lt)yt=mt[--kt];else{for(dt=ue,e=r;0<=--e;)dt=Le(wt[n+e],dt);wa(Bt,Dt,dt)}else{for(vt=Ct,dt=ue,e=r;0<=--e;)dt=Le(wt[n+e],dt);yt=In}}function qi(){ht=wt[--xt];var e=wt[xt-3],r=wt[xt-2];wt[xt-3-e+r]=vt,wt[xt-2]=r+1,yt=Wn}function _i(){xt-=2,wt[--xt]!==lt&&Ou(hu,"naanUnlinkArbFrame: lost frame sync"),(St=wt[--xt])<It&&Io()}function Ri(){var e=wt[xt-1];e&&e[x].trap?Iu(e,vt):(_i(),e=wt[xt-3],xt=xt-4-e,yt=mt[--kt])}function Fi(){var e=St;if(wt[e]!==Hn)return!1;for(var r=kt;;){var n=mt[--r];if(n!==On){if(n===tn||n===Qn)break;return!1}}for(;wt[e]===Hn;){if(wt[e+3]!==ue||wt[e+5][2][0]===D)return!1;e=wt[e-1]}return e}function Wi(e,r){if(r[1]!==Je&&r[1]!==Ue)return!1;var n,t;if(wt[e]===Kn)n=wt[e-3],t=Ci;else{if(wt[e]!==et)return!1;n=wt[e-wt[e-2]-6],t=Li}if(wt[e+2])return!1;if(n[1]===Je||n[1]===He){var i=n[2][1],r=r[2][1];if(i[H]!==r[H])return!1;for(var a=r;a=a[2][3][".parent"];)if(a===i)return!1}else if(n[1]!==Ue)return!1;return t(e)}function Ci(e){var r=wt[e-3],n=r[2][2][1];return n!==ue&&r[1]!==Ue&&(n[1]=wt[e-2]),kt=wt[e+1]-1,e-4}function Li(e){var r=wt[e-2],n=wt[e-6-r];if(n[1]!==Ue)for(var t=n[2][2][1],i=e-2-r,a=r;0<=--a&&t[0]===D;)t[1]!==ue&&(t[1][1]=wt[i]),++i,t=t[2];return kt=wt[e+1]-1,e-7-r}function Bi(){var e,r,n,t=Fi();!t||(n=Wi(t,r=wt[(e=xt)-1]))&&(St=wt[t-1],wt[n+0]=wt[e-2],wt[n+1]=r,xt=n+2)}function Di(e){var r=Fi();if(r){var n=xt,t=wt[n-4-e],i=Wi(r,t);if(i){for(St=wt[r-1],wt[i+0]=wt[n-5-e],wt[i+1]=t,wt[i+2]=wt[n-3-e],wt[i+3]=wt[n-2-e],wt[i+4]=wt[n-1-e],n-=e,i+=5;0<=--e;)wt[i++]=wt[n++];xt=i}}}function Xi(){for(var e=wt[--xt],r=wt[xt-1-e],n=wt[xt-2-e],t=wt[xt-3-e],i=vt;;){if(r[0]===D)wt[xt++]=i,++e,r=r[2];else if(n[0]!==D){Di(e);for(var a=wt[xt-4-e],u=a[2][1][H],r=a[2][2][1],o=xt-e,f=!1;r[0]===D;){if(i=r[1][1],r[1]===ue)f=!0;else{if(r[1][0]!==X)return void Va(De(["internal","$parameter is not a symbol"]));if(r[1][H]!==u)return void Va(De(["internal","$parameters in foreign namespace: "+de(r[1][H])+Fs.NSinfix+r[1][Y]+" from: "+de(u)]));r[1][1]=f?ue:wt[o]}wt[o++]=i,r=r[2]}return wt[xt++]=e,ht=ue,dt=a[2][2][2],vt=ue,wt[xt++]=St,wt[St=xt++]=et,mt[kt++]=tn,wt[xt++]=kt,wt[xt++]=!1,yt=wn,"number"==typeof(i=wt[xt-11-e])&&(a=tr[1],tr[1]=wt[i],wt[xt-11-e]=a),void(pe=u)}if(n[0]!==D?i=ue:(i=n[1],n=n[2]),t!==ue){if(i[0]===D||i[0]===Q)break;i=i[S]}}wt[xt-2-e]=n,wt[xt-1-e]=r,wt[xt++]=e,vt=i,mt[kt++]=en,yt=jn}function zi(){var e;Bi();var r=wt[xt-1],n=r[2][2][1];wt[xt++]=n[1],A(n)&&(n[1]=vt),ht=ue,dt=r[2][2][2],vt=ue,wt[xt++]=St,wt[St=xt++]=Kn,mt[kt++]=Qn,wt[xt++]=kt,wt[xt++]=!1,yt=wn,"number"==typeof(e=wt[xt-8])&&(n=tr[1],tr[1]=wt[e],wt[xt-8]=n),pe=r[2][1][H]}function Gi(){var e,r=wt[xt-1];r&&r[x].trap?Iu(r,vt):(xt-=2,wt[--xt]!==Kn&&Ou(hu,"nadiCallNoSpread2: lost frame sync"),(St=wt[--xt])<It&&Io(),(r=(e=wt[xt-2])[2][2][1])!==ue&&e[1]!==Ue&&(r[1]=wt[xt-1]),xt-=3,tr[1]=wt[--xt],pe=wt[--xt],yt=mt[--kt])}function Zi(){var e=wt[xt-1];if(e&&e[x].trap)Iu(e,vt);else{xt-=2,wt[--xt]!==et&&Ou(hu,"nadiCallComplete: lost frame sync"),(St=wt[--xt])<It&&Io();var r=wt[--xt],e=wt[xt-4-r];if(e[1]!==Ue)for(var n=e[2][2][1],t=xt-r,i=r;0<=--i&&n[0]===D;)n[1]!==ue&&(n[1][1]=wt[t]),++t,n=n[2];xt-=r+5,tr[1]=wt[--xt],pe=wt[--xt],yt=mt[--kt]}}function Ji(){ht=Ge,dt=vt,$t=vt=ue,yt=wn}function Vi(){wt[xt++]=St,wt[St=xt++]=Hn,wt[xt++]=kt,wt[xt++]=!1,wt[xt++]=ht,wt[xt++]=dt,wt[xt++]=dt,yt=xn}function Qi(){for(var e=wt[xt-1],r=wt[xt-3];;){if($t=vt,yt===On?(yt=xn,e=e[2],wt[xt-1]=e):yt===Sn&&(yt=xn,A($t)?(r=ue,e=e[1][2],wt[xt-3]=r):e=e[2],wt[xt-1]=e),e[0]!==D){if(r!==ue)return e=wt[xt-2],void(wt[xt-1]=e);yt=mt[--kt]}else{if(Nt&&0==--Nt)return void Eu({state:We("task"),body:wt[xt-2],task:e,loop:r,value:$t});if(e[1].breakpoint&&Au(e))return;if(e[1][0]!==D){if((vt=e[1])[0]===Q)return mt[kt++]=On,void(yt=jn);vt=vt[1],yt=On;continue}if(e[1][1][0]===D){if(e[1][1][1][0]!==D)return vt=e[1][1],mt[kt++]=Sn,void(yt=jn);r===ue&&e[2][0]!==D?(e=e[1],r=ue,wt[xt-1]=e,wt[xt-2]=e,wt[xt-3]=r):(Nt&&++Nt,wt[xt-1]=e[2],e=e[1],r=ue,wt[xt++]=St,wt[St=xt++]=Hn,wt[xt++]=kt,wt[xt++]=!1,wt[xt++]=r,wt[xt++]=e,wt[xt++]=e,mt[kt++]=xn),wt[xt-6]!==Hn&&Ou(hu,"nadiBody1: lost frame sync");continue}if(vt=e[1],yt=vt[1][U]!==ue?(bt=vt[1],ht=Ge,dt=vt[2],vt=bt[U],Nn):jn,!(ou<=du&&r===ue&&e[2][0]!==D))return void(mt[kt++]=On)}var n=wt[xt-4];return n&&n[x].trap?(mt[kt++]=yt,yt=st,void Iu(n,vt)):(xt-=5,wt[--xt]!==Hn&&Ou(hu,"nadiBody4: lost frame sync"),void(St=wt[--xt]))}}function Ui(){xt-=5,wt[--xt]!==Hn&&Ou(hu,"nadiBody4: lost frame sync"),St=wt[--xt],yt=mt[--kt]}function Hi(){wt[xt++]=ue,wt[xt++]=ue,wt[xt++]=vt,yt=mn}function Yi(){var e=wt[xt-1];if(e[0]!==D)return vt=wt[xt-2],xt-=3,void(yt=mt[--kt]);vt=e[1],mt[kt++]=kn,yt=jn}function Ki(){var e=wt[xt-1],r=wt[xt-3],n=Le(vt,ue);r!==ue?r[2]=n:wt[xt-2]=n,wt[xt-3]=n,wt[xt-1]=e[2],yt=mn}function ea(){wt[xt++]=vt,yt=nn,vt=Ge}function ra(){var e=wt[xt-1];if(!A(vt)||e[0]!==D)return--xt,void(yt=mt[--kt]);vt=e[1],wt[xt-1]=e[2],mt[kt++]=nn,yt=jn}function na(){wt[xt++]=vt,yt=zn,vt=ue}function ta(){var e=wt[xt-1];if(A(vt)||e[0]!==D)return--xt,void(yt=mt[--kt]);vt=e[1],wt[xt-1]=e[2],mt[kt++]=zn,yt=jn}function ia(){wt[xt++]=vt,dt=vt[2][1],vt=dt,mt[kt++]=hn,yt=jn}function aa(){Hc(wt[--xt][1],vt),yt=mt[--kt]}function ua(){wt[xt++]=0,wt[xt++]=vt,yt=Rn}function oa(){var e=wt[xt-1];if(e[0]!==D)return xt-=2,vt=ue,void(yt=mt[--kt]);vt=e[1][1],mt[kt++]=Fn,yt=jn}function fa(){var e=wt[xt-1];yt=A(vt)?(0!==wt[xt-2]&&(wt[wt[xt-2]]=tt),xt-=2,dt=e[1][2],ht=ue,wn):(wt[xt-1]=e[2],Rn)}function ca(){vt=(wt[xt++]=vt)[1],mt[kt++]=vn,yt=jn}function sa(){var e=wt[--xt];vt=e[2][1][1]=Le(vt,e[2][1][1]),yt=mt[--kt]}function la(){wt[xt++]=vt[2][2],wt[xt++]=vt[2][1],vt=vt[1],wt[xt++]=vt,mt[kt++]=Bn,yt=jn}function pa(){wt[xt-1]=vt,vt=wt[xt-2],mt[kt++]=Dn,yt=jn}function ga(){la(),mt[kt-1]=Hr}function va(){yt===Dn?wt[xt-2]=vt:wt[xt-1]=vt,dt=wt[--xt],vt=wt[--xt],ht=wt[--xt],yt===Hr&&vt[0]===D&&(vt[2][0]!==D?vt=vt[1]:(wt[xt++]=ht,wt[xt++]=vt[2],wt[xt++]=dt,mt[kt++]=Hr,vt=vt[1],ht=ue)),yt=Yr,wt[xt++]=ht,wt[xt++]=dt}function da(){var e=ue;if(dt=vt,vt=wt[--xt],ht=wt[--xt],!A(vt))return vt=ue,void(yt=mt[--kt]);switch(vt[0]){case D:if(dt===ue)e=vt;else if(dt[0]===G||dt[0]===Z){var r=Lo(dt,65535);if(null!==r){for(e=vt,r=Math.abs(r);e[0]===D&&0<=--r;)e=e[2];s.negative(dt[3])||(e=e[1])}}else if(ya(vr))return;break;case X:if(ya(dr))return;if(ht===ue)return ba();e=ue;break;case k:if(ya(Sr))return;if(ht===ue)return ba();e=ue;break;case z:if(dt[0]!==G)return ya(mr)?void 0:ht===ue?ba():void ma("String");var n=Lo(dt,Number.MAX_SAFE_INTEGER),e=We(n<0?vt[3].charAt(vt[3].length+n):vt[3].charAt(n));break;case G:return ha()?void 0:ya(hr)?void 0:ht===ue?ba():void ma("Number");case Z:return ha()?void 0:ya(br)?void 0:ht===ue?ba():void ma("Number");case Q:if(zu(vt[3])){if(e=ue,n=dt[0]===X?dt[Y]:dt[0]===z?dt[K]:(dt[0]===G||dt[0]===Z)&&Lo(dt,Number.MAX_SAFE_INTEGER),B(vt[3]))if("length"==n)e=_o(vt[3].length);else{if(ya(kr))return;if(dt[0]===G)(e=vt[3][n])===L&&(e=ue);else if(ht!==ue)return dt=Le(vt,Le(bt=dt,ht[1])),ht=kr,vt=Rr[3],void(yt=Nn)}else if(!1!==n)if(vt[3].hasOwnProperty(n))e=vt[3][n];else if(vt[3]instanceof Ju)ht!==ue?(e=uo(vt,n))===ue&&(e=uo(vt,".undefined",!0))!==ue&&(ht=Le(Le(dt,ht[1]),ue)):(e=uo(vt,".."+n,!0))!==ue&&(ht=Le(ue,ue));else if(ya(wr))return}else if(e=wo(vt,dt),ht!==ue)return dt=Le(vt,Le(bt=dt,ht[1])),ht=ur,vt=Cr[3],void(yt=Nn);break;default:return ba()}if(ht===ue)return vt=e,void(yt=mt[--kt]);bt=dt,wt[xt++]=vt,mt[kt++]=Kr,dt=ht[1],ht=Ge,e[0]===X&&(e=W(e[U])),vt=e,yt=ft}function ha(){return(dt[0]===G||dt[0]===Z)&&(yt=mt[--kt],Va(De(["internal","numeric scalar dereference"]),ue),1)}function ba(){vt=ht===ue&&vt[0]===z&&(dt[0]===z&&"length"==dt[K]||dt[0]===X&&"length"==dt[Y])?_o(vt[K].length):vt[0]===X?Le(ur,Le(vt,Le(dt,ht))):ue,yt=mt[--kt]}function ya(e){e=es(e,dt);if(!A(e)){if(vt[0]===D)return;if(!A(e=es(vt,dt)))return}return bt=dt,dt=Le(Le(ir,Le(vt,ue)),ht[1]),ht=Ge,e[0]===X&&(e=W(e[U])),vt=e,yt=Nn,1}function ma(e){e=Pe(e,[ce,se]);dt=Le(e,Le(bt=dt,Le(vt,ht[1]))),ht=ur,vt=Cr[3],yt=Nn}function ka(){--xt,yt=mt[--kt]}function wa(e,r,n,t){var i=uo(e,r);i===ue&&(i=uo(e,".undefined",!0))!==ue&&(n=Le(Le(We(r),n),ue)),wt[xt++]=e,mt[kt++]=Kr,dt=n,ht=t?Ge:ue,i[0]===X&&(i=W(i[U])),vt=i,yt=ft}function xa(){qt=vt;var e=yt===Jr,r=wt[xt-1];if(r&&r[x].trap)return Iu(r,vt),wt[xt-13]=Nt,void(wt[xt-14]=jt);yt=mt[--kt],xt-=2,wt[--xt]!==Un&&Ou(hu,"nadiInterruptRestore: lost frame sync"),(St=wt[--xt])<It&&Io(),vt=wt[--xt],dt=wt[--xt],ht=wt[--xt],bt=wt[--xt],tr[1]=wt[--xt],pe=wt[--xt],xt-=2,jt?xt-=2:(Nt=wt[--xt],jt=wt[--xt]),e&&(vt=qt)}function Oa(){var e=bt,r=ht,n=dt,t=vt,i=e[0]>=J&&e[0]<=V?e[3](t,n,r,e):ue;i===Rt?gi(e,t,n,r):(vt=i,yt=mt[--kt])}function Sa(){ju(vt),yt=mt[--kt]}function Na(){wt[xt++]=ue,wt[xt++]=rt,wt[xt++]=ue,wt[xt++]=vt,wt[xt++]=St,wt[St=xt++]=Yn,wt[xt++]=kt,wt[xt++]=!1,ht=ue,dt=vt[1],vt=ue,mt[kt++]=Zn,yt=wn}function ja(){wt[xt-6]=vt,wt[xt-3]=pt,St<It&&Io(),wt[xt-7]===tt&&(er[1]=er),vt=wt[xt-5],ht=ue,dt=vt[2][2][1],vt=ue,mt[kt++]=Jn,yt=wn}function Pa(){vt=wt[xt-6],dt=wt[xt-7],ht=wt[xt-8],St=wt[xt-4];var e=wt[xt-1];e&&e[x].trap?Iu(e,vt):(xt-=2,wt[--xt]!==pt&&Ou(hu,"nadiCatch2: lost frame sync"),xt-=5,yt=(dt===tt||dt===rt||(dt===at?(Qa(vt),wt[St]==Yn&&(er[1]=er)):dt===ut?Ha(ht):dt===ot?Ya(ht):Ja(er[1],Ge)),mt[--kt]))}function Ta(){return ue}function Aa(e){return e[0]!==D&&e[0]!==Q?e[1]:(mt[kt++]=jn,e)}function Ia(e,r){return mt[kt++]=In,dt=r,e}function Ea(e){return mt[kt++]=Vr,ht=Ge,dt=e[2],e[1]}function Ma(e){return mt[kt++]=Vr,ht=ue,dt=e[2],e[1]}Me("undefined",Ta,J);var $a=Ee(Ma,V);function qa(e){return mt[kt++]=yn,e}function _a(e){return mt[kt++]=rn,e}function Ra(e){return mt[kt++]=Xn,e}function Fa(e){return mt[kt++]=bn,e}function Wa(e){return e[0]!==D?ue:(mt[kt++]=dn,e)}function Ca(e){return mt[kt++]=_n,e}function La(e){return e[2][1][0]!==X?ue:Xr(e[2][1])?(mt[kt++]=gn,e):vt}function Ba(e){return mt[kt++]=Ln,e}function Da(e){return mt[kt++]=Ur,e}function Xa(e){return mt[kt++]=En,e}function za(e){return mt[kt++]=un,e}function Ga(e){return mt[kt++]=Gn,e}function Za(){if(void 0===vt||void 0===dt||void 0===ht||void 0===bt)debugger;var e,r,n,t,i=St;if(xt<St||St+50<xt)debugger;for(t=0;t<xt;++t)if(void 0===wt[t])debugger;for(;0<i;){switch(wt[i]){case Kn:if(!I((r=wt[i-3])[1]))debugger;if(wt[i-6][0]!=k)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;if(mt[n-1]!=Qn)debugger;break;case et:if((e=wt[i-2])<0||1e3<e)debugger;if(!I((r=wt[i-6-e])[1]))debugger;if(wt[i-9-e][0]!=k)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;if(mt[n-1]!=tn)debugger;break;case lt:if((e=wt[i-4])<0||1e3<e)debugger;if((r=wt[i-2])[0]!=O&&r[0]!=Q)debugger;if(n=wt[i+1],mt[n-1]!=ct)debugger;break;case Hn:if((n=wt[i+1])<0||kt+1<n)debugger;break;case Yn:if(wt[i-4]<0||wt[i-4]>ot)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;break;case pt:break;case Un:if(wt[i-7][0]!=k)debugger;break;default:debugger}if(wt[i-1]<0||wt[i-1]>=i)debugger;i=wt[i-1]}}function Ja(e,r){var n,t,i,a=St;if(Za(),e[0]===D&&e[1][0]===X&&"internal"==e[1][Y]&&e[2][1]===rr&&rr[U]!==ue)return Kt(Le(rr,ue),"escape"),mt[kt++]=yt,vt;if(er[U]!==ue&&r===ue)return er[1]===er&&(er[1]=e),yt=mt[--kt],Kt(Le(qr,Le(er[1],Le(Ge,ue))),"exception-rethrow"),Kt(Le(er,Le(e,ue)),"exception-hook"),mt[kt++]=yt,vt;for(vt=ue;0<a;){var u=wt[a];switch(u){case Kn:mu<=ou&&Pu(e),t=wt[a-2],(i=wt[a-3][2][2][1])!==ue&&(i[1]=t),tr[1]=wt[a-5],pe=wt[a-6];break;case et:for(mu<=ou&&Pu(e),t=wt[a-2],i=wt[a-6-t][2][2][1],n=t-1;0<=n;--n)i[1][1]=wt[a-3-n],i=i[2];tr[1]=wt[a-8-t],pe=wt[a-9-t];break;case lt:mu<=ou&&Pu(e);break;case Hn:break;case Yn:return wt[(St=a)-4]!==rt?(wt[a-4]===tt&&(er[1]=e),wt[a-4]=it,xt=a+3,kt=wt[a+1],mt[kt++]=Zn):(er[1]=e,St<It&&Io(),wt[a-4]=nt,xt=a+3,kt=wt[a+1],vt=wt[a-2],wt[xt++]=a-4,wt[xt++]=vt[2][1],mt[kt++]=Zn,mt[kt++]=Rn),er;case pt:break;case Un:if(tr[1]=wt[a-6],pe=wt[a-7],"future"==wt[a-8])wt[a-9][2][2][1][x][".exception"]=e;else{if("debugger"==Os(er[1]))break;if(!/fiberwake|escape|xcallback/.test(wt[a-8]))break}return er[1]=er,xt=a+3,kt=wt[a+1],ue;default:Ou(hu,"nfuncThrow: unknown frame type on stack: "+u)}a=wt[a-1]}return er[1]!==er&&(e=er[1]),e[0]===D&&e[1][0]===X&&"internal"==e[1][Y]?e[2][1]!==rr&&Ou(hu,Os(e[2][1])):"debugger"!=Os(e)&&Ou(hu,"uncaught exception: "+Os(e)),Ht(),Yt(De(["driver",101])),mt[kt++]=yt,vt}function Va(e){Ja(e,ue),yt=mt[--kt]}function Qa(e,r){for(var n,t,i,a,u=St;0<u;){var o=wt[u];switch(o){case et:if(t=wt[u-2],(a=wt[u-6-t])[1]!==He)return kt=wt[u+1],(St=u)<It&&Io(),xt=u+3,e;for(i=a[2][2][1],n=t-1;0<=n;--n)i[1][1]=wt[u-3-n],i=i[2];tr[1]=wt[u-8-t],pe=wt[u-9-t];break;case Kn:if((a=wt[u-3])[1]!==He)return kt=wt[u+1],(St=u)<It&&Io(),xt=u+3,e;t=wt[u-2],(i=a[2][2][1])!==ue&&(i[1]=t),tr[1]=wt[u-5],pe=wt[u-6];break;case lt:case Hn:break;case Yn:if(r)break;return wt[(St=u)-4]=at,wt[u-3]=e,xt=u+3,kt=wt[u+1],mt[kt++]=Zn,e;case pt:case Un:break;default:Ou(hu,"naanReturn: unknown frame type on stack: "+o)}u=wt[u-1]}return Ja(De(["internal","$orphaned return"]),ue)}function Ua(e,r){return Qa(e?r(0):$t)}function Ha(e){for(var r,n,t,i,a=St;0<a;){var u=wt[a];switch(u){case et:if(r=wt[a-2],(i=wt[a-6-r])[1]===He){for(t=i[2][2][1],n=r-1;0<=n;--n)t[1][1]=wt[a-3-n],t=t[2];tr[1]=wt[a-8-r],pe=wt[a-9-r];break}case Kn:a=-1;continue;case lt:break;case Hn:if(wt[a+3]!==Ge)break;if(e!==ue&&Dc(e,wt[a+4][S])===ue)break;return kt=wt[a+1],xt=(St=a)+6,wt[a+3]=ue,wt[a+5]=ue,mt[kt++]=xn,$t;case Yn:return wt[(St=a)-5]=e,wt[a-4]=ut,xt=a+3,kt=wt[a+1],mt[kt++]=Zn,$t;case pt:case Un:break;default:Ou(hu,"nfuncBreak: unknown frame type on stack: "+u)}a=wt[a-1]}return Ja(De(["internal",'$break tag "'+Os(e)+'" not found']),ue)}function Ya(e){for(var r,n,t,i,a=St;0<a;){var u=wt[a];switch(u){case et:if(r=wt[a-2],(i=wt[a-6-r])[1]===He){for(t=i[2][2][1],n=r-1;0<=n;--n)t[1][1]=wt[a-3-n],t=t[2];tr[1]=wt[a-8-r],pe=wt[a-9-r];break}case Kn:a=-1;continue;case lt:break;case Hn:if(wt[a+3]!==Ge)break;if(e!==ue&&Dc(e,wt[a+4][S])===ue)break;return kt=wt[a+1],xt=(St=a)+6,wt[a+5]=wt[a+4],mt[kt++]=xn,ue;case Yn:return wt[(St=a)-5]=e,wt[a-4]=ot,xt=a+3,kt=wt[a+1],mt[kt++]=Zn,$t;case pt:case Un:break;default:Ou(hu,"nfuncContinue: unknown frame type on stack: "+u)}a=wt[a-1]}return Ja(De(["internal",'$continue tag "'+Os(e)+'" not found']),ue)}function Ka(e){var n=[],t=[];function i(e){var r=Oc(e)!==ue?e[H]:e,e=n.indexOf(r);return e<0&&(e=n.push(r)-1,t[e]={}),t[e]}function r(e,r){i(e)[e[Y]]=r}function a(e){return i(e)[e[Y]]}for(var u=ue;0<e;){var o,f,c,s,l,p,g,v,d,h,b,y=wt[e];switch(y){case Kn:p=wt[e-2],g=wt[e-3],v=wt[e-4],wt[e-5],b=wt[e-6],d=g[1],(o=a(h=g[2][2][1]))===L&&(o=h[1]),r(h,p),l=h===ue?ue:Le(h,Le(h[1],Le(p,ue))),s=Le(d,Le(v,Le(l,Le(g,Le(b,ue)))));break;case et:for(f=wt[e-2],g=wt[e-6-f],v=wt[e-7-f],wt[e-8-f],b=wt[e-9-f],d=g[1],h=g[2][2][1],l=ue,c=f-1;0<=c;--c)(o=a(h[1]))===L&&(o=h[1][1]),l=Le(Le(h[1],Le(o,Le(wt[e-3-c],ue))),l),h=h[2];for(h=g[2][2][1],c=f-1;0<=c;--c)r(h[1],wt[e-3-c]),h=h[2];s=Le(d,Le(v,Le(l=Yf(l,ue),Le(g,Le(b,ue)))));break;case lt:for(f=wt[e-4],d=(g=wt[e-2])[0]===O?gr:Or,l=ue,c=f-1;0<=c;--c)l=Le(wt[e-4-f+c],l);s=Le(d,Le(l,Le(g,ue)));break;case Hn:s=Le(d=wt[e+3]===ue?or:fr,Le(wt[e+4],Le(wt[e+5],ue)));break;case Yn:s=Le(d=cr,Le(wt[e-2],ue));break;case pt:break;case Un:s=Le(d=sr,Le(wt[e-7],Le(We(wt[e-8]),Le(wt[e-9],ue))));break;default:return Ou(hu,"nfuncStacktrace: unknown frame type on stack: "+y),ue}s[1]===ue&&Ou(hu,"nfuncStacktrace: bad frameid"),u=Le(s,u),e=wt[e-1]}return Yf(u,ue)}function eu(e,r){for(var n=St;0<n;){var t=wt[n];switch(t){case Kn:case et:case lt:case Hn:case Yn:case pt:case Un:if(0<e--){n=wt[n-1];continue}var i=wt[n+2];return i=i||(r?wt[n+2]=Zu():ue);default:return Ou(hu,"naanFrameHook: unknown frame type on stack: "+t),ue}}return ue}function ru(e){for(var r,n=St;0<n;){var t=wt[n];switch(t){case Kn:return wt[n-3];case et:return r=wt[n-2],wt[n-6-r];case lt:case Hn:case Yn:case pt:case Un:break;default:return Ou(hu,"nfuncCaller: unknown frame type on stack: "+t),ue}n=wt[n-1]}return ue}function nu(e){for(var r,n=St;0<n;){var t=wt[n];switch(t){case Kn:return wt[n-6];case et:return r=wt[n-2],wt[n-9-r];case lt:case Hn:case Yn:case pt:case Un:break;default:return Ou(hu,"nfuncNscaller: unknown frame type on stack: "+t),ue}n=wt[n-1]}return ue}function tu(e,r){var n,t,i,a,u,o,f,c,s;function l(e){switch(e){case et:case Kn:case lt:case Yn:case pt:case Un:return 3;case Hn:return 6}}(s=[]).saveSelf=tr[1],s.saveExecNS=pe,s.stephook=jt,s.stepping=Nt,s.stack1=vt,s.stack2=dt,s.stack3=ht,s.stack4=bt,s.runLimit=Tt,a=St,u=xt,f=kt;e:for(;0<a;){switch(n={},0!==It&&It<a&&(n.sprint=!0),n.ftype=wt[a],o=a+l(n.ftype),n.runargs=wt.slice(o,u),n.ftype){case et:for(n.argcount=wt[a-2],u=a-9-n.argcount,n.execNS=wt[a-9-n.argcount],n.saveSelf=wt[a-8-n.argcount],n.fname=wt[a-7-n.argcount],n.fbind=wt[a-6-n.argcount],n.feval=wt[a-5-n.argcount],n.inarg=wt[a-4-n.argcount],n.inparm=wt[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=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r){if(n.fbind[1]===Ve||n.fbind[1]===Ye)for(i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)i[1]!==ue&&(i[1][1]=wt[a-3-t]),i=i[2];tr[1]=n.saveSelf,pe=n.execNS}if(!0===e&&n.fbind[1]!==He)break e;break;case Kn:if(u=a-6,n.execNS=wt[a-6],n.saveSelf=wt[a-5],n.fname=wt[a-4],n.fbind=wt[a-3],i=n.fbind[2][2][1],n.arg=i[1],c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r&&(n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i===ue||(i[1]=wt[a-2]),tr[1]=n.saveSelf,pe=n.execNS),!0===e)break e;break;case lt:for(n.argcount=wt[a-4],u=a-6-n.argcount,n.targetThis=wt[a-6-n.argcount],n.arglist=[],t=n.argcount-1;0<=t;--t)n.arglist.push(wt[a-5-t]);n.inarg=wt[a-3],n.fbind=wt[a-2],c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r&&(tr[1]=n.saveSelf,pe=n.execNS);break;case Hn:u=a-1,n.loop=wt[a+3],n.body=wt[a+4],n.task=wt[a+5],c=wt[a+1],n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n);break;case Yn:case pt:u=a-5,n.tag=wt[a-5],n.status=wt[a-4],n.result=wt[a-3],n.catchargs=wt[a-2],c=wt[a+1],n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n);break;case Un:break e;default:Ou(hu,"naanSaveProcState: unknown frame type on stack: "+n.ftype)}if(a=wt[a-1],f=c,"number"==typeof e&&a<=e)break e}return r&&((St=a)<It&&Io(),xt=0===St?0:a+l(wt[St]),kt=c),s}function iu(e){var r,n,t,i,a;for(Tt=e.runLimit,r=e.length-1;0<=r;--r){switch((n=e[r]).ftype){case et:for(wt[xt++]=n.execNS,wt[xt++]=n.saveSelf,wt[xt++]=n.fname,wt[xt++]=n.fbind,wt[xt++]=n.feval,wt[xt++]=n.inarg,wt[xt++]=n.inparm,i=n.fbind[2][2][1],t=0;t<n.argcount;++t)wt[xt++]=i[1][1],n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i[1]===ue||(i[1][1]=n.arglist[t]),i=i[2];wt[xt++]=n.argcount,wt[xt++]=St,St=xt,wt[xt++]=et,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case Kn:wt[xt++]=n.execNS,wt[xt++]=n.saveSelf,wt[xt++]=n.fname,wt[xt++]=n.fbind,i=n.fbind[2][2][1],wt[xt++]=i[1],n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i===ue||(i[1][1]=n.arg),wt[xt++]=St,St=xt,wt[xt++]=Kn,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case lt:for(wt[xt++]=n.targetThis,t=0;t<n.argcount;++t)wt[xt++]=n.arglist[t];wt[xt++]=n.argcount,wt[xt++]=n.inarg,wt[xt++]=n.fbind,wt[xt++]=St,St=xt,wt[xt++]=lt,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case Hn:wt[xt++]=St,St=xt,wt[xt++]=Hn,wt[xt++]=kt,wt[xt++]=n.hook,wt[xt++]=n.loop,wt[xt++]=n.body,wt[xt++]=n.task;break;case Yn:case pt:wt[xt++]=n.tag,wt[xt++]=n.status,wt[xt++]=n.result,wt[xt++]=n.catchargs,wt[xt++]=St,St=xt,wt[xt++]=n.ftype,wt[xt++]=kt,wt[xt++]=n.hook;break;case Un:default:Ou(hu,"naanRunProcState: unknown frame type on stack: "+n.ftype)}for(a=0;a<n.runstates.length;++a)mt[kt++]=n.runstates[a];for(t=0;t<n.runargs.length;++t)wt[xt++]=n.runargs[t];n.sprint&&(0===It?Ao():St<It&&(It=St))}vt=e.stack1,dt=e.stack2,ht=e.stack3,bt=e.stack4,jt=e.stephook,Nt=e.stepping,tr[1]=e.saveSelf,pe=e.saveExecNS}function au(){var e=jo(0);return e[w]=ue,e[x].execstate=tu(!0),e}function uu(e,r){return e[0]!==Q||zu(e[x])||!B(e[x].execstate)?ue:(iu(e[x].execstate),vt=r)}var ou=hu,fu=0,cu=0,su=30,lu=0,pu=3*su,gu="",vu=0,du=0,hu=1,bu=2,yu=3,mu=4,ku=5,wu=ue,xu=wu[1];function Ou(e,r){if(e<=ou&&T.hasOwnProperty("debug-write"))try{T["debug-write"](r,e)}catch(e){}}function Su(){var e="",r=0;for((pu<=fu||fu<lu)&&(cu=Math.floor(fu/su)*su-2*su,lu=cu+su,pu=cu+3*su,0<cu&&(e="*")),0<cu&&(e+=fu.toString(),e=" ".substring(e.length)+e+" ",r=cu);r++<fu;)e+=r%2==0?"| ":" ";return e}function Nu(e,r,n,t){0<gu.length&&Ou(vu,gu);for(var i=n,a="";i[g]===D;)0<a.length&&(a+=" "),t&&i[1][0]===X?a+=Os(i[1][1],{quote:Ge}):a+=Os(i[1],{quote:Ge}),i=i[N];gu=Su()+r+"("+a+")",vu=e,++fu}function ju(e){--fu<0&&(fu=0),0<gu.length?(Ou(vu,gu+"==> "+Os(e,{quote:Ge})),gu=""):Ou(mu,Su()+"==> "+Os(e,{quote:Ge}))}function Pu(e){--fu<0&&(fu=0),0<gu.length?(Ou(vu,gu+"==> unknown"),gu=""):Ou(mu,Su()+"==> unknown"),Ou(mu,"==> proc terminated by throw: ",Os(e))}function Tu(){ou=bu,gu="",vu=fu=0}function Au(e){if(Wu[1]===Wu&&e[1].breakpoint[0]===Q){var r=e[1].breakpoint[x];if(zu(r)&&A(r.enable))return Wu[1]=e,Kt(Le($a,Le(r.proc,Le(e[1].breakpoint,Le($t,ue)))),"breakpoint"),1}}function Iu(e,r){var n;e[x].steps?(0<=(n=Lo(e[x].steps,65535))&&(Nt=n+1,jt=e[x].trap),delete e[x].steps):Kt(Le($a,Le(e[x].trap,Le(r,ue))),"frametrap"),delete e[x].trap}function Eu(e){var r=jt;jt=Nt=!1;var n=Zu();R(n[x],e),Kt(Le($a,Le(r,Le(n,ue))),"steptrap")}function Mu(){return Ka(St)}function $u(e){return e[1][0]!==X?ue:(wu=e[1],xu=wu[1],e[1])}function qu(e,r){for(var n="",t=0;t<e;++t)n+=Os(r(t)),t<e-1&&(n+=" ");return""!==n&&Ou(bu,n),Ge}function _u(e,r){var n=ou;ou=bu,qu(e,r),ou=n;debugger;return Ge}function Ru(e){var r=ou;return null===(ou=Lo(e,9))&&(ou=r),_o(r)}function Fu(e,r){function i(e,r){if(e[0]===Q){var n,t=e[x];if(!B(t)||!zu(t))return;for(n=0;n<t.length;++n)i(t[n],r)}else{if(e[0]!==D)return;r===Xe?delete e[1].breakpoint:e[1].breakpoint=r}return 1}if(0===e)return E(Wu[1]===Wu);var n=r(0);if(n[0]===X)return 1<e?ue:(n===Ge?Wu[1]=Wu:n===ue&&(Wu[1]=ue),E(Wu[1]===Wu));if(2<e)return ue;var t=r(1);if(t!==ue){if(t!==Xe){e=Zu(),r=e[x];return r.enable=Ge,r.proc=t,i(n,e)?e:ue}i(n,t)}else if(n[1].breakpoint)return n[1].breakpoint;return ue}var Wu=Me("breakpoint",Fu,O);function Cu(e,r,n){var t,i,e=Lo(e,65535);if(null===e||e<0)return ue;if(r===ue)return eu(e);if(r[0]===G){if(s.negative(r[3]))return ue;t=r,i=n}else i=r;e=eu(e,!0);return e!==ue&&(e[x].trap=i,t?e[x].steps=t:delete e[x].steps),e}var Lu="*饢* Rcz *饢*",Bu=function(){};function Du(e){var p=new WeakMap;return function e(r){var n,t;if(p.get(r))return p.get(r);if(B(t=r[x])){n=Xu(kr,ue),p.set(r,n);for(var i,a=n[x],u=0;u<t.length;++u)(i=t[u])[0]===Q&&zu(i[x])?a[u]=e(i):a[u]=i}else{n=(r[3]instanceof Ju?Vu:Zu)(),p.set(r,n),n[2]=r[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&&zu(l[x])?f[o]=e(l):f[o]=l}}return n}(e)}function Xu(e,r,n){if(e===ue)return ue;if(e===wr)return r[0]!==Q||B(r[x])?_(r):(zu(r[x])?Zu:lo)(r[x]);if(e===xr){var t=Vu();return r[0]===X&&r[3][1]===Ue&&(rs(t,Mr,r),rs(t,$r,ec(De(["function","lambda","false",["strcat","{object ",r[3][2][1][Y],"}"]]),ue))),t}if(e===kr){var i;if(r[0]===Q&&B(r[x])){if(!zu(r[x]))return so(r[x],new WeakMap);i=r[x].slice()}else i=q(r);return i[Lu]=Bu,Ce(i)}if(e[0]===Q)return zu(e[x])?Du(e):so(e[x],new WeakMap);if(e!==Sr)return e===Nr?Ku():e===jr?to():e===Pr?qs(r,n):ue;if(r[0]!==z&&r[0]!==G)return ue;r=ve(r);return fe.splice(0,0,r),r}function zu(e){return B(e)?e[Lu]===Bu:e instanceof Bu}function Gu(){}function Zu(e){var r=Ce(ue),n=new Gu;return e&&Object.assign(n,e),r[x]=n,r}function Ju(){}function Vu(){var e=Ce(ue),r=new Ju;return e[x]=r,e}Gu.prototype=Object.create(Bu.prototype),Gu.prototype.constructor=Gu,Ju.prototype=Object.create(Bu.prototype),Ju.prototype.constructor=Ju;var Qu=0,Uu={};function Hu(e){return null===(e=Lo(e,Number.MAX_SAFE_INTEGER))||e<0?e=L:2147483647<e&&(e=2147483647),e}function Yu(i,n,t){var a,u,o=[],f=0,c=++Qu;function s(e,r){return r&&0<r?(l(),Uu[c].delay=r,setTimeout(e,r)):(Promise.resolve().then(e),-1)}function l(e){var r=Uu[c];(r=r||{nonce:i,start:(new Date).getTime(),waiting:[]}).count=f,n&&(r.execute=n),e&&r.waiting.push(e),Uu[c]=r}function p(e,r){r&&0<r&&clearTimeout(e)}function g(e){var r=i[x];if(r.hasOwnProperty(".exception")){var n=r[".exception"];return delete r[".exception"],e?Ja(n,ue):Va(n)}return e}function v(e){var r=Ge;for(u&&(!0===u?r=ue:(p(u,t),u=L)),a=e;0<o.length;)!function(n,t){var e;(e=Uu[c])&&e.waiting.pop(),s(function(){var e,r;e=n,r=t,Kt(Le(ir,Le(i,ue)),"fiberwake"),iu(e),vt=r,g(),ni(0==Tt)})}(o.shift(),a);return Mo(),delete Uu[c],r}function r(e){var r=pe,n=tr[1];return function(){!0!==u&&(++f,u=!0,Kt(Le($a,Le(e,Le(i,ue))),"future"),tr[1]=n,pe=r,ni(!0),v(qt),T.hasOwnProperty("interrupted")&&T.interrupted(y))}}n&&0<=t&&(u=s(r(n),t)),this.wait=Me("wait",function(e){return a?g(a):(e===ue&&(e=ru()),yt!==Mn&&l(e),o.push(tu(!1,!0)),++Xt,Ge)},J,!0)[U],this.signal=Me("signal",v,J,!0)[U],this.reset=Me("reset",function(e){return!0===u&&a===L?Ja(De(["internal","$can't reschedule future within itself"]),ue):(a=L,n&&(u&&!0!==u&&p(u,t),e=Hu(e),t=e||t||0,u=s(r(n),t)),i)},J,!0)[U]}function Ku(){var e=Ce(!1),r=new Yu(e);return e[w]=ue,e[x]=r,e}function eo(e){return E(e[0]===Q&&e[x]instanceof Yu)}function ro(e,r){var n=Ce(!1),r=new Yu(n,e,Hu(r));return r.cancel=r.signal,r.run=r.reset,delete r.signal,delete r.reset,n[w]=ue,n[x]=r,n}function no(){for(var e=Object.getOwnPropertyNames(Uu),r=ue,n=0;n<e.length;++n){var t=Uu[e[n]],i=new Gu;i.nonce=t.nonce,i.start=_o(t.start),i.count=_o(t.count),t.delay&&(i.delay=_o(t.delay)),t.execute&&(i.execute=t.execute),t.waiting&&(i.waiting=$(t.waiting)),r=Le(Ce(i),r)}return r}function to(e){var r=Ce(new WeakMap);return r[w]=ue,r}function io(e){return E(e[0]===Q&&e[x]instanceof WeakMap)}function ao(e,r){var b=[],y=[];function m(e,r){for(;;){if(e[0]!==D)return(e[0]===Q&&zu(e[x])?k:Xc)(e,r);if(r[0]!==D)return ue;if(m(e[1],r[1])===ue)return ue;e=e[2],r=r[2]}}function k(e,r){var n;if(e===r)return Ge;if(b.push(e),B(e[x])){if(!B(r[x]))return ue;y.push(r);var t,i,a,u=e[x],o=r[x];if(u.length!=o.length)return ue;for(t=0;t<u.length;++t)if(i=u[t],a=o[t],"number"==typeof i){if(i!=a)return ue}else if(i[0]===Q&&zu(i[x])){if((n=b.indexOf(i))!=y.indexOf(a))return ue;if(n<0&&(n=b.length,k(i,a)===ue))return ue;u[t]=n,o[t]=n}else if(m(i,a)===ue)return ue}else{if(B(r[x]))return ue;y.push(r);var f,c,s,l=e[x],p=r[x],g=Object.getOwnPropertyNames(l).sort(),v=Object.getOwnPropertyNames(p).sort();if(g.length!=v.length)return ue;for(f=0;f<g.length;++f){if((c=g[f])!=(s=v[f]))return ue;var d=l[c],h=p[s];if("number"==typeof d){if(d!=h)return ue}else if(d[0]===Q&&zu(d[x])){if((n=b.indexOf(d))!=y.indexOf(h))return ue;if(n<0&&(n=b.length,k(d,h)===ue))return ue;l[c]=n,p[s]=n}else if(m(d,h)===ue)return ue}}return Ge}function s(e,r){if(e[0]===Q&&zu(e[x]))if(B(e[x]))for(var n,t=e[x],i=0;i<t.length;++i)"number"==typeof(n=t[i])&&(n=r[n],t[i]=n),s(n,r);else for(var a,u=e[x],o=Object.getOwnPropertyNames(u),f=0;f<o.length;++f){var c=u[a=o[f]];"number"==typeof c&&(c=r[c],u[a]=c),s(c,r)}else e[0]===D&&(s(e[1],r),s(e[2],r))}if(e[0]!==Q||!zu(e[x]))return ue;if(r[0]!==Q||!zu(r[x]))return ue;var n=k(e,r);return s(e,b),s(r,y),n}function uo(e,r,n){for(var t,i=e;i[0]===Q;){var a,u=i[3];if(i[2][0]===Q&&i[2][3]instanceof Gu)a=i[2][3],n&&(u=a);else if(n)break;if(u.hasOwnProperty(r))return u[r];if(!t&&a&&a.hasOwnProperty(".class"))t=i=a[".class"];else{if(!a||!a.hasOwnProperty(".parent"))break;i=a[".parent"]}}return ue}function oo(e,r,n){if(e[0]!==Q)return ue;if(e[3]instanceof Ju){var t=uo(e,".="+po(r),!0);if(t!==ue){if(!Xr(e,!0))return vt;yt=mt[--kt];t=Kt(Le($a,Le(t,Le(n,ue))),"setdot",!0);return mt[kt++]=yt,tr[1]=e,t}}return xo(e,r,n)}function fo(e,r){for(var n=ue,t=n,i=0;i<e.length;++i){var a=new Array(v),u=(r?co:M)(u=e[i]);a[0]=D,a[1]=u,t!==(a[2]=ue)?t[2]=a:n=a,t=a}return n}function co(e){return"string"==typeof e?We(e):"number"==typeof e?(isFinite(e)&&Math.floor(e)==e?_o:Ro)(e):"boolean"==typeof e?E(e):e===L?Xe:null===e?ze:"object"==typeof e&&zu(e)?e:Ce(e)}function so(e,r){if(e===L)return Xe;if(null===e)return ze;if("object"!=typeof e||zu(e))return co(e);if(r.get(e))return r.get(e);var n=Ce(e);if(r.set(e,n),B(e)){for(var t=e.length,i=[],a=0;a<t;++a)i.push(so(e[a],r));i[Lu]=Bu}else{var u,o=Object.getOwnPropertyNames(e);if(0===o.length&&e.constructor!==Object)i=e;else if("0"===o[0]&&o[o.length-1]===(o.length-1).toString()&&"function"==typeof e.keys)i=e;else for(i=new Gu,u=0;u<o.length;++u)try{i[o[u]]=so(e[o[u]],r)}catch(e){}}return n[x]=i,n}function lo(e){if(e===L)return Xe;if(null===e)return ze;if("object"!=typeof e||zu(e))return co(e);for(var r=Object.getOwnPropertyNames(e),n=new Gu,t=0;t<r.length;++t)try{n[r[t]]=co(e[r[t]])}catch(e){}return Ce(n)}function po(e,r){if(e[0]===D){if(I(e[1])){var n,t=pe,i=tr[1];return function(){return n=fo(arguments,!0),Kt(Le($a,Le(e,n)),"xcallback"),tr[1]=i,pe=t,ni(!0),T.hasOwnProperty("interrupted")&&T.interrupted(y),po(qt)}}for(f=[];e[0]===D;)f.push(po(e[1],r)),e=e[2];return f}if(e[0]===X)return e===Ge||e!==ue&&(e===Xe?L:e===ze?null:e[Y]);if(e[0]===z)return e[K];if(e[0]===G)return Co(e[3]);if(e[0]===Z)return e[re];if(e[0]===Q){var a=e[x];if(!zu(a))return a;if(r){if(r.get(a))return r.get(a)}else r=new WeakMap;if(B(a)){var u,o=a.length,f=[];for(r.set(a,f),u=0;u<o;++u)f.push(po(a[u],r))}else{var c,s=Object.getOwnPropertyNames(a);for(f={},r.set(a,f),c=0;c<s.length;++c)f[s[c]]=po(a[s[c]],r)}}return f}function go(e){if(e[0]===D)return e;if(e[0]!==Q)return ue;var r=e[x],n=zu(r);if(B(r))return fo(r,!n);for(var t=Object.getOwnPropertyNames(r),i=ue,a=t.length-1;0<=a;--a)try{var u,o=t[a];o!==L&&r[o]!==L&&(u=r[o],n||(u=co(u)),i=Le(Le(co(o),u),i))}catch(e){}return i}function vo(e,r){function u(){var e=er[1],r=Xt;if(ni(!0),r!=Xt&&Ja(De(["internal","fiber suspended during array callback"]),ue),e!==er[1])throw _t}function n(e,r,n){var t,i=pe,a=tr[1];return function(){return t=Le(arguments[0],Le(co(arguments[1]),Le(r,ue))),Kt(Le($a,Le(e,t)),"arrayfilter"),tr[1]=a,pe=i,u(),1===n?qt:(2===n&&(qt=E(A(qt))),po(qt))}}function t(r){var n,t=pe,i=tr[1];return function(){var e=r?(n=fo(arguments,!1),Kt(Le($a,Le(r,n)),"arraycompare"),tr[1]=i,pe=t,u(),po(qt)):Jc(arguments[0],arguments[1]);return e}}function i(e,r,n){var t;if(r){if(r[0]!==G)return ue;null===(t=Co(r[3],Number.MAX_SAFE_INTEGER))?t=n:(t<0&&(t=e-1+t),e<=t&&(t=e-1))}else t=n;return t}function a(e,r){var n="";r=r?po(r):",";for(var t=0;t<e.length;++t){var i=po(e[t]);0<t?n=n+r+i:n+=i}return co(n)}if(e<2)return ue;var o=r(0),f=r(1);if(o[0]!==Q||f[0]===D||f[0]===Q&&zu(f))return ue;var c=o[3];if(!zu(c)||!B(c))return ue;for(var s,l,p=po(f),g=[],v=0;v<e-2;++v)switch(p){case"every":case"filter":case"find":case"findIndex":case"forEach":case"some":0===v&&g.push(n(r(v+2),o,2));break;case"map":0===v&&g.push(n(r(v+2),o,1));break;case"indexOf":case"join":case"lastIndexOf":case"push":case"unshift":g.push(r(v+2));break;case"concat":(l=r(v+2))[0]===Q&&B(l[3])?(zu(s=l[3])||(s=so(s,new WeakMap)[3]),g.push(s)):g.push([l]);break;case"copyWithin":case"slice":g.push(po(r(v+2)));break;case"pop":case"reverse":case"shift":break;case"reduce":case"reduceRight":0===v?g.push(function(e,r){var n,t=pe,i=tr[1];return function(){return n=Le(arguments[0],Le(arguments[1],Le(co(arguments[2]),Le(r,ue)))),Kt(Le($a,Le(e,n)),"arrayreduce"),tr[1]=i,pe=t,u(),qt}}(r(v+2),o)):1==v&&g.push(r(v+2));break;case"sort":0===v&&g.push(t(r(v+2)));break;case"fill":0===v?g.push(r(v+2)):g.push(po(r(v+2)));break;case"splice":v<2?g.push(po(r(v+2))):g.push(r(v+2));break;default:return ue}var d=!0;switch(p){case"find":d=!1;case"every":case"filter":case"findIndex":case"forEach":case"map":case"some":if(g.length<1)return ue;break;case"sort":0===g.length&&g.push(t());break;case"indexOf":return function(e,r,n){if((n=i(e.length,n,0))===ue)return ue;for(var t=n;t<e.length;++t)if(Dc(e[t],r)!=ue)return _o(t);return _o(-1)}(c,g[0],g[1]);case"join":return g.length<1?a(c,!1):a(c,g[0]);case"lastIndexOf":return function(e,r,n){if((n=i(e.length,n,e.length-1))===ue)return ue;for(var t=n;0<=t;--t)if(Dc(e[t],r)!=ue)return _o(t);return _o(-1)}(c,g[0],g[1]);case"pop":case"shift":d=!1;break;case"reduce":case"reduceRight":if(d=!1,g.length<1)return ue;if(g.length<2){if(c.length<1)return ue;g.push(c[0]),c=c.slice(1)}break;case"toString":return ps(o,ue);case"push":case"unshift":case"concat":case"copyWithin":case"reverse":case"slice":case"fill":case"splice":break;default:return Ja(De(["internal",'$arrayCall "'+p+'": not defined']),ue)}try{Mt=1,yt=Zr;var h=Array.prototype[p],b=ue;return h!==L&&(b=h.apply(c,g),!d&&B(b)||(b=b===c?o:B(b)?(b[Lu]=Bu,Ce(b)):co(b))),Mt=-1,b}catch(e){if(e===_t)throw e;return Mt=-1,Ja(De(["internal",'$arrayCall "'+p+'": '+e.toString()]),ue)}}function ho(e,r){if(e[0]!==Q)return ue;var n,e=e[x];if(r[0]===X)n=r[Y];else{if(r[0]!==z)return ue;n=r[K]}return E(e.hasOwnProperty(n))}function bo(e){if(e[0]===k)return Kf(e);if(e[0]!==Q)return ue;e=e[x];return B(e)?ue:fo(Object.getOwnPropertyNames(e),!0)}function yo(e,r){for(var n=[{}],t=0;t<e;++t){var i=r(t);if(i[0]!==Q||B(i[x])){if(i[0]===D){var a=Object.assign.apply({},n);do{}while(delete a[po(i[1])],(i=i[2])[0]===D);n=[a]}}else zu(i[x])?n.push(i[x]):n.push(lo(i[x])[x])}return Zu(Object.assign.apply({},n))}function mo(e){return E(e[0]===Q&&!zu(e[3]))}function ko(e,r){if(r===ue&&(r=le),e[0]!==Q||r[0]!==k)return ue;if(pe!==ce){if(e[H]!==ue)return e[H]==r?e:ue;if(r!==le&&r!==pe&&r!==fe[0])return Ja(De(["internal","$can't lock "+Os(e)+" to "+de(r)]),ue),ue}return e[H]=r,e}function wo(e,r){if(e[0]!==Q)return ue;var n=e[3];if(n instanceof WeakMap&&r[0]!==z&&r[0]!==G&&r[0]!==Z){e=n.get(r);return e===L&&(e=ue),M(e)}if(r[0]===D||r[0]===Q&&zu(r))return ue;var t=po(r);try{return zu(n)||n instanceof WeakMap?B(n)&&"length"==t?co(n.length):n.hasOwnProperty(t)?M(n[t]):ue:co(n[t])}catch(e){return Ja(De(["internal",'$xget "'+t+'": '+e.toString()]),ue)}}function xo(e,r,n){if(e[0]!==Q)return ue;var t=e[3];if(t instanceof WeakMap&&r[0]!==z&&r[0]!==G&&r[0]!==Z)return Xr(e,!0)?(n===Xe?t.delete(r):t.set(r,n),n):vt;if(r[0]===D||r[0]===Q&&zu(r))return ue;if(!Xr(e,!0))return vt;var i=po(r);try{if(Mt=1,yt=Zr,n===Xe)delete t[i];else if(zu(t)||t instanceof WeakMap)if(B(t))if("length"==i)t.length=po(n);else{var a,u=parseInt(i);if(u!=u+"")return Mt=-1,Ja(De(["internal","$non-numeric array index"]),ue);for(t[i]=n,a=0;a<i;++a)t[a]===L&&(t[a]=ue)}else t[i]=n;else t[i]=po(n);return Mt=-1,n}catch(e){return Mt=-1,Ja(De(["internal",'$xset "'+i+'": '+e.toString()]),ue)}}function Oo(e,r){return e<2?ue:So(r(0),r(1),e-2,2,r)}function So(e,r,n,t,i){if(r[0]===D||r[0]===Q&&zu(r[3]))return ue;var a=po(r),u=null;if(e&&e[0]===Q){if(zu(u=e[3]))return ue;if(u instanceof WeakMap)return ue}for(var o,f=ue,c=u===Number||u===String||u===Boolean,s=[],l=0;l<n;++l)s[l]=po(i(l+t));try{return Mt=1,yt=Zr,r[0]===Q?f=co(r[3].apply(u,s)):(!u||u.prototype!==L&&(o=u.prototype[a])!==L||(c=!1,o=u[a]),o!==L&&(f=co(c?o.apply(s[0],s.slice(1)):o.apply(u,s)))),Mt=-1,f}catch(e){return Mt=-1,Ja(De(["internal",'$xcall "'+a+'": '+e.toString()]),ue)}}function No(e,r,n){if(e[0]!==Q||r[0]===D||r[0]===Q&&zu(r))return ue;var t=n===ue?[]:po(n);if(!B(t))return ue;var i=po(r),a=null;if(e[0]===Q){if(zu(a=e[3])){if(a.hasOwnProperty(i)){e=a[i];if(B(e))return Ia(e,n)}return ue}if(a instanceof WeakMap)return ue}var u,o=ue,f=a===Number||a===String||a===Boolean;try{return Mt=1,yt=Zr,r[0]===Q?o=co(r[3].apply(a,t)):(a.prototype!==L&&(u=a.prototype[i])!==L||(f=!1,u=a[i]),u!==L&&(o=co(f?u.apply(t[0],t.slice(1)):u.apply(a,t)))),Mt=-1,o}catch(e){return Mt=-1,Ja(De(["internal",'$xapply "'+i+'": '+e.toString()]),ue)}}function jo(e,r){return Ao(),0<e?Po(r(0),e-1,1,r):Po(L,0,0,r)}function Po(e,r,n,t){var i;if(e===L)return(i=co({}))[w]=lo({persist:!0}),i;if(e[0]===z||e[0]===X)return co(l[Fe(e)]);if(e[0]===G)return Ce(s.bigInt2uint8(e[ee]));if(e[0]===D)return Ce(po(e));if(e[0]!==Q)return ue;var a,u=e[3];if(zu(u))return co(po(e));if(u===WeakMap)return ue;try{if("function"==typeof u){for(var o=[null],f=0;f<r;++f)o.push(po(t(f+n)));Mt=1,yt=Zr;var c=new(Function.prototype.bind.apply(u,o));return Mt=-1,Ce(c)}if(1<r)return ue;c=t(n);return Mt=1,yt=Zr,i=0===r?("object"==typeof(a=Object.create(u))?Ce:co)(a):c[0]!==Q?ue:("object"==typeof(a=Object.create(u,c[3]))?Ce:co)(a),Mt=-1,i}catch(e){return Mt=-1,Ja(De(["internal","$xnew: "+e.toString()]),ue)}}function To(){return Ao(),Ge}function Ao(){0===It&&(At=Tt,It=St,Tt=0,Tr[1]=Ge)}function Io(){St<It&&(Et||(Tt=At),It=0,Tr[1]=E(0==Tt))}function Eo(e){return Mt<0?(Mt=0,Ge):(Mt=1,pi())}function Mo(){Mt=-1}function $o(){return Eo()}function qo(e,r){var n=new Array(o);return n[0]=G,(n[1]=n)[2]=r,n[3]=e,n}function _o(e,r){return"number"!=typeof e||isNaN(e)?ue:(r=r||ue,qo(Fo(e),r))}function Ro(e){var r=new Array(c);return r[0]=Z,(r[1]=r)[2]=ue,r[3]=e,r}function Fo(e){var r=Math.abs(e);"number"==typeof r&&!isNaN(r)||(r=0);r=s.int2bigInt(r,a,1);return e<0&&(r=s.negate(r)),s.trim(r,1)}function Wo(e,r){var n=s.int2bigInt(r,64,1),t=1;return s.negative(e)&&(e=s.negate(e),t=-1),s.greater(e,n)?null:t*s.modInt(e,r+1)}function Co(e){var r=s.negative(e);r&&(e=s.negate(e));var n,t=s.bitSize(e);return e=a<t?Number.POSITIVE_INFINITY:i<t?(n=s.rightShift(e,t-i),s.modInt(n,Number.MAX_VALUE)*Math.pow(2,t-i)):s.modInt(e,Number.MAX_SAFE_INTEGER+1),r?-e:e}function Lo(e,r){if(e[0]===G)return Wo(e[3],r);if(e[0]===Z){e=e[3];if(-r<=e&&e<=r)return e}return null}function Bo(e){if(s.bitSize(e)<=i)return Co(e);var r="";return s.negative(e)&&(e=s.negate(e),r="-"),r+s.bigInt2str(e,10)}function Do(e){if("string"!=typeof e)return Fo(e);e="-"==e.charAt(0)?s.negate(s.str2bigInt(e.substring(1),10,1)):s.str2bigInt(e,10,1);return e}function Xo(e,r,n,t){return e[0]===G?qo(s.negate(e[3]),ue):e[0]===Z?Ro(-e[3]):e[0]===Q&&e[3]instanceof Ju?di(e,".negate"):vi(Te(t[2][1],"extendNegate"))}function zo(e,r){return e[0]===G&&r[0]===G?qo(s.add(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Ro(e[3]+r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])+r[3]):e[0]===Z&&r[0]===G?Ro(e[3]+Co(r[3])):ue}function Go(e,r,n){var t;if(2==e&&(t=zo(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".plus")}return vi(Te(n[2][1],"extend+"))}function Zo(e,r){return e[0]===G&&r[0]===G?qo(s.sub(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Ro(e[3]-r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])-r[3]):e[0]===Z&&r[0]===G?Ro(e[3]-Co(r[3])):ue}function Jo(e,r,n){var t;if(2==e&&(t=Zo(r(0),r(1)))!==ue)return t;if(1==e)return Xo(r(0),null,null,n);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".difference")}return vi(Te(n[2][1],"extend-"))}function Vo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Ro(e[3]*r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])*r[3]):e[0]===Z&&r[0]===G?Ro(e[3]*Co(r[3])):ue;var n=e[3],t=r[3],i=s.negative(n),e=s.negative(t);return i&&(n=s.negate(n)),e&&(t=s.negate(t)),n=s.greater(n,r[3])?s.mult(n,t):s.mult(t,n),i!=e&&(n=s.negate(n)),qo(n,ue)}function Qo(e,r,n){var t;if(2==e&&(t=Vo(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".times")}return vi(Te(n[2][1],"extend*"))}function Uo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Ro(e[3]/r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])/r[3]):e[0]===Z&&r[0]===G?Ro(e[3]/Co(r[3])):ue;if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var n=e[3],t=r[3],i=s.negative(n),a=s.negative(t);i&&(n=s.negate(n)),a&&(t=s.negate(t));var u=s.dup(n),e=s.dup(n),r=a;return s.divide_(n,t,u,e),i&&(r=!a,s.isZero(e)||(u=s.addInt(u,1),e=s.sub(t,e))),r&&(u=s.negate(u)),qo(s.trim(u,1),ue)}function Ho(e,r,n,t){var i;return(i=Uo(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".quotient"):r[0]===Q&&r[3]instanceof Ju?di(r,".quotient"):vi(Te(t[2][1],"extend/"))}function Yo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Ro(e[3]%r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])%r[3]):e[0]===Z&&r[0]===G?Ro(e[3]%Co(r[3])):ue;if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var n=e[3],t=r[3],i=s.negative(n),e=s.negative(t);i&&(n=s.negate(n)),e&&(t=s.negate(t));r=s.dup(n),e=s.dup(n);return s.divide_(n,t,r,e),i&&(s.isZero(e)||(e=s.sub(t,e))),qo(s.trim(e,1),ue)}function Ko(e,r,n,t){var i;return(i=Yo(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".modulo"):r[0]===Q&&r[3]instanceof Ju?di(r,".modulo"):vi(Te(t[2][1],"extendMod"))}function ef(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Q&&e[3]instanceof Ju?di(e,".divide"):r[0]===Q&&r[3]instanceof Ju?di(r,".divide"):vi(Te(t[2][1],"extendDivide"));if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var i=e[3],a=r[3],u=s.negative(i),t=s.negative(a);u&&(i=s.negate(i)),t&&(a=s.negate(a));e=s.dup(i),r=s.dup(i);return s.divide_(i,a,e,r),u&&(s.isZero(r)||(e=s.addInt(e,1),r=s.sub(a,r))),Le(qo(s.trim(e,1),ue),qo(s.trim(r,1),ue))}function rf(e,r,n,t){return e[0]===G?qo(s.not(e[3]),ue):e[0]===Z?Ro(~e[3]):e[0]===Q&&e[3]instanceof Ju?di(e,".bitnot"):vi(Te(t[2][1],"extendBitNot"))}function nf(e,r){return e[0]===G&&r[0]===G?qo(s.and(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Ro(e[3]&r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])&r[3]):e[0]===Z&&r[0]===G?Ro(e[3]&Co(r[3])):ue}function tf(e,r,n){var t;if(2==e&&(t=nf(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitand")}return vi(Te(n[2][1],"extendBitAnd"))}function af(e,r){return e[0]===G&&r[0]===G?qo(s.or(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Ro(e[3]|r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])|r[3]):e[0]===Z&&r[0]===G?Ro(e[3]|Co(r[3])):ue}function uf(e,r,n){var t;if(2==e&&(t=af(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitor")}return vi(Te(n[2][1],"extendBitOr"))}function of(e,r){return e[0]===G&&r[0]===G?qo(s.xor(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Ro(e[3]^r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])^r[3]):e[0]===Z&&r[0]===G?Ro(e[3]^Co(r[3])):ue}function ff(e,r,n){var t;if(2==e&&(t=of(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitxor")}return vi(Te(n[2][1],"extendBitXor"))}function cf(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Ro(e[3]<<r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])<<r[3]):e[0]===Z&&r[0]===G?Ro(e[3]<<Co(r[3])):ue;r=Co(r[3]);if(r<0)r=0;else if(n<r)return Ja(De(["internal","shiftleft > ".concat(n)]),ue);return qo(s.leftShift(e[3],r),ue)}function sf(e,r,n,t){var i;return(i=cf(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".shiftleft"):r[0]===Q&&r[3]instanceof Ju?di(r,".shiftleft"):vi(Te(t[2][1],"extendShiftLeft"))}function lf(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Ro(e[3]>>r[3]):e[0]===G&&r[0]===Z?Ro(Co(e[3])>>r[3]):e[0]===Z&&r[0]===G?Ro(e[3]>>Co(r[3])):ue;r=Co(r[3]);return r<0&&(r=0),qo(s.rightShift(e[3],r),ue)}function pf(e,r,n,t){var i;return(i=lf(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".shiftright"):r[0]===Q&&r[3]instanceof Ju?di(r,".shiftright"):vi(Te(t[2][1],"extendShiftRight"))}function gf(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?E(e[3]>r[3]):e[0]===G&&r[0]===Z?E(Co(e[3])>r[3]):e[0]===Z&&r[0]===G?E(e[3]>Co(r[3])):e[0]===z&&r[0]===z?E(e[K]>r[K]):e[0]===Q&&e[3]instanceof Ju?di(e,".greater"):r[0]===Q&&r[3]instanceof Ju?di(r,".greater"):t?vi(Te(t[2][1],"extend>")):ue;if(s.equals(e[3],r[3]))return ue;if(s.negative(e[3])){if(!s.negative(r[3]))return ue;var i=s.negate(e[3]),t=s.negate(r[3]),i=s.greater(t,i)}else{if(s.negative(r[3]))return Ge;i=s.greater(e[3],r[3])}return E(i)}function vf(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?E(e[3]<r[3]):e[0]===G&&r[0]===Z?E(Co(e[3])<r[3]):e[0]===Z&&r[0]===G?E(e[3]<Co(r[3])):e[0]===z&&r[0]===z?E(e[K]<r[K]):e[0]===Q&&e[3]instanceof Ju?di(e,".lesser"):r[0]===Q&&r[3]instanceof Ju?di(r,".lesser"):t?vi(Te(t[2][1],"extend<")):ue;if(s.equals(e[3],r[3]))return ue;if(s.negative(e[3])){if(!s.negative(r[3]))return Ge;var i=s.negate(e[3]),t=s.negate(r[3]),i=s.greater(t,i)}else{if(s.negative(r[3]))return ue;i=s.greater(e[3],r[3])}return E(!i)}function df(e,r,n,t){return e[0]===Z?e:e[0]===G?Ro(Co(e[3])):e[0]===z?Ro(parseFloat(e[3])):e[0]===Q&&"number"==typeof e[x]?Ro(e[x]):e[0]===Q&&e[3]instanceof Ju?di(e,".tofloat"):vi(Te(t[2][1],"extendTofloat"))}function hf(e){return null!==(e=Lo(e,36))&&2<=e?e:-1}function bf(e,r){if(e[0]===Z)return _o(Math.floor(e[3]));if(e[0]===G)return qo(e[x],ue);if(e[0]===z){if(0!==e[3].indexOf("0x"))return r===ue?_o(parseInt(e[3])):((n=hf(r[3]))<0&&(n=10),_o(parseInt(e[3],n)));n=_o(parseInt(e[3],16));return n[w]=lo({hexcon:!0}),n}if(e[0]===Q){var n=e[x].valueOf();if("number"==typeof n)return isFinite(n)?_o(n):ue;try{if(e[x]instanceof Uint8Array)return qo(s.uint82bigInt(e[x]),ue)}catch(e){return ue}}return ue}function yf(e){return e[w]!==ue&&A(e[w][x].hexcon)}function mf(e){return e[1]}function kf(e){return e[1]}function wf(e){return e[2]}function xf(e){return e[1][1]}function Of(e){return e[2][1]}function Sf(e){return e[1][2]}function Nf(e){return e[2][2]}function jf(e){return e[1][1][1]}function Pf(e){return e[2][1][1]}function Tf(e){return e[1][2][1]}function Af(e){return e[2][2][1]}function If(e){return e[1][1][2]}function Ef(e){return e[2][1][2]}function Mf(e){return e[1][2][2]}function $f(e){return e[2][2][2]}function qf(e){return e[1][1][1][1]}function _f(e){return e[2][1][1][1]}function Rf(e){return e[1][2][1][1]}function Ff(e){return e[2][2][1][1]}function Wf(e){return e[1][1][2][1]}function Cf(e){return e[2][1][2][1]}function Lf(e){return e[1][2][2][1]}function Bf(e){return e[2][2][2][1]}function Df(e){return e[1][1][1][2]}function Xf(e){return e[2][1][1][2]}function zf(e){return e[1][2][1][2]}function Gf(e){return e[2][2][1][2]}function Zf(e){return e[1][1][2][2]}function Jf(e){return e[2][1][2][2]}function Vf(e){return e[1][2][2][2]}function Qf(e){return e[2][2][2][2]}function Uf(e,r){if(0===e)return ue;if(1==e)return Le(r(0),ue);for(var n=r(--e);0<=--e;)n=Le(r(e,r),n);return n}function Hf(e,r){if(0===e)return ue;for(var n=r(0);0<--e;)n=Le(r(e,r),n);return n}function Yf(e,r){for(;e[0]===D;)r=Le(e[1],r),e=e[2];return r}function Kf(e){var r,n;if(e[0]===k&&0<=(n=oe.indexOf(e)))r=oe[n][te];else{if(e!==ue)return ue;r=fe[0][te]}for(var t=ue,i=null,a=0;a<r.length;++a){var u=Le(r[a],ue);i?i[2]=u:t=u,i=u}return t}function ec(e,r){var n;r===ue&&(r=(n=e[2][1])===Ze?fe[0]:n!==ue?n[H]:ue);r=zr(e,r);return"string"==typeof r?Ja(De(["internal",r]),ue):Xr(r[2][1])?r:vt}function rc(e){function r(e){for(var r=-1;++r<zt;){var n=e[2][3][".parent"];if(!n)return[e,r];e=n}return[ue,r]}function n(e){var r=e[2][3][".base"];return r||e}if(e[0]!==X||e[3]===ue)return ue;var t,i;[t,i]=r(e=e[3][2][1]);var a=n(t);if(a===ue)return ue;for(var u=ye(e[Y]),o=ue,f=0;f<u.length;++f){var c,s,l=u[f];[c,s]=r(l),s==i&&n(c)===a&&(o=Le(l,o))}return o}function nc(e){var r=e[1];if(r[0]!==X||r[1][0]!==D)return ue;e=r[1][1];return r[1]=r[1][2],e}function tc(e,r){return Xr(e,!0)?(e[2]=r,e):vt}function ic(e){return Ar[1]=e}function ac(e,i){return function e(r){if(Dc(r,i)!==ue)return ue;for(var n,t=0;;){if(Dc(r,i)!==ue){t=-t,n=ue;break}if(r[0]!==D)return!1;if(n=e(r[1]))break;r=r[2],++t}return Le(_o(t),n)}(e)||ue}Yu.prototype=Object.create(Bu.prototype),Yu.prototype.constructor=Yu;var uc=100,oc=101,fc=102,cc=103,sc=104,lc=105,pc=106,gc=107,vc=108,dc=109,hc=110;function bc(e,r){if(!e)return-1;for(var n=!1,t=0;t<e;++t){var i=r(t),a=i[0];if(a===Q&&zu(i[x])?a=B(i[x])?oc:i[x]instanceof Ju?cc:i[x]instanceof Yu?sc:i[x]instanceof WeakMap?lc:i[x]instanceof Ms?pc:fc:a===D?a=I(i[1])?dc:hc:J<=a&&a<=V&&(a=vc),n){if(a!==n)if(n===G&&a===Z||n===Z&&a===G)n=uc;else if(n!==uc||n!==Z&&a!==G)if(n===X&&a===z||n===z&&a===X)n=gc;else if(n!==gc||n!==X&&a!==z){if(!(n===dc&&a===hc||a===hc&&a===dc))return-1;n=hc}else;else;}else n=a}return n}function yc(e,r){switch(bc(e,r)){case D:return vr;case X:return dr;case z:return mr;case G:return hr;case Z:return br;case J:case O:return gr;case V:return Qe;case Q:return Or;case k:return Sr;case uc:return yr;case oc:return kr;case fc:return wr;case cc:return xr;case sc:return Nr;case lc:return jr;case pc:return Pr;case vc:return gr;case hc:return vr}return ue}function mc(e){return E(e[0]===X&&e[Y]==Ze[Y])}function kc(e,r,n){var t=bc(e,r);if(t===Z||t===G||t===uc)return Ge;for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".numeric")}return vi(Te(n[2][1],"extendNumeric"))}function wc(e,r){return E(bc(e,r)===G)}function xc(e,r){return E(bc(e,r)===Z)}function Oc(e){return e[0]===X&&e[H][te][e[H][ie][e[Y]]]===e?e:e[0]===z?je(e[K]):ue}function Sc(e){var r;if(e[0]===X)r=e[Y];else{if(e[0]!==z)return ue;r=e[K]}return Br(r)[U]}function Nc(e,r){return E(bc(e,r)===X)}function jc(e,r){return E(bc(e,r)===z)}function Pc(e,r){r=bc(e,r);return E(r===X||r===z||r===gc)}function Tc(e,r){return E(bc(e,r)===vc)}function Ac(e,r){return E(bc(e,r)===dc)}function Ic(e,r){return E(bc(e,r)===oc)}function Ec(e){return E(e[0]===Q&&zu(e[3])&&B(e[3]))}function Mc(e,r){return E(bc(e,r)===fc)}function $c(e){return E(e[0]===Q&&e[3]instanceof Gu)}function qc(e,r){return E(bc(e,r)===cc)}function _c(e,r){r=bc(e,r);return E(r===D||r===dc||r===hc)}function Rc(e,r){if(0===e)return ue;for(var n=0;n<e;++n)if(r(n)[0]===D)return ue;return Ge}function Fc(e,r){return Rc(e,r)}function Wc(e){return e[0]===G?E(!s.negative(e[3])&&!s.isZero(e[3])):e[0]===Z?E(0<e[3]):ue}function Cc(e){return e[0]===G?E(s.negative(e[3])):e[0]===Z?E(e[3]<0):ue}function Lc(e){return e[0]===G?E(s.isZero(e[3])):e[0]===Z?E(0===e[3]):ue}function Bc(e){if(e[0]===G)return E(0===s.modInt(e[3],2));if(e[0]!==Z)return ue;e=e[3]/2;return E(e==Math.floor(e))}function Dc(e,r,n,t){return e[0]===G&&r[0]===G?E(s.equals(e[3],r[3])):e[0]===Z&&r[0]===Z?E(e[3]===r[3]):e[0]===G&&r[0]===Z||e[0]===Z&&r[0]===G?e[0]===Q&&e[3]instanceof Ju?di(e,".eq"):r[0]===Q&&r[3]instanceof Ju?di(r,".eq"):vi(Te(t[2][1],"extendEq")):e[0]===z&&r[0]===z||e[0]===Q&&r[0]===Q?E(e[3]===r[3]):E(e==r)}function Xc(e,r,n,t){return e[0]===X&&r[0]===X?e===r||e[Y]===r[Y]?Ge:ue:e[0]===G&&r[0]===Z?E(Co(e[3])==r[3]):e[0]===Z&&r[0]===G?E(e[3]==Co(r[3])):e[0]===J&&r[0]===J||e[0]===O&&r[0]===O||e[0]===V&&r[0]===V?E(e[ne]===r[ne]):Dc(e,r,n,t)}function zc(e,r){for(;;){if(e[0]!==D)return(e[0]===Q&&zu(e[x])?ao:Xc)(e,r);if(r[0]!==D)return ue;if(zc(e[1],r[1])===ue)return ue;e=e[2],r=r[2]}}function Gc(e,r){for(;;){if(r[0]!==D)return ue;if(zc(e,r[1])===Ge)return r;r=r[2]}}function Zc(e,r){for(var n;;){if(r[0]!==D)return ue;if(zc(e,r[1])===Ge)return r;if(r[1][0]===D&&(n=Zc(e,r[1]))!==ue)return n;r=r[2]}}function Jc(e,r){if(e===r)return 0;if(!A(r))return A(e)?-1:0;if(!A(e))return 1;if(!(e[0]!==Z&&e[0]!==G||r[0]!==Z&&r[0]!==G))return vf(e,r)===Ge?-1:gf(e,r)===Ge?1:0;var n=!1;if(e[0]===r[0]&&(n=e[0]),n===X){if(e[Y]<r[Y])return-1;if(e[Y]>r[Y])return 1;var t=Ae(e),i=Ae(r);return 0<=t&&0<=i?t<i?-1:i<t?1:0:0<=t&&i<0?-1:t<0&&0<=i?1:0}if(n===z)return e[K]==r[K]?0:e[K]<r[K]?-1:1;if(n===k)return Jc(e[j],r[j]);if(n===D)for(;;){var a=Jc(e[1],r[1]);if(0!==a)return a;if(e=e[2],r=r[2],e[0]!==D)return r[0]!==D?0:-1;if(r[0]!==D)return 1}return e[0]<r[0]?-1:e[0]>r[0]?1:0}function Vc(e,r){return _o(Jc(e,r))}function Qc(e,r){return makeBoolean(Jc(e,r)<0)}function Uc(e){return E(!A(e))}function Hc(e,r){if(e[0]===D){for(var n=e;n[0]===D;){if(n[S]!==ue&&!Xr(n[S]))return;n=n[N]}n=e;for(var t=r;n[0]===D;)t[0]!==D?n[S]!==ue&&(n[S][1]=t):(n[S]!==ue&&(n[S][1]=t[S]),t=t[N]),n=n[N]}else{if(!Xr(e))return;e[1]=r}return 1}function Yc(e,r){return Hc(e,r)?r:vt}function Kc(e,r,n,t){function i(e){if(e[0]===X&&(e=W(e[U])),e[0]===J)return e[ne];if(e[0]===O){if((e=e[ne])===Go)return zo;if(e===Jo)return Zo;if(e===Qo)return Vo;if(e===Ho)return Uo;if(e===Ko)return Yo;if(e===sf)return cf;if(e===pf)return lf;if(e===tf)return nf;if(e===ff)return of;if(e===uf)return af}return function(){return ue}}function a(e){return e[0]===Q&&e[3]instanceof Ju&&(wa(e,t!==ue?".preadjust":".postadjust",Le(e,Le(r,Le(n,ue)))),mt[kt++]=yt,1)}if(e[0]===D){var u,o=e[1],f=e[2][1];if(a(u=wo(o,f)))return vt;f=xo(o,f,i(r)(u,n))}else{if(e[0]!==X)return Ja(De(["internal","$invalid adjust target"]),ue);if(a(u=e[1]))return vt;f=Yc(e,i(r)(u,n))}return t!==ue?f:u}function es(e,r){e=e[2];return $c(e)===ue?ue:wo(e,r)}function rs(e,r,n){if(!Xr(e,!0))return vt;var t=e[2];if(t===ue)e[2]=t=Xu(wr,ue);else if($c(t)===ue)return Ja(De(["internal","$invalid put annotation target"]),ue);return r===ue?ue:xo(t,r,n)}function ns(e,r,n){return Xr(e,!0)?r[0]!==X?ue:(n===ue&&(t=e[2]),e[2]=F(r[2],t),e):vt;var t}function ts(e,r){return e[0]>=J&&e[0]<=V&&Xs()===ue?We(e[3].name):e[0]!==X?ue:r===Ge?W(e):e[3]}function is(e,r){if(e[0]!==X)return ue;if(!Xr(e))return vt;if(r[0]>=J&&r[0]<=V||r[0]===X)return e[3]=r;if(r[0]===D){var n=r[2][1][2];return e[2]!==n&&(e[2]=F(n)),e[3]=r}if(r[0]===z)try{var t=function(e,r,n){return eval(e)}(r[K],{j2n:co,n2j:po,nanu:Xu,pl:Ss,ns:e[H]},ue);if("function"!=typeof t)return We("compile: not a function");var i=[O,null,e,t];return i[1]=i,e[3]=i}catch(e){return Ou(yu,"compile: "+e.toString()),We(e)}return ue}function as(e,r){if(r[0]!==X||e[0]!==X)return ue;if(!Xr(e))return vt;if(r[3][0]>=J&&r[3][0]<=V)return Me(e[Y],r[3][3],r[3][0]);if(r[3][0]!==D)return e[3]=r[3];var n=Oe(r[Y]),t=r[3][2][1];t[Y]===Ze[Y]&&(n[S]=Ze),n[H]=t[H];r=Le(r[3][1],Le(n,r[3][2][2]));return n[3]=r,e[3]=r}var us=!1;function os(e,r){return!us&&yu<=ou&&(us=!0,Ou(yu,"warning: moveproc() is deprecated in favor of copyproc()")),as(r,e)}function fs(e){return e===ue?ce:e[0]===X||e[0]===Q?e[H]:e[0]===k?e[j]:ue}function cs(e){return e===ue?$(fe):e[0]===D?he(e):e[0]===X&&e===Ge?$(oe):ue}function ss(e,r){if(0===e)return pe;var n=r(0);if(1==e&&n[0]===k){var t=pe;return pe===ce&&(pe=n),t}for(var i=0;i<e;++i){var a=r(i);if(a[0]===k)n=a;else{if(a[0]!==X&&a[0]!==Q)return ue;if(!A(a))return ue;n=a[H]}if(n!==ue&&(n!=pe&&pe!==ce))return ue}return Ge}function ls(e,r){for(var n=[],t=0;t<e;++t)n.push(r(t));for(var i,a=ue,u=0;u<n.length;++u)(i=n[u])[0]===k?be(i):a=Le(i,a);return a}function ps(e,r){var n;$c(r)===Ge&&(n=r[x]);e=We(Os(e,n));return n&&A(n.noquote)&&(e[w]=lo({noquote:!0})),e}function gs(e,r){for(var n="",t=0;t<e;++t)n+=Os(r(t));return We(n)}function vs(e){var r;if(e[0]===X)r=e[Y];else{if(e[0]!==z){if(e[0]!==G)return ue;if(s.negative(e[3])||s.greater(e[3],s.int2bigInt(1114111,16,1)))return ue;var n=s.modInt(e[3],1114111);if(n<65536)r=String.fromCharCode(n);else try{r=String.fromCodePoint(n)}catch(e){return Ou(yu,"warning: couldn't fromCodePoint("+n+")"),ue}return We(r)}r=e[K]}try{return _o(r.codePointAt(0),lo({hexcon:!0}))}catch(e){return Ou(yu,"warning: couldn't codePointAt(\""+r.substring(0,1)+'")'),_o(r.charCodeAt(0))}}function ds(e){var r;if(e[0]===X)r=Oe(e[Y]);else{if(e[0]!==z)return ue;r=Oe(e[K])}return r[H]=fe[0],r}function hs(e,r){var n,t;if(e[0]===z)t=e[K];else if(e[0]===X)t=e[Y];else{if(e[0]!==Q||!RegExp.prototype.isPrototypeOf(e[x]))return ue;t=e[x]}if(r===ue)n=fe;else if(r===Ge)n=oe;else{if(r[0]!==k)return ue;n=[r]}for(var i,a=[],u=0;u<n.length;++u){var o=n[u];if("string"==typeof t){if(o[ie].hasOwnProperty(t))return i=o[ie][t],o[te][i]}else if(e[0]===Q)for(i=0;i<o[te].length;++i){var f=o[te][i];t.test(f[Y])&&a.push(f)}}return $(a)}function bs(e){if(e[0]!==D)return e[0]===X?e[Y]:e[0]===z?e[K]:e[0]===G?Fs.IntToString(e[ee],yf(e)):"";for(var r="";e[0]===D;)r+=bs(e[1]),e=e[2];return r}function ys(e,r){for(var n="",t=0;t<e;++t)n+=bs(r(t));return Dr(n)}function ms(e){var r;if(e[0]===X)r=e[Y];else if(e[0]===z)r=e[K];else{if(e[0]!==G)return ue;r=Fs.IntToString(e[ee],yf(e))}var n,t=ue,i=null;if(0===r.length)return ue;for(n=0;n<r.length;++n){var a=Le(We(r.charAt(n)),ue);i?i[2]=a:t=a,i=a}return t}function ks(e){if(e===ue)return _o(0);if(e[0]===X)return _o(e[Y].length);if(e[0]===z)return _o(e[K].length);if(e[0]===G||e[0]===Z)return _o(Os(e).length);if(e[0]===Q){var r=e[x];return zu(r)?B(r)?_o(r.length):_o(Object.getOwnPropertyNames(r).length):co(e[x].length)}if(e[0]!==D)return _o(Os(e).length);for(var n=1;e[2][0]===D;)++n,e=e[2];return _o(n)}var ws=new b.NaanChannel(this),xs=new b.NaanChannel(this);function Os(e,r,n){var t;r&&r.radix&&(t=hf(r.radix))<2&&(t=L),n===L&&(n=Fs);var i="";if(e===L)return Xe[Y];if(null===e)return ze[Y];if(e[g]===D){if(e[N][0]!==D&&e[N]!==ue)i=n.ListToString([n.DottedPairToString(Os(e[1],r,n),Os(e[2],r,n))]);else{for(var a=e,u=[];a[g]===D;)a[N][0]!==D&&a[N]!==ue?u.push(n.DottedPairToString(Os(a[1],r,n),Os(a[2],r,n))):u.push(Os(a[1],r,n)),a=a[N];i=n.ListToString(u)}return i}if(e[g]===X){var o=e[Y];if(r&&A(r.quote)&&(1!=o.length||p.indexOf(o)<0)){if(!A(r.nonamespace)){i=ke(e);if(i[0]===k)return o=n.QuoteSymbol(o),Os(i[j],!1,n)+n.NSinfix+o}return n.QuoteSymbol(o)}return o}if(e[g]===z)return!r||!A(r.quote)||e[w]!==ue&&A(e[w][x].noquote)?e[K]:n.QuoteString(e[K]);if(e[g]===G)return n.IntToString(e[ee],yf(e),t);if(e[g]===Z)return n.FloatToString(e[re],t);if(e[g]>=J&&e[g]<=V){if(mu<=ou){var f=e[U]+"";return f.substring(9,f.indexOf("("))}f=$e(e[3]);return f?"[Builtin "+f+"]":e[2][0]===X?"[Compiled "+e[2][Y]+"]":"[Compiled Function]"}if(e[g]===Q){var c,s=e[x];if(zu(s)){if(B(s))return"Array["+s.length+"]";var l=Object.getOwnPropertyNames(s).length;return s instanceof Yu?"Nonce{"+l+"}":s instanceof Ms?"TextStream{"+l+"}":s instanceof WeakMap?"WeakMap{}":e[3]instanceof Ju?"Object{"+l+"}":"Dictionary{"+l+"}"}try{if("function"==typeof s)return""!==s.name&&s.name?"[Function "+s.name+"]":"[Function ()]";if(B(s))c=JSON.stringify(s).slice(1,-1);else if("["===(c=s.toString()).substring(0,1))return c;return"["+Object.prototype.toString.call(s).slice(8,-1)+" "+c+"]"}catch(e){l=s[Symbol.toStringTag];return l?"[object "+l+"]":"[private object]"}}else if(e[g]===k)return"Namespace<"+Os(e[j],!1,n)+">";debugger;return"unknown: "+e}function Ss(e,r){return Cs[x].printline[3](e,r)}function Ns(e,r){return Cs[x].print[3](e,r)}function js(e,r){return Cs[x].printq[3](e,r)}function Ps(e){return Cs[x].printloc[3](e)}function Ts(e){return Cs[x].newline[3](e)}function As(e){return Cs[x].spaces[3](e)}function Is(e){return Cs[x].isbreak[3](e)}function Es(){return 0<xs.TextAvail()&&T.hasOwnProperty("console-out")&&T["console-out"](y,xs.TakeText()),Ge}function Ms(e,r,n,t){var i,a,u=ue,o=ue,f=ue,c=ue,s=!1,l=!1;function p(e){if(i.EOF())return e!==ue?ue:Ja(De(["internal","$end-of-file"]),ue);if(c===ue)return pi();e=c;return c=ue,Ja(e)}function g(){if(f[0]===D){var e=f[1];return f=f[2],o=e,1}e=function(e){var r,n;e:for(;;){if(null===(n=e.ReadToken()))return null;switch(n.type){case e.kTTNewline:case e.kTTSymbol:s&&(r=s[n.token])!==L||(r=Dr(n.token));break e;case e.kTTInteger:r=qo(n.token,ue);break e;case e.kTTHexInteger:r=qo(n.token,lo({hexcon:!0}));break e;case e.kTTString:r=We(n.token);break e;case e.kTTComment:case e.kTTCommentLine:var t=Zu();if(t[x].text=We(n.token),t[x].loc=Le(_o(n.loc.line),Le(_o(n.loc.column),ue)),u=Le(t,u),n.type!=e.kTTCommentLine)continue;r=Ne("\n");break e;case e.kTTFloat:r=Ro(parseFloat(n.token));break e}}return n.atom=r,n}(i);return null!==e&&((o=Zu())[x].atom=e.atom,o[x].loc=Le(_o(e.loc.line),Le(_o(e.loc.column),ue)),1)}function v(e,r){var n=e[x].atom;if(r[0]!==D)return r===mr?n[0]===z:r===dr?n[0]===X:zc(n,r)===Ge;for(;;){if(r[0]!==D)return;if(r[1][0]===D)return;if(v(e,r[1]))return 1;r=r[2]}}function d(e,r){if(!Et&&a.Full())return pi();for(var n,t=ue,i=0;i<e;++i)n=Os(t=r(i),!1,a),a.WriteString(n);return l&&Es(),t}function h(e){return f=Le(o,f),o=e}this.addtext=Me("addtext",function(e){return e[0]===z?(i.AddText(e[K]),i.SetEOF(),e):ue},J,!0)[U],this.comments=Me("comments",function(){var e=u;return u=ue,e},J,!0)[U],this.isbreak=Me("isbreak",function(e){return E(e[0]===X&&a.IsBreak(e[Y].substring(0,1)))},J,!0)[U],this.linelength=Me("linelength",function(){return 80},J,!0)[U],this.unbuffered=Me("unbuffered",function(e){l=e===Ge},J,!0)[U],this.newline=Me("newline",function(e){if(!Et&&a.Full())return pi();var r=1;if(e===ue||null!==(r=Lo(e,255))&&0<=r){for(;0<r--;)a.WriteString("\n");return l&&Es(),Ge}return ue},J,!0)[U],this.spaces=Me("spaces",function(e){if(!Et&&a.Full())return pi();var r;if(null!==(r=Lo(e,255))&&0<=r){for(var n=Er[1][Er[1][0]===X?Y:K];0<r--;)a.WriteString(n);l&&Es()}return _o(a.Column())},J,!0)[U],this.printline=Me("printline",function(e,r){return r=d(e,r),a.WriteString("\n"),l&&Es(),r},O,!0)[U],this.print=Me("print",d,O,!0)[U],this.printloc=Me("printloc",function(e){return Le(_o(a.Line()),Le(_o(a.Column()),ue))},J,!0)[U],this.printq=Me("printq",function(e,r){if(!Et&&a.Full())return pi();for(var n,t=ue,i=0;i<e;++i)n=Os(t=r(i),t!==Er[1]&&{quote:Ge},a),a.WriteString(n);return l&&Es(),t},O,!0)[U],this.radix=Me("radix",function(e){var r,n=Le(_o(i.Radix()),Le(_o(a.Radix()),ue));return e[0]===D&&(0<=(r=hf(e[1]))&&i.SetRadix(r),0<=(e=hf(e[2][1]))&&i.SetRadix(e)),n},J,!0)[U],this.readchar=Me("readchar",function(){var e=i.ReadChar();return null!==e?We(e):c===ue?i.EOF()?ue:pi():(e=c,c=ue,Ja(e))},J,!0)[U],this.readready=Me("readready",function(){return _o(i.ReadReady())},J,!0)[U],this.reset=Me("reset",function(){i.Reset(),a.Reset()},J,!0)[U],this.setsymbols=Me("setsymbols",function(e){if(e===ue){if(s)return fo(Object.values(s),s=!1)}else{if(e[0]!==D)return ue;for(var r={},n=e;n[0]===D;){if(n[1][0]!==X)return ue;r[n[1][Y]]=n[1],n=n[2]}s=r}return dr},J,!0)[U],this.taketext=Me("taketext",function(){return We(a.TakeText())},J,!0)[U],this.tokenread=Me("tokenread",function(e){return g()?o:p(e)},J,!0)[U],this.tokenlast=Me("tokenlast",function(e){return e===Ge&&(o=ue),o},J,!0)[U],this.tokenpush=Me("tokenpush",h,J,!0)[U],this.tokenmatch=Me("tokenmatch",function(e,r){var n=o;if(n[0]!==Q||!n[x].atom)return ue;if(zc(n[x].atom,Ir[1])!==Ge)return v(n,e)?n:ue;for(var t=n;;){if(!g())return p(r);if((n=o)[0]!==Q||!n[x].atom)return ue;if(zc(n[x].atom,Ir[1])!==Ge)break;t=n}return v(n,e)?n:(h(t),ue)},J,!0)[U],this.tokenpass=Me("tokenpass",function(e,r){for(var n=o;;){if(n!=ue&&!v(n,e))return n;if(!g())return p(r);n=o}},J,!0)[U],this.readex=Me("readex",function(e){return c=e},J,!0)[U],r===ue?i=ws:B(r)?r[0]===z&&((i=new b.NaanChannel(y,t)).ScanReset(),i.SetText(r[K]),i.SetEOF()):i=r,n===ue?a=xs:B(n)?n===mr&&(a=new b.NaanChannel(y)).SetWriteLimit(0):a=n,this.raw=Ce({read:i,write:a})}function $s(e,r,n){var t=Ce(!1),n=new Ms(t,e,r,n);return t[w]=ue,t[x]=n,t}function qs(e,r){return e!==ue&&e[0]!==z||r!==ue&&r!==mr&&r[0]!==D?ue:(e[0]===z&&r[0]===D&&(n=Lo(r[1],Number.MAX_SAFE_INTEGER),t=Lo(r[2][1],Number.MAX_SAFE_INTEGER),r=ue,t={Line:n,Column:t}),$s(e,r,t));var n,t}Ms.prototype=Object.create(Bu.prototype),Ms.prototype.constructor=Ms;var _s=$s(ws,xs),Rs=ws,Fs=xs,Ws=_s,Cs=_s;function Ls(e){var r=Ws,n=Cs;if(r===_s&&e!==Ge&&(r=ue),n===_s&&e!==Ge&&(n=ue),e[0]===D){if(e[2][0]!==D)return ue;var t=e[1],e=e[2][1];if(t===ue)t=_s;else if(t===Ge)t=Ws;else if(Bs(t)!==Ge)return ue;if(e===ue)e=_s;else if(e===Ge)e=Cs;else if(Bs(e)!==Ge)return ue;Rs=(Ws=t)[x].raw[x].read,Fs=(Cs=e)[x].raw[x].write}return Le(r,Le(n,ue))}function Bs(e){return E(e[0]===Q&&e[x]instanceof Ms)}function Ds(){return _o((new Date).getTime())}function Xs(){return/param/.test(function(e){})?ue:Ge}function zs(e,r){var n,t;if(e===ue)n=!1;else if(null===(n=Lo(e,50))||n<0)return ue;if(r===ue)t=!1;else if(null===(t=Lo(r,1e3))||t<10)return ue;return so(li(n,t),new WeakMap)}function Gs(e){return T.hasOwnProperty("edit-set-string")?(T["edit-set-string"](Os(e)),e):ue}function Zs(e){return T.hasOwnProperty("edit-get-string")?We(T["edit-get-string"]()):ue}var Js=90,Vs=r+1,Qs=Js+1;function Us(){var c=new Array(1),s=[];function l(e){var r;if(e===L)return Qs;if("object"!=typeof e)return e;var n,t,i=e[0];if(Vs<i)return Math.floor(i/Vs);if(i===Q&&!(zu(t=(n=e)[x])?!(t instanceof Yu||t instanceof Ms):!!(n[w]!==ue&&A(n[w][x].persist)||t.constructor&&m.hasOwnProperty(t.constructor.name)||t.NaanPersist)))return Qs;var a=c.length+Js;s.push(e),e[0]=i+a*Vs;var u,o,f=Array(e.length);switch(c.push(f),(f[0]=i)===Q&&(r=function(e){var r,n,t=e[x],i=l(e[w]);if(zu(t))if(B(t)){for(var a=[],u=0;u<t.length;++u)a.push(l(t[u]));r={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]);r=e[3]instanceof Ju?{no:o}:{nd:o},e[2]!==ue&&(r.tag=l(e[2]))}else try{r=t instanceof RegExp?{tag:i,type:t.constructor.name,state:[t.source,t.flags]}:t.StateSave!==L?{tag:i,type:t.constructor.name,state:t.StateSave()}:{tag:i,type:t.constructor.name,object:t}}catch(e){r={type:t.constructor.name}}return e[H]&&e[H]!==ue&&(n=oe.indexOf(e[H]))<0&&(n=oe.length),0<=n&&(r.xns=n),r}(e)),i){case D:f[2]=l(e[2]),f[1]=l(e[1]);break;case X:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=l(e[3]),f[4]=oe.indexOf(e[4]).toString(),f[5]=e[5];break;case z:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=e[3];break;case Z:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=e[3].toString();break;case G:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=Bo(e[3]);break;case J:case O:case V:if(!(u=$e(e[3])))return c.pop(),e[0]=i,Qs;f[1]=l(e[1]),f[2]=l(e[2]),(o=Pe(u,[ce,se]))[0]===X&&o[Y]===u?f[3]=l(o):f[3]=u;break;case Q:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=r;break;case k:f[1]=oe.indexOf(e).toString(),f.length=2;break;default:Ou(hu,"save-state warning: invalid element type "+i+" at "+a)}return a}for(var e,r=[],n=0;n<oe.length;++n){var t=n;t<=1&&(t=1-t),e=oe[t][te];for(var i=0,a=0;a<e.length;++a)!function(e,r){if("object"==typeof e&&e[0]==X){var n=c.length+Js;s.push(e),e[0]=X+n*Vs;n=Array(P);return c.push(n),n[0]=X,n[1]=e[1],n[2]=e[2],n[3]=e[3],n[4]=r.toString(),n[5]=e[5],1}}(e[a],t)||++i;r[t]=i,l(oe[t])}!function(){for(var e=1;e<c.length;++e){var r=c[e];r[0]===X&&(r[1]=l(r[1]),r[2]=l(r[2]),r[3]=l(r[3]))}}();var u=[];for(n=0;n<oe.length;++n){e=oe[n][te];var o=[];o.push(l(oe[n][j])),o.push(l(_o(r[n]))),o.push(l(e[0])),u.push(o)}c[0]=u;var f=[l(pe)];for(n=0;n<fe.length;++n)f.push(l(fe[n]));var p,g=new Array(xt);for(g[0]=St,p=1;p<=xt;++p){var v=wt[p-1];"object"==typeof v?g[p]=l(v):"number"==typeof v?g[p]=-v:v===L?Ou(hu,"savestate: corrupt argstack"):g[p]=v}g[p++]=l(bt),g[p++]=l(ht),g[p++]=l(dt),g[p++]=l(vt),function(){for(var e=0;e<s.length;++e)s[e][0]%=Vs}();var d,h=new Array(kt);for(h[0]=yt,d=1;d<=kt;++d)h[d]=mt[d-1];var b=[];b[0]=g,b[1]=h,b[2]=Ot,b[3]=f,b[4]=ou;var y=new Array("Naan",900,12002,Qs);return new Array(y,c,b)}function Hs(e){var r,n,t,i,a,u,o,f=e[1],c=[],s=[];function l(e){if("number"!=typeof e)return B(e)?e.length===P?Ou(hu,"save-state warning: unexpected symbol "+e[Y]):Ou(hu,"save-state warning: unexpected element "+e[0]):Ou(hu,"save-state warning: invalid item encountered"),Qs;var r,n=f[e-Js];switch(n[0]){case D:break;case z:case G:case Z:if(r=n[0].toString()+"/"+n[2].toString()+"/"+n[3],s.hasOwnProperty(r))return s[r];s[r]=e,n[0]+=Vs;case D+Vs:case z+Vs:case G+Vs:case Z+Vs:default:return e}var t=l(n[S]),i=l(n[N]),a=t+i/(f.length+Js+1);return c.hasOwnProperty(a)?c[a]:(c[a]=e,n[0]=D+Vs,n[S]=t,n[N]=i,e)}for(m=1;m<f.length;++m)switch((r=f[m])[0]){case D:case z:case G:case Z:r[1]=l(r[1]),r[2]=l(r[2]);break;case X:r[1]=l(r[1]),r[2]=l(r[2]),r[3]=l(r[3]);break;case J:case O:case V:r[1]=l(r[1]),r[2]=l(r[2]),"number"==typeof r[3]&&(r[3]=l(r[3]));break;case Q:if(r[1]=l(r[1]),r[2]=l(r[2]),r[3].na!==L)for(i=r[3].na,n=0;n<i.length;++n)i[n]=l(i[n]);else if(r[3].nd!==L||r[3].no!==L){for(a=r[3].nd||r[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=l(a[u[t]]);r[3].tag&&(r[3].tag=l(r[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=e[2][0],h=1;h<d.length;++h)d[h]>Js&&(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 G:case Z:++y;break;default:b[m+Js]=m+Js-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]>Js&&(d[h]=b[d[h]]);for(var k=e[2][3],w=0;w<k.length;++w)k[w]>Js&&(k[w]=b[k[w]]);var x=new Array(1);for(m=1;m<f.length;++m){switch((r=f[m])[0]){case D:case z:case G:case Z:continue;case D+Vs:case z+Vs:case G+Vs:case Z+Vs:r[0]-=Vs,r[1]=b[r[1]],r[2]=b[r[2]];break;case X:r[1]=b[r[1]],r[2]=b[r[2]],r[3]=b[r[3]];break;case J:case O:case V:r[1]=b[r[1]],r[2]=b[r[2]],"number"==typeof r[3]&&(r[3]=b[r[3]]);break;case Q:if(r[1]=b[r[1]],r[2]=b[r[2]],r[3].na!==L)for(i=r[3].na,n=0;n<i.length;++n)i[n]=b[i[n]];else if(r[3].nd!==L||r[3].no!==L){for(a=r[3].nd||r[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=b[a[u[t]]];r[3].tag&&(r[3].tag=b[r[3].tag])}}x.push(r)}return x[0]=g,e[1]=x,e}function Ys(e){var r,n=e[1];function t(e,r){e+=Js;return r-e<=Js&&(-9<=r-e||999<r&&-99<=r-e)?r-e:r}for(r=1;r<n.length;++r){var i=n[r];switch(i[0]){case D:case z:case G:case Z:i[1]=t(r,i[1]),i[2]=t(r,i[2]);break;case X:i[1]=t(r,i[1]),i[2]=t(r,i[2]),i[3]=t(r,i[3]);break;case J:case O:case V:i[1]=t(r,i[1]),i[2]=t(r,i[2]),"number"==typeof i[3]&&(i[3]=t(r,i[3]));break;case Q:i[1]=t(r,i[1]),i[2]=t(r,i[2])}}}function Ks(e,r){function n(e){return r.QuoteString(e)}function t(e){return"$"==e.substring(0,1)&&(e="\\".concat(e)),n(e)}if(0===e.length)return"";r===L&&(r=Fs);for(var i,a,u,o,f="[",c=!1,s=0;s<e.length;++s)c&&(f+=","),"object"==typeof e[s]?((u=e[s])[0]===D?1===u[2]?f+=u[1]:u[2]===Qs?1!==u[1]?f+="["+u[1]+"]":f+="0":f+="["+u[1]+","+u[2]+"]":u[0]===X&&0===u[1]&&u[2]===Qs?(o=t(u[Y]),i==u[4]?u[3]===Qs?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]===Qs?f+=n("$"+u[K]):u[0]===Q?f+=JSON.stringify(u[x]):u[0]===k?f+=JSON.stringify({ns:u[1]}):f+=Ks(e[s]),u[0]===X&&(i=u[4],a=u[3])):"string"==typeof e[s]?e[0]===X&&s===Y?f+=t(e[s]):e[0]===z&&s===K?f+=n("$"+e[s]):f+=n(e[s]):e[s]!==L&&(f+=e[s]),c=!0;return f+="]"}function el(e){var r,n=e[0];if(!("Naan"!==n[0]||900<n[1])){var t=e[1],o=t[0],i=n[3],a=e[2],u=a[0],f=u[0],c=a[1],s=a[2],l=c[0],p=a[3],g=a[4];if(t!==L&&o!==L&&i!==L&&a!==L&&u!==L&&f!==L&&c!==L&&l!==L&&p!==L){for(var v=i-1,d=new Array(t.length),h=[],b=0;b<o.length;++b)h[b]=new Array(ae);for(w=1;w<t.length;++w)"object"==typeof(r=t[w])&&r.ns!==L?d[w]=h[r.ns]:d[w]=new Array(3);for(var y,m=h[1],k=1,w=1;w<t.length;++w)if("number"!=typeof(r=t[w]))if("string"!=typeof r){if("object"!=typeof r||0===r.length)return void Ou(hu,"loadstate: unexpected token: "+typeof r);if(B(r))if(1!=r.length)if(2!=r.length)if(3!=r.length){var x,O,S,N,j=r[0];for(d[w][0]=j,x=1;x<r.length;++x)if(O=r[x],j===X&&(x===U&&(k=W(O)),x===H&&(m=(m=h[parseInt(O)])||ue)),j===G&&x===ee)d[w][x]=Do(O);else if(j===Z&&x===re)d[w][x]=parseFloat(O);else if(J<=j&&j<=V&&x===ne)if((N="string"==typeof O?xe[O]:(N="string"==typeof(S=t[W(O)])?S:3<S.length?S[Y]:S[0],xe[C(N)]))===L){debugger;Ou(hu,"state-load warning: undefined builtin: "+O+"("+S+")"),d[w][x]=Ta}else d[w][x]=N;else d[w][x]=j===z&&x===K?O:j===X&&x===Y?C(O):j===X&&x===H?h[parseInt(O)]:d[W(O)]}else{if("string"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj3: "+typeof r[0]);d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],k=W(r[1]),d[w][3]=d[k],m=(m=h[parseInt(r[2])])||ue,d[w][4]=m,d[w][5]=C(r[0])}else if("string"==typeof r[0])d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],k=W(r[1]),d[w][3]=d[k],d[w][4]=m,d[w][5]=C(r[0]);else{if("number"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj2: "+typeof r[0]);d[w][0]=D,d[w][1]=d[W(r[0])],d[w][2]=d[W(r[1])]}else if("string"==typeof r[0])d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[++k],d[w][4]=m,d[w][5]=C(r[0]);else{if("number"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj1: "+typeof r[0]);d[w][0]=D,d[w][1]=d[W(r[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(r.na!==L){var P,T=[];for(T[Lu]=Bu,P=0;P<r.na.length;++P)T.push(d[W(r.na[P])]);d[w][3]=T,0<=r.xns&&!(d[w][4]=h[r.xns])&&(d[w][4]=le)}else if(r.nd!==L||r.no!==L){for(var A=new(r.nd?Gu:Ju),I=r.nd||r.no,E=Object.getOwnPropertyNames(I),M=0;M<E.length;++M)A[E[M]]=d[W(I[E[M]])];r.tag!==L&&(d[w][2]=d[W(r.tag)]),d[w][3]=A,0<=r.xns&&!(d[w][4]=h[r.xns])&&(d[w][4]=le)}else r.ns!==L||(y="undefined"!=typeof window?window:global,r.tag&&(d[w][2]=d[W(r.tag)]),r.type&&r.state!==L?d[w][3]=new(Function.prototype.bind.apply(y[r.type],[null].concat(r.state))):r.object!==L?r.type&&"Object"!==r.type&&y[r.type]!==L?d[w][3]=new y[r.type](r.object):d[w][3]=r.object:d[w][3]={})}catch(e){d[w][3]={}}}}else"$"==r.substring(0,1)?(d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=r.substring(1)):(d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[1],d[w][4]=m,d[w][5]=C(r));else d[w][0]=D,0===r?(d[w][1]=d[w+1],d[w][2]=d[1]):(d[w][1]=d[W(r)],d[w][2]=d[w+1]);var $,q=new Array(u.length),_=oe,R=fe,n=ce,e=se,a=le,i=pe;if(!function(){try{for(ge(),oe=[],fe=[],ce=h[0],se=h[1],b=0;b<o.length;++b){for(var e=o[b],r=d[e[0]-v],n=Wo(d[e[1]-v][3],99999),t=e[2]-v,i=ve(r,h[b]),a=0;a<n;++a){var u=d[t+a];(u[H]=i)[te].push(u),i[ie][u[Y]]=a}if(i[te].length!=n)return void Ou(hu,"loadstate: symbol table sync: "+r[K]+" "+i[te].length+" "+n)}return se[te].length<50||$<0||f<0||$<f?void Ou(hu,"loadstate: unqualified "+se[te].length):1}catch(e){return void Ou(hu,"loadstate failed: "+e.toString())}}())return oe=_,fe=R,ce=n,se=e,le=a,void(pe=i);for(fe=[ce,se],pe=ce,cl(),sl(),fe=[],b=1;b<p.length;++b)fe.push(d[p[b]-v]);for(pe=d[p[0]-v],$=1;$<u.length;++$){var F=u[$],F="number"==typeof F?F<=0?-F:d[F-v]:F;q[$-1]=F}return c.splice(0,1),yt=l,kt=(mt=c).length,xt=$-1,St=f,Ot=s,vt=(wt=q)[--xt],dt=wt[--xt],ht=wt[--xt],bt=wt[--xt],ou=g,1}Ou(hu,"cannot load malformed state")}function W(e){return e<=v?w+e:e-v}function C(e){return"\\$"===e.substring(0,2)?e.substring(1):e}}function rl(e){var r,n=Pe("SaveTrap",oe);if(n!==ue&&n[U]!==ue&&(Mt=-1,Kt(Le(n,ue),"savetrap"),ni(!0),qt!==Ge))return r;n=Us();return e&&Hs(n),Ys(n),r=Ks(n)}function nl(e){if(!el(e))return ue;ll(),pl();e=Pe("LoadTrap",oe);if(e===ue)return ul;e=Kt(Le(e,ue),"loadtrap");return mt[kt++]=yt,e}function tl(e){e=rl(e!=ue);return"string"==typeof e?We(e):e}var il=Me("save",tl,J);function al(e){if(e[0]!==z)return ue;e=JSON.parse(e[K]);return e&&0!==e.length?nl(e):ue}var ul=Me("load",al,J),ol=[["global","`",mf,V],["global","deref",Ba,V],["global",".",Da,V],["global","quote",mf,V],["global","$",ic,J],["exec","and",_a,V],["exec","apply",Ia,J],["exec","break",Ha,J],["exec","call",Ea,V],["exec","catch",Ga,V],["exec","cond",Ca,V],["exec","continue",Ya,J],["exec","eval",Aa,J],["exec","lambda",mc,J],["exec","loop",Fa,V],["exec","or",Ra,V],["exec","return",Ua,O],["exec","throw",Ja,J],["exec","yield",au,J],["exec","resume",uu,J],["info","builtin",Tc,O],["info","procedure",Ac,O],["info","eq",Dc,J],["info","equal",zc,J],["info","length",ks,J],["info","not",Uc,J],["info","typeof",yc,O],["info","relate",Vc,J],["symbol","setq",Wa,V],["symbol","assign",Yc,J],["symbol","compress",ys,O],["symbol","copyproc",as,J],["symbol","copyann",ns,J],["symbol","exists",hs,J],["symbol","get",es,J],["symbol","getproc",ts,J],["symbol","interned",Oc,J],["symbol","defbinding",Sc,J],["symbol","moveproc",os,J],["symbol","name",Pc,O],["symbol","ordered",Qc,J],["symbol","preadjust",Xa,V],["symbol","postadjust",za,V],["symbol","put",rs,J],["symbol","putproc",is,J],["symbol","replacer",tc,J],["symbol","symbol",Nc,O],["symbol","unintern",ds,J],["tuple","atom",Rc,O],["tuple","car",kf,J],["tuple","cdr",wf,J],["tuple","caar",xf,J],["tuple","cadr",Of,J],["tuple","cdar",Sf,J],["tuple","cddr",Nf,J],["tuple","caaar",jf,J],["tuple","caadr",Pf,J],["tuple","cadar",Tf,J],["tuple","caddr",Af,J],["tuple","cdaar",If,J],["tuple","cdadr",Ef,J],["tuple","cddar",Mf,J],["tuple","cdddr",$f,J],["tuple","caaaar",qf,J],["tuple","caaadr",_f,J],["tuple","caadar",Rf,J],["tuple","caaddr",Ff,J],["tuple","cadaar",Wf,J],["tuple","cadadr",Cf,J],["tuple","caddar",Lf,J],["tuple","cadddr",Bf,J],["tuple","cdaaar",Df,J],["tuple","cdaadr",Xf,J],["tuple","cdadar",zf,J],["tuple","cdaddr",Gf,J],["tuple","cddaar",Zf,J],["tuple","cddadr",Jf,J],["tuple","cdddar",Vf,J],["tuple","cddddr",Qf,J],["tuple","cons",Uf,O],["tuple","insert",Hf,O],["tuple","empty",Fc,O],["tuple","first",kf,J],["tuple","ffirst",xf,J],["tuple","fsecond",Pf,J],["tuple","list",qa,V],["tuple","member",Gc,J],["tuple","within",Zc,J],["tuple","pop",nc,V],["tuple","push",La,V],["tuple","rest",wf,J],["tuple","reverse",Yf,J],["tuple","rrest",Nf,J],["tuple","rrrest",$f,J],["tuple","second",Of,J],["tuple","third",Af,J],["tuple","totuple",go,J],["tuple","tuple",_c,O],["tuple","tuplepath",ac,J],["number","bitand",tf,O],["number","bitnot",rf,J],["number","bitor",uf,O],["number","bitxor",ff,O],["number","difference",Jo,O],["number","divide",ef,J],["number","even",Bc,J],["number","float",xc,O],["number","greater",gf,J],["number","integer",wc,O],["number","lesser",vf,J],["number","mod",Ko,J],["number","negate",Xo,J],["number","negative",Cc,J],["number","numeric",kc,O],["number","plus",Go,O],["number","positive",Wc,J],["number","quotient",Ho,J],["number","shiftleft",sf,J],["number","shiftright",pf,J],["number","times",Qo,O],["number","tofloat",df,J],["number","toint",bf,J],["number","zero",Lc,J],["string","explode",ms,J],["string","strcat",gs,O],["string","string",jc,O],["string","tostring",ps,J],["string","unicode",vs,J],["array","array",Ic,O],["array","arraycall",vo,O],["dictionary","dictionary",Mc,O],["dictionary","set.",oo,J],["dictionary","set[",oo,J],["dictionary","merge",yo,O],["dictionary","keys",bo,J],["dictionary","defined",ho,J],["dictionary","object",qc,O],["local","instances",rc,J],["local","delete",ls,O],["local","enclose",ec,J],["local","namespace",fs,J],["local","new",Xu,J],["local","nonce",eo,J],["local","nsactive",cs,J],["local","nscaller",nu,J],["local","nsrights",ss,O],["local","symlist",Kf,J],["local","weakmap",io,J],["host","editget",Zs,J],["host","editset",Gs,J],["host","future",ro,J],["host","futures",no,J],["host","loadstate",al,J],["host","milliseconds",Ds,J],["host","mangled",Xs,J],["host","runaverage",zs,J],["host","savestate",tl,J],["host","sprint",To,J],["host","wait",$o,J],["stdio","textstream",Bs,J],["stdio","textstreams",Ls,J],["stdio","isbreak",Is,J],["stdio","newline",Ts,J],["stdio","spaces",As,J],["stdio","printline",Ss,O],["stdio","print",Ns,O],["stdio","printloc",Ps,J],["stdio","printq",js,O],["stdio","printFlush",Es,J],["external","xapply",No,J],["external","xcall",Oo,O],["external","xget",wo,J],["external","xdefined",ho,J],["external","xkeys",bo,J],["external","xlock",ko,J],["external","xnew",jo,O],["external","xobject",mo,J],["external","xset",xo,J],["debug","breakpoint",Fu,O],["debug","debuglog",qu,O],["debug","jsdebugger",_u,O],["debug","loglevel",Ru,J],["debug","stacktrace",Mu,J],["debug","stacktrap",Cu,J],["debug","symtrace",$u,V]];function fl(e,r,n){var t=pr[S],i=t[x][e];i||(i=Zu(),ko(t[x][e]=i,ce)),i[x][r]||(i[x][r]=n)}function cl(){var e=pr[S];e!==ue&&e[0]===Q&&zu(e[x])||(ko(e=Zu(),ce),pr[S]=e);var r,n=je("App"),t=n[S];for(t!==ue&&t[0]===Q&&zu(t[x])||(t=Zu(),n[S]=t),r=0;r<ol.length;++r){var i=ol[r][0],a=ol[r][1],u=ol[r][2],o=ol[r][3],f=(ol[r][4],je(a));f!==ue&&f[U]!==ue||(f=Me(a,u,o)),we(a,se)||fl(i,a,f)}e[x].module||(e[x].module=Zu()),pr=je("Naan"),ar=je("deref"),ur=je("."),er=je("exception"),rr=je("escape"),ue=je("false"),ir=je("`"),nr=je("this"),tr=je("self"),Xe=je("undefined"),ze=je("null"),Ge=je("true"),Ze=je("lambda"),or=je("body"),_r=je("call"),cr=je("catch"),Ue=je("closure"),Je=je("function"),Ve=je("function&"),He=je("let"),Ye=je("let&"),fr=je("loop"),Qe=je("macro"),Ke=je("var"),gr=je("builtin"),lr=je("list"),vr=je("tuple"),dr=je("symbol"),hr=je("integer"),br=je("float"),yr=je("numeric"),mr=je("string"),kr=je("array"),Rr=je("arraycall"),wr=je("dictionary"),xr=je("object"),Sr=je("namespace"),Nr=je("nonce"),il=je("save"),ul=je("load"),Ar=je("$"),jr=je("weakmap"),Tr=je("sprint"),Fr=je("xget"),Wr=je("xset"),Cr=je("xcall"),Lr=je("xapply"),Or=je("xobject"),Pr=je("textstream"),Er=je("space"),Ir=je("cr"),Wu=je("breakpoint"),sr=je("interrupt")}function sl(){function e(e,r){rs(vr,We(e),je(r||e)[U])}function r(e,r){rs(vr,We(e),r)}function n(e,r){rs(dr,We(e),je(r||e)[U])}function t(e,r){rs(mr,We(e),je(r||e)[U])}function i(e,r){rs(hr,We(e),je(r||e)[U])}function a(e,r){rs(br,We(e),je(r||e)[U])}function u(e,r){rs(kr,We(e),je(r||e)[U])}function o(e,r){rs(Sr,We(e),je(r||e)[U])}function f(e,r){rs(Sr,We(e),r)}e("atom"),e("insert"),e("length"),e("reverse"),e("tostring"),e("tuple"),e("typeof"),r("member",Me("member",function(e,r){return Gc(r,e)},J,!0)),r("toarray",Me("toarray",function(e){return Xu(kr,e)},J,!0)),r("within",Me("within",function(e,r){return Zc(r,e)},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"),n("value","car"),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",Me("tostring",function(e){return e[0]===k?e[j]:ue},J,!0)),f("length",Me("length",function(e){var r;return e[0]===k&&0<=(r=oe.indexOf(e))?_o(oe[r][te].length):ue},J,!0)),f("symbols",Me("symbols",function(e){if(e[0]===k&&0<=(r=oe.indexOf(e))){var r=oe[r][te].slice();return r[Lu]=Bu,Ce(r)}return ue},J,!0)),f("index",Me("index",function(e){var r;return e[0]===k&&0<=(r=oe.indexOf(e))?Xu(co(oe[r][ie]),ue):ue},J,!0)),f("lookup",Me("lookup",function(e,r){var n,r=bs(r);if(e[0]===k&&0<=(n=oe.indexOf(e))){r=oe[n][ie][r],r=oe[n][te][r];if(r)return r}return ue},J,!0))}function ll(){for(var e in l)l.hasOwnProperty(e)&&Ie(e,co(l[e]))}function pl(){T.hasOwnProperty("init-load")&&T["init-load"]()}Ht(),cl(),sl(),ll(),this.Process=function(e,r,n){try{return n=n||"false",0<e.length&&(Mo(),Rs.SetText(e),r&&Fs.WriteString("\r")),ri()||(Ht(),Yt(De(["loop",["catch",[["driver",n]],[[["equal","exception","driver"]]],"false"]])),n="false"),It=0,ni(!1),ri()}catch(e){return Ou(hu,"Naan internal error (101): "+e.toString()),!1}},this.GetOutput=function(){return Fs.TakeText()},this.SetInput=function(e,r){Rs.WriteString(e),r&&Rs.SetEOF()},this.RunOutput=function(){try{return It=0,ni(!1),Fs.TakeText()}catch(e){return Ou(hu,"Naan internal error (102): "+e.toString()),null}},this.Run=function(){try{return It=0,ni(!1),ri()}catch(e){return Ou(hu,"Naan internal error (103): "+e.toString()),!1}},this.Escape=function(){try{return Mo(),Rs.ScanReset(),Rs.SetText(""),Fs.TakeText(),Va(De(["internal","escape"])),!1}catch(e){return Ou(hu,"Naan internal error (104): "+e.toString()),null}},this.Banner=function(){return Fs.WriteString("\rWelcome to Naan v1.4.0+1\n"),!0},this.StateSave=function(e){e=rl(e);return"string"==typeof e&&e},this.StateLoad=function(e){try{return nl(JSON.parse(e))!==ue}catch(e){return Ou(hu,"Naan StateLoad failed: "+e.toString()),!1}},this.StateDefault=function(){return pl(),!0},this.On=function(e,r){T[e]=r},this.Signal=function(){Mo()},this.Status=function(e,r){return li(e,r)},this._InheritNamespace=function(e){for(var r=fe,n=0;n<oe.length;++n){var t,i=oe[n];if(Fe(i[j])==e){fe.indexOf(i)<0&&(t=fe.shift(),fe.unshift(i),t&&fe.unshift(t));break}}return r},this._SetNamespace=function(e,r){var n,t=fe;return"string"==typeof e?he(Le(ve(We(e)),$(fe)),!0):B(e)?(n=fe[0],fe=e,!r&&fe.indexOf(n)<0&&fe.push(n)):Ou(hu,"_SetNamespace: invalid argument: "+e),t},this._AddNamedObject=function(e,r){if("string"!=typeof e||0===e.length||"object"!=typeof r)return!1;r=Ce(r);return Dr(e)[1]=r,!0},this._SetValue=function(e,r){if("string"!=typeof e||0===e.length)return!1;r=r===L?Dr(e):Ie(e,Be(r));return r!==ue},this._AddSymbolWithTarget=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("string"!=typeof r||0===r.length)return!1;var n=je(r);return n===ue&&(n=Dr(r)),Dr(e),Ie(e,n)!==ue},this._AddPropertyList=function(e,r){return"string"==typeof e&&0!==e.length&&("object"==typeof r&&qe(e,r)[Y])},this._SetBindingList=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("object"!=typeof r)return!1;r=Re(Be(r));return r!==ue&&(_e(e,r),!0)},this._CopyBinding=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("string"!=typeof r||0===r.length)return!1;e=je(e);return e!==ue&&(_e(r,e[U]),!0)},this._Execute=function(e){if("object"!=typeof e)return!1;var r=Be(e);if(r===ue)return!1;e=Mt;Mt=-1;r=po(ei(r));return Mt=e,r},this._Export=function(e,r){if(!pr)return!1;if("string"!=typeof r||0===r.length)return!1;var n=je(r);return n!==ue&&(fl(e,r,n),!0)},this._Import=function(e,r,n){if(!pr)return!1;if(r===L){var t=pr[S][x][e];if(t===L)return!1;for(var i=Object.getOwnPropertyNames(t[x]),a=0;a<i.length;++a)this._Import(e,i[a]);return!0}if("string"!=typeof r||0===r.length)return!1;if(n===L)n=r;else if("string"!=typeof n||0===n.length)return!1;var u,t=fe.indexOf(ce);0<=t&&fe.splice(t,1);try{u=pr[S][x][e][x][r]}catch(e){u=!1}return!!u&&(_e(n,u[U]),!0)}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
34
+ !function(hl){hl.NaanInterpreter=function(){"use strict";var e=hl.LeemonBigIntegerLib?hl:require("./bigint.js"),s=new e.LeemonBigIntegerLib,b=hl.NaanChannel?hl: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},L;function B(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.apply(e)}function u(e){return e.prototype&&e.prototype.constructor.name}var i=Math.log2(Number.MAX_SAFE_INTEGER),a=Math.log2(Number.MAX_VALUE),n=131072,p="\b\f\n\0\r\t\v ~`@#$%^&*()_+-={}|[]\\:\";'<>?,./",y=this,D=1,X=2,z=3,G=4,Z=5,J=6,O=7,V=8,Q=9,k=10,r=10,g=0,S=1,N=2,f=2,U=3,H=4,Y=5,w=2,K=3,ee=3,re=3,ne=3,x=3,j=2,te=3,ie=4,v=N+1,T=Y+1,t=K+1,o=ee+1,c=re+1,d=N+1,h=x+1,ae=ie+1,P={},ue=null;function A(e){return e&&e!==ue&&e!==Xe&&e!==ze}function I(e){return e===Ue||e===Je||e===Ve||e===Qe||e===He||e===Ye}function E(e){return e?Ge:ue}function $(e){return e===L?Xe:null===e?ze:e}function M(e){for(var r=ue,n=e.length-1;0<=n;--n)r=Le(e[n],r);return r}function q(e){for(var r=[];e[g]===D;)r.push(e[S]),e=e[N];return r}function _(e){for(var r=Zu();e[g]===D;){var n=e[S];n[g]===D&&So(r,n[S],n[N]),e=e[N]}return r}function R(e,r){for(var n=Object.getOwnPropertyNames(r),t=0;t<n.length;++t){var i=n[t];e[i]=r[i]}}function F(e,r){return e===ue?ue:(r&&r!==ue||(r=Zu()),Rc(e)!==ue&&R(r[x],e[x]),r)}function W(e){for(var r=0;e[0]===X;){if(++r>zt)return ue;if(e[U]!==ue)e=e[U];else{if(e[1]===e)break;e=e[1]}}return e}var oe=[],fe=[],ce,se,le,pe,C=1e5;function ge(){oe=[],fe=[],ce=ve(We("NaanRoot")),se=ve(We("NaanCore")),le=ve(We("NaanConst")),oe.pop(),fe.push(se),pe=ce}function ve(e,r){return e===L?ue:(r===L&&(r=new Array(ae)),r[0]=k,(r[1]=r)[2]=e,r[3]=[],r[4]={},oe.push(r),r)}function de(e){e=e&&e[0]===k?js(e[j]):"nowhere";return e}function he(e,r){for(var n=[],t=M(fe);e[g]===D;){var i=e[S];i===ue&&(i=ce),i[0]===k&&n.indexOf(i)<0&&n.push(i),e=e[N]}if(0<n.length){if(!r&&n[0]!==fe[0]&&pe!=n[0]&&pe!==ce)return Ja(De(["internal","$"+js(pe)+": no privileges to activate "+de(n[0])])),ue;fe=n}return t}function be(l){var e,r,n,p=new WeakMap,g={};function v(e){e=function e(r){var n;if("object"!=typeof r)return r;if(p.get(r))return p.get(r);switch(p.set(r,r),r[0]){case D:for(var t=r;;){var i=t[1],a=t[2];if(t[1]=v(i),a===ue)break;if(a[0]!==D){t[2]=v(a);break}if(t=a,p.get(t))break;p.set(t,t)}return r;case Q:if(r[H]===l)p.set(r,ue),r=ue;else if(zu(r[x])){var u=r[x];if(B(r[x]))for(var o=0;o<u.length;++o)(n=e(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=e(u[f=c[s]]))===g?delete u[f]:u[f]=n}return r;case X:return r[H]===l?((r[1]=r)[2]=ue,r[3]=ue,r[4]=ue):(r[1]=v(r[1]),r[2]=v(r[2]),r[3]=v(r[3])),r}return r}(e);return e===g?ue:e}for(p.set(g,g),p.set(l,g),e=0;e<oe.length;++e)if(oe[e]!==l)for(n=oe[e][te],r=0;r<n.length;++r)v(n[r]);for(var t=1;t<=xt;++t)wt[t-1]=v(wt[t-1]);var i=fe.indexOf(l);0<=i&&fe.splice(i,1),0<=(i=oe.indexOf(l))&&oe.splice(i,1)}function ye(o){var e,r,n,f=new WeakMap,c=[];function s(e){if("object"==typeof e&&!f.get(e))switch(f.set(e,e),e[0]){case D:for(var r=e;;){s(r[1]);var n=r[2];if(n===ue)break;if(n[0]!==D){s(n);break}if(r=n,f.get(r))break;f.set(r,r)}break;case Q:if(zu(e[x])){var t=e[x];if(B(e[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 X:e[Y]===o&&c.push(e),s(e[1]),s(e[2]),s(e[3])}}for(e=0;e<oe.length;++e)for(n=oe[e][te],r=0;r<n.length;++r)s(n[r]);for(var t=1;t<=xt;++t)s(wt[t-1]);return c}function me(e){for(var r=0;r<fe.length;++r){var n=fe[r];if(n[ie].hasOwnProperty(e)){var t=n[ie][e];return n[te][t]}}return!1}function ke(e){if(e[H][0]!==k)return ue;var r,n=e[H][ie][e[Y]];if(e[H][te][n]!==e)return ue;for(r=0;r<fe.length;++r){var t=fe[r];if(t[ie].hasOwnProperty(e[Y]))return n=t[ie][e[Y]],t[te][n]===e?ue:e[H]}return e[H]}function we(e,r){return!!r[ie].hasOwnProperty(e)&&r[te][r[ie][e]]}var xe={};function Oe(e){var r=new Array(T);return ue||(ue=r,ge()),r[0]=X,(r[1]=r)[2]=ue,r[3]=ue,r[4]=ue,r[5]=e,r}function Se(e,r){var n=e[Y],t=r[ie][n];return r[te][t]===e||((e[H]=r)[ie][n]=r[te].length,r[te].push(e)),e}function Ne(e){var r=me(e);return r||Se(r=Oe(e),fe[0])}function je(e){e=me(e);return e||ue}function Te(e,r){var n,t;for(n in r)if(t=we(e,r[n]))return t;return ue}function Pe(e,r){return Te(r,[e[H],ce,se])}function Ae(e){if(e[H][0]!==k)return-1;var r=oe.indexOf(e[H]);if(r<0)return Ou(hu,"can't find namespace for symbol \""+e[Y]+'"'),0;var n=r*C,r=oe[r][ie][e[Y]];return"number"!=typeof r?(Ou(hu,"can't find interned symbol \""+e[Y]+'"'),0):n+r}function Ie(e,r){e=Ne(e);return e===ue&&Ou(hu,"can't set that: "+r),e===ue?ue:(r===L?r=e:"string"==typeof r?r=Ne(r):"number"==typeof r&&(r=Fo(r)),e[1]=r,e)}function Ee(e,r){var n=new Array(d);return n[0]=r,(n[1]=n)[2]=ue,n[3]=e,n}function $e(e,r,n,t){var i=(t?Oe:Ne)(e);i===ue&&Ou(hu,"can't add builtin \""+i+'"');var a=new Array(d);return a[0]=n,(a[1]=a)[2]=i,a[3]=r,i[U]=a,t||(xe[e]=r),i}function Me(e){for(var r=Object.getOwnPropertyNames(xe),n=0;n<r.length;++n)if(xe[r[n]]===e)return r[n];return L}function qe(e,r){var n,t=Be(e);if(t===ue)return ue;for(n=0;n<r.length;++n){var i=r[n];if("object"!=typeof i)return ue;if(!(i.length<2)){var a=i[0];if("string"!=typeof a)return ue;is(t,Be(a),Be(i[1]))}}return t}function _e(e,r){e=Ne(e);return A(e)||Ou(hu,"can't add that: "+r),e[U]=r,e}function Re(e){e=zr(e,fe[0]);return"string"==typeof e?(Ou(hu,"can't create closure: "+e),ue):e}function Fe(e){return e[0]===X?e[Y]:e[0]===z?e[K]:""}function We(e){var r=new Array(t);return r[0]=z,(r[1]=r)[2]=ue,r[3]=e,r}function Ce(e){var r=new Array(h);return r[0]=Q,(r[1]=r)[2]=ue,r[3]=e,r[4]=ue,r}function Le(e,r){var n=new Array(v);return n[0]=D,n[1]=e,n[2]=r,n}function Be(e){if("string"==typeof e)return 1<e.length&&"."==e.substring(0,1)?Wo(parseFloat(e.substring(1))):"$"==e.substring(0,1)?We(e.substring(1)):("\\"==e.substring(0,1)&&(e=e.substring(1)),Dr(e));if("number"==typeof e)return Fo(e);if("object"==typeof e){if(B(e)){for(var r=ue,n=r,t=0;t<e.length;++t){var i=new Array(v);i[0]=D,i[1]=Be(e[t]),n!==(i[2]=ue)?n[2]=i:r=i,n=i}return r}if(e.hasOwnProperty("dictionary")){var a=new Gu,u=e.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]=Be(u[o[t]])}var c=Ce(a);return e.tag!==L&&(c[2]=Be(e.tag)),c}if(e.hasOwnProperty("array")){var s=[];for(u=e.array,s[Lu]=Bu,t=0;t<u.length;++t)s[t]=Be(u[t]);return Ce(s)}if(e.hasOwnProperty("xobject"))return Ce(e.xobject)}return Ou(yu,"naanParseJsValue warning: can't parse "+typeof e),ue}function De(e){var r=fe;(fe=fe.slice()).push(ce);e=Be(e);return fe=r,e}Ne("false");var Xe=Ne("undefined"),ze=Ne("null"),Ge=Ne("true"),Ze=Ne("lambda"),Je=Ne("function"),Ve=Ne("function&"),Qe=Ne("macro"),Ue=Ne("closure"),He=Ne("let"),Ye=Ne("let&"),Ke=Ne("var"),er=Ne("exception"),rr=Ne("escape"),nr=Ne("this"),tr=Ne("self"),ir=Ne("`"),ar=Ne("deref"),ur=Ne("."),or=Ne("body"),fr=Ne("loop"),cr=Ne("catch"),sr=Ne("interrupt"),lr=Ne("list"),pr=Ne("Naan"),gr=Ne("builtin"),vr=Ne("tuple"),dr=Ne("symbol"),hr=Ne("integer"),br=Ne("float"),yr=Ne("numeric"),mr=Ne("string"),kr=Ne("array"),wr=Ne("dictionary"),xr=Ne("object"),Or=Ne("xobject"),Sr=Ne("namespace"),Nr=Ne("nonce"),jr=Ne("weakmap"),Tr=Ne("textstream"),Pr=Ne("sprint"),Ar=Ne("$");Ne("driver"),Ne("App"),Ne("identity"),Ne("js"),function(){for(var e in l)l.hasOwnProperty(e)&&Ne(e)}();var Ir=Ie("cr","\n"),Er=Ne("space");Er[1]=We(" "),Ie("doublequote",'"'),Ie("rpar",")"),Ie("lpar","("),Ie("comma",","),Ie("quote","`"),Ie("period","."),Ie("sprint",ue),fe=[ce,se];var $r=We(".closure"),Mr=We(".tostring"),qr=Ne("throw"),_r=Ne("call"),Rr=Ne("arraycall"),Fr=Ne("xget"),Wr=Ne("xset"),Cr=Ne("xcall"),Lr=Ne("xapply");function Br(e){if(pr[1][0]!==Q)return ue;for(var r=Object.getOwnPropertyNames(pr[1][x]),n=0;n<r.length;++n){var t=pr[1][x][r[n]][x];if(t.hasOwnProperty(e)){if(t[e][0]===X)return t[e];break}}return ue}function Dr(e){var r=me(e);if(r)return r;if(r=Ne(e),pr[1][0]!==Q)return r;var n=Br(e);return"future"!==e&&(n=n[U])===ue||(r[U]=n),r}function Xr(e,r){if((e[0]===X||r&&e[0]===Q)&&A(e)){if(e[H]===ue)return 1;if(pe==e[H])return 1;if(fe[0]===e[H])return 1;if(pe===ce)return 1;r=de(e[H])+Ls.NSinfix;e[0]===X?r+=e[Y]:r+=js(e),Ja(De(["internal","$can't modify "+r+" from "+de(pe)]),ue)}else Ja(De(["internal","$attempt to modify constant "+js(e)]),ue)}function zr(e,r){try{return Gr(e,r)}catch(e){return e}}function Gr(e,b){var u,o,r,n={};function y(e,r,n){if(r[0]!==X||((a=r)===ue||a===Xe||a===ze||a===Ze||I(a)))for(;r[0]===D;)y(e,r[1],n),r=r[2];else{var t=r[Y];if(n===Ve||n===Ye){if(r[H]===b||b===ue)return;u!==Ue&&u!==Qe&&Ou(yu,"warning: using "+Ls.NSinfix+t+" for parameter "+de(r[H])+Ls.NSinfix+t+" in "+de(b)+Ls.NSinfix+o[Y])}var i=Oe(t);i[H]=b===ue?r[H]:b;a=e[t];a&&(i[U]=a[U]),e[t]=i}var a}function m(e,r){for(;r[0]===D;){if(r[1][0]===D&&r[1][1]!==ir)if(I(r[1][1])){var n=r[1][2][1];if(n!==ue&&n[Y]!==Ze[Y]){var t=n[Y],i=Oe(t);if(i[H]=b===ue?n[H]:b,i[U]=r[1],e.hasOwnProperty(t))throw"duplicate procedure name "+t+" in "+o[Y];e[t]=i}}else m(e,r[1]);r=r[2]}}function k(e,r,n,t){if(e[0]!==D){if(e[0]===Q&&zu(e[3])){var i=e[x];if(B(i)){for(var a=Xu(kr,ue),u=0;u<i.length;++u)a[x][u]=k(i[u],r,n,t);return a}var o,f=Object.getOwnPropertyNames(i),c=(e[3]instanceof Ju?Vu:Zu)();for(c[2]=e[2],o=0;o<f.length;++o)c[x][f[o]]=k(i[f[o]],r,n,t);return c}return e[0]!==X?e:r.hasOwnProperty(e[Y])?r[e[Y]]:e}if(!n&&I(e[1])){var s=k(e[2][1],r,!1,t);s[Y]===Ze[Y]&&((s=Oe(s[Y]))[S]=Ze,s[H]=b!==ue?b:s[H]);var l=e[2][2][1],p=e[2][2][2],g={};m(g,p),y(g=Object.assign({},r,g),l,e[1]);p=Le(k(l,g,!1,t),k(p,g,!1,s)),g=Le(e[1],Le(s,p));return s[U]=g,t&&(s[2]===ue&&(s[2]=Xu(wr,ue)),(s[2][3][".parent"]=t)[2]===ue&&(t[2]=Xu(wr,ue)),p=(p=t[2][3][".children"])||ue,t[2][3][".children"]=Le(s,p)),g}e[1]===ir&&(n=!0);for(var v=ue,d=null;e[0]===D;){var h=Le(k(e[1],r,n,t),ue);e.breakpoint&&(h.breakpoint=e.breakpoint),d?d[2]=h:v=h,d=h,e=e[2]}return e!==ue&&d&&(d[2]=e),v}if(e[0]!==D)return ue;if(u=e[1],(o=e[2][1])[0]!==X)return ue;var t=b!==ue?b:o[H];o[H]!==t||(u!==Je&&u!==Ve||o[U]!==e)&&o[U]!==ue?((r=Oe(o[Y]))[S]=o,r[H]=t,r[f]=F(o[f]),u!==Ue&&u!==Qe||r[f][".base"]||(r[2]===ue&&(r[2]=Xu(wr,ue)),r[2][3][".base"]=o)):r=o,r[2]!=ue&&delete r[2][3][".children"],y(n,nr),n[nr[Y]][1]=r,m(n,e[2][2][2]),y(n,e[2][2][1],u),t=k(e[2][2][1],n,!1),n=k(e[2][2][2],n,!1,r);n=Le(u,Le(r,Le(t,n)));return r[U]=n}var Zr=0,Jr=1,Vr=2,Qr=3,Ur=4,Hr=5,Yr=6,Kr=7,en=8,rn=9,nn=10,tn=11,an=12,un=13,on=14,fn=15,cn=16,sn=17,ln=18,pn=19,gn=20,vn=21,dn=22,hn=23,bn=24,yn=25,mn=26,kn=27,wn=28,xn=29,On=30,Sn=31,Nn=32,jn=33,Tn=34,Pn=35,An=36,In=37,En=38,$n=39,Mn=40,qn=41,_n=42,Rn=43,Fn=44,Wn=45,Cn=46,Ln=47,Bn=48,Dn=49,Xn=50,zn=51,Gn=52,Zn=53,Jn=54,Vn=55,Qn=56,Un=90,Hn=91,Yn=92,Kn=93,et=94,rt=0,nt=1,tt=2,it=3,at=4,ut=5,ot=6,ft=57,ct=58,st=59,lt=95,pt=96,gt=[],vt,dt,ht,bt,yt;gt[Zr]=hi,gt[jn]=bi,gt[In]=yi,gt[Nn]=Ai,gt[ft]=Ai,gt[en]=Xi,gt[fn]=Ii,gt[cn]=Ei,gt[sn]=$i,gt[Vn]=zi,gt[Qn]=Gi,gt[tn]=Zi,gt[bn]=Ji,gt[wn]=Vi,gt[xn]=Qi,gt[On]=Qi,gt[Sn]=Qi,gt[st]=Ui,gt[yn]=Hi,gt[mn]=Yi,gt[kn]=Ki,gt[rn]=ea,gt[nn]=ra,gt[Xn]=na,gt[zn]=ta,gt[dn]=ia,gt[hn]=aa,gt[_n]=ua,gt[Rn]=oa,gt[Fn]=fa,gt[gn]=ca,gt[vn]=sa,gt[Ln]=la,gt[Bn]=pa,gt[Dn]=va,gt[Ur]=ga,gt[Hr]=va,gt[Yr]=da,gt[Kr]=ka,gt[an]=xa,gt[Jr]=xa,gt[$n]=Oa,gt[on]=Sa,gt[Gn]=Na,gt[Zn]=ja,gt[Jn]=Ta,gt[Wn]=Mi,gt[Cn]=qi,gt[ct]=Ri,gt[Vr]=Ti,gt[Qr]=Pi,gt[ln]=mi,gt[pn]=ki,gt[Mn]=wi,gt[qn]=xi,gt[En]=Oi,gt[un]=Oi,gt[Tn]=Si,gt[Pn]=Ni,gt[An]=ji;var mt=[],kt=0,wt=[],xt=0,Ot=-1,St=0,Nt=!1,jt=!1,Tt=6e3,Pt=0,At=0,It=0,Et,$t=0,Mt,qt,_t=[],Rt=[],Ft=[],Wt,Ct,Lt=[],Bt,Dt,Xt=0,zt=100,Gt=3e4,Zt=1e4,Jt=2e5,Vt=Gt,Qt,Ut;function Ht(){return St=xt=kt=0,yt=Zr,vt=dt=ht=bt=tr[1]=ue,er[1]=er,Pu(),1}function Yt(e){return mt[kt++]=Zr,yt=jn,vt=e}function Kt(e,r,n){return qo(),wt[xt++]=jt,wt[xt++]=Nt,wt[xt++]=e,wt[xt++]=r,wt[xt++]=pe,wt[xt++]=tr[1],wt[xt++]=bt,wt[xt++]=ht,wt[xt++]=dt,wt[xt++]=vt,wt[xt++]=St,wt[St=xt++]=Un,wt[xt++]=kt+2,wt[xt++]=!1,mt[kt++]=yt,mt[kt++]=n?Jr:an,yt=jn,qt=ue,jt=Nt=!1,vt=e}function ei(e){return Yt(e),ni(!(It=0)),vt}function ri(){return $t<=0&&(yt!==Zr||0<kt)}function ni(e){if(!(0<$t)){var r=Et,n=Pt;Qt=(new Date).getTime(),wt.length=xt,yt===Zr&&0<kt&&(yt=mt[--kt]),Pt=(e=e||Et)?0:Tt,Et=e,Pr[1]=E(e);try{ti()}catch(e){if(e!==_t){debugger;Ou(hu,"caught: "+e.toString()),Va(De(["unknown","$"+e.toString()]))}qo()}finally{Et=r,Pt=n,wt.length=xt,Gt<Vt&&xt<Vt-Zt/2&&(Vt-=Zt/2)<Gt&&(Vt=Gt),si()}0<Ns.TextAvail()&&P.hasOwnProperty("console-out")&&P["console-out"](y,Ns.TakeText())}}function ti(){var e=0;do{if(xu!=wu[1]){debugger;Ou(hu,wu[Y]+" changed: "+js(xu)+" --\x3e "+js(wu[1])),xu=wu[1]}if(Vt<xt&&(Va(De(["internal","$maximum stack depth exceeded"])),Vt=xt+Zt,Jt<xt))return Ou(hu,"intractable recursion"),Ht(),void qo();if(1e3<=++e){e=0;if(wt.length=xt,1e4<(new Date).getTime()-Qt)return void Va(De(["internal","$unresponsive"]));if(0<Pt&&(Pt-=1e3,Pt<=0&&(Pt=Tt,yt!==Zr))){mt[kt++]=yt,yt=Zr;break}}}while(gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),yt!=Zr)}var ii=[],ai=[],ui=[],oi=[],fi=[],ci=[];function si(){var e=(new Date).getTime(),r=e-Qt;Ut===L&&(ii[Ut=0]=Qt,ui[0]=0,oi[0]=0,fi[0]=0,ci[0]=0),++ui[Ut],oi[Ut]+=r,fi[Ut]<r&&(fi[Ut]=r),++ci[Ut],e>=ii[Ut]+200&&(ai[Ut]=e-ii[Ut],50<++Ut&&(Ut=0),ii[Ut]=e,ui[Ut]=0,oi[Ut]=0,fi[Ut]=0,ci[Ut]=0)}function li(e,r){e=e||4,r=r||1e3;for(var n=[],t=[],i=ii.length-1,a=Ut-1,u=e*r;0<=--i&&(n.push({start:ii[a],width:ai[a],runtime:oi[a],peak:fi[a],runcount:ui[a],counter:ci[a]}),--a<0&&(a=ii.length-1),!((u-=ai[a])<0)););if(0===n.length)return[];var o=n[0];(new Date).getTime()-o.start>3*r&&t.push({start:o.start+r,width:r,cpu:0,peak:0,average:0,samples:0});for(var f=o.start+o.width-r,c=1;t.length<e;)if(f>=o.start){var s=o.peak;r<s&&(s=r);var l=Number((o.runtime/o.width).toFixed(3)),p=Math.round(o.runtime/o.runcount);s==r&&(l=1,p=1e3),t.push({start:f,width:r,cpu:l,peak:s,average:p,samples:o.counter}),f-=r}else{if(c>=n.length)break;o=n[c++]}return t}function pi(){return Rt}function gi(e,r,n,t){vt=r,dt=n,ht=t,bt=e,mt[kt++]=$n,yt=Zr,$t=1}function vi(e){if(e[U]!==ue)Wt=e[U];else{if(e[1]===e)return ue;Wt=e[1]}return Ct=e,Ft}function di(e,r){return Bt=e,Dt=r,Lt}function hi(){}function bi(){var e=vt,r=0;if(e[0]!==D){if(e[0]===Q&&zu(e[3])){if(B((vt=e)[3]))return void(yt=ln);if(e[3]instanceof Gu)return void(yt=Mn)}return vt=e[1],void(yt=mt[--kt])}for(var n=e[1];n[0]===X;){if(++r>zt)return yt=mt[--kt],void(vt=ue);if(n[3]!==ue)n=n[3];else{if(n[1]===n)break;if((n=n[1])[0]===Q)return yt=Nn,bt=n,ht=Ge,dt=e[2],void(vt=n)}}if(n[0]===D&&I(n[1])||n[0]===J||n[0]===O||n[0]===V)return yt=Nn,bt=e[1],ht=Ge,dt=e[2],void(vt=n);yt=I(n)?mt[--kt]:yn}function yi(){vt[0]===X&&(vt=W(vt[U])),bt=vt[0]===D?vt:Ze,ht=ue,yt=Nn}function mi(){if(ht=Xu(kr,ue),0===vt[3].length)return vt=ht,void(yt=mt[--kt]);wt[xt++]=vt,wt[xt++]=ht,wt[xt++]=0,mt[kt++]=pn,(vt=vt[3][0])===L&&(vt=Xe),yt=jn}function ki(){if(dt=wt[xt-1]++,ht=wt[xt-2],bt=wt[xt-3],ht[3][dt++]=vt,dt<bt[3].length)return mt[kt++]=pn,vt=bt[3][dt],void(yt=jn);xt-=3,vt=ht,yt=mt[--kt]}function wi(){if(ht=Zu(),0===(dt=lo(Object.getOwnPropertyNames(vt[3]).reverse()))[3].length)return vt=ht,void(yt=mt[--kt]);wt[xt++]=vt,wt[xt++]=ht,wt[xt++]=dt,mt[kt++]=qn,(vt=vt[3][dt[3][dt[3].length-1]])===L&&(vt=Xe),yt=jn}function xi(){if(dt=wt[xt-1],ht=wt[xt-2],bt=wt[xt-3],vt===Xe?dt[3].pop():ht[3][dt[3].pop()]=vt,0<dt[3].length)return mt[kt++]=qn,vt=bt[3][dt[3][dt[3].length-1]],void(yt=jn);xt-=3,vt=ht,yt=mt[--kt]}function Oi(){if(wt[xt++]=yt===En?Ge:ue,wt[xt++]=ue,wt[xt++]=vt[1],wt[xt++]=vt[2][1],wt[xt++]=vt[2][2][1],(vt=vt[1])[0]===D){var e=vt[1][U][ne];if(e===Ba&&vt[2][2][2]===ue)vt=vt[2],yt=yn;else{if(e!==Da)return xt-=5,vt=ue,void(yt=mt[--kt]);vt=vt[2][1],yt=jn}mt[kt++]=Tn}else yt=Tn}function Si(){wt[xt-4]=vt,vt=wt[xt-2],mt[kt++]=Pn,yt=jn}function Ni(){wt[xt-2]=vt,vt=wt[xt-1],mt[kt++]=An,yt=jn}function ji(){var e=wt[xt-5],r=vt,n=wt[xt-2],t=wt[xt-3],i=wt[xt-4];t[0]===D&&t[1][U][ne]===Da&&(i=Le(i,t[2][2])),xt-=5,vt=ns(i,n,r,e),yt=mt[--kt]}function Ti(){wt[xt++]=ht,wt[xt++]=dt,mt[kt++]=Qr,yt=jn}function Pi(){vt[0]===X&&(vt=W(vt[U])),bt=vt[0]===D?vt[2][1]:Ze,dt=wt[--xt],ht=wt[--xt],yt=Nn}function Ai(){var r,n,e,t,i=vt,a=dt,u=ht!==ue;if(i[0]===X&&(i=W(i[U])),i[0]===J)return e=a[2][2][1],n=a[2][1],r=a[1],ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,u),mt[kt++]=on),u?r[0]!==D&&n[0]!==D&&e[0]!==D&&r[0]!==Q&&n[0]!==Q&&e[0]!==Q?(vt=i[3](r[1],n[1],e[1],i))===Rt?void gi(i,r[1],n[1],e[1]):vt===Ft?(bt=Ct,ht=Ge,void(vt=Wt)):vt===Lt?void wa(Bt,Dt,a,!0):void(yt=mt[--kt]):(wt[xt++]=i,wt[xt++]=e,wt[xt++]=n,vt=r,mt[kt++]=fn,void(yt=jn)):(vt=i[3](r,n,e,i))===Rt?void gi(i,r,n,e):vt===Ft?(bt=Ct,void(vt=Wt)):vt===Lt?void wa(Bt,Dt,a):void(yt=mt[--kt]);if(i[0]===O||i[0]===Q)if(ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,u),mt[kt++]=on),i[0]===O&&yt!==ft&&u&&(vt=!1,a[0]===D?(r=a[1])[0]!==D&&r[0]!==Q&&(a[2][0]===D?(n=a[2][1])[0]!==D&&n[0]!==Q&&a[2][2][0]!==D&&(vt=i[3](2,function(e){return 0<=e&&e<2?[r[1],n[1]][e]:ue},i,ue)):vt=i[3](1,function(e){return 0===e?r[1]:ue},i,ue)):vt=i[3](0,function(e){return ue},i,ue),vt&&vt!==Rt&&vt!==Ft&&vt!==Lt||mt[kt-1]===an))yt=mt[--kt];else{yt===ft?(wt[xt]=wt[xt-1],++xt):wt[xt++]=ue,ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,u),mt[kt++]=on);for(var o=0;a[0]===D;)wt[xt++]=a[1],++o,a=a[2];wt[xt++]=o,wt[xt++]=u?0:o,wt[xt++]=i,yt=Wn}else if(i[0]===V){if(ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,!1),mt[kt++]=on),(vt=i[3](a,i))!==Rt)return vt===Ft?(bt=Ct,ht=ue,void(vt=Wt)):void(vt!==Lt?yt=mt[--kt]:wa(Bt,Dt,a));gi(i,a)}else i[0]!==D||i[1]!==Qe&&i[1]!==Je&&i[1]!==Ve&&i[1]!==Ue&&i[1]!==He&&i[1]!==Ye?(vt=ue,yt=mt[--kt]):(t=i[2][1],mu<=ou&&(Nu(mu,js(bt),a,u),mt[kt++]=on),wt[xt++]=pe,yt===ft?(wt[xt]=xt-2,++xt):wt[xt++]=tr[1],t!==Ze&&t[0]===X&&t[H]!==ue?t[U]===i?(i[1]===Qe?(u=!1,ht=ue,t[H]!==ce&&(i=zr(i,pe))):i[1]===Ue&&(i=zr(i,t[H])),"string"!=typeof i?(t=i[2][1],e=i[2][2][1],t=t[H],e[0]!==D?e[0]===X?e[1]!==He?e===ue||e[H]===t?(wt[xt++]=bt,wt[xt++]=i,vt=a,yt=u?(mt[kt++]=Vn,yn):Vn):Va(De(["internal","$parameter in foreign namespace: "+de(e[H])+Ls.NSinfix+e[Y]+" from: "+de(t)])):Va(De(["internal","$let parameter must be tuple"])):Va(De(["internal","$parameter is not a symbol"])):(a[0]!==D?r=ue:(r=a[1],a=a[2]),wt[xt++]=bt,wt[xt++]=i,wt[xt++]=ht,wt[xt++]=a,wt[xt++]=e,wt[xt++]=0,vt=r,yt=u?r[0]===D||r[0]===Q?(mt[kt++]=en,jn):(vt=r[S],en):en)):Va(De(["internal",i]))):Va(De(["internal","$privilege violation in "+js(bt)])):Va(De(["internal","$namespace invalid in "+js(bt)])))}function Ii(){var e=wt[xt-1];wt[xt-1]=vt,yt=(vt=e)===ue?cn:(mt[kt++]=cn,jn)}function Ei(){var e=wt[xt-2];wt[xt-2]=vt,yt=(vt=e)===ue?sn:(mt[kt++]=sn,jn)}function $i(){var e=wt[--xt],r=wt[--xt],n=vt,t=wt[--xt];if((vt=t[3](e,r,n,t))!==Rt)return vt===Ft?(vt=Ct,dt=Le(e,Le(r,Le(n,ue))),void(yt=In)):void(vt!==Lt?yt=mt[--kt]:wa(Bt,Dt,Le(e,Le(r,Le(n,ue)))));gi(t,e,r,n)}function Mi(){var e,r=wt[xt-3],n=xt-3-r,t=wt[xt-2],i=wt[xt-1];function a(e){return e<0||r<=e?ue:wt[n+e]}if(t<r)return vt=wt[n+t],yt=ht===ur&&1==t||ht===kr&&(0===t||1===t)?Cn:(mt[kt++]=Cn,jn),void(wt[xt++]=ht);if(wt[xt++]=St,wt[St=xt++]=lt,mt[kt++]=ct,wt[xt++]=kt,wt[xt++]=!1,(vt=i[0]===Q?u(i[x])?Ao(i,r,0,a):jo(null,i,r,0,a):i[3]!==ue?i[3](r,a,i,wt[n-1]):ue)===Rt)return _i(),mt[kt-1]=Wn,yt=Zr,void($t=1);if(vt!==Ft)if(vt!==Lt)yt=mt[--kt];else{for(dt=ue,e=r;0<=--e;)dt=Le(wt[n+e],dt);wa(Bt,Dt,dt)}else{for(vt=Ct,dt=ue,e=r;0<=--e;)dt=Le(wt[n+e],dt);yt=In}}function qi(){ht=wt[--xt];var e=wt[xt-3],r=wt[xt-2];wt[xt-3-e+r]=vt,wt[xt-2]=r+1,yt=Wn}function _i(){xt-=2,wt[--xt]!==lt&&Ou(hu,"naanUnlinkArbFrame: lost frame sync"),(St=wt[--xt])<It&&$o()}function Ri(){var e=wt[xt-1];e&&e[x].trap?Iu(e,vt):(_i(),e=wt[xt-3],xt=xt-4-e,yt=mt[--kt])}function Fi(){var e=St;if(wt[e]!==Hn)return!1;for(var r=kt;;){var n=mt[--r];if(n!==On){if(n===tn||n===Qn)break;return!1}}for(;wt[e]===Hn;){if(wt[e+3]!==ue||wt[e+5][2][0]===D)return!1;e=wt[e-1]}return e}function Wi(e,r){if(r[1]!==Je&&r[1]!==Ue)return!1;var n,t;if(wt[e]===Kn)n=wt[e-3],t=Ci;else{if(wt[e]!==et)return!1;n=wt[e-wt[e-2]-6],t=Li}if(wt[e+2])return!1;if(n[1]===Je||n[1]===He){var i=n[2][1],r=r[2][1];if(i[H]!==r[H])return!1;for(var a=r;a=a[2][3][".parent"];)if(a===i)return!1}else if(n[1]!==Ue)return!1;return t(e)}function Ci(e){var r=wt[e-3],n=r[2][2][1];return n!==ue&&r[1]!==Ue&&(n[1]=wt[e-2]),kt=wt[e+1]-1,e-4}function Li(e){var r=wt[e-2],n=wt[e-6-r];if(n[1]!==Ue)for(var t=n[2][2][1],i=e-2-r,a=r;0<=--a&&t[0]===D;)t[1]!==ue&&(t[1][1]=wt[i]),++i,t=t[2];return kt=wt[e+1]-1,e-7-r}function Bi(){var e,r,n,t=Fi();!t||(n=Wi(t,r=wt[(e=xt)-1]))&&(St=wt[t-1],wt[n+0]=wt[e-2],wt[n+1]=r,xt=n+2)}function Di(e){var r=Fi();if(r){var n=xt,t=wt[n-4-e],i=Wi(r,t);if(i){for(St=wt[r-1],wt[i+0]=wt[n-5-e],wt[i+1]=t,wt[i+2]=wt[n-3-e],wt[i+3]=wt[n-2-e],wt[i+4]=wt[n-1-e],n-=e,i+=5;0<=--e;)wt[i++]=wt[n++];xt=i}}}function Xi(){for(var e=wt[--xt],r=wt[xt-1-e],n=wt[xt-2-e],t=wt[xt-3-e],i=vt;;){if(r[0]===D)wt[xt++]=i,++e,r=r[2];else if(n[0]!==D){Di(e);for(var a=wt[xt-4-e],u=a[2][1][H],r=a[2][2][1],o=xt-e,f=!1;r[0]===D;){if(i=r[1][1],r[1]===ue)f=!0;else{if(r[1][0]!==X)return void Va(De(["internal","$parameter is not a symbol"]));if(r[1][H]!==u)return void Va(De(["internal","$parameters in foreign namespace: "+de(r[1][H])+Ls.NSinfix+r[1][Y]+" from: "+de(u)]));r[1][1]=f?ue:wt[o]}wt[o++]=i,r=r[2]}return wt[xt++]=e,ht=ue,dt=a[2][2][2],vt=ue,wt[xt++]=St,wt[St=xt++]=et,mt[kt++]=tn,wt[xt++]=kt,wt[xt++]=!1,yt=wn,"number"==typeof(i=wt[xt-11-e])&&(a=tr[1],tr[1]=wt[i],wt[xt-11-e]=a),void(pe=u)}if(n[0]!==D?i=ue:(i=n[1],n=n[2]),t!==ue){if(i[0]===D||i[0]===Q)break;i=i[S]}}wt[xt-2-e]=n,wt[xt-1-e]=r,wt[xt++]=e,vt=i,mt[kt++]=en,yt=jn}function zi(){var e;Bi();var r=wt[xt-1],n=r[2][2][1];wt[xt++]=n[1],A(n)&&(n[1]=vt),ht=ue,dt=r[2][2][2],vt=ue,wt[xt++]=St,wt[St=xt++]=Kn,mt[kt++]=Qn,wt[xt++]=kt,wt[xt++]=!1,yt=wn,"number"==typeof(e=wt[xt-8])&&(n=tr[1],tr[1]=wt[e],wt[xt-8]=n),pe=r[2][1][H]}function Gi(){var e,r=wt[xt-1];r&&r[x].trap?Iu(r,vt):(xt-=2,wt[--xt]!==Kn&&Ou(hu,"nadiCallNoSpread2: lost frame sync"),(St=wt[--xt])<It&&$o(),(r=(e=wt[xt-2])[2][2][1])!==ue&&e[1]!==Ue&&(r[1]=wt[xt-1]),xt-=3,tr[1]=wt[--xt],pe=wt[--xt],yt=mt[--kt])}function Zi(){var e=wt[xt-1];if(e&&e[x].trap)Iu(e,vt);else{xt-=2,wt[--xt]!==et&&Ou(hu,"nadiCallComplete: lost frame sync"),(St=wt[--xt])<It&&$o();var r=wt[--xt],e=wt[xt-4-r];if(e[1]!==Ue)for(var n=e[2][2][1],t=xt-r,i=r;0<=--i&&n[0]===D;)n[1]!==ue&&(n[1][1]=wt[t]),++t,n=n[2];xt-=r+5,tr[1]=wt[--xt],pe=wt[--xt],yt=mt[--kt]}}function Ji(){ht=Ge,dt=vt,Mt=vt=ue,yt=wn}function Vi(){wt[xt++]=St,wt[St=xt++]=Hn,wt[xt++]=kt,wt[xt++]=!1,wt[xt++]=ht,wt[xt++]=dt,wt[xt++]=dt,yt=xn}function Qi(){for(var e=wt[xt-1],r=wt[xt-3];;){if(Mt=vt,yt===On?(yt=xn,e=e[2],wt[xt-1]=e):yt===Sn&&(yt=xn,A(Mt)?(r=ue,e=e[1][2],wt[xt-3]=r):e=e[2],wt[xt-1]=e),e[0]!==D){if(r!==ue)return e=wt[xt-2],void(wt[xt-1]=e);yt=mt[--kt]}else{if(Nt&&0==--Nt)return void Eu({state:We("task"),body:wt[xt-2],task:e,loop:r,value:Mt});if(e[1].breakpoint&&Au(e))return;if(e[1][0]!==D){if((vt=e[1])[0]===Q)return mt[kt++]=On,void(yt=jn);vt=vt[1],yt=On;continue}if(e[1][1][0]===D){if(e[1][1][1][0]!==D)return vt=e[1][1],mt[kt++]=Sn,void(yt=jn);r===ue&&e[2][0]!==D?(e=e[1],r=ue,wt[xt-1]=e,wt[xt-2]=e,wt[xt-3]=r):(Nt&&++Nt,wt[xt-1]=e[2],e=e[1],r=ue,wt[xt++]=St,wt[St=xt++]=Hn,wt[xt++]=kt,wt[xt++]=!1,wt[xt++]=r,wt[xt++]=e,wt[xt++]=e,mt[kt++]=xn),wt[xt-6]!==Hn&&Ou(hu,"nadiBody1: lost frame sync");continue}if(vt=e[1],yt=vt[1][U]!==ue?(bt=vt[1],ht=Ge,dt=vt[2],vt=bt[U],Nn):jn,!(ou<=du&&r===ue&&e[2][0]!==D))return void(mt[kt++]=On)}var n=wt[xt-4];return n&&n[x].trap?(mt[kt++]=yt,yt=st,void Iu(n,vt)):(xt-=5,wt[--xt]!==Hn&&Ou(hu,"nadiBody4: lost frame sync"),void(St=wt[--xt]))}}function Ui(){xt-=5,wt[--xt]!==Hn&&Ou(hu,"nadiBody4: lost frame sync"),St=wt[--xt],yt=mt[--kt]}function Hi(){wt[xt++]=ue,wt[xt++]=ue,wt[xt++]=vt,yt=mn}function Yi(){var e=wt[xt-1];if(e[0]!==D)return vt=wt[xt-2],xt-=3,void(yt=mt[--kt]);vt=e[1],mt[kt++]=kn,yt=jn}function Ki(){var e=wt[xt-1],r=wt[xt-3],n=Le(vt,ue);r!==ue?r[2]=n:wt[xt-2]=n,wt[xt-3]=n,wt[xt-1]=e[2],yt=mn}function ea(){wt[xt++]=vt,yt=nn,vt=Ge}function ra(){var e=wt[xt-1];if(!A(vt)||e[0]!==D)return--xt,void(yt=mt[--kt]);vt=e[1],wt[xt-1]=e[2],mt[kt++]=nn,yt=jn}function na(){wt[xt++]=vt,yt=zn,vt=ue}function ta(){var e=wt[xt-1];if(A(vt)||e[0]!==D)return--xt,void(yt=mt[--kt]);vt=e[1],wt[xt-1]=e[2],mt[kt++]=zn,yt=jn}function ia(){wt[xt++]=vt,dt=vt[2][1],vt=dt,mt[kt++]=hn,yt=jn}function aa(){es(wt[--xt][1],vt),yt=mt[--kt]}function ua(){wt[xt++]=0,wt[xt++]=vt,yt=Rn}function oa(){var e=wt[xt-1];if(e[0]!==D)return xt-=2,vt=ue,void(yt=mt[--kt]);vt=e[1][1],mt[kt++]=Fn,yt=jn}function fa(){var e=wt[xt-1];yt=A(vt)?(0!==wt[xt-2]&&(wt[wt[xt-2]]=tt),xt-=2,dt=e[1][2],ht=ue,wn):(wt[xt-1]=e[2],Rn)}function ca(){vt=(wt[xt++]=vt)[1],mt[kt++]=vn,yt=jn}function sa(){var e=wt[--xt];vt=e[2][1][1]=Le(vt,e[2][1][1]),yt=mt[--kt]}function la(){wt[xt++]=vt[2][2],wt[xt++]=vt[2][1],vt=vt[1],wt[xt++]=vt,mt[kt++]=Bn,yt=jn}function pa(){wt[xt-1]=vt,vt=wt[xt-2],mt[kt++]=Dn,yt=jn}function ga(){la(),mt[kt-1]=Hr}function va(){yt===Dn?wt[xt-2]=vt:wt[xt-1]=vt,dt=wt[--xt],vt=wt[--xt],ht=wt[--xt],yt===Hr&&vt[0]===D&&(vt[2][0]!==D?vt=vt[1]:(wt[xt++]=ht,wt[xt++]=vt[2],wt[xt++]=dt,mt[kt++]=Hr,vt=vt[1],ht=ue)),yt=Yr,wt[xt++]=ht,wt[xt++]=dt}function da(){var e=ue;if(dt=vt,vt=wt[--xt],ht=wt[--xt],!A(vt))return vt=ue,void(yt=mt[--kt]);switch(vt[0]){case D:if(dt===ue)e=vt;else if(dt[0]===G||dt[0]===Z){var r=Do(dt,65535);if(null!==r){for(e=vt,r=Math.abs(r);e[0]===D&&0<=--r;)e=e[2];s.negative(dt[3])||(e=e[1])}}else if(ya(vr))return;break;case X:if(ya(dr))return;if(ht===ue)return ba();e=ue;break;case k:if(ya(Sr))return;if(ht===ue)return ba();e=ue;break;case z:if(dt[0]!==G)return ya(mr)?void 0:ht===ue?ba():void ma("String");var n=Do(dt,Number.MAX_SAFE_INTEGER),e=We(n<0?vt[3].charAt(vt[3].length+n):vt[3].charAt(n));break;case G:return ha()?void 0:ya(hr)?void 0:ht===ue?ba():void ma("Number");case Z:return ha()?void 0:ya(br)?void 0:ht===ue?ba():void ma("Number");case Q:if(zu(vt[3])){if(e=ue,n=dt[0]===X?dt[Y]:dt[0]===z?dt[K]:(dt[0]===G||dt[0]===Z)&&Do(dt,Number.MAX_SAFE_INTEGER),B(vt[3]))if("length"==n)e=Fo(vt[3].length);else{if(ya(kr))return;if(dt[0]===G)(e=vt[3][n])===L&&(e=ue);else if(ht!==ue)return dt=Le(vt,Le(bt=dt,ht[1])),ht=kr,vt=Rr[3],void(yt=Nn)}else if(!1!==n)if(vt[3].hasOwnProperty(n))e=vt[3][n];else if(vt[3]instanceof Ju)ht!==ue?(e=fo(vt,n))===ue&&(e=fo(vt,".undefined",!0))!==ue&&(ht=Le(Le(dt,ht[1]),ue)):(e=fo(vt,".."+n,!0))!==ue&&(ht=Le(ue,ue));else if(ya(wr))return}else if(e=Oo(vt,dt),ht!==ue)return dt=Le(vt,Le(bt=dt,ht[1])),ht=ur,vt=Cr[3],void(yt=Nn);break;default:return ba()}if(ht===ue)return vt=e,void(yt=mt[--kt]);bt=dt,wt[xt++]=vt,mt[kt++]=Kr,dt=ht[1],ht=Ge,e[0]===X&&(e=W(e[U])),vt=e,yt=ft}function ha(){return(dt[0]===G||dt[0]===Z)&&(yt=mt[--kt],Va(De(["internal","numeric scalar dereference"]),ue),1)}function ba(){vt=ht===ue&&vt[0]===z&&(dt[0]===z&&"length"==dt[K]||dt[0]===X&&"length"==dt[Y])?Fo(vt[K].length):vt[0]===X?Le(ur,Le(vt,Le(dt,ht))):ue,yt=mt[--kt]}function ya(e){e=ts(e,dt);if(!A(e)){if(vt[0]===D)return;if(!A(e=ts(vt,dt)))return}return bt=dt,dt=Le(Le(ir,Le(vt,ue)),ht[1]),ht=Ge,e[0]===X&&(e=W(e[U])),vt=e,yt=Nn,1}function ma(e){e=Te(e,[ce,se]);dt=Le(e,Le(bt=dt,Le(vt,ht[1]))),ht=ur,vt=Cr[3],yt=Nn}function ka(){--xt,yt=mt[--kt]}function wa(e,r,n,t){var i=fo(e,r);i===ue&&(i=fo(e,".undefined",!0))!==ue&&(n=Le(Le(We(r),n),ue)),wt[xt++]=e,mt[kt++]=Kr,dt=n,ht=t?Ge:ue,i[0]===X&&(i=W(i[U])),vt=i,yt=ft}function xa(){qt=vt;var e=yt===Jr,r=wt[xt-1];if(r&&r[x].trap)return Iu(r,vt),wt[xt-13]=Nt,void(wt[xt-14]=jt);yt=mt[--kt],xt-=2,wt[--xt]!==Un&&Ou(hu,"nadiInterruptRestore: lost frame sync"),(St=wt[--xt])<It&&$o(),vt=wt[--xt],dt=wt[--xt],ht=wt[--xt],bt=wt[--xt],tr[1]=wt[--xt],pe=wt[--xt],xt-=2,jt?xt-=2:(Nt=wt[--xt],jt=wt[--xt]),e&&(vt=qt)}function Oa(){var e=bt,r=ht,n=dt,t=vt,i=e[0]>=J&&e[0]<=V?e[3](t,n,r,e):ue;i===Rt?gi(e,t,n,r):(vt=i,yt=mt[--kt])}function Sa(){ju(vt),yt=mt[--kt]}function Na(){wt[xt++]=ue,wt[xt++]=rt,wt[xt++]=ue,wt[xt++]=vt,wt[xt++]=St,wt[St=xt++]=Yn,wt[xt++]=kt,wt[xt++]=!1,ht=ue,dt=vt[1],vt=ue,mt[kt++]=Zn,yt=wn}function ja(){wt[xt-6]=vt,wt[xt-3]=pt,St<It&&$o(),wt[xt-7]===tt&&(er[1]=er),vt=wt[xt-5],ht=ue,dt=vt[2][2][1],vt=ue,mt[kt++]=Jn,yt=wn}function Ta(){vt=wt[xt-6],dt=wt[xt-7],ht=wt[xt-8],St=wt[xt-4];var e=wt[xt-1];e&&e[x].trap?Iu(e,vt):(xt-=2,wt[--xt]!==pt&&Ou(hu,"nadiCatch2: lost frame sync"),xt-=5,yt=(dt===tt||dt===rt||(dt===at?(Qa(vt),wt[St]==Yn&&(er[1]=er)):dt===ut?Ha(ht):dt===ot?Ya(ht):Ja(er[1],Ge)),mt[--kt]))}function Pa(){return ue}function Aa(e){return e[0]!==D&&e[0]!==Q?e[1]:(mt[kt++]=jn,e)}function Ia(e,r){return mt[kt++]=In,dt=r,e}function Ea(e){return mt[kt++]=Vr,ht=Ge,dt=e[2],e[1]}function $a(e){return mt[kt++]=Vr,ht=ue,dt=e[2],e[1]}$e("undefined",Pa,J);var Ma=Ee($a,V);function qa(e){return mt[kt++]=yn,e}function _a(e){return mt[kt++]=rn,e}function Ra(e){return mt[kt++]=Xn,e}function Fa(e){return mt[kt++]=bn,e}function Wa(e){return e[0]!==D?ue:(mt[kt++]=dn,e)}function Ca(e){return mt[kt++]=_n,e}function La(e){return e[2][1][0]!==X?ue:Xr(e[2][1])?(mt[kt++]=gn,e):vt}function Ba(e){return mt[kt++]=Ln,e}function Da(e){return mt[kt++]=Ur,e}function Xa(e){return mt[kt++]=En,e}function za(e){return mt[kt++]=un,e}function Ga(e){return mt[kt++]=Gn,e}function Za(){if(void 0===vt||void 0===dt||void 0===ht||void 0===bt)debugger;var e,r,n,t,i=St;if(xt<St||St+50<xt)debugger;for(t=0;t<xt;++t)if(void 0===wt[t])debugger;for(;0<i;){switch(wt[i]){case Kn:if(!I((r=wt[i-3])[1]))debugger;if(wt[i-6][0]!=k)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;if(mt[n-1]!=Qn)debugger;break;case et:if((e=wt[i-2])<0||1e3<e)debugger;if(!I((r=wt[i-6-e])[1]))debugger;if(wt[i-9-e][0]!=k)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;if(mt[n-1]!=tn)debugger;break;case lt:if((e=wt[i-4])<0||1e3<e)debugger;if((r=wt[i-2])[0]!=O&&r[0]!=Q)debugger;if(n=wt[i+1],mt[n-1]!=ct)debugger;break;case Hn:if((n=wt[i+1])<0||kt+1<n)debugger;break;case Yn:if(wt[i-4]<0||wt[i-4]>ot)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;break;case pt:break;case Un:if(wt[i-7][0]!=k)debugger;break;default:debugger}if(wt[i-1]<0||wt[i-1]>=i)debugger;i=wt[i-1]}}function Ja(e,r){var n,t,i,a=St;if(Za(),e[0]===D&&e[1][0]===X&&"internal"==e[1][Y]&&e[2][1]===rr&&rr[U]!==ue)return Kt(Le(rr,ue),"escape"),mt[kt++]=yt,vt;if(er[U]!==ue&&r===ue)return er[1]===er&&(er[1]=e),yt=mt[--kt],Kt(Le(qr,Le(er[1],Le(Ge,ue))),"exception-rethrow"),Kt(Le(er,Le(e,ue)),"exception-hook"),mt[kt++]=yt,vt;for(vt=ue;0<a;){var u=wt[a];switch(u){case Kn:mu<=ou&&Tu(e),t=wt[a-2],(i=wt[a-3][2][2][1])!==ue&&(i[1]=t),tr[1]=wt[a-5],pe=wt[a-6];break;case et:for(mu<=ou&&Tu(e),t=wt[a-2],i=wt[a-6-t][2][2][1],n=t-1;0<=n;--n)i[1][1]=wt[a-3-n],i=i[2];tr[1]=wt[a-8-t],pe=wt[a-9-t];break;case lt:mu<=ou&&Tu(e);break;case Hn:break;case Yn:return wt[(St=a)-4]!==rt?(wt[a-4]===tt&&(er[1]=e),wt[a-4]=it,xt=a+3,kt=wt[a+1],mt[kt++]=Zn):(er[1]=e,St<It&&$o(),wt[a-4]=nt,xt=a+3,kt=wt[a+1],vt=wt[a-2],wt[xt++]=a-4,wt[xt++]=vt[2][1],mt[kt++]=Zn,mt[kt++]=Rn),er;case pt:break;case Un:if(tr[1]=wt[a-6],pe=wt[a-7],"future"==wt[a-8])wt[a-9][2][2][1][x][".exception"]=e;else{if("debugger"==js(er[1]))break;if(!/fiberwake|escape|xcallback/.test(wt[a-8]))break}return er[1]=er,xt=a+3,kt=wt[a+1],ue;default:Ou(hu,"nfuncThrow: unknown frame type on stack: "+u)}a=wt[a-1]}return er[1]!==er&&(e=er[1]),e[0]===D&&e[1][0]===X&&"internal"==e[1][Y]?e[2][1]!==rr&&Ou(hu,js(e[2][1])):"debugger"!=js(e)&&Ou(hu,"uncaught exception: "+js(e)),Ht(),Yt(De(["driver",101])),mt[kt++]=yt,vt}function Va(e){Ja(e,ue),yt=mt[--kt]}function Qa(e,r){for(var n,t,i,a,u=St;0<u;){var o=wt[u];switch(o){case et:if(t=wt[u-2],(a=wt[u-6-t])[1]!==He)return kt=wt[u+1],(St=u)<It&&$o(),xt=u+3,e;for(i=a[2][2][1],n=t-1;0<=n;--n)i[1][1]=wt[u-3-n],i=i[2];tr[1]=wt[u-8-t],pe=wt[u-9-t];break;case Kn:if((a=wt[u-3])[1]!==He)return kt=wt[u+1],(St=u)<It&&$o(),xt=u+3,e;t=wt[u-2],(i=a[2][2][1])!==ue&&(i[1]=t),tr[1]=wt[u-5],pe=wt[u-6];break;case lt:case Hn:break;case Yn:if(r)break;return wt[(St=u)-4]=at,wt[u-3]=e,xt=u+3,kt=wt[u+1],mt[kt++]=Zn,e;case pt:case Un:break;default:Ou(hu,"naanReturn: unknown frame type on stack: "+o)}u=wt[u-1]}return Ja(De(["internal","$orphaned return"]),ue)}function Ua(e,r){return Qa(e?r(0):Mt)}function Ha(e){for(var r,n,t,i,a=St;0<a;){var u=wt[a];switch(u){case et:if(r=wt[a-2],(i=wt[a-6-r])[1]===He){for(t=i[2][2][1],n=r-1;0<=n;--n)t[1][1]=wt[a-3-n],t=t[2];tr[1]=wt[a-8-r],pe=wt[a-9-r];break}case Kn:a=-1;continue;case lt:break;case Hn:if(wt[a+3]!==Ge)break;if(e!==ue&&Gc(e,wt[a+4][S])===ue)break;return kt=wt[a+1],xt=(St=a)+6,wt[a+3]=ue,wt[a+5]=ue,mt[kt++]=xn,Mt;case Yn:return wt[(St=a)-5]=e,wt[a-4]=ut,xt=a+3,kt=wt[a+1],mt[kt++]=Zn,Mt;case pt:case Un:break;default:Ou(hu,"nfuncBreak: unknown frame type on stack: "+u)}a=wt[a-1]}return Ja(De(["internal",'$break tag "'+js(e)+'" not found']),ue)}function Ya(e){for(var r,n,t,i,a=St;0<a;){var u=wt[a];switch(u){case et:if(r=wt[a-2],(i=wt[a-6-r])[1]===He){for(t=i[2][2][1],n=r-1;0<=n;--n)t[1][1]=wt[a-3-n],t=t[2];tr[1]=wt[a-8-r],pe=wt[a-9-r];break}case Kn:a=-1;continue;case lt:break;case Hn:if(wt[a+3]!==Ge)break;if(e!==ue&&Gc(e,wt[a+4][S])===ue)break;return kt=wt[a+1],xt=(St=a)+6,wt[a+5]=wt[a+4],mt[kt++]=xn,ue;case Yn:return wt[(St=a)-5]=e,wt[a-4]=ot,xt=a+3,kt=wt[a+1],mt[kt++]=Zn,Mt;case pt:case Un:break;default:Ou(hu,"nfuncContinue: unknown frame type on stack: "+u)}a=wt[a-1]}return Ja(De(["internal",'$continue tag "'+js(e)+'" not found']),ue)}function Ka(e,r){var n=[],t=[];function i(e){var r=jc(e)!==ue?e[H]:e,e=n.indexOf(r);return e<0&&(e=n.push(r)-1,t[e]={}),t[e]}function a(e,r){i(e)[e[Y]]=r}function u(e){return i(e)[e[Y]]}var o=ue;e:for(;0<e;){var f,c,s,l,p,g,v,d,h,b,y,m=wt[e];switch(m){case Kn:g=wt[e-2],v=wt[e-3],d=wt[e-4],wt[e-5],y=wt[e-6],h=v[1],(f=u(b=v[2][2][1]))===L&&(f=b[1]),a(b,g),p=b===ue?ue:Le(b,Le(b[1],Le(g,ue))),l=Le(h,Le(d,Le(p,Le(v,Le(y,ue)))));break;case et:for(c=wt[e-2],v=wt[e-6-c],d=wt[e-7-c],wt[e-8-c],y=wt[e-9-c],h=v[1],b=v[2][2][1],p=ue,s=c-1;0<=s;--s)(f=u(b[1]))===L&&(f=b[1][1]),p=Le(Le(b[1],Le(f,Le(wt[e-3-s],ue))),p),b=b[2];for(b=v[2][2][1],s=c-1;0<=s;--s)a(b[1],wt[e-3-s]),b=b[2];l=Le(h,Le(d,Le(p=ec(p,ue),Le(v,Le(y,ue)))));break;case lt:for(c=wt[e-4],h=(v=wt[e-2])[0]===O?gr:Or,p=ue,s=c-1;0<=s;--s)p=Le(wt[e-4-c+s],p);l=Le(h,Le(p,Le(v,ue)));break;case Hn:l=Le(h=wt[e+3]===ue?or:fr,Le(wt[e+4],Le(wt[e+5],ue)));break;case Yn:l=Le(h=cr,Le(wt[e-2],ue));break;case pt:break;case Un:l=Le(h=sr,Le(wt[e-7],Le(We(wt[e-8]),Le(wt[e-9],ue))));break;default:return Ou(hu,"nfuncStacktrace: unknown frame type on stack: "+m),ue}if(l[1]===ue&&Ou(hu,"nfuncStacktrace: bad frameid"),o=Le(l,o),e=wt[e-1],"number"==typeof r&&e<=r)break e}return ec(o,ue)}function eu(e,r){for(var n=St;0<n;){var t=wt[n];switch(t){case Kn:case et:case lt:case Hn:case Yn:case pt:case Un:if(0<e--){n=wt[n-1];continue}var i=wt[n+2];return i=i||(r?wt[n+2]=Zu():ue);default:return Ou(hu,"naanFrameHook: unknown frame type on stack: "+t),ue}}return ue}function ru(e){for(var r,n=St;0<n;){var t=wt[n];switch(t){case Kn:return wt[n-3];case et:return r=wt[n-2],wt[n-6-r];case lt:case Hn:case Yn:case pt:case Un:break;default:return Ou(hu,"nfuncCaller: unknown frame type on stack: "+t),ue}n=wt[n-1]}return ue}function nu(e){for(var r,n=St;0<n;){var t=wt[n];switch(t){case Kn:return wt[n-6];case et:return r=wt[n-2],wt[n-9-r];case lt:case Hn:case Yn:case pt:case Un:break;default:return Ou(hu,"nfuncNscaller: unknown frame type on stack: "+t),ue}n=wt[n-1]}return ue}function tu(e,r){var n,t,i,a,u,o,f,c,s;function l(e){switch(e){case et:case Kn:case lt:case Yn:case pt:case Un:return 3;case Hn:return 6}}(s=[]).saveSelf=tr[1],s.saveExecNS=pe,s.stephook=jt,s.stepping=Nt,s.stack1=vt,s.stack2=dt,s.stack3=ht,s.stack4=bt,s.runLimit=Pt,a=St,u=xt,f=kt;e:for(;0<a;){switch(n={},0!==It&&It<a&&(n.sprint=!0),n.ftype=wt[a],o=a+l(n.ftype),n.runargs=wt.slice(o,u),n.ftype){case et:for(n.argcount=wt[a-2],u=a-9-n.argcount,n.execNS=wt[a-9-n.argcount],n.saveSelf=wt[a-8-n.argcount],n.fname=wt[a-7-n.argcount],n.fbind=wt[a-6-n.argcount],n.feval=wt[a-5-n.argcount],n.inarg=wt[a-4-n.argcount],n.inparm=wt[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=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r){if(n.fbind[1]===Ve||n.fbind[1]===Ye)for(i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)i[1]!==ue&&(i[1][1]=wt[a-3-t]),i=i[2];tr[1]=n.saveSelf,pe=n.execNS}if(!0===e&&n.fbind[1]!==He)break e;break;case Kn:if(u=a-6,n.execNS=wt[a-6],n.saveSelf=wt[a-5],n.fname=wt[a-4],n.fbind=wt[a-3],i=n.fbind[2][2][1],n.arg=i[1],c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r&&(n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i===ue||(i[1]=wt[a-2]),tr[1]=n.saveSelf,pe=n.execNS),!0===e)break e;break;case lt:for(n.argcount=wt[a-4],u=a-6-n.argcount,n.targetThis=wt[a-6-n.argcount],n.arglist=[],t=n.argcount-1;0<=t;--t)n.arglist.push(wt[a-5-t]);n.inarg=wt[a-3],n.fbind=wt[a-2],c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r&&(tr[1]=n.saveSelf,pe=n.execNS);break;case Hn:u=a-1,n.loop=wt[a+3],n.body=wt[a+4],n.task=wt[a+5],c=wt[a+1],n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n);break;case Yn:case pt:u=a-5,n.tag=wt[a-5],n.status=wt[a-4],n.result=wt[a-3],n.catchargs=wt[a-2],c=wt[a+1],n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n);break;case Un:break e;default:Ou(hu,"naanSaveProcState: unknown frame type on stack: "+n.ftype)}if(a=wt[a-1],f=c,"number"==typeof e&&a<=e)break e}return r&&((St=a)<It&&$o(),xt=0===St?0:a+l(wt[St]),kt=c),s}function iu(e){var r,n,t,i,a;for(Pt=e.runLimit,r=e.length-1;0<=r;--r){switch((n=e[r]).ftype){case et:for(wt[xt++]=n.execNS,wt[xt++]=n.saveSelf,wt[xt++]=n.fname,wt[xt++]=n.fbind,wt[xt++]=n.feval,wt[xt++]=n.inarg,wt[xt++]=n.inparm,i=n.fbind[2][2][1],t=0;t<n.argcount;++t)wt[xt++]=i[1][1],n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i[1]===ue||(i[1][1]=n.arglist[t]),i=i[2];wt[xt++]=n.argcount,wt[xt++]=St,St=xt,wt[xt++]=et,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case Kn:wt[xt++]=n.execNS,wt[xt++]=n.saveSelf,wt[xt++]=n.fname,wt[xt++]=n.fbind,i=n.fbind[2][2][1],wt[xt++]=i[1],n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i===ue||(i[1][1]=n.arg),wt[xt++]=St,St=xt,wt[xt++]=Kn,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case lt:for(wt[xt++]=n.targetThis,t=0;t<n.argcount;++t)wt[xt++]=n.arglist[t];wt[xt++]=n.argcount,wt[xt++]=n.inarg,wt[xt++]=n.fbind,wt[xt++]=St,St=xt,wt[xt++]=lt,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case Hn:wt[xt++]=St,St=xt,wt[xt++]=Hn,wt[xt++]=kt,wt[xt++]=n.hook,wt[xt++]=n.loop,wt[xt++]=n.body,wt[xt++]=n.task;break;case Yn:case pt:wt[xt++]=n.tag,wt[xt++]=n.status,wt[xt++]=n.result,wt[xt++]=n.catchargs,wt[xt++]=St,St=xt,wt[xt++]=n.ftype,wt[xt++]=kt,wt[xt++]=n.hook;break;case Un:default:Ou(hu,"naanRunProcState: unknown frame type on stack: "+n.ftype)}for(a=0;a<n.runstates.length;++a)mt[kt++]=n.runstates[a];for(t=0;t<n.runargs.length;++t)wt[xt++]=n.runargs[t];n.sprint&&(0===It?Eo():St<It&&(It=St))}vt=e.stack1,dt=e.stack2,ht=e.stack3,bt=e.stack4,jt=e.stephook,Nt=e.stepping,tr[1]=e.saveSelf,pe=e.saveExecNS}function au(){var e=Po(0);return e[w]=ue,e[x].execstate=tu(!0),e}function uu(e,r){return e[0]!==Q||zu(e[x])||!B(e[x].execstate)?ue:(iu(e[x].execstate),vt=r)}var ou=hu,fu=0,cu=0,su=30,lu=0,pu=3*su,gu="",vu=0,du=0,hu=1,bu=2,yu=3,mu=4,ku=5,wu=ue,xu=wu[1];function Ou(e,r){if(e<=ou&&P.hasOwnProperty("debug-write"))try{P["debug-write"](r,e)}catch(e){}}function Su(){var e="",r=0;for((pu<=fu||fu<lu)&&(cu=Math.floor(fu/su)*su-2*su,lu=cu+su,pu=cu+3*su,0<cu&&(e="*")),0<cu&&(e+=fu.toString(),e=" ".substring(e.length)+e+" ",r=cu);r++<fu;)e+=r%2==0?"| ":" ";return e}function Nu(e,r,n,t){0<gu.length&&Ou(vu,gu);for(var i=n,a="";i[g]===D;)0<a.length&&(a+=" "),t&&i[1][0]===X?a+=js(i[1][1],{quote:Ge}):a+=js(i[1],{quote:Ge}),i=i[N];gu=Su()+r+"("+a+")",vu=e,++fu}function ju(e){--fu<0&&(fu=0),0<gu.length?(Ou(vu,gu+"==> "+js(e,{quote:Ge})),gu=""):Ou(mu,Su()+"==> "+js(e,{quote:Ge}))}function Tu(e){--fu<0&&(fu=0),0<gu.length?(Ou(vu,gu+"==> unknown"),gu=""):Ou(mu,Su()+"==> unknown"),Ou(mu,"==> proc terminated by throw: ",js(e))}function Pu(){ou=bu,gu="",vu=fu=0}function Au(e){if(Wu[1]===Wu&&e[1].breakpoint[0]===Q){var r=e[1].breakpoint[x];if(zu(r)&&A(r.enable))return Wu[1]=e,Kt(Le(Ma,Le(r.proc,Le(e[1].breakpoint,Le(Mt,ue)))),"breakpoint"),1}}function Iu(e,r){var n;e[x].steps?(0<=(n=Do(e[x].steps,65535))&&(Nt=n+1,jt=e[x].trap),delete e[x].steps):Kt(Le(Ma,Le(e[x].trap,Le(r,ue))),"frametrap"),delete e[x].trap}function Eu(e){var r=jt;jt=Nt=!1;var n=Zu();R(n[x],e),Kt(Le(Ma,Le(r,Le(n,ue))),"steptrap")}function $u(){return Ka(St)}function Mu(e){return e[1][0]!==X?ue:(wu=e[1],xu=wu[1],e[1])}function qu(e,r){for(var n="",t=0;t<e;++t)n+=js(r(t)),t<e-1&&(n+=" ");return""!==n&&Ou(bu,n),Ge}function _u(e,r){var n=ou;ou=bu,qu(e,r),ou=n;debugger;return Ge}function Ru(e){var r=ou;return null===(ou=Do(e,9))&&(ou=r),Fo(r)}function Fu(e,r){function i(e,r){if(e[0]===Q){var n,t=e[x];if(!B(t)||!zu(t))return;for(n=0;n<t.length;++n)i(t[n],r)}else{if(e[0]!==D)return;r===Xe?delete e[1].breakpoint:e[1].breakpoint=r}return 1}if(0===e)return E(Wu[1]===Wu);var n=r(0);if(n[0]===X)return 1<e?ue:(n===Ge?Wu[1]=Wu:n===ue&&(Wu[1]=ue),E(Wu[1]===Wu));if(2<e)return ue;var t=r(1);if(t!==ue){if(t!==Xe){e=Zu(),r=e[x];return r.enable=Ge,r.proc=t,i(n,e)?e:ue}i(n,t)}else if(n[1].breakpoint)return n[1].breakpoint;return ue}var Wu=$e("breakpoint",Fu,O);function Cu(e,r,n){var t,i,e=Do(e,65535);if(null===e||e<0)return ue;if(r===ue)return eu(e);if(r[0]===G){if(s.negative(r[3]))return ue;t=r,i=n}else i=r;e=eu(e,!0);return e!==ue&&(e[x].trap=i,t?e[x].steps=t:delete e[x].steps),e}var Lu="*饢* Rcz *饢*",Bu=function(){};function Du(e){var p=new WeakMap;return function e(r){var n,t;if(p.get(r))return p.get(r);if(B(t=r[x])){n=Xu(kr,ue),p.set(r,n);for(var i,a=n[x],u=0;u<t.length;++u)(i=t[u])[0]===Q&&zu(i[x])?a[u]=e(i):a[u]=i}else{n=(r[3]instanceof Ju?Vu:Zu)(),p.set(r,n),n[2]=r[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&&zu(l[x])?f[o]=e(l):f[o]=l}}return n}(e)}function Xu(e,r,n){if(e===ue)return ue;if(e===wr)return r[0]!==Q||B(r[x])?_(r):(zu(r[x])?Zu:go)(r[x]);if(e===xr){var t=Vu();return r[0]===X&&r[3][1]===Ue&&(is(t,$r,r),is(t,Mr,nc(De(["function","lambda","false",["strcat","${object ",r[3][2][1][Y],"$}"]]),ue))),t}if(e===kr){var i;if(r[0]===Q&&B(r[x])){if(!zu(r[x]))return po(r[x],new WeakMap);i=r[x].slice()}else i=q(r);return i[Lu]=Bu,Ce(i)}if(e[0]===Q)return zu(e[x])?Du(e):po(e[x],new WeakMap);if(e!==Sr)return e===Nr?ro():e===jr?ao():e===Tr?Fs(r,n):ue;if(r[0]!==z&&r[0]!==G)return ue;r=ve(r);return fe.splice(0,0,r),r}function zu(e){return B(e)?e[Lu]===Bu:e instanceof Bu}function Gu(){}function Zu(e){var r=Ce(ue),n=new Gu;return e&&Object.assign(n,e),r[x]=n,r}function Ju(){}function Vu(){var e=Ce(ue),r=new Ju;return e[x]=r,e}function Qu(r,n){this.stacktrace=$e("stacktrace",function(){yt=mt[--kt],Kt(Le(ir,Le(r,ue)),"fiberwake",!0);var e=St;return iu(n),e=Ka(St,e),tu(!1,!0),e},J,!0)[U]}function Uu(e){var r=Ce(!1),e=new Qu(r,e);return r[w]=ue,r[x]=e,r}Gu.prototype=Object.create(Bu.prototype),Gu.prototype.constructor=Gu,Ju.prototype=Object.create(Bu.prototype),Ju.prototype.constructor=Ju,Qu.prototype=Object.create(Bu.prototype),Qu.prototype.constructor=Qu;var Hu=0,Yu={};function Ku(e){return null===(e=Do(e,Number.MAX_SAFE_INTEGER))||e<0?e=L:2147483647<e&&(e=2147483647),e}function eo(i,n,r){var t,a,u,o=[],f=0,c=++Hu;function s(e,r){return r&&0<r?(l(),Yu[c].delay=r,setTimeout(e,r)):(Promise.resolve().then(e),-1)}function l(e){var r=Yu[c];(r=r||{nonce:i,start:(new Date).getTime(),waiting:[],contins:[]}).count=f,n&&(r.execute=n),e&&r.waiting.push(e),Yu[c]=r}function p(){a&&clearTimeout(a),a=L}function g(){u&&clearTimeout(u),u=L}function v(e){var r=i[x];if(r.hasOwnProperty(".exception")){var n=r[".exception"];return delete r[".exception"],e?Ja(n,ue):Va(n)}return e}function d(e){if(e===L)return ue;if(t!==L)return ue;g();var r=Ge;for(a&&(!0===a?r=ue:p()),t=e;0<o.length;)!function(n,t){var e;Yu[c].contins.shift(),(e=Yu[c])&&e.waiting.pop(),s(function(){var e,r;e=n,r=t,Kt(Le(ir,Le(i,ue)),"fiberwake"),iu(e),vt=r,v(),ni(0==Pt)})}(o.shift(),t);return qo(),delete Yu[c],r}function h(e){var r=pe,n=tr[1];return function(){!0!==a&&(++f,a=!0,Kt(Le(Ma,Le(e,Le(i,ue))),"future"),tr[1]=n,pe=r,ni(!0),d(qt),P.hasOwnProperty("interrupted")&&P.interrupted(y))}}n&&0<=r&&(a=s(h(n),r)),this.wait=$e("wait",function(e,r){return t!==L?v(t):(0<(e=Ku(e))&&(u=setTimeout(function(){d(r)},e)),l(ru()),e=tu(!1,!0),o.push(e),Yu[c].contins.push(Uu(e)),++Xt,Ge)},J,!0)[U],this.signal=$e("signal",d,J,!0)[U],this.reset=$e("reset",function(e){return!0===a&&t===L?Ja(De(["internal","$can't reschedule future within itself"]),ue):(t=L,g(),n&&(p(),e=Ku(e),r=e||r||0,a=s(h(n),r)),i)},J,!0)[U]}function ro(){var e=Ce(!1),r=new eo(e);return e[w]=ue,e[x]=r,e}function no(e){return E(e[0]===Q&&e[x]instanceof eo)}function to(e,r){var n=Ce(!1),r=new eo(n,e,Ku(r));return r.cancel=r.signal,r.run=r.reset,delete r.signal,delete r.reset,n[w]=ue,n[x]=r,n}function io(){for(var e=Object.getOwnPropertyNames(Yu),r=ue,n=0;n<e.length;++n){var t=Yu[e[n]],i=new Gu;i.nonce=t.nonce,i.start=Fo(t.start),i.count=Fo(t.count),t.delay&&(i.delay=Fo(t.delay)),t.execute&&(i.execute=t.execute),t.waiting&&0<t.waiting.length&&(i.waiting=M(t.waiting)),t.contins&&0<t.contins.length&&(i.continuations=M(t.contins)),r=Le(Ce(i),r)}return r}function ao(e){var r=Ce(new WeakMap);return r[w]=ue,r}function uo(e){return E(e[0]===Q&&e[x]instanceof WeakMap)}function oo(e,r){var b=[],y=[];function m(e,r){for(;;){if(e[0]!==D)return(e[0]===Q&&zu(e[x])?k:Zc)(e,r);if(r[0]!==D)return ue;if(m(e[1],r[1])===ue)return ue;e=e[2],r=r[2]}}function k(e,r){var n;if(e===r)return Ge;if(b.push(e),B(e[x])){if(!B(r[x]))return ue;y.push(r);var t,i,a,u=e[x],o=r[x];if(u.length!=o.length)return ue;for(t=0;t<u.length;++t)if(i=u[t],a=o[t],"number"==typeof i){if(i!=a)return ue}else if(i[0]===Q&&zu(i[x])){if((n=b.indexOf(i))!=y.indexOf(a))return ue;if(n<0&&(n=b.length,k(i,a)===ue))return ue;u[t]=n,o[t]=n}else if(m(i,a)===ue)return ue}else{if(B(r[x]))return ue;y.push(r);var f,c,s,l=e[x],p=r[x],g=Object.getOwnPropertyNames(l).sort(),v=Object.getOwnPropertyNames(p).sort();if(g.length!=v.length)return ue;for(f=0;f<g.length;++f){if((c=g[f])!=(s=v[f]))return ue;var d=l[c],h=p[s];if("number"==typeof d){if(d!=h)return ue}else if(d[0]===Q&&zu(d[x])){if((n=b.indexOf(d))!=y.indexOf(h))return ue;if(n<0&&(n=b.length,k(d,h)===ue))return ue;l[c]=n,p[s]=n}else if(m(d,h)===ue)return ue}}return Ge}function s(e,r){if(e[0]===Q&&zu(e[x]))if(B(e[x]))for(var n,t=e[x],i=0;i<t.length;++i)"number"==typeof(n=t[i])&&(n=r[n],t[i]=n),s(n,r);else for(var a,u=e[x],o=Object.getOwnPropertyNames(u),f=0;f<o.length;++f){var c=u[a=o[f]];"number"==typeof c&&(c=r[c],u[a]=c),s(c,r)}else e[0]===D&&(s(e[1],r),s(e[2],r))}if(e[0]!==Q||!zu(e[x]))return ue;if(r[0]!==Q||!zu(r[x]))return ue;var n=k(e,r);return s(e,b),s(r,y),n}function fo(e,r,n){for(var t,i=e;i[0]===Q;){var a,u=i[3];if(i[2][0]===Q&&i[2][3]instanceof Gu)a=i[2][3],n&&(u=a);else if(n)break;if(u.hasOwnProperty(r))return u[r];if(!t&&a&&a.hasOwnProperty(".class"))t=i=a[".class"];else{if(!a||!a.hasOwnProperty(".parent"))break;i=a[".parent"]}}return ue}function co(e,r,n){if(e[0]!==Q)return ue;if(e[3]instanceof Ju){var t=fo(e,".="+vo(r),!0);if(t!==ue){if(!Xr(e,!0))return vt;yt=mt[--kt];t=Kt(Le(Ma,Le(t,Le(n,ue))),"setdot",!0);return mt[kt++]=yt,tr[1]=e,t}}return So(e,r,n)}function so(e,r){for(var n=ue,t=n,i=0;i<e.length;++i){var a=new Array(v),u=(r?lo:$)(u=e[i]);a[0]=D,a[1]=u,t!==(a[2]=ue)?t[2]=a:n=a,t=a}return n}function lo(e){return"string"==typeof e?We(e):"number"==typeof e?(isFinite(e)&&Math.floor(e)==e?Fo:Wo)(e):"boolean"==typeof e?E(e):e===L?Xe:null===e?ze:"object"==typeof e&&zu(e)?e:Ce(e)}function po(e,r){if(e===L)return Xe;if(null===e)return ze;if("object"!=typeof e||zu(e))return lo(e);if(r.get(e))return r.get(e);var n=Ce(e);if(r.set(e,n),B(e)){for(var t=e.length,i=[],a=0;a<t;++a)i.push(po(e[a],r));i[Lu]=Bu}else{var u,o=Object.getOwnPropertyNames(e);if(0===o.length&&e.constructor!==Object)i=e;else if("0"===o[0]&&o[o.length-1]===(o.length-1).toString()&&"function"==typeof e.keys)i=e;else for(i=new Gu,u=0;u<o.length;++u)try{i[o[u]]=po(e[o[u]],r)}catch(e){}}return n[x]=i,n}function go(e){if(e===L)return Xe;if(null===e)return ze;if("object"!=typeof e||zu(e))return lo(e);for(var r=Object.getOwnPropertyNames(e),n=new Gu,t=0;t<r.length;++t)try{n[r[t]]=lo(e[r[t]])}catch(e){}return Ce(n)}function vo(e,r){if(e[0]===D){if(I(e[1])){var n,t=pe,i=tr[1];return function(){return n=so(arguments,!0),Kt(Le(Ma,Le(e,n)),"xcallback"),tr[1]=i,pe=t,ni(!0),P.hasOwnProperty("interrupted")&&P.interrupted(y),vo(qt)}}for(f=[];e[0]===D;)f.push(vo(e[1],r)),e=e[2];return f}if(e[0]===X)return e===Ge||e!==ue&&(e===Xe?L:e===ze?null:e[Y]);if(e[0]===z)return e[K];if(e[0]===G)return Bo(e[3]);if(e[0]===Z)return e[re];if(e[0]===Q){var a=e[x];if(!zu(a))return a;if(r){if(r.get(a))return r.get(a)}else r=new WeakMap;if(B(a)){var u,o=a.length,f=[];for(r.set(a,f),u=0;u<o;++u)f.push(vo(a[u],r))}else{var c,s=Object.getOwnPropertyNames(a);for(f={},r.set(a,f),c=0;c<s.length;++c)f[s[c]]=vo(a[s[c]],r)}}return f}function ho(e){if(e[0]===D)return e;if(e[0]!==Q)return ue;var r=e[x],n=zu(r);if(B(r))return so(r,!n);for(var t=Object.getOwnPropertyNames(r),i=ue,a=t.length-1;0<=a;--a)try{var u,o=t[a];o!==L&&r[o]!==L&&(u=r[o],n||(u=lo(u)),i=Le(Le(lo(o),u),i))}catch(e){}return i}function bo(e,r){function u(){var e=er[1],r=Xt;if(ni(!0),r!=Xt&&Ja(De(["internal","fiber suspended during array callback"]),ue),e!==er[1])throw _t}function n(e,r,n){var t,i=pe,a=tr[1];return function(){return t=Le(arguments[0],Le(lo(arguments[1]),Le(r,ue))),Kt(Le(Ma,Le(e,t)),"arrayfilter"),tr[1]=a,pe=i,u(),1===n?qt:(2===n&&(qt=E(A(qt))),vo(qt))}}function t(r){var n,t=pe,i=tr[1];return function(){var e=r?(n=so(arguments,!1),Kt(Le(Ma,Le(r,n)),"arraycompare"),tr[1]=i,pe=t,u(),vo(qt)):Uc(arguments[0],arguments[1]);return e}}function i(e,r,n){var t;if(r){if(r[0]!==G)return ue;null===(t=Bo(r[3],Number.MAX_SAFE_INTEGER))?t=n:(t<0&&(t=e-1+t),e<=t&&(t=e-1))}else t=n;return t}function a(e,r){var n="";r=r?vo(r):",";for(var t=0;t<e.length;++t){var i=vo(e[t]);0<t?n=n+r+i:n+=i}return lo(n)}if(e<2)return ue;var o=r(0),f=r(1);if(o[0]!==Q||f[0]===D||f[0]===Q&&zu(f))return ue;var c=o[3];if(!zu(c)||!B(c))return ue;for(var s,l,p=vo(f),g=[],v=0;v<e-2;++v)switch(p){case"every":case"filter":case"find":case"findIndex":case"forEach":case"some":0===v&&g.push(n(r(v+2),o,2));break;case"map":0===v&&g.push(n(r(v+2),o,1));break;case"indexOf":case"join":case"lastIndexOf":case"push":case"unshift":g.push(r(v+2));break;case"concat":(l=r(v+2))[0]===Q&&B(l[3])?(zu(s=l[3])||(s=po(s,new WeakMap)[3]),g.push(s)):g.push([l]);break;case"copyWithin":case"slice":g.push(vo(r(v+2)));break;case"pop":case"reverse":case"shift":break;case"reduce":case"reduceRight":0===v?g.push(function(e,r){var n,t=pe,i=tr[1];return function(){return n=Le(arguments[0],Le(arguments[1],Le(lo(arguments[2]),Le(r,ue)))),Kt(Le(Ma,Le(e,n)),"arrayreduce"),tr[1]=i,pe=t,u(),qt}}(r(v+2),o)):1==v&&g.push(r(v+2));break;case"sort":0===v&&g.push(t(r(v+2)));break;case"fill":0===v?g.push(r(v+2)):g.push(vo(r(v+2)));break;case"splice":v<2?g.push(vo(r(v+2))):g.push(r(v+2));break;default:return ue}var d=!0;switch(p){case"find":d=!1;case"every":case"filter":case"findIndex":case"forEach":case"map":case"some":if(g.length<1)return ue;break;case"sort":0===g.length&&g.push(t());break;case"indexOf":return function(e,r,n){if((n=i(e.length,n,0))===ue)return ue;for(var t=n;t<e.length;++t)if(Gc(e[t],r)!=ue)return Fo(t);return Fo(-1)}(c,g[0],g[1]);case"join":return g.length<1?a(c,!1):a(c,g[0]);case"lastIndexOf":return function(e,r,n){if((n=i(e.length,n,e.length-1))===ue)return ue;for(var t=n;0<=t;--t)if(Gc(e[t],r)!=ue)return Fo(t);return Fo(-1)}(c,g[0],g[1]);case"pop":case"shift":d=!1;break;case"reduce":case"reduceRight":if(d=!1,g.length<1)return ue;if(g.length<2){if(c.length<1)return ue;g.push(c[0]),c=c.slice(1)}break;case"toString":return ds(o,ue);case"push":case"unshift":case"concat":case"copyWithin":case"reverse":case"slice":case"fill":case"splice":break;default:return Ja(De(["internal",'$arrayCall "'+p+'": not defined']),ue)}try{$t=1,yt=Zr;var h=Array.prototype[p],b=ue;return h!==L&&(b=h.apply(c,g),!d&&B(b)||(b=b===c?o:B(b)?(b[Lu]=Bu,Ce(b)):lo(b))),$t=-1,b}catch(e){if(e===_t)throw e;return $t=-1,Ja(De(["internal",'$arrayCall "'+p+'": '+e.toString()]),ue)}}function yo(e,r){if(e[0]!==Q)return ue;var n,e=e[x];if(r[0]===X)n=r[Y];else{if(r[0]!==z)return ue;n=r[K]}return E(e.hasOwnProperty(n))}function mo(e){if(e[0]===k)return rc(e);if(e[0]!==Q)return ue;e=e[x];return B(e)?ue:so(Object.getOwnPropertyNames(e),!0)}function ko(e,r){for(var n=[{}],t=0;t<e;++t){var i=r(t);if(i[0]!==Q||B(i[x])){if(i[0]===D){var a=Object.assign.apply({},n);do{}while(delete a[vo(i[1])],(i=i[2])[0]===D);n=[a]}}else zu(i[x])?n.push(i[x]):n.push(go(i[x])[x])}return Zu(Object.assign.apply({},n))}function wo(e){return E(e[0]===Q&&!zu(e[3]))}function xo(e,r){if(r===ue&&(r=le),e[0]!==Q||r[0]!==k)return ue;if(pe!==ce){if(e[H]!==ue)return e[H]==r?e:ue;if(r!==le&&r!==pe&&r!==fe[0])return Ja(De(["internal","$can't lock "+js(e)+" to "+de(r)]),ue),ue}return e[H]=r,e}function Oo(e,r){if(e[0]!==Q)return ue;var n=e[3];if(n instanceof WeakMap&&r[0]!==z&&r[0]!==G&&r[0]!==Z){e=n.get(r);return e===L&&(e=ue),$(e)}if(r[0]===D||r[0]===Q&&zu(r))return ue;var t=vo(r);try{return zu(n)||n instanceof WeakMap?B(n)&&"length"==t?lo(n.length):n.hasOwnProperty(t)?$(n[t]):ue:lo(n[t])}catch(e){return Ja(De(["internal",'$xget "'+t+'": '+e.toString()]),ue)}}function So(e,r,n){if(e[0]!==Q)return ue;var t=e[3];if(t instanceof WeakMap&&r[0]!==z&&r[0]!==G&&r[0]!==Z)return Xr(e,!0)?(n===Xe?t.delete(r):t.set(r,n),n):vt;if(r[0]===D||r[0]===Q&&zu(r))return ue;if(!Xr(e,!0))return vt;var i=vo(r);try{if($t=1,yt=Zr,n===Xe)delete t[i];else if(zu(t)||t instanceof WeakMap)if(B(t))if("length"==i)t.length=vo(n);else{var a,u=parseInt(i);if(u!=u+"")return $t=-1,Ja(De(["internal","$non-numeric array index"]),ue);for(t[i]=n,a=0;a<i;++a)t[a]===L&&(t[a]=ue)}else t[i]=n;else t[i]=vo(n);return $t=-1,n}catch(e){return $t=-1,Ja(De(["internal",'$xset "'+i+'": '+e.toString()]),ue)}}function No(e,r){return e<2?ue:jo(r(0),r(1),e-2,2,r)}function jo(e,r,n,t,i){if(r[0]===D||r[0]===Q&&zu(r[3]))return ue;var a=vo(r),u=null;if(e&&e[0]===Q){if(zu(u=e[3]))return ue;if(u instanceof WeakMap)return ue}for(var o,f=ue,c=u===Number||u===String||u===Boolean,s=[],l=0;l<n;++l)s[l]=vo(i(l+t));try{return $t=1,yt=Zr,r[0]===Q?f=lo(r[3].apply(u,s)):(!u||u.prototype!==L&&(o=u.prototype[a])!==L||(c=!1,o=u[a]),o!==L&&(f=lo(c?o.apply(s[0],s.slice(1)):o.apply(u,s)))),$t=-1,f}catch(e){return $t=-1,Ja(De(["internal",'$xcall "'+a+'": '+e.toString()]),ue)}}function To(e,r,n){if(e[0]!==Q||r[0]===D||r[0]===Q&&zu(r))return ue;var t=n===ue?[]:vo(n);if(!B(t))return ue;var i=vo(r),a=null;if(e[0]===Q){if(zu(a=e[3])){if(a.hasOwnProperty(i)){e=a[i];if(B(e))return Ia(e,n)}return ue}if(a instanceof WeakMap)return ue}var u,o=ue,f=a===Number||a===String||a===Boolean;try{return $t=1,yt=Zr,r[0]===Q?o=lo(r[3].apply(a,t)):(a.prototype!==L&&(u=a.prototype[i])!==L||(f=!1,u=a[i]),u!==L&&(o=lo(f?u.apply(t[0],t.slice(1)):u.apply(a,t)))),$t=-1,o}catch(e){return $t=-1,Ja(De(["internal",'$xapply "'+i+'": '+e.toString()]),ue)}}function Po(e,r){return Eo(),0<e?Ao(r(0),e-1,1,r):Ao(L,0,0,r)}function Ao(e,r,n,t){var i;if(e===L)return(i=lo({}))[w]=go({persist:!0}),i;if(e[0]===z||e[0]===X)return lo(l[Fe(e)]);if(e[0]===G)return Ce(s.bigInt2uint8(e[ee]));if(e[0]===D)return Ce(vo(e));if(e[0]!==Q)return ue;var a,u=e[3];if(zu(u))return lo(vo(e));if(u===WeakMap)return ue;try{if("function"==typeof u){for(var o=[null],f=0;f<r;++f)o.push(vo(t(f+n)));$t=1,yt=Zr;var c=new(Function.prototype.bind.apply(u,o));return $t=-1,Ce(c)}if(1<r)return ue;c=t(n);return $t=1,yt=Zr,i=0===r?("object"==typeof(a=Object.create(u))?Ce:lo)(a):c[0]!==Q?ue:("object"==typeof(a=Object.create(u,c[3]))?Ce:lo)(a),$t=-1,i}catch(e){return $t=-1,Ja(De(["internal","$xnew: "+e.toString()]),ue)}}function Io(){return Eo(),Ge}function Eo(){0===It&&(At=Pt,It=St,Pt=0,Pr[1]=Ge)}function $o(){St<It&&(Et||(Pt=At),It=0,Pr[1]=E(0==Pt))}function Mo(e){return $t<0?($t=0,Ge):($t=1,pi())}function qo(){$t=-1}function _o(){return Mo()}function Ro(e,r){var n=new Array(o);return n[0]=G,(n[1]=n)[2]=r,n[3]=e,n}function Fo(e,r){return"number"!=typeof e||isNaN(e)?ue:(r=r||ue,Ro(Co(e),r))}function Wo(e){var r=new Array(c);return r[0]=Z,(r[1]=r)[2]=ue,r[3]=e,r}function Co(e){var r=Math.abs(e);"number"==typeof r&&!isNaN(r)||(r=0);r=s.int2bigInt(r,a,1);return e<0&&(r=s.negate(r)),s.trim(r,1)}function Lo(e,r){var n=s.int2bigInt(r,64,1),t=1;return s.negative(e)&&(e=s.negate(e),t=-1),s.greater(e,n)?null:t*s.modInt(e,r+1)}function Bo(e){var r=s.negative(e);r&&(e=s.negate(e));var n,t=s.bitSize(e);return e=a<t?Number.POSITIVE_INFINITY:i<t?(n=s.rightShift(e,t-i),s.modInt(n,Number.MAX_VALUE)*Math.pow(2,t-i)):s.modInt(e,Number.MAX_SAFE_INTEGER+1),r?-e:e}function Do(e,r){if(e[0]===G)return Lo(e[3],r);if(e[0]===Z){e=e[3];if(-r<=e&&e<=r)return e}return null}function Xo(e){if(s.bitSize(e)<=i)return Bo(e);var r="";return s.negative(e)&&(e=s.negate(e),r="-"),r+s.bigInt2str(e,10)}function zo(e){if("string"!=typeof e)return Co(e);e="-"==e.charAt(0)?s.negate(s.str2bigInt(e.substring(1),10,1)):s.str2bigInt(e,10,1);return e}function Go(e,r,n,t){return e[0]===G?Ro(s.negate(e[3]),ue):e[0]===Z?Wo(-e[3]):e[0]===Q&&e[3]instanceof Ju?di(e,".negate"):vi(Pe(t[2][1],"extendNegate"))}function Zo(e,r){return e[0]===G&&r[0]===G?Ro(s.add(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]+r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])+r[3]):e[0]===Z&&r[0]===G?Wo(e[3]+Bo(r[3])):ue}function Jo(e,r,n){var t;if(2==e&&(t=Zo(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".plus")}return vi(Pe(n[2][1],"extend+"))}function Vo(e,r){return e[0]===G&&r[0]===G?Ro(s.sub(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]-r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])-r[3]):e[0]===Z&&r[0]===G?Wo(e[3]-Bo(r[3])):ue}function Qo(e,r,n){var t;if(2==e&&(t=Vo(r(0),r(1)))!==ue)return t;if(1==e)return Go(r(0),null,null,n);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".difference")}return vi(Pe(n[2][1],"extend-"))}function Uo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]*r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])*r[3]):e[0]===Z&&r[0]===G?Wo(e[3]*Bo(r[3])):ue;var n=e[3],t=r[3],i=s.negative(n),e=s.negative(t);return i&&(n=s.negate(n)),e&&(t=s.negate(t)),n=s.greater(n,r[3])?s.mult(n,t):s.mult(t,n),i!=e&&(n=s.negate(n)),Ro(n,ue)}function Ho(e,r,n){var t;if(2==e&&(t=Uo(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".times")}return vi(Pe(n[2][1],"extend*"))}function Yo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]/r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])/r[3]):e[0]===Z&&r[0]===G?Wo(e[3]/Bo(r[3])):ue;if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var n=e[3],t=r[3],i=s.negative(n),a=s.negative(t);i&&(n=s.negate(n)),a&&(t=s.negate(t));var u=s.dup(n),e=s.dup(n),r=a;return s.divide_(n,t,u,e),i&&(r=!a,s.isZero(e)||(u=s.addInt(u,1),e=s.sub(t,e))),r&&(u=s.negate(u)),Ro(s.trim(u,1),ue)}function Ko(e,r,n,t){var i;return(i=Yo(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".quotient"):r[0]===Q&&r[3]instanceof Ju?di(r,".quotient"):vi(Pe(t[2][1],"extend/"))}function ef(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]%r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])%r[3]):e[0]===Z&&r[0]===G?Wo(e[3]%Bo(r[3])):ue;if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var n=e[3],t=r[3],i=s.negative(n),e=s.negative(t);i&&(n=s.negate(n)),e&&(t=s.negate(t));r=s.dup(n),e=s.dup(n);return s.divide_(n,t,r,e),i&&(s.isZero(e)||(e=s.sub(t,e))),Ro(s.trim(e,1),ue)}function rf(e,r,n,t){var i;return(i=ef(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".modulo"):r[0]===Q&&r[3]instanceof Ju?di(r,".modulo"):vi(Pe(t[2][1],"extendMod"))}function nf(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Q&&e[3]instanceof Ju?di(e,".divide"):r[0]===Q&&r[3]instanceof Ju?di(r,".divide"):vi(Pe(t[2][1],"extendDivide"));if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var i=e[3],a=r[3],u=s.negative(i),t=s.negative(a);u&&(i=s.negate(i)),t&&(a=s.negate(a));e=s.dup(i),r=s.dup(i);return s.divide_(i,a,e,r),u&&(s.isZero(r)||(e=s.addInt(e,1),r=s.sub(a,r))),Le(Ro(s.trim(e,1),ue),Ro(s.trim(r,1),ue))}function tf(e,r,n,t){return e[0]===G?Ro(s.not(e[3]),ue):e[0]===Z?Wo(~e[3]):e[0]===Q&&e[3]instanceof Ju?di(e,".bitnot"):vi(Pe(t[2][1],"extendBitNot"))}function af(e,r){return e[0]===G&&r[0]===G?Ro(s.and(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]&r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])&r[3]):e[0]===Z&&r[0]===G?Wo(e[3]&Bo(r[3])):ue}function uf(e,r,n){var t;if(2==e&&(t=af(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitand")}return vi(Pe(n[2][1],"extendBitAnd"))}function of(e,r){return e[0]===G&&r[0]===G?Ro(s.or(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]|r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])|r[3]):e[0]===Z&&r[0]===G?Wo(e[3]|Bo(r[3])):ue}function ff(e,r,n){var t;if(2==e&&(t=of(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitor")}return vi(Pe(n[2][1],"extendBitOr"))}function cf(e,r){return e[0]===G&&r[0]===G?Ro(s.xor(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]^r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])^r[3]):e[0]===Z&&r[0]===G?Wo(e[3]^Bo(r[3])):ue}function sf(e,r,n){var t;if(2==e&&(t=cf(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitxor")}return vi(Pe(n[2][1],"extendBitXor"))}function lf(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]<<r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])<<r[3]):e[0]===Z&&r[0]===G?Wo(e[3]<<Bo(r[3])):ue;r=Bo(r[3]);if(r<0)r=0;else if(n<r)return Ja(De(["internal","shiftleft > ".concat(n)]),ue);return Ro(s.leftShift(e[3],r),ue)}function pf(e,r,n,t){var i;return(i=lf(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".shiftleft"):r[0]===Q&&r[3]instanceof Ju?di(r,".shiftleft"):vi(Pe(t[2][1],"extendShiftLeft"))}function gf(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]>>r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])>>r[3]):e[0]===Z&&r[0]===G?Wo(e[3]>>Bo(r[3])):ue;r=Bo(r[3]);return r<0&&(r=0),Ro(s.rightShift(e[3],r),ue)}function vf(e,r,n,t){var i;return(i=gf(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".shiftright"):r[0]===Q&&r[3]instanceof Ju?di(r,".shiftright"):vi(Pe(t[2][1],"extendShiftRight"))}function df(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?E(e[3]>r[3]):e[0]===G&&r[0]===Z?E(Bo(e[3])>r[3]):e[0]===Z&&r[0]===G?E(e[3]>Bo(r[3])):e[0]===z&&r[0]===z?E(e[K]>r[K]):e[0]===Q&&e[3]instanceof Ju?di(e,".greater"):r[0]===Q&&r[3]instanceof Ju?di(r,".greater"):t?vi(Pe(t[2][1],"extend>")):ue;if(s.equals(e[3],r[3]))return ue;if(s.negative(e[3])){if(!s.negative(r[3]))return ue;var i=s.negate(e[3]),t=s.negate(r[3]),i=s.greater(t,i)}else{if(s.negative(r[3]))return Ge;i=s.greater(e[3],r[3])}return E(i)}function hf(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?E(e[3]<r[3]):e[0]===G&&r[0]===Z?E(Bo(e[3])<r[3]):e[0]===Z&&r[0]===G?E(e[3]<Bo(r[3])):e[0]===z&&r[0]===z?E(e[K]<r[K]):e[0]===Q&&e[3]instanceof Ju?di(e,".lesser"):r[0]===Q&&r[3]instanceof Ju?di(r,".lesser"):t?vi(Pe(t[2][1],"extend<")):ue;if(s.equals(e[3],r[3]))return ue;if(s.negative(e[3])){if(!s.negative(r[3]))return Ge;var i=s.negate(e[3]),t=s.negate(r[3]),i=s.greater(t,i)}else{if(s.negative(r[3]))return ue;i=s.greater(e[3],r[3])}return E(!i)}function bf(e,r,n,t){return e[0]===Z?e:e[0]===G?Wo(Bo(e[3])):e[0]===z?Wo(parseFloat(e[3])):e[0]===Q&&"number"==typeof e[x]?Wo(e[x]):e[0]===Q&&e[3]instanceof Ju?di(e,".tofloat"):vi(Pe(t[2][1],"extendTofloat"))}function yf(e){return null!==(e=Do(e,36))&&2<=e?e:-1}function mf(e,r){if(e[0]===Z)return Fo(Math.floor(e[3]));if(e[0]===G)return Ro(e[x],ue);if(e[0]===z){if(0!==e[3].indexOf("0x"))return r===ue?Fo(parseInt(e[3])):((n=yf(r[3]))<0&&(n=10),Fo(parseInt(e[3],n)));n=Fo(parseInt(e[3],16));return n[w]=go({hexcon:!0}),n}if(e[0]===Q){var n=e[x].valueOf();if("number"==typeof n)return isFinite(n)?Fo(n):ue;try{if(e[x]instanceof Uint8Array)return Ro(s.uint82bigInt(e[x]),ue)}catch(e){return ue}}return ue}function kf(e){return e[w]!==ue&&A(e[w][x].hexcon)}function wf(e){return e[1]}function xf(e){return e[1]}function Of(e){return e[2]}function Sf(e){return e[1][1]}function Nf(e){return e[2][1]}function jf(e){return e[1][2]}function Tf(e){return e[2][2]}function Pf(e){return e[1][1][1]}function Af(e){return e[2][1][1]}function If(e){return e[1][2][1]}function Ef(e){return e[2][2][1]}function $f(e){return e[1][1][2]}function Mf(e){return e[2][1][2]}function qf(e){return e[1][2][2]}function _f(e){return e[2][2][2]}function Rf(e){return e[1][1][1][1]}function Ff(e){return e[2][1][1][1]}function Wf(e){return e[1][2][1][1]}function Cf(e){return e[2][2][1][1]}function Lf(e){return e[1][1][2][1]}function Bf(e){return e[2][1][2][1]}function Df(e){return e[1][2][2][1]}function Xf(e){return e[2][2][2][1]}function zf(e){return e[1][1][1][2]}function Gf(e){return e[2][1][1][2]}function Zf(e){return e[1][2][1][2]}function Jf(e){return e[2][2][1][2]}function Vf(e){return e[1][1][2][2]}function Qf(e){return e[2][1][2][2]}function Uf(e){return e[1][2][2][2]}function Hf(e){return e[2][2][2][2]}function Yf(e,r){if(0===e)return ue;if(1==e)return Le(r(0),ue);for(var n=r(--e);0<=--e;)n=Le(r(e,r),n);return n}function Kf(e,r){if(0===e)return ue;for(var n=r(0);0<--e;)n=Le(r(e,r),n);return n}function ec(e,r){for(;e[0]===D;)r=Le(e[1],r),e=e[2];return r}function rc(e){var r,n;if(e[0]===k&&0<=(n=oe.indexOf(e)))r=oe[n][te];else{if(e!==ue)return ue;r=fe[0][te]}for(var t=ue,i=null,a=0;a<r.length;++a){var u=Le(r[a],ue);i?i[2]=u:t=u,i=u}return t}function nc(e,r){var n;r===ue&&(r=(n=e[2][1])===Ze?fe[0]:n!==ue?n[H]:ue);r=zr(e,r);return"string"==typeof r?Ja(De(["internal",r]),ue):Xr(r[2][1])?r:vt}function tc(e){function r(e){for(var r=-1;++r<zt;){var n=e[2][3][".parent"];if(!n)return[e,r];e=n}return[ue,r]}function n(e){var r=e[2][3][".base"];return r||e}if(e[0]!==X||e[3]===ue)return ue;var t,i;[t,i]=r(e=e[3][2][1]);var a=n(t);if(a===ue)return ue;for(var u=ye(e[Y]),o=ue,f=0;f<u.length;++f){var c,s,l=u[f];[c,s]=r(l),s==i&&n(c)===a&&(o=Le(l,o))}return o}function ic(e){var r=e[1];if(r[0]!==X||r[1][0]!==D)return ue;e=r[1][1];return r[1]=r[1][2],e}function ac(e,r){return Xr(e,!0)?(e[2]=r,e):vt}function uc(e){return Ar[1]=e}function oc(e,i){return function e(r){if(Gc(r,i)!==ue)return ue;for(var n,t=0;;){if(Gc(r,i)!==ue){t=-t,n=ue;break}if(r[0]!==D)return!1;if(n=e(r[1]))break;r=r[2],++t}return Le(Fo(t),n)}(e)||ue}eo.prototype=Object.create(Bu.prototype),eo.prototype.constructor=eo;var fc=100,cc=101,sc=102,lc=103,pc=104,gc=105,vc=106,dc=107,hc=108,bc=109,yc=110,mc=111;function kc(e,r){if(!e)return-1;for(var n=!1,t=0;t<e;++t){var i=r(t),a=i[0];if(a===Q&&zu(i[x])?a=B(i[x])?cc:i[x]instanceof Ju?lc:i[x]instanceof eo?pc:i[x]instanceof Qu?gc:i[x]instanceof WeakMap?vc:i[x]instanceof _s?dc:sc:a===D?a=I(i[1])?yc:mc:J<=a&&a<=V&&(a=bc),n){if(a!==n)if(n===G&&a===Z||n===Z&&a===G)n=fc;else if(n!==fc||n!==Z&&a!==G)if(n===X&&a===z||n===z&&a===X)n=hc;else if(n!==hc||n!==X&&a!==z){if(!(n===yc&&a===mc||a===mc&&a===yc))return-1;n=mc}else;else;}else n=a}return n}function wc(e,r){switch(kc(e,r)){case D:return vr;case X:return dr;case z:return mr;case G:return hr;case Z:return br;case J:case O:return gr;case V:return Qe;case Q:return Or;case k:return Sr;case fc:return yr;case cc:return kr;case sc:return wr;case lc:return xr;case pc:return Nr;case vc:return jr;case dc:return Tr;case bc:return gr;case mc:return vr}return ue}function xc(e){return E(e[0]===X&&e[Y]==Ze[Y])}function Oc(e,r,n){var t=kc(e,r);if(t===Z||t===G||t===fc)return Ge;for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".numeric")}return vi(Pe(n[2][1],"extendNumeric"))}function Sc(e,r){return E(kc(e,r)===G)}function Nc(e,r){return E(kc(e,r)===Z)}function jc(e){return e[0]===X&&e[H][te][e[H][ie][e[Y]]]===e?e:e[0]===z?je(e[K]):ue}function Tc(e){var r;if(e[0]===X)r=e[Y];else{if(e[0]!==z)return ue;r=e[K]}return Br(r)[U]}function Pc(e,r){return E(kc(e,r)===X)}function Ac(e,r){return E(kc(e,r)===z)}function Ic(e,r){r=kc(e,r);return E(r===X||r===z||r===hc)}function Ec(e,r){return E(kc(e,r)===bc)}function $c(e,r){return E(kc(e,r)===yc)}function Mc(e,r){return E(kc(e,r)===cc)}function qc(e){return E(e[0]===Q&&zu(e[3])&&B(e[3]))}function _c(e,r){return E(kc(e,r)===sc)}function Rc(e){return E(e[0]===Q&&e[3]instanceof Gu)}function Fc(e,r){return E(kc(e,r)===lc)}function Wc(e,r){r=kc(e,r);return E(r===D||r===yc||r===mc)}function Cc(e,r){if(0===e)return ue;for(var n=0;n<e;++n)if(r(n)[0]===D)return ue;return Ge}function Lc(e,r){return Cc(e,r)}function Bc(e){return e[0]===G?E(!s.negative(e[3])&&!s.isZero(e[3])):e[0]===Z?E(0<e[3]):ue}function Dc(e){return e[0]===G?E(s.negative(e[3])):e[0]===Z?E(e[3]<0):ue}function Xc(e){return e[0]===G?E(s.isZero(e[3])):e[0]===Z?E(0===e[3]):ue}function zc(e){if(e[0]===G)return E(0===s.modInt(e[3],2));if(e[0]!==Z)return ue;e=e[3]/2;return E(e==Math.floor(e))}function Gc(e,r,n,t){return e[0]===G&&r[0]===G?E(s.equals(e[3],r[3])):e[0]===Z&&r[0]===Z?E(e[3]===r[3]):e[0]===G&&r[0]===Z||e[0]===Z&&r[0]===G?e[0]===Q&&e[3]instanceof Ju?di(e,".eq"):r[0]===Q&&r[3]instanceof Ju?di(r,".eq"):vi(Pe(t[2][1],"extendEq")):e[0]===z&&r[0]===z||e[0]===Q&&r[0]===Q?E(e[3]===r[3]):E(e==r)}function Zc(e,r,n,t){return e[0]===X&&r[0]===X?e===r||e[Y]===r[Y]?Ge:ue:e[0]===G&&r[0]===Z?E(Bo(e[3])==r[3]):e[0]===Z&&r[0]===G?E(e[3]==Bo(r[3])):e[0]===J&&r[0]===J||e[0]===O&&r[0]===O||e[0]===V&&r[0]===V?E(e[ne]===r[ne]):Gc(e,r,n,t)}function Jc(e,r){for(;;){if(e[0]!==D)return(e[0]===Q&&zu(e[x])?oo:Zc)(e,r);if(r[0]!==D)return ue;if(Jc(e[1],r[1])===ue)return ue;e=e[2],r=r[2]}}function Vc(e,r){for(;;){if(r[0]!==D)return ue;if(Jc(e,r[1])===Ge)return r;r=r[2]}}function Qc(e,r){for(var n;;){if(r[0]!==D)return ue;if(Jc(e,r[1])===Ge)return r;if(r[1][0]===D&&(n=Qc(e,r[1]))!==ue)return n;r=r[2]}}function Uc(e,r){if(e===r)return 0;if(!A(r))return A(e)?-1:0;if(!A(e))return 1;if(!(e[0]!==Z&&e[0]!==G||r[0]!==Z&&r[0]!==G))return hf(e,r)===Ge?-1:df(e,r)===Ge?1:0;var n=!1;if(e[0]===r[0]&&(n=e[0]),n===X){if(e[Y]<r[Y])return-1;if(e[Y]>r[Y])return 1;var t=Ae(e),i=Ae(r);return 0<=t&&0<=i?t<i?-1:i<t?1:0:0<=t&&i<0?-1:t<0&&0<=i?1:0}if(n===z)return e[K]==r[K]?0:e[K]<r[K]?-1:1;if(n===k)return Uc(e[j],r[j]);if(n===D)for(;;){var a=Uc(e[1],r[1]);if(0!==a)return a;if(e=e[2],r=r[2],e[0]!==D)return r[0]!==D?0:-1;if(r[0]!==D)return 1}return e[0]<r[0]?-1:e[0]>r[0]?1:0}function Hc(e,r){return Fo(Uc(e,r))}function Yc(e,r){return makeBoolean(Uc(e,r)<0)}function Kc(e){return E(!A(e))}function es(e,r){if(e[0]===D){for(var n=e;n[0]===D;){if(n[S]!==ue&&!Xr(n[S]))return;n=n[N]}n=e;for(var t=r;n[0]===D;)t[0]!==D?n[S]!==ue&&(n[S][1]=t):(n[S]!==ue&&(n[S][1]=t[S]),t=t[N]),n=n[N]}else{if(!Xr(e))return;e[1]=r}return 1}function rs(e,r){return es(e,r)?r:vt}function ns(e,r,n,t){function i(e){if(e[0]===X&&(e=W(e[U])),e[0]===J)return e[ne];if(e[0]===O){if((e=e[ne])===Jo)return Zo;if(e===Qo)return Vo;if(e===Ho)return Uo;if(e===Ko)return Yo;if(e===rf)return ef;if(e===pf)return lf;if(e===vf)return gf;if(e===uf)return af;if(e===sf)return cf;if(e===ff)return of}return function(){return ue}}function a(e){return e[0]===Q&&e[3]instanceof Ju&&(wa(e,t!==ue?".preadjust":".postadjust",Le(e,Le(r,Le(n,ue)))),mt[kt++]=yt,1)}if(e[0]===D){var u,o=e[1],f=e[2][1];if(a(u=Oo(o,f)))return vt;f=So(o,f,i(r)(u,n))}else{if(e[0]!==X)return Ja(De(["internal","$invalid adjust target"]),ue);if(a(u=e[1]))return vt;f=rs(e,i(r)(u,n))}return t!==ue?f:u}function ts(e,r){e=e[2];return Rc(e)===ue?ue:Oo(e,r)}function is(e,r,n){if(!Xr(e,!0))return vt;var t=e[2];if(t===ue)e[2]=t=Xu(wr,ue);else if(Rc(t)===ue)return Ja(De(["internal","$invalid put annotation target"]),ue);return r===ue?ue:So(t,r,n)}function as(e,r,n){return Xr(e,!0)?r[0]!==X?ue:(n===ue&&(t=e[2]),e[2]=F(r[2],t),e):vt;var t}function us(e,r){return e[0]>=J&&e[0]<=V&&Zs()===ue?We(e[3].name):e[0]!==X?ue:r===Ge?W(e):e[3]}function os(e,r){if(e[0]!==X)return ue;if(!Xr(e))return vt;if(r[0]>=J&&r[0]<=V||r[0]===X)return e[3]=r;if(r[0]===D){var n=r[2][1][2];return e[2]!==n&&(e[2]=F(n)),e[3]=r}if(r[0]===z)try{var t=function(e,r,n){return eval(e)}(r[K],{j2n:lo,n2j:vo,nanu:Xu,pl:Ts,ns:e[H]},ue);if("function"!=typeof t)return We("compile: not a function");var i=[O,null,e,t];return i[1]=i,e[3]=i}catch(e){return Ou(yu,"compile: "+e.toString()),We(e)}return ue}function fs(e,r){if(r[0]!==X||e[0]!==X)return ue;if(!Xr(e))return vt;if(r[3][0]>=J&&r[3][0]<=V)return $e(e[Y],r[3][3],r[3][0]);if(r[3][0]!==D)return e[3]=r[3];var n=Oe(r[Y]),t=r[3][2][1];t[Y]===Ze[Y]&&(n[S]=Ze),n[H]=t[H];r=Le(r[3][1],Le(n,r[3][2][2]));return n[3]=r,e[3]=r}var cs=!1;function ss(e,r){return!cs&&yu<=ou&&(cs=!0,Ou(yu,"warning: moveproc() is deprecated in favor of copyproc()")),fs(r,e)}function ls(e){return e===ue?ce:e[0]===X||e[0]===Q?e[H]:e[0]===k?e[j]:ue}function ps(e){return e===ue?M(fe):e[0]===D?he(e):e[0]===X&&e===Ge?M(oe):ue}function gs(e,r){if(0===e)return pe;var n=r(0);if(1==e&&n[0]===k){var t=pe;return pe===ce&&(pe=n),t}for(var i=0;i<e;++i){var a=r(i);if(a[0]===k)n=a;else{if(a[0]!==X&&a[0]!==Q)return ue;if(!A(a))return ue;n=a[H]}if(n!==ue&&(n!=pe&&pe!==ce))return ue}return Ge}function vs(e,r){for(var n=[],t=0;t<e;++t)n.push(r(t));for(var i,a=ue,u=0;u<n.length;++u)(i=n[u])[0]===k?be(i):a=Le(i,a);return a}function ds(e,r){var n;Rc(r)===Ge&&(n=r[x]);e=We(js(e,n));return n&&A(n.noquote)&&(e[w]=go({noquote:!0})),e}function hs(e,r){for(var n="",t=0;t<e;++t)n+=js(r(t));return We(n)}function bs(e){var r;if(e[0]===X)r=e[Y];else{if(e[0]!==z){if(e[0]!==G)return ue;if(s.negative(e[3])||s.greater(e[3],s.int2bigInt(1114111,16,1)))return ue;var n=s.modInt(e[3],1114111);if(n<65536)r=String.fromCharCode(n);else try{r=String.fromCodePoint(n)}catch(e){return Ou(yu,"warning: couldn't fromCodePoint("+n+")"),ue}return We(r)}r=e[K]}try{return Fo(r.codePointAt(0),go({hexcon:!0}))}catch(e){return Ou(yu,"warning: couldn't codePointAt(\""+r.substring(0,1)+'")'),Fo(r.charCodeAt(0))}}function ys(e){var r;if(e[0]===X)r=Oe(e[Y]);else{if(e[0]!==z)return ue;r=Oe(e[K])}return r[H]=fe[0],r}function ms(e,r){var n,t;if(e[0]===z)t=e[K];else if(e[0]===X)t=e[Y];else{if(e[0]!==Q||!RegExp.prototype.isPrototypeOf(e[x]))return ue;t=e[x]}if(r===ue)n=fe;else if(r===Ge)n=oe;else{if(r[0]!==k)return ue;n=[r]}for(var i,a=[],u=0;u<n.length;++u){var o=n[u];if("string"==typeof t){if(o[ie].hasOwnProperty(t))return i=o[ie][t],o[te][i]}else if(e[0]===Q)for(i=0;i<o[te].length;++i){var f=o[te][i];t.test(f[Y])&&a.push(f)}}return M(a)}function ks(e){if(e[0]!==D)return e[0]===X?e[Y]:e[0]===z?e[K]:e[0]===G?Ls.IntToString(e[ee],kf(e)):"";for(var r="";e[0]===D;)r+=ks(e[1]),e=e[2];return r}function ws(e,r){for(var n="",t=0;t<e;++t)n+=ks(r(t));return Dr(n)}function xs(e){var r;if(e[0]===X)r=e[Y];else if(e[0]===z)r=e[K];else{if(e[0]!==G)return ue;r=Ls.IntToString(e[ee],kf(e))}var n,t=ue,i=null;if(0===r.length)return ue;for(n=0;n<r.length;++n){var a=Le(We(r.charAt(n)),ue);i?i[2]=a:t=a,i=a}return t}function Os(e){if(e===ue)return Fo(0);if(e[0]===X)return Fo(e[Y].length);if(e[0]===z)return Fo(e[K].length);if(e[0]===G||e[0]===Z)return Fo(js(e).length);if(e[0]===Q){var r=e[x];return zu(r)?B(r)?Fo(r.length):Fo(Object.getOwnPropertyNames(r).length):lo(e[x].length)}if(e[0]!==D)return Fo(js(e).length);for(var n=1;e[2][0]===D;)++n,e=e[2];return Fo(n)}var Ss=new b.NaanChannel(this),Ns=new b.NaanChannel(this);function js(e,r,n){var t;r&&r.radix&&(t=yf(r.radix))<2&&(t=L),n===L&&(n=Ls);var i="";if(e===L)return Xe[Y];if(null===e)return ze[Y];if(e[g]===D){if(e[N][0]!==D&&e[N]!==ue)i=n.ListToString([n.DottedPairToString(js(e[1],r,n),js(e[2],r,n))]);else{for(var a=e,u=[];a[g]===D;)a[N][0]!==D&&a[N]!==ue?u.push(n.DottedPairToString(js(a[1],r,n),js(a[2],r,n))):u.push(js(a[1],r,n)),a=a[N];i=n.ListToString(u)}return i}if(e[g]===X){var o=e[Y];if(r&&A(r.quote)&&(1!=o.length||p.indexOf(o)<0)){if(!A(r.nonamespace)){i=ke(e);if(i[0]===k)return o=n.QuoteSymbol(o),js(i[j],!1,n)+n.NSinfix+o}return n.QuoteSymbol(o)}return o}if(e[g]===z)return!r||!A(r.quote)||e[w]!==ue&&A(e[w][x].noquote)?e[K]:n.QuoteString(e[K]);if(e[g]===G)return n.IntToString(e[ee],kf(e),t);if(e[g]===Z)return n.FloatToString(e[re],t);if(e[g]>=J&&e[g]<=V){if(mu<=ou){var f=e[U]+"";return f.substring(9,f.indexOf("("))}f=Me(e[3]);return f?"[Builtin "+f+"]":e[2][0]===X?"[Compiled "+e[2][Y]+"]":"[Compiled Function]"}if(e[g]===Q){var c,s=e[x];if(zu(s)){if(B(s))return"Array["+s.length+"]";var l=Object.getOwnPropertyNames(s).length;if(s instanceof eo)return"Nonce{"+l+"}";if(s instanceof Qu)return"Continuation{"+l+"}";if(s instanceof _s)return"TextStream{"+l+"}";if(s instanceof WeakMap)return"WeakMap{}";if(e[3]instanceof Ju){f=ts(e,$r);return f!==ue?"{object "+f[3][2][1][Y]+"}":"Object{"+l+"}"}return"Dictionary{"+l+"}"}try{if("function"==typeof s)return""!==s.name&&s.name?"[Function "+s.name+"]":"[Function ()]";if(B(s))c=JSON.stringify(s).slice(1,-1);else if("["===(c=s.toString()).substring(0,1))return c;return"["+Object.prototype.toString.call(s).slice(8,-1)+" "+c+"]"}catch(e){l=s[Symbol.toStringTag];return l?"[object "+l+"]":"[private object]"}}else if(e[g]===k)return"Namespace<"+js(e[j],!1,n)+">";debugger;return"unknown: "+e}function Ts(e,r){return Ds[x].printline[3](e,r)}function Ps(e,r){return Ds[x].print[3](e,r)}function As(e,r){return Ds[x].printq[3](e,r)}function Is(e){return Ds[x].printloc[3](e)}function Es(e){return Ds[x].newline[3](e)}function $s(e){return Ds[x].spaces[3](e)}function Ms(e){return Ds[x].isbreak[3](e)}function qs(){return 0<Ns.TextAvail()&&P.hasOwnProperty("console-out")&&P["console-out"](y,Ns.TakeText()),Ge}function _s(e,r,n,t){var i,a,u=ue,o=ue,f=ue,c=ue,s=!1,l=!1;function p(e){if(i.EOF())return e!==ue?ue:Ja(De(["internal","$end-of-file"]),ue);if(c===ue)return pi();e=c;return c=ue,Ja(e)}function g(){if(f[0]===D){var e=f[1];return f=f[2],o=e,1}e=function(e){var r,n;e:for(;;){if(null===(n=e.ReadToken()))return null;switch(n.type){case e.kTTNewline:case e.kTTSymbol:s&&(r=s[n.token])!==L||(r=Dr(n.token));break e;case e.kTTInteger:r=Ro(n.token,ue);break e;case e.kTTHexInteger:r=Ro(n.token,go({hexcon:!0}));break e;case e.kTTString:r=We(n.token);break e;case e.kTTComment:case e.kTTCommentLine:var t=Zu();if(t[x].text=We(n.token),t[x].loc=Le(Fo(n.loc.line),Le(Fo(n.loc.column),ue)),u=Le(t,u),n.type!=e.kTTCommentLine)continue;r=Ne("\n");break e;case e.kTTFloat:r=Wo(parseFloat(n.token));break e}}return n.atom=r,n}(i);return null!==e&&((o=Zu())[x].atom=e.atom,o[x].loc=Le(Fo(e.loc.line),Le(Fo(e.loc.column),ue)),1)}function v(e,r){var n=e[x].atom;if(r[0]!==D)return r===mr?n[0]===z:r===dr?n[0]===X:Jc(n,r)===Ge;for(;;){if(r[0]!==D)return;if(r[1][0]===D)return;if(v(e,r[1]))return 1;r=r[2]}}function d(e,r){if(!Et&&a.Full())return pi();for(var n,t=ue,i=0;i<e;++i)n=js(t=r(i),!1,a),a.WriteString(n);return l&&qs(),t}function h(e){return f=Le(o,f),o=e}this.addtext=$e("addtext",function(e){return e[0]===z?(i.AddText(e[K]),i.SetEOF(),e):ue},J,!0)[U],this.comments=$e("comments",function(){var e=u;return u=ue,e},J,!0)[U],this.isbreak=$e("isbreak",function(e){return E(e[0]===X&&a.IsBreak(e[Y].substring(0,1)))},J,!0)[U],this.linelength=$e("linelength",function(){return 80},J,!0)[U],this.unbuffered=$e("unbuffered",function(e){l=e===Ge},J,!0)[U],this.newline=$e("newline",function(e){if(!Et&&a.Full())return pi();var r=1;if(e===ue||null!==(r=Do(e,255))&&0<=r){for(;0<r--;)a.WriteString("\n");return l&&qs(),Ge}return ue},J,!0)[U],this.spaces=$e("spaces",function(e){if(!Et&&a.Full())return pi();var r;if(null!==(r=Do(e,255))&&0<=r){for(var n=Er[1][Er[1][0]===X?Y:K];0<r--;)a.WriteString(n);l&&qs()}return Fo(a.Column())},J,!0)[U],this.printline=$e("printline",function(e,r){return r=d(e,r),a.WriteString("\n"),l&&qs(),r},O,!0)[U],this.print=$e("print",d,O,!0)[U],this.printloc=$e("printloc",function(e){return Le(Fo(a.Line()),Le(Fo(a.Column()),ue))},J,!0)[U],this.printq=$e("printq",function(e,r){if(!Et&&a.Full())return pi();for(var n,t=ue,i=0;i<e;++i)n=js(t=r(i),t!==Er[1]&&{quote:Ge},a),a.WriteString(n);return l&&qs(),t},O,!0)[U],this.radix=$e("radix",function(e){var r,n=Le(Fo(i.Radix()),Le(Fo(a.Radix()),ue));return e[0]===D&&(0<=(r=yf(e[1]))&&i.SetRadix(r),0<=(e=yf(e[2][1]))&&i.SetRadix(e)),n},J,!0)[U],this.readchar=$e("readchar",function(){var e=i.ReadChar();return null!==e?We(e):c===ue?i.EOF()?ue:pi():(e=c,c=ue,Ja(e))},J,!0)[U],this.readready=$e("readready",function(){return Fo(i.ReadReady())},J,!0)[U],this.reset=$e("reset",function(){i.Reset(),a.Reset()},J,!0)[U],this.setsymbols=$e("setsymbols",function(e){if(e===ue){if(s)return so(Object.values(s),s=!1)}else{if(e[0]!==D)return ue;for(var r={},n=e;n[0]===D;){if(n[1][0]!==X)return ue;r[n[1][Y]]=n[1],n=n[2]}s=r}return dr},J,!0)[U],this.taketext=$e("taketext",function(){return We(a.TakeText())},J,!0)[U],this.tokenread=$e("tokenread",function(e){return g()?o:p(e)},J,!0)[U],this.tokenlast=$e("tokenlast",function(e){return e===Ge&&(o=ue),o},J,!0)[U],this.tokenpush=$e("tokenpush",h,J,!0)[U],this.tokenmatch=$e("tokenmatch",function(e,r){var n=o;if(n[0]!==Q||!n[x].atom)return ue;if(Jc(n[x].atom,Ir[1])!==Ge)return v(n,e)?n:ue;for(var t=n;;){if(!g())return p(r);if((n=o)[0]!==Q||!n[x].atom)return ue;if(Jc(n[x].atom,Ir[1])!==Ge)break;t=n}return v(n,e)?n:(h(t),ue)},J,!0)[U],this.tokenpass=$e("tokenpass",function(e,r){for(var n=o;;){if(n!=ue&&!v(n,e))return n;if(!g())return p(r);n=o}},J,!0)[U],this.readex=$e("readex",function(e){return c=e},J,!0)[U],r===ue?i=Ss:B(r)?r[0]===z&&((i=new b.NaanChannel(y,t)).ScanReset(),i.SetText(r[K]),i.SetEOF()):i=r,n===ue?a=Ns:B(n)?n===mr&&(a=new b.NaanChannel(y)).SetWriteLimit(0):a=n,this.raw=Ce({read:i,write:a})}function Rs(e,r,n){var t=Ce(!1),n=new _s(t,e,r,n);return t[w]=ue,t[x]=n,t}function Fs(e,r){return e!==ue&&e[0]!==z||r!==ue&&r!==mr&&r[0]!==D?ue:(e[0]===z&&r[0]===D&&(n=Do(r[1],Number.MAX_SAFE_INTEGER),t=Do(r[2][1],Number.MAX_SAFE_INTEGER),r=ue,t={Line:n,Column:t}),Rs(e,r,t));var n,t}_s.prototype=Object.create(Bu.prototype),_s.prototype.constructor=_s;var Ws=Rs(Ss,Ns),Cs=Ss,Ls=Ns,Bs=Ws,Ds=Ws;function Xs(e){var r=Bs,n=Ds;if(r===Ws&&e!==Ge&&(r=ue),n===Ws&&e!==Ge&&(n=ue),e[0]===D){if(e[2][0]!==D)return ue;var t=e[1],e=e[2][1];if(t===ue)t=Ws;else if(t===Ge)t=Bs;else if(zs(t)!==Ge)return ue;if(e===ue)e=Ws;else if(e===Ge)e=Ds;else if(zs(e)!==Ge)return ue;Cs=(Bs=t)[x].raw[x].read,Ls=(Ds=e)[x].raw[x].write}return Le(r,Le(n,ue))}function zs(e){return E(e[0]===Q&&e[x]instanceof _s)}function Gs(){return Fo((new Date).getTime())}function Zs(){return/param/.test(function(e){})?ue:Ge}function Js(e,r){var n,t;if(e===ue)n=!1;else if(null===(n=Do(e,50))||n<0)return ue;if(r===ue)t=!1;else if(null===(t=Do(r,1e3))||t<10)return ue;return po(li(n,t),new WeakMap)}function Vs(e){return P.hasOwnProperty("edit-set-string")?(P["edit-set-string"](js(e)),e):ue}function Qs(e){return P.hasOwnProperty("edit-get-string")?We(P["edit-get-string"]()):ue}var Us=90,Hs=r+1,Ys=Us+1;function Ks(){var c=new Array(1),s=[];function l(e){var r;if(e===L)return Ys;if("object"!=typeof e)return e;var n,t,i=e[0];if(Hs<i)return Math.floor(i/Hs);if(i===Q&&!(zu(t=(n=e)[x])?!(t instanceof eo||t instanceof _s||t instanceof Qu):!!(n[w]!==ue&&A(n[w][x].persist)||t.constructor&&m.hasOwnProperty(t.constructor.name)||t.NaanPersist)))return Ys;var a=c.length+Us;s.push(e),e[0]=i+a*Hs;var u,o,f=Array(e.length);switch(c.push(f),(f[0]=i)===Q&&(r=function(e){var r,n,t=e[x],i=l(e[w]);if(zu(t))if(B(t)){for(var a=[],u=0;u<t.length;++u)a.push(l(t[u]));r={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]);r=e[3]instanceof Ju?{no:o}:{nd:o},e[2]!==ue&&(r.tag=l(e[2]))}else try{r=t instanceof RegExp?{tag:i,type:t.constructor.name,state:[t.source,t.flags]}:t.StateSave!==L?{tag:i,type:t.constructor.name,state:t.StateSave()}:{tag:i,type:t.constructor.name,object:t}}catch(e){r={type:t.constructor.name}}return e[H]&&e[H]!==ue&&(n=oe.indexOf(e[H]))<0&&(n=oe.length),0<=n&&(r.xns=n),r}(e)),i){case D:f[2]=l(e[2]),f[1]=l(e[1]);break;case X:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=l(e[3]),f[4]=oe.indexOf(e[4]).toString(),f[5]=e[5];break;case z:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=e[3];break;case Z:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=e[3].toString();break;case G:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=Xo(e[3]);break;case J:case O:case V:if(!(u=Me(e[3])))return c.pop(),e[0]=i,Ys;f[1]=l(e[1]),f[2]=l(e[2]),(o=Te(u,[ce,se]))[0]===X&&o[Y]===u?f[3]=l(o):f[3]=u;break;case Q:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=r;break;case k:f[1]=oe.indexOf(e).toString(),f.length=2;break;default:Ou(hu,"save-state warning: invalid element type "+i+" at "+a)}return a}for(var e,r=[],n=0;n<oe.length;++n){var t=n;t<=1&&(t=1-t),e=oe[t][te];for(var i=0,a=0;a<e.length;++a)!function(e,r){if("object"==typeof e&&e[0]==X){var n=c.length+Us;s.push(e),e[0]=X+n*Hs;n=Array(T);return c.push(n),n[0]=X,n[1]=e[1],n[2]=e[2],n[3]=e[3],n[4]=r.toString(),n[5]=e[5],1}}(e[a],t)||++i;r[t]=i,l(oe[t])}!function(){for(var e=1;e<c.length;++e){var r=c[e];r[0]===X&&(r[1]=l(r[1]),r[2]=l(r[2]),r[3]=l(r[3]))}}();var u=[];for(n=0;n<oe.length;++n){e=oe[n][te];var o=[];o.push(l(oe[n][j])),o.push(l(Fo(r[n]))),o.push(l(e[0])),u.push(o)}c[0]=u;var f=[l(pe)];for(n=0;n<fe.length;++n)f.push(l(fe[n]));var p,g=new Array(xt);for(g[0]=St,p=1;p<=xt;++p){var v=wt[p-1];"object"==typeof v?g[p]=l(v):"number"==typeof v?g[p]=-v:v===L?Ou(hu,"savestate: corrupt argstack"):g[p]=v}g[p++]=l(bt),g[p++]=l(ht),g[p++]=l(dt),g[p++]=l(vt),function(){for(var e=0;e<s.length;++e)s[e][0]%=Hs}();var d,h=new Array(kt);for(h[0]=yt,d=1;d<=kt;++d)h[d]=mt[d-1];var b=[];b[0]=g,b[1]=h,b[2]=Ot,b[3]=f,b[4]=ou;var y=new Array("Naan",900,12002,Ys);return new Array(y,c,b)}function el(e){var r,n,t,i,a,u,o,f=e[1],c=[],s=[];function l(e){if("number"!=typeof e)return B(e)?e.length===T?Ou(hu,"save-state warning: unexpected symbol "+e[Y]):Ou(hu,"save-state warning: unexpected element "+e[0]):Ou(hu,"save-state warning: invalid item encountered"),Ys;var r,n=f[e-Us];switch(n[0]){case D:break;case z:case G:case Z:if(r=n[0].toString()+"/"+n[2].toString()+"/"+n[3],s.hasOwnProperty(r))return s[r];s[r]=e,n[0]+=Hs;case D+Hs:case z+Hs:case G+Hs:case Z+Hs:default:return e}var t=l(n[S]),i=l(n[N]),a=t+i/(f.length+Us+1);return c.hasOwnProperty(a)?c[a]:(c[a]=e,n[0]=D+Hs,n[S]=t,n[N]=i,e)}for(m=1;m<f.length;++m)switch((r=f[m])[0]){case D:case z:case G:case Z:r[1]=l(r[1]),r[2]=l(r[2]);break;case X:r[1]=l(r[1]),r[2]=l(r[2]),r[3]=l(r[3]);break;case J:case O:case V:r[1]=l(r[1]),r[2]=l(r[2]),"number"==typeof r[3]&&(r[3]=l(r[3]));break;case Q:if(r[1]=l(r[1]),r[2]=l(r[2]),r[3].na!==L)for(i=r[3].na,n=0;n<i.length;++n)i[n]=l(i[n]);else if(r[3].nd!==L||r[3].no!==L){for(a=r[3].nd||r[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=l(a[u[t]]);r[3].tag&&(r[3].tag=l(r[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=e[2][0],h=1;h<d.length;++h)d[h]>Us&&(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 G:case Z:++y;break;default:b[m+Us]=m+Us-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]>Us&&(d[h]=b[d[h]]);for(var k=e[2][3],w=0;w<k.length;++w)k[w]>Us&&(k[w]=b[k[w]]);var x=new Array(1);for(m=1;m<f.length;++m){switch((r=f[m])[0]){case D:case z:case G:case Z:continue;case D+Hs:case z+Hs:case G+Hs:case Z+Hs:r[0]-=Hs,r[1]=b[r[1]],r[2]=b[r[2]];break;case X:r[1]=b[r[1]],r[2]=b[r[2]],r[3]=b[r[3]];break;case J:case O:case V:r[1]=b[r[1]],r[2]=b[r[2]],"number"==typeof r[3]&&(r[3]=b[r[3]]);break;case Q:if(r[1]=b[r[1]],r[2]=b[r[2]],r[3].na!==L)for(i=r[3].na,n=0;n<i.length;++n)i[n]=b[i[n]];else if(r[3].nd!==L||r[3].no!==L){for(a=r[3].nd||r[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=b[a[u[t]]];r[3].tag&&(r[3].tag=b[r[3].tag])}}x.push(r)}return x[0]=g,e[1]=x,e}function rl(e){var r,n=e[1];function t(e,r){e+=Us;return r-e<=Us&&(-9<=r-e||999<r&&-99<=r-e)?r-e:r}for(r=1;r<n.length;++r){var i=n[r];switch(i[0]){case D:case z:case G:case Z:i[1]=t(r,i[1]),i[2]=t(r,i[2]);break;case X:i[1]=t(r,i[1]),i[2]=t(r,i[2]),i[3]=t(r,i[3]);break;case J:case O:case V:i[1]=t(r,i[1]),i[2]=t(r,i[2]),"number"==typeof i[3]&&(i[3]=t(r,i[3]));break;case Q:i[1]=t(r,i[1]),i[2]=t(r,i[2])}}}function nl(e,r){function n(e){return r.QuoteString(e)}function t(e){return"$"==e.substring(0,1)&&(e="\\".concat(e)),n(e)}if(0===e.length)return"";r===L&&(r=Ls);for(var i,a,u,o,f="[",c=!1,s=0;s<e.length;++s)c&&(f+=","),"object"==typeof e[s]?((u=e[s])[0]===D?1===u[2]?f+=u[1]:u[2]===Ys?1!==u[1]?f+="["+u[1]+"]":f+="0":f+="["+u[1]+","+u[2]+"]":u[0]===X&&0===u[1]&&u[2]===Ys?(o=t(u[Y]),i==u[4]?u[3]===Ys?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]===Ys?f+=n("$"+u[K]):u[0]===Q?f+=JSON.stringify(u[x]):u[0]===k?f+=JSON.stringify({ns:u[1]}):f+=nl(e[s]),u[0]===X&&(i=u[4],a=u[3])):"string"==typeof e[s]?e[0]===X&&s===Y?f+=t(e[s]):e[0]===z&&s===K?f+=n("$"+e[s]):f+=n(e[s]):e[s]!==L&&(f+=e[s]),c=!0;return f+="]"}function tl(e){var r,n=e[0];if(!("Naan"!==n[0]||900<n[1])){var t=e[1],o=t[0],i=n[3],a=e[2],u=a[0],f=u[0],c=a[1],s=a[2],l=c[0],p=a[3],g=a[4];if(t!==L&&o!==L&&i!==L&&a!==L&&u!==L&&f!==L&&c!==L&&l!==L&&p!==L){for(var v=i-1,d=new Array(t.length),h=[],b=0;b<o.length;++b)h[b]=new Array(ae);for(w=1;w<t.length;++w)"object"==typeof(r=t[w])&&r.ns!==L?d[w]=h[r.ns]:d[w]=new Array(3);for(var y,m=h[1],k=1,w=1;w<t.length;++w)if("number"!=typeof(r=t[w]))if("string"!=typeof r){if("object"!=typeof r||0===r.length)return void Ou(hu,"loadstate: unexpected token: "+typeof r);if(B(r))if(1!=r.length)if(2!=r.length)if(3!=r.length){var x,O,S,N,j=r[0];for(d[w][0]=j,x=1;x<r.length;++x)if(O=r[x],j===X&&(x===U&&(k=W(O)),x===H&&(m=(m=h[parseInt(O)])||ue)),j===G&&x===ee)d[w][x]=zo(O);else if(j===Z&&x===re)d[w][x]=parseFloat(O);else if(J<=j&&j<=V&&x===ne)if((N="string"==typeof O?xe[O]:(N="string"==typeof(S=t[W(O)])?S:3<S.length?S[Y]:S[0],xe[C(N)]))===L){debugger;Ou(hu,"state-load warning: undefined builtin: "+O+"("+S+")"),d[w][x]=Pa}else d[w][x]=N;else d[w][x]=j===z&&x===K?O:j===X&&x===Y?C(O):j===X&&x===H?h[parseInt(O)]:d[W(O)]}else{if("string"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj3: "+typeof r[0]);d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],k=W(r[1]),d[w][3]=d[k],m=(m=h[parseInt(r[2])])||ue,d[w][4]=m,d[w][5]=C(r[0])}else if("string"==typeof r[0])d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],k=W(r[1]),d[w][3]=d[k],d[w][4]=m,d[w][5]=C(r[0]);else{if("number"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj2: "+typeof r[0]);d[w][0]=D,d[w][1]=d[W(r[0])],d[w][2]=d[W(r[1])]}else if("string"==typeof r[0])d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[++k],d[w][4]=m,d[w][5]=C(r[0]);else{if("number"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj1: "+typeof r[0]);d[w][0]=D,d[w][1]=d[W(r[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(r.na!==L){var T,P=[];for(P[Lu]=Bu,T=0;T<r.na.length;++T)P.push(d[W(r.na[T])]);d[w][3]=P,0<=r.xns&&!(d[w][4]=h[r.xns])&&(d[w][4]=le)}else if(r.nd!==L||r.no!==L){for(var A=new(r.nd?Gu:Ju),I=r.nd||r.no,E=Object.getOwnPropertyNames(I),$=0;$<E.length;++$)A[E[$]]=d[W(I[E[$]])];r.tag!==L&&(d[w][2]=d[W(r.tag)]),d[w][3]=A,0<=r.xns&&!(d[w][4]=h[r.xns])&&(d[w][4]=le)}else r.ns!==L||(y="undefined"!=typeof window?window:global,r.tag&&(d[w][2]=d[W(r.tag)]),r.type&&r.state!==L?d[w][3]=new(Function.prototype.bind.apply(y[r.type],[null].concat(r.state))):r.object!==L?r.type&&"Object"!==r.type&&y[r.type]!==L?d[w][3]=new y[r.type](r.object):d[w][3]=r.object:d[w][3]={})}catch(e){d[w][3]={}}}}else"$"==r.substring(0,1)?(d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=r.substring(1)):(d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[1],d[w][4]=m,d[w][5]=C(r));else d[w][0]=D,0===r?(d[w][1]=d[w+1],d[w][2]=d[1]):(d[w][1]=d[W(r)],d[w][2]=d[w+1]);var M,q=new Array(u.length),_=oe,R=fe,n=ce,e=se,a=le,i=pe;if(!function(){try{for(ge(),oe=[],fe=[],ce=h[0],se=h[1],b=0;b<o.length;++b){for(var e=o[b],r=d[e[0]-v],n=Lo(d[e[1]-v][3],99999),t=e[2]-v,i=ve(r,h[b]),a=0;a<n;++a){var u=d[t+a];(u[H]=i)[te].push(u),i[ie][u[Y]]=a}if(i[te].length!=n)return void Ou(hu,"loadstate: symbol table sync: "+r[K]+" "+i[te].length+" "+n)}return se[te].length<50||M<0||f<0||M<f?void Ou(hu,"loadstate: unqualified "+se[te].length):1}catch(e){return void Ou(hu,"loadstate failed: "+e.toString())}}())return oe=_,fe=R,ce=n,se=e,le=a,void(pe=i);for(fe=[ce,se],pe=ce,pl(),gl(),fe=[],b=1;b<p.length;++b)fe.push(d[p[b]-v]);for(pe=d[p[0]-v],M=1;M<u.length;++M){var F=u[M],F="number"==typeof F?F<=0?-F:d[F-v]:F;q[M-1]=F}return c.splice(0,1),yt=l,kt=(mt=c).length,xt=M-1,St=f,Ot=s,vt=(wt=q)[--xt],dt=wt[--xt],ht=wt[--xt],bt=wt[--xt],ou=g,1}Ou(hu,"cannot load malformed state")}function W(e){return e<=v?w+e:e-v}function C(e){return"\\$"===e.substring(0,2)?e.substring(1):e}}function il(e){var r,n=Te("SaveTrap",oe);if(n!==ue&&n[U]!==ue&&($t=-1,Kt(Le(n,ue),"savetrap"),ni(!0),qt!==Ge))return r;n=Ks();return e&&el(n),rl(n),r=nl(n)}function al(e){if(!tl(e))return ue;vl(),dl();e=Te("LoadTrap",oe);if(e===ue)return cl;e=Kt(Le(e,ue),"loadtrap");return mt[kt++]=yt,e}function ul(e){e=il(e!=ue);return"string"==typeof e?We(e):e}var ol=$e("save",ul,J);function fl(e){if(e[0]!==z)return ue;e=JSON.parse(e[K]);return e&&0!==e.length?al(e):ue}var cl=$e("load",fl,J),sl=[["global","`",wf,V],["global","deref",Ba,V],["global",".",Da,V],["global","quote",wf,V],["global","$",uc,J],["exec","and",_a,V],["exec","apply",Ia,J],["exec","break",Ha,J],["exec","call",Ea,V],["exec","catch",Ga,V],["exec","cond",Ca,V],["exec","continue",Ya,J],["exec","eval",Aa,J],["exec","lambda",xc,J],["exec","loop",Fa,V],["exec","or",Ra,V],["exec","return",Ua,O],["exec","throw",Ja,J],["exec","yield",au,J],["exec","resume",uu,J],["info","builtin",Ec,O],["info","procedure",$c,O],["info","eq",Gc,J],["info","equal",Jc,J],["info","length",Os,J],["info","not",Kc,J],["info","typeof",wc,O],["info","relate",Hc,J],["symbol","setq",Wa,V],["symbol","assign",rs,J],["symbol","compress",ws,O],["symbol","copyproc",fs,J],["symbol","copyann",as,J],["symbol","exists",ms,J],["symbol","get",ts,J],["symbol","getproc",us,J],["symbol","interned",jc,J],["symbol","defbinding",Tc,J],["symbol","moveproc",ss,J],["symbol","name",Ic,O],["symbol","ordered",Yc,J],["symbol","preadjust",Xa,V],["symbol","postadjust",za,V],["symbol","put",is,J],["symbol","putproc",os,J],["symbol","replacer",ac,J],["symbol","symbol",Pc,O],["symbol","unintern",ys,J],["tuple","atom",Cc,O],["tuple","car",xf,J],["tuple","cdr",Of,J],["tuple","caar",Sf,J],["tuple","cadr",Nf,J],["tuple","cdar",jf,J],["tuple","cddr",Tf,J],["tuple","caaar",Pf,J],["tuple","caadr",Af,J],["tuple","cadar",If,J],["tuple","caddr",Ef,J],["tuple","cdaar",$f,J],["tuple","cdadr",Mf,J],["tuple","cddar",qf,J],["tuple","cdddr",_f,J],["tuple","caaaar",Rf,J],["tuple","caaadr",Ff,J],["tuple","caadar",Wf,J],["tuple","caaddr",Cf,J],["tuple","cadaar",Lf,J],["tuple","cadadr",Bf,J],["tuple","caddar",Df,J],["tuple","cadddr",Xf,J],["tuple","cdaaar",zf,J],["tuple","cdaadr",Gf,J],["tuple","cdadar",Zf,J],["tuple","cdaddr",Jf,J],["tuple","cddaar",Vf,J],["tuple","cddadr",Qf,J],["tuple","cdddar",Uf,J],["tuple","cddddr",Hf,J],["tuple","cons",Yf,O],["tuple","insert",Kf,O],["tuple","empty",Lc,O],["tuple","first",xf,J],["tuple","ffirst",Sf,J],["tuple","fsecond",Af,J],["tuple","list",qa,V],["tuple","member",Vc,J],["tuple","within",Qc,J],["tuple","pop",ic,V],["tuple","push",La,V],["tuple","rest",Of,J],["tuple","reverse",ec,J],["tuple","rrest",Tf,J],["tuple","rrrest",_f,J],["tuple","second",Nf,J],["tuple","third",Ef,J],["tuple","totuple",ho,J],["tuple","tuple",Wc,O],["tuple","tuplepath",oc,J],["number","bitand",uf,O],["number","bitnot",tf,J],["number","bitor",ff,O],["number","bitxor",sf,O],["number","difference",Qo,O],["number","divide",nf,J],["number","even",zc,J],["number","float",Nc,O],["number","greater",df,J],["number","integer",Sc,O],["number","lesser",hf,J],["number","mod",rf,J],["number","negate",Go,J],["number","negative",Dc,J],["number","numeric",Oc,O],["number","plus",Jo,O],["number","positive",Bc,J],["number","quotient",Ko,J],["number","shiftleft",pf,J],["number","shiftright",vf,J],["number","times",Ho,O],["number","tofloat",bf,J],["number","toint",mf,J],["number","zero",Xc,J],["string","explode",xs,J],["string","strcat",hs,O],["string","string",Ac,O],["string","tostring",ds,J],["string","unicode",bs,J],["array","array",Mc,O],["array","arraycall",bo,O],["dictionary","dictionary",_c,O],["dictionary","set.",co,J],["dictionary","set[",co,J],["dictionary","merge",ko,O],["dictionary","keys",mo,J],["dictionary","defined",yo,J],["dictionary","object",Fc,O],["local","instances",tc,J],["local","delete",vs,O],["local","enclose",nc,J],["local","namespace",ls,J],["local","new",Xu,J],["local","nonce",no,J],["local","nsactive",ps,J],["local","nscaller",nu,J],["local","caller",ru,J],["local","nsrights",gs,O],["local","symlist",rc,J],["local","weakmap",uo,J],["host","editget",Qs,J],["host","editset",Vs,J],["host","future",to,J],["host","futures",io,J],["host","loadstate",fl,J],["host","milliseconds",Gs,J],["host","mangled",Zs,J],["host","runaverage",Js,J],["host","savestate",ul,J],["host","sprint",Io,J],["host","wait",_o,J],["stdio","textstream",zs,J],["stdio","textstreams",Xs,J],["stdio","isbreak",Ms,J],["stdio","newline",Es,J],["stdio","spaces",$s,J],["stdio","printline",Ts,O],["stdio","print",Ps,O],["stdio","printloc",Is,J],["stdio","printq",As,O],["stdio","printFlush",qs,J],["external","xapply",To,J],["external","xcall",No,O],["external","xget",Oo,J],["external","xdefined",yo,J],["external","xkeys",mo,J],["external","xlock",xo,J],["external","xnew",Po,O],["external","xobject",wo,J],["external","xset",So,J],["debug","breakpoint",Fu,O],["debug","debuglog",qu,O],["debug","jsdebugger",_u,O],["debug","loglevel",Ru,J],["debug","stacktrace",$u,J],["debug","stacktrap",Cu,J],["debug","symtrace",Mu,V]];function ll(e,r,n){var t=pr[S],i=t[x][e];i||(i=Zu(),xo(t[x][e]=i,ce)),i[x][r]||(i[x][r]=n)}function pl(){var e=pr[S];e!==ue&&e[0]===Q&&zu(e[x])||(xo(e=Zu(),ce),pr[S]=e);var r,n=je("App"),t=n[S];for(t!==ue&&t[0]===Q&&zu(t[x])||(t=Zu(),n[S]=t),r=0;r<sl.length;++r){var i=sl[r][0],a=sl[r][1],u=sl[r][2],o=sl[r][3],f=(sl[r][4],je(a));f!==ue&&f[U]!==ue||(f=$e(a,u,o)),we(a,se)||ll(i,a,f)}e[x].module||(e[x].module=Zu()),pr=je("Naan"),ar=je("deref"),ur=je("."),er=je("exception"),rr=je("escape"),ue=je("false"),ir=je("`"),nr=je("this"),tr=je("self"),Xe=je("undefined"),ze=je("null"),Ge=je("true"),Ze=je("lambda"),or=je("body"),_r=je("call"),cr=je("catch"),Ue=je("closure"),Je=je("function"),Ve=je("function&"),He=je("let"),Ye=je("let&"),fr=je("loop"),Qe=je("macro"),Ke=je("var"),gr=je("builtin"),lr=je("list"),vr=je("tuple"),dr=je("symbol"),hr=je("integer"),br=je("float"),yr=je("numeric"),mr=je("string"),kr=je("array"),Rr=je("arraycall"),wr=je("dictionary"),xr=je("object"),Sr=je("namespace"),Nr=je("nonce"),ol=je("save"),cl=je("load"),Ar=je("$"),jr=je("weakmap"),Pr=je("sprint"),Fr=je("xget"),Wr=je("xset"),Cr=je("xcall"),Lr=je("xapply"),Or=je("xobject"),Tr=je("textstream"),Er=je("space"),Ir=je("cr"),Wu=je("breakpoint"),sr=je("interrupt")}function gl(){function e(e,r){is(vr,We(e),je(r||e)[U])}function r(e,r){is(vr,We(e),r)}function n(e,r){is(dr,We(e),je(r||e)[U])}function t(e,r){is(mr,We(e),je(r||e)[U])}function i(e,r){is(hr,We(e),je(r||e)[U])}function a(e,r){is(br,We(e),je(r||e)[U])}function u(e,r){is(kr,We(e),je(r||e)[U])}function o(e,r){is(Sr,We(e),je(r||e)[U])}function f(e,r){is(Sr,We(e),r)}e("atom"),e("insert"),e("length"),e("reverse"),e("tostring"),e("tuple"),e("typeof"),r("member",$e("member",function(e,r){return Vc(r,e)},J,!0)),r("toarray",$e("toarray",function(e){return Xu(kr,e)},J,!0)),r("within",$e("within",function(e,r){return Qc(r,e)},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"),n("value","car"),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",$e("tostring",function(e){return e[0]===k?e[j]:ue},J,!0)),f("length",$e("length",function(e){var r;return e[0]===k&&0<=(r=oe.indexOf(e))?Fo(oe[r][te].length):ue},J,!0)),f("symbols",$e("symbols",function(e){if(e[0]===k&&0<=(r=oe.indexOf(e))){var r=oe[r][te].slice();return r[Lu]=Bu,Ce(r)}return ue},J,!0)),f("index",$e("index",function(e){var r;return e[0]===k&&0<=(r=oe.indexOf(e))?Xu(lo(oe[r][ie]),ue):ue},J,!0)),f("lookup",$e("lookup",function(e,r){var n,r=ks(r);if(e[0]===k&&0<=(n=oe.indexOf(e))){r=oe[n][ie][r],r=oe[n][te][r];if(r)return r}return ue},J,!0))}function vl(){for(var e in l)l.hasOwnProperty(e)&&Ie(e,lo(l[e]))}function dl(){P.hasOwnProperty("init-load")&&P["init-load"]()}Ht(),pl(),gl(),vl(),this.Process=function(e,r,n){try{return n=n||"false",0<e.length&&(qo(),Cs.SetText(e),r&&Ls.WriteString("\r")),ri()||(Ht(),Yt(De(["loop",["catch",[["driver",n]],[[["equal","exception","driver"]]],"false"]])),n="false"),It=0,ni(!1),ri()}catch(e){return Ou(hu,"Naan internal error (101): "+e.toString()),!1}},this.GetOutput=function(){return Ls.TakeText()},this.SetInput=function(e,r){Cs.WriteString(e),r&&Cs.SetEOF()},this.RunOutput=function(){try{return It=0,ni(!1),Ls.TakeText()}catch(e){return Ou(hu,"Naan internal error (102): "+e.toString()),null}},this.Run=function(){try{return It=0,ni(!1),ri()}catch(e){return Ou(hu,"Naan internal error (103): "+e.toString()),!1}},this.Escape=function(){try{return qo(),Cs.ScanReset(),Cs.SetText(""),Ls.TakeText(),Va(De(["internal","escape"])),!1}catch(e){return Ou(hu,"Naan internal error (104): "+e.toString()),null}},this.Banner=function(){return Ls.WriteString("\rWelcome to Naan v1.4.1+1\n"),!0},this.StateSave=function(e){e=il(e);return"string"==typeof e&&e},this.StateLoad=function(e){try{return al(JSON.parse(e))!==ue}catch(e){return Ou(hu,"Naan StateLoad failed: "+e.toString()),!1}},this.StateDefault=function(){return dl(),!0},this.On=function(e,r){P[e]=r},this.Signal=function(){qo()},this.Status=function(e,r){return li(e,r)},this._InheritNamespace=function(e){for(var r=fe,n=0;n<oe.length;++n){var t,i=oe[n];if(Fe(i[j])==e){fe.indexOf(i)<0&&(t=fe.shift(),fe.unshift(i),t&&fe.unshift(t));break}}return r},this._SetNamespace=function(e,r){var n,t=fe;return"string"==typeof e?he(Le(ve(We(e)),M(fe)),!0):B(e)?(n=fe[0],fe=e,!r&&fe.indexOf(n)<0&&fe.push(n)):Ou(hu,"_SetNamespace: invalid argument: "+e),t},this._AddNamedObject=function(e,r){if("string"!=typeof e||0===e.length||"object"!=typeof r)return!1;r=Ce(r);return Dr(e)[1]=r,!0},this._SetValue=function(e,r){if("string"!=typeof e||0===e.length)return!1;r=r===L?Dr(e):Ie(e,Be(r));return r!==ue},this._AddSymbolWithTarget=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("string"!=typeof r||0===r.length)return!1;var n=je(r);return n===ue&&(n=Dr(r)),Dr(e),Ie(e,n)!==ue},this._AddPropertyList=function(e,r){return"string"==typeof e&&0!==e.length&&("object"==typeof r&&qe(e,r)[Y])},this._SetBindingList=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("object"!=typeof r)return!1;r=Re(Be(r));return r!==ue&&(_e(e,r),!0)},this._CopyBinding=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("string"!=typeof r||0===r.length)return!1;e=je(e);return e!==ue&&(_e(r,e[U]),!0)},this._Execute=function(e){if("object"!=typeof e)return!1;var r=Be(e);if(r===ue)return!1;e=$t;$t=-1;r=vo(ei(r));return $t=e,r},this._Export=function(e,r){if(!pr)return!1;if("string"!=typeof r||0===r.length)return!1;var n=je(r);return n!==ue&&(ll(e,r,n),!0)},this._Import=function(e,r,n){if(!pr)return!1;if(r===L){var t=pr[S][x][e];if(t===L)return!1;for(var i=Object.getOwnPropertyNames(t[x]),a=0;a<i.length;++a)this._Import(e,i[a]);return!0}if("string"!=typeof r||0===r.length)return!1;if(n===L)n=r;else if("string"!=typeof n||0===n.length)return!1;var u,t=fe.indexOf(ce);0<=t&&fe.splice(t,1);try{u=pr[S][x][e][x][r]}catch(e){u=!1}return!!u&&(_e(n,u[U]),!0)}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
35
35
 
36
36
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
37
37
  !function(St){St.NaanChannel=function(t,e){"use strict";var r,s,o,a,u,n,c=t,i=new(St.LeemonBigIntegerLib?St:require("./bigint.js")).LeemonBigIntegerLib,h="",f=!1,d=0,l=!1,g=0,v=10,T=[],x=null,S=!1,b=[],k="\n!@^&*()+-={}[]|\\:;'<>?,./~`%",m="0123456789",C="0123456789abcdefghijklmnopqrstuvwxyz",O="bfnrt",L="\b\f\n\r\t",I=1e3,p=!1,w=new Array("::","++","--","~=","..",">>","<<","==","!=","<=",">=","%=","/.",".*","+=","-=","*=","/=","&=","|=","^=","||","&&","^^","**","@*","@=","@[","->","=>",";;",";>","$$",":=","$$$","===","!==","...","..<","<=>","<<=",">>=");function R(t){T.push(t),--d}e&&e.Line&&(g=e.Line),e&&e.Column&&(d=e.Column),this.Reset=function(){h="",l=f=!1,g=d=0,v=10,T=[],x=null,I=1e3,this.ScanReset()},this.SetHTML=function(t){p=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<=k.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=L.indexOf(e))){n+="\\"+O.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<=w.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<=k.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 m.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 I&&h.length>I},this.SetWriteLimit=function(t){I="number"==typeof t?t:1e3},this.WriteString=function(t){var e,n,i=0===h.length;if(p)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,S&&c.Signal(this)},this.AddText=function(t){f=!1,h+=t,S&&c.Signal(this)},this.ReadChar=function(){var t;if(0<T.length)++d,t=T.pop();else{if(S=0===h.length)return null;if(t=h.substring(0,1),h=h.substring(1),"\r"==t||"\n"==t){if("\r"==x&&"\n"==t)return x=t,this.ReadChar();d=0,l=!(t="\n"),++g}else!l&&t.trim()&&(l=d),++d}return x=t},this.UnreadChar=function(t){R(t)},this.ReadReady=function(){var t=h.length;return t+=T.length},this.LastChar=function(t){return T.slice(-1)[0]},this.Line=function(){return g},this.Column=function(){return d},this.CommentLoc=function(){return b};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=T,t.lastread=x,t.scanState=r,t.scanSkipQuote=s,t.token=o,t.codeString=a,t.nofloat=u,t.commentLoc=b,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,T=t.scanLast,x=t.lastread,r=sstate.scanState,s=t.scanSkipQuote,o=t.token,a=t.codeString,u=t.nofloat,b=t.commentLoc,n=t.tokenStart,!0)};var A=34,F=39,y=42,N=47,Q=92,$=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,tt=7,et=8,nt=9,it=10,rt=11,st=12,ot=13,at=14,ut=15,ct=16,ht=17,ft=18,dt=19,lt=20,gt=21,vt=22,Tt=23,xt=24;this.ScanReset=function(){r=G,a=o="",u=!(T=[])},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===o.length&&(n={line:g,column:d}),null===(e=this.ReadChar())&&0===o.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 $:case H:return u=!1,0<o.length?1:void 0;case B:return u=!1,0===o.length?o="\n":R(t),1;case N:return 0<o.length?(R(t),1):(r=K,void(o=t));case Q:return void(r=Z);case A:return r=nt,void(s=l);case F:return void(r=ot);case _:return o+=t,void(r=et);case D:if(u&&0===o.length)return o=t,void(r=xt)}return 0<=k.indexOf(t)?0===o.length?(o=t,void(r=J)):(R(t),1):(0===o.length&&0<=m.indexOf(t)&&(r=ht),void(o+=t));case K:if(i==N)return r=Y,o+=t,void(b=[g,d-2]);if(i==y)return r=V,o+=t,void(b=[g,d-2]);r=J;case J:return 0<=w.indexOf(o+t)?void(o+=t):(R(t),1);case V:return o+=t,void(i==y&&(r=X));case X:return(o+=t,i==N)?1:void(i!=y&&(r=V));case Y:return i==B?1:void(o+=t);case Z:return i==B?void(r=G):0<=(e=O.indexOf(t))?(o+=L.substring(e,e+1),void(r=G)):(o+=t,void(r=i==_?et:tt));case tt:if(i==Q)r=Z;else{if(0<=k.indexOf(t)||i==$||i==H||i==B)return R(t),r=G,1;o+=t,r=G}return;case et:return o+=t,void(r=0<=k.indexOf(t)?tt:G);case xt:if("0"==t)return r=G,R(t),1;if(0<=m.indexOf(t))r=ht;else{if(!(0<=w.indexOf(o+t)))return r=G,R(t),1;r=J}return void(o+=t);case nt:return i==Q?void(r=it):i==A||(0===d&&i===B||!(d<=s)||t.trim())&&void(o+=t);case it:return i==q?(r=rt,void(a="")):i==j?(r=st,void(a="")):(0<=(e=O.indexOf(t))?o+=L.substring(e,e+1):o+=t,void(r=nt));case rt:return void(2<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=nt));case st:return void(4<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=nt));case ot:return i==Q?void(r=at):i==F||void(o+=t);case at:return i==q?(r=ut,void(a="")):i==j?(r=ct,void(a="")):(0<=(e=O.indexOf(t))?o+=L.substring(e,e+1):o+=t,void(r=ot));case ut:return void(2<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=ot));case ct:return void(4<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=ot));case ht:if(m.indexOf(t)<0)if(i==W){if(u)return R(t),1;r=lt}else if(i==P||i==U)r=vt;else if(0<=(n=C.indexOf(t.toLowerCase()))&&n<v)r=ft;else{if("0"!=o||i!=M)return R(t),1;r=dt}return void(o+=t);case ft:return(n=C.indexOf(t.toLowerCase()))<0||v<=n?(R(t),1):void(o+=t);case dt:return(n=C.indexOf(t.toLowerCase()))<0||16<=n?(R(t),1):void(o+=t);case lt:return m.indexOf(t)<0?(r=ht,R(t),R("."),1):(o+=t,void(r=gt));case gt:if(m.indexOf(t)<0){if(i!=P&&i!=U)return R(t),1;r=vt}return void(o+=t);case vt:return(r=Tt,m.indexOf(t)<0&&i!=z&&i!=D)?(R(t),1):void(o+=t);case Tt:return m.indexOf(t)<0?(R(t),1):void(o+=t)}}(e)){switch(r){case J:case G:case K:u="."==o,t="\n"==o?this.kTTNewline:this.kTTSymbol;break;case ht:case ft:o=o.charCodeAt(0)==D?i.negate(i.str2bigInt(o.substring(1),v,1)):i.str2bigInt(o,v,1),t=this.kTTInteger;break;case dt:o=i.str2bigInt(o.substring(2),16,1),t=this.kTTHexInteger;break;case nt:case ot: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 lt:case gt:case vt:case Tt:t=this.kTTFloat;break;default:t=!1}r=G;var e={token:o,type:t,loc:n};return o="",e}}}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
38
38
 
39
39
  /* Copyright (c) 2017-2024 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._Import("number","mod","%"),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("#[",["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"],[["not",["||","ex1","ex2"]],0],[["||",["<","ex1","ex2"],["not","ex2"]],-1],[["||",[">","ex1","ex2"],["not","ex1"]],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("postpad",["function","postpad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat","value",[".","padstr","repeat",["length"]]],"slice",[0,"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("sleep",["closure","sleep",["msec"],["=","msec",["||","msec",0]],[".",["future",["function","sleep","false","true"],"msec"],"wait","false"]]),e._SetBindingList("await",["closure","await",["promise","false","pending"],[[["not","promise"],["throw",["list","internal",["strcat","$await on false promise"]]]]],["=","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",["numeric",[".","elements","length"]]],["return","false"]]],["=","results",{array:[]}],["=","pending",["new","nonce"]],["set.","pending",["`","active"],0],["set.","pending",["`","index"],0],["set.","pending",["`","running"],{array:[]}],["closure","processOne",["index","false","entry"],["preadjust",[".","pending","active"],"+",1],["set[",[".","pending","running"],"index","true"],["=","entry",["deref","elements","index"]],["function","cancel",["result"],["sprint"],["done","index","result"]],["future",["function","coProcess",["false","result"],["catch",[["=","result",["worker","entry","index","cancel"]]],"false",[["sprint"],["done","index","result"]]]],0]],["function","done",["index","result"],[[["deref",[".","pending","running"],"index"],["set[","results","index","result"],["preadjust",[".","pending","active"],"-",1],["set[",[".","pending","running"],"index","false"]]],["doMore"]],["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","constructor"],[["xobject","item","constructor"],["loop","false",[[["not","item"],"false",["break"]],[["eq","item",[".","constructor","prototype"]],["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","^","!","~","~=","`","#[","dereflist","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<","\\...","append","prepad","postpad","map","iterate","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect","RuntimeOperators","RuntimeLibInit"]]],["=","operlist",["`",["=","+","-","*","/","/.","%","<",">","&&","and","||","or","^","!","~","~=","`","#[","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<"]]],["=","runtimelib",["`",["dereflist","prepad","postpad","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"]]],[[["symbol","NideBuild"],["nsCopyproc",["`","="],"setq"],["nsCopyproc",["`","+"],"plus"],["nsCopyproc",["`","-"],"difference"],["nsCopyproc",["`","*"],"times"],["nsCopyproc",["`","/"],"quotient"],["nsCopyproc",["`","/."],"quotient"],["nsCopyproc",["`","%"],"mod"],["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"],["`","postpad"],"postpad"],["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"]]]],[[[".",[".",[".","module","exports"],"Registry"],"findName",["diname"]],"false"]],["=","newdialect",["initialize","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","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("recurParse",["function","recurParse",["text","sloc"],["call",["function&","recurParse1",["source","false","result"],["catch",[["=","result",["langParse1",["tokenread"],0]],[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[[["identity","true"],"false"]],"false"],"result"],["new","textstream","text","sloc"]]]),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","false","xproc","proc_parent","xloop","loop_parent","xbody","blocknest"],["global","langDebuglog"],["function","debugErrorCheck","args",[["identity","false"],["apply","langDebuglog","args"]]],["function&","inbody",["lbody","xbody","false","item","more"],[["atom","lbody"],"lbody"],["debugErrorCheck","$inbody:","lbody"],["=","xbody",{dictionary:{$live:"true"}}],["=","item",["car","lbody"]],["=","more",["cdr","lbody"]],[[["atom","item"],[["&&","more",["not",["member",[".",["caar","more"],"atom"],["`",["break","return"]]]]],["langSyntax","item","false",{dictionary:{$memo:"$ignored atom in body"}}]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]]],["inbodyitem","item"],["inbody","more","xbody"]],["function","inbodyitem",["expr","false","sym"],["debugErrorCheck","$inbodyitem:","expr"],[["not",[".","xbody","live"]],[[["not",[".","xbody","dead"]],["langSyntax","expr","false",{dictionary:{$memo:"$dead code"}}]]],["set.","xbody",["`","dead"],"true"],"false"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],["debugErrorCheck","$ineval:","expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["inevalist","expr"]],["function","inevalist",["expr"],["debugErrorCheck","$inevalist:","expr"],[["atom","expr"],"expr"],["ineval",["car","expr"]],["inevalist",["cdr","expr"]]],["function","inquote",["expr","inside","false","item"],["debugErrorCheck","$inquote:","expr","inside"],[["atom","expr"],"expr"],["=","item",["car","expr"]],[[["&&","inside",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inquote","item","true"],["inquote",["cdr","expr"],"inside"]],["function","inargs",["expr","proc","narg","false","item","quoted"],["debugErrorCheck","$inargs:","expr"],[["atom","expr"],"expr"],["=","item",["car","expr"]],["=","quoted",["quotedArg","proc","narg"]],[[["tuple","item"],[["identity","quoted"],["=","item",["inquote","item","true"]]],["=","item",["incall","item"]]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["not","quoted"],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inargs",["cdr","expr"],"proc",["+","narg",1]]],["function","inparms",["expr","false","parm","sym"],["debugErrorCheck","$inparms:","expr"],[["atom","expr"],["=","sym",[".","expr","atom"]],[["identity","sym"],[["not",["symbol","sym"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],["set[",[".","xproc","parameters"],"sym","expr"],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]]],["=","parm",["car","expr"]],["=","sym",[".","parm","atom"]],[[["||",["not",["symbol","sym"]],["&&",["not","sym"],["!==","sym","false"]]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],[["===","sym","false"],[[".","xproc","locals"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate `local"}}]],[["atom",["cdr","expr"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid `local"}}]],["set.","xproc",["`","locals"],{dictionary:{}}],["set.","xproc",["`","unused"],{dictionary:{}}]],[["deref",[".","xproc","parameters"],"sym"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate parameter"}}]],["set[",[".","xproc","parameters"],"sym","parm"],[[[".","xproc","locals"],["set[",[".","xproc","unused"],"sym","parm"],["set[",[".","xproc","locals"],"sym","parm"]]],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]],["inparms",["cdr","expr"]]],["function&","inloop",["pbody","loop_parent","false","blocknest","xloop"],["debugErrorCheck","$inloop:","pbody"],["=","xloop",{dictionary:{$tag:[".",["second","pbody"],"atom"]}}],[[["identity","loop_parent"],["set.","xloop",["`","parent"],"loop_parent"]]],["=","loop_parent","xloop"],["=","blocknest",0],["inbody",["cddr","pbody"]]],["function&","inproc",["fbind","proc_parent","false","blocknest","xproc","sym","item"],["debugErrorCheck","$inproc:","fbind"],["=","xproc",{dictionary:{$ftype:["car","fbind"],$fname:["second","fbind"],$parms:["third","fbind"],$body:["cdddr","fbind"],$procNames:{dictionary:{}},$parameters:{dictionary:{}},$undeclared:{dictionary:{}},$dynbind:["member",[".",["car","fbind"],"atom"],["`",["function&","let&"]]]}}],[[["identity","proc_parent"],["set.","xproc",["`","parent"],"proc_parent"],[[[".","proc_parent","globals"],["set.","xproc",["`","globals"],{dictionary:{}}]]],[[[".","proc_parent","root"],["set.","xproc",["`","root"],[".","proc_parent","root"]]],["set.","xproc",["`","root"],"proc_parent"]],[["&&",["!=",[".",[".","xproc","fname"],"atom"],["`","lambda"]],["deref",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"]]],["langSyntax",[".","xproc","fname"],"false",{dictionary:{$memo:"$duplicate procedure name"}}]],["set[",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"],[".","xproc","fname"]]]],["=","proc_parent","xproc"],["=","blocknest",0],["inparms",[".","xproc","parms"]],["inbody",[".","xproc","body"]],[[["not",[".","xproc","dynbind"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","unused"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],["langSyntax","item","false",{dictionary:{$memo:"$unused local variable"}}]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","undeclared"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],[[["not",["deref",[".","xproc","procNames"],"sym"]],[["&&",[".","xproc","parent"],[".","xproc","globals"]],["set[",[".",[".","xproc","parent"],"undeclared"],"sym","item"]],["langSyntax","item","false",{dictionary:{$memo:"$undeclared global"}}]]]]]]],["function","inconditem",["expr"],["debugErrorCheck","$inconditem:","expr"],[["atom","expr"],"expr"],["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]],["function&","incond",["expr","blocknest"],["debugErrorCheck","$incond:","expr"],["inconditem","expr"]],["function","incatch",["expr"],["debugErrorCheck","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["incond",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym","loopt","item"],["debugErrorCheck","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==",[".","sym","proc"],[".",["`","loop"],"proc"]],["inloop","expr","loop_parent"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr","proc_parent"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody",["cdr","expr"]]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["inquote","expr"]],[["==","sym",["`","global"]],[["not","xproc"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden outside of a procedure"}}]],[[".","xproc","dynbind"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden in function& and let&"}}]],[[["not",[".","xproc","globals"]],["set.","xproc",["`","globals"],{dictionary:{}}]]],["=","loopt",["cdr","expr"]],["while","false",[["not",["not",["empty","loopt"]]]],["=","item",["pop","loopt"]],[[["not",["symbol",[".","item","atom"]]],["langSyntax","item","false",{dictionary:{$memo:"$invalid global symbol"}}]],["set[",[".","xproc","globals"],[".","item","atom"],"item"]]]],[["||",["==","sym",["`","break"]],["==","sym",["`","continue"]]],["set.","xbody",["`","live"],"false"],[["not","xloop"],["langSyntax",["car","expr"],"false",{dictionary:{$memo:["strcat","sym","$ without loop"]}}]],["=","sym",[".",["cadr","expr"],"atom"]],[["identity","sym"],["=","loopt","xloop"],["while","false",[["not","loopt"]],[[["==","sym",[".","loopt","tag"]],["break"]]],["=","loopt",[".","loopt","parent"]]],[["not","loopt"],["langSyntax",["cadr","expr"],"false",{dictionary:{$memo:"$enclosing loop tag not found"}}]]]],[[["||",["==","sym",["`","return"]],["==","sym",["`","throw"]]],["set.","xbody",["`","live"],"false"]],[["&&",["not","sym"],["tuple",["car","expr"]]],["incall",["car","expr"]],["=","expr",["cdr","expr"]]]],["inargs",["cdr","expr"],["car","expr"],0]],["function","inwhen",["expr","false","nexpr"],["debugErrorCheck","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugErrorCheck","$in whenblock","blocknest"],["incall",["car","expr"]],["inblock","nexpr","blocknest"]],["incall",["car","expr"]],["inbody",["cdr","expr"]]],["function&","inblock",["expr","blocknest"],["debugErrorCheck","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["inbodyitem",["car","expr"]],["inbody",["cdr","expr"]]],["function","findLocalSymbol",["sym","start","false","proct"],[[["==","sym",["`","Dialect"]],["return","true"]]],[[["identity","start"],["=","proct","start"]],["=","proct","xproc"]],["while","false",[["not","proct"]],[[["deref",[".","proct","procNames"],"sym"],["break"]]],[[["deref",[".","proct","parameters"],"sym"],["set[",[".","proct","unused"],"sym","undefined"],["break"]]],[[["deref",[".","proct","globals"],"sym"],["break"]]],["=","proct",[".","proct","parent"]]],["not",["not","proct"]]],["function","quotedArg",["proc","narg"],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","."],"proc"]],["==","narg",1]],["return","true"]]],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","="],"proc"]],["==","narg",0]],["return","true"]]],"false"],["debugErrorCheck","$\n### langErrorCheck tree:","tree"],["=","blocknest",0],["ineval","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"]],["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"]]],[["deref",[".","lang","prefix"],[".","tokenlast","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$ambiguous newline (use \\ or ,)"}}]],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["tokenpush","nlToken"],"false"],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["=","ltoken",["passNewline"]],[["atDelimiter"],["langSyntax","ltoken","false",{dictionary:{$memo:"$incomplete expression"}}]],["=","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"],[[["string",[".","ltoken","atom"]],[[["tokenmatch","string"],["=","ltoken",{dictionary:{$atom:["strcat",[".","ltoken","atom"],[".","tokenlast","atom"]],$loc:[".","ltoken","loc"]}}],["tokenread"],["continue"]]],[[".","lang","string"],["=","ltoken",["eval",[".","lang","string"]]]]]],[[["and",["&&",["not",["string",[".","rtoken","atom"]]],["<","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","doval","false","inerrors","expr"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","lptFound","false"],["langPassSeparator"],["=","inerrors",[".","langErrors","length"]],["loop","false",[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"]],[[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$delimiter not found"}}],[["atTerminator"],["break"]]],[[["identity","doval"],["push",["langValueParse"],"expr"]],["push",["langParse1","tokenlast",0],"expr"]],[[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"],["break"]]],[["&&",["not",["langAtSeparator","delim"]],["==","inerrors",[".","langErrors","length"]]],["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","false","expr"]],[["tokenmatch","["],["tokenread"],["langBracketParse","false","false","expr"]],[["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("langTemplateStringParse",["function&","langTemplateStringParse",["strtoken","false","sloc","rxTS","terms","found","result","exlist","item","add"],[[["<",[".",[".","strtoken","atom"],"indexOf",[["`","\\${"]]],0],["return","strtoken"]]],["=","sloc",["langExprLoc","strtoken"]],["=","rxTS",["RegExp","$((?:[^$]|[$](?![{$])|[$]+[{][^}]*$)*)([$]+[{].*?[}])?","$g"]],["=","rxT",["RegExp","$[$]+[{](.*)[}]"]],["=","terms",{array:[]}],["loop","false",["=","found",[".","rxTS","exec",[[".","strtoken","atom"]]]],[["||",["not","found"],["==",[".","found",0],"$"]]],[[[".","found",1],[".","terms","push",[[".","found",1]]]]],[[[".","found",2],[".","terms","push",[[".","found",2]]]]]],["=","exlist",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","terms",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","found",[".","rxT","exec",["item"]]],[[[".","item","startsWith",["$$$"]],[".","exlist","push",[{dictionary:{$atom:[".","item","slice",[1]],$loc:"sloc"}}]]],[[".","found",1],[".","exlist","push",[["recurParse",[".",[".","found",1],"concat",["$;"]],["list",[".","sloc",0],["+",[".","sloc",1],2]]]]]],[[">",[".","item","length"],0],[".","exlist","push",[{dictionary:{$atom:"item",$loc:"sloc"}}]]]],["=","sloc",["list",[".","sloc",0],["+",[".","sloc",1],[".","item","length"]]]]]]],["langConsSym",["`","strcat"],"strtoken",[".","exlist","totuple"]]]),e._SetBindingList("langBraceParse",["function&","langBraceParse",["doeval","sloc","false","obj","expr","value","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","obj",{dictionary:{}}],["loop","false",["passNewline"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$}",$memo:"$delimiter not found"}}]],["=","expr","tokenlast"],[["deref","obj",[".","expr","atom"]],["langSyntax","expr","false",{dictionary:{$memo:"$duplicate key in dictionary",$found:[".","expr","atom"]}}]],["tokenread"],["passNewline"],[[["==",[".","expr","atom"],"`"],["=","expr","tokenlast"],["tokenread"],["passNewline"]]],[["not",["tokenmatch",["`",":"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$missing : in dictionary"}}]],["tokenread"],["passNewline"],["=","value",["langValueParse","doeval"]],["set[","obj",[".","expr","atom"],"value"],[["tokenmatch",["`","}"]],["tokenread"]],[["not",["langAtSeparator"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$, or }",$memo:"$malformed dictionary entry"}}]],["tokenread"]],{dictionary:{$atom:"obj",$loc:["langExprLoc","sloc"]}}]),e._SetBindingList("langBracketParse",["function&","langBracketParse",["doeval","ltoken","sloc","false","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","exlist",["langParseTo",["`","]"],"sloc",["not","ltoken"]]],[["identity","ltoken"],[["atom",["cdr","exlist"]],["langEnlistSym","deref","sloc","ltoken",["car","exlist"]]],["langEnlistSym","dereflist","sloc","ltoken","exlist"]],[[["&&","doeval",["==",[".","langErrors","length"],0]],["=","exlist",["cdr",["eval",["cons","false","exlist"]]]]]],{dictionary:{$atom:["new","array","exlist"],$loc:[".","sloc","loc"]}}]),e._SetBindingList("langValueParse",["function","langValueParse",["doeval","false","value"],["=","value",["langParse1","tokenlast",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","recurParse","langParseErrorString","tokenread","tokenpush","tokenmatch","tokenpass","passNewline","atTerminator","atDelimiter","langPassSeparator","langAtSeparator","langExprLoc","langConsSym","langEnlistSym","langSyntax","langDebuglog","langCleanup","langErrorCheck","langCorrelateComments","langStrip","langStripLoc","langParse1","langParseTo","langParseToList","langReadExpr","langTemplateStringParse","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,"$^":380,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,"$&&":220,$and:220,"$||":200,$or:200,"$~":120}},$right:{dictionary:{"$.":540,"$@":540,"$^":375,"$++":360,"$--":360,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,$not:230,"$!":230,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$=":100,"$+=":100,"$-=":100,"$*=":100,"$/=":100,"$%=":100}},$rightSign:360,$rightEqual:100,$highBind:1e3,$prefix:{dictionary:{"$,":"false","$[":["constObject",["lingoBracketParse","false","false","ltoken"]],"$#[":["langConsSym",["`","#["],"tokenlast",["lingoParseTo",["`","#]"],"tokenlast"]],$try:["catchParse"],"$(":["parenParse"],"$`":["quoteParse"],$function:["procParse",["`","function"]],$macro:["procParse",["`","macro"]],$closure:["procParse",["`","closure"]],$let:["procParse",["`","let"]],$if:["ifParse","IfBody"],$else:["keywordParse","ltoken"],$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","ltoken"]],"$@":["atPrefixParse"]}},$infix:{dictionary:{"$/":["quotientParse","ltoken"],"$/.":["quotientParse","ltoken"],"$@":["atParse","ltoken"],"$@[":["atBracketParse","ltoken","rtoken"],"$[":["constObject",["lingoBracketParse","false","ltoken","rtoken"]],"$=":["equalParse","ltoken",["`","="]],"$+=":["opEqualParse","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"}},$string:["langTemplateStringParse","ltoken"]}}),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","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBraceParse","arg1","arg2"]]),e._SetBindingList("lingoBracketParse",["function&","lingoBracketParse",["arg1","arg2","arg3","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBracketParse","arg1","arg2","arg3"]]),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","rtoken"],["lingoBracketParse","false",["langEnlistSym",["`","@"],"ltoken","ltoken"],"rtoken"]]),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("keywordParse",["function&","keywordParse",["token"],["langSyntax","token","false",{dictionary:{$memo:"$stray keyword"}}]]),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("ifsParse",["function&","ifsParse",["to","false","IfBody"],["call",["let","lambda",["bloc","conds","expr"],["=","bloc","tokenlast"],["=","conds",["apply","append",["langParseTo","to","bloc"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","conds",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[["not",["tuple",["car","expr"]]],["langSyntax","expr","false",{dictionary:{$memo:"$if expression required"}}]]]]],"conds"]]]),e._SetBindingList("condParse",["function&","condParse",["false","IfBody"],[[["tokenmatch","lpar"],["tokenread"]],["return",{dictionary:{$atom:["`","cond"],$loc:["langExprLoc","tokenlast"]}}]],["langConsSym",["`","cond"],"tokenlast",["ifsParse","rpar"]]]),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"],[["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("catchParse",["function","catchParse",["false","sloc1","sloc2","sloc3","exbod","catbod","ccond","finbod","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"],[[["tokenmatch",["`","if"]],["=","ccond",["ifsParse",["`","}"]]]],[["tokenmatch",["`","}"]],["tokenread"]],["=","catbod",["langParseTo",["`","}"],"bloc"]]],[["not","ccond"],[[["not","catbod"],["=","catbod",["langConsSym",["`","false"],"bloc"]]]],["=","ccond",["list",["cons",["langConsSym",["`","identity"],"bloc",["langConsSym",["`","true"],"bloc"]],"catbod"]]]]]],["=","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","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._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","keywordParse","bodyParse","ifsParse","condParse","loopParse","deloopParse","returnParse","whileParse","for1Parse","for2Parse","switchParse","procParse","catchParse","equalParse","opEqualParse","lparParse","preCrementParse","postCrementParse","quoteParse","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",["`","incol"],[".","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","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",["deref",["@","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","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","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","fname","fbind","parms"],["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","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","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"]]]]]],"dict"]],["set.","unparser",["`","string"],["function","string",["firstloc","lastloc","soptions","false","margin","rowdex","row","col","found","outstr","colpos","lineno","linepad"],["updatecheck"],[[["numeric",[".","soptions","leftMargin"]],["=","margin",[".","space","repeat",[[".","soptions","leftMargin"]]]]],["=","margin","$"]],[[["numeric",[".","soptions","lineNumbers"]],["=","lineno",["toint",[".","soptions","lineNumbers"]]],["=","linepad",["+",["length",["tostring",["+","lineno",[".",[".","sink","rowtokens"],"length"]]]],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","margin"]]]],["=","outstr","margin"]],[[["identity","lineno"],["=","outstr",[".","outstr","concat",[["prepad","lineno","linepad"],"$ "]]],[[[".","sink","maxmarklen"],[["deref",[".","sink","markdict"],"lineno"],["=","outstr",[".","outstr","concat",[["deref",[".","sink","markdict"],"lineno"],"$ "]]]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["+",[".","sink","maxmarklen"],1]]]]]]]],["preadjust","lineno","+",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"]]],[".","up","string",["start","end",{dictionary:{$lineNumbers:1}}]]]],["set.","utils",["`","symns"],["function","symns",["name","ns"],[[["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"],[".",[".",[".",["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","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"]]],[[["identity","true"],[".","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","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"],"$About Naan: https://github.com/naanlang/naan#readme\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 /r[estart] - restart REPL\n /q[uit] - 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"]],["set.","driverob",["`","dialect"],"dialob"],[".",[".","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] [no]prompt - turn on/off command line prompt\n /op[tions] [no]blank - turn on/off blank line before prompt\n"]]],[["==","cmdword","$prompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"true"}}]]],[["==","cmdword","$noprompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"false"}}]]],[["==","cmdword","$blank"],[".","driverob","setOptions",[{dictionary:{$blank:"true"}}]]],[["==","cmdword","$noblank"],[".","driverob","setOptions",[{dictionary:{$blank:"false"}}]]]]),e._SetBindingList("driver_restarts",["function","driver_restarts",["driverob","cmdword","cmdargs"],["return",["`","break"]]]),e._SetBindingList("driver_quits",["function","driver_quits",["driverob","cmdword","cmdargs"],[[".","js","g"],[".",[".","js","r",["$process"]],"exit",[0]]],[[".","js","s"],[".",[".","js","t"],"Terminate","false"]],[[".","js","w"],[".",[".","js","w"],"close","false"]]]),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",$r:"driver_restarts",$restart:"driver_restarts",$q:"driver_quits",$quit:"driver_quits"}}),e._SetBindingList("Driver",["closure","Driver",["welcome","false","driverob","console","dialob","source","emptyflag","endtoken","exop","exconsole"],["=","driverob",["new","object","this"]],["=","driverObject","driverob"],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","options"],{dictionary:{$prompt:"false",$blank:"false"}}],["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"]],["set.","driverob",["`","dialect"],"Dialect"],["=","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"]]]],[".",[".","driverob","waiting"],"reset","false"],["=","output",[".","output","concat",["cc"]]],[[["==","cc","$\n"],["break"]]]],"output"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["function","driverPrompt",["false","prompt","name"],["freshline"],[[["&&",[".",[".","driverob","options"],"blank"],["!=",["printloc"],["`",[0,0]]]],[".","console","newline","false"]]],["=","name",[".",[".",[".","driverob","dialect"],"name"],"toLowerCase","false"]],["catch",[["=","prompt",["strcat",["namespace",["first",["nsactive"]]],["strcat","$-","name","$> "]]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt",["strcat","name","$ > "]]]],"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"],["=","exop","false"],["=","exconsole","console"],["loop","repl",[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["catch",[[[["identity","source"],["freshline"],["=","result",["parseBuffer"]],[["eq","result","emptyflag"],["continue"]]],[["not","exop"],["freshline"],[[["&&",[".",[".","driverob","options"],"prompt"],["==",[".","console","readready","false"],0]],[".","console","print",[["driverPrompt"]]]]],[[["==",[".","console","readready","false"],0],[".",[".","driverob","waiting"],"signal",["true"]]]],["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"]],["continue","repl"]]],["loop","false",["=","source",["new","textstream","text"]],["=","result",["parseBuffer"]],[["not",["eq","result","emptyflag"]]],["=","source","false"],["=","accum","text"],[[[".","text","match",[["RegExp","$^\\s*/[/*]"]]],["continue","repl"]]],[[["not",[".","text","match",[["RegExp","$(;|;>|;;)\\s*$"]]]],["=","source",["new","textstream",[".",[".","text","trim","false"],"concat",["$;\n"]]]],["=","result",["parseBuffer"]],[["not",["||",["eq","result","emptyflag"],[".","result",0]]],["break"]]]],["freshline"],[".","console","print",["$>> "]],["=","text",["readline"]],[[["==",[".","text","trim","false"],"$"],[".","console","print",["$command entry canceled"]],["continue","repl"]]],[[["==",[".","text","slice",[-1]],"$\n"],["=","text",[".","accum","concat",["text"]]]],["=","text",[".","accum","concat",["$\n","text"]]]]]],[[[".","exop","display"],[".","console","printline",[[".","exop","display"]]]]],["=","result",["list","false",[".","exop","expr"]]],["=","endtoken",{dictionary:{$atom:["`",";"]}}],[[[".","exop","ending"],["set.","endtoken",["`","atom"],[".","exop","ending"]]]],["=","exop","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"],["=","exop","false"],["=","exconsole","false"],["throw","driver"]],[["identity","true"],["=","expr",["tostring",["first","exception"]]],[["==","expr","$debugger"],[".","console","printline",["$==> terminated in debugger"]],["=","exop","false"],["=","exconsole","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",["`","setOptions"],["function","setOptions",["options"],[[["identity","options"],["set.","driverob",["`","options"],["merge",[".","driverob","options"],"options"]]]],[".","driverob","options"]]],["set.","driverob",["`","readready"],["function","readready","false",[".","console","readready","false"]]],["set.","driverob",["`","waitIdle"],["closure","waitIdle",["toMS","false","start","totimer"],[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["=","start",["milliseconds"]],[[["identity","toMS"],["=","totimer",["future",["function","lambda","false",["=","start","false"]],"toMS"]]]],["while","false",[["not","start"]],[".",[".","driverob","waiting"],"wait","false"],["sleep",10],[[[">",["-",["milliseconds"],"start"],50],["break"]]]],[".","totimer","reset","false"],["!=","start","false"]]],["set.","driverob",["`","execute"],["function","execute",["expr","options"],[[["not","options"],["=","options",{dictionary:{}}]]],["set.","options",["`","expr"],"expr"],[["identity","exconsole"],["=","exop","options"],[".","exconsole","readex",["Driver"]],"true"]]],["set.",[".","Naan","runtimelib"],["`","curdriver"],"curdriver"],["set.",[".","Naan","runtimelib"],["`","exec"],"exec"],[[["identity","welcome"],["set.",[".","driverob","options"],["`","prompt"],"true"],[["==","welcome",100],[".","console","printline",['$Naan REPL - type "/help" for more information']]]]],["repl"]]),e._SetBindingList("curdriver",["function","curdriver","false","driverObject"]),e._SetBindingList("exec",["function","exec",["expr","options"],[".","driverObject","execute",["expr","options"]]]),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",["`",["driverObject","driver_chmods","driver_debugs","driver_helps","driver_infos","driver_languages","driver_list","driver_options","driver_restarts","driver_quits","driverCmds","Driver","curdriver","exec","DriverInstall","DriverInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Driver",["function","lambda",["modobj","compobj"],[".",[".","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],"$--\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"],["catch",[["=","prompt",["strcat","$(ndb-",[".","debug","depth","false"],"$) "]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt","$(ndb)"]]],"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","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","$(\\S+)\\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"],["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],"$--\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","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._Import("number","mod","%"),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("#[",["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"],[["not",["||","ex1","ex2"]],0],[["||",["<","ex1","ex2"],["not","ex2"]],-1],[["||",[">","ex1","ex2"],["not","ex1"]],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("subat",["function","subat",["tree","reps","false","map","pair"],["global"],["=","map",{dictionary:{}}],[[["&&",["not",["tuple","reps"]],["not",["array","reps"]]],["return","tree"]]],[[["&&",["not",["tuple",[".","reps",0]]],["not",["array",[".","reps",0]]]],["=","reps",{array:["reps"]}]]],["for",["let","lambda",["iter"],["=","iter",["iterate","reps",["`","pair"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","pair",[".","iter","$value"]],["set[","map",[".","pair",0],"pair"]]]],["function","sarray",["items","false","out","item"],["=","out",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","items",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[".","out","push",[["recur","item"]]]]]],"out"],["function","sdict",["items","false","out","key","data"],["=","out",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","items",["`",["key","data"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["key","data"],[".","iter","$value"]],[[["deref","map","key"],["=","key",[".",["deref","map","key"],1]]]],["set[","out","key",["recur","data"]]]]],"out"],["call",["function","recur",["sub","false","make"],[["tuple","sub"],["while","false",[["not",["not",["empty","sub"]]]],["push",["recur",["pop","sub"]],"make"]],["reverse","make"]],[["array","sub"],["sarray","sub"]],[["dictionary","sub"],["sdict","sub"]],[["&&",["deref","map","sub"],["==",["typeof","sub"],["typeof",[".",["deref","map","sub"],0]]]],[".",["deref","map","sub"],1]],"sub"],"tree"]]),e._SetBindingList("subatq",["macro","subatq",["tree","reps"],["subat","tree",["eval","reps"]]]),e._SetBindingList("prepad",["function","prepad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat",[".","padstr","repeat",["length"]],"value"],"slice",[["-","length"]]]]),e._SetBindingList("postpad",["function","postpad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat","value",[".","padstr","repeat",["length"]]],"slice",[0,"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("sleep",["closure","sleep",["msec"],["=","msec",["||","msec",0]],[".",["future",["function","sleep","false","true"],"msec"],"wait","false"]]),e._SetBindingList("await",["closure","await",["promise","timeout","false","pending"],[[["not","promise"],["throw",["list","internal",["strcat","$await on false promise"]]]]],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[["identity","timeout"],[".","pending","wait",["timeout",["list",["Error",["strcat","$await timeout after ","timeout","$ msec"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("asyncArray",["closure","asyncArray",["elements","maxActive","worker","false","pending","results"],[[["not",["numeric",[".","elements","length"]]],["return","false"]]],["=","results",{array:[]}],["=","pending",["new","nonce"]],["set.","pending",["`","active"],0],["set.","pending",["`","index"],0],["set.","pending",["`","running"],{array:[]}],["closure","processOne",["index","false","entry"],["preadjust",[".","pending","active"],"+",1],["set[",[".","pending","running"],"index","true"],["=","entry",["deref","elements","index"]],["function","cancel",["result"],["sprint"],["done","index","result"]],["future",["function","coProcess",["false","result"],["catch",[["=","result",["worker","entry","index","cancel"]]],"false",[["sprint"],["done","index","result"]]]],0]],["function","done",["index","result"],[[["deref",[".","pending","running"],"index"],["set[","results","index","result"],["preadjust",[".","pending","active"],"-",1],["set[",[".","pending","running"],"index","false"]]],["doMore"]],["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","constructor"],[["xobject","item","constructor"],["loop","false",[[["not","item"],"false",["break"]],[["eq","item",[".","constructor","prototype"]],["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","^","!","~","~=","`","#[","dereflist","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<","\\...","append","subat","subatq","prepad","postpad","map","iterate","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect","RuntimeOperators","RuntimeLibInit"]]],["=","operlist",["`",["=","+","-","*","/","/.","%","<",">","&&","and","||","or","^","!","~","~=","`","#[","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<"]]],["=","runtimelib",["`",["dereflist","subat","subatq","prepad","postpad","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"]]],[[["symbol","NideBuild"],["nsCopyproc",["`","="],"setq"],["nsCopyproc",["`","+"],"plus"],["nsCopyproc",["`","-"],"difference"],["nsCopyproc",["`","*"],"times"],["nsCopyproc",["`","/"],"quotient"],["nsCopyproc",["`","/."],"quotient"],["nsCopyproc",["`","%"],"mod"],["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"],["`","subat"],"subat"]],["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"],["`","subat"],"subat"],["set.",[".","modobj","exports"],["`","subatq"],"subatq"],["set.",[".","modobj","exports"],["`","prepad"],"prepad"],["set.",[".","modobj","exports"],["`","postpad"],"postpad"],["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"]]]],[[[".",[".",[".","module","exports"],"Registry"],"findName",["diname"]],"false"]],["=","newdialect",["initialize","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","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("recurParse",["function","recurParse",["text","sloc"],["call",["function&","recurParse1",["source","false","result"],["catch",[["=","result",["langParse1",["tokenread"],0]],[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[[["identity","true"],"false"]],"false"],"result"],["new","textstream","text","sloc"]]]),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","false","xproc","proc_parent","xloop","loop_parent","xbody","blocknest"],["global","langDebuglog"],["function","debugErrorCheck","args",[["identity","false"],["apply","langDebuglog","args"]]],["function&","inbody",["lbody","xbody","false","item","more"],[["atom","lbody"],"lbody"],["debugErrorCheck","$inbody:","lbody"],["=","xbody",{dictionary:{$live:"true"}}],["=","item",["car","lbody"]],["=","more",["cdr","lbody"]],[[["atom","item"],[["&&","more",["not",["member",[".",["caar","more"],"atom"],["`",["break","return"]]]]],["langSyntax","item","false",{dictionary:{$memo:"$ignored atom in body"}}]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]]],["inbodyitem","item"],["inbody","more","xbody"]],["function","inbodyitem",["expr","false","sym"],["debugErrorCheck","$inbodyitem:","expr"],[["not",[".","xbody","live"]],[[["not",[".","xbody","dead"]],["langSyntax","expr","false",{dictionary:{$memo:"$dead code"}}]]],["set.","xbody",["`","dead"],"true"],"false"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],["debugErrorCheck","$ineval:","expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["inevalist","expr"]],["function","inevalist",["expr"],["debugErrorCheck","$inevalist:","expr"],[["atom","expr"],"expr"],["ineval",["car","expr"]],["inevalist",["cdr","expr"]]],["function","inquote",["expr","inside","false","item"],["debugErrorCheck","$inquote:","expr","inside"],[["atom","expr"],"expr"],["=","item",["car","expr"]],[[["&&","inside",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inquote","item","true"],["inquote",["cdr","expr"],"inside"]],["function","inargs",["expr","proc","narg","false","item","quoted"],["debugErrorCheck","$inargs:","expr"],[["atom","expr"],"expr"],["=","item",["car","expr"]],["=","quoted",["quotedArg","proc","narg"]],[[["tuple","item"],[["identity","quoted"],["=","item",["inquote","item","true"]]],["=","item",["incall","item"]]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["not","quoted"],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inargs",["cdr","expr"],"proc",["+","narg",1]]],["function","inparms",["expr","false","parm","sym"],["debugErrorCheck","$inparms:","expr"],[["atom","expr"],["=","sym",[".","expr","atom"]],[["identity","sym"],[["not",["symbol","sym"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],["set[",[".","xproc","parameters"],"sym","expr"],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]]],["=","parm",["car","expr"]],["=","sym",[".","parm","atom"]],[[["||",["not",["symbol","sym"]],["&&",["not","sym"],["!==","sym","false"]]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],[["===","sym","false"],[[".","xproc","locals"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate `local"}}]],[["atom",["cdr","expr"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid `local"}}]],["set.","xproc",["`","locals"],{dictionary:{}}],["set.","xproc",["`","unused"],{dictionary:{}}]],[["deref",[".","xproc","parameters"],"sym"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate parameter"}}]],["set[",[".","xproc","parameters"],"sym","parm"],[[[".","xproc","locals"],["set[",[".","xproc","unused"],"sym","parm"],["set[",[".","xproc","locals"],"sym","parm"]]],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]],["inparms",["cdr","expr"]]],["function&","inloop",["pbody","loop_parent","false","blocknest","xloop"],["debugErrorCheck","$inloop:","pbody"],["=","xloop",{dictionary:{$tag:[".",["second","pbody"],"atom"]}}],[[["identity","loop_parent"],["set.","xloop",["`","parent"],"loop_parent"]]],["=","loop_parent","xloop"],["=","blocknest",0],["inbody",["cddr","pbody"]]],["function&","inproc",["fbind","proc_parent","false","blocknest","xproc","sym","item"],["debugErrorCheck","$inproc:","fbind"],["=","xproc",{dictionary:{$ftype:["car","fbind"],$fname:["second","fbind"],$parms:["third","fbind"],$body:["cdddr","fbind"],$procNames:{dictionary:{}},$parameters:{dictionary:{}},$undeclared:{dictionary:{}},$dynbind:["member",[".",["car","fbind"],"atom"],["`",["function&","let&"]]]}}],[[["identity","proc_parent"],["set.","xproc",["`","parent"],"proc_parent"],[[[".","proc_parent","globals"],["set.","xproc",["`","globals"],{dictionary:{}}]]],[[[".","proc_parent","root"],["set.","xproc",["`","root"],[".","proc_parent","root"]]],["set.","xproc",["`","root"],"proc_parent"]],[["&&",["!=",[".",[".","xproc","fname"],"atom"],["`","lambda"]],["deref",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"]]],["langSyntax",[".","xproc","fname"],"false",{dictionary:{$memo:"$duplicate procedure name"}}]],["set[",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"],[".","xproc","fname"]]]],["=","proc_parent","xproc"],["=","blocknest",0],["inparms",[".","xproc","parms"]],["inbody",[".","xproc","body"]],[[["not",[".","xproc","dynbind"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","unused"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],["langSyntax","item","false",{dictionary:{$memo:"$unused local variable"}}]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","undeclared"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],[[["not",["deref",[".","xproc","procNames"],"sym"]],[["&&",[".","xproc","parent"],[".","xproc","globals"]],["set[",[".",[".","xproc","parent"],"undeclared"],"sym","item"]],["langSyntax","item","false",{dictionary:{$memo:"$undeclared global"}}]]]]]]],["function","inconditem",["expr"],["debugErrorCheck","$inconditem:","expr"],[["atom","expr"],"expr"],["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]],["function&","incond",["expr","blocknest"],["debugErrorCheck","$incond:","expr"],["inconditem","expr"]],["function","incatch",["expr"],["debugErrorCheck","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["incond",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym","loopt","item"],["debugErrorCheck","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==",[".","sym","proc"],[".",["`","loop"],"proc"]],["inloop","expr","loop_parent"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr","proc_parent"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody",["cdr","expr"]]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["inquote","expr"]],[["==","sym",["`","global"]],[["not","xproc"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden outside of a procedure"}}]],[[".","xproc","dynbind"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden in function& and let&"}}]],[[["not",[".","xproc","globals"]],["set.","xproc",["`","globals"],{dictionary:{}}]]],["=","loopt",["cdr","expr"]],["while","false",[["not",["not",["empty","loopt"]]]],["=","item",["pop","loopt"]],[[["not",["symbol",[".","item","atom"]]],["langSyntax","item","false",{dictionary:{$memo:"$invalid global symbol"}}]],["set[",[".","xproc","globals"],[".","item","atom"],"item"]]]],[["||",["==","sym",["`","break"]],["==","sym",["`","continue"]]],["set.","xbody",["`","live"],"false"],[["not","xloop"],["langSyntax",["car","expr"],"false",{dictionary:{$memo:["strcat","sym","$ without loop"]}}]],["=","sym",[".",["cadr","expr"],"atom"]],[["identity","sym"],["=","loopt","xloop"],["while","false",[["not","loopt"]],[[["==","sym",[".","loopt","tag"]],["break"]]],["=","loopt",[".","loopt","parent"]]],[["not","loopt"],["langSyntax",["cadr","expr"],"false",{dictionary:{$memo:"$enclosing loop tag not found"}}]]]],[[["||",["==","sym",["`","return"]],["==","sym",["`","throw"]]],["set.","xbody",["`","live"],"false"]],[["&&",["not","sym"],["tuple",["car","expr"]]],["incall",["car","expr"]],["=","expr",["cdr","expr"]]]],["inargs",["cdr","expr"],["car","expr"],0]],["function","inwhen",["expr","false","nexpr"],["debugErrorCheck","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugErrorCheck","$in whenblock","blocknest"],["incall",["car","expr"]],["inblock","nexpr","blocknest"]],["incall",["car","expr"]],["inbody",["cdr","expr"]]],["function&","inblock",["expr","blocknest"],["debugErrorCheck","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["inbodyitem",["car","expr"]],["inbody",["cdr","expr"]]],["function","findLocalSymbol",["sym","start","false","proct"],[[["==","sym",["`","Dialect"]],["return","true"]]],[[["identity","start"],["=","proct","start"]],["=","proct","xproc"]],["while","false",[["not","proct"]],[[["deref",[".","proct","procNames"],"sym"],["break"]]],[[["deref",[".","proct","parameters"],"sym"],["set[",[".","proct","unused"],"sym","undefined"],["break"]]],[[["deref",[".","proct","globals"],"sym"],["break"]]],["=","proct",[".","proct","parent"]]],["not",["not","proct"]]],["function","quotedArg",["proc","narg"],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","."],"proc"]],["==","narg",1]],["return","true"]]],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","="],"proc"]],["==","narg",0]],["return","true"]]],"false"],["debugErrorCheck","$\n### langErrorCheck tree:","tree"],["=","blocknest",0],["ineval","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"]],["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"]]],[["deref",[".","lang","prefix"],[".","tokenlast","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$ambiguous newline (use \\ or ,)"}}]],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["tokenpush","nlToken"],"false"],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["=","ltoken",["passNewline"]],[["atDelimiter"],["langSyntax","ltoken","false",{dictionary:{$memo:"$incomplete expression"}}]],["=","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"],[[["string",[".","ltoken","atom"]],[[["tokenmatch","string"],["=","ltoken",{dictionary:{$atom:["strcat",[".","ltoken","atom"],[".","tokenlast","atom"]],$loc:[".","ltoken","loc"]}}],["tokenread"],["continue"]]],[[".","lang","string"],["=","ltoken",["eval",[".","lang","string"]]]]]],[[["and",["&&",["not",["string",[".","rtoken","atom"]]],["<","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","doval","false","inerrors","expr"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","lptFound","false"],["langPassSeparator"],["=","inerrors",[".","langErrors","length"]],["loop","false",[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"]],[[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$delimiter not found"}}],[["atTerminator"],["break"]]],[[["identity","doval"],["push",["langValueParse"],"expr"]],["push",["langParse1","tokenlast",0],"expr"]],[[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"],["break"]]],[["&&",["not",["langAtSeparator","delim"]],["==","inerrors",[".","langErrors","length"]]],["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","false","expr"]],[["tokenmatch","["],["tokenread"],["langBracketParse","false","false","expr"]],[["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("langTemplateStringParse",["function&","langTemplateStringParse",["strtoken","false","sloc","rxTS","terms","found","result","exlist","item","add"],[[["<",[".",[".","strtoken","atom"],"indexOf",[["`","\\${"]]],0],["return","strtoken"]]],["=","sloc",["langExprLoc","strtoken"]],["=","rxTS",["RegExp","$((?:[^$]|[$](?![{$])|[$]+[{][^}]*$)*)([$]+[{].*?[}])?","$g"]],["=","rxT",["RegExp","$[$]+[{](.*)[}]"]],["=","terms",{array:[]}],["loop","false",["=","found",[".","rxTS","exec",[[".","strtoken","atom"]]]],[["||",["not","found"],["==",[".","found",0],"$"]]],[[[".","found",1],[".","terms","push",[[".","found",1]]]]],[[[".","found",2],[".","terms","push",[[".","found",2]]]]]],["=","exlist",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","terms",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","found",[".","rxT","exec",["item"]]],[[[".","item","startsWith",["$$$"]],[".","exlist","push",[{dictionary:{$atom:[".","item","slice",[1]],$loc:"sloc"}}]]],[[".","found",1],[".","exlist","push",[["recurParse",[".",[".","found",1],"concat",["$;"]],["list",[".","sloc",0],["+",[".","sloc",1],2]]]]]],[[">",[".","item","length"],0],[".","exlist","push",[{dictionary:{$atom:"item",$loc:"sloc"}}]]]],["=","sloc",["list",[".","sloc",0],["+",[".","sloc",1],[".","item","length"]]]]]]],["langConsSym",["`","strcat"],"strtoken",[".","exlist","totuple"]]]),e._SetBindingList("langBraceParse",["function&","langBraceParse",["doeval","sloc","false","obj","expr","value","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","obj",{dictionary:{}}],["loop","false",["passNewline"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$}",$memo:"$delimiter not found"}}]],["=","expr","tokenlast"],[["deref","obj",[".","expr","atom"]],["langSyntax","expr","false",{dictionary:{$memo:"$duplicate key in dictionary",$found:[".","expr","atom"]}}]],["tokenread"],["passNewline"],[[["==",[".","expr","atom"],"`"],["=","expr","tokenlast"],["tokenread"],["passNewline"]]],[["not",["tokenmatch",["`",":"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$missing : in dictionary"}}]],["tokenread"],["passNewline"],["=","value",["langValueParse","doeval"]],["set[","obj",[".","expr","atom"],"value"],[["tokenmatch",["`","}"]],["tokenread"]],[["not",["langAtSeparator"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$, or }",$memo:"$malformed dictionary entry"}}]],["tokenread"]],{dictionary:{$atom:"obj",$loc:["langExprLoc","sloc"]}}]),e._SetBindingList("langBracketParse",["function&","langBracketParse",["doeval","ltoken","sloc","false","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","exlist",["langParseTo",["`","]"],"sloc",["not","ltoken"]]],[["identity","ltoken"],[["atom",["cdr","exlist"]],["langEnlistSym","deref","sloc","ltoken",["car","exlist"]]],["langEnlistSym","dereflist","sloc","ltoken","exlist"]],[[["&&","doeval",["==",[".","langErrors","length"],0]],["=","exlist",["cdr",["eval",["cons","false","exlist"]]]]]],{dictionary:{$atom:["new","array","exlist"],$loc:[".","sloc","loc"]}}]),e._SetBindingList("langValueParse",["function","langValueParse",["doeval","false","value"],["=","value",["langParse1","tokenlast",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","recurParse","langParseErrorString","tokenread","tokenpush","tokenmatch","tokenpass","passNewline","atTerminator","atDelimiter","langPassSeparator","langAtSeparator","langExprLoc","langConsSym","langEnlistSym","langSyntax","langDebuglog","langCleanup","langErrorCheck","langCorrelateComments","langStrip","langStripLoc","langParse1","langParseTo","langParseToList","langReadExpr","langTemplateStringParse","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,"$^":380,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,"$&&":220,$and:220,"$||":200,$or:200,"$~":120}},$right:{dictionary:{"$.":540,"$@":540,"$^":375,"$++":360,"$--":360,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,$not:230,"$!":230,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$=":100,"$+=":100,"$-=":100,"$*=":100,"$/=":100,"$%=":100}},$rightSign:360,$rightEqual:100,$highBind:1e3,$prefix:{dictionary:{"$,":"false","$[":["constObject",["lingoBracketParse","false","false","ltoken"]],"$#[":["langConsSym",["`","#["],"tokenlast",["lingoParseTo",["`","#]"],"tokenlast"]],$try:["catchParse"],"$(":["parenParse"],"$`":["quoteParse"],$function:["procParse",["`","function"]],$macro:["procParse",["`","macro"]],$closure:["procParse",["`","closure"]],$let:["procParse",["`","let"]],$if:["ifParse","IfBody"],$else:["keywordParse","ltoken"],$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","ltoken"]],"$@":["atPrefixParse"]}},$infix:{dictionary:{"$/":["quotientParse","ltoken"],"$/.":["quotientParse","ltoken"],"$@":["atParse","ltoken"],"$@[":["atBracketParse","ltoken","rtoken"],"$[":["constObject",["lingoBracketParse","false","ltoken","rtoken"]],"$=":["equalParse","ltoken",["`","="]],"$+=":["opEqualParse","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"}},$string:["langTemplateStringParse","ltoken"]}}),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","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBraceParse","arg1","arg2"]]),e._SetBindingList("lingoBracketParse",["function&","lingoBracketParse",["arg1","arg2","arg3","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBracketParse","arg1","arg2","arg3"]]),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","rtoken"],["lingoBracketParse","false",["langEnlistSym",["`","@"],"ltoken","ltoken"],"rtoken"]]),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("keywordParse",["function&","keywordParse",["token"],["langSyntax","token","false",{dictionary:{$memo:"$stray keyword"}}]]),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("ifsParse",["function&","ifsParse",["to","false","IfBody"],["call",["let","lambda",["bloc","conds","expr"],["=","bloc","tokenlast"],["=","conds",["apply","append",["langParseTo","to","bloc"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","conds",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[["not",["tuple",["car","expr"]]],["langSyntax","expr","false",{dictionary:{$memo:"$if expression required"}}]]]]],"conds"]]]),e._SetBindingList("condParse",["function&","condParse",["false","IfBody"],[[["tokenmatch","lpar"],["tokenread"]],["return",{dictionary:{$atom:["`","cond"],$loc:["langExprLoc","tokenlast"]}}]],["langConsSym",["`","cond"],"tokenlast",["ifsParse","rpar"]]]),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"],[["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("catchParse",["function","catchParse",["false","sloc1","sloc2","sloc3","exbod","catbod","ccond","finbod","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"],[[["tokenmatch",["`","if"]],["=","ccond",["ifsParse",["`","}"]]]],[["tokenmatch",["`","}"]],["tokenread"]],["=","catbod",["langParseTo",["`","}"],"bloc"]]],[["not","ccond"],[[["not","catbod"],["=","catbod",["langConsSym",["`","false"],"bloc"]]]],["=","ccond",["list",["cons",["langConsSym",["`","identity"],"bloc",["langConsSym",["`","true"],"bloc"]],"catbod"]]]]]],["=","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","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._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","keywordParse","bodyParse","ifsParse","condParse","loopParse","deloopParse","returnParse","whileParse","for1Parse","for2Parse","switchParse","procParse","catchParse","equalParse","opEqualParse","lparParse","preCrementParse","postCrementParse","quoteParse","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",["`","incol"],[".","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","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",["deref",["@","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","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","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","fname","fbind","parms"],["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","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","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"]]]]]],"dict"]],["set.","unparser",["`","string"],["function","string",["firstloc","lastloc","soptions","false","margin","rowdex","row","col","found","outstr","colpos","lineno","linepad"],["updatecheck"],[[["numeric",[".","soptions","leftMargin"]],["=","margin",[".","space","repeat",[[".","soptions","leftMargin"]]]]],["=","margin","$"]],[[["numeric",[".","soptions","lineNumbers"]],["=","lineno",["toint",[".","soptions","lineNumbers"]]],["=","linepad",["+",["length",["tostring",["+","lineno",[".",[".","sink","rowtokens"],"length"]]]],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","margin"]]]],["=","outstr","margin"]],[[["identity","lineno"],["=","outstr",[".","outstr","concat",[["prepad","lineno","linepad"],"$ "]]],[[[".","sink","maxmarklen"],[["deref",[".","sink","markdict"],"lineno"],["=","outstr",[".","outstr","concat",[["deref",[".","sink","markdict"],"lineno"],"$ "]]]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["+",[".","sink","maxmarklen"],1]]]]]]]],["preadjust","lineno","+",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"]]],[".","up","string",["start","end",{dictionary:{$lineNumbers:1}}]]]],["set.","utils",["`","symns"],["function","symns",["name","ns"],[[["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"],[".",[".",[".",["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","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"]]],[[["identity","true"],[".","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","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"],"$About Naan: https://github.com/naanlang/naan#readme\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 /r[estart] - restart REPL\n /q[uit] - 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"]],["set.","driverob",["`","dialect"],"dialob"],[".",[".","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] [no]prompt - turn on/off command line prompt\n /op[tions] [no]blank - turn on/off blank line before prompt\n"]]],[["==","cmdword","$prompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"true"}}]]],[["==","cmdword","$noprompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"false"}}]]],[["==","cmdword","$blank"],[".","driverob","setOptions",[{dictionary:{$blank:"true"}}]]],[["==","cmdword","$noblank"],[".","driverob","setOptions",[{dictionary:{$blank:"false"}}]]]]),e._SetBindingList("driver_restarts",["function","driver_restarts",["driverob","cmdword","cmdargs"],["return",["`","break"]]]),e._SetBindingList("driver_quits",["function","driver_quits",["driverob","cmdword","cmdargs"],[[".","js","g"],[".",[".","js","r",["$process"]],"exit",[0]]],[[".","js","s"],[".",[".","js","t"],"Terminate","false"]],[[".","js","w"],[".",[".","js","w"],"close","false"]]]),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",$r:"driver_restarts",$restart:"driver_restarts",$q:"driver_quits",$quit:"driver_quits"}}),e._SetBindingList("Driver",["closure","Driver",["welcome","false","driverob","console","dialob","source","emptyflag","endtoken","exop","exconsole"],["=","driverob",["new","object","this"]],["=","driverObject","driverob"],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","options"],{dictionary:{$prompt:"false",$blank:"false"}}],["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"]],["set.","driverob",["`","dialect"],"Dialect"],["=","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"]]]],[".",[".","driverob","waiting"],"reset","false"],["=","output",[".","output","concat",["cc"]]],[[["==","cc","$\n"],["break"]]]],"output"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["function","driverPrompt",["false","prompt","name"],["freshline"],[[["&&",[".",[".","driverob","options"],"blank"],["!=",["printloc"],["`",[0,0]]]],[".","console","newline","false"]]],["=","name",[".",[".",[".","driverob","dialect"],"name"],"toLowerCase","false"]],["catch",[["=","prompt",["strcat",["namespace",["first",["nsactive"]]],["strcat","$-","name","$> "]]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt",["strcat","name","$ > "]]]],"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"],["=","exop","false"],["=","exconsole","console"],["loop","repl",[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["catch",[[[["identity","source"],["freshline"],["=","result",["parseBuffer"]],[["eq","result","emptyflag"],["continue"]]],[["not","exop"],["freshline"],[[["&&",[".",[".","driverob","options"],"prompt"],["==",[".","console","readready","false"],0]],[".","console","print",[["driverPrompt"]]]]],[[["==",[".","console","readready","false"],0],[".",[".","driverob","waiting"],"signal",["true"]]]],["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"]],["continue","repl"]]],["loop","false",["=","source",["new","textstream","text"]],["=","result",["parseBuffer"]],[["not",["eq","result","emptyflag"]]],["=","source","false"],["=","accum","text"],[[[".","text","match",[["RegExp","$^\\s*/[/*]"]]],["continue","repl"]]],[[["not",[".","text","match",[["RegExp","$(;|;>|;;)\\s*$"]]]],["=","source",["new","textstream",[".",[".","text","trim","false"],"concat",["$;\n"]]]],["=","result",["parseBuffer"]],[["not",["||",["eq","result","emptyflag"],[".","result",0]]],["break"]]]],["freshline"],[".","console","print",["$>> "]],["=","text",["readline"]],[[["==",[".","text","trim","false"],"$"],[".","console","print",["$command entry canceled"]],["continue","repl"]]],[[["==",[".","text","slice",[-1]],"$\n"],["=","text",[".","accum","concat",["text"]]]],["=","text",[".","accum","concat",["$\n","text"]]]]]],[[[".","exop","display"],[".","console","printline",[[".","exop","display"]]]]],["=","result",["list","false",[".","exop","expr"]]],["=","endtoken",{dictionary:{$atom:["`",";"]}}],[[[".","exop","ending"],["set.","endtoken",["`","atom"],[".","exop","ending"]]]],["=","exop","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]]],[["!==","\\$",[".",[".","Naan","local"],"mu"]],["freshline"],[".","console","print",["$$: "]],[["!=",[".","endtoken","atom"],["`",";>"]],[".","console","print",[[".","driverob","print",["\\$"]]]]],[".","console","printq",["\\$"]]]]],[[["==","exception","Driver"]],[["==","exception","driver"],["=","exop","false"],["=","exconsole","false"],["throw","driver"]],[["identity","true"],["=","expr",["tostring",["first","exception"]]],[["==","expr","$debugger"],[".","console","printline",["$==> terminated in debugger"]],["=","exop","false"],["=","exconsole","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",["`","setOptions"],["function","setOptions",["options"],[[["identity","options"],["set.","driverob",["`","options"],["merge",[".","driverob","options"],"options"]]]],[".","driverob","options"]]],["set.","driverob",["`","readready"],["function","readready","false",[".","console","readready","false"]]],["set.","driverob",["`","waitIdle"],["closure","waitIdle",["toMS","false","start","totimer"],[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["=","start",["milliseconds"]],[[["identity","toMS"],["=","totimer",["future",["function","lambda","false",["=","start","false"]],"toMS"]]]],["while","false",[["not","start"]],[".",[".","driverob","waiting"],"wait","false"],["sleep",10],[[[">",["-",["milliseconds"],"start"],50],["break"]]]],[".","totimer","reset","false"],["!=","start","false"]]],["set.","driverob",["`","execute"],["function","execute",["expr","options"],[[["not","options"],["=","options",{dictionary:{}}]]],["set.","options",["`","expr"],"expr"],[["identity","exconsole"],["=","exop","options"],[".","exconsole","readex",["Driver"]],"true"]]],["set.",[".","Naan","runtimelib"],["`","curdriver"],"curdriver"],["set.",[".","Naan","runtimelib"],["`","exec"],"exec"],[[["identity","welcome"],["set.",[".","driverob","options"],["`","prompt"],"true"],[["==","welcome",100],[".","console","printline",['$Naan REPL - type "/help" for more information']]]]],["repl"]]),e._SetBindingList("curdriver",["function","curdriver","false","driverObject"]),e._SetBindingList("exec",["function","exec",["expr","options"],[".","driverObject","execute",["expr","options"]]]),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",["`",["driverObject","driver_chmods","driver_debugs","driver_helps","driver_infos","driver_languages","driver_list","driver_options","driver_restarts","driver_quits","driverCmds","Driver","curdriver","exec","DriverInstall","DriverInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Driver",["function","lambda",["modobj","compobj"],[".",[".","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],"$--\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"],["catch",[["=","prompt",["strcat","$(ndb-",[".","debug","depth","false"],"$) "]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt","$(ndb)"]]],"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","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","$(\\S+)\\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"],["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],"$--\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","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-2024 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._Import("number","mod","%"),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:{}}],["put",[".","modobj","exports"],["`","module"],"modobj"],["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:{$naanlib:"$"}}],["set.","modules",["`","extensions"],{array:["$nlg","$npk"]}],["set.","modules",["`","queryString"],"$"],["function","reload",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"reload","false"]],[[["identity","true"],"false"]],"false"]],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"postload","false"]],[[["identity","true"],"false"]],"false"]]],["loadNotify","reload"],["function","resave",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"resave","false"]],[[["identity","true"],"false"]],"false"]]],["saveNotify","resave"],["set.","modules",["`","moduleProc"],["function","moduleProc",["modid"],[["not","modid"],["keys",[".","modules","list"]]],["deref",[".","modules","list"],"modid"]]],["set.","modules",["`","find"],["function","find",["test","false","modobj","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"],"false"],["=","modobj",["xget",[".","modules","list"],["pop","mkeys"]]],[["test","modobj"],"modobj"]]]],["set.","modules",["`","letinherit"],["function","letinherit",["modfrom","false","modto","curac","nsfrom","nsto"],["=","curac",["nsactive"]],[[["string","modfrom"],["=","modfrom",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modfrom"]]]]]],[["not","modfrom"],"false"],["=","modto",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],["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","locin","ns","parent","pathobj","locpath","modname","modobj","compname","compath","compobj","error","presult","returner","extensions","pathext","query","hostpath"],["sprint"],[[["&&","options",["not",["dictionary","options"]]],["throw",["Error",[".","$require(","concat",["fpath","$): invalid options"]]]]]],["=","locin",[".","fpath","split",["$:"]]],[[["==",[".","locin","length"],2],["=","fpath",[".","locin",1]],["=","locin",[".","locin",0]]],["=","locin",[".","options","in"]]],["=","ns",["||",[".","options","parent"],["nscaller"]]],["=","parent",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],"ns"]]]],["=","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"]]],[[["||",["==","modname","$."],["==","modname","$.."]],["=","modname","$"]]],[[["identity","locin"],["=","presult",["deref",[".","modules","locations"],"locin"]],[[["not","presult"],["throw",["Error",[".","$require(","concat",["fpath","$): in:","locin","$ undefined"]]]]]],["=","locpath",[".","JSpath","resolve",["presult","locpath"]]]],[["&&",["!=",[".","pathobj","ext"],"$"],["==","locpath","$"]],["=","locpath",[".","parent","locpath"]]],[["&&",[".",["RegExp","$^[.][.]?[/\\\\]"],"test",["fpath"]],[".","parent","locpath"]],["=","locpath",[".","JSpath","join",[[".","parent","locpath"],"locpath"]]]]],[[["not","locpath"],["=","locpath","$"]]],["set.","pathobj",["`","dir"],"locpath"],["=","compname",[".","pathobj","name"]],[[["&&","locpath",["!=","locpath","$"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","locpath"],"locpath"]]]]]],[[["not","modobj"],[["==","modname","$"],["=","modobj","parent"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]]]],[[["&&",["not",[".","options","read"]],["not",[".","options","reload"]],["deref",[".","modobj","components"],"compname"]],["return",[".","modobj","exports"]]]],["=","returner",["makeReturner"]],["catch",[["=","extensions",["new",[".","modules","extensions"]]],["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"]]],[[["not","modobj"],["=","modobj",["makeModule","modname"]]]],["=","query",[".","options","query"]],[[["not","query"],["=","query",[".","modules","queryString"]]]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]]]]],[[[".","options","source"],[["string",[".","options","source"]],["=","presult",[".","options","source"]]],["=",["error","presult"],["call",[".","options","source"],"compath","query"]]],[["identity","hostpath"],["=",["error","presult"],["modWebReadFile","compath","hostpath","query"]]],["=",["error","presult"],["modNodeReadFile","compath"]]],[[[">",["length","presult"],0],[[["==",[".","modobj","locpath"],"$"],["set.","modobj",["`","locpath"],"locpath"]]],[[[".","options","read"],["return","presult"]]],["=","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: "]],"compath","error"]],["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",["`","defineExt"],["function","defineExt",["ext","reset","false","value"],[[["not","ext"],["=","value",[".","modules","extensions"]]]],[[["identity","reset"],["set.","modules",["`","extensions"],{array:[]}]]],[[["identity","ext"],[".",[".","modules","extensions"],"push",["ext"]],["=","value",[".","modules","extensions"]]]],"value"]],["set.","modules",["`","requireQuery"],["function","requireQuery",["query"],[["not","query"],[".","modules","queryString"]],["set.","modules",["`","queryString"],["modEncodeQuery","query"]]]],["set.","modules",["`","build"],["closure","build","args",["call",["function","lambda",["modname","compname","proc","args","false","modobj","compobj","curactns","presult","returner"],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]],[[["identity","modobj"]],[["==",["namespace",["car","curactns"]],"modname"],["=","modobj",["makeModule","modname",["car","curactns"]]]],["=","modobj",["makeModule","modname"]]],[[["not","compname"],["=","compname","modname"]]],["=","compobj",["deref",[".","modobj","components"],"compname"]],[[["not","compobj"],["=","compobj",[".","modobj","makeComponent",["compname"]]]]],["catch",[[[["identity","proc"],[".","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","create","false","modobj"],["=","name",["tostring","name"]],[[["||",["not","name"],["==","name","$"]],["printline","$modules: ",["keys",[".","modules","list"]]],["return","false"]]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"name"]]]],[[["not","modobj"],[["identity","create"],["build","name"],["return",["changeModNS","name"]]],["printline","$can't find ","name","$ -- please select from ",["keys",[".","modules","list"]]],["return","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("modEncodeQuery",["function","modEncodeQuery",["query","false","result","qkeys","item"],[[["not",["dictionary","query"]],["return","query"]]],["=","result",{array:[]}],["=","qkeys",["keys","query"]],["loop","false",[["empty","qkeys"]],["=","item",["pop","qkeys"]],[".","result","push",[[".",[".",[".","js","w"],"encodeURIComponent",["item"]],"concat",["$=",[".",[".","js","w"],"encodeURIComponent",[["deref","query","item"]]]]]]]],["=","result",[".","result","join",["$&"]]],[[">",[".","result","length"],0],[".","$?","concat",["result"]]],"result"]),e._SetBindingList("modAwait",["closure","modAwait",["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("modWebReadFile",["closure","modWebReadFile",["filename","href","query","false","url","error","response","content"],[[["not","href"],["=","url","filename"]],[[["not",[".","href","endsWith",["$/"]]],["=","href",[".","href","concat",["$/"]]]]],[[[".","filename","startsWith",["$/"]],["=","filename",[".","filename","slice",[1]]]]],["=","url",[".","href","concat",["filename",["modEncodeQuery","query"]]]]],["=",["error","response"],["modAwait",[".",[".","js","w"],"fetch",["url",{dictionary:{$mode:"$cors",$cache:"$no-cache",$credentials:"$same-origin",$headers:{dictionary:{}},$redirect:"$follow",$referrerPolicy:"$no-referrer"}}]]]],[[["!=",[".","response","status"],200],["=","error",["Error","$modWebReadFile failed:","url",[".","response","status"]]]],[["not","error"],["=",["error","content"],["modAwait",[".","response","text","false"]]]]],[["identity","error"],["list","error"]],["list","false","content"]]),e._SetBindingList("modWebParseFile",["closure","modWebParseFile",["filename","href","query","false","error","text"],["=",["error","text"],["modWebReadFile","filename","href","query"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modNodeReadFile",["closure","modNodeReadFile",["filename","false","fs","locpath","error","error2","text"],["function","readFileSync",["path","false","pending"],["=","pending",["new","nonce"]],[".","fs","readFile",["path",{dictionary:{$encoding:"$utf8"}},["function","lambda",["error","data"],[[["identity","error"],["=","error",["Error","$modNodeReadFile failed:","path","error"]]]],[".","pending","signal",[["list","error","data"]]]]]],[".","pending","wait","false"]],["=","fs",[".","js","r",["$fs"]]],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"filename"]]],["=",["error","text"],["readFileSync","locpath"]],[[["identity","error"],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"$../","filename"]]],["=",["error2","text"],["readFileSync","locpath"]],[["not","error2"],["=","error","false"]]]],["list","error","text"]]),e._SetBindingList("modNodeParseFile",["closure","modNodeParseFile",["filename","false","error","text"],["=",["error","text"],["modNodeReadFile","filename"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["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"]]]],[[["identity","true"],["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","concat",["$\\r"]]]],["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","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("saveNotify",["function","saveNotify",["recipient"],[[["not",["member","recipient","saveNotifyList"]],["push","recipient","saveNotifyList"]]],"true"]),e._SetBindingList("SaveTrap",["function","SaveTrap",["false","trav","tell"],["=","tell",[".","saveNotifyList","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","modEncodeQuery","modAwait","modWebReadFile","modWebParseFile","modNodeReadFile","modNodeParseFile","modDriver","letlocal","letimport","makeExport","makeReturner","loadNotify","loadTrap","saveNotify","SaveTrap","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"],["`","defineExt"],[".",[".","modules","defineExt"],1]],["set.",[".","Naan","module"],["`","requireQuery"],[".",[".","modules","requireQuery"],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"],["set.",[".","Naan","module"],["`","SaveNotify"],"saveNotify"],["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","ftrav","procdef","bodydef"],[[["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"]],[[["ErrorObject","except"],["=","except",["ErrorString","except"]]]],["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"],["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"]],[[["xobject",["deref","item","key"]],["continue"]]],[[["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","$module"]],[["==","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",["err"],["&&",["dictionary","err"],["==",[".","err","error"],"$Naan Error"]]]),e._SetBindingList("ErrorString",["function","ErrorString",["nanerr"],[["string","nanerr"],"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("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("pkgSave",["function","pkgSave",["pkgname","roots","options","false","pkgns","goodns","registry","xlate","storenum","wmapSymbol","wmapUnintern","mapString","mapInteger","mapFloat","wmapArray","wmapDictionary","mapList","wmapProcedure","mapDialect","mapBinary","mapXobject","wmapObject","indexValue","listSymbol","listUnintern","listString","listInteger","listFloat","listArray","listDictionary","listList","listProcedure","listDialect","listBinary","listXobject","listObject","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"]]],["debuglog","$pkgSave: cannot save non-default binding for well-known symbol ","expr"],["set[","reported","expr","true"]]],[["&&",["not",[".","options","nsignore"]],["not",["deref","reported","expr"]]],["debuglog","$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"]],[["xobject","expr"],[["IsBinary","expr"],["=","key",["HashMD5","expr"]],[["not","key"],["debuglog",["strcat","$pkgSave: cannot save binary - ","expr"]],1],[["deref","mapBinary","key"]],["set[","mapBinary","key",["preadjust","storenum","+",1]],["push","key","listBinary"],["set[","indexValue","storenum",["EncodeBase64","expr"]],"storenum"],["=",["error","key"],["JsonStringify","expr"]],[["identity","error"],["ErrorDebuglog",["strcat","$pkgSave: cannot save xobject - ","expr"],"error"],1],[["deref","mapXobject","key"]],["set[","mapXobject","key",["preadjust","storenum","+",1]],["push","key","listXobject"],["set[","indexValue","storenum","key"],"storenum"],[["object","expr"],[["deref","wmapObject","expr"]],["=","key",["storeObject","expr"]],["set[","wmapObject","expr",["preadjust","storenum","+",1]],["push","expr","listObject"],["set[","indexValue","storenum","key"],"storenum"],[[["not",["deref","reported","expr"]],["debuglog",["strcat","$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","storeObject",["obj","false","ident"],["=","ident",["call",[".","options","objectEncoder"],"obj"]],[[["not","ident"],["=","ident",{dictionary:{$name:["||",["get","obj","\\.closure"],"undefined"]}}]]],["store","ident"]],["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"],["buildXlate","listBinary","mapBinary"],["buildXlate","listXobject","mapXobject"],["buildXlate","listObject","wmapObject"],"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"],["makeAtom","listBinary","mapBinary"],["makeAtom","listXobject","mapXobject"],["makeList","listObject","wmapObject"]]],["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"],["=","options",["merge",{dictionary:{$comments:"true"}},"options"]],["=","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"]],["=","mapBinary",["new","dictionary"]],["=","mapXobject",["new","dictionary"]],["=","wmapObject",["new","weakmap"]],["=","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,2,"pkgname",[".","options","prereqs"]]],["list","header",["saveMaps"],["renumber","rootnum"],["renumber","syms"]]]]]),e._SetBindingList("pkgDecode",["function","pkgDecode",["pkg","options","false","registry","maxdepth","mapSymbol","mapUnintern","mapString","mapInteger","mapFloat","mapDictionary","mapArray","mapList","mapProcedure","mapDialect","mapBinary","mapXobject","mapObject","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","lookupObject",["key","depth","false","ident","obj"],["=","ident",["lookup",["deref","mapObject","key"],"depth"]],["=","obj",["call",[".","options","objectDecoder"],"ident"]],[[["not","obj"],[[".","ident","name"],["putproc",[".","ident","name"],"false"],["=","obj",["call",["closure","lambda",["nn"],["call",["enclose",["list",["`","closure"],"nn",["`",["local","x"]],["quote",["=","x",["new","object","nn"]]],["quote",["put","x","\\.tostring",["function","lambda","false",["strcat","${blank-proxy ","nn","$}"]]]],["quote",["put","x","\\.undefined",["function","undef","args",["debuglog",["strcat","$call to {blank-proxy ","nn","$}.",[".","args",0],["||",[".","args",-1],"$()"],"$ ignored"]]]]],"x"]]]],[".","ident","name"]]]],["=","obj",["new","object"]]]],"obj"],["function","lookup",["expr","depth","false","key","sexpr","result","cachekey","error","data"],[[["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"],[["||",[".","options","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]]],["preadjust","key","-",[".","mapDialect","length"]],[["<","key",[".","mapBinary","length"]],["DecodeBase64",["deref","mapBinary","key"]]],["preadjust","key","-",[".","mapBinary","length"]],[[["<","key",[".","mapXobject","length"]],["=",["error","data"],["JsonParse",["deref","mapXobject","key"]]],[[["identity","error"],["ErrorDebuglog","$pkgDecode: xobject decode failed","error"],"false"],"data"],["break"]]],["preadjust","key","-",[".","mapXobject","length"]],[["<","key",[".","mapObject","length"]],["lookupObject","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",2],[[["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]]],["=","mapBinary",["new","array",[".",[".","pkg",1],11]]],["=","mapXobject",["new","array",[".",[".","pkg",1],12]]],["=","mapObject",["new","array",[".",[".","pkg",1],13]]],["=","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"]],[[["atom","exlist"],["debuglog",[".","$pkgLoad error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["debuglog","$invalid symbol: ","state"]],[[[".","options","intern"],["=","sym",["compress",[".","state",0]]],[["not",["eq",[".","sym","namespace"],[".",["nsactive"],0]]],[[".","options","localroots"],["=","sym",["car",["letlocal","sym"]]]],["debuglog","$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"]],["debuglog","$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","proc"],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["debuglog",[".","$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]]]],["debuglog","$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",["`",["makeSourceString","pkgSave","pkgDecode","pkgExamine","pkgLoad","pkgToJsSource","PackagerInit"]]],[".",[".","Naan","module"],"build",["$Util","$Packager",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","pkgSave"],"pkgSave"],["set.",[".","modobj","exports"],["`","pkgExamine"],"pkgExamine"],["set.",[".","modobj","exports"],["`","pkgLoad"],"pkgLoad"],["set.",[".","modobj","exports"],["`","pkgToJsSource"],"pkgToJsSource"]]]]]),e._Execute(["PackagerInit"]),e._SetBindingList("JsLoadScript",["closure","JsLoadScript",["libpath","globalID","false","savens","hostpath","pending","scriptTag"],["global","jsScripts","JSpath","js"],[[["deref","jsScripts","libpath"],["return"]]],["=","savens",["nsactive"]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","join",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]],"libpath"]]]]],[[["&&",[".",[".","js","s"],"importScripts"],["==",["tostring",[".",[".","js","s"],"importScripts"]],"$[Function importScripts]"]],["catch",[[".",[".","js","s"],"importScripts",["hostpath"]],["set[","jsScripts","libpath",["deref",[".","js","s"],"globalID"]]],[[["identity","true"],["debuglog","$JsLoadScript:","libpath","$failed","exception"],[".",[".",[".","js","s"],"console"],"log",["$JsLoadScript:","libpath","$failed","exception"]]]],"false"]],[[".","js","w"],["=","pending",["new","nonce"]],["=","scriptTag",[".",[".",[".","js","w"],"document"],"createElement",["$script"]]],["set.","scriptTag",["`","src"],[".","hostpath","concat",[["requireQuery"]]]],["set.","scriptTag",["`","onload"],["function","lambda",["event"],["set[","jsScripts","libpath",["deref",[".","js","w"],"globalID"]],[".","pending","signal",[["deref",[".","js","w"],"globalID"]]],"true"]],["set.","scriptTag",["`","onerror"],["function","lambda",["event"],["debuglog","$JsLoadScript:","libpath","$not found"],[".","pending","signal",["false"]],"true"]],[".",[".",[".",[".","js","w"],"document"],"body"],"appendChild",["scriptTag"]],[".","pending","wait","false"]],[[".","js","g"],["set[","jsScripts","libpath",[".","js","r",["libpath"]]]]],["nsactive","savens"],["deref","jsScripts","libpath"]]),e._SetBindingList("JSONparse",["function","JSONparse",["str"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"parse",["str"]]]),e._SetBindingList("JSONstringify",["function","JSONstringify",["obj"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"stringify",["obj"]]]),e._SetBindingList("JsonParse",["function","JsonParse",["data"],["global","exception"],["catch",[["=","data",["JSONparse","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("JsonStringify",["function","JsonStringify",["data"],["global","exception"],["catch",[["=","data",["JSONstringify","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("EncodeBase64",["function","EncodeBase64",["data","false","blob","reader","pending","result"],[["not","data"],"$"],[[".","js","g"],[".",[".",[".",[".","js","g"],"Buffer"],"from",["data","$binary"]],"toString",["$base64"]]],[["xobject","data"],["=","blob",["xnew",[".",[".","js","w"],"Blob"],{array:["data"]}]],["=","reader",["xnew",[".",[".","js","w"],"FileReader"]]],["=","pending",["new","nonce"]],["set.","reader",["`","onload"],["function","lambda",["event"],[".","pending","signal",[[".",[".","event","target"],"result"]]]]],[".","reader","readAsDataURL",["blob"]],["=","result",[".","pending","wait","false"]],[".","result","slice",[37]]],[".",[".","js","w"],"btoa",["data"]]]),e._SetBindingList("DecodeBase64",["function","DecodeBase64",["data","false","error","resp","blob"],[["not","data"],["xnew"]],[[".","js","g"],[".",[".",[".","js","g"],"Buffer"],"from",["data","$base64"]]],["=",["error","resp"],["await",[".",[".","js","w"],"fetch",[["strcat","$data:application/octet-stream;base64,","data"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","resp","blob","false"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","blob","arrayBuffer","false"]]]]],[[["not","error"],["=","blob",["xnew",[".",[".","js","w"],"Uint8Array"],"blob"]]]],[["identity","error"],["debuglog","$Packager.DecodeBase64 failed","error"],["xnew"]],"blob"]),e._SetBindingList("IsBinary",["function","IsBinary",["obj","false","jio"],["=","jio",[".",[".",[".","Naan","runtimelib"],"jsInstanceOf"],"proc"]],[[".","js","g"],["||",["jio","obj",[".",[".","js","g"],"Buffer"]],["jio","obj",[".",[".","js","g"],"ArrayBuffer"]],["jio","obj",[".",[".","js","g"],"DataView"]]]],["||",["jio","obj",[".",[".","js","w"],"Uint8Array"]],["jio","obj",[".",[".","js","w"],"ArrayBuffer"]],["jio","obj",[".",[".","js","w"],"Blob"]]]]),e._SetBindingList("HashMD5",["function","HashMD5",["data"],["global","crypto","js"],[[".","js","g"],[[["not",["xobject","crypto"]],["=","crypto",[".","js","r",["$crypto"]]]]],[["identity","crypto"],["catch",[[".",[".",[".","crypto","createHash",["$MD5"]],"update",["data"]],"digest",["$hex"]]],[[["identity","true"],["debuglog","$HashMD5 failed:","exception"],"false"]],"false"]]],["JsLoadScript","$frameworks/browser/spark-md5/spark-md5.min.js","$SparkMD5"],[["xobject","data"],[".",[".",[".",[".","js","w"],"SparkMD5"],"ArrayBuffer"],"hash",["data"]]],[".",[".",[".","js","w"],"SparkMD5"],"hash",["data"]]]),e._AddPropertyList("UtilInit",[["$.lingoInit","true"]]),e._SetBindingList("UtilInit",["function","UtilInit",["false","manifest"],["=","manifest",["`",["JsLoadScript","JSONparse","JSONstringify","JsonParse","JsonStringify","EncodeBase64","DecodeBase64","IsBinary","HashMD5","UtilInit"]]],[".",[".","Naan","module"],"build",["$Util","$Util",["function","lambda",["modobj","compobj"],["=","JSpath",[".","js","r",["$path"]]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","JSpath"],"JSpath"],["set.",[".","modobj","exports"],["`","JsLoadScript"],"JsLoadScript"],["set.",[".","modobj","exports"],["`","JSONstringify"],"JSONstringify"],["set.",[".","modobj","exports"],["`","JSONparse"],"JSONparse"],["set.",[".","modobj","exports"],["`","JsonStringify"],"JsonStringify"],["set.",[".","modobj","exports"],["`","JsonParse"],"JsonParse"],["set.",[".","modobj","exports"],["`","EncodeBase64"],"EncodeBase64"],["set.",[".","modobj","exports"],["`","DecodeBase64"],"DecodeBase64"],["set.",[".","modobj","exports"],["`","IsBinary"],"IsBinary"],["set.",[".","modobj","exports"],["`","HashMD5"],"HashMD5"]]]]]),e._Execute(["UtilInit"]),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._Import("number","mod","%"),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:{}}],["put",[".","modobj","exports"],["`","module"],"modobj"],["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:{$naanlib:"$"}}],["set.","modules",["`","extensions"],{array:["$nlg","$npk"]}],["set.","modules",["`","queryString"],"$"],["function","reload",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"reload","false"]],[[["identity","true"],"false"]],"false"]],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"postload","false"]],[[["identity","true"],"false"]],"false"]]],["loadNotify","reload"],["function","resave",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"resave","false"]],[[["identity","true"],"false"]],"false"]]],["saveNotify","resave"],["set.","modules",["`","moduleProc"],["function","moduleProc",["modid"],[["not","modid"],["keys",[".","modules","list"]]],["deref",[".","modules","list"],"modid"]]],["set.","modules",["`","find"],["function","find",["test","false","modobj","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"],"false"],["=","modobj",["xget",[".","modules","list"],["pop","mkeys"]]],[["test","modobj"],"modobj"]]]],["set.","modules",["`","letinherit"],["function","letinherit",["modfrom","false","modto","curac","nsfrom","nsto"],["=","curac",["nsactive"]],[[["string","modfrom"],["=","modfrom",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modfrom"]]]]]],[["not","modfrom"],"false"],["=","modto",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],["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","locin","ns","parent","pathobj","locpath","modname","modobj","compname","compath","compobj","error","presult","returner","extensions","pathext","query","hostpath"],["sprint"],[[["&&","options",["not",["dictionary","options"]]],["throw",["Error",[".","$require(","concat",["fpath","$): invalid options"]]]]]],["=","locin",[".","fpath","split",["$:"]]],[[["==",[".","locin","length"],2],["=","fpath",[".","locin",1]],["=","locin",[".","locin",0]]],["=","locin",[".","options","in"]]],["=","ns",["||",[".","options","parent"],["nscaller"]]],["=","parent",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],"ns"]]]],["=","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"]]],[[["||",["==","modname","$."],["==","modname","$.."]],["=","modname","$"]]],[[["identity","locin"],["=","presult",["deref",[".","modules","locations"],"locin"]],[[["not","presult"],["throw",["Error",[".","$require(","concat",["fpath","$): in:","locin","$ undefined"]]]]]],["=","locpath",[".","JSpath","resolve",["presult","locpath"]]]],[["&&",["!=",[".","pathobj","ext"],"$"],["==","locpath","$"]],["=","locpath",[".","parent","locpath"]]],[["&&",[".",["RegExp","$^[.][.]?[/\\\\]"],"test",["fpath"]],[".","parent","locpath"]],["=","locpath",[".","JSpath","join",[[".","parent","locpath"],"locpath"]]]]],[[["not","locpath"],["=","locpath","$"]]],["set.","pathobj",["`","dir"],"locpath"],["=","compname",[".","pathobj","name"]],[[["&&","locpath",["!=","locpath","$"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","locpath"],"locpath"]]]]]],[[["not","modobj"],[["==","modname","$"],["=","modobj","parent"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]]]],[[["&&",["not",[".","options","read"]],["not",[".","options","reload"]],["deref",[".","modobj","components"],"compname"]],["return",[".","modobj","exports"]]]],["=","returner",["makeReturner"]],["catch",[["=","extensions",["new",[".","modules","extensions"]]],["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"]]],[[["not","modobj"],["=","modobj",["makeModule","modname"]]]],["=","query",[".","options","query"]],[[["not","query"],["=","query",[".","modules","queryString"]]]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]]]]],[[[".","options","source"],[["string",[".","options","source"]],["=","presult",[".","options","source"]]],["=",["error","presult"],["call",[".","options","source"],"compath","query"]]],[["identity","hostpath"],["=",["error","presult"],["modWebReadFile","compath","hostpath","query"]]],["=",["error","presult"],["modNodeReadFile","compath"]]],[[[">",["length","presult"],0],[[["==",[".","modobj","locpath"],"$"],["set.","modobj",["`","locpath"],"locpath"]]],[[[".","options","read"],["return","presult"]]],["=","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: "]],"compath","error"]],["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",["`","defineExt"],["function","defineExt",["ext","reset","false","value"],[[["not","ext"],["=","value",[".","modules","extensions"]]]],[[["identity","reset"],["set.","modules",["`","extensions"],{array:[]}]]],[[["identity","ext"],[".",[".","modules","extensions"],"push",["ext"]],["=","value",[".","modules","extensions"]]]],"value"]],["set.","modules",["`","requireQuery"],["function","requireQuery",["query"],[["not","query"],[".","modules","queryString"]],["set.","modules",["`","queryString"],["modEncodeQuery","query"]]]],["set.","modules",["`","build"],["closure","build","args",["call",["function","lambda",["modname","compname","proc","args","false","modobj","compobj","curactns","presult","returner"],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]],[[["identity","modobj"]],[["==",["namespace",["car","curactns"]],"modname"],["=","modobj",["makeModule","modname",["car","curactns"]]]],["=","modobj",["makeModule","modname"]]],[[["not","compname"],["=","compname","modname"]]],["=","compobj",["deref",[".","modobj","components"],"compname"]],[[["not","compobj"],["=","compobj",[".","modobj","makeComponent",["compname"]]]]],["catch",[[[["identity","proc"],[".","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","create","false","modobj"],["=","name",["tostring","name"]],[[["||",["not","name"],["==","name","$"]],["printline","$modules: ",["keys",[".","modules","list"]]],["return","false"]]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"name"]]]],[[["not","modobj"],[["identity","create"],["build","name"],["return",["changeModNS","name"]]],["printline","$can't find ","name","$ -- please select from ",["keys",[".","modules","list"]]],["return","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("modEncodeQuery",["function","modEncodeQuery",["query","false","result","qkeys","item"],[[["not",["dictionary","query"]],["return","query"]]],["=","result",{array:[]}],["=","qkeys",["keys","query"]],["loop","false",[["empty","qkeys"]],["=","item",["pop","qkeys"]],[".","result","push",[[".",[".",[".","js","w"],"encodeURIComponent",["item"]],"concat",["$=",[".",[".","js","w"],"encodeURIComponent",[["deref","query","item"]]]]]]]],["=","result",[".","result","join",["$&"]]],[[">",[".","result","length"],0],[".","$?","concat",["result"]]],"result"]),e._SetBindingList("modAwait",["closure","modAwait",["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("modWebReadFile",["closure","modWebReadFile",["filename","href","query","false","url","error","response","content"],[[["not","href"],["=","url","filename"]],[[["not",[".","href","endsWith",["$/"]]],["=","href",[".","href","concat",["$/"]]]]],[[[".","filename","startsWith",["$/"]],["=","filename",[".","filename","slice",[1]]]]],["=","url",[".","href","concat",["filename",["modEncodeQuery","query"]]]]],["=",["error","response"],["modAwait",[".",[".","js","w"],"fetch",["url",{dictionary:{$mode:"$cors",$cache:"$no-cache",$credentials:"$same-origin",$headers:{dictionary:{}},$redirect:"$follow",$referrerPolicy:"$no-referrer"}}]]]],[[["!=",[".","response","status"],200],["=","error",["Error","$modWebReadFile failed:","url",[".","response","status"]]]],[["not","error"],["=",["error","content"],["modAwait",[".","response","text","false"]]]]],[["identity","error"],["list","error"]],["list","false","content"]]),e._SetBindingList("modWebParseFile",["closure","modWebParseFile",["filename","href","query","false","error","text"],["=",["error","text"],["modWebReadFile","filename","href","query"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modNodeReadFile",["closure","modNodeReadFile",["filename","false","fs","locpath","error","error2","text"],["function","readFileSync",["path","false","pending"],["=","pending",["new","nonce"]],[".","fs","readFile",["path",{dictionary:{$encoding:"$utf8"}},["function","lambda",["error","data"],[[["identity","error"],["=","error",["Error","$modNodeReadFile failed:","path","error"]]]],[".","pending","signal",[["list","error","data"]]]]]],[".","pending","wait","false"]],["=","fs",[".","js","r",["$fs"]]],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"filename"]]],["=",["error","text"],["readFileSync","locpath"]],[[["identity","error"],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"$../","filename"]]],["=",["error2","text"],["readFileSync","locpath"]],[["not","error2"],["=","error","false"]]]],["list","error","text"]]),e._SetBindingList("modNodeParseFile",["closure","modNodeParseFile",["filename","false","error","text"],["=",["error","text"],["modNodeReadFile","filename"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["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"]]]],[[["identity","true"],["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","concat",["$\\r"]]]],["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","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("saveNotify",["function","saveNotify",["recipient"],[[["not",["member","recipient","saveNotifyList"]],["push","recipient","saveNotifyList"]]],"true"]),e._SetBindingList("SaveTrap",["function","SaveTrap",["false","trav","tell"],["=","tell",[".","saveNotifyList","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","modEncodeQuery","modAwait","modWebReadFile","modWebParseFile","modNodeReadFile","modNodeParseFile","modDriver","letlocal","letimport","makeExport","makeReturner","loadNotify","loadTrap","saveNotify","SaveTrap","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"],["`","defineExt"],[".",[".","modules","defineExt"],1]],["set.",[".","Naan","module"],["`","requireQuery"],[".",[".","modules","requireQuery"],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"],["set.",[".","Naan","module"],["`","SaveNotify"],"saveNotify"],["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","nslist","defCommander"],["=","debug",["new","object","this"]],["=","nslist",["nsactive","true"]],["set.","debug",["`","nshidden"],["list",[".","nslist",0],[".","nslist",1],[".",[".",[".",[".","module","owner"],"list"],"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","ftrav","procdef","bodydef"],[[["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"]],[[["ErrorObject","except"],["=","except",["ErrorString","except"]]]],["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"],["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"]],[[["xobject",["deref","item","key"]],["continue"]]],[[["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","$module"]],[["==","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",["err"],["&&",["dictionary","err"],["==",[".","err","error"],"$Naan Error"]]]),e._SetBindingList("ErrorString",["function","ErrorString",["nanerr"],[["string","nanerr"],"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("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("pkgSave",["function","pkgSave",["pkgname","roots","options","false","pkgns","goodns","registry","xlate","storenum","wmapSymbol","wmapUnintern","mapString","mapInteger","mapFloat","wmapArray","wmapDictionary","mapList","wmapProcedure","mapDialect","mapBinary","mapXobject","wmapObject","indexValue","listSymbol","listUnintern","listString","listInteger","listFloat","listArray","listDictionary","listList","listProcedure","listDialect","listBinary","listXobject","listObject","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"]]],["debuglog","$pkgSave: cannot save non-default binding for well-known symbol ","expr"],["set[","reported","expr","true"]]],[["&&",["not",[".","options","nsignore"]],["not",["deref","reported","expr"]]],["debuglog","$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"]],[["xobject","expr"],[["IsBinary","expr"],["=","key",["HashMD5","expr"]],[["not","key"],["debuglog",["strcat","$pkgSave: cannot save binary - ","expr"]],1],[["deref","mapBinary","key"]],["set[","mapBinary","key",["preadjust","storenum","+",1]],["push","key","listBinary"],["set[","indexValue","storenum",["EncodeBase64","expr"]],"storenum"],["=",["error","key"],["JsonStringify","expr"]],[["identity","error"],["ErrorDebuglog",["strcat","$pkgSave: cannot save xobject - ","expr"],"error"],1],[["deref","mapXobject","key"]],["set[","mapXobject","key",["preadjust","storenum","+",1]],["push","key","listXobject"],["set[","indexValue","storenum","key"],"storenum"],[["object","expr"],[["deref","wmapObject","expr"]],["=","key",["storeObject","expr"]],["set[","wmapObject","expr",["preadjust","storenum","+",1]],["push","expr","listObject"],["set[","indexValue","storenum","key"],"storenum"],[[["not",["deref","reported","expr"]],["debuglog",["strcat","$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","storeObject",["obj","false","ident"],["=","ident",["call",[".","options","objectEncoder"],"obj"]],[[["not","ident"],["=","ident",{dictionary:{$name:["||",["get","obj","\\.closure"],"undefined"]}}]]],["store","ident"]],["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"],["buildXlate","listBinary","mapBinary"],["buildXlate","listXobject","mapXobject"],["buildXlate","listObject","wmapObject"],"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"],["makeAtom","listBinary","mapBinary"],["makeAtom","listXobject","mapXobject"],["makeList","listObject","wmapObject"]]],["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"],["=","options",["merge",{dictionary:{$comments:"true"}},"options"]],["=","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"]],["=","mapBinary",["new","dictionary"]],["=","mapXobject",["new","dictionary"]],["=","wmapObject",["new","weakmap"]],["=","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,2,"pkgname",[".","options","prereqs"]]],["list","header",["saveMaps"],["renumber","rootnum"],["renumber","syms"]]]]]),e._SetBindingList("pkgDecode",["function","pkgDecode",["pkg","options","false","registry","maxdepth","mapSymbol","mapUnintern","mapString","mapInteger","mapFloat","mapDictionary","mapArray","mapList","mapProcedure","mapDialect","mapBinary","mapXobject","mapObject","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","lookupObject",["key","depth","false","ident","obj"],["=","ident",["lookup",["deref","mapObject","key"],"depth"]],["=","obj",["call",[".","options","objectDecoder"],"ident"]],[[["not","obj"],[[".","ident","name"],["putproc",[".","ident","name"],"false"],["=","obj",["call",["closure","lambda",["nn"],["call",["enclose",["list",["`","closure"],"nn",["`",["local","x"]],["quote",["=","x",["new","object","nn"]]],["quote",["put","x","\\.tostring",["function","lambda","false",["strcat","${blank-proxy ","nn","$}"]]]],["quote",["put","x","\\.undefined",["function","undef","args",["debuglog",["strcat","$call to {blank-proxy ","nn","$}.",[".","args",0],["||",[".","args",-1],"$()"],"$ ignored"]]]]],"x"]]]],[".","ident","name"]]]],["=","obj",["new","object"]]]],"obj"],["function","lookup",["expr","depth","false","key","sexpr","result","cachekey","error","data"],[[["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"]],[[["symbol","sexpr"],"sexpr"],[["==","sexpr","$undefined"],"undefined"],[["==","sexpr","$null"],"null"],[["||",[".","options","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]]],["preadjust","key","-",[".","mapDialect","length"]],[["<","key",[".","mapBinary","length"]],["DecodeBase64",["deref","mapBinary","key"]]],["preadjust","key","-",[".","mapBinary","length"]],[[["<","key",[".","mapXobject","length"]],["=",["error","data"],["JsonParse",["deref","mapXobject","key"]]],[[["identity","error"],["ErrorDebuglog","$pkgDecode: xobject decode failed","error"],"false"],"data"],["break"]]],["preadjust","key","-",[".","mapXobject","length"]],[["<","key",[".","mapObject","length"]],["lookupObject","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",2],[[["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]]],["=","mapBinary",["new","array",[".",[".","pkg",1],11]]],["=","mapXobject",["new","array",[".",[".","pkg",1],12]]],["=","mapObject",["new","array",[".",[".","pkg",1],13]]],["=","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"]],[[["atom","exlist"],["debuglog",[".","$pkgLoad error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["debuglog","$invalid symbol: ","state"]],[[[".","options","intern"],["=","sym",["compress",[".","state",0]]],[["not",["eq",[".","sym","namespace"],[".",["nsactive"],0]]],[[".","options","localroots"],["=","sym",["car",["letlocal","sym"]]]],["debuglog","$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"]],["debuglog","$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","proc"],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["debuglog",[".","$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]]]],["debuglog","$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",["`",["makeSourceString","pkgSave","pkgDecode","pkgExamine","pkgLoad","pkgToJsSource","PackagerInit"]]],[".",[".","Naan","module"],"build",["$Util","$Packager",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","pkgSave"],"pkgSave"],["set.",[".","modobj","exports"],["`","pkgExamine"],"pkgExamine"],["set.",[".","modobj","exports"],["`","pkgLoad"],"pkgLoad"],["set.",[".","modobj","exports"],["`","pkgToJsSource"],"pkgToJsSource"]]]]]),e._Execute(["PackagerInit"]),e._SetBindingList("JsLoadScript",["closure","JsLoadScript",["libpath","globalID","false","savens","hostpath","pending","scriptTag"],["global","jsScripts","JSpath","js"],[[["deref","jsScripts","libpath"],["return"]]],["=","savens",["nsactive"]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","join",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]],"libpath"]]]]],[[["&&",[".",[".","js","s"],"importScripts"],["==",["tostring",[".",[".","js","s"],"importScripts"]],"$[Function importScripts]"]],["catch",[[".",[".","js","s"],"importScripts",["hostpath"]],["set[","jsScripts","libpath",["deref",[".","js","s"],"globalID"]]],[[["identity","true"],["debuglog","$JsLoadScript:","libpath","$failed","exception"],[".",[".",[".","js","s"],"console"],"log",["$JsLoadScript:","libpath","$failed","exception"]]]],"false"]],[[".","js","w"],["=","pending",["new","nonce"]],["=","scriptTag",[".",[".",[".","js","w"],"document"],"createElement",["$script"]]],["set.","scriptTag",["`","src"],[".","hostpath","concat",[["requireQuery"]]]],["set.","scriptTag",["`","onload"],["function","lambda",["event"],["set[","jsScripts","libpath",["deref",[".","js","w"],"globalID"]],[".","pending","signal",[["deref",[".","js","w"],"globalID"]]],"true"]],["set.","scriptTag",["`","onerror"],["function","lambda",["event"],["debuglog","$JsLoadScript:","libpath","$not found"],[".","pending","signal",["false"]],"true"]],[".",[".",[".",[".","js","w"],"document"],"body"],"appendChild",["scriptTag"]],[".","pending","wait","false"]],[[".","js","g"],["set[","jsScripts","libpath",[".","js","r",["libpath"]]]]],["nsactive","savens"],["deref","jsScripts","libpath"]]),e._SetBindingList("JSONparse",["function","JSONparse",["str"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"parse",["str"]]]),e._SetBindingList("JSONstringify",["function","JSONstringify",["obj"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"stringify",["obj"]]]),e._SetBindingList("JsonParse",["function","JsonParse",["data"],["global","exception"],["catch",[["=","data",["JSONparse","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("JsonStringify",["function","JsonStringify",["data"],["global","exception"],["catch",[["=","data",["JSONstringify","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("EncodeBase64",["function","EncodeBase64",["data","false","blob","reader","pending","result"],[["not","data"],"$"],[[".","js","g"],[".",[".",[".",[".","js","g"],"Buffer"],"from",["data","$binary"]],"toString",["$base64"]]],[["xobject","data"],["=","blob",["xnew",[".",[".","js","w"],"Blob"],{array:["data"]}]],["=","reader",["xnew",[".",[".","js","w"],"FileReader"]]],["=","pending",["new","nonce"]],["set.","reader",["`","onload"],["function","lambda",["event"],[".","pending","signal",[[".",[".","event","target"],"result"]]]]],[".","reader","readAsDataURL",["blob"]],["=","result",[".","pending","wait","false"]],[".","result","slice",[37]]],[".",[".","js","w"],"btoa",["data"]]]),e._SetBindingList("DecodeBase64",["function","DecodeBase64",["data","false","error","resp","blob"],[["not","data"],["xnew"]],[[".","js","g"],[".",[".",[".","js","g"],"Buffer"],"from",["data","$base64"]]],["=",["error","resp"],["await",[".",[".","js","w"],"fetch",[["strcat","$data:application/octet-stream;base64,","data"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","resp","blob","false"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","blob","arrayBuffer","false"]]]]],[[["not","error"],["=","blob",["xnew",[".",[".","js","w"],"Uint8Array"],"blob"]]]],[["identity","error"],["debuglog","$Packager.DecodeBase64 failed","error"],["xnew"]],"blob"]),e._SetBindingList("IsBinary",["function","IsBinary",["obj","false","jio"],["=","jio",[".",[".",[".","Naan","runtimelib"],"jsInstanceOf"],"proc"]],[[".","js","g"],["||",["jio","obj",[".",[".","js","g"],"Buffer"]],["jio","obj",[".",[".","js","g"],"ArrayBuffer"]],["jio","obj",[".",[".","js","g"],"DataView"]]]],["||",["jio","obj",[".",[".","js","w"],"Uint8Array"]],["jio","obj",[".",[".","js","w"],"ArrayBuffer"]],["jio","obj",[".",[".","js","w"],"Blob"]]]]),e._SetBindingList("HashMD5",["function","HashMD5",["data"],["global","crypto","js"],[[".","js","g"],[[["not",["xobject","crypto"]],["=","crypto",[".","js","r",["$crypto"]]]]],[["identity","crypto"],["catch",[[".",[".",[".","crypto","createHash",["$MD5"]],"update",["data"]],"digest",["$hex"]]],[[["identity","true"],["debuglog","$HashMD5 failed:","exception"],"false"]],"false"]]],["JsLoadScript","$frameworks/browser/spark-md5/spark-md5.min.js","$SparkMD5"],[["xobject","data"],[".",[".",[".",[".","js","w"],"SparkMD5"],"ArrayBuffer"],"hash",["data"]]],[".",[".",[".","js","w"],"SparkMD5"],"hash",["data"]]]),e._AddPropertyList("UtilInit",[["$.lingoInit","true"]]),e._SetBindingList("UtilInit",["function","UtilInit",["false","manifest"],["=","manifest",["`",["JsLoadScript","JSONparse","JSONstringify","JsonParse","JsonStringify","EncodeBase64","DecodeBase64","IsBinary","HashMD5","UtilInit"]]],[".",[".","Naan","module"],"build",["$Util","$Util",["function","lambda",["modobj","compobj"],["=","JSpath",[".","js","r",["$path"]]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","JSpath"],"JSpath"],["set.",[".","modobj","exports"],["`","JsLoadScript"],"JsLoadScript"],["set.",[".","modobj","exports"],["`","JSONstringify"],"JSONstringify"],["set.",[".","modobj","exports"],["`","JSONparse"],"JSONparse"],["set.",[".","modobj","exports"],["`","JsonStringify"],"JsonStringify"],["set.",[".","modobj","exports"],["`","JsonParse"],"JsonParse"],["set.",[".","modobj","exports"],["`","EncodeBase64"],"EncodeBase64"],["set.",[".","modobj","exports"],["`","DecodeBase64"],"DecodeBase64"],["set.",[".","modobj","exports"],["`","IsBinary"],"IsBinary"],["set.",[".","modobj","exports"],["`","HashMD5"],"HashMD5"]]]]]),e._Execute(["UtilInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
44
44
 
45
45
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
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.BootStart=function(t){t._SetNamespace("Start");var e=t._InheritNamespace("Lang_Lingo");t._SetBindingList("StartInit",["function","StartInit",["false","manifest","export"],["=","manifest",["`",["StartInit"]]],[".",[".","Naan","module"],"build",["$Start","$Start",["function","lambda",["modobj","compobj"],["xset","compobj",["`","manifest"],"manifest"]]]]]),t._Execute(["StartInit"]),t._SetNamespace(e)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
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._SetBindingList("mu",["function","mu",!1,["`","mu"]]),t._Export("local","mu")},t.BootStart=function(t){t._SetNamespace("Start");var e=t._InheritNamespace("Lang_Lingo");t._SetBindingList("StartInit",["function","StartInit",["false","manifest","export"],["=","manifest",["`",["StartInit"]]],[".",[".","Naan","module"],"build",["$Start","$Start",["function","lambda",["modobj","compobj"],["xset","compobj",["`","manifest"],"manifest"]]]]]),t._Execute(["StartInit"]),t._SetNamespace(e)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
47
47
 
48
48
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
49
49
  !function(c){c.Naanlib=function t(){"use strict";if(!(this instanceof t))return new t;function n(t,e){return t?c:c.require?c.require(e):require(e)}var o,i,e=n(c.NaanInterpreter,"./naan_interpreter.js"),r="",s=!1,u=new e.NaanInterpreter,a=100;this.escape=function(){u.Escape(),d()},this.onText=function(t){o=t},this.textLine=function(t){s=!0,r+=t,d()},this.status=function(t){return u.Status(t)},this.saveState=function(t){return u.StateSave(t)},this.banner=function(){return u.Banner()},this.start=function(t){var e="\n";if(t){if("string"==typeof t.state&&!u.StateLoad(t.state))return!1;"string"==typeof t.cmd&&(e=t.cmd),(t.noWelcome||"undefined"!=typeof process&&!process.stdin.isTTY)&&(a=!1)}return t&&"string"==typeof t.state||i||((i=n(c.BootRoot,"./naan_start.js")).BootRoot(u),n(c.BootModule,"./naan_module.js").BootModule(u),n(c.BootLingo,"./naan_lingo.js").BootLingo(u),i.BootStart(u)),u.Process(e,!1,a),100==a&&(a=101),function(){for(var t;""!==(t=u.RunOutput())&&o&&o(t),u.Run(););}(),d(),!0};var f={n:u,o:Object,i:function(t){return import(t)}};function d(){var t=0;if(!u.Run()){if(0===r.length)return void(t=0);var e=r;r="",u.Process(e,s,a),100==a&&(a=101)}"undefined"!=typeof setImmediate?setImmediate(d):(setTimeout(d,0),1==++t&&setTimeout(function(){d()},2))}this.js=f,"undefined"!=typeof window?(f.w=window,f.r=c.require):"undefined"!=typeof self?(f.w=self,f.s=self,f.r=c.require):"undefined"!=typeof global&&("undefined"!=typeof __dirname&&(f.d=__dirname),f.g=global,f.r=require),u.On("init-load",function(){u._AddNamedObject("js",f)}),u.On("console-out",function(t,e){o&&o(e)}),u.On("interrupted",function(t){Promise.resolve().then(d)}),u.On("debug-write",function(t,e){o&&o(t,e)}),u.StateDefault()}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);