diff --git a/bower.json b/.bower.json similarity index 78% rename from bower.json rename to .bower.json index 1611be9943..22cf3a5077 100644 --- a/bower.json +++ b/.bower.json @@ -1,7 +1,7 @@ { "name": "alasql", - "description":"JavaScript SQL database library", - "version": "0.0.38", + "description":"AlaSQL - JavaScript SQL database library", + "version": "0.0.48", "license": "MIT", "keywords": ["javascript","sql","database","indexeddb","excel","localstorage"], "authors": ["Andrey Gershun "], diff --git a/.gitattributes b/.gitattributes index e65f57c91e..c775eb550d 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,5 +1,9 @@ alacon.js text eol=lf alaserver.js text eol=lf +alasql.js binary +alasql.js.map binary +alasql.min.js binary + *.xlsx binary *.xls binary diff --git a/CHANGELOG.md b/CHANGELOG.md index 787bd53707..a28d843ac7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +### 0.0.48 "Amsterdam" (18.04.2015 - 19.04.2015) +* Fixed bug indexedDB.webGetDatabaseNames in Firefox +* Some bugs from Sqllogictest fixed (see test258) +* Bower package registered +* Fixed CASE bonding query to this error + ### 0.0.47 "Antalya" (16.04.2015 - 18.04.2015) * Added CORRESPONDING keyword to the grammas * Fixed export to Excel - with data types diff --git a/README.md b/README.md index d260cf67cf..2eee8c8e6b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # AlaSQL.js - JavaScript SQL database library with support of localStorage, IndexedDB, and Excel -Version: 0.0.47 "Antalya" Date: April 18, 2015 [Change log](CHANGELOG.md), [Release plan](RELEASES.md) +Version: 0.0.48 "Amsterdam" Date: April 19, 2015 [Change log](CHANGELOG.md), [Release plan](RELEASES.md) Please use [AlaSQL Forum](https://groups.google.com/d/forum/alasql) for discussions or [Issues](https://github.com/agershun/alasql/issues) to report bugs. diff --git a/alasql.js b/alasql.js index 6cf610cd85..906e632d44 100755 --- a/alasql.js +++ b/alasql.js @@ -1,8 +1,8 @@ // // alasql.js // AlaSQL - JavaScript SQL database -// Date: 16.04.2015 -// Version: 0.0.47 +// Date: 19.04.2015 +// Version: 0.0.48 // (ñ) 2014-2015, Andrey Gershun // @@ -111,7 +111,7 @@ var alasql = function(sql, params, cb, scope) { }; /** Current version of alasql */ -alasql.version = "0.0.47"; +alasql.version = "0.0.48"; @@ -189,12 +189,12 @@ alasql.version = "0.0.47"; } */ var parser = (function(){ -var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[1,151],$V81=[4,5],$V91=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Va1=[1,167],$Vb1=[1,175],$Vc1=[1,174],$Vd1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Ve1=[1,206],$Vf1=[1,199],$Vg1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vh1=[2,74],$Vi1=[1,220],$Vj1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vk1=[1,236],$Vl1=[1,232],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,237],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,252],$VE1=[1,253],$VF1=[1,255],$VG1=[1,254],$VH1=[1,256],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[2,197],$VM1=[1,263],$VN1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VO1=[2,255],$VP1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VQ1=[1,271],$VR1=[1,281],$VS1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VT1=[1,297],$VU1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,102,104,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,258,259,260,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VV1=[1,304],$VW1=[1,305],$VX1=[2,368],$VY1=[1,310],$VZ1=[8,9,11,61,202,206],$V_1=[2,420],$V$1=[1,321],$V02=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V12=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22=[2,110],$V32=[1,349],$V42=[61,80],$V52=[8,9,11,61,65,192,202,206,229,247,259,275,276,279,280,292],$V62=[79,236,237],$V72=[1,414],$V82=[1,420],$V92=[1,421],$Va2=[1,431],$Vb2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vc2=[2,270],$Vd2=[1,438],$Ve2=[202,204,206],$Vf2=[61,323],$Vg2=[61,321,323],$Vh2=[1,445],$Vi2=[61,321],$Vj2=[4,5,96,191],$Vk2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vl2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vm2=[1,512],$Vn2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vo2=[2,180],$Vp2=[1,514],$Vq2=[1,515],$Vr2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vs2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[1,537],$Vy2=[61,65],$Vz2=[2,195],$VA2=[1,577],$VB2=[8,9,11,65,135,136,137,139,145,202,206],$VC2=[8,9,11,61,65,124,125,135,136,137,139,145,202,206],$VD2=[1,592],$VE2=[1,593],$VF2=[1,595],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,606],$VO2=[1,617],$VP2=[8,9,11,61,124,202,204,206,356],$VQ2=[1,625],$VR2=[1,624],$VS2=[2,233],$VT2=[1,646],$VU2=[2,437],$VV2=[1,667],$VW2=[1,679],$VX2=[8,9,11,61,202,204,206,356],$VY2=[1,682],$VZ2=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V_2=[8,9,11,65,135,136,137,145,202,206],$V$2=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V03=[1,696],$V13=[1,698],$V23=[4,5,64,193,195,196,197,198],$V33=[8,9,11,202,204,206,356],$V43=[214,219],$V53=[1,738],$V63=[8,9,11,61,65,202,206],$V73=[1,754],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,773],$Va3=[1,774],$Vb3=[1,775],$Vc3=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,805],$Ve3=[1,818],$Vf3=[1,819],$Vg3=[1,817],$Vh3=[1,815],$Vi3=[1,821],$Vj3=[1,812],$Vk3=[1,813],$Vl3=[1,814],$Vm3=[1,816],$Vn3=[1,825],$Vo3=[1,830],$Vp3=[1,831],$Vq3=[1,832],$Vr3=[1,833],$Vs3=[78,86,275,276,277,279],$Vt3=[2,380],$Vu3=[1,838],$Vv3=[8,9,11,65,202,206],$Vw3=[1,851],$Vx3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vy3=[1,868],$Vz3=[1,867],$VA3=[8,9,11,202,206,247,258,259,260],$VB3=[1,921],$VC3=[8,9,11,61,65,135,136,137,145,202,206],$VD3=[1,938]; +var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[253,309],$V81=[1,152],$V91=[4,5],$Va1=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Vb1=[1,168],$Vc1=[1,176],$Vd1=[1,175],$Ve1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vf1=[1,207],$Vg1=[1,200],$Vh1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vi1=[2,74],$Vj1=[1,221],$Vk1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vl1=[1,237],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,236],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,251],$VE1=[1,253],$VF1=[1,254],$VG1=[1,256],$VH1=[1,255],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[1,260],$VM1=[2,198],$VN1=[1,264],$VO1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VP1=[2,256],$VQ1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VR1=[1,272],$VS1=[1,282],$VT1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VU1=[1,298],$VV1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,101,103,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,259,260,261,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VW1=[1,305],$VX1=[1,306],$VY1=[2,369],$VZ1=[1,311],$V_1=[8,9,11,61,202,206],$V$1=[2,421],$V02=[1,322],$V12=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V22=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32=[2,111],$V42=[1,350],$V52=[61,80],$V62=[8,9,11,61,65,192,202,206,229,247,260,275,276,279,280,292],$V72=[79,236,237],$V82=[1,415],$V92=[1,421],$Va2=[1,422],$Vb2=[1,432],$Vc2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vd2=[2,271],$Ve2=[1,439],$Vf2=[202,204,206],$Vg2=[61,323],$Vh2=[61,321,323],$Vi2=[1,446],$Vj2=[61,321],$Vk2=[4,5,96,191],$Vl2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vm2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vn2=[1,514],$Vo2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vp2=[2,181],$Vq2=[1,516],$Vr2=[1,517],$Vs2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vy2=[1,539],$Vz2=[61,65],$VA2=[2,196],$VB2=[1,578],$VC2=[8,9,11,65,135,136,137,139,145,202,206],$VD2=[1,589],$VE2=[1,593],$VF2=[1,594],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,603],$VO2=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$VP2=[1,608],$VQ2=[1,619],$VR2=[8,9,11,61,124,202,204,206,356],$VS2=[1,627],$VT2=[1,626],$VU2=[2,234],$VV2=[1,648],$VW2=[2,438],$VX2=[1,669],$VY2=[1,678],$VZ2=[8,9,11,61,202,204,206,356],$V_2=[1,681],$V$2=[8,9,11,65,135,136,137,145,202,206],$V03=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V13=[1,695],$V23=[1,697],$V33=[4,5,64,193,195,196,197,198],$V43=[8,9,11,202,204,206,356],$V53=[214,219],$V63=[1,738],$V73=[8,9,11,61,65,202,206],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,775],$Va3=[1,776],$Vb3=[1,777],$Vc3=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,808],$Ve3=[1,821],$Vf3=[1,822],$Vg3=[1,820],$Vh3=[1,818],$Vi3=[1,824],$Vj3=[1,815],$Vk3=[1,816],$Vl3=[1,817],$Vm3=[1,819],$Vn3=[1,828],$Vo3=[8,9,11,61,65,135,136,137,145,202,206],$Vp3=[8,9,11,65,202,206],$Vq3=[1,845],$Vr3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vs3=[1,862],$Vt3=[1,861],$Vu3=[1,891],$Vv3=[1,892],$Vw3=[1,893],$Vx3=[1,894],$Vy3=[78,86,275,276,277,279],$Vz3=[2,381],$VA3=[1,899],$VB3=[1,925],$VC3=[8,9,11,202,206,247,259,260,261],$VD3=[1,1020],$VE3=[1,1030]; var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"Literal":3,"LITERAL":4,"BRALITERAL":5,"main":6,"Statements":7,"EOF":8,"SEMICOLON":9,"AStatement":10,"GO":11,"ExplainStatement":12,"EXPLAIN":13,"QUERY":14,"PLAN":15,"Statement":16,"If":17,"AlterTable":18,"AttachDatabase":19,"CreateDatabase":20,"CreateIndex":21,"CreateTable":22,"CreateView":23,"Declare":24,"Delete":25,"DetachDatabase":26,"DropDatabase":27,"DropIndex":28,"DropTable":29,"DropView":30,"Insert":31,"RenameTable":32,"Select":33,"Merge":34,"WithSelect":35,"ShowCreateTable":36,"ShowColumns":37,"ShowDatabases":38,"ShowIndex":39,"ShowTables":40,"TruncateTable":41,"BeginTransaction":42,"CommitTransaction":43,"RollbackTransaction":44,"EndTransaction":45,"UseDatabase":46,"Update":47,"Help":48,"JavaScript":49,"Source":50,"Assert":51,"While":52,"Continue":53,"Break":54,"BeginEnd":55,"Print":56,"Require":57,"SetVariable":58,"WITH":59,"WithTablesList":60,"COMMA":61,"WithTable":62,"AS":63,"LPAR":64,"RPAR":65,"SelectClause":66,"IntoClause":67,"FromClause":68,"WhereClause":69,"GroupClause":70,"OrderClause":71,"LimitClause":72,"UnionClause":73,"SelectModifier":74,"DISTINCT":75,"TopClause":76,"ResultColumns":77,"UNIQUE":78,"ALL":79,"SELECT":80,"VALUE":81,"ROW":82,"COLUMN":83,"MATRIX":84,"TEXTSTRING":85,"INDEX":86,"RECORDSET":87,"TOP":88,"NumValue":89,"PERCENT":90,"INTO":91,"Table":92,"FuncValue":93,"ParamValue":94,"VarValue":95,"STRING":96,"FROM":97,"FromTablesList":98,"FromTable":99,"JoinTablesList":100,"ApplyClause":101,"CROSS":102,"APPLY":103,"OUTER":104,"FromString":105,"DOT":106,"JoinTable":107,"JoinMode":108,"JoinTableAs":109,"OnClause":110,"JoinModeMode":111,"NATURAL":112,"JOIN":113,"INNER":114,"LEFT":115,"RIGHT":116,"FULL":117,"SEMI":118,"ANTI":119,"ON":120,"Expression":121,"USING":122,"ColumnsList":123,"WHERE":124,"GROUP":125,"BY":126,"GroupExpressionsList":127,"HavingClause":128,"GroupExpression":129,"GROUPING":130,"SETS":131,"ROLLUP":132,"CUBE":133,"HAVING":134,"UNION":135,"EXCEPT":136,"INTERSECT":137,"CORRESPONDING":138,"ORDER":139,"OrderExpressionsList":140,"OrderExpression":141,"DIRECTION":142,"COLLATE":143,"NOCASE":144,"LIMIT":145,"OffsetClause":146,"OFFSET":147,"ResultColumn":148,"TDTH":149,"TD":150,"TH":151,"NUMBER":152,"StringValue":153,"Star":154,"STAR":155,"Column":156,"AggrValue":157,"Op":158,"LogicValue":159,"NullValue":160,"ExistsValue":161,"CaseValue":162,"CastClause":163,"Json":164,"NewClause":165,"JAVASCRIPT":166,"NEW":167,"CAST":168,"ColumnType":169,"CONVERT":170,"PrimitiveValue":171,"CURRENT_TIMESTAMP":172,"Aggregator":173,"OverClause":174,"OVER":175,"OverPartitionClause":176,"OverOrderByClause":177,"PARTITION":178,"SUM":179,"COUNT":180,"MIN":181,"MAX":182,"AVG":183,"FIRST":184,"LAST":185,"AGGR":186,"ARRAY":187,"ExprList":188,"TRUE":189,"FALSE":190,"NSTRING":191,"NULL":192,"AT":193,"EXISTS":194,"DOLLAR":195,"COLON":196,"QUESTION":197,"BRAQUESTION":198,"CASE":199,"WhensList":200,"ElseClause":201,"END":202,"When":203,"WHEN":204,"THEN":205,"ELSE":206,"LIKE":207,"NOT_LIKE":208,"PLUS":209,"MINUS":210,"SLASH":211,"MODULO":212,"CARET":213,"ARROW":214,"GT":215,"GE":216,"LT":217,"LE":218,"EQ":219,"EQEQ":220,"EQEQEQ":221,"NE":222,"NEEQEQ":223,"NEEQEQEQ":224,"CondOp":225,"AllSome":226,"AND":227,"OR":228,"NOT":229,"IN":230,"ColFunc":231,"BETWEEN":232,"NOT_BETWEEN":233,"IS":234,"DOUBLECOLON":235,"SOME":236,"ANY":237,"UPDATE":238,"SET":239,"SetColumnsList":240,"SetColumn":241,"DELETE":242,"INSERT":243,"Into":244,"VALUES":245,"ValuesListsList":246,"DEFAULT":247,"ValuesList":248,"Value":249,"DateValue":250,"CREATE":251,"TABLE":252,"IfNotExists":253,"CreateTableDefClause":254,"CreateTableOptionsClause":255,"CreateTableOptions":256,"CreateTableOption":257,"ENGINE":258,"AUTO_INCREMENT":259,"CHARSET":260,"TemporaryClause":261,"TEMPORARY":262,"TEMP":263,"IF":264,"ColumnDefsList":265,"ConstraintsList":266,"Constraint":267,"ConstraintName":268,"PrimaryKey":269,"ForeignKey":270,"UniqueKey":271,"IndexKey":272,"Check":273,"CONSTRAINT":274,"CHECK":275,"PRIMARY":276,"KEY":277,"ColsList":278,"FOREIGN":279,"REFERENCES":280,"OnForeignKeyClause":281,"OnDeleteClause":282,"OnUpdateClause":283,"NO":284,"ACTION":285,"ColumnDef":286,"ColumnConstraintsClause":287,"ColumnConstraints":288,"ENUM":289,"ColumnConstraintsList":290,"ColumnConstraint":291,"IDENTITY":292,"DROP":293,"IfExists":294,"ALTER":295,"RENAME":296,"TO":297,"ADD":298,"MODIFY":299,"ATTACH":300,"DATABASE":301,"DETACH":302,"AsClause":303,"USE":304,"SHOW":305,"DATABASES":306,"TABLES":307,"COLUMNS":308,"VIEW":309,"HELP":310,"ExpressionStatement":311,"SOURCE":312,"ASSERT":313,"JsonObject":314,"ATLBRA":315,"JsonArray":316,"JsonValue":317,"JsonPrimitiveValue":318,"LCUR":319,"JsonPropertiesList":320,"RCUR":321,"JsonElementsList":322,"RBRA":323,"JsonProperty":324,"OnOff":325,"SetPropsList":326,"SetProp":327,"OFF":328,"COMMIT":329,"TRANSACTION":330,"ROLLBACK":331,"BEGIN":332,"ElseStatement":333,"WHILE":334,"CONTINUE":335,"BREAK":336,"PRINT":337,"REQUIRE":338,"StringValuesList":339,"DECLARE":340,"DeclaresList":341,"DeclareItem":342,"TRUNCATE":343,"MERGE":344,"MergeInto":345,"MergeUsing":346,"MergeOn":347,"MergeMatchedList":348,"OutputClause":349,"MergeMatched":350,"MergeNotMatched":351,"MATCHED":352,"MergeMatchedAction":353,"MergeNotMatchedAction":354,"TARGET":355,"OUTPUT":356,"$accept":0,"$end":1}, -terminals_: {2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",102:"CROSS",103:"APPLY",104:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",252:"TABLE",258:"ENGINE",259:"AUTO_INCREMENT",260:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"}, -productions_: [0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,0],[101,6],[101,7],[101,6],[101,7],[98,1],[98,3],[99,4],[99,5],[99,3],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[105,1],[92,3],[92,1],[100,2],[100,2],[100,1],[100,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,8],[22,4],[255,0],[255,1],[256,2],[256,1],[257,1],[257,3],[257,3],[257,3],[261,0],[261,1],[261,1],[253,0],[253,3],[254,3],[254,1],[254,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,9],[23,6],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]], +symbols_: {"error":2,"Literal":3,"LITERAL":4,"BRALITERAL":5,"main":6,"Statements":7,"EOF":8,"SEMICOLON":9,"AStatement":10,"GO":11,"ExplainStatement":12,"EXPLAIN":13,"QUERY":14,"PLAN":15,"Statement":16,"If":17,"AlterTable":18,"AttachDatabase":19,"CreateDatabase":20,"CreateIndex":21,"CreateTable":22,"CreateView":23,"Declare":24,"Delete":25,"DetachDatabase":26,"DropDatabase":27,"DropIndex":28,"DropTable":29,"DropView":30,"Insert":31,"RenameTable":32,"Select":33,"Merge":34,"WithSelect":35,"ShowCreateTable":36,"ShowColumns":37,"ShowDatabases":38,"ShowIndex":39,"ShowTables":40,"TruncateTable":41,"BeginTransaction":42,"CommitTransaction":43,"RollbackTransaction":44,"EndTransaction":45,"UseDatabase":46,"Update":47,"Help":48,"JavaScript":49,"Source":50,"Assert":51,"While":52,"Continue":53,"Break":54,"BeginEnd":55,"Print":56,"Require":57,"SetVariable":58,"WITH":59,"WithTablesList":60,"COMMA":61,"WithTable":62,"AS":63,"LPAR":64,"RPAR":65,"SelectClause":66,"IntoClause":67,"FromClause":68,"WhereClause":69,"GroupClause":70,"OrderClause":71,"LimitClause":72,"UnionClause":73,"SelectModifier":74,"DISTINCT":75,"TopClause":76,"ResultColumns":77,"UNIQUE":78,"ALL":79,"SELECT":80,"VALUE":81,"ROW":82,"COLUMN":83,"MATRIX":84,"TEXTSTRING":85,"INDEX":86,"RECORDSET":87,"TOP":88,"NumValue":89,"PERCENT":90,"INTO":91,"Table":92,"FuncValue":93,"ParamValue":94,"VarValue":95,"STRING":96,"FROM":97,"FromTablesList":98,"JoinTablesList":99,"ApplyClause":100,"CROSS":101,"APPLY":102,"OUTER":103,"FromTable":104,"FromString":105,"DOT":106,"JoinTable":107,"JoinMode":108,"JoinTableAs":109,"OnClause":110,"JoinModeMode":111,"NATURAL":112,"JOIN":113,"INNER":114,"LEFT":115,"RIGHT":116,"FULL":117,"SEMI":118,"ANTI":119,"ON":120,"Expression":121,"USING":122,"ColumnsList":123,"WHERE":124,"GROUP":125,"BY":126,"GroupExpressionsList":127,"HavingClause":128,"GroupExpression":129,"GROUPING":130,"SETS":131,"ROLLUP":132,"CUBE":133,"HAVING":134,"UNION":135,"EXCEPT":136,"INTERSECT":137,"CORRESPONDING":138,"ORDER":139,"OrderExpressionsList":140,"OrderExpression":141,"DIRECTION":142,"COLLATE":143,"NOCASE":144,"LIMIT":145,"OffsetClause":146,"OFFSET":147,"ResultColumn":148,"TDTH":149,"TD":150,"TH":151,"NUMBER":152,"StringValue":153,"Star":154,"STAR":155,"Column":156,"AggrValue":157,"Op":158,"LogicValue":159,"NullValue":160,"ExistsValue":161,"CaseValue":162,"CastClause":163,"Json":164,"NewClause":165,"JAVASCRIPT":166,"NEW":167,"CAST":168,"ColumnType":169,"CONVERT":170,"PrimitiveValue":171,"CURRENT_TIMESTAMP":172,"Aggregator":173,"OverClause":174,"OVER":175,"OverPartitionClause":176,"OverOrderByClause":177,"PARTITION":178,"SUM":179,"COUNT":180,"MIN":181,"MAX":182,"AVG":183,"FIRST":184,"LAST":185,"AGGR":186,"ARRAY":187,"ExprList":188,"TRUE":189,"FALSE":190,"NSTRING":191,"NULL":192,"AT":193,"EXISTS":194,"DOLLAR":195,"COLON":196,"QUESTION":197,"BRAQUESTION":198,"CASE":199,"WhensList":200,"ElseClause":201,"END":202,"When":203,"WHEN":204,"THEN":205,"ELSE":206,"LIKE":207,"NOT_LIKE":208,"PLUS":209,"MINUS":210,"SLASH":211,"MODULO":212,"CARET":213,"ARROW":214,"GT":215,"GE":216,"LT":217,"LE":218,"EQ":219,"EQEQ":220,"EQEQEQ":221,"NE":222,"NEEQEQ":223,"NEEQEQEQ":224,"CondOp":225,"AllSome":226,"AND":227,"OR":228,"NOT":229,"IN":230,"ColFunc":231,"BETWEEN":232,"NOT_BETWEEN":233,"IS":234,"DOUBLECOLON":235,"SOME":236,"ANY":237,"UPDATE":238,"SET":239,"SetColumnsList":240,"SetColumn":241,"DELETE":242,"INSERT":243,"Into":244,"VALUES":245,"ValuesListsList":246,"DEFAULT":247,"ValuesList":248,"Value":249,"DateValue":250,"CREATE":251,"TemporaryClause":252,"TABLE":253,"IfNotExists":254,"CreateTableDefClause":255,"CreateTableOptionsClause":256,"CreateTableOptions":257,"CreateTableOption":258,"ENGINE":259,"AUTO_INCREMENT":260,"CHARSET":261,"TEMPORARY":262,"TEMP":263,"IF":264,"ColumnDefsList":265,"ConstraintsList":266,"Constraint":267,"ConstraintName":268,"PrimaryKey":269,"ForeignKey":270,"UniqueKey":271,"IndexKey":272,"Check":273,"CONSTRAINT":274,"CHECK":275,"PRIMARY":276,"KEY":277,"ColsList":278,"FOREIGN":279,"REFERENCES":280,"OnForeignKeyClause":281,"OnDeleteClause":282,"OnUpdateClause":283,"NO":284,"ACTION":285,"ColumnDef":286,"ColumnConstraintsClause":287,"ColumnConstraints":288,"ENUM":289,"ColumnConstraintsList":290,"ColumnConstraint":291,"IDENTITY":292,"DROP":293,"IfExists":294,"ALTER":295,"RENAME":296,"TO":297,"ADD":298,"MODIFY":299,"ATTACH":300,"DATABASE":301,"DETACH":302,"AsClause":303,"USE":304,"SHOW":305,"DATABASES":306,"TABLES":307,"COLUMNS":308,"VIEW":309,"HELP":310,"ExpressionStatement":311,"SOURCE":312,"ASSERT":313,"JsonObject":314,"ATLBRA":315,"JsonArray":316,"JsonValue":317,"JsonPrimitiveValue":318,"LCUR":319,"JsonPropertiesList":320,"RCUR":321,"JsonElementsList":322,"RBRA":323,"JsonProperty":324,"OnOff":325,"SetPropsList":326,"SetProp":327,"OFF":328,"COMMIT":329,"TRANSACTION":330,"ROLLBACK":331,"BEGIN":332,"ElseStatement":333,"WHILE":334,"CONTINUE":335,"BREAK":336,"PRINT":337,"REQUIRE":338,"StringValuesList":339,"DECLARE":340,"DeclaresList":341,"DeclareItem":342,"TRUNCATE":343,"MERGE":344,"MergeInto":345,"MergeUsing":346,"MergeOn":347,"MergeMatchedList":348,"OutputClause":349,"MergeMatched":350,"MergeNotMatched":351,"MATCHED":352,"MergeMatchedAction":353,"MergeNotMatchedAction":354,"TARGET":355,"OUTPUT":356,"$accept":0,"$end":1}, +terminals_: {2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",101:"CROSS",102:"APPLY",103:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",253:"TABLE",259:"ENGINE",260:"AUTO_INCREMENT",261:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"}, +productions_: [0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,5],[68,0],[100,6],[100,7],[100,6],[100,7],[98,1],[98,3],[104,4],[104,5],[104,3],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[105,1],[92,3],[92,1],[99,2],[99,2],[99,1],[99,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,9],[22,5],[256,0],[256,1],[257,2],[257,1],[258,1],[258,3],[258,3],[258,3],[252,0],[252,1],[252,1],[254,0],[254,3],[255,3],[255,1],[255,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,10],[23,7],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ @@ -215,7 +215,7 @@ break; case 4: case 5: this.$ = $$[$0-2]; if($$[$0]) $$[$0-2].push($$[$0]); break; -case 6: case 7: case 56: case 88: case 113: case 114: case 149: case 168: case 250: case 267: case 327: case 340: case 341: case 345: case 353: case 392: case 393: case 501: case 506: case 526: case 528: case 542: case 543: +case 6: case 7: case 56: case 89: case 114: case 115: case 150: case 169: case 251: case 268: case 328: case 341: case 342: case 346: case 354: case 393: case 394: case 502: case 507: case 527: case 529: case 543: case 544: this.$ = [$$[$0]]; break; case 8: @@ -233,7 +233,7 @@ case 10: delete yy.queries; break; -case 11: case 63: case 74: case 83: case 144: case 145: case 147: case 155: case 157: case 166: case 174: case 176: case 229: case 270: case 365: case 368: case 380: case 385: case 386: case 420: +case 11: case 63: case 74: case 84: case 145: case 146: case 148: case 156: case 158: case 167: case 175: case 177: case 230: case 271: case 366: case 369: case 381: case 386: case 387: case 421: this.$ = undefined; break; case 54: @@ -298,7 +298,7 @@ break; case 73: this.$ = {top: $$[$0-1], percent:true}; break; -case 75: case 233: case 387: case 388: +case 75: case 234: case 388: case 389: this.$ = undefined; break; case 76: case 77: case 78: case 79: @@ -323,51 +323,54 @@ case 81: this.$ = { from: $$[$0] }; break; case 82: - this.$ = { from: [$$[$0-1]], joins: $$[$0] }; + this.$ = { from: $$[$0-1], joins: $$[$0] }; break; -case 84: - this.$ = new yy.Apply({select: $$[$0-2], applymode:'CROSS', as:$$[$0]}); +case 83: + this.$ = { from: $$[$0-2], joins: $$[$0-1] }; break; case 85: - this.$ = new yy.Apply({select: $$[$0-3], applymode:'CROSS', as:$$[$0]}); + this.$ = new yy.Apply({select: $$[$0-2], applymode:'CROSS', as:$$[$0]}); break; case 86: - this.$ = new yy.Apply({select: $$[$0-2], applymode:'OUTER', as:$$[$0]}); + this.$ = new yy.Apply({select: $$[$0-3], applymode:'CROSS', as:$$[$0]}); break; case 87: + this.$ = new yy.Apply({select: $$[$0-2], applymode:'OUTER', as:$$[$0]}); +break; +case 88: this.$ = new yy.Apply({select: $$[$0-3], applymode:'OUTER', as:$$[$0]}); break; -case 89: case 150: case 328: case 394: case 395: +case 90: case 151: case 329: case 395: case 396: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]); break; -case 90: +case 91: this.$ = $$[$0-2]; this.$.as = $$[$0] break; -case 91: +case 92: this.$ = $$[$0-3]; this.$.as = $$[$0] break; -case 92: +case 93: this.$ = $$[$0-1]; this.$.as = 'default' break; -case 93: +case 94: this.$ = $$[$0-1]; $$[$0-1].as = $$[$0] break; -case 94: +case 95: this.$ = $$[$0-2]; $$[$0-2].as = $$[$0] break; -case 95: case 154: case 190: case 198: case 199: case 200: case 201: case 202: case 203: case 204: case 205: case 206: case 207: case 208: case 209: case 210: case 211: case 213: case 223: case 224: case 225: case 226: case 227: case 228: case 269: case 316: case 317: case 318: case 319: case 320: case 321: case 381: case 406: case 408: case 475: case 476: case 477: case 478: case 479: case 480: case 484: case 486: case 487: case 496: case 507: case 508: +case 96: case 155: case 191: case 199: case 200: case 201: case 202: case 203: case 204: case 205: case 206: case 207: case 208: case 209: case 210: case 211: case 212: case 214: case 224: case 225: case 226: case 227: case 228: case 229: case 270: case 317: case 318: case 319: case 320: case 321: case 322: case 382: case 407: case 409: case 476: case 477: case 478: case 479: case 480: case 481: case 485: case 487: case 488: case 497: case 508: case 509: this.$ = $$[$0]; break; -case 96: case 100: case 103: case 106: +case 97: case 101: case 104: case 107: this.$ = $$[$0-1]; $$[$0-1].as = $$[$0]; break; -case 97: case 101: case 104: case 107: +case 98: case 102: case 105: case 108: this.$ = $$[$0-2]; $$[$0-2].as = $$[$0]; break; -case 98: case 99: case 102: case 105: +case 99: case 100: case 103: case 106: this.$ = $$[$0]; $$[$0].as = 'default'; break; -case 108: +case 109: var s = $$[$0]; s = s.substr(1,s.length-2); @@ -386,202 +389,202 @@ case 108: this.$ = r; break; -case 109: +case 110: this.$ = new yy.Table({databaseid: $$[$0-2], tableid:$$[$0]}); break; -case 110: +case 111: this.$ = new yy.Table({tableid: $$[$0]}); break; -case 111: case 112: +case 112: case 113: this.$ = $$[$0-1]; $$[$0-1].push($$[$0]); break; -case 115: +case 116: this.$ = new yy.Join($$[$0-2]); yy.extend(this.$, $$[$0-1]); yy.extend(this.$, $$[$0]); break; -case 116: +case 117: this.$ = {table: $$[$0]}; break; -case 117: +case 118: this.$ = {table: $$[$0-1], as: $$[$0] } ; break; -case 118: +case 119: this.$ = {table: $$[$0-2], as: $$[$0] } ; break; -case 119: +case 120: this.$ = {param: $$[$0-1], as: $$[$0] } ; break; -case 120: +case 121: this.$ = {param: $$[$0-2], as: $$[$0] } ; break; -case 121: +case 122: this.$ = {select: $$[$0-3], as: $$[$0]} ; break; -case 122: +case 123: this.$ = {select: $$[$0-4], as: $$[$0] } ; break; -case 123: +case 124: this.$ = {funcid:$$[$0], as:'default'}; break; -case 124: +case 125: this.$ = {funcid:$$[$0-1], as: $$[$0]}; break; -case 125: +case 126: this.$ = {funcid:$$[$0-2], as: $$[$0]}; break; -case 126: +case 127: this.$ = {variable:$$[$0],as:'default'}; break; -case 127: +case 128: this.$ = {variable:$$[$0-1],as:$$[$0]}; break; -case 128: +case 129: this.$ = {variable:$$[$0-2],as:$$[$0]} break; -case 129: +case 130: this.$ = { joinmode: $$[$0] } ; break; -case 130: +case 131: this.$ = {joinmode: $$[$0-1], natural:true} ; break; -case 131: case 132: +case 132: case 133: this.$ = "INNER"; break; -case 133: case 134: +case 134: case 135: this.$ = "LEFT"; break; -case 135: case 136: +case 136: case 137: this.$ = "RIGHT"; break; -case 137: case 138: +case 138: case 139: this.$ = "OUTER"; break; -case 139: +case 140: this.$ = "SEMI"; break; -case 140: +case 141: this.$ = "ANTI"; break; -case 141: +case 142: this.$ = "CROSS"; break; -case 142: +case 143: this.$ = {on: $$[$0]}; break; -case 143: case 538: +case 144: case 539: this.$ = {using: $$[$0]}; break; -case 146: +case 147: this.$ = {where: new yy.Expression({expression:$$[$0]})}; break; -case 148: +case 149: this.$ = {group:$$[$0-1]}; yy.extend(this.$,$$[$0]); break; -case 151: +case 152: this.$ = new yy.GroupExpression({type:'GROUPING SETS', group: $$[$0-1]}); break; -case 152: +case 153: this.$ = new yy.GroupExpression({type:'ROLLUP', group: $$[$0-1]}); break; -case 153: +case 154: this.$ = new yy.GroupExpression({type:'CUBE', group: $$[$0-1]}); break; -case 156: +case 157: this.$ = {having:$$[$0]} break; -case 158: +case 159: this.$ = {union: $$[$0]} ; break; -case 159: +case 160: this.$ = {unionall: $$[$0]} ; break; -case 160: +case 161: this.$ = {except: $$[$0]} ; break; -case 161: +case 162: this.$ = {intersect: $$[$0]} ; break; -case 162: +case 163: this.$ = {union: $$[$0-1], corresponding:true} ; break; -case 163: +case 164: this.$ = {unionall: $$[$0-1], corresponding:true} ; break; -case 164: +case 165: this.$ = {except: $$[$0-1], corresponding:true} ; break; -case 165: +case 166: this.$ = {intersect: $$[$0-1], corresponding:true} ; break; -case 167: +case 168: this.$ = {order:$$[$0]} break; -case 169: +case 170: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; -case 170: +case 171: this.$ = new yy.Expression({expression: $$[$0], direction:'ASC'}) break; -case 171: +case 172: this.$ = new yy.Expression({expression: $$[$0-1], direction:$$[$0].toUpperCase()}) break; -case 172: +case 173: this.$ = new yy.Expression({expression: $$[$0-2], direction:'ASC', nocase:true}) break; -case 173: +case 174: this.$ = new yy.Expression({expression: $$[$0-3], direction:$$[$0].toUpperCase(), nocase:true}) break; -case 175: +case 176: this.$ = {limit:$$[$0-1]}; yy.extend(this.$, $$[$0]) break; -case 177: +case 178: this.$ = {offset:$$[$0]} break; -case 178: +case 179: yy.extend($$[$0-1],$$[$0]); $$[$0-3].push($$[$0-1]); this.$ = $$[$0-3]; break; -case 179: +case 180: yy.extend($$[$0-1],$$[$0]); this.$ = [$$[$0-1]]; break; -case 180: +case 181: this.$ = undefined break; -case 181: +case 182: this.$ = {td:$$[$0]}; break; -case 182: +case 183: this.$ = {th:$$[$0]}; break; -case 183: +case 184: this.$ = {th:$$[$0-2],td:$$[$0]}; break; -case 184: case 186: case 188: +case 185: case 187: case 189: $$[$0-2].as = $$[$0]; this.$ = $$[$0-2]; break; -case 185: case 187: case 189: +case 186: case 188: case 190: $$[$0-1].as = $$[$0]; this.$ = $$[$0-1]; break; -case 191: +case 192: this.$ = new yy.Column({columid: $$[$0], tableid: $$[$0-2], databaseid:$$[$0-4]}); break; -case 192: +case 193: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2]}); break; -case 193: +case 194: this.$ = new yy.Column({columnid:$$[$0]}); break; -case 194: +case 195: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2], databaseid:$$[$0-4]}); break; -case 195: case 196: +case 196: case 197: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2]}); break; -case 197: +case 198: this.$ = new yy.Column({columnid: $$[$0]}); break; -case 212: +case 213: this.$ = new yy.Json({value:$$[$0]}); break; -case 214: +case 215: if(!yy.queries) yy.queries = []; yy.queries.push($$[$0-1]); @@ -589,80 +592,80 @@ case 214: this.$ = $$[$0-1]; break; -case 215: +case 216: this.$ = $$[$0] break; -case 216: +case 217: this.$ = new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)}); break; -case 217: +case 218: this.$ = new yy.FuncValue({funcid:$$[$0], newid:true}); break; -case 218: +case 219: this.$ = $$[$0]; yy.extend(this.$,{newid:true}); break; -case 219: +case 220: this.$ = new yy.Convert({expression:$$[$0-3]}) ; yy.extend(this.$,$$[$0-1]) ; break; -case 220: +case 221: this.$ = new yy.Convert({expression:$$[$0-5], style:$$[$0-1]}) ; yy.extend(this.$,$$[$0-3]) ; break; -case 221: +case 222: this.$ = new yy.Convert({expression:$$[$0-1]}) ; yy.extend(this.$,$$[$0-3]) ; break; -case 222: +case 223: this.$ = new yy.Convert({expression:$$[$0-3], style:$$[$0-1]}) ; yy.extend(this.$,$$[$0-5]) ; break; -case 230: +case 231: this.$ = new yy.AggrValue({aggregatorid: $$[$0-4].toUpperCase(), expression: $$[$0-2], over:$$[$0]}); break; -case 231: +case 232: this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], distinct:true, over:$$[$0]}); break; -case 232: +case 233: this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], over:$$[$0]}); break; -case 234: case 235: +case 235: case 236: this.$ = new yy.Over(); yy.extend(this.$,$$[$0-1]); break; -case 236: +case 237: this.$ = new yy.Over(); yy.extend(this.$,$$[$0-2]); yy.extend(this.$,$$[$0-1]); break; -case 237: +case 238: this.$ = {partition:$$[$0]}; break; -case 238: +case 239: this.$ = {order:$$[$0]}; break; -case 239: +case 240: this.$ = "SUM"; break; -case 240: +case 241: this.$ = "COUNT"; break; -case 241: +case 242: this.$ = "MIN"; break; -case 242: +case 243: this.$ = "MAX"; break; -case 243: +case 244: this.$ = "AVG"; break; -case 244: +case 245: this.$ = "FIRST"; break; -case 245: +case 246: this.$ = "LAST"; break; -case 246: +case 247: this.$ = "AGGR"; break; -case 247: +case 248: this.$ = "ARRAY"; break; -case 248: +case 249: if(alasql.aggr[$$[$0-3]]) { this.$ = new yy.AggrValue({aggregatorid: 'REDUCE', @@ -672,683 +675,693 @@ case 248: }; break; -case 249: +case 250: this.$ = new yy.FuncValue({ funcid: $$[$0-2] }) break; -case 251: +case 252: $$[$0-2].push($$[$0]); this.$ = $$[$0-2] break; -case 252: +case 253: this.$ = new yy.NumValue({value:+$$[$0]}); break; -case 253: +case 254: this.$ = new yy.LogicValue({value:true}); break; -case 254: +case 255: this.$ = new yy.LogicValue({value:false}); break; -case 255: +case 256: this.$ = new yy.StringValue({value: $$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")}); break; -case 256: +case 257: this.$ = new yy.StringValue({value: $$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")}); break; -case 257: +case 258: this.$ = new yy.NullValue({value:undefined}); break; -case 258: +case 259: this.$ = new yy.VarValue({variable:$$[$0]}); break; -case 259: +case 260: if(!yy.exists) yy.exists = []; this.$ = new yy.ExistsValue({value:$$[$0-1], existsidx:yy.exists.length}); yy.exists.push($$[$0-1]); break; -case 260: case 261: +case 261: case 262: this.$ = new yy.ParamValue({param: $$[$0]}); break; -case 262: +case 263: if(typeof yy.question == 'undefined') yy.question = 0; this.$ = new yy.ParamValue({param: yy.question++}); break; -case 263: +case 264: if(typeof yy.question == 'undefined') yy.question = 0; this.$ = new yy.ParamValue({param: yy.question++, array:true}); break; -case 264: +case 265: this.$ = new yy.CaseValue({expression:$$[$0-3], whens: $$[$0-2], elses: $$[$0-1]}); break; -case 265: +case 266: this.$ = new yy.CaseValue({whens: $$[$0-2], elses: $$[$0-1]}); break; -case 266: case 540: case 541: +case 267: case 541: case 542: this.$ = $$[$0-1]; this.$.push($$[$0]); break; -case 268: +case 269: this.$ = {when: $$[$0-2], then: $$[$0] }; break; -case 271: +case 272: this.$ = new yy.Op({left:$$[$0-2], op:'LIKE', right:$$[$0]}); break; -case 272: +case 273: this.$ = new yy.Op({left:$$[$0-2], op:'NOT LIKE', right:$$[$0] }); break; -case 273: +case 274: this.$ = new yy.Op({left:$$[$0-2], op:'+', right:$$[$0]}); break; -case 274: +case 275: this.$ = new yy.Op({left:$$[$0-2], op:'-', right:$$[$0]}); break; -case 275: +case 276: this.$ = new yy.Op({left:$$[$0-2], op:'*', right:$$[$0]}); break; -case 276: +case 277: this.$ = new yy.Op({left:$$[$0-2], op:'/', right:$$[$0]}); break; -case 277: +case 278: this.$ = new yy.Op({left:$$[$0-2], op:'%', right:$$[$0]}); break; -case 278: +case 279: this.$ = new yy.Op({left:$$[$0-2], op:'^', right:$$[$0]}); break; -case 279: case 280: case 282: +case 280: case 281: case 283: this.$ = new yy.Op({left:$$[$0-2], op:'->' , right:$$[$0]}); break; -case 281: +case 282: this.$ = new yy.Op({left:$$[$0-4], op:'->' , right:$$[$0-1]}); break; -case 283: +case 284: this.$ = new yy.Op({left:$$[$0-2], op:'>' , right:$$[$0]}); break; -case 284: +case 285: this.$ = new yy.Op({left:$$[$0-2], op:'>=' , right:$$[$0]}); break; -case 285: +case 286: this.$ = new yy.Op({left:$$[$0-2], op:'<' , right:$$[$0]}); break; -case 286: +case 287: this.$ = new yy.Op({left:$$[$0-2], op:'<=' , right:$$[$0]}); break; -case 287: +case 288: this.$ = new yy.Op({left:$$[$0-2], op:'=' , right:$$[$0]}); break; -case 288: +case 289: this.$ = new yy.Op({left:$$[$0-2], op:'==' , right:$$[$0]}); break; -case 289: +case 290: this.$ = new yy.Op({left:$$[$0-2], op:'===' , right:$$[$0]}); break; -case 290: +case 291: this.$ = new yy.Op({left:$$[$0-2], op:'!=' , right:$$[$0]}); break; -case 291: +case 292: this.$ = new yy.Op({left:$$[$0-2], op:'!==' , right:$$[$0]}); break; -case 292: +case 293: this.$ = new yy.Op({left:$$[$0-2], op:'!===' , right:$$[$0]}); break; -case 293: +case 294: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); break; -case 294: +case 295: this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1]}); break; -case 295: +case 296: this.$ = new yy.Op({left:$$[$0-2], op:'AND' , right:$$[$0]}); break; -case 296: +case 297: this.$ = new yy.Op({left:$$[$0-2], op:'OR' , right:$$[$0]}); break; -case 297: +case 298: this.$ = new yy.UniOp({op:'NOT' , right:$$[$0]}); break; -case 298: +case 299: this.$ = new yy.UniOp({op:'-' , right:$$[$0]}); break; -case 299: +case 300: this.$ = new yy.UniOp({op:'+' , right:$$[$0]}); break; -case 300: +case 301: this.$ = new yy.UniOp({right: $$[$0-1]}); break; -case 301: +case 302: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); break; -case 302: +case 303: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); break; -case 303: +case 304: this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1]}); break; -case 304: +case 305: this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1]}); break; -case 305: +case 306: this.$ = new yy.Op({left: $$[$0-3], op:'IN', right:[]}); break; -case 306: +case 307: this.$ = new yy.Op({left: $$[$0-4], op:'NOT IN', right:[]}); break; -case 307: +case 308: this.$ = new yy.Op({left: $$[$0-2], op:'IN', right:$$[$0]}); break; -case 308: +case 309: this.$ = new yy.Op({left: $$[$0-3], op:'NOT IN', right:$$[$0]}); break; -case 309: +case 310: this.$ = new yy.Op({left:$$[$0-2], op:'BETWEEN', right:$$[$0] }); break; -case 310: +case 311: this.$ = new yy.Op({left:$$[$0-2], op:'NOT BETWEEN', right:$$[$0] }); break; -case 311: +case 312: this.$ = new yy.Op({op:'IS' , left:$$[$0-2], right:$$[$0]}); break; -case 312: +case 313: this.$ = new yy.Convert({expression:$$[$0-2]}) ; yy.extend(this.$,$$[$0]) ; break; -case 313: case 314: +case 314: case 315: this.$ = $$[$0]; break; -case 315: +case 316: this.$ = $$[$0-1]; break; -case 322: +case 323: this.$ = 'ALL'; break; -case 323: +case 324: this.$ = 'SOME'; break; -case 324: +case 325: this.$ = 'ANY'; break; -case 325: +case 326: this.$ = new yy.Update({table:$$[$0-4], columns:$$[$0-2], where:$$[$0]}); break; -case 326: +case 327: this.$ = new yy.Update({table:$$[$0-2], columns:$$[$0]}); break; -case 329: +case 330: this.$ = new yy.SetColumn({columnid:$$[$0-2], expression:$$[$0]}) break; -case 330: +case 331: this.$ = new yy.Delete({table:$$[$0-2], where:$$[$0]}); break; -case 331: +case 332: this.$ = new yy.Delete({table:$$[$0]}); break; -case 332: +case 333: this.$ = new yy.Insert({into:$$[$0-2], values: $$[$0]}); break; -case 333: +case 334: this.$ = new yy.Insert({into:$$[$0-2], default: true}) ; break; -case 334: +case 335: this.$ = new yy.Insert({into:$$[$0-5], columns: $$[$0-3], values: $$[$0]}); break; -case 335: +case 336: this.$ = new yy.Insert({into:$$[$0-1], select: $$[$0]}); break; -case 336: +case 337: this.$ = new yy.Insert({into:$$[$0-4], columns: $$[$0-2], select: $$[$0]}); break; -case 339: +case 340: this.$ = [$$[$0-1]]; break; -case 342: +case 343: this.$ = $$[$0-4]; $$[$0-4].push($$[$0-1]) break; -case 343: case 344: case 346: case 354: +case 344: case 345: case 347: case 355: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; -case 355: +case 356: this.$ = new yy.CreateTable({table:$$[$0-4]}); - //yy.extend(this.$,$$[$0-6]); + yy.extend(this.$,$$[$0-7]); yy.extend(this.$,$$[$0-5]); yy.extend(this.$,$$[$0-2]); + yy.extend(this.$,$$[$0]); break; -case 356: +case 357: this.$ = new yy.CreateTable({table:$$[$0]}); + yy.extend(this.$,$$[$0-3]); + yy.extend(this.$,$$[$0-1]); break; -case 366: case 367: +case 367: case 368: this.$ = {temporary:true}; break; -case 369: +case 370: this.$ = {ifnotexists: true}; break; -case 370: +case 371: this.$ = {columns: $$[$0-2], constraints: $$[$0]}; break; -case 371: +case 372: this.$ = {columns: $$[$0]}; break; -case 372: +case 373: this.$ = {as: $$[$0]} break; -case 373: case 396: +case 374: case 397: this.$ = [$$[$0]]; break; -case 374: case 397: case 500: case 505: case 525: case 529: +case 375: case 398: case 501: case 506: case 526: case 530: $$[$0-2].push($$[$0]); this.$ = $$[$0-2]; break; -case 375: case 376: case 377: case 378: case 379: +case 376: case 377: case 378: case 379: case 380: $$[$0].constraintid = $$[$0-1]; this.$ = $$[$0]; break; -case 382: +case 383: this.$ = {type: 'CHECK', expression: $$[$0-1]}; break; -case 383: +case 384: this.$ = {type: 'PRIMARY KEY', columns: $$[$0-1]}; break; -case 384: +case 385: this.$ = {type: 'FOREIGN KEY', columns: $$[$0-7], fktableid: $$[$0-4], fkcolumns: $$[$0-2]}; break; -case 398: +case 399: this.$ = new yy.ColumnDef({columnid:$$[$0-2]}); yy.extend(this.$,$$[$0-1]); yy.extend(this.$,$$[$0]); break; -case 399: +case 400: this.$ = new yy.ColumnDef({columnid:$$[$0-1]}); yy.extend(this.$,$$[$0]); break; -case 400: +case 401: this.$ = new yy.ColumnDef({columnid:$$[$0], dbtypeid: ''}); break; -case 401: +case 402: this.$ = {dbtypeid: $$[$0-5], dbsize: +$$[$0-3], dbprecision: +$$[$0-1]} break; -case 402: +case 403: this.$ = {dbtypeid: $$[$0-3], dbsize: +$$[$0-1]} break; -case 403: +case 404: this.$ = {dbtypeid: $$[$0]} break; -case 404: +case 405: this.$ = {dbtypeid: 'ENUM', enumvalues: $$[$0-1]} break; -case 405: +case 406: this.$ = undefined break; -case 407: +case 408: yy.extend($$[$0-1],$$[$0]); this.$ = $$[$0-1]; break; -case 409: +case 410: this.$ = {primarykey:true}; break; -case 410: case 411: +case 411: case 412: this.$ = {foreignkey:{tableid:$$[$0-3], columnid: $$[$0-1]}}; break; -case 412: +case 413: this.$ = {auto_increment:true}; break; -case 413: +case 414: this.$ = {identity: [$$[$0-3],$$[$0-1]]} break; -case 414: +case 415: this.$ = {identity: [1,1]} break; -case 415: +case 416: this.$ = {default:$$[$0]}; break; -case 416: +case 417: this.$ = {null:true}; break; -case 417: +case 418: this.$ = {notnull:true}; break; -case 418: +case 419: this.$ = $$[$0]; break; -case 419: +case 420: this.$ = new yy.DropTable({table:$$[$0]}); yy.extend(this.$, $$[$0-1]); break; -case 421: +case 422: this.$ = {ifexists: true}; break; -case 422: +case 423: this.$ = new yy.AlterTable({table:$$[$0-3], renameto: $$[$0]}); break; -case 423: +case 424: this.$ = new yy.AlterTable({table:$$[$0-3], addcolumn: $$[$0]}); break; -case 424: +case 425: this.$ = new yy.AlterTable({table:$$[$0-3], modifycolumn: $$[$0]}); break; -case 425: +case 426: this.$ = new yy.AlterTable({table:$$[$0-5], renamecolumn: $$[$0-2], to: $$[$0]}); break; -case 426: +case 427: this.$ = new yy.AlterTable({table:$$[$0-3], dropcolumn: $$[$0]}); break; -case 427: +case 428: this.$ = new yy.AlterTable({table:$$[$0-2], renameto: $$[$0]}); break; -case 428: +case 429: this.$ = new yy.AttachDatabase({databaseid:$$[$0], engineid:$$[$0-2].toUpperCase() }); break; -case 429: +case 430: this.$ = new yy.AttachDatabase({databaseid:$$[$0-3], engineid:$$[$0-5].toUpperCase(), args:$$[$0-1] }); break; -case 430: +case 431: this.$ = new yy.AttachDatabase({databaseid:$$[$0-2], engineid:$$[$0-4].toUpperCase(), as:$$[$0] }); break; -case 431: +case 432: this.$ = new yy.AttachDatabase({databaseid:$$[$0-5], engineid:$$[$0-7].toUpperCase(), as:$$[$0], args:$$[$0-3]}); break; -case 432: +case 433: this.$ = new yy.DetachDatabase({databaseid:$$[$0]}); break; -case 433: +case 434: this.$ = new yy.CreateDatabase({databaseid:$$[$0] }); yy.extend(this.$,$$[$0]); break; -case 434: +case 435: this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), databaseid:$$[$0-1], as:$$[$0] }); yy.extend(this.$,$$[$0-2]); break; -case 435: +case 436: this.$ = new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(), databaseid:$$[$0-4], args:$$[$0-2], as:$$[$0] }); yy.extend(this.$,$$[$0-5]); break; -case 436: +case 437: this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), as:$$[$0], args:[$$[$0-1]] }); yy.extend(this.$,$$[$0-2]); break; -case 437: +case 438: this.$ = undefined; break; -case 438: case 471: case 489: case 492: case 509: +case 439: case 472: case 490: case 493: case 510: this.$ = $$[$0-1]; break; -case 439: case 440: +case 440: case 441: this.$ = new yy.UseDatabase({databaseid: $$[$0] }); break; -case 441: +case 442: this.$ = new yy.DropDatabase({databaseid: $$[$0] }); yy.extend(this.$,$$[$0-1]); break; -case 442: case 443: +case 443: case 444: this.$ = new yy.DropDatabase({databaseid: $$[$0], engineid:$$[$0-3].toUpperCase() }); yy.extend(this.$,$$[$0-1]); break; -case 444: +case 445: this.$ = new yy.CreateIndex({indexid:$$[$0-5], table:$$[$0-3], columns:$$[$0-1]}) break; -case 445: +case 446: this.$ = new yy.CreateIndex({indexid:$$[$0-5], table:$$[$0-3], columns:$$[$0-1], unique:true}) break; -case 446: +case 447: this.$ = new yy.DropIndex({indexid:$$[$0]}); break; -case 447: +case 448: this.$ = new yy.ShowDatabases(); break; -case 448: +case 449: this.$ = new yy.ShowDatabases({like:$$[$0]}); break; -case 449: +case 450: this.$ = new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase() }); break; -case 450: +case 451: this.$ = new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase() , like:$$[$0]}); break; -case 451: +case 452: this.$ = new yy.ShowTables(); break; -case 452: +case 453: this.$ = new yy.ShowTables({like:$$[$0]}); break; -case 453: +case 454: this.$ = new yy.ShowTables({databaseid: $$[$0]}); break; -case 454: +case 455: this.$ = new yy.ShowTables({like:$$[$0], databaseid: $$[$0-2]}); break; -case 455: +case 456: this.$ = new yy.ShowColumns({table: $$[$0]}); break; -case 456: +case 457: this.$ = new yy.ShowColumns({table: $$[$0-2], databaseid:$$[$0]}); break; -case 457: +case 458: this.$ = new yy.ShowIndex({table: $$[$0]}); break; -case 458: +case 459: this.$ = new yy.ShowIndex({table: $$[$0-2], databaseid: $$[$0]}); break; -case 459: +case 460: this.$ = new yy.ShowCreateTable({table: $$[$0]}); break; -case 460: +case 461: this.$ = new yy.ShowCreateTable({table: $$[$0-2], databaseid:$$[$0]}); break; -case 461: - +case 462: + this.$ = new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]}); + yy.extend(this.$,$$[$0-8]); yy.extend(this.$,$$[$0-6]); break; -case 462: +case 463: this.$ = new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]}); + yy.extend(this.$,$$[$0-5]); + yy.extend(this.$,$$[$0-3]); break; -case 463: +case 464: this.$ = new yy.DropTable({table:$$[$0], view:true}); yy.extend(this.$, $$[$0-1]); break; -case 464: +case 465: this.$ = new yy.Help({subject:$$[$0].value.toUpperCase()} ) ; break; -case 465: +case 466: this.$ = new yy.Help() ; break; -case 466: +case 467: this.$ = new yy.ExpressionStatement({expression:$$[$0]}); break; -case 467: +case 468: this.$ = new yy.Source({url:$$[$0].value}); break; -case 468: +case 469: this.$ = new yy.Assert({value:$$[$0]}); break; -case 469: +case 470: this.$ = new yy.Assert({value:$$[$0].value}); break; -case 470: +case 471: this.$ = new yy.Assert({value:$$[$0], message:$$[$0-2]}); break; -case 472: case 483: case 485: +case 473: case 484: case 486: this.$ = $$[$0].value; break; -case 473: case 481: +case 474: case 482: this.$ = +$$[$0].value; break; -case 474: +case 475: this.$ = (!!$$[$0].value); break; -case 482: +case 483: this.$ = ""+$$[$0].value; break; -case 488: +case 489: this.$ = $$[$0-1] break; -case 490: case 493: +case 491: case 494: this.$ = $$[$0-2]; break; -case 491: +case 492: this.$ = {}; break; -case 494: +case 495: this.$ = []; break; -case 495: +case 496: yy.extend($$[$0-2],$$[$0]); this.$ = $$[$0-2]; break; -case 497: +case 498: this.$ = {}; this.$[$$[$0-2].substr(1,$$[$0-2].length-2)] = $$[$0]; break; -case 498: case 499: +case 499: case 500: this.$ = {}; this.$[$$[$0-2]] = $$[$0]; break; -case 502: +case 503: this.$ = new yy.SetVariable({variable:$$[$0-1].toLowerCase(), value:$$[$0]}); break; -case 503: +case 504: this.$ = new yy.SetVariable({variable:$$[$0-2], expression:$$[$0]}); break; -case 504: +case 505: this.$ = new yy.SetVariable({variable:$$[$0-3], props: $$[$0-2], expression:$$[$0]}); break; -case 510: +case 511: this.$ = true; break; -case 511: +case 512: this.$ = false; break; -case 512: +case 513: this.$ = new yy.CommitTransaction(); break; -case 513: +case 514: this.$ = new yy.RollbackTransaction(); break; -case 514: +case 515: this.$ = new yy.BeginTransaction(); break; -case 515: +case 516: this.$ = new yy.If({expression:$$[$0-2],thenstat:$$[$0-1], elsestat:$$[$0]}); if($$[$0-1].exists) this.$.exists = $$[$0-1].exists; if($$[$0-1].queries) this.$.queries = $$[$0-1].queries; break; -case 516: - this.$ = new yy.If({expression:$$[$0-1],thenstat:$$[$0]}); -break; case 517: -this.$ = $$[$0]; + + this.$ = new yy.If({expression:$$[$0-1],thenstat:$$[$0]}); + if($$[$0].exists) this.$.exists = $$[$0].exists; + if($$[$0].queries) this.$.queries = $$[$0].queries; + break; case 518: +this.$ = $$[$0]; +break; +case 519: this.$ = new yy.While({expression:$$[$0-1],loopstat:$$[$0]}); if($$[$0].exists) this.$.exists = $$[$0].exists; if($$[$0].queries) this.$.queries = $$[$0].queries; break; -case 519: +case 520: this.$ = new yy.Continue(); break; -case 520: +case 521: this.$ = new yy.Break(); break; -case 521: +case 522: this.$ = new yy.BeginEnd({statements:$$[$0-1]}); break; -case 522: case 523: +case 523: case 524: this.$ = new yy.Print({statement:$$[$0]}); break; -case 524: +case 525: this.$ = new yy.Require({paths:$$[$0]}); break; -case 527: +case 528: this.$ = new yy.Declare({declares:$$[$0]}); break; -case 530: +case 531: this.$ = {variable: $$[$0-1]}; yy.extend(this.$,$$[$0]); break; -case 531: +case 532: this.$ = {variable: $$[$0-2]}; yy.extend(this.$,$$[$0]); break; -case 532: +case 533: this.$ = {variable: $$[$0-3], expression:$$[$0]}; yy.extend(this.$,$$[$0-2]); break; -case 533: +case 534: this.$ = {variable: $$[$0-4], expression:$$[$0]}; yy.extend(this.$,$$[$0-2]); break; -case 534: +case 535: this.$ = new yy.TruncateTable({table:$$[$0]}); break; -case 535: +case 536: this.$ = new yy.Merge(); yy.extend(this.$,$$[$0-4]); yy.extend(this.$,$$[$0-3]); yy.extend(this.$,$$[$0-2]); yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]); break; -case 536: case 537: +case 537: case 538: this.$ = {into: $$[$0]}; break; -case 539: +case 540: this.$ = {on:$$[$0]}; break; -case 544: +case 545: this.$ = {matched:true, action:$$[$0]} break; -case 545: +case 546: this.$ = {matched:true, expr: $$[$0-2], action:$$[$0]} break; -case 546: +case 547: this.$ = {delete:true}; break; -case 547: +case 548: this.$ = {update:$$[$0]}; break; -case 548: case 549: +case 549: case 550: this.$ = {matched:false, bytarget: true, action:$$[$0]} break; -case 550: case 551: +case 551: case 552: this.$ = {matched:false, bytarget: true, expr:$$[$0-2], action:$$[$0]} break; -case 552: +case 553: this.$ = {matched:false, bysource: true, action:$$[$0]} break; -case 553: +case 554: this.$ = {matched:false, bysource: true, expr:$$[$0-2], action:$$[$0]} break; -case 554: +case 555: this.$ = {insert:true, values:$$[$0]}; break; -case 555: +case 556: this.$ = {insert:true, values:$$[$0], columns:$$[$0-3]}; break; -case 556: +case 557: this.$ = {insert:true, defaultvalues:true}; break; -case 557: +case 558: this.$ = {insert:true, defaultvalues:true, columns:$$[$0-3]}; break; -case 559: +case 560: this.$ = {output:{columns:$$[$0]}} break; -case 560: +case 561: this.$ = {output:{columns:$$[$0-3], intovar: $$[$0]}} break; -case 561: +case 562: this.$ = {output:{columns:$$[$0-2], intotable: $$[$0]}} break; -case 562: +case 563: this.$ = {output:{columns:$$[$0-5], intotable: $$[$0-3], intocolumns:$$[$0-1]}} break; } }, -table: [o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{252:[1,141]},{3:142,4:$VB,5:$VC},{3:144,4:$VB,5:$VC,78:[1,146],86:[1,145],252:[1,147],301:[1,143],309:[1,148]},{193:$V71,341:149,342:150},{97:[1,152]},{301:[1,153]},{3:155,4:$VB,5:$VC,86:[1,156],252:[1,157],301:[1,154],309:[1,158]},o($V81,[2,337],{244:159,91:[1,160]}),{252:[1,161]},o($V91,[2,75],{67:162,91:[1,163]}),{3:173,4:$VB,5:$VC,64:$Va1,91:[1,166],92:168,93:170,94:169,95:171,96:$Vb1,99:165,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01,345:164},{3:178,4:$VB,5:$VC,60:176,62:177},{3:182,4:$VB,5:$VC,86:[1,183],251:[1,179],306:[1,181],307:[1,184],308:[1,180]},{252:[1,185]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:187,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,186],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,188]},{330:[1,189]},{3:191,4:$VB,5:$VC,301:[1,190]},{3:193,4:$VB,5:$VC,92:192},o($VA,[2,465],{153:194,96:$VE,191:$VV}),o($Vd1,[2,216]),{96:$VE,153:195,191:$VV},{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:[1,198],152:$VF,153:201,159:202,160:203,164:196,171:197,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:208,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,519]),o($VA,[2,520]),{3:106,4:$VB,5:$VC,33:209,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:211,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:210,314:126,315:$V51,319:$V61},{96:$VE,153:213,191:$VV,339:212},{3:214,4:$VB,5:$VC,193:[1,215]},o($Vg1,$Vh1,{76:219,75:[1,216],78:[1,217],79:[1,218],88:$Vi1}),o($Vj1,[2,63],{81:[1,221],82:[1,222],83:[1,223],84:[1,224],85:[1,225],86:[1,226],87:[1,227]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:228,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,230]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:231,225:251,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vd1,[2,198]),o($Vd1,[2,199]),o($Vd1,[2,200]),o($Vd1,[2,201]),o($Vd1,[2,202]),o($Vd1,[2,203]),o($Vd1,[2,204]),o($Vd1,[2,205]),o($Vd1,[2,206]),o($Vd1,[2,207]),o($Vd1,[2,208]),o($Vd1,[2,209]),o($Vd1,[2,210]),o($Vd1,[2,211]),o($Vd1,[2,212]),o($Vd1,[2,213]),{3:106,4:$VB,5:$VC,33:260,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:261,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,215]),{64:[1,262]},o($Vd1,$VL1,{64:$VM1,106:[1,264]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:265,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,193]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,258,259,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,252]),o($VN1,[2,253]),o($VN1,[2,254]),o($VN1,$VO1),o($VN1,[2,256]),o($VN1,[2,257]),{3:268,4:$VB,5:$VC},{3:269,4:$VB,5:$VC},o($VP1,[2,262]),o($VP1,[2,263]),{3:270,4:$VB,5:$VC,64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},{64:[1,277]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:278,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:279,203:280,204:$VR1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,282]},{64:[1,283]},o($VS1,[2,476]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:284,317:287,318:289,319:$V61,322:285,323:[1,286]},{3:299,4:$VB,5:$VC,93:300},{64:[2,239]},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},o($VU1,[2,1]),o($VU1,[2,2]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,320:301,321:[1,302],324:303},{3:193,4:$VB,5:$VC,92:307},{301:[1,308]},o($V81,$VX1,{253:309,264:$VY1}),{301:[1,311]},{3:312,4:$VB,5:$VC},{86:[1,313]},o($V81,$VX1,{253:314,264:$VY1}),o($V81,$VX1,{253:315,264:$VY1}),o($VA,[2,527],{61:[1,316]}),o($VZ1,[2,528]),{3:317,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:318},{3:319,4:$VB,5:$VC},o($V81,$V_1,{294:320,264:$V$1}),{301:[1,322]},{3:323,4:$VB,5:$VC},o($V81,$V_1,{294:324,264:$V$1}),o($V81,$V_1,{294:325,264:$V$1}),{3:193,4:$VB,5:$VC,92:326},o($V81,[2,338]),{3:193,4:$VB,5:$VC,92:327},o($V02,[2,83],{68:328,97:[1,329]}),{3:173,4:$VB,5:$VC,92:330,93:331,94:332,95:333,96:[1,334],193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,336],346:335},{122:[2,536]},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:337,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:338,66:59,74:79,80:$V4},o($V12,[2,95],{3:339,4:$VB,5:$VC,63:[1,340]}),o($V12,[2,98],{3:341,4:$VB,5:$VC,63:[1,342]}),o($V12,[2,99],{3:343,4:$VB,5:$VC,63:[1,344]}),o($V12,[2,102],{3:345,4:$VB,5:$VC,63:[1,346]}),o($V12,[2,105],{3:347,4:$VB,5:$VC,63:[1,348]}),o([4,5,8,9,11,61,63,65,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22,{64:$VM1,106:$V32}),{3:270,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,108]),{33:350,61:[1,351],66:59,74:79,80:$V4},o($V42,[2,56]),{63:[1,352]},{252:[1,353]},{97:[1,354]},o($VA,[2,447],{207:[1,355]}),{306:[1,356]},{97:[1,357]},o($VA,[2,451],{97:[1,359],207:[1,358]}),{3:193,4:$VB,5:$VC,92:360},o($VA,[2,514]),{9:$Vx,11:$Vy,202:[1,361]},o($VA,[2,512]),o($VA,[2,513]),{3:362,4:$VB,5:$VC},o($VA,[2,440]),{239:[1,363]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V22,{106:$V32}),o($VA,[2,464]),o($VA,[2,467]),o($VA,[2,468]),o($VA,[2,469]),o($VA,$VO1,{61:[1,364]}),{64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},o($V52,[2,223]),o($V52,[2,224]),o($V52,[2,225]),o($V52,[2,226]),o($V52,[2,227]),o($V52,[2,228]),o($V52,[2,229]),{64:$VM1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:251,10:365,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,522]),o($VA,[2,523]),o($VA,[2,466],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,524],{61:[1,366]}),o($VZ1,[2,526]),{120:[1,368],325:367,328:[1,369]},{3:370,4:$VB,5:$VC},o($Vg1,$Vh1,{76:371,88:$Vi1}),o($Vg1,$Vh1,{76:372,88:$Vi1}),o($Vg1,$Vh1,{76:373,88:$Vi1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:374,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,378],89:377,152:$VF},o($Vj1,[2,64]),o($Vj1,[2,65]),o($Vj1,[2,66]),o($Vj1,[2,67]),o($Vj1,[2,68]),o($Vj1,[2,69]),o($Vj1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:379,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,516],{333:380,206:[1,381]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:382,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:390,4:$VB,5:$VC,64:[1,392],89:391,93:393,152:$VF},o($V62,[2,316],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:394,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:399,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V62,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:401,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:402,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,405],226:404,236:[1,406],237:[1,407]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:408,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:298,4:$VB,5:$VC,64:[1,410],93:413,156:412,193:$V72,231:411},{230:[1,415]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:416,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:419,289:$V92},{65:[1,422]},{65:[1,423],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,425],79:[1,426],89:92,93:88,94:96,95:97,96:$VE,121:424,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,428],89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:427,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:430,4:$VB,5:$VC,81:$Va2,155:[1,432]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,234:$VJ1}),o($Vb2,[2,298],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,299],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($VP1,[2,260]),o($VP1,[2,261]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,258]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:433,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,472]),o($VS1,[2,473]),o($VS1,[2,474]),o($VS1,[2,475]),o($VS1,[2,477]),{33:434,66:59,74:79,80:$V4},{155:$Vk1,200:435,203:280,204:$VR1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{201:436,202:$Vc2,203:437,204:$VR1,206:$Vd2},o($Ve2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:439,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:441,289:$V92},o($VS1,[2,478]),{61:[1,443],323:[1,442]},o($VS1,[2,494]),o($Vf2,[2,501]),o($Vg2,[2,479]),o($Vg2,[2,480]),o($Vg2,[2,481]),o($Vg2,[2,482]),o($Vg2,[2,483]),o($Vg2,[2,484]),o($Vg2,[2,485]),o($Vg2,[2,486]),o($Vg2,[2,487]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:444,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,$VL1,{64:$VM1,106:$Vh2}),o($Vd1,[2,217],{64:$VM1}),o($Vd1,[2,218]),{61:[1,447],321:[1,446]},o($VS1,[2,491]),o($Vi2,[2,496]),{196:[1,448]},{196:[1,449]},{196:[1,450]},{293:[1,454],296:[1,451],298:[1,452],299:[1,453]},{3:455,4:$VB,5:$VC},{3:456,4:$VB,5:$VC},{229:[1,457]},o($Vj2,$VX1,{253:458,264:$VY1}),{120:[1,459]},{3:460,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:461},{3:193,4:$VB,5:$VC,92:462},{193:$V71,342:463},{4:$V82,63:[1,465],169:464,289:$V92},o($VA,[2,331],{124:[1,466]}),o($VA,[2,432]),{3:467,4:$VB,5:$VC},{194:[1,468]},o($Vj2,$V_1,{294:469,264:$V$1}),o($VA,[2,446]),{3:193,4:$VB,5:$VC,92:470},{3:193,4:$VB,5:$VC,92:471},{33:475,64:[1,474],66:59,74:79,80:$V4,245:[1,472],247:[1,473]},{297:[1,476]},o($Vk2,[2,145],{69:477,124:[1,478]}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,98:479,99:480,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V91,[2,76]),o($V91,[2,77]),o($V91,[2,78]),o($V91,[2,79]),o($V91,[2,80]),{120:[1,482],347:481},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:483,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,537]},{65:[1,484]},o($V12,[2,93]),{3:485,4:$VB,5:$VC},o($V12,[2,96]),{3:486,4:$VB,5:$VC},o($V12,[2,100]),{3:487,4:$VB,5:$VC},o($V12,[2,103]),{3:488,4:$VB,5:$VC},o($V12,[2,106]),{3:489,4:$VB,5:$VC},{3:490,4:$VB,5:$VC},o($VA,[2,54]),{3:178,4:$VB,5:$VC,62:491},{64:[1,492]},{3:193,4:$VB,5:$VC,92:493},{3:193,4:$VB,5:$VC,92:494},{96:$VE,153:495,191:$VV},o($VA,[2,449],{207:[1,496]}),{3:193,4:$VB,5:$VC,92:497},{96:$VE,153:498,191:$VV},{3:499,4:$VB,5:$VC},o($VA,[2,534]),o($VA,[2,521]),o($VA,[2,439]),{3:503,4:$VB,5:$VC,156:502,240:500,241:501},{164:504,193:$Vf1,314:126,315:$V51,319:$V61},o($VA,[2,518]),{96:$VE,153:505,191:$VV},o($VA,[2,502]),o($VA,[2,510]),o($VA,[2,511]),{214:[1,508],219:[1,506],326:507},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:509,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:510,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vl2,[2,62],{61:$Vm2}),o($Vn2,$Vo2,{149:513,150:$Vp2,151:$Vq2}),o($Vr2,[2,190],{225:251,3:517,153:519,4:$VB,5:$VC,63:[1,516],96:$VE,152:[1,518],155:$Vk1,191:$VV,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vg1,[2,71],{90:[1,520]}),{89:521,152:$VF},o($Vz,[2,9]),o($VA,[2,515]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:522,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vs2,[2,271],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vs2,[2,272],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,273],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,274],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vt2,[2,275],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,276],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,277],{225:251,213:$Vr1,214:$Vs1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,278],{225:251,214:$Vs1}),o($Vd1,[2,279],{64:$VM1}),o($Vd1,[2,280]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:523,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,282]),o($Vu2,[2,283],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,284],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,285],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,286],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,287],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,288],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,289],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,290],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,291],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,292],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),{64:[1,524]},{64:[2,322]},{64:[2,323]},{64:[2,324]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,295],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1}),{3:106,4:$VB,5:$VC,33:525,49:104,64:$VD,65:[1,527],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:526,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,307]),o($Vd1,[2,313]),o($Vd1,[2,314]),{64:[1,528]},{3:298,4:$VB,5:$VC,64:[1,529],93:413,156:412,193:$V72,231:530},o($Vv2,[2,309],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o($Vv2,[2,310],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,311],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vd1,[2,312]),o($Vw2,[2,403],{64:[1,531]}),{64:[1,532]},o($Vd1,[2,214]),o($Vd1,[2,300]),{65:[1,533],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:534,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:535,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vx2,65:[1,536]},o($VP1,[2,249]),o($Vy2,[2,250],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,$Vz2,{106:[1,538]}),o($VS1,[2,196]),o($Vd1,[2,192]),{65:[1,539],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,540]},{201:541,202:$Vc2,203:437,204:$VR1,206:$Vd2},{202:[1,542]},o($Ve2,[2,266]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:543,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vk1,205:[1,544],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{63:[1,545],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{61:[1,546]},o($VS1,[2,492]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:548,318:289,319:$V61,323:[1,547]},{65:[1,549],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:550,4:$VB,5:$VC,81:$Va2},o($VS1,[2,489]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,321:[1,551],324:552},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:553,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:554,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:289,319:$V61},{83:[1,557],297:[1,556]},{83:[1,558]},{83:[1,559]},{83:[1,560]},o($VA,[2,428],{63:[1,562],64:[1,561]}),o($VA,[2,433]),{194:[1,563]},{3:564,4:$VB,5:$VC,96:$VE,153:565,191:$VV},{3:193,4:$VB,5:$VC,92:566},{120:[1,567]},o($VA,[2,356],{64:[1,568]}),{63:[1,570],64:[1,569]},o($VZ1,[2,529]),o($VZ1,[2,530],{219:[1,571]}),{4:$V82,169:572,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:573,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,441]),o($Vj2,[2,421]),{3:574,4:$VB,5:$VC,96:$VE,153:575,191:$VV},o($VA,[2,419]),o($VA,[2,463]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:576,314:126,315:$V51,319:$V61},{245:[1,580]},{3:503,4:$VB,5:$VC,123:581,156:582},o($VA,[2,335]),{3:583,4:$VB,5:$VC},o($VB2,[2,147],{70:584,125:[1,585]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:586,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V02,[2,81],{61:[1,587]}),o($VC2,[2,88],{100:588,107:589,101:590,108:591,111:594,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),{204:$VN2,348:603,350:604,351:605},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:607,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,538]},o($V12,[2,92],{3:608,4:$VB,5:$VC,63:[1,609]}),o($V12,[2,94]),o($V12,[2,97]),o($V12,[2,101]),o($V12,[2,104]),o($V12,[2,107]),o([4,5,8,9,11,61,63,64,65,80,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,109]),o($V42,[2,55]),{33:610,66:59,74:79,80:$V4},o($VA,[2,459],{97:[1,611]}),o($VA,[2,455],{97:[1,612]}),o($VA,[2,448]),{96:$VE,153:613,191:$VV},o($VA,[2,457],{97:[1,614]}),o($VA,[2,452]),o($VA,[2,453],{207:[1,615]}),o($VA,[2,326],{61:$VO2,124:[1,616]}),o($VP2,[2,327]),{219:[1,618]},o([8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VL1,{106:$Vh2}),o($VA,[2,470]),o($VZ1,[2,525]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:619,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,621],219:[1,620]},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:622},o($Vl2,[2,59],{61:$Vm2}),o($Vl2,[2,60],{61:$Vm2}),o($Vl2,[2,61],{61:$Vm2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:376,148:626,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:627,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:629,4:$VB,5:$VC,96:$VE,152:[1,630],153:631,191:$VV},o($Vr2,[2,185]),o($Vr2,[2,187]),o($Vr2,[2,189]),o($Vg1,[2,73]),{65:[1,632]},o($VA,[2,517]),{65:[1,633],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,33:634,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:635,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,636]},{61:$Vx2,65:[1,637]},o($Vd1,[2,305]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:638,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:639,49:104,64:$VD,65:[1,641],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:640,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,308]),{152:[1,642]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:643,314:126,315:$V51,319:$V61},o($Vd1,$VS2,{174:645,175:$VT2}),{65:[1,647],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,648],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VP1,[2,248]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:649,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:650,4:$VB,5:$VC,155:[1,651]},o($VS1,[2,471]),o($Vd1,[2,259]),{202:[1,652]},o($Vd1,[2,265]),{155:$Vk1,202:[2,269],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:653,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:654,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,493]),o($Vf2,[2,500]),o($Vg2,[2,488]),o($VS1,$Vz2,{106:[1,656]}),o($VS1,[2,490]),o($Vi2,[2,495]),o($Vi2,[2,497]),o($Vi2,[2,498]),o($Vi2,[2,499]),{3:657,4:$VB,5:$VC},{3:658,4:$VB,5:$VC},{3:660,4:$VB,5:$VC,286:659},{3:660,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:663,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:664,4:$VB,5:$VC},o($Vj2,[2,369]),o($VA,$VU2,{303:665,63:$VV2,64:[1,666]}),o($VA,$VU2,{303:668,63:$VV2}),{64:[1,669]},{3:193,4:$VB,5:$VC,92:670},{3:660,4:$VB,5:$VC,63:[1,673],254:671,265:672,286:674},{3:503,4:$VB,5:$VC,123:675,156:582},{33:676,66:59,74:79,80:$V4},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:677,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VZ1,[2,531],{219:[1,678]}),o($VA,[2,330],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,442]),o($VA,[2,443]),o($VA,[2,332],{61:$VW2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:680,314:126,315:$V51,319:$V61},o($VX2,[2,340]),o($VX2,[2,341]),o($VA,[2,333]),{61:$VY2,65:[1,681]},o($VZ2,[2,353]),o($VA,[2,427]),o($V_2,[2,166],{71:683,139:[1,684]}),{126:[1,685]},o($Vk2,[2,146],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:686,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V02,[2,82],{108:591,111:594,107:687,101:688,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),o($V$2,[2,113]),o($V$2,[2,114]),{3:173,4:$VB,5:$VC,64:[1,692],92:690,93:693,94:691,95:694,109:689,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{103:[1,695],113:$V03},{103:[1,697],113:$V13},o($V23,[2,129]),{102:[1,701],104:[1,700],111:699,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2},o($V23,[2,131]),{113:[1,702]},{104:[1,704],113:[1,703]},{104:[1,706],113:[1,705]},{104:[1,707]},{113:[1,708]},{113:[1,709]},o($VA,[2,558],{349:710,350:711,351:712,204:$VN2,356:[1,713]}),o($V33,[2,542]),o($V33,[2,543]),{229:[1,715],352:[1,714]},{155:$Vk1,204:[2,539],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V12,[2,90]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,450]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,156:502,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,503],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:726},o($V43,[2,506]),o($V43,[2,507]),o($V43,[2,508]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,$Vo2,{149:728,150:$Vp2,151:$Vq2}),o($Vn2,[2,181],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vn2,[2,182],{225:251,150:[1,729],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vr2,[2,184]),o($Vr2,[2,186]),o($Vr2,[2,188]),o($Vg1,[2,72]),o($Vd1,[2,281]),{65:[1,730]},{61:$Vx2,65:[1,731]},o($Vd1,[2,301]),o($Vd1,[2,303]),{65:[1,732],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,733]},{61:$Vx2,65:[1,734]},o($Vd1,[2,306]),{61:[1,735],65:[1,736]},{61:$V53,65:[1,737]},o($Vy2,[2,345],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,[2,230]),{64:[1,739]},o($Vd1,$VS2,{174:740,175:$VT2}),o($Vd1,$VS2,{174:741,175:$VT2}),o($Vy2,[2,251],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VS1,[2,194]),o($Vd1,[2,191]),o($Vd1,[2,264]),o($Ve2,[2,268],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:650,4:$VB,5:$VC},o($VA,[2,422]),{297:[1,746]},o($VA,[2,423]),o($V63,[2,400],{169:747,4:$V82,288:[1,748],289:$V92}),o($VA,[2,424]),o($VA,[2,426]),{61:$Vx2,65:[1,749]},o($VA,[2,430]),o($VA,[2,434]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,436]),{3:753,4:$VB,5:$VC,96:$V73,278:752},{64:[1,755]},{65:[1,756]},{61:[1,757],65:[2,371]},{33:758,66:59,74:79,80:$V4},o($Vy2,[2,396]),{61:$VY2,65:[1,759]},o($VA,[2,462]),o($VZ1,[2,532],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:760,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,761],94:763,164:762,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V53,65:[1,764]},{33:766,66:59,74:79,80:$V4,245:[1,765]},{3:503,4:$VB,5:$VC,156:767},o($V83,[2,174],{72:768,145:[1,769]}),{126:[1,770]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:771,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,89]),o($V$2,[2,111]),o($V$2,[2,112]),o($V$2,[2,144],{110:777,120:[1,778],122:[1,779]}),o($Vc3,[2,116],{3:780,4:$VB,5:$VC,63:[1,781]}),{3:782,4:$VB,5:$VC,63:[1,783]},{33:784,66:59,74:79,80:$V4},o($Vc3,[2,123],{3:785,4:$VB,5:$VC,63:[1,786]}),o($Vc3,[2,126],{3:787,4:$VB,5:$VC,63:[1,788]}),{64:[1,789]},o($V23,[2,141]),{64:[1,790]},o($V23,[2,137]),o($V23,[2,130]),{113:$V13},{113:$V03},o($V23,[2,132]),o($V23,[2,133]),{113:[1,791]},o($V23,[2,135]),{113:[1,792]},{113:[1,793]},o($V23,[2,139]),o($V23,[2,140]),o($VA,[2,535]),o($V33,[2,540]),o($V33,[2,541]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:794,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,795],227:[1,796]},{352:[1,797]},o($V12,[2,91]),o($V42,[2,57]),o($VA,[2,460]),o($VA,[2,456]),o($VA,[2,458]),o($VA,[2,454]),o($VA,[2,325],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VP2,[2,328]),o($VP2,[2,329],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,504],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V43,[2,505]),{65:[1,798],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vn2,[2,178]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:799,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,293]),o($Vd1,[2,294]),o($Vd1,[2,315]),o($Vd1,[2,302]),o($Vd1,[2,304]),{152:[1,800]},o($Vw2,[2,402]),o($Vw2,[2,404]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:801,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:802,177:803,178:[1,804]},o($Vd1,[2,231]),o($Vd1,[2,232]),o($Vd1,[2,219]),{152:[1,806]},o($Vd1,[2,221]),{152:[1,807]},{3:808,4:$VB,5:$VC},o($V63,[2,405],{287:809,290:810,291:811,273:820,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V63,[2,399]),o($VA,[2,429],{63:[1,822]}),{61:$Vx2,65:[1,823]},o($VA,[2,438]),{61:$Vn3,65:[1,824]},o($Vy2,[2,392]),o($Vy2,[2,393]),{3:753,4:$VB,5:$VC,96:$V73,278:826},o($VA,[2,357],{255:827,256:828,257:829,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($Vs3,$Vt3,{3:660,266:834,286:835,267:836,268:837,4:$VB,5:$VC,274:$Vu3}),{65:[2,372]},{63:[1,839]},o($VZ1,[2,533],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:840,314:126,315:$V51,319:$V61},o($VX2,[2,343]),o($VX2,[2,344]),o($VX2,[2,339]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:841,314:126,315:$V51,319:$V61},o($VA,[2,336]),o($VZ2,[2,354]),o($Vv3,[2,157],{73:842,135:[1,843],136:[1,844],137:[1,845]}),{89:846,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:847,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VB2,[2,155],{128:850,61:$Vw3,134:[1,852]}),o($Vx3,[2,149]),{131:[1,853]},{64:[1,854]},{64:[1,855]},o($Vx3,[2,154],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,115]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:856,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:857,156:582},o($Vc3,[2,117]),{3:858,4:$VB,5:$VC},o($Vc3,[2,119]),{3:859,4:$VB,5:$VC},{65:[1,860]},o($Vc3,[2,124]),{3:861,4:$VB,5:$VC},o($Vc3,[2,127]),{3:862,4:$VB,5:$VC},{33:863,66:59,74:79,80:$V4},{33:864,66:59,74:79,80:$V4},o($V23,[2,134]),o($V23,[2,136]),o($V23,[2,138]),o($VA,[2,559],{61:$Vm2,91:[1,865]}),{238:$Vy3,242:$Vz3,353:866},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:869,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,871],205:[1,870],227:[1,872]},o($V43,[2,509]),o($Vn2,[2,183],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,873]},o($Vy2,[2,346],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,874],139:$Vd3,177:875},{65:[1,876]},{126:[1,877]},{126:[1,878]},{65:[1,879]},{65:[1,880]},o($VA,[2,425]),o($V63,[2,398]),o($V63,[2,406],{273:820,291:881,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V52,[2,408]),{277:[1,882]},{277:[1,883]},{3:884,4:$VB,5:$VC},o($V52,[2,412]),o($V52,[2,414],{64:[1,885]}),{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:$VE,152:$VF,153:201,159:202,160:203,171:886,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V52,[2,416]),{192:[1,887]},o($V52,[2,418]),{64:[1,888]},{3:889,4:$VB,5:$VC},o($VA,$VU2,{303:890,63:$VV2}),o($VA,[2,444]),{3:891,4:$VB,5:$VC,96:[1,892]},{61:$Vn3,65:[1,893]},o($VA,[2,355]),o($VA,[2,358],{257:894,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($VA3,[2,360]),o($VA3,[2,361]),{219:[1,895]},{219:[1,896]},{219:[1,897]},{61:[1,898],65:[2,370]},o($Vy2,[2,397]),o($Vy2,[2,373]),{78:[1,906],86:[1,907],269:899,270:900,271:901,272:902,273:903,275:$Vi3,276:[1,904],277:[1,908],279:[1,905]},{3:909,4:$VB,5:$VC},{33:910,66:59,74:79,80:$V4},{61:$V53,65:[1,911]},o($VA,[2,334],{61:$VW2}),o($Vv3,[2,58]),{33:912,66:59,74:79,79:[1,913],80:$V4,138:[1,914]},{33:915,66:59,74:79,80:$V4,138:[1,916]},{33:917,66:59,74:79,80:$V4,138:[1,918]},o($V83,[2,176],{146:919,147:[1,920]}),o($V_2,[2,167],{61:$VB3}),o($VC3,[2,168]),o($VC3,[2,170],{225:251,142:[1,922],143:[1,923],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VB2,[2,148]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,129:924,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:925,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:927,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:928,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V$2,[2,142],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,143],{61:$VY2}),o($Vc3,[2,118]),o($Vc3,[2,120]),{3:929,4:$VB,5:$VC,63:[1,930]},o($Vc3,[2,125]),o($Vc3,[2,128]),{65:[1,931]},{65:[1,932]},{3:193,4:$VB,5:$VC,92:934,193:[1,933]},o($V33,[2,544]),o($V33,[2,546]),{239:[1,935]},{155:$Vk1,205:[1,936],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{243:$VD3,354:937},{312:[1,940],355:[1,939]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:941,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vw2,[2,401]),o($Vd1,[2,234]),{65:[1,942]},o($Vd1,[2,235]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:943,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:944,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,220]),o($Vd1,[2,222]),o($V52,[2,407]),o($V52,[2,409]),{280:[1,945]},{64:[1,946]},{89:947,152:$VF},o($V52,[2,415]),o($V52,[2,417]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:948,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,431]),o($VA,[2,435]),o($Vy2,[2,394]),o($Vy2,[2,395]),o($VA,[2,445]),o($VA3,[2,359]),{3:949,4:$VB,5:$VC},{89:950,152:$VF},{3:951,4:$VB,5:$VC},o($Vs3,$Vt3,{268:837,267:952,274:$Vu3}),o($Vy2,[2,375]),o($Vy2,[2,376]),o($Vy2,[2,377]),o($Vy2,[2,378]),o($Vy2,[2,379]),{277:[1,953]},{277:[1,954]},o($Vy2,[2,389]),{3:955,4:$VB,5:$VC},{3:956,4:$VB,5:$VC},o($Vs3,[2,381]),o($VA,[2,461]),o($VX2,[2,342]),o($Vv3,[2,158]),{33:957,66:59,74:79,80:$V4,138:[1,958]},{33:959,66:59,74:79,80:$V4},o($Vv3,[2,160]),{33:960,66:59,74:79,80:$V4},o($Vv3,[2,161]),{33:961,66:59,74:79,80:$V4},o($V83,[2,175]),{89:962,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,141:963,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC3,[2,171]),{144:[1,964]},o($Vx3,[2,150]),o($VB2,[2,156],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:965,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vw3,65:[1,966]},{61:$Vw3,65:[1,967]},o($Vc3,[2,121]),{3:968,4:$VB,5:$VC},{3:969,4:$VB,5:$VC,63:[1,970]},{3:971,4:$VB,5:$VC,63:[1,972]},{3:973,4:$VB,5:$VC},o($VA,[2,561],{64:[1,974]}),{3:503,4:$VB,5:$VC,156:502,240:975,241:501},{238:$Vy3,242:$Vz3,353:976},o($V33,[2,548]),{64:[1,978],245:[1,977],247:[1,979]},{205:[1,980],227:[1,981]},{205:[1,982],227:[1,983]},{155:$Vk1,205:[1,984],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vd1,[2,236]),o([65,139],[2,237],{61:$Vw3}),{61:$VB3,65:[2,238]},{3:985,4:$VB,5:$VC},{3:986,4:$VB,5:$VC},{61:[1,987]},{65:[1,988],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VA3,[2,362]),o($VA3,[2,363]),o($VA3,[2,364]),o($Vy2,[2,374]),{64:[1,989]},{64:[1,990]},{64:[1,991]},{64:[1,992]},o($Vv3,[2,159]),{33:993,66:59,74:79,80:$V4},o($Vv3,[2,162]),o($Vv3,[2,164]),o($Vv3,[2,165]),o($V83,[2,177]),o($VC3,[2,169]),o($VC3,[2,172],{142:[1,994]}),{61:$Vw3,65:[1,995]},o($Vx3,[2,152]),o($Vx3,[2,153]),o($Vc3,[2,122]),o($V$2,[2,84]),{3:996,4:$VB,5:$VC},o($V$2,[2,86]),{3:997,4:$VB,5:$VC},o($VA,[2,560]),{3:503,4:$VB,5:$VC,123:998,156:582},o($V33,[2,547],{61:$VO2}),o($V33,[2,545]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:999,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:1000,156:582},{245:[1,1001]},{243:$VD3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1004},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1005,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1006},{64:[1,1007]},{65:[1,1008]},{89:1009,152:$VF},o($V52,[2,382]),{3:753,4:$VB,5:$VC,96:$V73,278:1010},{3:753,4:$VB,5:$VC,96:$V73,278:1011},{3:503,4:$VB,5:$VC,123:1012,156:582},{3:503,4:$VB,5:$VC,123:1013,156:582},o($Vv3,[2,163]),o($VC3,[2,173]),o($Vx3,[2,151]),o($V$2,[2,85]),o($V$2,[2,87]),{61:$VY2,65:[1,1014]},o($V33,[2,554],{61:$VW2}),{61:$VY2,65:[1,1015]},o($V33,[2,556]),o($V33,[2,549]),{155:$Vk1,205:[1,1016],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,552]),{155:$Vk1,205:[1,1017],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,550]),{3:1018,4:$VB,5:$VC},o($V52,[2,411]),{65:[1,1019]},{61:$Vn3,65:[1,1020]},{61:$Vn3,65:[1,1021]},{61:$VY2,65:[1,1022]},{61:$VY2,65:[1,1023]},o($VA,[2,562]),{245:[1,1024],247:[1,1025]},{243:$VD3,354:1026},{238:$Vy3,242:$Vz3,353:1027},{65:[1,1028]},o($V52,[2,413]),o($Vy2,[2,383]),{280:[1,1029]},o($Vy2,[2,390]),o($Vy2,[2,391]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1030,314:126,315:$V51,319:$V61},{245:[1,1031]},o($V33,[2,551]),o($V33,[2,553]),o($V52,[2,410]),{3:1032,4:$VB,5:$VC},o($V33,[2,555],{61:$VW2}),o($V33,[2,557]),{64:[1,1033]},{3:753,4:$VB,5:$VC,96:$V73,278:1034},{61:$Vn3,65:[1,1035]},o($Vy2,[2,385],{281:1036,282:1037,120:[1,1038]}),o($Vy2,[2,384]),{120:[1,1040],283:1039},{242:[1,1041]},o($Vy2,[2,386]),{238:[1,1042]},{284:[1,1043]},{284:[1,1044]},{285:[1,1045]},{285:[1,1046]},{120:[2,387]},o($Vy2,[2,388])], -defaultActions: {81:[2,3],129:[2,239],130:[2,240],131:[2,241],132:[2,242],133:[2,243],134:[2,244],135:[2,245],136:[2,246],137:[2,247],165:[2,536],337:[2,537],405:[2,322],406:[2,323],407:[2,324],483:[2,538],758:[2,372],1045:[2,387]}, +table: [o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{253:[1,141]},{3:142,4:$VB,5:$VC},o($V71,[2,366],{3:144,252:147,4:$VB,5:$VC,78:[1,146],86:[1,145],262:[1,148],263:[1,149],301:[1,143]}),{193:$V81,341:150,342:151},{97:[1,153]},{301:[1,154]},{3:156,4:$VB,5:$VC,86:[1,157],253:[1,158],301:[1,155],309:[1,159]},o($V91,[2,338],{244:160,91:[1,161]}),{253:[1,162]},o($Va1,[2,75],{67:163,91:[1,164]}),{3:174,4:$VB,5:$VC,64:$Vb1,91:[1,167],92:169,93:171,94:170,95:172,96:$Vc1,104:166,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01,345:165},{3:179,4:$VB,5:$VC,60:177,62:178},{3:183,4:$VB,5:$VC,86:[1,184],251:[1,180],306:[1,182],307:[1,185],308:[1,181]},{253:[1,186]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:188,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,187],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,189]},{330:[1,190]},{3:192,4:$VB,5:$VC,301:[1,191]},{3:194,4:$VB,5:$VC,92:193},o($VA,[2,466],{153:195,96:$VE,191:$VV}),o($Ve1,[2,217]),{96:$VE,153:196,191:$VV},{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:[1,199],152:$VF,153:202,159:203,160:204,164:197,171:198,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:209,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,520]),o($VA,[2,521]),{3:106,4:$VB,5:$VC,33:210,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:212,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:211,314:126,315:$V51,319:$V61},{96:$VE,153:214,191:$VV,339:213},{3:215,4:$VB,5:$VC,193:[1,216]},o($Vh1,$Vi1,{76:220,75:[1,217],78:[1,218],79:[1,219],88:$Vj1}),o($Vk1,[2,63],{81:[1,222],82:[1,223],83:[1,224],84:[1,225],85:[1,226],86:[1,227],87:[1,228]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:230,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,231]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:232,225:252,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Ve1,[2,199]),o($Ve1,[2,200]),o($Ve1,[2,201]),o($Ve1,[2,202]),o($Ve1,[2,203]),o($Ve1,[2,204]),o($Ve1,[2,205]),o($Ve1,[2,206]),o($Ve1,[2,207]),o($Ve1,[2,208]),o($Ve1,[2,209]),o($Ve1,[2,210]),o($Ve1,[2,211]),o($Ve1,[2,212]),o($Ve1,[2,213]),o($Ve1,[2,214]),{3:106,4:$VB,5:$VC,33:261,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:262,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,216]),{64:[1,263]},o($Ve1,$VM1,{64:$VN1,106:[1,265]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:268,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,194]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,260,261,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,253]),o($VO1,[2,254]),o($VO1,[2,255]),o($VO1,$VP1),o($VO1,[2,257]),o($VO1,[2,258]),{3:269,4:$VB,5:$VC},{3:270,4:$VB,5:$VC},o($VQ1,[2,263]),o($VQ1,[2,264]),{3:271,4:$VB,5:$VC,64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},{64:[1,278]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:279,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:280,203:281,204:$VS1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,283]},{64:[1,284]},o($VT1,[2,477]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:285,317:288,318:290,319:$V61,322:286,323:[1,287]},{3:300,4:$VB,5:$VC,93:301},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},{64:[2,248]},o($VV1,[2,1]),o($VV1,[2,2]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,320:302,321:[1,303],324:304},{3:194,4:$VB,5:$VC,92:308},{301:[1,309]},o($V91,$VY1,{254:310,264:$VZ1}),{301:[1,312]},{3:313,4:$VB,5:$VC},{86:[1,314]},{253:[1,315],309:[1,316]},o($V71,[2,367]),o($V71,[2,368]),o($VA,[2,528],{61:[1,317]}),o($V_1,[2,529]),{3:318,4:$VB,5:$VC},{3:194,4:$VB,5:$VC,92:319},{3:320,4:$VB,5:$VC},o($V91,$V$1,{294:321,264:$V02}),{301:[1,323]},{3:324,4:$VB,5:$VC},o($V91,$V$1,{294:325,264:$V02}),o($V91,$V$1,{294:326,264:$V02}),{3:194,4:$VB,5:$VC,92:327},o($V91,[2,339]),{3:194,4:$VB,5:$VC,92:328},o($V12,[2,84],{68:329,97:[1,330]}),{3:174,4:$VB,5:$VC,92:331,93:332,94:333,95:334,96:[1,335],193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,337],346:336},{122:[2,537]},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:338,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:339,66:59,74:79,80:$V4},o($V22,[2,96],{3:340,4:$VB,5:$VC,63:[1,341]}),o($V22,[2,99],{3:342,4:$VB,5:$VC,63:[1,343]}),o($V22,[2,100],{3:344,4:$VB,5:$VC,63:[1,345]}),o($V22,[2,103],{3:346,4:$VB,5:$VC,63:[1,347]}),o($V22,[2,106],{3:348,4:$VB,5:$VC,63:[1,349]}),o([4,5,8,9,11,61,63,65,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32,{64:$VN1,106:$V42}),{3:271,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,109]),{33:351,61:[1,352],66:59,74:79,80:$V4},o($V52,[2,56]),{63:[1,353]},{253:[1,354]},{97:[1,355]},o($VA,[2,448],{207:[1,356]}),{306:[1,357]},{97:[1,358]},o($VA,[2,452],{97:[1,360],207:[1,359]}),{3:194,4:$VB,5:$VC,92:361},o($VA,[2,515]),{9:$Vx,11:$Vy,202:[1,362]},o($VA,[2,513]),o($VA,[2,514]),{3:363,4:$VB,5:$VC},o($VA,[2,441]),{239:[1,364]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V32,{106:$V42}),o($VA,[2,465]),o($VA,[2,468]),o($VA,[2,469]),o($VA,[2,470]),o($VA,$VP1,{61:[1,365]}),{64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},o($V62,[2,224]),o($V62,[2,225]),o($V62,[2,226]),o($V62,[2,227]),o($V62,[2,228]),o($V62,[2,229]),o($V62,[2,230]),{64:$VN1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:252,10:366,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,523]),o($VA,[2,524]),o($VA,[2,467],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,525],{61:[1,367]}),o($V_1,[2,527]),{120:[1,369],325:368,328:[1,370]},{3:371,4:$VB,5:$VC},o($Vh1,$Vi1,{76:372,88:$Vj1}),o($Vh1,$Vi1,{76:373,88:$Vj1}),o($Vh1,$Vi1,{76:374,88:$Vj1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:375,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,379],89:378,152:$VF},o($Vk1,[2,64]),o($Vk1,[2,65]),o($Vk1,[2,66]),o($Vk1,[2,67]),o($Vk1,[2,68]),o($Vk1,[2,69]),o($Vk1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:380,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,517],{333:381,206:[1,382]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:390,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:391,4:$VB,5:$VC,64:[1,393],89:392,93:394,152:$VF},o($V72,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:399,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:401,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V72,[2,322],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:402,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:404,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,406],226:405,236:[1,407],237:[1,408]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:410,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:299,4:$VB,5:$VC,64:[1,411],93:414,156:413,193:$V82,231:412},{230:[1,416]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:419,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:420,289:$Va2},{65:[1,423]},{65:[1,424],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,426],79:[1,427],89:92,93:88,94:96,95:97,96:$VE,121:425,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,429],89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:428,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:431,4:$VB,5:$VC,81:$Vb2,155:[1,433]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,298],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,234:$VK1}),o($Vc2,[2,299],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,300],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($VQ1,[2,261]),o($VQ1,[2,262]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,259]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:434,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,473]),o($VT1,[2,474]),o($VT1,[2,475]),o($VT1,[2,476]),o($VT1,[2,478]),{33:435,66:59,74:79,80:$V4},{155:$Vl1,200:436,203:281,204:$VS1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{201:437,202:$Vd2,203:438,204:$VS1,206:$Ve2},o($Vf2,[2,268]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:441,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:442,289:$Va2},o($VT1,[2,479]),{61:[1,444],323:[1,443]},o($VT1,[2,495]),o($Vg2,[2,502]),o($Vh2,[2,480]),o($Vh2,[2,481]),o($Vh2,[2,482]),o($Vh2,[2,483]),o($Vh2,[2,484]),o($Vh2,[2,485]),o($Vh2,[2,486]),o($Vh2,[2,487]),o($Vh2,[2,488]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:445,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,$VM1,{64:$VN1,106:$Vi2}),o($Ve1,[2,218],{64:$VN1}),o($Ve1,[2,219]),{61:[1,448],321:[1,447]},o($VT1,[2,492]),o($Vj2,[2,497]),{196:[1,449]},{196:[1,450]},{196:[1,451]},{293:[1,455],296:[1,452],298:[1,453],299:[1,454]},{3:456,4:$VB,5:$VC},{3:457,4:$VB,5:$VC},{229:[1,458]},o($Vk2,$VY1,{254:459,264:$VZ1}),{120:[1,460]},{3:461,4:$VB,5:$VC},o($V91,$VY1,{254:462,264:$VZ1}),o($V91,$VY1,{254:463,264:$VZ1}),{193:$V81,342:464},{4:$V92,63:[1,466],169:465,289:$Va2},o($VA,[2,332],{124:[1,467]}),o($VA,[2,433]),{3:468,4:$VB,5:$VC},{194:[1,469]},o($Vk2,$V$1,{294:470,264:$V02}),o($VA,[2,447]),{3:194,4:$VB,5:$VC,92:471},{3:194,4:$VB,5:$VC,92:472},{33:476,64:[1,475],66:59,74:79,80:$V4,245:[1,473],247:[1,474]},{297:[1,477]},o($Vl2,[2,146],{69:478,124:[1,479]}),{3:174,4:$VB,5:$VC,64:[1,481],92:169,93:171,94:170,95:172,96:$Vc1,98:480,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($Va1,[2,76]),o($Va1,[2,77]),o($Va1,[2,78]),o($Va1,[2,79]),o($Va1,[2,80]),{120:[1,484],347:483},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:485,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,538]},{65:[1,486]},o($V22,[2,94]),{3:487,4:$VB,5:$VC},o($V22,[2,97]),{3:488,4:$VB,5:$VC},o($V22,[2,101]),{3:489,4:$VB,5:$VC},o($V22,[2,104]),{3:490,4:$VB,5:$VC},o($V22,[2,107]),{3:491,4:$VB,5:$VC},{3:492,4:$VB,5:$VC},o($VA,[2,54]),{3:179,4:$VB,5:$VC,62:493},{64:[1,494]},{3:194,4:$VB,5:$VC,92:495},{3:194,4:$VB,5:$VC,92:496},{96:$VE,153:497,191:$VV},o($VA,[2,450],{207:[1,498]}),{3:194,4:$VB,5:$VC,92:499},{96:$VE,153:500,191:$VV},{3:501,4:$VB,5:$VC},o($VA,[2,535]),o($VA,[2,522]),o($VA,[2,440]),{3:505,4:$VB,5:$VC,156:504,240:502,241:503},{164:506,193:$Vg1,314:126,315:$V51,319:$V61},o($VA,[2,519]),{96:$VE,153:507,191:$VV},o($VA,[2,503]),o($VA,[2,511]),o($VA,[2,512]),{214:[1,510],219:[1,508],326:509},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:512,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:513,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vm2,[2,62],{61:$Vn2}),o($Vo2,$Vp2,{149:515,150:$Vq2,151:$Vr2}),o($Vs2,[2,191],{225:252,3:519,153:521,4:$VB,5:$VC,63:[1,518],96:$VE,152:[1,520],155:$Vl1,191:$VV,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vh1,[2,71],{90:[1,522]}),{89:523,152:$VF},o($Vz,[2,9]),o($VA,[2,516]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:524,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vt2,[2,272],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vt2,[2,273],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,274],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,275],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vu2,[2,276],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,277],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,278],{225:252,213:$Vs1,214:$Vt1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,279],{225:252,214:$Vt1}),o($Ve1,[2,280],{64:$VN1}),o($Ve1,[2,281]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:525,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,283]),o($Vv2,[2,284],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,285],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,286],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,287],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,288],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,289],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,290],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,291],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,292],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,293],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),{64:[1,526]},{64:[2,323]},{64:[2,324]},{64:[2,325]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1}),{3:106,4:$VB,5:$VC,33:527,49:104,64:$VD,65:[1,529],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:528,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,308]),o($Ve1,[2,314]),o($Ve1,[2,315]),{64:[1,530]},{3:299,4:$VB,5:$VC,64:[1,531],93:414,156:413,193:$V82,231:532},o($Vw2,[2,310],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o($Vw2,[2,311],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,312],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Ve1,[2,313]),o($Vx2,[2,404],{64:[1,533]}),{64:[1,534]},o($Ve1,[2,215]),o($Ve1,[2,301]),{65:[1,535],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:536,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:537,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vy2,65:[1,538]},o($VQ1,[2,250]),o($Vz2,[2,251],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,$VA2,{106:[1,540]}),o($VT1,[2,197]),o($Ve1,[2,193]),{65:[1,541],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,542]},{201:543,202:$Vd2,203:438,204:$VS1,206:$Ve2},{202:[1,544]},o($Vf2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:545,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vl1,205:[1,546],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{63:[1,547],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{61:[1,548]},o($VT1,[2,493]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:550,318:290,319:$V61,323:[1,549]},{65:[1,551],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:552,4:$VB,5:$VC,81:$Vb2},o($VT1,[2,490]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,321:[1,553],324:554},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:556,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:557,318:290,319:$V61},{83:[1,559],297:[1,558]},{83:[1,560]},{83:[1,561]},{83:[1,562]},o($VA,[2,429],{63:[1,564],64:[1,563]}),o($VA,[2,434]),{194:[1,565]},{3:566,4:$VB,5:$VC,96:$VE,153:567,191:$VV},{3:194,4:$VB,5:$VC,92:568},{120:[1,569]},{3:194,4:$VB,5:$VC,92:570},{3:194,4:$VB,5:$VC,92:571},o($V_1,[2,530]),o($V_1,[2,531],{219:[1,572]}),{4:$V92,169:573,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:574,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,442]),o($Vk2,[2,422]),{3:575,4:$VB,5:$VC,96:$VE,153:576,191:$VV},o($VA,[2,420]),o($VA,[2,464]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:577,314:126,315:$V51,319:$V61},{245:[1,581]},{3:505,4:$VB,5:$VC,123:582,156:583},o($VA,[2,336]),{3:584,4:$VB,5:$VC},o($VC2,[2,148],{70:585,125:[1,586]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:587,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V12,[2,81],{99:588,107:590,100:591,108:592,111:595,61:$VD2,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,33:339,64:$Vb1,66:59,74:79,80:$V4,92:169,93:171,94:170,95:172,96:$Vc1,98:604,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($VO2,[2,89]),{204:$VP2,348:605,350:606,351:607},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:609,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,539]},o($V22,[2,93],{3:610,4:$VB,5:$VC,63:[1,611]}),o($V22,[2,95]),o($V22,[2,98]),o($V22,[2,102]),o($V22,[2,105]),o($V22,[2,108]),o([4,5,8,9,11,61,63,64,65,80,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,110]),o($V52,[2,55]),{33:612,66:59,74:79,80:$V4},o($VA,[2,460],{97:[1,613]}),o($VA,[2,456],{97:[1,614]}),o($VA,[2,449]),{96:$VE,153:615,191:$VV},o($VA,[2,458],{97:[1,616]}),o($VA,[2,453]),o($VA,[2,454],{207:[1,617]}),o($VA,[2,327],{61:$VQ2,124:[1,618]}),o($VR2,[2,328]),{219:[1,620]},o([8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VM1,{106:$Vi2}),o($VA,[2,471]),o($V_1,[2,526]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:621,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,623],219:[1,622]},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:624},o($Vm2,[2,59],{61:$Vn2}),o($Vm2,[2,60],{61:$Vn2}),o($Vm2,[2,61],{61:$Vn2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:377,148:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,[2,180]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:629,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:630,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:631,4:$VB,5:$VC,96:$VE,152:[1,632],153:633,191:$VV},o($Vs2,[2,186]),o($Vs2,[2,188]),o($Vs2,[2,190]),o($Vh1,[2,73]),{65:[1,634]},o($VA,[2,518]),{65:[1,635],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,33:636,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:637,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,638]},{61:$Vy2,65:[1,639]},o($Ve1,[2,306]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:640,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:641,49:104,64:$VD,65:[1,643],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:642,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,309]),{152:[1,644]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:645,314:126,315:$V51,319:$V61},o($Ve1,$VU2,{174:647,175:$VV2}),{65:[1,649],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,650],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($VQ1,[2,249]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:651,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:652,4:$VB,5:$VC,155:[1,653]},o($VT1,[2,472]),o($Ve1,[2,260]),{202:[1,654]},o($Ve1,[2,266]),{155:$Vl1,202:[2,270],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:656,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:657,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,494]),o($Vg2,[2,501]),o($Vh2,[2,489]),o($VT1,$VA2,{106:[1,658]}),o($VT1,[2,491]),o($Vj2,[2,496]),o($Vj2,[2,498]),o($Vj2,[2,499]),o($Vj2,[2,500]),{3:659,4:$VB,5:$VC},{3:660,4:$VB,5:$VC},{3:662,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC,286:663},{3:664,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:665,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:666,4:$VB,5:$VC},o($Vk2,[2,370]),o($VA,$VW2,{303:667,63:$VX2,64:[1,668]}),o($VA,$VW2,{303:670,63:$VX2}),{64:[1,671]},{3:194,4:$VB,5:$VC,92:672},o($VA,[2,357],{64:[1,673]}),{63:[1,675],64:[1,674]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:676,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V_1,[2,532],{219:[1,677]}),o($VA,[2,331],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,443]),o($VA,[2,444]),o($VA,[2,333],{61:$VY2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:679,314:126,315:$V51,319:$V61},o($VZ2,[2,341]),o($VZ2,[2,342]),o($VA,[2,334]),{61:$V_2,65:[1,680]},o($VO2,[2,354]),o($VA,[2,428]),o($V$2,[2,167],{71:682,139:[1,683]}),{126:[1,684]},o($Vl2,[2,147],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V12,[2,82],{108:592,111:595,107:685,100:686,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:687,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V03,[2,114]),o($V03,[2,115]),{3:174,4:$VB,5:$VC,64:[1,691],92:689,93:692,94:690,95:693,109:688,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{102:[1,694],113:$V13},{102:[1,696],113:$V23},o($V33,[2,130]),{101:[1,700],103:[1,699],111:698,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($V33,[2,132]),{113:[1,701]},{103:[1,703],113:[1,702]},{103:[1,705],113:[1,704]},{103:[1,706]},{113:[1,707]},{113:[1,708]},{61:$VD2,99:709,100:591,101:$VE2,103:$VF2,107:590,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,559],{349:710,350:711,351:712,204:$VP2,356:[1,713]}),o($V43,[2,543]),o($V43,[2,544]),{229:[1,715],352:[1,714]},{155:$Vl1,204:[2,540],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V22,[2,91]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,451]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,156:504,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,504],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:726},o($V53,[2,507]),o($V53,[2,508]),o($V53,[2,509]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,$Vp2,{149:728,150:$Vq2,151:$Vr2}),o($Vo2,[2,182],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vo2,[2,183],{225:252,150:[1,729],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vs2,[2,185]),o($Vs2,[2,187]),o($Vs2,[2,189]),o($Vh1,[2,72]),o($Ve1,[2,282]),{65:[1,730]},{61:$Vy2,65:[1,731]},o($Ve1,[2,302]),o($Ve1,[2,304]),{65:[1,732],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,733]},{61:$Vy2,65:[1,734]},o($Ve1,[2,307]),{61:[1,735],65:[1,736]},{61:$V63,65:[1,737]},o($Vz2,[2,346],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,[2,231]),{64:[1,739]},o($Ve1,$VU2,{174:740,175:$VV2}),o($Ve1,$VU2,{174:741,175:$VV2}),o($Vz2,[2,252],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VT1,[2,195]),o($Ve1,[2,192]),o($Ve1,[2,265]),o($Vf2,[2,269],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:652,4:$VB,5:$VC},o($VA,[2,423]),{297:[1,746]},o($VA,[2,424]),o($V73,[2,401],{169:747,4:$V92,288:[1,748],289:$Va2}),o($VA,[2,425]),o($VA,[2,427]),{61:$Vy2,65:[1,749]},o($VA,[2,431]),o($VA,[2,435]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,437]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:752,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,755]},{3:662,4:$VB,5:$VC,63:[1,758],255:756,265:757,286:759},{3:505,4:$VB,5:$VC,123:760,156:583},{33:761,66:59,74:79,80:$V4},o($V_1,[2,533],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:762,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,763],94:765,164:764,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V63,65:[1,766]},{33:768,66:59,74:79,80:$V4,245:[1,767]},{3:505,4:$VB,5:$VC,156:769},o($V83,[2,175],{72:770,145:[1,771]}),{126:[1,772]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:773,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,112]),o($V03,[2,113]),o($VO2,[2,90]),o($V03,[2,145],{110:779,120:[1,780],122:[1,781]}),o($Vc3,[2,117],{3:782,4:$VB,5:$VC,63:[1,783]}),{3:784,4:$VB,5:$VC,63:[1,785]},{33:786,66:59,74:79,80:$V4},o($Vc3,[2,124],{3:787,4:$VB,5:$VC,63:[1,788]}),o($Vc3,[2,127],{3:789,4:$VB,5:$VC,63:[1,790]}),{64:[1,791]},o($V33,[2,142]),{64:[1,792]},o($V33,[2,138]),o($V33,[2,131]),{113:$V23},{113:$V13},o($V33,[2,133]),o($V33,[2,134]),{113:[1,793]},o($V33,[2,136]),{113:[1,794]},{113:[1,795]},o($V33,[2,140]),o($V33,[2,141]),{65:[1,796],100:686,101:$VE2,103:$VF2,107:685,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,536]),o($V43,[2,541]),o($V43,[2,542]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:797,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,798],227:[1,799]},{352:[1,800]},o($V22,[2,92]),o($V52,[2,57]),o($VA,[2,461]),o($VA,[2,457]),o($VA,[2,459]),o($VA,[2,455]),o($VA,[2,326],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VR2,[2,329]),o($VR2,[2,330],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,505],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V53,[2,506]),{65:[1,801],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:802,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,294]),o($Ve1,[2,295]),o($Ve1,[2,316]),o($Ve1,[2,303]),o($Ve1,[2,305]),{152:[1,803]},o($Vx2,[2,403]),o($Vx2,[2,405]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:804,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:805,177:806,178:[1,807]},o($Ve1,[2,232]),o($Ve1,[2,233]),o($Ve1,[2,220]),{152:[1,809]},o($Ve1,[2,222]),{152:[1,810]},{3:811,4:$VB,5:$VC},o($V73,[2,406],{287:812,290:813,291:814,273:823,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V73,[2,400]),o($VA,[2,430],{63:[1,825]}),{61:$Vy2,65:[1,826]},o($VA,[2,439]),{61:$Vn3,65:[1,827]},o($Vo3,[2,169]),o($Vo3,[2,171],{225:252,142:[1,829],143:[1,830],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:831,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,832]},{61:[1,833],65:[2,372]},{33:834,66:59,74:79,80:$V4},o($Vz2,[2,397]),{61:$V_2,65:[1,835]},o($VA,[2,463]),o($V_1,[2,534],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:836,314:126,315:$V51,319:$V61},o($VZ2,[2,344]),o($VZ2,[2,345]),o($VZ2,[2,340]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:837,314:126,315:$V51,319:$V61},o($VA,[2,337]),o($VO2,[2,355]),o($Vp3,[2,158],{73:838,135:[1,839],136:[1,840],137:[1,841]}),{89:842,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:843,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,156],{128:844,61:$Vq3,134:[1,846]}),o($Vr3,[2,150]),{131:[1,847]},{64:[1,848]},{64:[1,849]},o($Vr3,[2,155],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,116]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:850,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:851,156:583},o($Vc3,[2,118]),{3:852,4:$VB,5:$VC},o($Vc3,[2,120]),{3:853,4:$VB,5:$VC},{65:[1,854]},o($Vc3,[2,125]),{3:855,4:$VB,5:$VC},o($Vc3,[2,128]),{3:856,4:$VB,5:$VC},{33:857,66:59,74:79,80:$V4},{33:858,66:59,74:79,80:$V4},o($V33,[2,135]),o($V33,[2,137]),o($V33,[2,139]),o($V12,[2,83]),o($VA,[2,560],{61:$Vn2,91:[1,859]}),{238:$Vs3,242:$Vt3,353:860},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:863,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,865],205:[1,864],227:[1,866]},o($V53,[2,510]),o($Vo2,[2,184],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,867]},o($Vz2,[2,347],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,868],139:$Vd3,177:869},{65:[1,870]},{126:[1,871]},{126:[1,872]},{65:[1,873]},{65:[1,874]},o($VA,[2,426]),o($V73,[2,399]),o($V73,[2,407],{273:823,291:875,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V62,[2,409]),{277:[1,876]},{277:[1,877]},{3:878,4:$VB,5:$VC},o($V62,[2,413]),o($V62,[2,415],{64:[1,879]}),{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:$VE,152:$VF,153:202,159:203,160:204,171:880,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V62,[2,417]),{192:[1,881]},o($V62,[2,419]),{64:[1,882]},{3:883,4:$VB,5:$VC},o($VA,$VW2,{303:884,63:$VX2}),o($VA,[2,445]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,141:885,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo3,[2,172]),{144:[1,886]},{61:$Vn3,65:[1,887]},o($VA,[2,358],{256:888,257:889,258:890,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($Vy3,$Vz3,{3:662,266:895,286:896,267:897,268:898,4:$VB,5:$VC,274:$VA3}),{65:[2,373]},{63:[1,900]},{61:$V63,65:[1,901]},o($VA,[2,335],{61:$VY2}),o($Vp3,[2,58]),{33:902,66:59,74:79,79:[1,903],80:$V4,138:[1,904]},{33:905,66:59,74:79,80:$V4,138:[1,906]},{33:907,66:59,74:79,80:$V4,138:[1,908]},o($V83,[2,177],{146:909,147:[1,910]}),o($V$2,[2,168],{61:$Vn3}),o($VC2,[2,149]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,129:911,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:912,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,913]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:914,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:915,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,143],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,144],{61:$V_2}),o($Vc3,[2,119]),o($Vc3,[2,121]),{3:916,4:$VB,5:$VC,63:[1,917]},o($Vc3,[2,126]),o($Vc3,[2,129]),{65:[1,918]},{65:[1,919]},{3:194,4:$VB,5:$VC,92:921,193:[1,920]},o($V43,[2,545]),o($V43,[2,547]),{239:[1,922]},{155:$Vl1,205:[1,923],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{243:$VB3,354:924},{312:[1,927],355:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:928,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vx2,[2,402]),o($Ve1,[2,235]),{65:[1,929]},o($Ve1,[2,236]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:930,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:931,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,221]),o($Ve1,[2,223]),o($V62,[2,408]),o($V62,[2,410]),{280:[1,932]},{64:[1,933]},{89:934,152:$VF},o($V62,[2,416]),o($V62,[2,418]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:935,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,432]),o($VA,[2,436]),o($Vo3,[2,170]),o($Vo3,[2,173],{142:[1,936]}),o($VA,[2,446]),o($VA,[2,356]),o($VA,[2,359],{258:937,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($VC3,[2,361]),o($VC3,[2,362]),{219:[1,938]},{219:[1,939]},{219:[1,940]},{61:[1,941],65:[2,371]},o($Vz2,[2,398]),o($Vz2,[2,374]),{78:[1,949],86:[1,950],269:942,270:943,271:944,272:945,273:946,275:$Vi3,276:[1,947],277:[1,951],279:[1,948]},{3:952,4:$VB,5:$VC},{33:953,66:59,74:79,80:$V4},o($VZ2,[2,343]),o($Vp3,[2,159]),{33:954,66:59,74:79,80:$V4,138:[1,955]},{33:956,66:59,74:79,80:$V4},o($Vp3,[2,161]),{33:957,66:59,74:79,80:$V4},o($Vp3,[2,162]),{33:958,66:59,74:79,80:$V4},o($V83,[2,176]),{89:959,152:$VF},o($Vr3,[2,151]),o($VC2,[2,157],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:960,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vq3,65:[1,961]},{61:$Vq3,65:[1,962]},o($Vc3,[2,122]),{3:963,4:$VB,5:$VC},{3:964,4:$VB,5:$VC,63:[1,965]},{3:966,4:$VB,5:$VC,63:[1,967]},{3:968,4:$VB,5:$VC},o($VA,[2,562],{64:[1,969]}),{3:505,4:$VB,5:$VC,156:504,240:970,241:503},{238:$Vs3,242:$Vt3,353:971},o($V43,[2,549]),{64:[1,973],245:[1,972],247:[1,974]},{205:[1,975],227:[1,976]},{205:[1,977],227:[1,978]},{155:$Vl1,205:[1,979],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Ve1,[2,237]),o([65,139],[2,238],{61:$Vq3}),{61:$Vn3,65:[2,239]},{3:980,4:$VB,5:$VC},{3:981,4:$VB,5:$VC},{61:[1,982]},{65:[1,983],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo3,[2,174]),o($VC3,[2,360]),{3:984,4:$VB,5:$VC},{89:985,152:$VF},{3:986,4:$VB,5:$VC},o($Vy3,$Vz3,{268:898,267:987,274:$VA3}),o($Vz2,[2,376]),o($Vz2,[2,377]),o($Vz2,[2,378]),o($Vz2,[2,379]),o($Vz2,[2,380]),{277:[1,988]},{277:[1,989]},o($Vz2,[2,390]),{3:990,4:$VB,5:$VC},{3:991,4:$VB,5:$VC},o($Vy3,[2,382]),o($VA,[2,462]),o($Vp3,[2,160]),{33:992,66:59,74:79,80:$V4},o($Vp3,[2,163]),o($Vp3,[2,165]),o($Vp3,[2,166]),o($V83,[2,178]),{61:$Vq3,65:[1,993]},o($Vr3,[2,153]),o($Vr3,[2,154]),o($Vc3,[2,123]),o($V03,[2,85]),{3:994,4:$VB,5:$VC},o($V03,[2,87]),{3:995,4:$VB,5:$VC},o($VA,[2,561]),{3:505,4:$VB,5:$VC,123:996,156:583},o($V43,[2,548],{61:$VQ2}),o($V43,[2,546]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:997,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:998,156:583},{245:[1,999]},{243:$VB3,354:1000},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1001,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1004},{64:[1,1005]},{65:[1,1006]},{89:1007,152:$VF},o($V62,[2,383]),o($VC3,[2,363]),o($VC3,[2,364]),o($VC3,[2,365]),o($Vz2,[2,375]),{64:[1,1008]},{64:[1,1009]},{64:[1,1010]},{64:[1,1011]},o($Vp3,[2,164]),o($Vr3,[2,152]),o($V03,[2,86]),o($V03,[2,88]),{61:$V_2,65:[1,1012]},o($V43,[2,555],{61:$VY2}),{61:$V_2,65:[1,1013]},o($V43,[2,557]),o($V43,[2,550]),{155:$Vl1,205:[1,1014],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,553]),{155:$Vl1,205:[1,1015],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,551]),{3:1016,4:$VB,5:$VC},o($V62,[2,412]),{65:[1,1017]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1018},{3:1019,4:$VB,5:$VC,96:$VD3,278:1021},{3:505,4:$VB,5:$VC,123:1022,156:583},{3:505,4:$VB,5:$VC,123:1023,156:583},o($VA,[2,563]),{245:[1,1024],247:[1,1025]},{243:$VB3,354:1026},{238:$Vs3,242:$Vt3,353:1027},{65:[1,1028]},o($V62,[2,414]),{61:$VE3,65:[1,1029]},o($Vz2,[2,393]),o($Vz2,[2,394]),{61:$VE3,65:[1,1031]},{61:$V_2,65:[1,1032]},{61:$V_2,65:[1,1033]},{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1034,314:126,315:$V51,319:$V61},{245:[1,1035]},o($V43,[2,552]),o($V43,[2,554]),o($V62,[2,411]),o($Vz2,[2,384]),{3:1036,4:$VB,5:$VC,96:[1,1037]},{280:[1,1038]},o($Vz2,[2,391]),o($Vz2,[2,392]),o($V43,[2,556],{61:$VY2}),o($V43,[2,558]),o($Vz2,[2,395]),o($Vz2,[2,396]),{3:1039,4:$VB,5:$VC},{64:[1,1040]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1041},{61:$VE3,65:[1,1042]},o($Vz2,[2,386],{281:1043,282:1044,120:[1,1045]}),o($Vz2,[2,385]),{120:[1,1047],283:1046},{242:[1,1048]},o($Vz2,[2,387]),{238:[1,1049]},{284:[1,1050]},{284:[1,1051]},{285:[1,1052]},{285:[1,1053]},{120:[2,388]},o($Vz2,[2,389])], +defaultActions: {81:[2,3],129:[2,240],130:[2,241],131:[2,242],132:[2,243],133:[2,244],134:[2,245],135:[2,246],136:[2,247],137:[2,248],166:[2,537],338:[2,538],406:[2,323],407:[2,324],408:[2,325],485:[2,539],834:[2,373],1052:[2,388]}, parseError: function parseError(str, hash) { if (hash.recoverable) { this.trace(str); @@ -1867,7 +1880,7 @@ case 21:return 119 break; case 22:return 237 break; -case 23:return 103 +case 23:return 102 break; case 24:return 187 break; @@ -1879,9 +1892,9 @@ case 27:return 142 break; case 28:return 300 break; -case 29:return 259 +case 29:return 260 break; -case 30:return 259 +case 30:return 260 break; case 31:return 183 break; @@ -1901,7 +1914,7 @@ case 38:return 199 break; case 39:return 168 break; -case 40:return 260 +case 40:return 261 break; case 41:return 275 break; @@ -1957,7 +1970,7 @@ case 66:return 293 break; case 67:return 202 break; -case 68:return 258 +case 68:return 259 break; case 69:return 289 break; @@ -2063,7 +2076,7 @@ case 119:return 228 break; case 120:return 139 break; -case 121:return 104 +case 121:return 103 break; case 122:return 175 break; @@ -2123,7 +2136,7 @@ case 149:return 'STORE' break; case 150:return "SUM" break; -case 151:return 252 +case 151:return 253 break; case 152:return 307 break; @@ -2131,126 +2144,130 @@ case 153:return 355 break; case 154:return 150 break; -case 155:return 85 +case 155:return 263 +break; +case 156:return 262 +break; +case 157:return 85 break; -case 156:return 151 +case 158:return 151 break; -case 157:return 205 +case 159:return 205 break; -case 158:return 297 +case 160:return 297 break; -case 159:return 88 +case 161:return 88 break; -case 160:return 'TRAN' +case 162:return 'TRAN' break; -case 161:return 330 +case 163:return 330 break; -case 162:return 189 +case 164:return 189 break; -case 163:return 343 +case 165:return 343 break; -case 164:return 135 +case 166:return 135 break; -case 165:return 78 +case 167:return 78 break; -case 166:return 238 +case 168:return 238 break; -case 167:return 304 +case 169:return 304 break; -case 168:return 122 +case 170:return 122 break; -case 169:return 81 +case 171:return 81 break; -case 170:return 245 +case 172:return 245 break; -case 171:return 309 +case 173:return 309 break; -case 172:return 204 +case 174:return 204 break; -case 173:return 124 +case 175:return 124 break; -case 174:return 334 +case 176:return 334 break; -case 175:return 59 +case 177:return 59 break; -case 176:return 330 +case 178:return 330 break; -case 177:return 152 +case 179:return 152 break; -case 178:return 152 +case 180:return 152 break; -case 179:return 214 +case 181:return 214 break; -case 180:return 209 +case 182:return 209 break; -case 181:return 210 +case 183:return 210 break; -case 182:return 155 +case 184:return 155 break; -case 183:return 211 +case 185:return 211 break; -case 184:return 212 +case 186:return 212 break; -case 185:return 224 +case 187:return 224 break; -case 186:return 221 +case 188:return 221 break; -case 187:return 223 +case 189:return 223 break; -case 188:return 220 +case 190:return 220 break; -case 189:return 216 +case 191:return 216 break; -case 190:return 215 +case 192:return 215 break; -case 191:return 218 +case 193:return 218 break; -case 192:return 222 +case 194:return 222 break; -case 193:return 217 +case 195:return 217 break; -case 194:return 219 +case 196:return 219 break; -case 195:return 222 +case 197:return 222 break; -case 196:return 64 +case 198:return 64 break; -case 197:return 65 +case 199:return 65 break; -case 198:return 193 +case 200:return 193 break; -case 199:return 319 +case 201:return 319 break; -case 200:return 321 +case 202:return 321 break; -case 201:return 323 +case 203:return 323 break; -case 202:return 106 +case 204:return 106 break; -case 203:return 61 +case 205:return 61 break; -case 204:return 235 +case 206:return 235 break; -case 205:return 196 +case 207:return 196 break; -case 206:return 9 +case 208:return 9 break; -case 207:return 195 +case 209:return 195 break; -case 208:return 197 +case 210:return 197 break; -case 209:return 213 +case 211:return 213 break; -case 210:return 4 +case 212:return 4 break; -case 211:return 8 +case 213:return 8 break; -case 212:return 'INVALID' +case 214:return 'INVALID' break; } }, -rules: [/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i], -conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],"inclusive":true}} +rules: [/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEMP\b)/i,/^(?:TEMPORARY\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i], +conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],"inclusive":true}} }); return lexer; })(); @@ -4075,6 +4092,9 @@ yy.Statements.prototype.compile = function(db) { // Main query procedure function queryfn(query,oldscope,cb, A,B) { + +// console.log(query.queriesfn); + var ms; query.sourceslen = query.sources.length; var slen = query.sourceslen; @@ -4531,6 +4551,8 @@ function doJoin (query, scope, h) { if(query.groupfn) { query.groupfn(scope, query.params, query.alasql) } else { +// query.qwerty = 999; +//console.log(query.qwerty, query.queriesfn && query.queriesfn.length,2); query.data.push(query.selectfn(scope, query.params, alasql)); } } @@ -4858,7 +4880,7 @@ yy.Select.prototype.toJavaScript = function(context, tableid, defcols) { // return this.expression.toJavaScript(context, tableid, defcols); // console.log('Select.toJS', 81, this.queriesidx); // var s = 'this.queriesdata['+(this.queriesidx-1)+'][0]'; -//console.log(this); + var s = 'alasql.utils.flatArray(this.queriesfn['+(this.queriesidx-1)+'](this.params,null,'+context+'))[0]'; // s = '(console.log(this.queriesfn[0]),'+s+')'; @@ -5179,6 +5201,9 @@ yy.Select.prototype.compileQueries = function(query) { }); }; +// +// Prepare subqueries and exists +// alasql.precompile = function(statement,databaseid,params){ // console.log(statement); if(!statement) return; @@ -5193,8 +5218,6 @@ alasql.precompile = function(statement,databaseid,params){ return ex.compile(databaseid || statement.database.databaseid); }); }; - - } /* @@ -5907,7 +5930,12 @@ function optimizeWhereJoin (query, ast) { yy.Select.prototype.compileGroup = function(query) { // console.log(this.group); var self = this; - var tableid = query.sources[0].alias; + if(query.sources.length > 0) { + var tableid = query.sources[0].alias; + } else { + // If SELECT contains group aggregators without source tables + var tableid = ''; + } var defcols = query.defcols; // console.log(16,tableid, defcols); @@ -6355,7 +6383,7 @@ yy.Select.prototype.compileSelect1 = function(query) { } yy.Select.prototype.compileSelect2 = function(query) { - var s = query.selectfns ; + var s = query.selectfns; // console.log(s); return new Function('p,params,alasql',s+'return r'); }; @@ -6894,7 +6922,7 @@ yy.ExpressionStatement.prototype.execute = function (databaseid, params, cb) { if(this.expression) { // console.log(this.expression.toJavaScript('','', null)); // console.log(this.expression.toJavaScript('','', null)); - var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('','', null)); + var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('({})','', null)); var res = expr(params,alasql); if(cb) res = cb(res); return res; @@ -7851,7 +7879,8 @@ stdlib.MID = function(a,b,c){ else if(arguments.length == 3) return '('+a+').substr('+b+'-1,'+c+')'; }; -stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?null:'+a+')'}; +// Here we uses undefined instead of null +stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?undefined:'+a+')'}; stdlib.POWER = function(a,b) {return 'Math.pow('+a+','+b+')'}; @@ -7929,12 +7958,13 @@ yy.CaseValue.prototype.findAggregator = function (query){ if(w.when.findAggregator) w.when.findAggregator(query); if(w.then.findAggregator) w.then.findAggregator(query); }); - } + }; + if(this.elses && this.elses.findAggregator) this.elses.findAggregator(query); }; yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { - var s = '(function('+context+',params,alasql){var r;'; + var s = '((function('+context+',params,alasql){var r;'; if(this.expression) { // this.expression.toJavaScript(context, tableid) s += 'v='+this.expression.toJavaScript(context, tableid, defcols)+';'; @@ -7946,7 +7976,8 @@ yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid,defcols)+'}'; } - s += 'return r;})('+context+',params,alasql)'; + // TODO remove bind from CASE + s += ';return r;}).bind(this))('+context+',params,alasql)'; return s; }; @@ -8771,7 +8802,7 @@ yy.CreateIndex.prototype.toString = function() { } // CREATE TABLE -yy.CreateIndex.prototype.execute = function (databaseid) { +yy.CreateIndex.prototype.execute = function (databaseid,params,cb) { // var self = this; var db = alasql.databases[databaseid]; var tableid = this.table.tableid; @@ -8810,7 +8841,9 @@ yy.CreateIndex.prototype.execute = function (databaseid) { } } }; - + var res = 1; + if(cb) res = cb(res); + return res; }; @@ -8938,8 +8971,10 @@ yy.If.prototype.toString = function() { yy.If.prototype.execute = function (databaseid,params,cb){ var res; // console.log(this); -// console.log(this.expression.toJavaScript()); - var fn = new Function('params,alasql,p','return '+this.expression.toJavaScript()).bind(this); +// console.log(this.expression.toJavaScript('{}','',null)); +// console.log(); + var fn = new Function('params,alasql,p','return '+this.expression.toJavaScript('({})','',null)).bind(this); +// var fn = new Function('params,alasql,p','console.log(this.thenstat);return '+this.expression.toJavaScript('({})','',null)).bind(this); if(fn(params,alasql)) res = this.thenstat.execute(databaseid,params,cb); else { if(this.elsestat) res = this.elsestat.execute(databaseid,params,cb); @@ -9755,7 +9790,7 @@ yy.Declare.prototype.execute = function (databaseid,params,cb) { if(declare.expression) { // console.log(this.expression.toJavaScript('','', null)); alasql.vars[declare.variable] = new Function("params,alasql","return " - +declare.expression.toJavaScript('','', null))(params,alasql); + +declare.expression.toJavaScript('({})','', null))(params,alasql); if(alasql.declares[declare.variable]) { alasql.vars[declare.variable] = alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable]); } @@ -9926,7 +9961,7 @@ yy.SetVariable.prototype.execute = function (databaseid,params,cb) { } else if(this.expression) { // console.log(this.expression.toJavaScript('','', null)); var res = new Function("params,alasql","return " - +this.expression.toJavaScript('','', null))(params,alasql); + +this.expression.toJavaScript('({})','', null))(params,alasql); if(alasql.declares[this.variable]) { res = alasql.stdfn.CONVERT(res,alasql.declares[this.variable]); } diff --git a/console/alasql.min.js b/console/alasql.min.js index 9543268100..f81fc6016a 100644 --- a/console/alasql.min.js +++ b/console/alasql.min.js @@ -1,8 +1,8 @@ -(function(root,factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}else{root.alasql=factory()}})(this,function(){var alasql=function(sql,params,cb,scope){if(typeof importScripts!="function"&&alasql.webworker){var id=alasql.lastid++;alasql.buffer[id]=cb;alasql.webworker.postMessage({id:id,sql:sql,params:params})}else{if(arguments.length==0){return new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]})}else if(arguments.length==1&&typeof sql=="object"&&sql instanceof Array){var select=new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]});select.preparams=[sql];return select}else{if(typeof sql=="string"&&sql[0]=="#"&&typeof document=="object"){sql=document.querySelector(sql).textContent}else if(typeof sql=="object"&&sql instanceof HTMElement){sql=sql.textContent}else if(typeof sql=="function"){sql=sql.toString().slice(14,-3)}return alasql.exec(sql,params,cb,scope)}}};alasql.version="0.0.47";var parser=function(){var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[1,151],$V81=[4,5],$V91=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Va1=[1,167],$Vb1=[1,175],$Vc1=[1,174],$Vd1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Ve1=[1,206],$Vf1=[1,199],$Vg1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vh1=[2,74],$Vi1=[1,220],$Vj1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vk1=[1,236],$Vl1=[1,232],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,237],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,252],$VE1=[1,253],$VF1=[1,255],$VG1=[1,254],$VH1=[1,256],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[2,197],$VM1=[1,263],$VN1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VO1=[2,255],$VP1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VQ1=[1,271],$VR1=[1,281],$VS1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VT1=[1,297],$VU1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,102,104,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,258,259,260,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VV1=[1,304],$VW1=[1,305],$VX1=[2,368],$VY1=[1,310],$VZ1=[8,9,11,61,202,206],$V_1=[2,420],$V$1=[1,321],$V02=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V12=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22=[2,110],$V32=[1,349],$V42=[61,80],$V52=[8,9,11,61,65,192,202,206,229,247,259,275,276,279,280,292],$V62=[79,236,237],$V72=[1,414],$V82=[1,420],$V92=[1,421],$Va2=[1,431],$Vb2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vc2=[2,270],$Vd2=[1,438],$Ve2=[202,204,206],$Vf2=[61,323],$Vg2=[61,321,323],$Vh2=[1,445],$Vi2=[61,321],$Vj2=[4,5,96,191],$Vk2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vl2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vm2=[1,512],$Vn2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vo2=[2,180],$Vp2=[1,514],$Vq2=[1,515],$Vr2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vs2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[1,537],$Vy2=[61,65],$Vz2=[2,195],$VA2=[1,577],$VB2=[8,9,11,65,135,136,137,139,145,202,206],$VC2=[8,9,11,61,65,124,125,135,136,137,139,145,202,206],$VD2=[1,592],$VE2=[1,593],$VF2=[1,595],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,606],$VO2=[1,617],$VP2=[8,9,11,61,124,202,204,206,356],$VQ2=[1,625],$VR2=[1,624],$VS2=[2,233],$VT2=[1,646],$VU2=[2,437],$VV2=[1,667],$VW2=[1,679],$VX2=[8,9,11,61,202,204,206,356],$VY2=[1,682],$VZ2=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V_2=[8,9,11,65,135,136,137,145,202,206],$V$2=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V03=[1,696],$V13=[1,698],$V23=[4,5,64,193,195,196,197,198],$V33=[8,9,11,202,204,206,356],$V43=[214,219],$V53=[1,738],$V63=[8,9,11,61,65,202,206],$V73=[1,754],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,773],$Va3=[1,774],$Vb3=[1,775],$Vc3=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,805],$Ve3=[1,818],$Vf3=[1,819],$Vg3=[1,817],$Vh3=[1,815],$Vi3=[1,821],$Vj3=[1,812],$Vk3=[1,813],$Vl3=[1,814],$Vm3=[1,816],$Vn3=[1,825],$Vo3=[1,830],$Vp3=[1,831],$Vq3=[1,832],$Vr3=[1,833],$Vs3=[78,86,275,276,277,279],$Vt3=[2,380],$Vu3=[1,838],$Vv3=[8,9,11,65,202,206],$Vw3=[1,851],$Vx3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vy3=[1,868],$Vz3=[1,867],$VA3=[8,9,11,202,206,247,258,259,260],$VB3=[1,921],$VC3=[8,9,11,61,65,135,136,137,145,202,206],$VD3=[1,938];var parser={trace:function trace(){},yy:{},symbols_:{error:2,Literal:3,LITERAL:4,BRALITERAL:5,main:6,Statements:7,EOF:8,SEMICOLON:9,AStatement:10,GO:11,ExplainStatement:12,EXPLAIN:13,QUERY:14,PLAN:15,Statement:16,If:17,AlterTable:18,AttachDatabase:19,CreateDatabase:20,CreateIndex:21,CreateTable:22,CreateView:23,Declare:24,Delete:25,DetachDatabase:26,DropDatabase:27,DropIndex:28,DropTable:29,DropView:30,Insert:31,RenameTable:32,Select:33,Merge:34,WithSelect:35,ShowCreateTable:36,ShowColumns:37,ShowDatabases:38,ShowIndex:39,ShowTables:40,TruncateTable:41,BeginTransaction:42,CommitTransaction:43,RollbackTransaction:44,EndTransaction:45,UseDatabase:46,Update:47,Help:48,JavaScript:49,Source:50,Assert:51,While:52,Continue:53,Break:54,BeginEnd:55,Print:56,Require:57,SetVariable:58,WITH:59,WithTablesList:60,COMMA:61,WithTable:62,AS:63,LPAR:64,RPAR:65,SelectClause:66,IntoClause:67,FromClause:68,WhereClause:69,GroupClause:70,OrderClause:71,LimitClause:72,UnionClause:73,SelectModifier:74,DISTINCT:75,TopClause:76,ResultColumns:77,UNIQUE:78,ALL:79,SELECT:80,VALUE:81,ROW:82,COLUMN:83,MATRIX:84,TEXTSTRING:85,INDEX:86,RECORDSET:87,TOP:88,NumValue:89,PERCENT:90,INTO:91,Table:92,FuncValue:93,ParamValue:94,VarValue:95,STRING:96,FROM:97,FromTablesList:98,FromTable:99,JoinTablesList:100,ApplyClause:101,CROSS:102,APPLY:103,OUTER:104,FromString:105,DOT:106,JoinTable:107,JoinMode:108,JoinTableAs:109,OnClause:110,JoinModeMode:111,NATURAL:112,JOIN:113,INNER:114,LEFT:115,RIGHT:116,FULL:117,SEMI:118,ANTI:119,ON:120,Expression:121,USING:122,ColumnsList:123,WHERE:124,GROUP:125,BY:126,GroupExpressionsList:127,HavingClause:128,GroupExpression:129,GROUPING:130,SETS:131,ROLLUP:132,CUBE:133,HAVING:134,UNION:135,EXCEPT:136,INTERSECT:137,CORRESPONDING:138,ORDER:139,OrderExpressionsList:140,OrderExpression:141,DIRECTION:142,COLLATE:143,NOCASE:144,LIMIT:145,OffsetClause:146,OFFSET:147,ResultColumn:148,TDTH:149,TD:150,TH:151,NUMBER:152,StringValue:153,Star:154,STAR:155,Column:156,AggrValue:157,Op:158,LogicValue:159,NullValue:160,ExistsValue:161,CaseValue:162,CastClause:163,Json:164,NewClause:165,JAVASCRIPT:166,NEW:167,CAST:168,ColumnType:169,CONVERT:170,PrimitiveValue:171,CURRENT_TIMESTAMP:172,Aggregator:173,OverClause:174,OVER:175,OverPartitionClause:176,OverOrderByClause:177,PARTITION:178,SUM:179,COUNT:180,MIN:181,MAX:182,AVG:183,FIRST:184,LAST:185,AGGR:186,ARRAY:187,ExprList:188,TRUE:189,FALSE:190,NSTRING:191,NULL:192,AT:193,EXISTS:194,DOLLAR:195,COLON:196,QUESTION:197,BRAQUESTION:198,CASE:199,WhensList:200,ElseClause:201,END:202,When:203,WHEN:204,THEN:205,ELSE:206,LIKE:207,NOT_LIKE:208,PLUS:209,MINUS:210,SLASH:211,MODULO:212,CARET:213,ARROW:214,GT:215,GE:216,LT:217,LE:218,EQ:219,EQEQ:220,EQEQEQ:221,NE:222,NEEQEQ:223,NEEQEQEQ:224,CondOp:225,AllSome:226,AND:227,OR:228,NOT:229,IN:230,ColFunc:231,BETWEEN:232,NOT_BETWEEN:233,IS:234,DOUBLECOLON:235,SOME:236,ANY:237,UPDATE:238,SET:239,SetColumnsList:240,SetColumn:241,DELETE:242,INSERT:243,Into:244,VALUES:245,ValuesListsList:246,DEFAULT:247,ValuesList:248,Value:249,DateValue:250,CREATE:251,TABLE:252,IfNotExists:253,CreateTableDefClause:254,CreateTableOptionsClause:255,CreateTableOptions:256,CreateTableOption:257,ENGINE:258,AUTO_INCREMENT:259,CHARSET:260,TemporaryClause:261,TEMPORARY:262,TEMP:263,IF:264,ColumnDefsList:265,ConstraintsList:266,Constraint:267,ConstraintName:268,PrimaryKey:269,ForeignKey:270,UniqueKey:271,IndexKey:272,Check:273,CONSTRAINT:274,CHECK:275,PRIMARY:276,KEY:277,ColsList:278,FOREIGN:279,REFERENCES:280,OnForeignKeyClause:281,OnDeleteClause:282,OnUpdateClause:283,NO:284,ACTION:285,ColumnDef:286,ColumnConstraintsClause:287,ColumnConstraints:288,ENUM:289,ColumnConstraintsList:290,ColumnConstraint:291,IDENTITY:292,DROP:293,IfExists:294,ALTER:295,RENAME:296,TO:297,ADD:298,MODIFY:299,ATTACH:300,DATABASE:301,DETACH:302,AsClause:303,USE:304,SHOW:305,DATABASES:306,TABLES:307,COLUMNS:308,VIEW:309,HELP:310,ExpressionStatement:311,SOURCE:312,ASSERT:313,JsonObject:314,ATLBRA:315,JsonArray:316,JsonValue:317,JsonPrimitiveValue:318,LCUR:319,JsonPropertiesList:320,RCUR:321,JsonElementsList:322,RBRA:323,JsonProperty:324,OnOff:325,SetPropsList:326,SetProp:327,OFF:328,COMMIT:329,TRANSACTION:330,ROLLBACK:331,BEGIN:332,ElseStatement:333,WHILE:334,CONTINUE:335,BREAK:336,PRINT:337,REQUIRE:338,StringValuesList:339,DECLARE:340,DeclaresList:341,DeclareItem:342,TRUNCATE:343,MERGE:344,MergeInto:345,MergeUsing:346,MergeOn:347,MergeMatchedList:348,OutputClause:349,MergeMatched:350,MergeNotMatched:351,MATCHED:352,MergeMatchedAction:353,MergeNotMatchedAction:354,TARGET:355,OUTPUT:356,$accept:0,$end:1},terminals_:{2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",102:"CROSS",103:"APPLY",104:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",252:"TABLE",258:"ENGINE",259:"AUTO_INCREMENT",260:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"},productions_:[0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,0],[101,6],[101,7],[101,6],[101,7],[98,1],[98,3],[99,4],[99,5],[99,3],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[105,1],[92,3],[92,1],[100,2],[100,2],[100,1],[100,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,8],[22,4],[255,0],[255,1],[256,2],[256,1],[257,1],[257,3],[257,3],[257,3],[261,0],[261,1],[261,1],[253,0],[253,3],[254,3],[254,1],[254,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,9],[23,6],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]],performAction:function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:if(yy.casesensitive)this.$=$$[$0];else this.$=$$[$0].toLowerCase();break;case 2:this.$=doubleq($$[$0].substr(1,$$[$0].length-2));break;case 3:return new yy.Statements({statements:$$[$0-1]});break;case 4:case 5:this.$=$$[$0-2];if($$[$0])$$[$0-2].push($$[$0]);break;case 6:case 7:case 56:case 88:case 113:case 114:case 149:case 168:case 250:case 267:case 327:case 340:case 341:case 345:case 353:case 392:case 393:case 501:case 506:case 526:case 528:case 542:case 543:this.$=[$$[$0]];break;case 8:this.$=$$[$0];$$[$0].explain=true;break;case 9:this.$=$$[$0];$$[$0].explain=true;break;case 10:this.$=$$[$0];if(yy.exists)this.$.exists=yy.exists;delete yy.exists;if(yy.queries)this.$.queries=yy.queries;delete yy.queries;break;case 11:case 63:case 74:case 83:case 144:case 145:case 147:case 155:case 157:case 166:case 174:case 176:case 229:case 270:case 365:case 368:case 380:case 385:case 386:case 420:this.$=undefined;break;case 54:this.$=new yy.WithSelect({withs:$$[$0-1],select:$$[$0]});break;case 55:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 57:this.$={name:$$[$0-4],select:$$[$0-1]};break;case 58:yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);this.$=$$[$0-7];break;case 59:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 60:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 61:this.$=new yy.Select({columns:$$[$0],all:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 62:this.$=new yy.Select({columns:$$[$0]});yy,extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 64:this.$={modifier:"VALUE"};break;case 65:this.$={modifier:"ROW"};break;case 66:this.$={modifier:"COLUMN"};break;case 67:this.$={modifier:"MATRIX"};break;case 68:this.$={modifier:"TEXTSTRING"};break;case 69:this.$={modifier:"INDEX"};break;case 70:this.$={modifier:"RECORDSET"};break;case 71:this.$={top:$$[$0]};break;case 72:this.$={top:$$[$0-1]};break;case 73:this.$={top:$$[$0-1],percent:true};break;case 75:case 233:case 387:case 388:this.$=undefined;break;case 76:case 77:case 78:case 79:this.$={into:$$[$0]};break;case 80:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();if(s[0]=="#"){this.$={into:new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){this.$={into:new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x4=="XLSX"||x4=="JSON"){this.$={into:new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}break;case 81:this.$={from:$$[$0]};break;case 82:this.$={from:[$$[$0-1]],joins:$$[$0]};break;case 84:this.$=new yy.Apply({select:$$[$0-2],applymode:"CROSS",as:$$[$0]});break;case 85:this.$=new yy.Apply({select:$$[$0-3],applymode:"CROSS",as:$$[$0]});break;case 86:this.$=new yy.Apply({select:$$[$0-2],applymode:"OUTER",as:$$[$0]});break;case 87:this.$=new yy.Apply({select:$$[$0-3],applymode:"OUTER",as:$$[$0]});break;case 89:case 150:case 328:case 394:case 395:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 90:this.$=$$[$0-2];this.$.as=$$[$0];break;case 91:this.$=$$[$0-3];this.$.as=$$[$0];break;case 92:this.$=$$[$0-1];this.$.as="default";break;case 93:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 94:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 95:case 154:case 190:case 198:case 199:case 200:case 201:case 202:case 203:case 204:case 205:case 206:case 207:case 208:case 209:case 210:case 211:case 213:case 223:case 224:case 225:case 226:case 227:case 228:case 269:case 316:case 317:case 318:case 319:case 320:case 321:case 381:case 406:case 408:case 475:case 476:case 477:case 478:case 479:case 480:case 484:case 486:case 487:case 496:case 507:case 508:this.$=$$[$0];break;case 96:case 100:case 103:case 106:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 97:case 101:case 104:case 107:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 98:case 99:case 102:case 105:this.$=$$[$0];$$[$0].as="default";break;case 108:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();var r;if(s[0]=="#"){r=new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){r=new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x4=="XLSX"||x4=="JSON"){r=new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else{throw new Error("Unknown string in FROM clause")};this.$=r;break;case 109:this.$=new yy.Table({databaseid:$$[$0-2],tableid:$$[$0]});break;case 110:this.$=new yy.Table({tableid:$$[$0]});break;case 111:case 112:this.$=$$[$0-1];$$[$0-1].push($$[$0]);break;case 115:this.$=new yy.Join($$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 116:this.$={table:$$[$0]};break;case 117:this.$={table:$$[$0-1],as:$$[$0]};break;case 118:this.$={table:$$[$0-2],as:$$[$0]};break;case 119:this.$={param:$$[$0-1],as:$$[$0]};break;case 120:this.$={param:$$[$0-2],as:$$[$0]};break;case 121:this.$={select:$$[$0-3],as:$$[$0]};break;case 122:this.$={select:$$[$0-4],as:$$[$0]};break;case 123:this.$={funcid:$$[$0],as:"default"};break;case 124:this.$={funcid:$$[$0-1],as:$$[$0]};break;case 125:this.$={funcid:$$[$0-2],as:$$[$0]};break;case 126:this.$={variable:$$[$0],as:"default"};break;case 127:this.$={variable:$$[$0-1],as:$$[$0]};break;case 128:this.$={variable:$$[$0-2],as:$$[$0]};break;case 129:this.$={joinmode:$$[$0]};break;case 130:this.$={joinmode:$$[$0-1],natural:true};break;case 131:case 132:this.$="INNER";break;case 133:case 134:this.$="LEFT";break;case 135:case 136:this.$="RIGHT";break;case 137:case 138:this.$="OUTER";break;case 139:this.$="SEMI";break;case 140:this.$="ANTI";break;case 141:this.$="CROSS";break;case 142:this.$={on:$$[$0]};break;case 143:case 538:this.$={using:$$[$0]};break;case 146:this.$={where:new yy.Expression({expression:$$[$0]})};break;case 148:this.$={group:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 151:this.$=new yy.GroupExpression({type:"GROUPING SETS",group:$$[$0-1]});break;case 152:this.$=new yy.GroupExpression({type:"ROLLUP",group:$$[$0-1]});break;case 153:this.$=new yy.GroupExpression({type:"CUBE",group:$$[$0-1]});break;case 156:this.$={having:$$[$0]};break;case 158:this.$={union:$$[$0]};break;case 159:this.$={unionall:$$[$0]};break;case 160:this.$={except:$$[$0]};break;case 161:this.$={intersect:$$[$0]};break;case 162:this.$={union:$$[$0-1],corresponding:true};break;case 163:this.$={unionall:$$[$0-1],corresponding:true};break;case 164:this.$={except:$$[$0-1],corresponding:true};break;case 165:this.$={intersect:$$[$0-1],corresponding:true};break;case 167:this.$={order:$$[$0]};break;case 169:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 170:this.$=new yy.Expression({expression:$$[$0],direction:"ASC"});break;case 171:this.$=new yy.Expression({expression:$$[$0-1],direction:$$[$0].toUpperCase()});break;case 172:this.$=new yy.Expression({expression:$$[$0-2],direction:"ASC",nocase:true});break;case 173:this.$=new yy.Expression({expression:$$[$0-3],direction:$$[$0].toUpperCase(),nocase:true});break;case 175:this.$={limit:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 177:this.$={offset:$$[$0]};break;case 178:yy.extend($$[$0-1],$$[$0]);$$[$0-3].push($$[$0-1]);this.$=$$[$0-3];break;case 179:yy.extend($$[$0-1],$$[$0]);this.$=[$$[$0-1]];break;case 180:this.$=undefined;break;case 181:this.$={td:$$[$0]};break;case 182:this.$={th:$$[$0]};break;case 183:this.$={th:$$[$0-2],td:$$[$0]};break;case 184:case 186:case 188:$$[$0-2].as=$$[$0];this.$=$$[$0-2];break;case 185:case 187:case 189:$$[$0-1].as=$$[$0];this.$=$$[$0-1];break;case 191:this.$=new yy.Column({columid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 192:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 193:this.$=new yy.Column({columnid:$$[$0]});break;case 194:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 195:case 196:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 197:this.$=new yy.Column({columnid:$$[$0]});break;case 212:this.$=new yy.Json({value:$$[$0]});break;case 214:if(!yy.queries)yy.queries=[];yy.queries.push($$[$0-1]);$$[$0-1].queriesidx=yy.queries.length;this.$=$$[$0-1];break;case 215:this.$=$$[$0];break;case 216:this.$=new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)});break;case 217:this.$=new yy.FuncValue({funcid:$$[$0],newid:true});break;case 218:this.$=$$[$0];yy.extend(this.$,{newid:true});break;case 219:this.$=new yy.Convert({expression:$$[$0-3]});yy.extend(this.$,$$[$0-1]);break;case 220:this.$=new yy.Convert({expression:$$[$0-5],style:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 221:this.$=new yy.Convert({expression:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 222:this.$=new yy.Convert({expression:$$[$0-3],style:$$[$0-1]});yy.extend(this.$,$$[$0-5]);break;case 230:this.$=new yy.AggrValue({aggregatorid:$$[$0-4].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 231:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],distinct:true,over:$$[$0]});break;case 232:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 234:case 235:this.$=new yy.Over;yy.extend(this.$,$$[$0-1]);break;case 236:this.$=new yy.Over;yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 237:this.$={partition:$$[$0]};break;case 238:this.$={order:$$[$0]};break;case 239:this.$="SUM";break;case 240:this.$="COUNT";break;case 241:this.$="MIN";break;case 242:this.$="MAX";break;case 243:this.$="AVG";break;case 244:this.$="FIRST";break;case 245:this.$="LAST";break;case 246:this.$="AGGR";break;case 247:this.$="ARRAY";break;case 248:if(alasql.aggr[$$[$0-3]]){this.$=new yy.AggrValue({aggregatorid:"REDUCE",funcid:$$[$0-3],expression:$$[$0-1].pop()})}else{this.$=new yy.FuncValue({funcid:$$[$0-3],args:$$[$0-1]})};break;case 249:this.$=new yy.FuncValue({funcid:$$[$0-2]});break;case 251:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 252:this.$=new yy.NumValue({value:+$$[$0]});break;case 253:this.$=new yy.LogicValue({value:true});break;case 254:this.$=new yy.LogicValue({value:false});break;case 255:this.$=new yy.StringValue({value:$$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 256:this.$=new yy.StringValue({value:$$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 257:this.$=new yy.NullValue({value:undefined});break;case 258:this.$=new yy.VarValue({variable:$$[$0]});break;case 259:if(!yy.exists)yy.exists=[];this.$=new yy.ExistsValue({value:$$[$0-1],existsidx:yy.exists.length});yy.exists.push($$[$0-1]);break;case 260:case 261:this.$=new yy.ParamValue({param:$$[$0]});break;case 262:if(typeof yy.question=="undefined")yy.question=0; -this.$=new yy.ParamValue({param:yy.question++});break;case 263:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++,array:true});break;case 264:this.$=new yy.CaseValue({expression:$$[$0-3],whens:$$[$0-2],elses:$$[$0-1]});break;case 265:this.$=new yy.CaseValue({whens:$$[$0-2],elses:$$[$0-1]});break;case 266:case 540:case 541:this.$=$$[$0-1];this.$.push($$[$0]);break;case 268:this.$={when:$$[$0-2],then:$$[$0]};break;case 271:this.$=new yy.Op({left:$$[$0-2],op:"LIKE",right:$$[$0]});break;case 272:this.$=new yy.Op({left:$$[$0-2],op:"NOT LIKE",right:$$[$0]});break;case 273:this.$=new yy.Op({left:$$[$0-2],op:"+",right:$$[$0]});break;case 274:this.$=new yy.Op({left:$$[$0-2],op:"-",right:$$[$0]});break;case 275:this.$=new yy.Op({left:$$[$0-2],op:"*",right:$$[$0]});break;case 276:this.$=new yy.Op({left:$$[$0-2],op:"/",right:$$[$0]});break;case 277:this.$=new yy.Op({left:$$[$0-2],op:"%",right:$$[$0]});break;case 278:this.$=new yy.Op({left:$$[$0-2],op:"^",right:$$[$0]});break;case 279:case 280:case 282:this.$=new yy.Op({left:$$[$0-2],op:"->",right:$$[$0]});break;case 281:this.$=new yy.Op({left:$$[$0-4],op:"->",right:$$[$0-1]});break;case 283:this.$=new yy.Op({left:$$[$0-2],op:">",right:$$[$0]});break;case 284:this.$=new yy.Op({left:$$[$0-2],op:">=",right:$$[$0]});break;case 285:this.$=new yy.Op({left:$$[$0-2],op:"<",right:$$[$0]});break;case 286:this.$=new yy.Op({left:$$[$0-2],op:"<=",right:$$[$0]});break;case 287:this.$=new yy.Op({left:$$[$0-2],op:"=",right:$$[$0]});break;case 288:this.$=new yy.Op({left:$$[$0-2],op:"==",right:$$[$0]});break;case 289:this.$=new yy.Op({left:$$[$0-2],op:"===",right:$$[$0]});break;case 290:this.$=new yy.Op({left:$$[$0-2],op:"!=",right:$$[$0]});break;case 291:this.$=new yy.Op({left:$$[$0-2],op:"!==",right:$$[$0]});break;case 292:this.$=new yy.Op({left:$$[$0-2],op:"!===",right:$$[$0]});break;case 293:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 294:this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1]});break;case 295:this.$=new yy.Op({left:$$[$0-2],op:"AND",right:$$[$0]});break;case 296:this.$=new yy.Op({left:$$[$0-2],op:"OR",right:$$[$0]});break;case 297:this.$=new yy.UniOp({op:"NOT",right:$$[$0]});break;case 298:this.$=new yy.UniOp({op:"-",right:$$[$0]});break;case 299:this.$=new yy.UniOp({op:"+",right:$$[$0]});break;case 300:this.$=new yy.UniOp({right:$$[$0-1]});break;case 301:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 302:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 303:this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1]});break;case 304:this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1]});break;case 305:this.$=new yy.Op({left:$$[$0-3],op:"IN",right:[]});break;case 306:this.$=new yy.Op({left:$$[$0-4],op:"NOT IN",right:[]});break;case 307:this.$=new yy.Op({left:$$[$0-2],op:"IN",right:$$[$0]});break;case 308:this.$=new yy.Op({left:$$[$0-3],op:"NOT IN",right:$$[$0]});break;case 309:this.$=new yy.Op({left:$$[$0-2],op:"BETWEEN",right:$$[$0]});break;case 310:this.$=new yy.Op({left:$$[$0-2],op:"NOT BETWEEN",right:$$[$0]});break;case 311:this.$=new yy.Op({op:"IS",left:$$[$0-2],right:$$[$0]});break;case 312:this.$=new yy.Convert({expression:$$[$0-2]});yy.extend(this.$,$$[$0]);break;case 313:case 314:this.$=$$[$0];break;case 315:this.$=$$[$0-1];break;case 322:this.$="ALL";break;case 323:this.$="SOME";break;case 324:this.$="ANY";break;case 325:this.$=new yy.Update({table:$$[$0-4],columns:$$[$0-2],where:$$[$0]});break;case 326:this.$=new yy.Update({table:$$[$0-2],columns:$$[$0]});break;case 329:this.$=new yy.SetColumn({columnid:$$[$0-2],expression:$$[$0]});break;case 330:this.$=new yy.Delete({table:$$[$0-2],where:$$[$0]});break;case 331:this.$=new yy.Delete({table:$$[$0]});break;case 332:this.$=new yy.Insert({into:$$[$0-2],values:$$[$0]});break;case 333:this.$=new yy.Insert({into:$$[$0-2],"default":true});break;case 334:this.$=new yy.Insert({into:$$[$0-5],columns:$$[$0-3],values:$$[$0]});break;case 335:this.$=new yy.Insert({into:$$[$0-1],select:$$[$0]});break;case 336:this.$=new yy.Insert({into:$$[$0-4],columns:$$[$0-2],select:$$[$0]});break;case 339:this.$=[$$[$0-1]];break;case 342:this.$=$$[$0-4];$$[$0-4].push($$[$0-1]);break;case 343:case 344:case 346:case 354:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 355:this.$=new yy.CreateTable({table:$$[$0-4]});yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-2]);break;case 356:this.$=new yy.CreateTable({table:$$[$0]});break;case 366:case 367:this.$={temporary:true};break;case 369:this.$={ifnotexists:true};break;case 370:this.$={columns:$$[$0-2],constraints:$$[$0]};break;case 371:this.$={columns:$$[$0]};break;case 372:this.$={as:$$[$0]};break;case 373:case 396:this.$=[$$[$0]];break;case 374:case 397:case 500:case 505:case 525:case 529:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 375:case 376:case 377:case 378:case 379:$$[$0].constraintid=$$[$0-1];this.$=$$[$0];break;case 382:this.$={type:"CHECK",expression:$$[$0-1]};break;case 383:this.$={type:"PRIMARY KEY",columns:$$[$0-1]};break;case 384:this.$={type:"FOREIGN KEY",columns:$$[$0-7],fktableid:$$[$0-4],fkcolumns:$$[$0-2]};break;case 398:this.$=new yy.ColumnDef({columnid:$$[$0-2]});yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 399:this.$=new yy.ColumnDef({columnid:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 400:this.$=new yy.ColumnDef({columnid:$$[$0],dbtypeid:""});break;case 401:this.$={dbtypeid:$$[$0-5],dbsize:+$$[$0-3],dbprecision:+$$[$0-1]};break;case 402:this.$={dbtypeid:$$[$0-3],dbsize:+$$[$0-1]};break;case 403:this.$={dbtypeid:$$[$0]};break;case 404:this.$={dbtypeid:"ENUM",enumvalues:$$[$0-1]};break;case 405:this.$=undefined;break;case 407:yy.extend($$[$0-1],$$[$0]);this.$=$$[$0-1];break;case 409:this.$={primarykey:true};break;case 410:case 411:this.$={foreignkey:{tableid:$$[$0-3],columnid:$$[$0-1]}};break;case 412:this.$={auto_increment:true};break;case 413:this.$={identity:[$$[$0-3],$$[$0-1]]};break;case 414:this.$={identity:[1,1]};break;case 415:this.$={"default":$$[$0]};break;case 416:this.$={"null":true};break;case 417:this.$={notnull:true};break;case 418:this.$=$$[$0];break;case 419:this.$=new yy.DropTable({table:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 421:this.$={ifexists:true};break;case 422:this.$=new yy.AlterTable({table:$$[$0-3],renameto:$$[$0]});break;case 423:this.$=new yy.AlterTable({table:$$[$0-3],addcolumn:$$[$0]});break;case 424:this.$=new yy.AlterTable({table:$$[$0-3],modifycolumn:$$[$0]});break;case 425:this.$=new yy.AlterTable({table:$$[$0-5],renamecolumn:$$[$0-2],to:$$[$0]});break;case 426:this.$=new yy.AlterTable({table:$$[$0-3],dropcolumn:$$[$0]});break;case 427:this.$=new yy.AlterTable({table:$$[$0-2],renameto:$$[$0]});break;case 428:this.$=new yy.AttachDatabase({databaseid:$$[$0],engineid:$$[$0-2].toUpperCase()});break;case 429:this.$=new yy.AttachDatabase({databaseid:$$[$0-3],engineid:$$[$0-5].toUpperCase(),args:$$[$0-1]});break;case 430:this.$=new yy.AttachDatabase({databaseid:$$[$0-2],engineid:$$[$0-4].toUpperCase(),as:$$[$0]});break;case 431:this.$=new yy.AttachDatabase({databaseid:$$[$0-5],engineid:$$[$0-7].toUpperCase(),as:$$[$0],args:$$[$0-3]});break;case 432:this.$=new yy.DetachDatabase({databaseid:$$[$0]});break;case 433:this.$=new yy.CreateDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0]);break;case 434:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),databaseid:$$[$0-1],as:$$[$0]});yy.extend(this.$,$$[$0-2]);break;case 435:this.$=new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(),databaseid:$$[$0-4],args:$$[$0-2],as:$$[$0]});yy.extend(this.$,$$[$0-5]);break;case 436:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),as:$$[$0],args:[$$[$0-1]]});yy.extend(this.$,$$[$0-2]);break;case 437:this.$=undefined;break;case 438:case 471:case 489:case 492:case 509:this.$=$$[$0-1];break;case 439:case 440:this.$=new yy.UseDatabase({databaseid:$$[$0]});break;case 441:this.$=new yy.DropDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 442:case 443:this.$=new yy.DropDatabase({databaseid:$$[$0],engineid:$$[$0-3].toUpperCase()});yy.extend(this.$,$$[$0-1]);break;case 444:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1]});break;case 445:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1],unique:true});break;case 446:this.$=new yy.DropIndex({indexid:$$[$0]});break;case 447:this.$=new yy.ShowDatabases;break;case 448:this.$=new yy.ShowDatabases({like:$$[$0]});break;case 449:this.$=new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase()});break;case 450:this.$=new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase(),like:$$[$0]});break;case 451:this.$=new yy.ShowTables;break;case 452:this.$=new yy.ShowTables({like:$$[$0]});break;case 453:this.$=new yy.ShowTables({databaseid:$$[$0]});break;case 454:this.$=new yy.ShowTables({like:$$[$0],databaseid:$$[$0-2]});break;case 455:this.$=new yy.ShowColumns({table:$$[$0]});break;case 456:this.$=new yy.ShowColumns({table:$$[$0-2],databaseid:$$[$0]});break;case 457:this.$=new yy.ShowIndex({table:$$[$0]});break;case 458:this.$=new yy.ShowIndex({table:$$[$0-2],databaseid:$$[$0]});break;case 459:this.$=new yy.ShowCreateTable({table:$$[$0]});break;case 460:this.$=new yy.ShowCreateTable({table:$$[$0-2],databaseid:$$[$0]});break;case 461:this.$=new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]});yy.extend(this.$,$$[$0-6]);break;case 462:this.$=new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]});break;case 463:this.$=new yy.DropTable({table:$$[$0],view:true});yy.extend(this.$,$$[$0-1]);break;case 464:this.$=new yy.Help({subject:$$[$0].value.toUpperCase()});break;case 465:this.$=new yy.Help;break;case 466:this.$=new yy.ExpressionStatement({expression:$$[$0]});break;case 467:this.$=new yy.Source({url:$$[$0].value});break;case 468:this.$=new yy.Assert({value:$$[$0]});break;case 469:this.$=new yy.Assert({value:$$[$0].value});break;case 470:this.$=new yy.Assert({value:$$[$0],message:$$[$0-2]});break;case 472:case 483:case 485:this.$=$$[$0].value;break;case 473:case 481:this.$=+$$[$0].value;break;case 474:this.$=!!$$[$0].value;break;case 482:this.$=""+$$[$0].value;break;case 488:this.$=$$[$0-1];break;case 490:case 493:this.$=$$[$0-2];break;case 491:this.$={};break;case 494:this.$=[];break;case 495:yy.extend($$[$0-2],$$[$0]);this.$=$$[$0-2];break;case 497:this.$={};this.$[$$[$0-2].substr(1,$$[$0-2].length-2)]=$$[$0];break;case 498:case 499:this.$={};this.$[$$[$0-2]]=$$[$0];break;case 502:this.$=new yy.SetVariable({variable:$$[$0-1].toLowerCase(),value:$$[$0]});break;case 503:this.$=new yy.SetVariable({variable:$$[$0-2],expression:$$[$0]});break;case 504:this.$=new yy.SetVariable({variable:$$[$0-3],props:$$[$0-2],expression:$$[$0]});break;case 510:this.$=true;break;case 511:this.$=false;break;case 512:this.$=new yy.CommitTransaction;break;case 513:this.$=new yy.RollbackTransaction;break;case 514:this.$=new yy.BeginTransaction;break;case 515:this.$=new yy.If({expression:$$[$0-2],thenstat:$$[$0-1],elsestat:$$[$0]});if($$[$0-1].exists)this.$.exists=$$[$0-1].exists;if($$[$0-1].queries)this.$.queries=$$[$0-1].queries;break;case 516:this.$=new yy.If({expression:$$[$0-1],thenstat:$$[$0]});break;case 517:this.$=$$[$0];break;case 518:this.$=new yy.While({expression:$$[$0-1],loopstat:$$[$0]});if($$[$0].exists)this.$.exists=$$[$0].exists;if($$[$0].queries)this.$.queries=$$[$0].queries;break;case 519:this.$=new yy.Continue;break;case 520:this.$=new yy.Break;break;case 521:this.$=new yy.BeginEnd({statements:$$[$0-1]});break;case 522:case 523:this.$=new yy.Print({statement:$$[$0]});break;case 524:this.$=new yy.Require({paths:$$[$0]});break;case 527:this.$=new yy.Declare({declares:$$[$0]});break;case 530:this.$={variable:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 531:this.$={variable:$$[$0-2]};yy.extend(this.$,$$[$0]);break;case 532:this.$={variable:$$[$0-3],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 533:this.$={variable:$$[$0-4],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 534:this.$=new yy.TruncateTable({table:$$[$0]});break;case 535:this.$=new yy.Merge;yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 536:case 537:this.$={into:$$[$0]};break;case 539:this.$={on:$$[$0]};break;case 544:this.$={matched:true,action:$$[$0]};break;case 545:this.$={matched:true,expr:$$[$0-2],action:$$[$0]};break;case 546:this.$={"delete":true};break;case 547:this.$={update:$$[$0]};break;case 548:case 549:this.$={matched:false,bytarget:true,action:$$[$0]};break;case 550:case 551:this.$={matched:false,bytarget:true,expr:$$[$0-2],action:$$[$0]};break;case 552:this.$={matched:false,bysource:true,action:$$[$0]};break;case 553:this.$={matched:false,bysource:true,expr:$$[$0-2],action:$$[$0]};break;case 554:this.$={insert:true,values:$$[$0]};break;case 555:this.$={insert:true,values:$$[$0],columns:$$[$0-3]};break;case 556:this.$={insert:true,defaultvalues:true};break;case 557:this.$={insert:true,defaultvalues:true,columns:$$[$0-3]};break;case 559:this.$={output:{columns:$$[$0]}};break;case 560:this.$={output:{columns:$$[$0-3],intovar:$$[$0]}};break;case 561:this.$={output:{columns:$$[$0-2],intotable:$$[$0]}};break;case 562:this.$={output:{columns:$$[$0-5],intotable:$$[$0-3],intocolumns:$$[$0-1]}};break}},table:[o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{252:[1,141]},{3:142,4:$VB,5:$VC},{3:144,4:$VB,5:$VC,78:[1,146],86:[1,145],252:[1,147],301:[1,143],309:[1,148]},{193:$V71,341:149,342:150},{97:[1,152]},{301:[1,153]},{3:155,4:$VB,5:$VC,86:[1,156],252:[1,157],301:[1,154],309:[1,158]},o($V81,[2,337],{244:159,91:[1,160]}),{252:[1,161]},o($V91,[2,75],{67:162,91:[1,163]}),{3:173,4:$VB,5:$VC,64:$Va1,91:[1,166],92:168,93:170,94:169,95:171,96:$Vb1,99:165,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01,345:164},{3:178,4:$VB,5:$VC,60:176,62:177},{3:182,4:$VB,5:$VC,86:[1,183],251:[1,179],306:[1,181],307:[1,184],308:[1,180]},{252:[1,185]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:187,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,186],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,188]},{330:[1,189]},{3:191,4:$VB,5:$VC,301:[1,190]},{3:193,4:$VB,5:$VC,92:192},o($VA,[2,465],{153:194,96:$VE,191:$VV}),o($Vd1,[2,216]),{96:$VE,153:195,191:$VV},{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:[1,198],152:$VF,153:201,159:202,160:203,164:196,171:197,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:208,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,519]),o($VA,[2,520]),{3:106,4:$VB,5:$VC,33:209,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:211,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:210,314:126,315:$V51,319:$V61},{96:$VE,153:213,191:$VV,339:212},{3:214,4:$VB,5:$VC,193:[1,215]},o($Vg1,$Vh1,{76:219,75:[1,216],78:[1,217],79:[1,218],88:$Vi1}),o($Vj1,[2,63],{81:[1,221],82:[1,222],83:[1,223],84:[1,224],85:[1,225],86:[1,226],87:[1,227]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:228,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,230]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:231,225:251,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vd1,[2,198]),o($Vd1,[2,199]),o($Vd1,[2,200]),o($Vd1,[2,201]),o($Vd1,[2,202]),o($Vd1,[2,203]),o($Vd1,[2,204]),o($Vd1,[2,205]),o($Vd1,[2,206]),o($Vd1,[2,207]),o($Vd1,[2,208]),o($Vd1,[2,209]),o($Vd1,[2,210]),o($Vd1,[2,211]),o($Vd1,[2,212]),o($Vd1,[2,213]),{3:106,4:$VB,5:$VC,33:260,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:261,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,215]),{64:[1,262]},o($Vd1,$VL1,{64:$VM1,106:[1,264]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:265,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,193]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,258,259,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,252]),o($VN1,[2,253]),o($VN1,[2,254]),o($VN1,$VO1),o($VN1,[2,256]),o($VN1,[2,257]),{3:268,4:$VB,5:$VC},{3:269,4:$VB,5:$VC},o($VP1,[2,262]),o($VP1,[2,263]),{3:270,4:$VB,5:$VC,64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},{64:[1,277]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:278,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:279,203:280,204:$VR1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,282]},{64:[1,283]},o($VS1,[2,476]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:284,317:287,318:289,319:$V61,322:285,323:[1,286]},{3:299,4:$VB,5:$VC,93:300},{64:[2,239]},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},o($VU1,[2,1]),o($VU1,[2,2]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,320:301,321:[1,302],324:303},{3:193,4:$VB,5:$VC,92:307},{301:[1,308]},o($V81,$VX1,{253:309,264:$VY1}),{301:[1,311]},{3:312,4:$VB,5:$VC},{86:[1,313]},o($V81,$VX1,{253:314,264:$VY1}),o($V81,$VX1,{253:315,264:$VY1}),o($VA,[2,527],{61:[1,316]}),o($VZ1,[2,528]),{3:317,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:318},{3:319,4:$VB,5:$VC},o($V81,$V_1,{294:320,264:$V$1}),{301:[1,322]},{3:323,4:$VB,5:$VC},o($V81,$V_1,{294:324,264:$V$1}),o($V81,$V_1,{294:325,264:$V$1}),{3:193,4:$VB,5:$VC,92:326},o($V81,[2,338]),{3:193,4:$VB,5:$VC,92:327},o($V02,[2,83],{68:328,97:[1,329]}),{3:173,4:$VB,5:$VC,92:330,93:331,94:332,95:333,96:[1,334],193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,336],346:335},{122:[2,536]},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:337,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:338,66:59,74:79,80:$V4},o($V12,[2,95],{3:339,4:$VB,5:$VC,63:[1,340]}),o($V12,[2,98],{3:341,4:$VB,5:$VC,63:[1,342]}),o($V12,[2,99],{3:343,4:$VB,5:$VC,63:[1,344]}),o($V12,[2,102],{3:345,4:$VB,5:$VC,63:[1,346]}),o($V12,[2,105],{3:347,4:$VB,5:$VC,63:[1,348]}),o([4,5,8,9,11,61,63,65,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22,{64:$VM1,106:$V32}),{3:270,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,108]),{33:350,61:[1,351],66:59,74:79,80:$V4},o($V42,[2,56]),{63:[1,352]},{252:[1,353]},{97:[1,354]},o($VA,[2,447],{207:[1,355]}),{306:[1,356]},{97:[1,357]},o($VA,[2,451],{97:[1,359],207:[1,358]}),{3:193,4:$VB,5:$VC,92:360},o($VA,[2,514]),{9:$Vx,11:$Vy,202:[1,361]},o($VA,[2,512]),o($VA,[2,513]),{3:362,4:$VB,5:$VC},o($VA,[2,440]),{239:[1,363]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V22,{106:$V32}),o($VA,[2,464]),o($VA,[2,467]),o($VA,[2,468]),o($VA,[2,469]),o($VA,$VO1,{61:[1,364]}),{64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},o($V52,[2,223]),o($V52,[2,224]),o($V52,[2,225]),o($V52,[2,226]),o($V52,[2,227]),o($V52,[2,228]),o($V52,[2,229]),{64:$VM1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:251,10:365,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,522]),o($VA,[2,523]),o($VA,[2,466],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,524],{61:[1,366]}),o($VZ1,[2,526]),{120:[1,368],325:367,328:[1,369]},{3:370,4:$VB,5:$VC},o($Vg1,$Vh1,{76:371,88:$Vi1}),o($Vg1,$Vh1,{76:372,88:$Vi1}),o($Vg1,$Vh1,{76:373,88:$Vi1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:374,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,378],89:377,152:$VF},o($Vj1,[2,64]),o($Vj1,[2,65]),o($Vj1,[2,66]),o($Vj1,[2,67]),o($Vj1,[2,68]),o($Vj1,[2,69]),o($Vj1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:379,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,516],{333:380,206:[1,381]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:382,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:390,4:$VB,5:$VC,64:[1,392],89:391,93:393,152:$VF},o($V62,[2,316],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:394,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:399,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V62,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:401,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:402,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,405],226:404,236:[1,406],237:[1,407]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:408,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:298,4:$VB,5:$VC,64:[1,410],93:413,156:412,193:$V72,231:411},{230:[1,415]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:416,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:419,289:$V92},{65:[1,422]},{65:[1,423],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,425],79:[1,426],89:92,93:88,94:96,95:97,96:$VE,121:424,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,428],89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:427,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:430,4:$VB,5:$VC,81:$Va2,155:[1,432]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,234:$VJ1}),o($Vb2,[2,298],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,299],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($VP1,[2,260]),o($VP1,[2,261]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,258]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:433,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,472]),o($VS1,[2,473]),o($VS1,[2,474]),o($VS1,[2,475]),o($VS1,[2,477]),{33:434,66:59,74:79,80:$V4},{155:$Vk1,200:435,203:280,204:$VR1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{201:436,202:$Vc2,203:437,204:$VR1,206:$Vd2},o($Ve2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:439,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:441,289:$V92},o($VS1,[2,478]),{61:[1,443],323:[1,442]},o($VS1,[2,494]),o($Vf2,[2,501]),o($Vg2,[2,479]),o($Vg2,[2,480]),o($Vg2,[2,481]),o($Vg2,[2,482]),o($Vg2,[2,483]),o($Vg2,[2,484]),o($Vg2,[2,485]),o($Vg2,[2,486]),o($Vg2,[2,487]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:444,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,$VL1,{64:$VM1,106:$Vh2}),o($Vd1,[2,217],{64:$VM1}),o($Vd1,[2,218]),{61:[1,447],321:[1,446]},o($VS1,[2,491]),o($Vi2,[2,496]),{196:[1,448]},{196:[1,449]},{196:[1,450]},{293:[1,454],296:[1,451],298:[1,452],299:[1,453]},{3:455,4:$VB,5:$VC},{3:456,4:$VB,5:$VC},{229:[1,457]},o($Vj2,$VX1,{253:458,264:$VY1}),{120:[1,459]},{3:460,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:461},{3:193,4:$VB,5:$VC,92:462},{193:$V71,342:463},{4:$V82,63:[1,465],169:464,289:$V92},o($VA,[2,331],{124:[1,466]}),o($VA,[2,432]),{3:467,4:$VB,5:$VC},{194:[1,468]},o($Vj2,$V_1,{294:469,264:$V$1}),o($VA,[2,446]),{3:193,4:$VB,5:$VC,92:470},{3:193,4:$VB,5:$VC,92:471},{33:475,64:[1,474],66:59,74:79,80:$V4,245:[1,472],247:[1,473]},{297:[1,476]},o($Vk2,[2,145],{69:477,124:[1,478]}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,98:479,99:480,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V91,[2,76]),o($V91,[2,77]),o($V91,[2,78]),o($V91,[2,79]),o($V91,[2,80]),{120:[1,482],347:481},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:483,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,537]},{65:[1,484]},o($V12,[2,93]),{3:485,4:$VB,5:$VC},o($V12,[2,96]),{3:486,4:$VB,5:$VC},o($V12,[2,100]),{3:487,4:$VB,5:$VC},o($V12,[2,103]),{3:488,4:$VB,5:$VC},o($V12,[2,106]),{3:489,4:$VB,5:$VC},{3:490,4:$VB,5:$VC},o($VA,[2,54]),{3:178,4:$VB,5:$VC,62:491},{64:[1,492]},{3:193,4:$VB,5:$VC,92:493},{3:193,4:$VB,5:$VC,92:494},{96:$VE,153:495,191:$VV},o($VA,[2,449],{207:[1,496]}),{3:193,4:$VB,5:$VC,92:497},{96:$VE,153:498,191:$VV},{3:499,4:$VB,5:$VC},o($VA,[2,534]),o($VA,[2,521]),o($VA,[2,439]),{3:503,4:$VB,5:$VC,156:502,240:500,241:501},{164:504,193:$Vf1,314:126,315:$V51,319:$V61},o($VA,[2,518]),{96:$VE,153:505,191:$VV},o($VA,[2,502]),o($VA,[2,510]),o($VA,[2,511]),{214:[1,508],219:[1,506],326:507},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:509,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:510,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vl2,[2,62],{61:$Vm2}),o($Vn2,$Vo2,{149:513,150:$Vp2,151:$Vq2}),o($Vr2,[2,190],{225:251,3:517,153:519,4:$VB,5:$VC,63:[1,516],96:$VE,152:[1,518],155:$Vk1,191:$VV,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vg1,[2,71],{90:[1,520]}),{89:521,152:$VF},o($Vz,[2,9]),o($VA,[2,515]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:522,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vs2,[2,271],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vs2,[2,272],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,273],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,274],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vt2,[2,275],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,276],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,277],{225:251,213:$Vr1,214:$Vs1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,278],{225:251,214:$Vs1}),o($Vd1,[2,279],{64:$VM1}),o($Vd1,[2,280]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:523,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,282]),o($Vu2,[2,283],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,284],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,285],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,286],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,287],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,288],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,289],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,290],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,291],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,292],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),{64:[1,524]},{64:[2,322]},{64:[2,323]},{64:[2,324]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,295],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1}),{3:106,4:$VB,5:$VC,33:525,49:104,64:$VD,65:[1,527],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:526,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,307]),o($Vd1,[2,313]),o($Vd1,[2,314]),{64:[1,528]},{3:298,4:$VB,5:$VC,64:[1,529],93:413,156:412,193:$V72,231:530},o($Vv2,[2,309],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o($Vv2,[2,310],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,311],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vd1,[2,312]),o($Vw2,[2,403],{64:[1,531]}),{64:[1,532]},o($Vd1,[2,214]),o($Vd1,[2,300]),{65:[1,533],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:534,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:535,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vx2,65:[1,536]},o($VP1,[2,249]),o($Vy2,[2,250],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,$Vz2,{106:[1,538]}),o($VS1,[2,196]),o($Vd1,[2,192]),{65:[1,539],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,540]},{201:541,202:$Vc2,203:437,204:$VR1,206:$Vd2},{202:[1,542]},o($Ve2,[2,266]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:543,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vk1,205:[1,544],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{63:[1,545],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{61:[1,546]},o($VS1,[2,492]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:548,318:289,319:$V61,323:[1,547]},{65:[1,549],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:550,4:$VB,5:$VC,81:$Va2},o($VS1,[2,489]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,321:[1,551],324:552},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:553,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:554,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:289,319:$V61},{83:[1,557],297:[1,556]},{83:[1,558]},{83:[1,559]},{83:[1,560]},o($VA,[2,428],{63:[1,562],64:[1,561]}),o($VA,[2,433]),{194:[1,563]},{3:564,4:$VB,5:$VC,96:$VE,153:565,191:$VV},{3:193,4:$VB,5:$VC,92:566},{120:[1,567]},o($VA,[2,356],{64:[1,568]}),{63:[1,570],64:[1,569]},o($VZ1,[2,529]),o($VZ1,[2,530],{219:[1,571]}),{4:$V82,169:572,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:573,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,441]),o($Vj2,[2,421]),{3:574,4:$VB,5:$VC,96:$VE,153:575,191:$VV},o($VA,[2,419]),o($VA,[2,463]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:576,314:126,315:$V51,319:$V61},{245:[1,580]},{3:503,4:$VB,5:$VC,123:581,156:582},o($VA,[2,335]),{3:583,4:$VB,5:$VC},o($VB2,[2,147],{70:584,125:[1,585]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:586,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V02,[2,81],{61:[1,587]}),o($VC2,[2,88],{100:588,107:589,101:590,108:591,111:594,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),{204:$VN2,348:603,350:604,351:605},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:607,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,538]},o($V12,[2,92],{3:608,4:$VB,5:$VC,63:[1,609]}),o($V12,[2,94]),o($V12,[2,97]),o($V12,[2,101]),o($V12,[2,104]),o($V12,[2,107]),o([4,5,8,9,11,61,63,64,65,80,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,109]),o($V42,[2,55]),{33:610,66:59,74:79,80:$V4},o($VA,[2,459],{97:[1,611]}),o($VA,[2,455],{97:[1,612]}),o($VA,[2,448]),{96:$VE,153:613,191:$VV},o($VA,[2,457],{97:[1,614]}),o($VA,[2,452]),o($VA,[2,453],{207:[1,615]}),o($VA,[2,326],{61:$VO2,124:[1,616]}),o($VP2,[2,327]),{219:[1,618]},o([8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VL1,{106:$Vh2}),o($VA,[2,470]),o($VZ1,[2,525]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:619,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,621],219:[1,620]},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:622},o($Vl2,[2,59],{61:$Vm2}),o($Vl2,[2,60],{61:$Vm2}),o($Vl2,[2,61],{61:$Vm2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:376,148:626,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:627,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:629,4:$VB,5:$VC,96:$VE,152:[1,630],153:631,191:$VV},o($Vr2,[2,185]),o($Vr2,[2,187]),o($Vr2,[2,189]),o($Vg1,[2,73]),{65:[1,632]},o($VA,[2,517]),{65:[1,633],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,33:634,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:635,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,636]},{61:$Vx2,65:[1,637]},o($Vd1,[2,305]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:638,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:639,49:104,64:$VD,65:[1,641],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:640,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,308]),{152:[1,642]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:643,314:126,315:$V51,319:$V61},o($Vd1,$VS2,{174:645,175:$VT2}),{65:[1,647],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,648],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VP1,[2,248]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:649,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:650,4:$VB,5:$VC,155:[1,651]},o($VS1,[2,471]),o($Vd1,[2,259]),{202:[1,652]},o($Vd1,[2,265]),{155:$Vk1,202:[2,269],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:653,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:654,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,493]),o($Vf2,[2,500]),o($Vg2,[2,488]),o($VS1,$Vz2,{106:[1,656]}),o($VS1,[2,490]),o($Vi2,[2,495]),o($Vi2,[2,497]),o($Vi2,[2,498]),o($Vi2,[2,499]),{3:657,4:$VB,5:$VC},{3:658,4:$VB,5:$VC},{3:660,4:$VB,5:$VC,286:659},{3:660,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:663,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:664,4:$VB,5:$VC},o($Vj2,[2,369]),o($VA,$VU2,{303:665,63:$VV2,64:[1,666]}),o($VA,$VU2,{303:668,63:$VV2}),{64:[1,669]},{3:193,4:$VB,5:$VC,92:670},{3:660,4:$VB,5:$VC,63:[1,673],254:671,265:672,286:674},{3:503,4:$VB,5:$VC,123:675,156:582},{33:676,66:59,74:79,80:$V4},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:677,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VZ1,[2,531],{219:[1,678]}),o($VA,[2,330],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,442]),o($VA,[2,443]),o($VA,[2,332],{61:$VW2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:680,314:126,315:$V51,319:$V61},o($VX2,[2,340]),o($VX2,[2,341]),o($VA,[2,333]),{61:$VY2,65:[1,681]},o($VZ2,[2,353]),o($VA,[2,427]),o($V_2,[2,166],{71:683,139:[1,684]}),{126:[1,685]},o($Vk2,[2,146],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:686,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V02,[2,82],{108:591,111:594,107:687,101:688,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),o($V$2,[2,113]),o($V$2,[2,114]),{3:173,4:$VB,5:$VC,64:[1,692],92:690,93:693,94:691,95:694,109:689,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{103:[1,695],113:$V03},{103:[1,697],113:$V13},o($V23,[2,129]),{102:[1,701],104:[1,700],111:699,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2},o($V23,[2,131]),{113:[1,702]},{104:[1,704],113:[1,703]},{104:[1,706],113:[1,705]},{104:[1,707]},{113:[1,708]},{113:[1,709]},o($VA,[2,558],{349:710,350:711,351:712,204:$VN2,356:[1,713]}),o($V33,[2,542]),o($V33,[2,543]),{229:[1,715],352:[1,714]},{155:$Vk1,204:[2,539],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V12,[2,90]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,450]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,156:502,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,503],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:726},o($V43,[2,506]),o($V43,[2,507]),o($V43,[2,508]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,$Vo2,{149:728,150:$Vp2,151:$Vq2}),o($Vn2,[2,181],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vn2,[2,182],{225:251,150:[1,729],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vr2,[2,184]),o($Vr2,[2,186]),o($Vr2,[2,188]),o($Vg1,[2,72]),o($Vd1,[2,281]),{65:[1,730]},{61:$Vx2,65:[1,731]},o($Vd1,[2,301]),o($Vd1,[2,303]),{65:[1,732],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,733]},{61:$Vx2,65:[1,734]},o($Vd1,[2,306]),{61:[1,735],65:[1,736]},{61:$V53,65:[1,737]},o($Vy2,[2,345],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,[2,230]),{64:[1,739]},o($Vd1,$VS2,{174:740,175:$VT2}),o($Vd1,$VS2,{174:741,175:$VT2}),o($Vy2,[2,251],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VS1,[2,194]),o($Vd1,[2,191]),o($Vd1,[2,264]),o($Ve2,[2,268],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:650,4:$VB,5:$VC},o($VA,[2,422]),{297:[1,746]},o($VA,[2,423]),o($V63,[2,400],{169:747,4:$V82,288:[1,748],289:$V92}),o($VA,[2,424]),o($VA,[2,426]),{61:$Vx2,65:[1,749]},o($VA,[2,430]),o($VA,[2,434]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,436]),{3:753,4:$VB,5:$VC,96:$V73,278:752},{64:[1,755]},{65:[1,756]},{61:[1,757],65:[2,371]},{33:758,66:59,74:79,80:$V4},o($Vy2,[2,396]),{61:$VY2,65:[1,759]},o($VA,[2,462]),o($VZ1,[2,532],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:760,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,761],94:763,164:762,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V53,65:[1,764]},{33:766,66:59,74:79,80:$V4,245:[1,765]},{3:503,4:$VB,5:$VC,156:767},o($V83,[2,174],{72:768,145:[1,769]}),{126:[1,770]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:771,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,89]),o($V$2,[2,111]),o($V$2,[2,112]),o($V$2,[2,144],{110:777,120:[1,778],122:[1,779]}),o($Vc3,[2,116],{3:780,4:$VB,5:$VC,63:[1,781]}),{3:782,4:$VB,5:$VC,63:[1,783]},{33:784,66:59,74:79,80:$V4},o($Vc3,[2,123],{3:785,4:$VB,5:$VC,63:[1,786]}),o($Vc3,[2,126],{3:787,4:$VB,5:$VC,63:[1,788]}),{64:[1,789]},o($V23,[2,141]),{64:[1,790]},o($V23,[2,137]),o($V23,[2,130]),{113:$V13},{113:$V03},o($V23,[2,132]),o($V23,[2,133]),{113:[1,791]},o($V23,[2,135]),{113:[1,792]},{113:[1,793]},o($V23,[2,139]),o($V23,[2,140]),o($VA,[2,535]),o($V33,[2,540]),o($V33,[2,541]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:794,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,795],227:[1,796]},{352:[1,797]},o($V12,[2,91]),o($V42,[2,57]),o($VA,[2,460]),o($VA,[2,456]),o($VA,[2,458]),o($VA,[2,454]),o($VA,[2,325],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VP2,[2,328]),o($VP2,[2,329],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,504],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V43,[2,505]),{65:[1,798],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vn2,[2,178]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:799,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,293]),o($Vd1,[2,294]),o($Vd1,[2,315]),o($Vd1,[2,302]),o($Vd1,[2,304]),{152:[1,800]},o($Vw2,[2,402]),o($Vw2,[2,404]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:801,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:802,177:803,178:[1,804]},o($Vd1,[2,231]),o($Vd1,[2,232]),o($Vd1,[2,219]),{152:[1,806]},o($Vd1,[2,221]),{152:[1,807]},{3:808,4:$VB,5:$VC},o($V63,[2,405],{287:809,290:810,291:811,273:820,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V63,[2,399]),o($VA,[2,429],{63:[1,822]}),{61:$Vx2,65:[1,823]},o($VA,[2,438]),{61:$Vn3,65:[1,824]},o($Vy2,[2,392]),o($Vy2,[2,393]),{3:753,4:$VB,5:$VC,96:$V73,278:826},o($VA,[2,357],{255:827,256:828,257:829,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($Vs3,$Vt3,{3:660,266:834,286:835,267:836,268:837,4:$VB,5:$VC,274:$Vu3}),{65:[2,372]},{63:[1,839]},o($VZ1,[2,533],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:840,314:126,315:$V51,319:$V61},o($VX2,[2,343]),o($VX2,[2,344]),o($VX2,[2,339]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:841,314:126,315:$V51,319:$V61},o($VA,[2,336]),o($VZ2,[2,354]),o($Vv3,[2,157],{73:842,135:[1,843],136:[1,844],137:[1,845]}),{89:846,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:847,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VB2,[2,155],{128:850,61:$Vw3,134:[1,852]}),o($Vx3,[2,149]),{131:[1,853]},{64:[1,854]},{64:[1,855]},o($Vx3,[2,154],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,115]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:856,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:857,156:582},o($Vc3,[2,117]),{3:858,4:$VB,5:$VC},o($Vc3,[2,119]),{3:859,4:$VB,5:$VC},{65:[1,860]},o($Vc3,[2,124]),{3:861,4:$VB,5:$VC},o($Vc3,[2,127]),{3:862,4:$VB,5:$VC},{33:863,66:59,74:79,80:$V4},{33:864,66:59,74:79,80:$V4},o($V23,[2,134]),o($V23,[2,136]),o($V23,[2,138]),o($VA,[2,559],{61:$Vm2,91:[1,865]}),{238:$Vy3,242:$Vz3,353:866},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:869,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,871],205:[1,870],227:[1,872]},o($V43,[2,509]),o($Vn2,[2,183],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,873]},o($Vy2,[2,346],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,874],139:$Vd3,177:875},{65:[1,876]},{126:[1,877]},{126:[1,878]},{65:[1,879]},{65:[1,880]},o($VA,[2,425]),o($V63,[2,398]),o($V63,[2,406],{273:820,291:881,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V52,[2,408]),{277:[1,882]},{277:[1,883]},{3:884,4:$VB,5:$VC},o($V52,[2,412]),o($V52,[2,414],{64:[1,885]}),{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:$VE,152:$VF,153:201,159:202,160:203,171:886,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V52,[2,416]),{192:[1,887]},o($V52,[2,418]),{64:[1,888]},{3:889,4:$VB,5:$VC},o($VA,$VU2,{303:890,63:$VV2}),o($VA,[2,444]),{3:891,4:$VB,5:$VC,96:[1,892]},{61:$Vn3,65:[1,893]},o($VA,[2,355]),o($VA,[2,358],{257:894,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($VA3,[2,360]),o($VA3,[2,361]),{219:[1,895]},{219:[1,896]},{219:[1,897]},{61:[1,898],65:[2,370]},o($Vy2,[2,397]),o($Vy2,[2,373]),{78:[1,906],86:[1,907],269:899,270:900,271:901,272:902,273:903,275:$Vi3,276:[1,904],277:[1,908],279:[1,905]},{3:909,4:$VB,5:$VC},{33:910,66:59,74:79,80:$V4},{61:$V53,65:[1,911]},o($VA,[2,334],{61:$VW2}),o($Vv3,[2,58]),{33:912,66:59,74:79,79:[1,913],80:$V4,138:[1,914]},{33:915,66:59,74:79,80:$V4,138:[1,916]},{33:917,66:59,74:79,80:$V4,138:[1,918]},o($V83,[2,176],{146:919,147:[1,920]}),o($V_2,[2,167],{61:$VB3}),o($VC3,[2,168]),o($VC3,[2,170],{225:251,142:[1,922],143:[1,923],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VB2,[2,148]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,129:924,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:925,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:927,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:928,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V$2,[2,142],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,143],{61:$VY2}),o($Vc3,[2,118]),o($Vc3,[2,120]),{3:929,4:$VB,5:$VC,63:[1,930]},o($Vc3,[2,125]),o($Vc3,[2,128]),{65:[1,931]},{65:[1,932]},{3:193,4:$VB,5:$VC,92:934,193:[1,933]},o($V33,[2,544]),o($V33,[2,546]),{239:[1,935]},{155:$Vk1,205:[1,936],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{243:$VD3,354:937},{312:[1,940],355:[1,939]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:941,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vw2,[2,401]),o($Vd1,[2,234]),{65:[1,942]},o($Vd1,[2,235]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:943,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:944,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,220]),o($Vd1,[2,222]),o($V52,[2,407]),o($V52,[2,409]),{280:[1,945]},{64:[1,946]},{89:947,152:$VF},o($V52,[2,415]),o($V52,[2,417]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:948,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,431]),o($VA,[2,435]),o($Vy2,[2,394]),o($Vy2,[2,395]),o($VA,[2,445]),o($VA3,[2,359]),{3:949,4:$VB,5:$VC},{89:950,152:$VF},{3:951,4:$VB,5:$VC},o($Vs3,$Vt3,{268:837,267:952,274:$Vu3}),o($Vy2,[2,375]),o($Vy2,[2,376]),o($Vy2,[2,377]),o($Vy2,[2,378]),o($Vy2,[2,379]),{277:[1,953]},{277:[1,954]},o($Vy2,[2,389]),{3:955,4:$VB,5:$VC},{3:956,4:$VB,5:$VC},o($Vs3,[2,381]),o($VA,[2,461]),o($VX2,[2,342]),o($Vv3,[2,158]),{33:957,66:59,74:79,80:$V4,138:[1,958]},{33:959,66:59,74:79,80:$V4},o($Vv3,[2,160]),{33:960,66:59,74:79,80:$V4},o($Vv3,[2,161]),{33:961,66:59,74:79,80:$V4},o($V83,[2,175]),{89:962,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,141:963,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC3,[2,171]),{144:[1,964]},o($Vx3,[2,150]),o($VB2,[2,156],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:965,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vw3,65:[1,966]},{61:$Vw3,65:[1,967]},o($Vc3,[2,121]),{3:968,4:$VB,5:$VC},{3:969,4:$VB,5:$VC,63:[1,970]},{3:971,4:$VB,5:$VC,63:[1,972]},{3:973,4:$VB,5:$VC},o($VA,[2,561],{64:[1,974]}),{3:503,4:$VB,5:$VC,156:502,240:975,241:501},{238:$Vy3,242:$Vz3,353:976},o($V33,[2,548]),{64:[1,978],245:[1,977],247:[1,979]},{205:[1,980],227:[1,981]},{205:[1,982],227:[1,983]},{155:$Vk1,205:[1,984],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vd1,[2,236]),o([65,139],[2,237],{61:$Vw3}),{61:$VB3,65:[2,238]},{3:985,4:$VB,5:$VC},{3:986,4:$VB,5:$VC},{61:[1,987]},{65:[1,988],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VA3,[2,362]),o($VA3,[2,363]),o($VA3,[2,364]),o($Vy2,[2,374]),{64:[1,989]},{64:[1,990]},{64:[1,991]},{64:[1,992]},o($Vv3,[2,159]),{33:993,66:59,74:79,80:$V4},o($Vv3,[2,162]),o($Vv3,[2,164]),o($Vv3,[2,165]),o($V83,[2,177]),o($VC3,[2,169]),o($VC3,[2,172],{142:[1,994]}),{61:$Vw3,65:[1,995]},o($Vx3,[2,152]),o($Vx3,[2,153]),o($Vc3,[2,122]),o($V$2,[2,84]),{3:996,4:$VB,5:$VC},o($V$2,[2,86]),{3:997,4:$VB,5:$VC},o($VA,[2,560]),{3:503,4:$VB,5:$VC,123:998,156:582},o($V33,[2,547],{61:$VO2}),o($V33,[2,545]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:999,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:1e3,156:582},{245:[1,1001]},{243:$VD3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1004},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1005,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1006},{64:[1,1007]},{65:[1,1008]},{89:1009,152:$VF},o($V52,[2,382]),{3:753,4:$VB,5:$VC,96:$V73,278:1010},{3:753,4:$VB,5:$VC,96:$V73,278:1011},{3:503,4:$VB,5:$VC,123:1012,156:582},{3:503,4:$VB,5:$VC,123:1013,156:582},o($Vv3,[2,163]),o($VC3,[2,173]),o($Vx3,[2,151]),o($V$2,[2,85]),o($V$2,[2,87]),{61:$VY2,65:[1,1014]},o($V33,[2,554],{61:$VW2}),{61:$VY2,65:[1,1015]},o($V33,[2,556]),o($V33,[2,549]),{155:$Vk1,205:[1,1016],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,552]),{155:$Vk1,205:[1,1017],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,550]),{3:1018,4:$VB,5:$VC},o($V52,[2,411]),{65:[1,1019]},{61:$Vn3,65:[1,1020]},{61:$Vn3,65:[1,1021]},{61:$VY2,65:[1,1022]},{61:$VY2,65:[1,1023]},o($VA,[2,562]),{245:[1,1024],247:[1,1025]},{243:$VD3,354:1026},{238:$Vy3,242:$Vz3,353:1027},{65:[1,1028]},o($V52,[2,413]),o($Vy2,[2,383]),{280:[1,1029]},o($Vy2,[2,390]),o($Vy2,[2,391]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1030,314:126,315:$V51,319:$V61},{245:[1,1031]},o($V33,[2,551]),o($V33,[2,553]),o($V52,[2,410]),{3:1032,4:$VB,5:$VC},o($V33,[2,555],{61:$VW2}),o($V33,[2,557]),{64:[1,1033]},{3:753,4:$VB,5:$VC,96:$V73,278:1034},{61:$Vn3,65:[1,1035]},o($Vy2,[2,385],{281:1036,282:1037,120:[1,1038]}),o($Vy2,[2,384]),{120:[1,1040],283:1039},{242:[1,1041]},o($Vy2,[2,386]),{238:[1,1042]},{284:[1,1043]},{284:[1,1044]},{285:[1,1045]},{285:[1,1046]},{120:[2,387]},o($Vy2,[2,388])],defaultActions:{81:[2,3],129:[2,239],130:[2,240],131:[2,241],132:[2,242],133:[2,243],134:[2,244],135:[2,245],136:[2,246],137:[2,247],165:[2,536],337:[2,537],405:[2,322],406:[2,323],407:[2,324],483:[2,538],758:[2,372],1045:[2,387]},parseError:function parseError(str,hash){if(hash.recoverable){this.trace(str) -}else{throw new Error(str)}},parse:function parse(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1;var args=lstack.slice.call(arguments,1);var lexer=Object.create(this.lexer);var sharedState={yy:{}};for(var k in this.yy){if(Object.prototype.hasOwnProperty.call(this.yy,k)){sharedState.yy[k]=this.yy[k]}}lexer.setInput(input,sharedState.yy);sharedState.yy.lexer=lexer;sharedState.yy.parser=this;if(typeof lexer.yylloc=="undefined"){lexer.yylloc={}}var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;if(typeof sharedState.yy.parseError==="function"){this.parseError=sharedState.yy.parseError}else{this.parseError=Object.getPrototypeOf(this).parseError}function popStack(n){stack.length=stack.length-2*n;vstack.length=vstack.length-n;lstack.length=lstack.length-n}_token_stack:function lex(){var token;token=lexer.lex()||EOF;if(typeof token!=="number"){token=self.symbols_[token]||token}return token}var symbol,preErrorSymbol,state,action,a,r,yyval={},p,len,newState,expected;while(true){state=stack[stack.length-1];if(this.defaultActions[state]){action=this.defaultActions[state]}else{if(symbol===null||typeof symbol=="undefined"){symbol=lex()}action=table[state]&&table[state][symbol]}if(typeof action==="undefined"||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state]){if(this.terminals_[p]&&p>TERROR){expected.push("'"+this.terminals_[p]+"'")}}if(lexer.showPosition){errStr="Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'"}else{errStr="Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'")}this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1){throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol)}switch(action[0]){case 1:stack.push(symbol);vstack.push(lexer.yytext);lstack.push(lexer.yylloc);stack.push(action[1]);symbol=null;if(!preErrorSymbol){yyleng=lexer.yyleng;yytext=lexer.yytext;yylineno=lexer.yylineno;yyloc=lexer.yylloc;if(recovering>0){recovering--}}else{symbol=preErrorSymbol;preErrorSymbol=null}break;case 2:len=this.productions_[action[1]][1];yyval.$=vstack[vstack.length-len];yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column};if(ranges){yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]}r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args));if(typeof r!=="undefined"){return r}if(len){stack=stack.slice(0,-1*len*2);vstack=vstack.slice(0,-1*len);lstack=lstack.slice(0,-1*len)}stack.push(this.productions_[action[1]][0]);vstack.push(yyval.$);lstack.push(yyval._$);newState=table[stack[stack.length-2]][stack[stack.length-1]];stack.push(newState);break;case 3:return true}}return true}};var lexer=function(){var lexer={EOF:1,parseError:function parseError(str,hash){if(this.yy.parser){this.yy.parser.parseError(str,hash)}else{throw new Error(str)}},setInput:function(input,yy){this.yy=yy||this.yy||{};this._input=input;this._more=this._backtrack=this.done=false;this.yylineno=this.yyleng=0;this.yytext=this.matched=this.match="";this.conditionStack=["INITIAL"];this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0};if(this.options.ranges){this.yylloc.range=[0,0]}this.offset=0;return this},input:function(){var ch=this._input[0];this.yytext+=ch;this.yyleng++;this.offset++;this.match+=ch;this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno++;this.yylloc.last_line++}else{this.yylloc.last_column++}if(this.options.ranges){this.yylloc.range[1]++}this._input=this._input.slice(1);return ch},unput:function(ch){var len=ch.length;var lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input;this.yytext=this.yytext.substr(0,this.yytext.length-len);this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1);this.matched=this.matched.substr(0,this.matched.length-1);if(lines.length-1){this.yylineno-=lines.length-1}var r=this.yylloc.range;this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len};if(this.options.ranges){this.yylloc.range=[r[0],r[0]+this.yyleng-len]}this.yyleng=this.yytext.length;return this},more:function(){this._more=true;return this},reject:function(){if(this.options.backtrack_lexer){this._backtrack=true}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;if(next.length<20){next+=this._input.substr(0,20-next.length)}return(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput();var c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer){backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done};if(this.options.ranges){backup.yylloc.range=this.yylloc.range.slice(0)}}lines=match[0].match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno+=lines.length}this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length};this.yytext+=match[0];this.match+=match[0];this.matches=match;this.yyleng=this.yytext.length;if(this.options.ranges){this.yylloc.range=[this.offset,this.offset+=this.yyleng]}this._more=false;this._backtrack=false;this._input=this._input.slice(match[0].length);this.matched+=match[0];token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]);if(this.done&&this._input){this.done=false}if(token){return token}else if(this._backtrack){for(var k in backup){this[k]=backup[k]}return false}return false},next:function(){if(this.done){return this.EOF}if(!this._input){this.done=true}var token,match,tempMatch,index;if(!this._more){this.yytext="";this.match=""}var rules=this._currentRules();for(var i=0;imatch[0].length)){match=tempMatch;index=i;if(this.options.backtrack_lexer){token=this.test_match(tempMatch,rules[i]);if(token!==false){return token}else if(this._backtrack){match=false;continue}else{return false}}else if(!this.options.flex){break}}}if(match){token=this.test_match(match,rules[index]);if(token!==false){return token}return false}if(this._input===""){return this.EOF}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}},lex:function lex(){var r=this.next();if(r){return r}else{return this.lex()}},begin:function begin(condition){this.conditionStack.push(condition)},popState:function popState(){var n=this.conditionStack.length-1;if(n>0){return this.conditionStack.pop()}else{return this.conditionStack[0]}},_currentRules:function _currentRules(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules}else{return this.conditions["INITIAL"].rules}},topState:function topState(n){n=this.conditionStack.length-1-Math.abs(n||0);if(n>=0){return this.conditionStack[n]}else{return"INITIAL"}},pushState:function pushState(condition){this.begin(condition)},stateStackSize:function stateStackSize(){return this.conditionStack.length},options:{"case-insensitive":true},performAction:function anonymous(yy,yy_,$avoiding_name_collisions,YY_START){var YYSTATE=YY_START;switch($avoiding_name_collisions){case 0:return 166;break;case 1:return 198;break;case 2:return 315;break;case 3:return 5;break;case 4:return 5;break;case 5:return 191;break;case 6:return 191;break;case 7:return 96;break;case 8:return 96;break;case 9:return;break;case 10:return;break;case 11:break;case 12:return 228;break;case 13:return 227;break;case 14:return"ABSOLUTE";break;case 15:return 285;break;case 16:return 298;break;case 17:return 186;break;case 18:return 79;break;case 19:return 295;break;case 20:return 227;break;case 21:return 119;break;case 22:return 237;break;case 23:return 103;break;case 24:return 187;break;case 25:return 63;break;case 26:return 313;break;case 27:return 142;break;case 28:return 300;break;case 29:return 259;break;case 30:return 259;break;case 31:return 183;break;case 32:return 332;break;case 33:return 232;break;case 34:return 336;break;case 35:return 233;break;case 36:return 208;break;case 37:return 126;break;case 38:return 199;break;case 39:return 168;break;case 40:return 260;break;case 41:return 275;break;case 42:return"CLOSE";break;case 43:return 143;break;case 44:return"COLUMN";break;case 45:return"COLUMNS";break;case 46:return"COMMIT";break;case 47:return"CONSTRAINT";break;case 48:return"CONTINUE";break;case 49:return"CONVERT";break;case 50:return"CORRESPONDING";break;case 51:return"COUNT";break;case 52:return 251;break;case 53:return"CROSS";break;case 54:return 133;break;case 55:return"CURRENT_TIMESTAMP";break;case 56:return"CURSOR";break;case 57:return 301;break;case 58:return 306;break;case 59:return 340;break;case 60:return 247;break;case 61:return 242;break;case 62:return"DELETED";break;case 63:return 142;break;case 64:return 302;break;case 65:return 75;break;case 66:return 293;break;case 67:return 202;break;case 68:return 258;break;case 69:return 289;break;case 70:return 206;break;case 71:return 136;break;case 72:return 194;break;case 73:return 13;break;case 74:return 190;break;case 75:return"FETCH";break;case 76:return 184;break;case 77:return 279;break;case 78:return 97;break;case 79:return 11;break;case 80:return 125;break;case 81:return 130;break;case 82:return 134;break;case 83:return 310;break;case 84:return 264;break;case 85:return 292;break;case 86:return 234;break;case 87:return 230;break;case 88:return 86;break;case 89:return 114;break;case 90:return 243;break;case 91:return"INSERTED";break;case 92:return 137;break;case 93:return 91;break;case 94:return 113;break;case 95:return 277;break;case 96:return 185;break;case 97:return 115;break;case 98:return 207;break;case 99:return 145;break;case 100:return 312;break;case 101:return"MATCHED";break;case 102:return 84;break;case 103:return"MAX";break;case 104:return"MERGE";break;case 105:return"MIN";break;case 106:return"EXCEPT";break;case 107:return"MODIFY";break;case 108:return 112;break;case 109:return"NEXT";break;case 110:return 167;break;case 111:return 144;break;case 112:return 284;break;case 113:return 229;break;case 114:return 192;break;case 115:return 328;break;case 116:return 120;break;case 117:return 147;break;case 118:return"OPEN";break;case 119:return 228;break;case 120:return 139;break;case 121:return 104;break;case 122:return 175;break;case 123:return 178;break;case 124:return 90;break;case 125:return 15;break;case 126:return 276;break;case 127:return 337;break;case 128:return"PRIOR";break;case 129:return 14;break;case 130:return 87;break;case 131:return"REDUCE";break;case 132:return 280;break;case 133:return"RELATIVE";break;case 134:return 296;break;case 135:return 338;break;case 136:return"RESTORE";break;case 137:return 116;break;case 138:return 331;break;case 139:return 132;break;case 140:return 82;break;case 141:return 301;break;case 142:return 306;break;case 143:return 80;break;case 144:return 118;break;case 145:return 239;break;case 146:return 131;break;case 147:return 305;break;case 148:return 236;break;case 149:return"STORE";break;case 150:return"SUM";break;case 151:return 252;break;case 152:return 307;break;case 153:return 355;break;case 154:return 150;break;case 155:return 85;break;case 156:return 151;break;case 157:return 205;break;case 158:return 297;break;case 159:return 88;break;case 160:return"TRAN";break;case 161:return 330;break;case 162:return 189;break;case 163:return 343;break;case 164:return 135;break;case 165:return 78;break;case 166:return 238;break;case 167:return 304;break;case 168:return 122;break;case 169:return 81;break;case 170:return 245;break;case 171:return 309;break;case 172:return 204;break;case 173:return 124;break;case 174:return 334;break;case 175:return 59;break;case 176:return 330;break;case 177:return 152;break;case 178:return 152;break;case 179:return 214;break;case 180:return 209;break;case 181:return 210;break;case 182:return 155;break;case 183:return 211;break;case 184:return 212;break;case 185:return 224;break;case 186:return 221;break;case 187:return 223;break;case 188:return 220;break;case 189:return 216;break;case 190:return 215;break;case 191:return 218;break;case 192:return 222;break;case 193:return 217;break;case 194:return 219;break;case 195:return 222;break;case 196:return 64;break;case 197:return 65;break;case 198:return 193;break;case 199:return 319;break;case 200:return 321;break;case 201:return 323;break;case 202:return 106;break;case 203:return 61;break;case 204:return 235;break;case 205:return 196;break;case 206:return 9;break;case 207:return 195;break;case 208:return 197;break;case 209:return 213;break;case 210:return 4;break;case 211:return 8;break;case 212:return"INVALID";break}},rules:[/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],inclusive:true}}};return lexer}();parser.lexer=lexer;function Parser(){this.yy={}}Parser.prototype=parser;parser.Parser=Parser;return new Parser}();if(typeof require!=="undefined"&&typeof exports!=="undefined"){exports.parser=parser;exports.Parser=parser.Parser;exports.parse=function(){return parser.parse.apply(parser,arguments)};exports.main=function commonjsMain(args){if(!args[1]){console.log("Usage: "+args[0]+" FILE");process.exit(1)}var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)};if(typeof module!=="undefined"&&require.main===module){exports.main(process.argv.slice(1))}}alasql.prettyflag=false;alasql.pretty=function(sql,flag){var pf=alasql.prettyflag;alasql.prettyflag=!flag;var s=alasql.parse(sql).toString();alasql.prettyflag=pf;return s};function K(s){if(alasql.prettyflag){return''+s.toUpperCase()+""}else{return s}}function P(s){if(alasql.prettyflag){return''+s+""}else{return s}}function L(s){if(alasql.prettyflag){return''+s+""}else{return s}}function N(s){if(alasql.prettyflag){return''+s+""}else{return s}}function S(s){if(alasql.prettyflag){return''+s+""}else{return s}}function NL(){if(alasql.prettyflag){return"
"}else{return" "}}function ID(){if(alasql.prettyflag){return"     "}else{return""}}var utils=alasql.utils={};function returnTrue(){return true}function returnUndefined(){}var escapeq=utils.escapeq=function(s){return s.replace(/\'/g,"\\'")};var escapeqq=utils.undoubleq=function(s){return s.replace(/(\')/g,"''")};var doubleq=utils.doubleq=function(s){return s.replace(/(\'\')/g,"\\'")};var doubleqq=utils.doubleqq=function(s){return s.replace(/\'/g,"'")};var cutbom=function(s){if(s[0]==String.fromCharCode(65279))s=s.substr(1);return s};var loadFile=utils.loadFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(!path){var buff="";process.stdin.setEncoding("utf8");process.stdin.on("readable",function(){var chunk=process.stdin.read();if(chunk!==null){buff+=chunk.toString()}});process.stdin.on("end",function(){success(cutbom(buff))})}else{if(asy){fs.readFile(path,function(err,data){if(err){throw err}success(cutbom(data.toString()))})}else{var data=fs.readFileSync(path);success(cutbom(data.toString()))}}}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.file(function(file){var fileReader=new FileReader;fileReader.onloadend=function(e){success(cutbom(this.result))};fileReader.readAsText(file)})})})}else{if(typeof path=="string"){if(path.substr(0,1)=="#"&&typeof document!="undefined"){var data=document.querySelector(path).textContent;success(data)}else{var xhr=new XMLHttpRequest;xhr.onreadystatechange=function(){if(xhr.readyState===XMLHttpRequest.DONE){if(xhr.status===200){if(success)success(cutbom(xhr.responseText))}else{if(error)error(xhr)}}};xhr.open("GET",path,asy);xhr.send()}}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(cutbom(data))};reader.readAsText(files[0])}}};var loadBinaryFile=utils.loadBinaryFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(asy){fs.readFile(path,function(err,data){if(err){throw err}var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))})}else{var data=fs.readFileSync(path);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))}}else{if(typeof path=="string"){var xhr=new XMLHttpRequest;xhr.open("GET",path,asy);xhr.responseType="arraybuffer";xhr.onload=function(){var data=new Uint8Array(xhr.response);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))};xhr.send()}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(data)};reader.readAsBinaryString(files[0])}}};var removeFile=utils.removeFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.remove(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.remove(cb);if(cb)cb()},function(){if(cb)cb()})})}else{throw new Error("You can remove files only in Node.js and Apache Cordova")}};var deleteFile=utils.deleteFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.unlink(path,cb)}};var fileExists=utils.fileExists=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.exists(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){cb(true)},function(){cb(false)})})}else{throw new Error("You can use exists() only in Node.js or Apach Cordova")}};var saveFile=utils.saveFile=function(path,data,cb){var res=1;if(typeof path=="undefined"){res=data;if(cb)res=cb(res)}else{if(typeof exports=="object"){var fs=require("fs");var data=fs.writeFileSync(path,data);if(cb)res=cb(res)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:true},function(fileEntry){fileEntry.createWriter(function(fileWriter){fileWriter.onwriteend=function(){if(cb)res=cb(res)};fileWriter.write(data)})})})}else{var blob=new Blob([data],{type:"text/plain;charset=utf-8"});saveAs(blob,path);if(cb)res=cb(res)}}return res};var hash=utils.hash=function hash(str){var h=0;if(str.length==0)return h;for(var i=0;i=26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr;if(i>26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr}}return addr};var xlscn=utils.xlscn=function(s){var n=s.charCodeAt(0)-65;if(s.length>1){n=(n+1)*26+s.charCodeAt(1)-65;if(s.length>2){n=(n+1)*26+s.charCodeAt(2)-65}}return n};var domEmptyChildren=utils.domEmptyChildren=function(container){var len=container.childNodes.length;while(len--){container.removeChild(container.lastChild)}};alasql.utils.uncomment=function uncomment(str){str=("__"+str+"__").split("");var quote=false,quoteSign,blockComment=false,lineComment=false;for(var i=0,l=str.length;ialasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement}var res=alasql.res=statement(params,cb,scope);return res}else{alasql.precompile(ast.statements[0],alasql.useid,params);var res=alasql.res=ast.statements[0].execute(databaseid,params,cb,scope);return res}}else{if(cb){alasql.adrun(databaseid,ast,params,cb,scope)}else{return alasql.drun(databaseid,ast,params,cb,scope)}}};alasql.drun=function(databaseid,ast,params,cb,scope){var useid=alasql.useid;if(useid!=databaseid)alasql.use(databaseid);var res=[];for(var i=0,ilen=ast.statements.length;i=0){var source=query.sources[idx];source.data=data;if(typeof source.data=="function"){source.getfn=source.data;source.dontcache=source.getfn.dontcache;if(source.joinmode=="OUTER"||source.joinmode=="RIGHT"||source.joinmode=="ANTI"){source.dontcache=false}source.data={}}}else{query.queriesdata[-idx-1]=flatArray(data)}query.sourceslen--;if(query.sourceslen>0)return;return queryfn3(query)}function queryfn3(query){var scope=query.scope;preIndex(query);query.data=[];query.xgroups={};query.groups=[];var h=0;doJoin(query,scope,h);if(query.groupfn){query.data=[];if(query.groups.length==0){var g={};if(query.selectGroup.length>0){query.selectGroup.forEach(function(sg){if(sg.aggregatorid=="COUNT"||sg.aggregatorid=="SUM"){g[sg.nick]=0}else{g[sg.nick]=undefined}})}query.groups=[g]}for(var i=0,ilen=query.groups.length;i0){for(var i=0,ilen=query.data.length;i0&&source.optimization=="ix"&&source.onleftfn&&source.onrightfn){if(source.databaseid&&alasql.databases[source.databaseid].tables[source.tableid]){if(!alasql.databases[source.databaseid].tables[source.tableid].indices)query.database.tables[source.tableid].indices={};var ixx=alasql.databases[source.databaseid].tables[source.tableid].indices[hash(source.onrightfns+"`"+source.srcwherefns)];if(!alasql.databases[source.databaseid].tables[source.tableid].dirty&&ixx){source.ix=ixx}}if(!source.ix){source.ix={};var scope={};var i=0;var ilen=source.data.length;var dataw;while((dataw=source.data[i])||source.getfn&&(dataw=source.getfn(i))||i=query.sources.length){if(query.wherefn(scope,query.params,alasql)){if(query.groupfn){query.groupfn(scope,query.params,query.alasql)}else{query.data.push(query.selectfn(scope,query.params,alasql))}}}else if(query.sources[h].applyselect){var source=query.sources[h];source.applyselect(query.params,function(data){if(data.length>0){for(var i=0;i0){s+=NL()+ID()+K("GROUP BY")+" "+this.group.map(function(grp){return grp.toString()}).join(", ")}if(this.having)s+=NL()+ID()+K("HAVING")+" "+this.having.toString();if(this.order&&this.order.length>0){s+=NL()+ID()+K("ORDER BY")+" "+this.order.map(function(ord){return ord.toString()}).join(", ")}if(this.limit)s+=NL()+ID()+K("LIMIT")+" "+this.limit.value;if(this.offset)s+=NL()+ID()+K("OFFSET")+" "+this.offset.value;if(this.union)s+=NL()+K("UNION")+NL()+this.union.toString();if(this.unionall)s+=NL()+K("UNION ALL")+NL()+this.unionall.toString();if(this.except)s+=NL()+K("EXCEPT")+NL()+this.except.toString();if(this.intersect)s+=NL()+K("INTERSECT")+NL()+this.intersect.toString();return s};yy.Select.prototype.toJavaScript=function(context,tableid,defcols){var s="alasql.utils.flatArray(this.queriesfn["+(this.queriesidx-1)+"](this.params,null,"+context+"))[0]";return s};yy.Select.prototype.compile=function(databaseid){var db=alasql.databases[databaseid];var query=new Query;query.removeKeys=[];query.explain=this.explain;query.explaination=[];query.explid=1;query.modifier=this.modifier;query.database=db;this.compileWhereExists(query);this.compileQueries(query);query.defcols=this.compileDefCols(query,databaseid);query.fromfn=this.compileFrom(query);if(this.joins)this.compileJoins(query);this.compileSelectGroup0(query);if(this.group||query.selectGroup.length>0){query.selectgfns=this.compileSelectGroup1(query)}else{query.selectfns=this.compileSelect1(query)}if(this.where)this.compileWhereJoins(query);query.wherefn=this.compileWhere(query);if(this.group||query.selectGroup.length>0)query.groupfn=this.compileGroup(query);if(this.having)query.havingfn=this.compileHaving(query);if(this.group||query.selectGroup.length>0){query.selectgfn=this.compileSelectGroup2(query)}else{query.selectfn=this.compileSelect2(query)}query.distinct=this.distinct;if(this.order)query.orderfn=this.compileOrder(query);if(this.top){query.limit=this.top.value}else if(this.limit){query.limit=this.limit.value;if(this.offset){query.offset=this.offset.value}}query.percent=this.percent;if(this.union){query.unionfn=this.union.compile(databaseid);if(this.union.order){query.orderfn=this.union.compileOrder(query)}else{query.orderfn=null}}else if(this.unionall){query.unionallfn=this.unionall.compile(databaseid);if(this.unionall.order){query.orderfn=this.unionall.compileOrder(query)}else{query.orderfn=null}}else if(this.except){query.exceptfn=this.except.compile(databaseid);if(this.except.order){query.orderfn=this.except.compileOrder(query)}else{query.orderfn=null}}else if(this.intersect){query.intersectfn=this.intersect.compile(databaseid);if(this.intersect.order){query.intersectfn=this.intersect.compileOrder(query)}else{query.orderfn=null}}if(this.into){if(this.into instanceof yy.Table){if(alasql.options.autocommit&&alasql.databases[this.into.databaseid||databaseid].engineid){query.intoallfns='return alasql.engines["'+alasql.databases[this.into.databaseid||databaseid].engineid+'"]'+'.intoTable("'+(this.into.databaseid||databaseid)+'","'+this.into.tableid+'",this.data, columns, cb);'}else{query.intofns="alasql.databases['"+(this.into.databaseid||databaseid)+"'].tables"+"['"+this.into.tableid+"'].data.push(r);"}}else if(this.into instanceof yy.VarValue){query.intoallfns='alasql.vars["'+this.into.variable+'"]=this.data;res=this.data.length;if(cb)res=cb(res);return res;'}else if(this.into instanceof yy.FuncValue){var qs="return alasql.into['"+this.into.funcid.toUpperCase()+"'](";if(this.into.args&&this.into.args.length>0){qs+=this.into.args[0].toJavaScript()+",";if(this.into.args.length>1){qs+=this.into.args[1].toJavaScript()+","}else{qs+="undefined,"}}else{qs+="undefined, undefined,"}query.intoallfns=qs+"this.data,columns,cb)"}else if(this.into instanceof yy.ParamValue){query.intofns="params['"+this.into.param+"'].push(r)"}if(query.intofns){query.intofn=new Function("r,i,params,alasql",query.intofns)}else if(query.intoallfns){query.intoallfn=new Function("columns,cb,params,alasql",query.intoallfns)}}var statement=function(params,cb,oldscope){query.params=params;var res1=queryfn(query,oldscope,function(res){var res2=modify(query,res);if(cb)cb(res2);return res2});return res1};statement.query=query;return statement};function modify(query,res){if(query.modifier=="VALUE"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];res=res[0][key]}else{res=undefined}}if(query.modifier=="ROW"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var a=[];for(var key in res[0]){a.push(res[0][key])}res=a}else{res=undefined}}if(query.modifier=="COLUMN"){var ar=[];if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];for(var i=0,ilen=res.length;i0){key=query.columns[0].columnid;val=query.columns[1].columnid}else{var okeys=Object.keys(res[0]);key=okeys[0];val=okeys[1]}for(var i=0,ilen=res.length;i0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var s="";for(var i=0,ilen=res.length;i0){if(tq.args[0]){s+=tq.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(tq.args[1]){s+=tq.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s)}else if(tq instanceof yy.FromData){source.datafn=function(query,params,cb,idx,alasql){var res=tq.data;if(cb)res=cb(res,idx,query);return res}}else{throw new Error("Wrong table at FROM")}query.sources.push(source)});query.defaultTableid=query.sources[0].alias};alasql.prepareFromData=function(data,array){var res=data;if(typeof data=="string"){res=data.split(/\r?\n/);if(array){for(var i=0,ilen=res.length;i0){if(jn.args[0]){s+=jn.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(jn.args[1]){s+=jn.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s);query.aliases[source.alias]={type:"funcvalue"}}var alias=source.alias;if(jn.natural){if(jn.using||jn.on){throw new Error("NATURAL JOIN cannot have USING or ON clauses")}else{if(query.sources.length>0){var prevSource=query.sources[query.sources.length-1];var prevTable=alasql.databases[prevSource.databaseid].tables[prevSource.tableid];var table=alasql.databases[source.databaseid].tables[source.tableid];if(prevTable&&table){var c1=prevTable.columns.map(function(col){return col.columnid});var c2=table.columns.map(function(col){return col.columnid});jn.using=arrayIntersect(c1,c2).map(function(colid){return{columnid:colid}})}else{throw new Error("In this version of Alasql NATURAL JOIN "+"works for tables with predefined columns only")}}}}if(jn.using){var prevSource=query.sources[query.sources.length-1];source.onleftfns=jn.using.map(function(col){return"p['"+(prevSource.alias||prevSource.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfns=jn.using.map(function(col){return"p['"+(source.alias||source.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.optimization="ix"}else if(jn.on){if(jn.on instanceof yy.Op&&jn.on.op=="="&&!jn.on.allsome){source.optimization="ix";var lefts="";var rights="";var middles="";var middlef=false;var ls=jn.on.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=jn.on.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+alias+"']")>-1&&!(rs.indexOf("p['"+alias+"']")>-1)){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=ls}else{middlef=true}}else if(!(ls.indexOf("p['"+alias+"']")>-1)&&rs.indexOf("p['"+alias+"']")>-1){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=ls}else{middlef=true}}else{middlef=true}if(rs.indexOf("p['"+alias+"']")>-1&&!(ls.indexOf("p['"+alias+"']")>-1)){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=rs}else{middlef=true}}else if(!(rs.indexOf("p['"+alias+"']")>-1)&&ls.indexOf("p['"+alias+"']")>-1){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=rs}else{middlef=true}}else{middlef=true}if(middlef){rights="";lefts="";middles=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.optimization="no"}source.onleftfns=lefts;source.onrightfns=rights;source.onmiddlefns=middles||"true";source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.onmiddlefn=new Function("p,params,alasql","return "+source.onmiddlefns)}else{source.optimization="no";source.onmiddlefns=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.onmiddlefn=new Function("p,params,alasql","return "+jn.on.toJavaScript("p",query.defaultTableid,query.defcols))}}query.sources.push(source)}})};yy.Select.prototype.compileWhere=function(query){if(this.where){if(typeof this.where=="function"){return this.where}else{s=this.where.toJavaScript("p",query.defaultTableid,query.defcols);query.wherefns=s;return new Function("p,params,alasql","return "+s)}}else return function(){return true}};yy.Select.prototype.compileWhereJoins=function(query){return;optimizeWhereJoin(query,this.where.expression);query.sources.forEach(function(source){if(source.srcwherefns){source.srcwherefn=new Function("p,params,alasql","return "+source.srcwherefns)}if(source.wxleftfns){source.wxleftfn=new Function("p,params,alasql","return "+source.wxleftfns)}if(source.wxrightfns){source.wxrightfn=new Function("p,params,alasql","return "+source.wxrightfns)}})};function optimizeWhereJoin(query,ast){if(!ast)return false;if(!(ast instanceof yy.Op))return;if(ast.op!="="&&ast.op!="AND")return;if(ast.allsome)return;var s=ast.toJavaScript("p",query.defaultTableid,query.defcols);var fsrc=[];query.sources.forEach(function(source,idx){if(source.tableid){if(s.indexOf("p['"+source.alias+"']")>-1)fsrc.push(source)}});if(fsrc.length==0){return}else if(fsrc.length==1){if(!(s.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+fsrc[0].alias+"']"})){return}var src=fsrc[0];src.srcwherefns=src.srcwherefns?src.srcwherefns+"&&"+s:s;if(ast instanceof yy.Op&&(ast.op=="="&&!ast.allsome)){if(ast.left instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(rs.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=ls;fsrc[0].wxrightfns=rs}}if(ast.right instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=rs;fsrc[0].wxrightfns=ls}}}ast.reduced=true;return}else{if(ast.op="AND"){optimizeWhereJoin(query,ast.left); -optimizeWhereJoin(query,ast.right)}}}yy.Select.prototype.compileGroup=function(query){var self=this;var tableid=query.sources[0].alias;var defcols=query.defcols;var allgroup=[[]];if(this.group){allgroup=decartes(this.group,query)}var allgroups=[];allgroup.forEach(function(a){allgroups=arrayUnion(allgroups,a)});query.allgroups=allgroups;if(false){allgroups.forEach(function(col2){if(query.selectColumns[colid]){}else{var tmpid="default";if(query.sources.length>0)tmpid=query.sources[0].alias;if(Object.keys(query.selectColumns).length!=0)query.removeKeys.push(colid);query.selectfns+="r['"+escapeq(colid)+"']="+new yy.Column({columnid:colid}).toJavaScript("p",tmpid)+";"}})}var s="";allgroup.forEach(function(agroup){s+="var g=this.xgroups[";var rg=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"1";else return coljs});if(rg.length==0)rg=["''"];s+=rg.join('+"`"+');s+="];if(!g) {this.groups.push((g=this.xgroups[";s+=rg.join('+"`"+');s+="] = {";s+=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"";else return"'"+columnid+"':"+coljs+","}).join("");var neggroup=arrayDiff(allgroups,agroup);s+=neggroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];return"'"+columnid+"':null,"}).join("");var aft="";s+=query.selectGroup.map(function(col,idx){var colexp=col.expression.toJavaScript("p",tableid,defcols);var colas=col.nick;if(col instanceof yy.AggrValue){if(col.distinct){aft+=",g['$$_VALUES_"+colas+"']={},g['$$_VALUES_"+colas+"']["+colexp+"]=true"}if(col.aggregatorid=="SUM"||col.aggregatorid=="MIN"||col.aggregatorid=="MAX"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"){return"'"+colas+"':"+colexp+","}else if(col.aggregatorid=="ARRAY"){return"'"+colas+"':["+colexp+"],"}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*"){return"'"+colas+"':1,"}else{return"'"+colas+"':(typeof "+colexp+' != "undefined")?1:0,'}}else if(col.aggregatorid=="AVG"){query.removeKeys.push("_SUM_"+colas);query.removeKeys.push("_COUNT_"+colas);return"'"+colas+"':"+colexp+",'_SUM_"+colas+"':"+colexp+",'_COUNT_"+colas+"':1,"}else if(col.aggregatorid=="AGGR"){aft+=",g['"+colas+"']="+col.expression.toJavaScript("g",-1);return""}else if(col.aggregatorid=="REDUCE"){return"'"+colas+"':alasql.aggr['"+col.funcid+"']("+colexp+"),"}return""}else return""}).join("");s+="}"+aft+",g));} else {";s+=query.selectGroup.map(function(col,idx){var colas=col.nick;var colexp=col.expression.toJavaScript("p",tableid,defcols);if(col instanceof yy.AggrValue){if(col.distinct){var pre="if(typeof "+colexp+'!="undefined" && (!g[\'$$_VALUES_'+colas+"']["+colexp+"])) {";var post="g['$$_VALUES_"+colas+"']["+colexp+"]=true;}"}else{var pre="",post=""}if(col.aggregatorid=="SUM"){return pre+"g['"+colas+"']+="+colexp+";"+post}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*")return pre+"g['"+colas+"']++;"+post;else{return pre+"if(typeof "+colexp+'!="undefined") g[\''+colas+"']++;"+post}}else if(col.aggregatorid=="ARRAY"){return pre+"g['"+colas+"'].push("+colexp+");"+post}else if(col.aggregatorid=="MIN"){return pre+"g['"+colas+"']=Math.min(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="MAX"){return pre+"g['"+colas+"']=Math.max(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="FIRST"){return""}else if(col.aggregatorid=="LAST"){return pre+"g['"+colas+"']="+colexp+";"+post}else if(col.aggregatorid=="AVG"){return pre+"g['_SUM_"+colas+"']+="+colexp+";"+"g['_COUNT_"+colas+"']++;"+"g['"+colas+"']=g['_SUM_"+colas+"']/g['_COUNT_"+colas+"'];"+post}else if(col.aggregatorid=="AGGR"){return pre+"g['"+colas+"']="+col.expression.toJavaScript("g",-1)+";"+post}else if(col.aggregatorid=="REDUCE"){return pre+"g['"+colas+"']=alasql.aggr."+col.funcid+"("+colexp+",g['"+colas+"']);"+post}return""}else return""}).join("");s+="}"});return new Function("p,params,alasql",s)};function compileSelectStar(query,alias){var s="",sp="",ss=[];if(query.aliases[alias].tableid){var columns=alasql.databases[query.aliases[alias].databaseid].tables[query.aliases[alias].tableid].columns}if(columns&&columns.length>0){columns.forEach(function(tcol){ss.push("'"+tcol.columnid+"':p['"+alias+"']['"+tcol.columnid+"']");query.selectColumns[escapeq(tcol.columnid)]=true;var coldef={columnid:tcol.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbprecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef})}else{sp+='var w=p["'+alias+'"];for(var k in w){r[k]=w[k]};';query.dirtyColumns=true}return{s:ss.join(","),sp:sp}}yy.Select.prototype.compileSelect1=function(query){var self=this;query.columns=[];query.xcolumns={};query.selectColumns={};query.dirtyColumns=false;var s="var r={";var sp="";var ss=[];this.columns.forEach(function(col){if(col instanceof yy.Column){if(col.columnid=="*"){if(col.func){sp+="r=params['"+col.param+"'](p['"+query.sources[0].alias+"'],p,params,alasql);"}else if(col.tableid){var ret=compileSelectStar(query,col.tableid);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}else{for(var alias in query.aliases){var ret=compileSelectStar(query,alias);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}}}else{var tbid=col.tableid;var dbid=col.databaseid||query.sources[0].databaseid||query.database.databaseid;if(!tbid)tbid=query.defcols[col.columnid];if(!tbid)tbid=query.defaultTableid;if(col.columnid!="_"){ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']['"+col.columnid+"']")}else{ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']")}query.selectColumns[escapeq(col.as||col.columnid)]=true;if(query.aliases[tbid]&&query.aliases[tbid].type=="table"){if(!alasql.databases[dbid].tables[query.aliases[tbid].tableid]){throw new Error("Table '"+tbid+"' does not exists in database")}var columns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].columns;var xcolumns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].xcolumns;if(xcolumns&&columns.length>0){var tcol=xcolumns[col.columnid];var coldef={columnid:col.as||col.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbpecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}else{query.dirtyColumns=true}}else{}}}else if(col instanceof yy.AggrValue){if(!self.group){self.group=[""]}if(!col.as)col.as=escapeq(col.toString());if(col.aggregatorid=="SUM"||col.aggregatorid=="MAX"||col.aggregatorid=="MIN"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"||col.aggregatorid=="AVG"||col.aggregatorid=="ARRAY"||col.aggregatorid=="REDUCE"){ss.push("'"+escapeq(col.as)+"':"+col.expression.toJavaScript("p",query.defaultTableid,query.defcols))}else if(col.aggregatorid=="COUNT"){ss.push("'"+escapeq(col.as)+"':1")}query.selectColumns[col.aggregatorid+"("+escapeq(col.expression.toString())+")"]=thtd}else{ss.push("'"+escapeq(col.as||col.columnid||col.toString())+"':"+col.toJavaScript("p",query.defaultTableid,query.defcols));query.selectColumns[escapeq(col.as||col.columnid||col.toString())]=true}});s+=ss.join(",")+"};"+sp;return s};yy.Select.prototype.compileSelect2=function(query){var s=query.selectfns;return new Function("p,params,alasql",s+"return r")};yy.Select.prototype.compileSelectGroup0=function(query){var self=this;self.columns.forEach(function(col,idx){if(col instanceof yy.Column&&col.columnid=="*"){}else{var colas;if(col instanceof yy.Column){colas=escapeq(col.columnid)}else{colas=escapeq(col.toString())}for(var i=0;irb)return 1;if(ra==rb)return 0;return-1}}var s="";var sk="";this.order.forEach(function(ord,idx){var dg="";if(ord.expression instanceof yy.NumValue){ord.expression=self.columns[ord.expression.value-1]}if(ord.expression instanceof yy.Column){var columnid=ord.expression.columnid;if(query.xcolumns[columnid]){var dbtypeid=query.xcolumns[columnid].dbtypeid;if(dbtypeid=="DATE"||dbtypeid=="DATETIME")dg=".valueOf()"}else{if(alasql.options.valueof)dg=".valueOf()"}if(ord.nocase)dg+=".toUpperCase()";s+="if(a['"+columnid+"']"+dg+(ord.direction=="ASC"?">":"<")+"b['"+columnid+"']"+dg+")return 1;";s+="if(a['"+columnid+"']"+dg+"==b['"+columnid+"']"+dg+"){"}else{dg=".valueOf()";if(ord.nocase)dg+=".toUpperCase()";s+="if("+ord.toJavaScript("a","")+dg+(ord.direction=="ASC"?">":"<")+ord.toJavaScript("b","")+dg+")return 1;";s+="if("+ord.toJavaScript("a","")+dg+"=="+ord.toJavaScript("b","")+dg+"){"}sk+="}"});s+="return 0;";s+=sk+"return -1";query.orderfns=s;return new Function("a,b",s)}};var rollup=function(a,query){var rr=[];var mask=0;var glen=a.length;for(var g=0;g"){var s=this.left.toString()+"->";if(typeof this.right!="string"&&typeof this.right!="number")s+="(";s+=this.right.toString();if(typeof this.right!="string"&&typeof this.right!="number")s+=")";return s}return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+" ":"")+this.right.toString()};yy.Op.prototype.findAggregator=function(query){if(this.left&&this.left.findAggregator)this.left.findAggregator(query);if(this.right&&this.right.findAggregator&&!this.allsome){this.right.findAggregator(query)}};yy.Op.prototype.toType=function(tableid){if(["-","*","/","%","^"].indexOf(this.op)>-1)return"number";if(this.op=="+"){if(this.left.toType(tableid)=="string"||this.right.toType(tableid)=="string")return"string";if(this.left.toType(tableid)=="number"||this.right.toType(tableid)=="number")return"number"}if(["AND","OR","NOT","=","==","===","!=","!==","!===",">",">=","<","<=","IN","NOT IN","LIKE","NOT LIKE"].indexOf(this.op)>-1)return"boolean";if(this.op=="BETWEEN"||this.op=="NOT BETWEEN"||this.op=="IS NULL"||this.op=="IS NOT NULL")return"boolean";if(this.allsome)return"boolean";if(!this.op)return this.left.toType();return"unknown"};yy.Op.prototype.toJavaScript=function(context,tableid,defcols){var op=this.op;if(this.op=="=")op="===";else if(this.op=="<>")op="!=";else if(this.op=="OR")op="||";if(this.op=="->"){if(typeof this.right=="string"){return this.left.toJavaScript(context,tableid,defcols)+'["'+this.right+'"]'}else if(typeof this.right=="number"){return this.left.toJavaScript(context,tableid,defcols)+"["+this.right+"]"}else if(this.right instanceof yy.FuncValue){ss=[];if(!this.right.args||this.right.args.length==0){}else{var ss=this.right.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)})}return this.left.toJavaScript(context,tableid,defcols)+"['"+this.right.funcid+"']("+ss.join(",")+")"}else{return this.left.toJavaScript(context,tableid,defcols)+"["+this.right.toJavaScript(context,tableid,defcols)+"]"}}if(this.op=="IS"){return"((typeof "+this.left.toJavaScript(context,tableid,defcols)+"=='undefined') == "+"(typeof "+this.right.toJavaScript(context,tableid,defcols)+"=='undefined'))"}if(this.op=="=="){return"alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}if(this.op=="==="){return"(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!==="){return"!(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!=="){return"(!alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+"))"}if(this.op=="LIKE"){var s="("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g'))";return s}if(this.op=="NOT LIKE"){var s="!(("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g')))";return s}if(this.op=="BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong BETWEEN operator without AND part")}}if(this.op=="NOT BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"!(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong NOT BETWEEN operator without AND part")}}if(this.op=="IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else{var s="("+this.right.toJavaScript(context,tableid,defcols)+".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}}if(this.op=="NOT IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="ALL"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="SOME"||this.allsome=="ANY"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.op=="AND"){if(this.left.reduced){if(this.right.reduced){return"true"}else{return this.right.toJavaScript(context,tableid,defcols)}}else if(this.right.reduced){return this.left.toJavaScript(context,tableid,defcols)}op="&&"}if(this.op=="^"){return"Math.pow("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}return"("+this.left.toJavaScript(context,tableid,defcols)+op+this.right.toJavaScript(context,tableid,defcols)+")"};yy.VarValue=function(params){return yy.extend(this,params)};yy.VarValue.prototype.toString=function(){return"@"+L(this.variable)};yy.VarValue.prototype.toType=function(){return"unknown"};yy.VarValue.prototype.toJavaScript=function(){return"alasql.vars['"+this.variable+"']"};yy.NumValue=function(params){return yy.extend(this,params)};yy.NumValue.prototype.toString=function(){return N(this.value.toString())};yy.NumValue.prototype.toType=function(){return"number"};yy.NumValue.prototype.toJavaScript=function(){return""+this.value};yy.StringValue=function(params){return yy.extend(this,params)};yy.StringValue.prototype.toString=function(){return"'"+S(this.value.toString())+"'"};yy.StringValue.prototype.toType=function(){return"string"};yy.StringValue.prototype.toJavaScript=function(){return"'"+escapeq(this.value)+"'"};yy.LogicValue=function(params){return yy.extend(this,params)};yy.LogicValue.prototype.toString=function(){return this.value?"TRUE":"FALSE"};yy.LogicValue.prototype.toType=function(){return"boolean"};yy.LogicValue.prototype.toJavaScript=function(){return this.value?"true":"false"};yy.NullValue=function(params){return yy.extend(this,params)};yy.NullValue.prototype.toString=function(){return"NULL"};yy.NullValue.prototype.toJavaScript=function(){return"undefined"};yy.ParamValue=function(params){return yy.extend(this,params)};yy.ParamValue.prototype.toString=function(){return"$"+this.param};yy.ParamValue.prototype.toJavaScript=function(){if(typeof this.param=="string")return"params['"+this.param+"']";else return"params["+this.param+"]"};yy.UniOp=function(params){return yy.extend(this,params)};yy.UniOp.prototype.toString=function(){if(this.op=="-")return this.op+this.right.toString();if(this.op=="+")return this.op+this.right.toString();if(this.op=="NOT")return this.op+"("+this.right.toString()+")";else if(this.op==null)return"("+this.right.toString()+")"};yy.UniOp.prototype.findAggregator=function(query){if(this.right.findAggregator)this.right.findAggregator(query)};yy.UniOp.prototype.toType=function(tableid){if(this.op=="-")return"number";if(this.op=="+")return"number";if(this.op=="NOT")return"boolean"};yy.UniOp.prototype.toJavaScript=function(context,tableid,defcols){if(this.op=="-")return"(-("+this.right.toJavaScript(context,tableid,defcols)+"))";if(this.op=="+")return"("+this.right.toJavaScript(context,tableid,defcols)+")";if(this.op=="NOT")return"!("+this.right.toJavaScript(context,tableid,defcols)+")";else if(this.op==null)return"("+this.right.toJavaScript(context,tableid,defcols)+")"};yy.Column=function(params){return yy.extend(this,params)};yy.Column.prototype.toString=function(){var s;if(this.columnid==+this.columnid){s="["+this.columnid+"]"}else{s=this.columnid}if(this.tableid){if(+this.columnid==this.columnid){s=this.tableid+s}else{s=this.tableid+"."+s}if(this.databaseid){s=this.databaseid+"."+s}}return s};yy.Column.prototype.toJavaScript=function(context,tableid,defcols){var s="";if(!this.tableid&&tableid==""&&!defcols){if(this.columnid!="_"){s=context+"['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context}}}else{if(context=="g"){s="g['"+this.nick+"']"}else if(this.tableid){if(this.columnid!="_"){s=context+"['"+this.tableid+"']['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context+"['"+this.tableid+"']"}}}else if(defcols){var tbid=defcols[this.columnid];if(tbid=="-"){throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables')}else if(tbid){if(this.columnid!="_"){s=context+"['"+tbid+"']['"+this.columnid+"']"}else{s=context+"['"+tbid+"']"}}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}else if(tableid==-1){s=context+"['"+this.columnid+"']"}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}return s};yy.AggrValue=function(params){return yy.extend(this,params)};yy.AggrValue.prototype.toString=function(){var s="";if(this.aggregatorid=="REDUCE")s+=L(this.funcid)+"(";else s+=this.aggregatorid+"(";if(this.distinct)s+=K("DISTINCT")+" ";if(this.expression)s+=this.expression.toString();s+=")";if(this.over)s+=" "+this.over.toString();return s};yy.AggrValue.prototype.findAggregator=function(query){var colas=escapeq(this.toString())+":"+query.selectGroup.length;var found=false;if(!found){if(!this.nick){this.nick=colas;var found=false;for(var i=0;i-1)return"number";if(["ARRAY"].indexOf(this.aggregatorid)>-1)return"array";if(["FIRST","LAST"].indexOf(this.aggregatorid)>-1)return this.expression.toType()};yy.AggrValue.prototype.toJavaScript=function(context,tableid,defcols){var colas=this.nick;if(typeof colas=="undefined")colas=this.toString();return"g['"+colas+"']"};yy.OrderExpression=function(params){return yy.extend(this,params)};yy.OrderExpression.prototype.toString=function(){var s=this.expression.toString();if(this.order)s+=" "+this.order.toString();if(this.nocase)s+=" "+K("COLLATE")+" "+K("NOCASE");return s};yy.GroupExpression=function(params){return yy.extend(this,params)};yy.GroupExpression.prototype.toString=function(){return this.type+"("+this.group.toString()+")"};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.FromData=function(params){return yy.extend(this,params)};yy.FromData.prototype.toString=function(){if(this.data)return K("DATA")+"("+(Math.random()*1e16|0)+")";else return"?"};yy.FromData.prototype.toJavaScript=function(){};yy.Select.prototype.exec=function(params,cb){if(this.preparams)params=this.preparams.concat(params);var databaseid=alasql.useid;db=alasql.databases[databaseid];var sql=this.toString();var hh=hash(sql);var statement=this.compile(databaseid);if(!statement)return;statement.sql=sql;statement.dbversion=db.dbversion;if(db.sqlCacheSize>alasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement;var res=alasql.res=statement(params,cb);return res};yy.Select.prototype.Select=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.columns=[];args.forEach(function(arg){if(typeof arg=="string"){self.columns.push(new yy.Column({columnid:arg}))}else if(typeof arg=="function"){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(arg);self.columns.push(new yy.Column({columnid:"*",func:arg,param:pari}))}else{}});return self};yy.Select.prototype.From=function(tableid){var self=this;if(!self.from)self.from=[];if(tableid instanceof Array){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(tableid);self.from.push(new yy.ParamValue({param:pari}))}else if(typeof tableid=="string"){self.from.push(new yy.Table({tableid:tableid}))}else{throw new Error("Unknown arguments in From() function")}return self};yy.Select.prototype.OrderBy=function(){var self=this;var agrs=[];self.order=[];if(arguments.length==0){args=["_"]}else if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}if(args.length>0){args.forEach(function(arg){var expr=new yy.Column({columnid:arg});if(typeof arg=="function"){expr=arg}self.order.push(new yy.OrderExpression({expression:expr,direction:"ASC"}))})}return self};yy.Select.prototype.Top=function(topnum){var self=this; -self.top=new yy.NumValue({value:topnum});return self};yy.Select.prototype.GroupBy=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.group=[];args.forEach(function(arg){var expr=new yy.Column({columnid:arg});self.group.push(expr)});return self};yy.Select.prototype.Where=function(expr){var self=this;if(typeof expr=="function"){self.where=expr}return self};yy.FuncValue=function(params){return yy.extend(this,params)};yy.FuncValue.prototype.toString=function(){var s="";if(alasql.fn[this.funcid])s+=this.funcid;else if(alasql.aggr[this.funcid])s+=this.funcid;else if(alasql.stdlib[this.funcid.toUpperCase()]||alasql.stdfn[this.funcid.toUpperCase()])s+=this.funcid.toUpperCase();s+="(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toString()}).join(",")}s+=")";if(this.as)s+=" AS "+this.as.toString();return s};yy.FuncValue.prototype.findAggregator=function(query){if(this.args&&this.args.length>0){this.args.forEach(function(arg){if(arg.findAggregator)arg.findAggregator(query)})}};yy.FuncValue.prototype.toJavaScript=function(context,tableid,defcols){var s="";var funcid=this.funcid;if(alasql.fn[funcid]){if(this.newid)s+="new ";s+="alasql.fn."+this.funcid+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else if(alasql.stdlib[funcid.toUpperCase()]){if(this.args&&this.args.length>0){s+=alasql.stdlib[funcid.toUpperCase()].apply(this,this.args.map(function(arg){return arg.toJavaScript(context,tableid)}))}else{s+=alasql.stdlib[funcid.toUpperCase()]()}}else if(alasql.stdfn[funcid.toUpperCase()]){if(this.newid)s+="new ";s+="alasql.stdfn."+this.funcid.toUpperCase()+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else{}return s};var stdlib=alasql.stdlib={};var stdfn=alasql.stdfn={};stdlib.ABS=function(a){return"Math.abs("+a+")"};stdlib.CLONEDEEP=function(a){return"alasql.utils.cloneDeep("+a+")"};stdlib.IIF=function(a,b,c){if(arguments.length==3){return"(("+a+")?("+b+"):("+c+"))"}else{throw new Error("Number of arguments of IFF is not equals to 3")}};stdlib.IFNULL=function(a,b){return"("+a+"||"+b+")"};stdlib.INSTR=function(s,p){return"(("+s+").indexOf("+p+")+1)"};stdlib.LEN=stdlib.LENGTH=function(s){return"("+s+'+"").length'};stdlib.LOWER=stdlib.LCASE=function(s){return"("+s+").toLowerCase()"};stdlib.GREATEST=function(){return"Math.max("+Array.prototype.join.call(arguments,",")+")"};stdlib.LEAST=function(){return"Math.min("+Array.prototype.join.call(arguments,",")+")"};stdlib.MID=function(a,b,c){if(arguments.length==2)return"("+a+").substr("+b+"-1)";else if(arguments.length==3)return"("+a+").substr("+b+"-1,"+c+")"};stdlib.NULLIF=function(a,b){return"("+a+"=="+b+"?null:"+a+")"};stdlib.POWER=function(a,b){return"Math.pow("+a+","+b+")"};stdlib.RANDOM=function(r){if(arguments.length==0){return"Math.random()"}else{return"(Math.random()*("+r+")|0)"}};stdlib.ROUND=function(s,d){if(arguments.length==2){return"Math.round("+s+"*Math.pow(10,"+d+"))/Math.pow(10,"+d+")"}else{return"Math.round("+s+")"}};stdlib.SQRT=function(s){return"Math.sqrt("+s+")"};stdlib.TRIM=function(s){return s+".trim()"};stdlib.UPPER=stdlib.UCASE=function(s){return"("+s+").toUpperCase()"};alasql.aggr.GROUP_CONCAT=function(v,s){if(typeof s=="undefined")return v;else return s+","+v};yy.CaseValue=function(params){return yy.extend(this,params)};yy.CaseValue.prototype.toString=function(){var s="CASE ";if(this.expression)s+=this.expression.toString();if(this.whens){s+=this.whens.map(function(w){return" WHEN "+w.when.toString()+" THEN "+w.then.toString()}).join()}s+=" END";return s};yy.CaseValue.prototype.findAggregator=function(query){if(this.expression&&this.expression.findAggregator)this.expression.findAggregator(query);if(this.whens&&this.whens.length>0){this.whens.forEach(function(w){if(w.when.findAggregator)w.when.findAggregator(query);if(w.then.findAggregator)w.then.findAggregator(query)})}};yy.CaseValue.prototype.toJavaScript=function(context,tableid,defcols){var s="(function("+context+",params,alasql){var r;";if(this.expression){s+="v="+this.expression.toJavaScript(context,tableid,defcols)+";";s+=(this.whens||[]).map(function(w){return" if(v=="+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}else{s+=(this.whens||[]).map(function(w){return" if("+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}s+="return r;})("+context+",params,alasql)";return s};yy.Json=function(params){return yy.extend(this,params)};yy.Json.prototype.toString=function(){var s="@";s+=JSONtoString(this.value);s+="";return s};var JSONtoString=alasql.utils.JSONtoString=function(obj){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s=obj;else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoString(b)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoString(obj[k]);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toString){s=obj.toString()}else{throw new Error("1Can not show JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not show JSON object "+JSON.stringify(obj))}return s};function JSONtoJavaScript(obj,context,tableid,defcols){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s="("+obj+")";else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoJavaScript(b,context,tableid,defcols)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoJavaScript(obj[k],context,tableid,defcols);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toJavaScript){s=obj.toJavaScript(context,tableid,defcols)}else{throw new Error("1Can not parse JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not parse JSON object "+JSON.stringify(obj))}return s}yy.Json.prototype.toJavaScript=function(context,tableid,defcols){return JSONtoJavaScript(this.value,context,tableid,defcols)};yy.Convert=function(params){return yy.extend(this,params)};yy.Convert.prototype.toString=function(){var s="CONVERT(";s+=this.dbtypeid;if(typeof this.dbsize!="undefined"){s+="("+this.dbsize;if(this.dbprecision)s+=","+dbprecision;s+=")"}s+=","+this.expression.toString();if(this.style)s+=","+this.style;s+=")";return s};yy.Convert.prototype.toJavaScript=function(context,tableid,defcols){return"alasql.stdfn.CONVERT("+this.expression.toJavaScript(context,tableid,defcols)+',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+",style:"+this.style+"})";throw new Error("There is not such type conversion for "+this.toString())};alasql.stdfn.CONVERT=function(value,args){var val=value;if(args.style){var t;if(/\d{8}/.test(val))t=new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2));else t=new Date(val);if(args.style==1){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==2){val=("0"+t.getYear()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==3){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==4){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getYear()).substr(-2)}else if(args.style==5){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==6){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+("0"+t.getYear()).substr(-2)}else if(args.style==7){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+("0"+t.getYear()).substr(-2)}else if(args.style==8){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==10){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==11){val=("0"+t.getYear()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==12){val=("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else if(args.style==101){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+t.getFullYear()}else if(args.style==102){val=t.getFullYear()+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==103){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+t.getFullYear()}else if(args.style==104){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+t.getFullYear()}else if(args.style==105){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+t.getFullYear()}else if(args.style==106){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+t.getFullYear()}else if(args.style==107){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+t.getFullYear()}else if(args.style==108){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==110){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+t.getFullYear()}else if(args.style==111){val=t.getFullYear()+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==112){val=t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else{throw new Error("The CONVERT style "+args.style+" is not realized yet.")}}if(args.dbtypeid=="Date"){return new Date(val)}else if(args.dbtypeid.toUpperCase()=="DATE"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);return s}else if(args.dbtypeid=="DATETIME"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);s+=" "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2);s+="."+("00"+d.getMilliseconds()).substr(-3);return s}else if(args.dbtypeid.toUpperCase()=="STRING"){return""+val}else if(args.dbtypeid.toUpperCase()=="NUMBER"||args.dbtypeid=="FLOAT"){return+val}else if(args.dbtypeid.toUpperCase()=="MONEY"){var m=+val;return(m|0)+m*100%100/100}else if(args.dbtypeid.toUpperCase()=="BOOLEAN"){return!!val}else if(args.dbtypeid.toUpperCase()=="INT"){return val|0}else if(args.dbtypeid.toUpperCase()=="VARCHAR"||args.dbtypeid=="NVARCHAR"){if(args.dbsize)return(""+val).substr(0,args.dbsize);else return""+val}else if(args.dbtypeid.toUpperCase()=="CHAR"||args.dbtypeid=="NCHAR"){return(val+new Array(args.dbsize+1).join(" ")).substr(0,args.dbsize)}};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.CreateTable=function(params){return yy.extend(this,params)};yy.CreateTable.prototype.toString=function(){var s=K("CREATE");if(this.temporary)s+=" "+K("TEMPORARY");if(this.view)s+=" "+K("VIEW");else s+=" "+K("TABLE");if(this.ifnotexists)s+=" "+K("IF")+" "+K("NOT")+" "+K("EXISTS");s+=" "+this.table.toString();if(this.viewcolumns){s+="("+this.viewcolumns.map(function(vcol){return vcol.toString()}).join(",")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);else{var ss=this.columns.map(function(col){return col.toString()});s+=" ("+NL()+ID()+ss.join(","+NL()+ID())+")"}if(this.view&&this.select){s+=" AS "+this.select.toString()}return s};yy.CreateTable.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.table.databaseid||databaseid];var tableid=this.table.tableid;if(!tableid){throw new Error("Table name is not defined")}var columns=this.columns;var constraints=this.constraints||[];if(this.ifnotexists&&db.tables[tableid])return 0;if(db.tables[tableid]){throw new Error("Can not create table '"+tableid+"', because it already exists in the database '"+db.databaseid+"'")}var table=db.tables[tableid]=new alasql.Table;var ss=[];if(this.columns){this.columns.forEach(function(col){var dbtypeid=col.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();var newcol={columnid:col.columnid,dbtypeid:dbtypeid};if(col.default){ss.push("'"+col.columnid+"':"+col.default.toJavaScript())}table.columns.push(newcol);table.xcolumns[newcol.columnid]=newcol;if(col.primarykey){var pk=table.pk={};pk.columns=[col.columnid];pk.onrightfns="r['"+col.columnid+"']";pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}})}table.defaultfns=ss.join(",");constraints.forEach(function(con){if(con.type=="PRIMARY KEY"){if(table.pk){throw new Error("Primary key already exists")}var pk=table.pk={};pk.columns=con.columns;pk.onrightfns=pk.columns.map(function(columnid){return"r['"+columnid+"']"}).join("+'`'+");pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}});if(this.view&&this.viewcolumns){var self=this;this.viewcolumns.forEach(function(vcol,idx){self.select.columns[idx].as=vcol.columnid})}if(db.engineid){return alasql.engines[db.engineid].createTable(this.table.databaseid||databaseid,tableid,this.ifnotexists,cb)}table.insert=function(r){if(this.pk){var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]!="undefined"){throw new Error("Cannot insert record, because it already exists in primary key")}else{table.data.push(r);this.indices[pk.hh][addr]=r}}else{table.data.push(r)}};table.delete=function(i){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined}}};table.deleteall=function(){this.data.length=0;if(this.pk){this.indices[this.pk.hh]={}}};table.update=function(assignfn,i,params){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r,params);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined;assignfn(r,params,alasql);var newaddr=pk.onrightfn(r);if(typeof this.indices[pk.hh][newaddr]!="undefined"){throw new Error("Record already exists")}else{this.indices[pk.hh][newaddr]=r}}}else{assignfn(this.data[i],params,alasql)}};if(this.view&&this.select){table.view=true;table.select=this.select.compile(this.table.databaseid||databaseid)}if(cb)cb(1);return 1};alasql.fn.Date=Object;alasql.fn.Date=Date;alasql.fn.Number=Number;alasql.fn.String=String;alasql.fn.Boolean=Boolean;stdfn.EXTEND=alasql.utils.extend;stdfn.CHAR=String.fromCharCode.bind(String);stdfn.ASCII=function(a){return a.charCodeAt(0)};stdfn.COALESCE=function(){for(var i=0;i0){for(var i=0,ilen=table.data.length;i0){for(var i=0,ilen=table.data.length;i=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[table.xcolumns[col.columnid].dbtypeid]){q+="(new "+table.xcolumns[col.columnid].dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{if(values instanceof Array&&table.columns&&table.columns.length>0){table.columns.forEach(function(col,idx){var q="'"+col.columnid+"':";if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid)>=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[col.dbtypeid]){q+="(new "+col.dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{sw=JSONtoJavaScript(values)}}if(db.tables[tableid].defaultfns)ss.unshift(db.tables[tableid].defaultfns);if(sw){s+="a="+sw+";"}else{s+="a={"+ss.join(",")+"};"}if(db.tables[tableid].insert){s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].insert(a);"}else{s+="aa.push(a);"}});s33=s3+s;if(db.tables[tableid].insert){}else{s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data="+"alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data.concat(aa);"}s+="return "+self.values.length;var insertfn=new Function("db, params, alasql",s3+s)}else if(this.select){selectfn=this.select.compile(databaseid);if(db.engineid&&alasql.engines[db.engineid].intoTable){var statement=function(params,cb){var aa=selectfn(params);var res=alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null,cb);return res};return statement}else{var insertfn=function(db,params,alasql){var res=selectfn(params);if(db.tables[tableid].insert){for(var i=0,ilen=res.length;i0){s+="("+this.args.map(function(arg){return arg.toString()}).join(", ")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.CreateDatabase.prototype.execute=function(databaseid,params,cb){var args;if(this.args&&this.args.length>0){args=this.args.map(function(arg){return new Function("params","return "+arg.toJavaScript())(params)})}if(this.engineid){var res=alasql.engines[this.engineid].createDatabase(this.databaseid,this.args,this.ifnotexists,this.as,cb);return res}else{var dbid=this.databaseid;if(alasql.databases[dbid]){throw new Error("Database '"+dbid+"' already exists")}var a=new alasql.Database(dbid);var res=1;if(cb)return cb(res);return res}};yy.AttachDatabase=function(params){return yy.extend(this,params)};yy.AttachDatabase.prototype.toString=function(){var s=K("ATTACH");if(this.engineid)s+=" "+L(this.engineid);s+=" "+K("DATABASE")+" "+L(this.databaseid);if(args){s+="(";if(args.length>0){s+=args.map(function(arg){return arg.toString()}).join(", ")}s+=")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.AttachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.engines[this.engineid]){throw new Error('Engine "'+this.engineid+'" is not defined.')}var res=alasql.engines[this.engineid].attachDatabase(this.databaseid,this.as,this.args,params,cb);return res};yy.DetachDatabase=function(params){return yy.extend(this,params)};yy.DetachDatabase.prototype.toString=function(){var s=K("DETACH");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DetachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.databases[this.databaseid].engineid){throw new Error('Cannot detach database "'+this.engineid+'", because it was not attached.')}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.UseDatabase=function(params){return yy.extend(this,params)};yy.UseDatabase.prototype.toString=function(){return K("USE")+" "+K("DATABASE")+" "+L(this.databaseid)};yy.UseDatabase.prototype.execute=function(databaseid,params,cb){var dbid=this.databaseid;if(!alasql.databases[dbid]){throw new Error("Database '"+dbid+"' does not exist")}alasql.use(dbid);var res=1;if(cb)cb(res);return res};yy.DropDatabase=function(params){return yy.extend(this,params)};yy.DropDatabase.prototype.toString=function(){var s=K("DROP");if(this.ifexists)s+=" "+K("IF")+" "+K("EXISTS");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DropDatabase.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].dropDatabase(this.databaseid,this.ifexists,cb)}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{if(alasql.databases[dbid].engineid){throw new Error("Cannot drop database '"+dbid+"', because it is attached. Detach it.")}delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.Declare=function(params){return yy.extend(this,params)};yy.Declare.prototype.toString=function(){var s=K("DECLARE")+" ";if(this.declares&&this.declares.length>0){s=this.declares.map(function(declare){var s="";s+="@"+L(declare.variable)+" ";s+=declare.dbtypeid;if(this.dbsize)s+="("+N(this.dbsize);if(this.dbprecision)s+=","+N(this.dbprecision);s+=")";if(declare.expression)s+=" = "+declare.expression.toString();return s}).join(",")}return s};yy.Declare.prototype.execute=function(databaseid,params,cb){var res=1;if(this.declares&&this.declares.length>0){this.declares.map(function(declare){var dbtypeid=declare.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();alasql.declares[declare.variable]={dbtypeid:dbtypeid,dbsize:declare.dbsize,dbprecision:declare.dbprecision};if(declare.expression){alasql.vars[declare.variable]=new Function("params,alasql","return "+declare.expression.toJavaScript("","",null))(params,alasql);if(alasql.declares[declare.variable]){alasql.vars[declare.variable]=alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable])}}})}if(cb)res=cb(res);return res};yy.ShowDatabases=function(params){return yy.extend(this,params)};yy.ShowDatabases.prototype.toString=function(){var s=K("SHOW")+" "+K("DATABASES");if(this.like)s+="LIKE "+this.like.toString();return s};yy.ShowDatabases.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].showDatabases(this.like,cb)}else{var self=this;var res=[];for(dbid in alasql.databases){res.push({databaseid:dbid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.databaseid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res}};yy.ShowTables=function(params){return yy.extend(this,params)};yy.ShowTables.prototype.toString=function(){var s=K("SHOW")+" "+K("TABLES");if(this.databaseid)s+=" FROM "+this.databaseid;if(this.like)s+=" "+K("LIKE")+" "+this.like.toString();return s};yy.ShowTables.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.databaseid||databaseid];var self=this;var res=[];for(tableid in db.tables){res.push({tableid:tableid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.tableid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res};yy.ShowColumns=function(params){return yy.extend(this,params)};yy.ShowColumns.prototype.toString=function(){var s=K("SHOW")+" "+K("COLUMNS");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowColumns.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table&&table.columns){var res=table.columns.map(function(col){return{columnid:col.columnid,dbtypeid:col.dbtypeid,dbsize:col.dbsize}});return res}else{return[]}};yy.ShowIndex=function(params){return yy.extend(this,params)};yy.ShowIndex.prototype.toString=function(){var s=K("SHOW")+" "+K("INDEX");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowIndex.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;var res=[];if(table&&table.indices){for(var ind in table.indices){res.push({hh:ind,len:Object.keys(table.indices[ind]).length})}}return res};yy.ShowCreateTable=function(params){return yy.extend(this,params)};yy.ShowCreateTable.prototype.toString=function(){var s=K("SHOW")+" "+K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid);if(this.databaseid)s+=" "+K("FROM")+" "+L(this.databaseid);return s};yy.ShowCreateTable.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table){var s=K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid)+" (";var ss=[];if(table.columns){table.columns.forEach(function(col){var a=L(col.columnid)+" "+K(col.dbtypeid);if(col.dbsize)a+="("+N(col.dbsize)+")";if(col.primarykey)a+=" "+K("PRIMARY")+" "+K("KEY");ss.push(a)});s+=ss.join(", ")}s+=")";return s}else{throw new Error('There is no such table "'+this.table.tableid+'"')}};yy.SetVariable=function(params){return yy.extend(this,params)};yy.SetVariable.prototype.toString=function(){var s=K("SET")+" ";if(typeof this.value!="undefined")s+=K(this.variable.toUpperCase())+" "+(this.value?"ON":"OFF");if(this.expression)s+="@"+L(this.variable)+" = "+this.expression.toString();return s};yy.SetVariable.prototype.execute=function(databaseid,params,cb){if(typeof this.value!="undefined"){var val=this.value;if(val=="ON")val=true;else if(val=="OFF")val=false;alasql.options[this.variable]=val}else if(this.expression){var res=new Function("params,alasql","return "+this.expression.toJavaScript("","",null))(params,alasql);if(alasql.declares[this.variable]){res=alasql.stdfn.CONVERT(res,alasql.declares[this.variable])}if(this.props&&this.props.length>0){var fs="alasql.vars['"+this.variable+"']";fs+=this.props.map(function(prop){if(typeof prop=="string"){return"['"+prop+"']"}else if(typeof prop=="number"){return"["+prop+"]"}else{return"["+prop.toJavaScript()+"]"}}).join();new Function("value,alasql",fs+"=value")(res,alasql)}else{alasql.vars[this.variable]=res}}var res=1;if(cb)res=cb(res);return res};alasql.test=function(name,times,fn){if(arguments.length==0){alasql.log(alasql.con.results);return}else if(arguments.length==1){var tm=Date.now();fn();alasql.con.log(Date.now()-tm);return}if(arguments.length==2){fn=times;times=1}var tm=Date.now();for(var i=0;i",sql);if(res instanceof Array){if(console.table){console.table(res)}else{console.log(JSONtoString(res))}}else{console.log(JSONtoString(res))}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}var s="";if(typeof sql=="string"&&alasql.options.logprompt){s+="
"+alasql.pretty(sql)+"
"}if(res instanceof Array){if(res.length==0){s+="

[ ]

"}else if(typeof res[0]!="object"||res[0]instanceof Array){for(var i=0,ilen=res.length;i"+loghtml(res[i])+"

"}}else{s+=loghtml(res)}}else{s+=loghtml(res)}el.innerHTML+=s}};alasql.clear=function(){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.clear){console.clear()}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML=""}};alasql.write=function(s){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.log){console.log(s)}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML+=s}};function loghtml(res){var s="";if(typeof res=="undefined"){s+="undefined"}else if(res instanceof Array){s+="";s+="";var cols=[];for(colid in res[0]){cols.push(colid)}s+="
#";cols.forEach(function(colid){s+=""+colid});for(var i=0,ilen=res.length;i"+(i+1);cols.forEach(function(colid){s+=" ";if(+res[i][colid]==+res[i][colid]){s+='
';if(typeof res[i][colid]=="undefined")s+="NULL";else s+=res[i][colid];s+="
"}else{if(typeof res[i][colid]=="undefined"){s+="NULL"}else if(typeof res[i][colid]=="string"){s+=res[i][colid]}else s+=JSONtoString(res[i][colid])}})}s+="
"}else{s+="

"+JSONtoString(res)+"

"}return s}function scrollTo(element,to,duration){if(duration<=0)return;var difference=to-element.scrollTop;var perTick=difference/duration*10;setTimeout(function(){if(element.scrollTop==to)return;element.scrollTop=element.scrollTop+perTick;scrollTo(element,to,duration-10)},10)}alasql.prompt=function(el,useidel,firstsql){if(typeof exports=="object"){throw new Error("The functionality of prompt is not realized for Node.js")}var prompti=0;if(typeof el=="string")el=document.getElementById(el);if(typeof useidel=="string")useidel=document.getElementById(useidel);useidel.textContent=alasql.useid;if(firstsql){alasql.prompthistory.push(firstsql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(firstsql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+sql+"

");alasql.write('

'+err+"

")}}var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500);el.onkeydown=function(event){if(event.which==13){var sql=el.value;var olduseid=alasql.useid;el.value="";alasql.prompthistory.push(sql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(sql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+alasql.pretty(sql,false)+"

");alasql.write('

'+err+"

")}el.focus();useidel.textContent=alasql.useid;var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500)}else if(event.which==38){prompti--;if(prompti<0)prompti=0;if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}else if(event.which==40){prompti++;if(prompti>=alasql.prompthistory.length){prompti=alasql.prompthistory.length;el.value=""}else if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}}};yy.BeginTransaction=function(params){return yy.extend(this,params)};yy.BeginTransaction.prototype.toString=function(){return K("BEGIN")+" "+K("TRANSACTION")};yy.BeginTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].begin(databaseid,cb)}else{}if(cb)cb(res);return res};yy.CommitTransaction=function(params){return yy.extend(this,params)};yy.CommitTransaction.prototype.toString=function(){return K("COMMIT")+" "+K("TRANSACTION")};yy.CommitTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].commit(databaseid,cb)}else{}if(cb)cb(res);return res};yy.RollbackTransaction=function(params){return yy.extend(this,params)};yy.RollbackTransaction.prototype.toString=function(){return K("ROLLBACK")+" "+K("TRANSACTION")};yy.RollbackTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[databaseid].engineid].rollback(databaseid,cb)}else{}if(cb)cb(res);return res};alasql.into.SQL=function(filename,opts,data,columns,cb){var res;if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};alasql.utils.extend(opt,opts);if(typeof opt.tableid=="undefined"){throw new Error("Table for INSERT TO is not defined.")}var s="";if(columns.length==0){if(typeof data[0]=="object"){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}else{}}for(var i=0,ilen=data.length;i0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var res=data.length;var s="";if(data.length>0){var key=columns[0].columnid;s+=data.map(function(d){return d[key]}).join("\n")}res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.TAB=alasql.into.TSV=function(filename,opts,data,columns,cb){var opt={};alasql.utils.extend(opt,opts);opt.separator=" ";return alasql.into.CSV(filename,opt,data,columns,cb)};alasql.into.CSV=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};opt.separator=",";opt.quote='"';alasql.utils.extend(opt,opts);var res=data.length;var s="";if(opt.headers){s+=columns.map(function(col){return col.columnid}).join(opt.separator)+"\n"}data.forEach(function(d,idx){s+=columns.map(function(col){var s=d[col.columnid];s=(s+"").replace(new RegExp("\\"+opt.quote,"g"),'""');if((s+"").indexOf(opt.separator)>-1||(s+"").indexOf(opt.quote)>-1)s=opt.quote+s+opt.quote;return s}).join(opt.separator)+"\n"});res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.XLSX=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof exports=="object"){var XLSX=require("xlsx")}else{var XLSX=window.XLSX}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={sheetid:"Sheet1",headers:true};alasql.utils.extend(opt,opts);var res=1;var wb={SheetNames:[],Sheets:{}};if(opt.sourcefilename){alasql.utils.loadBinaryFile(opt.sourcefilename,!!cb,function(data){wb=XLSX.read(data,{type:"binary"});res=doExport()})}else{res=doExport()}function doExport(){var cells={};if(wb.SheetNames.indexOf(opt.sheetid)>-1){cells=wb.Sheets[opt.sheetid]}else{wb.SheetNames.push(opt.sheetid);wb.Sheets[opt.sheetid]={};cells=wb.Sheets[opt.sheetid]}var range="A1";if(opt.range)range=opt.range;var col0=alasql.utils.xlscn(range.match(/[A-Z]+/)[0]);var row0=+range.match(/[0-9]+/)[0]-1;if(wb.Sheets[opt.sheetid]["!ref"]){var rangem=wb.Sheets[opt.sheetid]["!ref"];var colm=alasql.utils.xlscn(rangem.match(/[A-Z]+/)[0]);var rowm=+rangem.match(/[0-9]+/)[0]-1}else{var colm=1,rowm=1}var colmax=Math.max(col0+columns.length,colm);var rowmax=Math.max(row0+data.length+2,rowm);var i=row0+1;wb.Sheets[opt.sheetid]["!ref"]="A1:"+alasql.utils.xlsnc(colmax)+rowmax;if(opt.headers){columns.forEach(function(col,idx){cells[alasql.utils.xlsnc(col0+idx)+""+i]={v:col.columnid}});i++}for(var j=0;j ";s+="";s+="";s+="";if(typeof sheet.caption!="undefined"){var caption=sheet.caption;if(typeof caption=="string"){caption={title:caption}}s+=""}if(typeof sheet.columns!="undefined"){columns=sheet.columns}else{if(columns.length==0&&data.length>0){if(typeof data[0]=="object"){if(data[0]instanceof Array){columns=data[0].map(function(d,columnidx){return{columnid:columnidx}})}else{columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}}}}columns.forEach(function(column,columnidx){if(typeof sheet.column!="undefined"){extend(column,sheet.column)}if(typeof column.width=="undefined"){if(sheet.column&&sheet.column.width!="undefined"){column.width=sheet.column.width}else{column.width="120px"}}if(typeof column.width=="number")column.width=column.width+"px";if(typeof column.columnid=="undefined")column.columnid=columnidx;if(typeof column.title=="undefined")column.title=""+column.columnid;if(sheet.headers&&sheet.headers instanceof Array)column.title=sheet.headers[idx]});s+="";columns.forEach(function(column){s+=''});s+="";if(sheet.headers){s+="";s+="";columns.forEach(function(column,columnidx){s+="";s+=""}s+="";if(data&&data.length>0){data.forEach(function(row,rowidx){if(rowidx>sheet.limit)return;s+=""});s+=""})}s+="";s+="
"});s+="
";s+="";s+="";var res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res;function style(a){var s=' style="';if(a&&typeof a.style!="undefined"){s+=a.style+";"}s+='" ';return s}};alasql.from.TABLETOP=function(key,opts,cb,idx,query){var res=[];var opt={headers:true,simpleSheet:true,key:key};alasql.utils.extend(opt,opts);opt.callback=function(data){res=data;if(cb)res=cb(res,idx,query)};Tabletop.init(opt);return res};alasql.from.HTML=function(selector,opts,cb,idx,query){var opt={};alasql.utils.extend(opt,opts);var sel=document.querySelector(selector);if(!sel&&sel.tagName!="TABLE"){throw new Error("Selected HTML element is not a TABLE")}var res=[];var headers=opt.headers;if(headers&&!(headers instanceof Array)){headers=[];var ths=sel.querySelector("thead tr").children;for(var i=0;i=N)return EOF;if(eol)return eol=false,EOL;var j=I;if(text.charCodeAt(j)===quoteCode){var i=j;while(i++http://github/agershun/alasq for more information'}];yy.Help.prototype.execute=function(databaseid,params,cb){var ss=[];if(!this.subject){ss=helpdocs}else{ss.push('See also http://github/agershun/alasq for more information')}if(cb)ss=cb(ss);return ss};yy.Print=function(params){return yy.extend(this,params)};yy.Print.prototype.toString=function(){var s=K("PRINT");if(this.statement)s+=" "+this.statement.toString();return s};yy.Print.prototype.execute=function(databaseid,params,cb){var res,s;if(this.statement){s=this.statement.execute(databaseid,params)}else{s=""}s=JSONtoString(s);console.log(s);if(cb)res=cb(res);return res};yy.Source=function(params){return yy.extend(this,params)};yy.Source.prototype.toString=function(){var s=K("SOURCE");if(this.url)s+=" "+S("'"+this.url+"'");return s};yy.Source.prototype.execute=function(databaseid,params,cb){var res;loadFile(this.url,!!cb,function(data){res=alasql(data);if(cb)res=cb(res);return res},function(err){throw err});return res};yy.Require=function(params){return yy.extend(this,params)};yy.Require.prototype.toString=function(){var s=K("REQUIRE");if(this.paths&&this.paths.length>0){s+=this.paths.map(function(path){return path.toString()}).join(",")}return s};yy.Require.prototype.execute=function(databaseid,params,cb){var self=this;var res=0;var ss="";if(this.paths.length>0){this.paths.forEach(function(path){loadFile(path.value,!!cb,function(data){res++;ss+=data;if(res0){res=res.filter(function(d){return d.databaseid.match(relike)})}}if(cb)cb(res);return res};LS.createTable=function(databaseid,tableid,ifnotexists,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var tb=LS.get(lsdbid+"."+tableid);var res=1;if(tb&&!ifnotexists){throw new Error('Table "'+tableid+'" alsready exists in localStorage database "'+lsdbid+'"')}var lsdb=LS.get(lsdbid);var table=alasql.databases[databaseid].tables[tableid];lsdb.tables[tableid]={columns:table.columns};LS.set(lsdbid,lsdb);LS.set(lsdbid+"."+tableid,[]);if(cb)cb(res);return res};LS.dropTable=function(databaseid,tableid,ifexists,cb){var res=1;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(!ifexists&&!lsdb.tables[tableid]){throw new Error('Cannot drop table "'+tableid+'" in localStorage, because it does not exist')}delete lsdb.tables[tableid];LS.set(lsdbid,lsdb);localStorage.removeItem(lsdbid+"."+tableid);if(cb)cb(res);return res};LS.fromTable=function(databaseid,tableid,cb,idx,query){var lsdbid=alasql.databases[databaseid].lsdbid;var res=LS.get(lsdbid+"."+tableid);if(cb)res=cb(res,idx,query);return res};LS.intoTable=function(databaseid,tableid,value,columns,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var res=value.length;var tb=LS.get(lsdbid+"."+tableid);if(!tb)tb=[];tb=tb.concat(value);LS.set(lsdbid+"."+tableid,tb);if(cb)cb(res);return res};LS.loadTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;db.tables[tableid].data=LS.get(lsdbid+"."+tableid)};LS.saveTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;LS.set(lsdbid+"."+tableid,db.tables[tableid].data);db.tables[tableid].data=null};LS.commit=function(databaseid,cb){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb={databaseid:lsdbid,tables:{}};if(db.tables){for(var tbid in db.tables){lsdb.tables[tbid]={columns:db.tables[tbid].columns};LS.set(lsdbid+"."+tbid,db.tables[tbid].data)}}LS.set(lsdbid,lsdb);return 1};LS.begin=LS.commit;LS.rollback=function(databaseid,cb){var db=alasql.databases[databaseid];db.dbversion++;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(lsdb.tables){for(var tbid in lsdb.tables){var tb=new alasql.Table({columns:db.tables[tbid].columns});extend(tb,lsdb.tables[tbid]);lsdb.tables[tbid]=tb;if(!alasql.options.autocommit){lsdb.tables[tbid].data=LS.get(db.lsdbid+"."+tbid)}lsdb.tables[tbid].indexColumns()}}delete alasql.databases[databaseid];alasql.databases[databaseid]=new alasql.Database(databaseid);extend(alasql.databases[databaseid],lsdb);alasql.databases[databaseid].databaseid=databaseid;alasql.databases[databaseid].engineid="LOCALSTORAGE"};var SQLITE=alasql.engines.SQLITE=function(){};SQLITE.createDatabase=function(wdbid,args,ifnotexists,dbid,cb){throw new Error("Connot create SQLITE database in memory. Attach it.")};SQLITE.dropDatabase=function(databaseid){throw new Error("This is impossible to drop SQLite database. Detach it.")};SQLITE.attachDatabase=function(sqldbid,dbid,args,params,cb){var res=1;if(alasql.databases[dbid]){throw new Error('Unable to attach database as "'+dbid+'" because it already exists')}if(args[0]&&args[0]instanceof yy.StringValue||args[0]instanceof yy.ParamValue){if(args[0]instanceof yy.StringValue){var value=args[0].value}else if(args[0]instanceof yy.ParamValue){var value=params[args[0].param]}alasql.utils.loadBinaryFile(value,true,function(data){var db=new alasql.Database(dbid||sqldbid);db.engineid="SQLITE";db.sqldbid=sqldbid;var sqldb=db.sqldb=new SQL.Database(data);db.tables=[];var tables=sqldb.exec("SELECT * FROM sqlite_master WHERE type='table'")[0].values;tables.forEach(function(tbl){db.tables[tbl[1]]={};var columns=db.tables[tbl[1]].columns=[];var ast=alasql.parse(tbl[4]);var coldefs=ast.statements[0].columns;if(coldefs&&coldefs.length>0){coldefs.forEach(function(cd){columns.push(cd)})}});cb(1)},function(err){throw new Error('Cannot open SQLite database file "'+args[0].value+'"')});return res}else{throw new Error("Cannot attach SQLite database without a file")}return res};SQLITE.fromTable=function(databaseid,tableid,cb,idx,query){var data=alasql.databases[databaseid].sqldb.exec("SELECT * FROM "+tableid);var columns=query.sources[idx].columns=[];if(data[0].columns.length>0){data[0].columns.forEach(function(columnid){columns.push({columnid:columnid})})}var res=[];if(data[0].values.length>0){data[0].values.forEach(function(d){var r={};columns.forEach(function(col,idx){r[col.columnid]=d[idx]});res.push(r)})}if(cb)cb(res,idx,query)};SQLITE.intoTable=function(databaseid,tableid,value,columns,cb){var sqldb=alasql.databases[databaseid].sqldb;for(var i=0,ilen=value.length;i1){var sql="REQUIRE "+paths.map(function(p){return'"'+p+'"'}).join(",");alasql(sql,[],cb)}}else if(path===false){delete alasql.webworker;return}}} \ No newline at end of file +(function(root,factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}else{root.alasql=factory()}})(this,function(){var alasql=function(sql,params,cb,scope){if(typeof importScripts!="function"&&alasql.webworker){var id=alasql.lastid++;alasql.buffer[id]=cb;alasql.webworker.postMessage({id:id,sql:sql,params:params})}else{if(arguments.length==0){return new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]})}else if(arguments.length==1&&typeof sql=="object"&&sql instanceof Array){var select=new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]});select.preparams=[sql];return select}else{if(typeof sql=="string"&&sql[0]=="#"&&typeof document=="object"){sql=document.querySelector(sql).textContent}else if(typeof sql=="object"&&sql instanceof HTMElement){sql=sql.textContent}else if(typeof sql=="function"){sql=sql.toString().slice(14,-3)}return alasql.exec(sql,params,cb,scope)}}};alasql.version="0.0.48";var parser=function(){var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[253,309],$V81=[1,152],$V91=[4,5],$Va1=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Vb1=[1,168],$Vc1=[1,176],$Vd1=[1,175],$Ve1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vf1=[1,207],$Vg1=[1,200],$Vh1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vi1=[2,74],$Vj1=[1,221],$Vk1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vl1=[1,237],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,236],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,251],$VE1=[1,253],$VF1=[1,254],$VG1=[1,256],$VH1=[1,255],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[1,260],$VM1=[2,198],$VN1=[1,264],$VO1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VP1=[2,256],$VQ1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VR1=[1,272],$VS1=[1,282],$VT1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VU1=[1,298],$VV1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,101,103,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,259,260,261,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VW1=[1,305],$VX1=[1,306],$VY1=[2,369],$VZ1=[1,311],$V_1=[8,9,11,61,202,206],$V$1=[2,421],$V02=[1,322],$V12=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V22=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32=[2,111],$V42=[1,350],$V52=[61,80],$V62=[8,9,11,61,65,192,202,206,229,247,260,275,276,279,280,292],$V72=[79,236,237],$V82=[1,415],$V92=[1,421],$Va2=[1,422],$Vb2=[1,432],$Vc2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vd2=[2,271],$Ve2=[1,439],$Vf2=[202,204,206],$Vg2=[61,323],$Vh2=[61,321,323],$Vi2=[1,446],$Vj2=[61,321],$Vk2=[4,5,96,191],$Vl2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vm2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vn2=[1,514],$Vo2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vp2=[2,181],$Vq2=[1,516],$Vr2=[1,517],$Vs2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vy2=[1,539],$Vz2=[61,65],$VA2=[2,196],$VB2=[1,578],$VC2=[8,9,11,65,135,136,137,139,145,202,206],$VD2=[1,589],$VE2=[1,593],$VF2=[1,594],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,603],$VO2=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$VP2=[1,608],$VQ2=[1,619],$VR2=[8,9,11,61,124,202,204,206,356],$VS2=[1,627],$VT2=[1,626],$VU2=[2,234],$VV2=[1,648],$VW2=[2,438],$VX2=[1,669],$VY2=[1,678],$VZ2=[8,9,11,61,202,204,206,356],$V_2=[1,681],$V$2=[8,9,11,65,135,136,137,145,202,206],$V03=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V13=[1,695],$V23=[1,697],$V33=[4,5,64,193,195,196,197,198],$V43=[8,9,11,202,204,206,356],$V53=[214,219],$V63=[1,738],$V73=[8,9,11,61,65,202,206],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,775],$Va3=[1,776],$Vb3=[1,777],$Vc3=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,808],$Ve3=[1,821],$Vf3=[1,822],$Vg3=[1,820],$Vh3=[1,818],$Vi3=[1,824],$Vj3=[1,815],$Vk3=[1,816],$Vl3=[1,817],$Vm3=[1,819],$Vn3=[1,828],$Vo3=[8,9,11,61,65,135,136,137,145,202,206],$Vp3=[8,9,11,65,202,206],$Vq3=[1,845],$Vr3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vs3=[1,862],$Vt3=[1,861],$Vu3=[1,891],$Vv3=[1,892],$Vw3=[1,893],$Vx3=[1,894],$Vy3=[78,86,275,276,277,279],$Vz3=[2,381],$VA3=[1,899],$VB3=[1,925],$VC3=[8,9,11,202,206,247,259,260,261],$VD3=[1,1020],$VE3=[1,1030];var parser={trace:function trace(){},yy:{},symbols_:{error:2,Literal:3,LITERAL:4,BRALITERAL:5,main:6,Statements:7,EOF:8,SEMICOLON:9,AStatement:10,GO:11,ExplainStatement:12,EXPLAIN:13,QUERY:14,PLAN:15,Statement:16,If:17,AlterTable:18,AttachDatabase:19,CreateDatabase:20,CreateIndex:21,CreateTable:22,CreateView:23,Declare:24,Delete:25,DetachDatabase:26,DropDatabase:27,DropIndex:28,DropTable:29,DropView:30,Insert:31,RenameTable:32,Select:33,Merge:34,WithSelect:35,ShowCreateTable:36,ShowColumns:37,ShowDatabases:38,ShowIndex:39,ShowTables:40,TruncateTable:41,BeginTransaction:42,CommitTransaction:43,RollbackTransaction:44,EndTransaction:45,UseDatabase:46,Update:47,Help:48,JavaScript:49,Source:50,Assert:51,While:52,Continue:53,Break:54,BeginEnd:55,Print:56,Require:57,SetVariable:58,WITH:59,WithTablesList:60,COMMA:61,WithTable:62,AS:63,LPAR:64,RPAR:65,SelectClause:66,IntoClause:67,FromClause:68,WhereClause:69,GroupClause:70,OrderClause:71,LimitClause:72,UnionClause:73,SelectModifier:74,DISTINCT:75,TopClause:76,ResultColumns:77,UNIQUE:78,ALL:79,SELECT:80,VALUE:81,ROW:82,COLUMN:83,MATRIX:84,TEXTSTRING:85,INDEX:86,RECORDSET:87,TOP:88,NumValue:89,PERCENT:90,INTO:91,Table:92,FuncValue:93,ParamValue:94,VarValue:95,STRING:96,FROM:97,FromTablesList:98,JoinTablesList:99,ApplyClause:100,CROSS:101,APPLY:102,OUTER:103,FromTable:104,FromString:105,DOT:106,JoinTable:107,JoinMode:108,JoinTableAs:109,OnClause:110,JoinModeMode:111,NATURAL:112,JOIN:113,INNER:114,LEFT:115,RIGHT:116,FULL:117,SEMI:118,ANTI:119,ON:120,Expression:121,USING:122,ColumnsList:123,WHERE:124,GROUP:125,BY:126,GroupExpressionsList:127,HavingClause:128,GroupExpression:129,GROUPING:130,SETS:131,ROLLUP:132,CUBE:133,HAVING:134,UNION:135,EXCEPT:136,INTERSECT:137,CORRESPONDING:138,ORDER:139,OrderExpressionsList:140,OrderExpression:141,DIRECTION:142,COLLATE:143,NOCASE:144,LIMIT:145,OffsetClause:146,OFFSET:147,ResultColumn:148,TDTH:149,TD:150,TH:151,NUMBER:152,StringValue:153,Star:154,STAR:155,Column:156,AggrValue:157,Op:158,LogicValue:159,NullValue:160,ExistsValue:161,CaseValue:162,CastClause:163,Json:164,NewClause:165,JAVASCRIPT:166,NEW:167,CAST:168,ColumnType:169,CONVERT:170,PrimitiveValue:171,CURRENT_TIMESTAMP:172,Aggregator:173,OverClause:174,OVER:175,OverPartitionClause:176,OverOrderByClause:177,PARTITION:178,SUM:179,COUNT:180,MIN:181,MAX:182,AVG:183,FIRST:184,LAST:185,AGGR:186,ARRAY:187,ExprList:188,TRUE:189,FALSE:190,NSTRING:191,NULL:192,AT:193,EXISTS:194,DOLLAR:195,COLON:196,QUESTION:197,BRAQUESTION:198,CASE:199,WhensList:200,ElseClause:201,END:202,When:203,WHEN:204,THEN:205,ELSE:206,LIKE:207,NOT_LIKE:208,PLUS:209,MINUS:210,SLASH:211,MODULO:212,CARET:213,ARROW:214,GT:215,GE:216,LT:217,LE:218,EQ:219,EQEQ:220,EQEQEQ:221,NE:222,NEEQEQ:223,NEEQEQEQ:224,CondOp:225,AllSome:226,AND:227,OR:228,NOT:229,IN:230,ColFunc:231,BETWEEN:232,NOT_BETWEEN:233,IS:234,DOUBLECOLON:235,SOME:236,ANY:237,UPDATE:238,SET:239,SetColumnsList:240,SetColumn:241,DELETE:242,INSERT:243,Into:244,VALUES:245,ValuesListsList:246,DEFAULT:247,ValuesList:248,Value:249,DateValue:250,CREATE:251,TemporaryClause:252,TABLE:253,IfNotExists:254,CreateTableDefClause:255,CreateTableOptionsClause:256,CreateTableOptions:257,CreateTableOption:258,ENGINE:259,AUTO_INCREMENT:260,CHARSET:261,TEMPORARY:262,TEMP:263,IF:264,ColumnDefsList:265,ConstraintsList:266,Constraint:267,ConstraintName:268,PrimaryKey:269,ForeignKey:270,UniqueKey:271,IndexKey:272,Check:273,CONSTRAINT:274,CHECK:275,PRIMARY:276,KEY:277,ColsList:278,FOREIGN:279,REFERENCES:280,OnForeignKeyClause:281,OnDeleteClause:282,OnUpdateClause:283,NO:284,ACTION:285,ColumnDef:286,ColumnConstraintsClause:287,ColumnConstraints:288,ENUM:289,ColumnConstraintsList:290,ColumnConstraint:291,IDENTITY:292,DROP:293,IfExists:294,ALTER:295,RENAME:296,TO:297,ADD:298,MODIFY:299,ATTACH:300,DATABASE:301,DETACH:302,AsClause:303,USE:304,SHOW:305,DATABASES:306,TABLES:307,COLUMNS:308,VIEW:309,HELP:310,ExpressionStatement:311,SOURCE:312,ASSERT:313,JsonObject:314,ATLBRA:315,JsonArray:316,JsonValue:317,JsonPrimitiveValue:318,LCUR:319,JsonPropertiesList:320,RCUR:321,JsonElementsList:322,RBRA:323,JsonProperty:324,OnOff:325,SetPropsList:326,SetProp:327,OFF:328,COMMIT:329,TRANSACTION:330,ROLLBACK:331,BEGIN:332,ElseStatement:333,WHILE:334,CONTINUE:335,BREAK:336,PRINT:337,REQUIRE:338,StringValuesList:339,DECLARE:340,DeclaresList:341,DeclareItem:342,TRUNCATE:343,MERGE:344,MergeInto:345,MergeUsing:346,MergeOn:347,MergeMatchedList:348,OutputClause:349,MergeMatched:350,MergeNotMatched:351,MATCHED:352,MergeMatchedAction:353,MergeNotMatchedAction:354,TARGET:355,OUTPUT:356,$accept:0,$end:1},terminals_:{2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",101:"CROSS",102:"APPLY",103:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",253:"TABLE",259:"ENGINE",260:"AUTO_INCREMENT",261:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"},productions_:[0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,5],[68,0],[100,6],[100,7],[100,6],[100,7],[98,1],[98,3],[104,4],[104,5],[104,3],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[105,1],[92,3],[92,1],[99,2],[99,2],[99,1],[99,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,9],[22,5],[256,0],[256,1],[257,2],[257,1],[258,1],[258,3],[258,3],[258,3],[252,0],[252,1],[252,1],[254,0],[254,3],[255,3],[255,1],[255,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,10],[23,7],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]],performAction:function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:if(yy.casesensitive)this.$=$$[$0];else this.$=$$[$0].toLowerCase();break;case 2:this.$=doubleq($$[$0].substr(1,$$[$0].length-2));break;case 3:return new yy.Statements({statements:$$[$0-1]});break;case 4:case 5:this.$=$$[$0-2];if($$[$0])$$[$0-2].push($$[$0]);break;case 6:case 7:case 56:case 89:case 114:case 115:case 150:case 169:case 251:case 268:case 328:case 341:case 342:case 346:case 354:case 393:case 394:case 502:case 507:case 527:case 529:case 543:case 544:this.$=[$$[$0]];break;case 8:this.$=$$[$0];$$[$0].explain=true;break;case 9:this.$=$$[$0];$$[$0].explain=true;break;case 10:this.$=$$[$0];if(yy.exists)this.$.exists=yy.exists;delete yy.exists;if(yy.queries)this.$.queries=yy.queries;delete yy.queries;break;case 11:case 63:case 74:case 84:case 145:case 146:case 148:case 156:case 158:case 167:case 175:case 177:case 230:case 271:case 366:case 369:case 381:case 386:case 387:case 421:this.$=undefined;break;case 54:this.$=new yy.WithSelect({withs:$$[$0-1],select:$$[$0]});break;case 55:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 57:this.$={name:$$[$0-4],select:$$[$0-1]};break;case 58:yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);this.$=$$[$0-7];break;case 59:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 60:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 61:this.$=new yy.Select({columns:$$[$0],all:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 62:this.$=new yy.Select({columns:$$[$0]});yy,extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 64:this.$={modifier:"VALUE"};break;case 65:this.$={modifier:"ROW"};break;case 66:this.$={modifier:"COLUMN"};break;case 67:this.$={modifier:"MATRIX"};break;case 68:this.$={modifier:"TEXTSTRING"};break;case 69:this.$={modifier:"INDEX"};break;case 70:this.$={modifier:"RECORDSET"};break;case 71:this.$={top:$$[$0]};break;case 72:this.$={top:$$[$0-1]};break;case 73:this.$={top:$$[$0-1],percent:true};break;case 75:case 234:case 388:case 389:this.$=undefined;break;case 76:case 77:case 78:case 79:this.$={into:$$[$0]};break;case 80:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();if(s[0]=="#"){this.$={into:new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){this.$={into:new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x4=="XLSX"||x4=="JSON"){this.$={into:new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}break;case 81:this.$={from:$$[$0]};break;case 82:this.$={from:$$[$0-1],joins:$$[$0]};break;case 83:this.$={from:$$[$0-2],joins:$$[$0-1]};break;case 85:this.$=new yy.Apply({select:$$[$0-2],applymode:"CROSS",as:$$[$0]});break;case 86:this.$=new yy.Apply({select:$$[$0-3],applymode:"CROSS",as:$$[$0]});break;case 87:this.$=new yy.Apply({select:$$[$0-2],applymode:"OUTER",as:$$[$0]});break;case 88:this.$=new yy.Apply({select:$$[$0-3],applymode:"OUTER",as:$$[$0]});break;case 90:case 151:case 329:case 395:case 396:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 91:this.$=$$[$0-2];this.$.as=$$[$0];break;case 92:this.$=$$[$0-3];this.$.as=$$[$0];break;case 93:this.$=$$[$0-1];this.$.as="default";break;case 94:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 95:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 96:case 155:case 191:case 199:case 200:case 201:case 202:case 203:case 204:case 205:case 206:case 207:case 208:case 209:case 210:case 211:case 212:case 214:case 224:case 225:case 226:case 227:case 228:case 229:case 270:case 317:case 318:case 319:case 320:case 321:case 322:case 382:case 407:case 409:case 476:case 477:case 478:case 479:case 480:case 481:case 485:case 487:case 488:case 497:case 508:case 509:this.$=$$[$0];break;case 97:case 101:case 104:case 107:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 98:case 102:case 105:case 108:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 99:case 100:case 103:case 106:this.$=$$[$0];$$[$0].as="default";break;case 109:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();var r;if(s[0]=="#"){r=new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){r=new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x4=="XLSX"||x4=="JSON"){r=new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else{throw new Error("Unknown string in FROM clause")};this.$=r;break;case 110:this.$=new yy.Table({databaseid:$$[$0-2],tableid:$$[$0]});break;case 111:this.$=new yy.Table({tableid:$$[$0]});break;case 112:case 113:this.$=$$[$0-1];$$[$0-1].push($$[$0]);break;case 116:this.$=new yy.Join($$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 117:this.$={table:$$[$0]};break;case 118:this.$={table:$$[$0-1],as:$$[$0]};break;case 119:this.$={table:$$[$0-2],as:$$[$0]};break;case 120:this.$={param:$$[$0-1],as:$$[$0]};break;case 121:this.$={param:$$[$0-2],as:$$[$0]};break;case 122:this.$={select:$$[$0-3],as:$$[$0]};break;case 123:this.$={select:$$[$0-4],as:$$[$0]};break;case 124:this.$={funcid:$$[$0],as:"default"};break;case 125:this.$={funcid:$$[$0-1],as:$$[$0]};break;case 126:this.$={funcid:$$[$0-2],as:$$[$0]};break;case 127:this.$={variable:$$[$0],as:"default"};break;case 128:this.$={variable:$$[$0-1],as:$$[$0]};break;case 129:this.$={variable:$$[$0-2],as:$$[$0]};break;case 130:this.$={joinmode:$$[$0]};break;case 131:this.$={joinmode:$$[$0-1],natural:true};break;case 132:case 133:this.$="INNER";break;case 134:case 135:this.$="LEFT";break;case 136:case 137:this.$="RIGHT";break;case 138:case 139:this.$="OUTER";break;case 140:this.$="SEMI";break;case 141:this.$="ANTI";break;case 142:this.$="CROSS";break;case 143:this.$={on:$$[$0]};break;case 144:case 539:this.$={using:$$[$0]};break;case 147:this.$={where:new yy.Expression({expression:$$[$0]})};break;case 149:this.$={group:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 152:this.$=new yy.GroupExpression({type:"GROUPING SETS",group:$$[$0-1]});break;case 153:this.$=new yy.GroupExpression({type:"ROLLUP",group:$$[$0-1]});break;case 154:this.$=new yy.GroupExpression({type:"CUBE",group:$$[$0-1]});break;case 157:this.$={having:$$[$0]};break;case 159:this.$={union:$$[$0]};break;case 160:this.$={unionall:$$[$0]};break;case 161:this.$={except:$$[$0]};break;case 162:this.$={intersect:$$[$0]};break;case 163:this.$={union:$$[$0-1],corresponding:true};break;case 164:this.$={unionall:$$[$0-1],corresponding:true};break;case 165:this.$={except:$$[$0-1],corresponding:true};break;case 166:this.$={intersect:$$[$0-1],corresponding:true};break;case 168:this.$={order:$$[$0]};break;case 170:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 171:this.$=new yy.Expression({expression:$$[$0],direction:"ASC"});break;case 172:this.$=new yy.Expression({expression:$$[$0-1],direction:$$[$0].toUpperCase()});break;case 173:this.$=new yy.Expression({expression:$$[$0-2],direction:"ASC",nocase:true});break;case 174:this.$=new yy.Expression({expression:$$[$0-3],direction:$$[$0].toUpperCase(),nocase:true});break;case 176:this.$={limit:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 178:this.$={offset:$$[$0]};break;case 179:yy.extend($$[$0-1],$$[$0]);$$[$0-3].push($$[$0-1]);this.$=$$[$0-3];break;case 180:yy.extend($$[$0-1],$$[$0]);this.$=[$$[$0-1]];break;case 181:this.$=undefined;break;case 182:this.$={td:$$[$0]};break;case 183:this.$={th:$$[$0]};break;case 184:this.$={th:$$[$0-2],td:$$[$0]};break;case 185:case 187:case 189:$$[$0-2].as=$$[$0];this.$=$$[$0-2];break;case 186:case 188:case 190:$$[$0-1].as=$$[$0];this.$=$$[$0-1];break;case 192:this.$=new yy.Column({columid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 193:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 194:this.$=new yy.Column({columnid:$$[$0]});break;case 195:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 196:case 197:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 198:this.$=new yy.Column({columnid:$$[$0]});break;case 213:this.$=new yy.Json({value:$$[$0]});break;case 215:if(!yy.queries)yy.queries=[];yy.queries.push($$[$0-1]);$$[$0-1].queriesidx=yy.queries.length;this.$=$$[$0-1];break;case 216:this.$=$$[$0];break;case 217:this.$=new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)});break;case 218:this.$=new yy.FuncValue({funcid:$$[$0],newid:true});break;case 219:this.$=$$[$0];yy.extend(this.$,{newid:true});break;case 220:this.$=new yy.Convert({expression:$$[$0-3]});yy.extend(this.$,$$[$0-1]);break;case 221:this.$=new yy.Convert({expression:$$[$0-5],style:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 222:this.$=new yy.Convert({expression:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 223:this.$=new yy.Convert({expression:$$[$0-3],style:$$[$0-1]});yy.extend(this.$,$$[$0-5]);break;case 231:this.$=new yy.AggrValue({aggregatorid:$$[$0-4].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 232:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],distinct:true,over:$$[$0]});break;case 233:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 235:case 236:this.$=new yy.Over;yy.extend(this.$,$$[$0-1]);break;case 237:this.$=new yy.Over;yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 238:this.$={partition:$$[$0]};break;case 239:this.$={order:$$[$0]};break;case 240:this.$="SUM";break;case 241:this.$="COUNT";break;case 242:this.$="MIN";break;case 243:this.$="MAX";break;case 244:this.$="AVG";break;case 245:this.$="FIRST";break;case 246:this.$="LAST";break;case 247:this.$="AGGR";break;case 248:this.$="ARRAY";break;case 249:if(alasql.aggr[$$[$0-3]]){this.$=new yy.AggrValue({aggregatorid:"REDUCE",funcid:$$[$0-3],expression:$$[$0-1].pop()})}else{this.$=new yy.FuncValue({funcid:$$[$0-3],args:$$[$0-1]})};break;case 250:this.$=new yy.FuncValue({funcid:$$[$0-2]});break;case 252:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 253:this.$=new yy.NumValue({value:+$$[$0]});break;case 254:this.$=new yy.LogicValue({value:true});break;case 255:this.$=new yy.LogicValue({value:false});break;case 256:this.$=new yy.StringValue({value:$$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 257:this.$=new yy.StringValue({value:$$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 258:this.$=new yy.NullValue({value:undefined});break;case 259:this.$=new yy.VarValue({variable:$$[$0]});break;case 260:if(!yy.exists)yy.exists=[];this.$=new yy.ExistsValue({value:$$[$0-1],existsidx:yy.exists.length});yy.exists.push($$[$0-1]);break;case 261:case 262:this.$=new yy.ParamValue({param:$$[$0]}); +break;case 263:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++});break;case 264:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++,array:true});break;case 265:this.$=new yy.CaseValue({expression:$$[$0-3],whens:$$[$0-2],elses:$$[$0-1]});break;case 266:this.$=new yy.CaseValue({whens:$$[$0-2],elses:$$[$0-1]});break;case 267:case 541:case 542:this.$=$$[$0-1];this.$.push($$[$0]);break;case 269:this.$={when:$$[$0-2],then:$$[$0]};break;case 272:this.$=new yy.Op({left:$$[$0-2],op:"LIKE",right:$$[$0]});break;case 273:this.$=new yy.Op({left:$$[$0-2],op:"NOT LIKE",right:$$[$0]});break;case 274:this.$=new yy.Op({left:$$[$0-2],op:"+",right:$$[$0]});break;case 275:this.$=new yy.Op({left:$$[$0-2],op:"-",right:$$[$0]});break;case 276:this.$=new yy.Op({left:$$[$0-2],op:"*",right:$$[$0]});break;case 277:this.$=new yy.Op({left:$$[$0-2],op:"/",right:$$[$0]});break;case 278:this.$=new yy.Op({left:$$[$0-2],op:"%",right:$$[$0]});break;case 279:this.$=new yy.Op({left:$$[$0-2],op:"^",right:$$[$0]});break;case 280:case 281:case 283:this.$=new yy.Op({left:$$[$0-2],op:"->",right:$$[$0]});break;case 282:this.$=new yy.Op({left:$$[$0-4],op:"->",right:$$[$0-1]});break;case 284:this.$=new yy.Op({left:$$[$0-2],op:">",right:$$[$0]});break;case 285:this.$=new yy.Op({left:$$[$0-2],op:">=",right:$$[$0]});break;case 286:this.$=new yy.Op({left:$$[$0-2],op:"<",right:$$[$0]});break;case 287:this.$=new yy.Op({left:$$[$0-2],op:"<=",right:$$[$0]});break;case 288:this.$=new yy.Op({left:$$[$0-2],op:"=",right:$$[$0]});break;case 289:this.$=new yy.Op({left:$$[$0-2],op:"==",right:$$[$0]});break;case 290:this.$=new yy.Op({left:$$[$0-2],op:"===",right:$$[$0]});break;case 291:this.$=new yy.Op({left:$$[$0-2],op:"!=",right:$$[$0]});break;case 292:this.$=new yy.Op({left:$$[$0-2],op:"!==",right:$$[$0]});break;case 293:this.$=new yy.Op({left:$$[$0-2],op:"!===",right:$$[$0]});break;case 294:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 295:this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1]});break;case 296:this.$=new yy.Op({left:$$[$0-2],op:"AND",right:$$[$0]});break;case 297:this.$=new yy.Op({left:$$[$0-2],op:"OR",right:$$[$0]});break;case 298:this.$=new yy.UniOp({op:"NOT",right:$$[$0]});break;case 299:this.$=new yy.UniOp({op:"-",right:$$[$0]});break;case 300:this.$=new yy.UniOp({op:"+",right:$$[$0]});break;case 301:this.$=new yy.UniOp({right:$$[$0-1]});break;case 302:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 303:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 304:this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1]});break;case 305:this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1]});break;case 306:this.$=new yy.Op({left:$$[$0-3],op:"IN",right:[]});break;case 307:this.$=new yy.Op({left:$$[$0-4],op:"NOT IN",right:[]});break;case 308:this.$=new yy.Op({left:$$[$0-2],op:"IN",right:$$[$0]});break;case 309:this.$=new yy.Op({left:$$[$0-3],op:"NOT IN",right:$$[$0]});break;case 310:this.$=new yy.Op({left:$$[$0-2],op:"BETWEEN",right:$$[$0]});break;case 311:this.$=new yy.Op({left:$$[$0-2],op:"NOT BETWEEN",right:$$[$0]});break;case 312:this.$=new yy.Op({op:"IS",left:$$[$0-2],right:$$[$0]});break;case 313:this.$=new yy.Convert({expression:$$[$0-2]});yy.extend(this.$,$$[$0]);break;case 314:case 315:this.$=$$[$0];break;case 316:this.$=$$[$0-1];break;case 323:this.$="ALL";break;case 324:this.$="SOME";break;case 325:this.$="ANY";break;case 326:this.$=new yy.Update({table:$$[$0-4],columns:$$[$0-2],where:$$[$0]});break;case 327:this.$=new yy.Update({table:$$[$0-2],columns:$$[$0]});break;case 330:this.$=new yy.SetColumn({columnid:$$[$0-2],expression:$$[$0]});break;case 331:this.$=new yy.Delete({table:$$[$0-2],where:$$[$0]});break;case 332:this.$=new yy.Delete({table:$$[$0]});break;case 333:this.$=new yy.Insert({into:$$[$0-2],values:$$[$0]});break;case 334:this.$=new yy.Insert({into:$$[$0-2],"default":true});break;case 335:this.$=new yy.Insert({into:$$[$0-5],columns:$$[$0-3],values:$$[$0]});break;case 336:this.$=new yy.Insert({into:$$[$0-1],select:$$[$0]});break;case 337:this.$=new yy.Insert({into:$$[$0-4],columns:$$[$0-2],select:$$[$0]});break;case 340:this.$=[$$[$0-1]];break;case 343:this.$=$$[$0-4];$$[$0-4].push($$[$0-1]);break;case 344:case 345:case 347:case 355:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 356:this.$=new yy.CreateTable({table:$$[$0-4]});yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0]);break;case 357:this.$=new yy.CreateTable({table:$$[$0]});yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 367:case 368:this.$={temporary:true};break;case 370:this.$={ifnotexists:true};break;case 371:this.$={columns:$$[$0-2],constraints:$$[$0]};break;case 372:this.$={columns:$$[$0]};break;case 373:this.$={as:$$[$0]};break;case 374:case 397:this.$=[$$[$0]];break;case 375:case 398:case 501:case 506:case 526:case 530:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 376:case 377:case 378:case 379:case 380:$$[$0].constraintid=$$[$0-1];this.$=$$[$0];break;case 383:this.$={type:"CHECK",expression:$$[$0-1]};break;case 384:this.$={type:"PRIMARY KEY",columns:$$[$0-1]};break;case 385:this.$={type:"FOREIGN KEY",columns:$$[$0-7],fktableid:$$[$0-4],fkcolumns:$$[$0-2]};break;case 399:this.$=new yy.ColumnDef({columnid:$$[$0-2]});yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 400:this.$=new yy.ColumnDef({columnid:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 401:this.$=new yy.ColumnDef({columnid:$$[$0],dbtypeid:""});break;case 402:this.$={dbtypeid:$$[$0-5],dbsize:+$$[$0-3],dbprecision:+$$[$0-1]};break;case 403:this.$={dbtypeid:$$[$0-3],dbsize:+$$[$0-1]};break;case 404:this.$={dbtypeid:$$[$0]};break;case 405:this.$={dbtypeid:"ENUM",enumvalues:$$[$0-1]};break;case 406:this.$=undefined;break;case 408:yy.extend($$[$0-1],$$[$0]);this.$=$$[$0-1];break;case 410:this.$={primarykey:true};break;case 411:case 412:this.$={foreignkey:{tableid:$$[$0-3],columnid:$$[$0-1]}};break;case 413:this.$={auto_increment:true};break;case 414:this.$={identity:[$$[$0-3],$$[$0-1]]};break;case 415:this.$={identity:[1,1]};break;case 416:this.$={"default":$$[$0]};break;case 417:this.$={"null":true};break;case 418:this.$={notnull:true};break;case 419:this.$=$$[$0];break;case 420:this.$=new yy.DropTable({table:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 422:this.$={ifexists:true};break;case 423:this.$=new yy.AlterTable({table:$$[$0-3],renameto:$$[$0]});break;case 424:this.$=new yy.AlterTable({table:$$[$0-3],addcolumn:$$[$0]});break;case 425:this.$=new yy.AlterTable({table:$$[$0-3],modifycolumn:$$[$0]});break;case 426:this.$=new yy.AlterTable({table:$$[$0-5],renamecolumn:$$[$0-2],to:$$[$0]});break;case 427:this.$=new yy.AlterTable({table:$$[$0-3],dropcolumn:$$[$0]});break;case 428:this.$=new yy.AlterTable({table:$$[$0-2],renameto:$$[$0]});break;case 429:this.$=new yy.AttachDatabase({databaseid:$$[$0],engineid:$$[$0-2].toUpperCase()});break;case 430:this.$=new yy.AttachDatabase({databaseid:$$[$0-3],engineid:$$[$0-5].toUpperCase(),args:$$[$0-1]});break;case 431:this.$=new yy.AttachDatabase({databaseid:$$[$0-2],engineid:$$[$0-4].toUpperCase(),as:$$[$0]});break;case 432:this.$=new yy.AttachDatabase({databaseid:$$[$0-5],engineid:$$[$0-7].toUpperCase(),as:$$[$0],args:$$[$0-3]});break;case 433:this.$=new yy.DetachDatabase({databaseid:$$[$0]});break;case 434:this.$=new yy.CreateDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0]);break;case 435:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),databaseid:$$[$0-1],as:$$[$0]});yy.extend(this.$,$$[$0-2]);break;case 436:this.$=new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(),databaseid:$$[$0-4],args:$$[$0-2],as:$$[$0]});yy.extend(this.$,$$[$0-5]);break;case 437:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),as:$$[$0],args:[$$[$0-1]]});yy.extend(this.$,$$[$0-2]);break;case 438:this.$=undefined;break;case 439:case 472:case 490:case 493:case 510:this.$=$$[$0-1];break;case 440:case 441:this.$=new yy.UseDatabase({databaseid:$$[$0]});break;case 442:this.$=new yy.DropDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 443:case 444:this.$=new yy.DropDatabase({databaseid:$$[$0],engineid:$$[$0-3].toUpperCase()});yy.extend(this.$,$$[$0-1]);break;case 445:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1]});break;case 446:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1],unique:true});break;case 447:this.$=new yy.DropIndex({indexid:$$[$0]});break;case 448:this.$=new yy.ShowDatabases;break;case 449:this.$=new yy.ShowDatabases({like:$$[$0]});break;case 450:this.$=new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase()});break;case 451:this.$=new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase(),like:$$[$0]});break;case 452:this.$=new yy.ShowTables;break;case 453:this.$=new yy.ShowTables({like:$$[$0]});break;case 454:this.$=new yy.ShowTables({databaseid:$$[$0]});break;case 455:this.$=new yy.ShowTables({like:$$[$0],databaseid:$$[$0-2]});break;case 456:this.$=new yy.ShowColumns({table:$$[$0]});break;case 457:this.$=new yy.ShowColumns({table:$$[$0-2],databaseid:$$[$0]});break;case 458:this.$=new yy.ShowIndex({table:$$[$0]});break;case 459:this.$=new yy.ShowIndex({table:$$[$0-2],databaseid:$$[$0]});break;case 460:this.$=new yy.ShowCreateTable({table:$$[$0]});break;case 461:this.$=new yy.ShowCreateTable({table:$$[$0-2],databaseid:$$[$0]});break;case 462:this.$=new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]});yy.extend(this.$,$$[$0-8]);yy.extend(this.$,$$[$0-6]);break;case 463:this.$=new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]});yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-3]);break;case 464:this.$=new yy.DropTable({table:$$[$0],view:true});yy.extend(this.$,$$[$0-1]);break;case 465:this.$=new yy.Help({subject:$$[$0].value.toUpperCase()});break;case 466:this.$=new yy.Help;break;case 467:this.$=new yy.ExpressionStatement({expression:$$[$0]});break;case 468:this.$=new yy.Source({url:$$[$0].value});break;case 469:this.$=new yy.Assert({value:$$[$0]});break;case 470:this.$=new yy.Assert({value:$$[$0].value});break;case 471:this.$=new yy.Assert({value:$$[$0],message:$$[$0-2]});break;case 473:case 484:case 486:this.$=$$[$0].value;break;case 474:case 482:this.$=+$$[$0].value;break;case 475:this.$=!!$$[$0].value;break;case 483:this.$=""+$$[$0].value;break;case 489:this.$=$$[$0-1];break;case 491:case 494:this.$=$$[$0-2];break;case 492:this.$={};break;case 495:this.$=[];break;case 496:yy.extend($$[$0-2],$$[$0]);this.$=$$[$0-2];break;case 498:this.$={};this.$[$$[$0-2].substr(1,$$[$0-2].length-2)]=$$[$0];break;case 499:case 500:this.$={};this.$[$$[$0-2]]=$$[$0];break;case 503:this.$=new yy.SetVariable({variable:$$[$0-1].toLowerCase(),value:$$[$0]});break;case 504:this.$=new yy.SetVariable({variable:$$[$0-2],expression:$$[$0]});break;case 505:this.$=new yy.SetVariable({variable:$$[$0-3],props:$$[$0-2],expression:$$[$0]});break;case 511:this.$=true;break;case 512:this.$=false;break;case 513:this.$=new yy.CommitTransaction;break;case 514:this.$=new yy.RollbackTransaction;break;case 515:this.$=new yy.BeginTransaction;break;case 516:this.$=new yy.If({expression:$$[$0-2],thenstat:$$[$0-1],elsestat:$$[$0]});if($$[$0-1].exists)this.$.exists=$$[$0-1].exists;if($$[$0-1].queries)this.$.queries=$$[$0-1].queries;break;case 517:this.$=new yy.If({expression:$$[$0-1],thenstat:$$[$0]});if($$[$0].exists)this.$.exists=$$[$0].exists;if($$[$0].queries)this.$.queries=$$[$0].queries;break;case 518:this.$=$$[$0];break;case 519:this.$=new yy.While({expression:$$[$0-1],loopstat:$$[$0]});if($$[$0].exists)this.$.exists=$$[$0].exists;if($$[$0].queries)this.$.queries=$$[$0].queries;break;case 520:this.$=new yy.Continue;break;case 521:this.$=new yy.Break;break;case 522:this.$=new yy.BeginEnd({statements:$$[$0-1]});break;case 523:case 524:this.$=new yy.Print({statement:$$[$0]});break;case 525:this.$=new yy.Require({paths:$$[$0]});break;case 528:this.$=new yy.Declare({declares:$$[$0]});break;case 531:this.$={variable:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 532:this.$={variable:$$[$0-2]};yy.extend(this.$,$$[$0]);break;case 533:this.$={variable:$$[$0-3],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 534:this.$={variable:$$[$0-4],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 535:this.$=new yy.TruncateTable({table:$$[$0]});break;case 536:this.$=new yy.Merge;yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 537:case 538:this.$={into:$$[$0]};break;case 540:this.$={on:$$[$0]};break;case 545:this.$={matched:true,action:$$[$0]};break;case 546:this.$={matched:true,expr:$$[$0-2],action:$$[$0]};break;case 547:this.$={"delete":true};break;case 548:this.$={update:$$[$0]};break;case 549:case 550:this.$={matched:false,bytarget:true,action:$$[$0]};break;case 551:case 552:this.$={matched:false,bytarget:true,expr:$$[$0-2],action:$$[$0]};break;case 553:this.$={matched:false,bysource:true,action:$$[$0]};break;case 554:this.$={matched:false,bysource:true,expr:$$[$0-2],action:$$[$0]};break;case 555:this.$={insert:true,values:$$[$0]};break;case 556:this.$={insert:true,values:$$[$0],columns:$$[$0-3]};break;case 557:this.$={insert:true,defaultvalues:true};break;case 558:this.$={insert:true,defaultvalues:true,columns:$$[$0-3]};break;case 560:this.$={output:{columns:$$[$0]}};break;case 561:this.$={output:{columns:$$[$0-3],intovar:$$[$0]}};break;case 562:this.$={output:{columns:$$[$0-2],intotable:$$[$0]}};break;case 563:this.$={output:{columns:$$[$0-5],intotable:$$[$0-3],intocolumns:$$[$0-1]}};break}},table:[o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{253:[1,141]},{3:142,4:$VB,5:$VC},o($V71,[2,366],{3:144,252:147,4:$VB,5:$VC,78:[1,146],86:[1,145],262:[1,148],263:[1,149],301:[1,143]}),{193:$V81,341:150,342:151},{97:[1,153]},{301:[1,154]},{3:156,4:$VB,5:$VC,86:[1,157],253:[1,158],301:[1,155],309:[1,159]},o($V91,[2,338],{244:160,91:[1,161]}),{253:[1,162]},o($Va1,[2,75],{67:163,91:[1,164]}),{3:174,4:$VB,5:$VC,64:$Vb1,91:[1,167],92:169,93:171,94:170,95:172,96:$Vc1,104:166,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01,345:165},{3:179,4:$VB,5:$VC,60:177,62:178},{3:183,4:$VB,5:$VC,86:[1,184],251:[1,180],306:[1,182],307:[1,185],308:[1,181]},{253:[1,186]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:188,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,187],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,189]},{330:[1,190]},{3:192,4:$VB,5:$VC,301:[1,191]},{3:194,4:$VB,5:$VC,92:193},o($VA,[2,466],{153:195,96:$VE,191:$VV}),o($Ve1,[2,217]),{96:$VE,153:196,191:$VV},{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:[1,199],152:$VF,153:202,159:203,160:204,164:197,171:198,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:209,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,520]),o($VA,[2,521]),{3:106,4:$VB,5:$VC,33:210,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:212,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:211,314:126,315:$V51,319:$V61},{96:$VE,153:214,191:$VV,339:213},{3:215,4:$VB,5:$VC,193:[1,216]},o($Vh1,$Vi1,{76:220,75:[1,217],78:[1,218],79:[1,219],88:$Vj1}),o($Vk1,[2,63],{81:[1,222],82:[1,223],83:[1,224],84:[1,225],85:[1,226],86:[1,227],87:[1,228]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:230,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,231]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:232,225:252,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Ve1,[2,199]),o($Ve1,[2,200]),o($Ve1,[2,201]),o($Ve1,[2,202]),o($Ve1,[2,203]),o($Ve1,[2,204]),o($Ve1,[2,205]),o($Ve1,[2,206]),o($Ve1,[2,207]),o($Ve1,[2,208]),o($Ve1,[2,209]),o($Ve1,[2,210]),o($Ve1,[2,211]),o($Ve1,[2,212]),o($Ve1,[2,213]),o($Ve1,[2,214]),{3:106,4:$VB,5:$VC,33:261,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:262,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,216]),{64:[1,263]},o($Ve1,$VM1,{64:$VN1,106:[1,265]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:268,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,194]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,260,261,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,253]),o($VO1,[2,254]),o($VO1,[2,255]),o($VO1,$VP1),o($VO1,[2,257]),o($VO1,[2,258]),{3:269,4:$VB,5:$VC},{3:270,4:$VB,5:$VC},o($VQ1,[2,263]),o($VQ1,[2,264]),{3:271,4:$VB,5:$VC,64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},{64:[1,278]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:279,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:280,203:281,204:$VS1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,283]},{64:[1,284]},o($VT1,[2,477]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:285,317:288,318:290,319:$V61,322:286,323:[1,287]},{3:300,4:$VB,5:$VC,93:301},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},{64:[2,248]},o($VV1,[2,1]),o($VV1,[2,2]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,320:302,321:[1,303],324:304},{3:194,4:$VB,5:$VC,92:308},{301:[1,309]},o($V91,$VY1,{254:310,264:$VZ1}),{301:[1,312]},{3:313,4:$VB,5:$VC},{86:[1,314]},{253:[1,315],309:[1,316]},o($V71,[2,367]),o($V71,[2,368]),o($VA,[2,528],{61:[1,317]}),o($V_1,[2,529]),{3:318,4:$VB,5:$VC},{3:194,4:$VB,5:$VC,92:319},{3:320,4:$VB,5:$VC},o($V91,$V$1,{294:321,264:$V02}),{301:[1,323]},{3:324,4:$VB,5:$VC},o($V91,$V$1,{294:325,264:$V02}),o($V91,$V$1,{294:326,264:$V02}),{3:194,4:$VB,5:$VC,92:327},o($V91,[2,339]),{3:194,4:$VB,5:$VC,92:328},o($V12,[2,84],{68:329,97:[1,330]}),{3:174,4:$VB,5:$VC,92:331,93:332,94:333,95:334,96:[1,335],193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,337],346:336},{122:[2,537]},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:338,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:339,66:59,74:79,80:$V4},o($V22,[2,96],{3:340,4:$VB,5:$VC,63:[1,341]}),o($V22,[2,99],{3:342,4:$VB,5:$VC,63:[1,343]}),o($V22,[2,100],{3:344,4:$VB,5:$VC,63:[1,345]}),o($V22,[2,103],{3:346,4:$VB,5:$VC,63:[1,347]}),o($V22,[2,106],{3:348,4:$VB,5:$VC,63:[1,349]}),o([4,5,8,9,11,61,63,65,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32,{64:$VN1,106:$V42}),{3:271,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,109]),{33:351,61:[1,352],66:59,74:79,80:$V4},o($V52,[2,56]),{63:[1,353]},{253:[1,354]},{97:[1,355]},o($VA,[2,448],{207:[1,356]}),{306:[1,357]},{97:[1,358]},o($VA,[2,452],{97:[1,360],207:[1,359]}),{3:194,4:$VB,5:$VC,92:361},o($VA,[2,515]),{9:$Vx,11:$Vy,202:[1,362]},o($VA,[2,513]),o($VA,[2,514]),{3:363,4:$VB,5:$VC},o($VA,[2,441]),{239:[1,364]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V32,{106:$V42}),o($VA,[2,465]),o($VA,[2,468]),o($VA,[2,469]),o($VA,[2,470]),o($VA,$VP1,{61:[1,365]}),{64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},o($V62,[2,224]),o($V62,[2,225]),o($V62,[2,226]),o($V62,[2,227]),o($V62,[2,228]),o($V62,[2,229]),o($V62,[2,230]),{64:$VN1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:252,10:366,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,523]),o($VA,[2,524]),o($VA,[2,467],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,525],{61:[1,367]}),o($V_1,[2,527]),{120:[1,369],325:368,328:[1,370]},{3:371,4:$VB,5:$VC},o($Vh1,$Vi1,{76:372,88:$Vj1}),o($Vh1,$Vi1,{76:373,88:$Vj1}),o($Vh1,$Vi1,{76:374,88:$Vj1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:375,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,379],89:378,152:$VF},o($Vk1,[2,64]),o($Vk1,[2,65]),o($Vk1,[2,66]),o($Vk1,[2,67]),o($Vk1,[2,68]),o($Vk1,[2,69]),o($Vk1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:380,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,517],{333:381,206:[1,382]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:390,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:391,4:$VB,5:$VC,64:[1,393],89:392,93:394,152:$VF},o($V72,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:399,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:401,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V72,[2,322],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:402,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:404,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,406],226:405,236:[1,407],237:[1,408]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:410,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:299,4:$VB,5:$VC,64:[1,411],93:414,156:413,193:$V82,231:412},{230:[1,416]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:419,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:420,289:$Va2},{65:[1,423]},{65:[1,424],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,426],79:[1,427],89:92,93:88,94:96,95:97,96:$VE,121:425,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,429],89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:428,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:431,4:$VB,5:$VC,81:$Vb2,155:[1,433]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,298],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,234:$VK1}),o($Vc2,[2,299],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,300],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($VQ1,[2,261]),o($VQ1,[2,262]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,259]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:434,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,473]),o($VT1,[2,474]),o($VT1,[2,475]),o($VT1,[2,476]),o($VT1,[2,478]),{33:435,66:59,74:79,80:$V4},{155:$Vl1,200:436,203:281,204:$VS1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{201:437,202:$Vd2,203:438,204:$VS1,206:$Ve2},o($Vf2,[2,268]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:441,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:442,289:$Va2},o($VT1,[2,479]),{61:[1,444],323:[1,443]},o($VT1,[2,495]),o($Vg2,[2,502]),o($Vh2,[2,480]),o($Vh2,[2,481]),o($Vh2,[2,482]),o($Vh2,[2,483]),o($Vh2,[2,484]),o($Vh2,[2,485]),o($Vh2,[2,486]),o($Vh2,[2,487]),o($Vh2,[2,488]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:445,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,$VM1,{64:$VN1,106:$Vi2}),o($Ve1,[2,218],{64:$VN1}),o($Ve1,[2,219]),{61:[1,448],321:[1,447]},o($VT1,[2,492]),o($Vj2,[2,497]),{196:[1,449]},{196:[1,450]},{196:[1,451]},{293:[1,455],296:[1,452],298:[1,453],299:[1,454]},{3:456,4:$VB,5:$VC},{3:457,4:$VB,5:$VC},{229:[1,458]},o($Vk2,$VY1,{254:459,264:$VZ1}),{120:[1,460]},{3:461,4:$VB,5:$VC},o($V91,$VY1,{254:462,264:$VZ1}),o($V91,$VY1,{254:463,264:$VZ1}),{193:$V81,342:464},{4:$V92,63:[1,466],169:465,289:$Va2},o($VA,[2,332],{124:[1,467]}),o($VA,[2,433]),{3:468,4:$VB,5:$VC},{194:[1,469]},o($Vk2,$V$1,{294:470,264:$V02}),o($VA,[2,447]),{3:194,4:$VB,5:$VC,92:471},{3:194,4:$VB,5:$VC,92:472},{33:476,64:[1,475],66:59,74:79,80:$V4,245:[1,473],247:[1,474]},{297:[1,477]},o($Vl2,[2,146],{69:478,124:[1,479]}),{3:174,4:$VB,5:$VC,64:[1,481],92:169,93:171,94:170,95:172,96:$Vc1,98:480,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($Va1,[2,76]),o($Va1,[2,77]),o($Va1,[2,78]),o($Va1,[2,79]),o($Va1,[2,80]),{120:[1,484],347:483},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:485,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,538]},{65:[1,486]},o($V22,[2,94]),{3:487,4:$VB,5:$VC},o($V22,[2,97]),{3:488,4:$VB,5:$VC},o($V22,[2,101]),{3:489,4:$VB,5:$VC},o($V22,[2,104]),{3:490,4:$VB,5:$VC},o($V22,[2,107]),{3:491,4:$VB,5:$VC},{3:492,4:$VB,5:$VC},o($VA,[2,54]),{3:179,4:$VB,5:$VC,62:493},{64:[1,494]},{3:194,4:$VB,5:$VC,92:495},{3:194,4:$VB,5:$VC,92:496},{96:$VE,153:497,191:$VV},o($VA,[2,450],{207:[1,498]}),{3:194,4:$VB,5:$VC,92:499},{96:$VE,153:500,191:$VV},{3:501,4:$VB,5:$VC},o($VA,[2,535]),o($VA,[2,522]),o($VA,[2,440]),{3:505,4:$VB,5:$VC,156:504,240:502,241:503},{164:506,193:$Vg1,314:126,315:$V51,319:$V61},o($VA,[2,519]),{96:$VE,153:507,191:$VV},o($VA,[2,503]),o($VA,[2,511]),o($VA,[2,512]),{214:[1,510],219:[1,508],326:509},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:512,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:513,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vm2,[2,62],{61:$Vn2}),o($Vo2,$Vp2,{149:515,150:$Vq2,151:$Vr2}),o($Vs2,[2,191],{225:252,3:519,153:521,4:$VB,5:$VC,63:[1,518],96:$VE,152:[1,520],155:$Vl1,191:$VV,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vh1,[2,71],{90:[1,522]}),{89:523,152:$VF},o($Vz,[2,9]),o($VA,[2,516]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:524,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vt2,[2,272],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vt2,[2,273],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,274],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,275],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vu2,[2,276],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,277],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,278],{225:252,213:$Vs1,214:$Vt1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,279],{225:252,214:$Vt1}),o($Ve1,[2,280],{64:$VN1}),o($Ve1,[2,281]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:525,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,283]),o($Vv2,[2,284],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,285],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,286],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,287],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,288],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,289],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,290],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,291],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,292],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,293],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),{64:[1,526]},{64:[2,323]},{64:[2,324]},{64:[2,325]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1}),{3:106,4:$VB,5:$VC,33:527,49:104,64:$VD,65:[1,529],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:528,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,308]),o($Ve1,[2,314]),o($Ve1,[2,315]),{64:[1,530]},{3:299,4:$VB,5:$VC,64:[1,531],93:414,156:413,193:$V82,231:532},o($Vw2,[2,310],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o($Vw2,[2,311],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,312],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Ve1,[2,313]),o($Vx2,[2,404],{64:[1,533]}),{64:[1,534]},o($Ve1,[2,215]),o($Ve1,[2,301]),{65:[1,535],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:536,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:537,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vy2,65:[1,538]},o($VQ1,[2,250]),o($Vz2,[2,251],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,$VA2,{106:[1,540]}),o($VT1,[2,197]),o($Ve1,[2,193]),{65:[1,541],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,542]},{201:543,202:$Vd2,203:438,204:$VS1,206:$Ve2},{202:[1,544]},o($Vf2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:545,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vl1,205:[1,546],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{63:[1,547],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{61:[1,548]},o($VT1,[2,493]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:550,318:290,319:$V61,323:[1,549]},{65:[1,551],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:552,4:$VB,5:$VC,81:$Vb2},o($VT1,[2,490]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,321:[1,553],324:554},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:556,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:557,318:290,319:$V61},{83:[1,559],297:[1,558]},{83:[1,560]},{83:[1,561]},{83:[1,562]},o($VA,[2,429],{63:[1,564],64:[1,563]}),o($VA,[2,434]),{194:[1,565]},{3:566,4:$VB,5:$VC,96:$VE,153:567,191:$VV},{3:194,4:$VB,5:$VC,92:568},{120:[1,569]},{3:194,4:$VB,5:$VC,92:570},{3:194,4:$VB,5:$VC,92:571},o($V_1,[2,530]),o($V_1,[2,531],{219:[1,572]}),{4:$V92,169:573,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:574,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,442]),o($Vk2,[2,422]),{3:575,4:$VB,5:$VC,96:$VE,153:576,191:$VV},o($VA,[2,420]),o($VA,[2,464]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:577,314:126,315:$V51,319:$V61},{245:[1,581]},{3:505,4:$VB,5:$VC,123:582,156:583},o($VA,[2,336]),{3:584,4:$VB,5:$VC},o($VC2,[2,148],{70:585,125:[1,586]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:587,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V12,[2,81],{99:588,107:590,100:591,108:592,111:595,61:$VD2,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,33:339,64:$Vb1,66:59,74:79,80:$V4,92:169,93:171,94:170,95:172,96:$Vc1,98:604,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($VO2,[2,89]),{204:$VP2,348:605,350:606,351:607},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:609,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,539]},o($V22,[2,93],{3:610,4:$VB,5:$VC,63:[1,611]}),o($V22,[2,95]),o($V22,[2,98]),o($V22,[2,102]),o($V22,[2,105]),o($V22,[2,108]),o([4,5,8,9,11,61,63,64,65,80,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,110]),o($V52,[2,55]),{33:612,66:59,74:79,80:$V4},o($VA,[2,460],{97:[1,613]}),o($VA,[2,456],{97:[1,614]}),o($VA,[2,449]),{96:$VE,153:615,191:$VV},o($VA,[2,458],{97:[1,616]}),o($VA,[2,453]),o($VA,[2,454],{207:[1,617]}),o($VA,[2,327],{61:$VQ2,124:[1,618]}),o($VR2,[2,328]),{219:[1,620]},o([8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VM1,{106:$Vi2}),o($VA,[2,471]),o($V_1,[2,526]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:621,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,623],219:[1,622]},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:624},o($Vm2,[2,59],{61:$Vn2}),o($Vm2,[2,60],{61:$Vn2}),o($Vm2,[2,61],{61:$Vn2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:377,148:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,[2,180]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:629,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:630,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:631,4:$VB,5:$VC,96:$VE,152:[1,632],153:633,191:$VV},o($Vs2,[2,186]),o($Vs2,[2,188]),o($Vs2,[2,190]),o($Vh1,[2,73]),{65:[1,634]},o($VA,[2,518]),{65:[1,635],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,33:636,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:637,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,638]},{61:$Vy2,65:[1,639]},o($Ve1,[2,306]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:640,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:641,49:104,64:$VD,65:[1,643],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:642,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,309]),{152:[1,644]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:645,314:126,315:$V51,319:$V61},o($Ve1,$VU2,{174:647,175:$VV2}),{65:[1,649],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,650],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($VQ1,[2,249]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:651,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:652,4:$VB,5:$VC,155:[1,653]},o($VT1,[2,472]),o($Ve1,[2,260]),{202:[1,654]},o($Ve1,[2,266]),{155:$Vl1,202:[2,270],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:656,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:657,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,494]),o($Vg2,[2,501]),o($Vh2,[2,489]),o($VT1,$VA2,{106:[1,658]}),o($VT1,[2,491]),o($Vj2,[2,496]),o($Vj2,[2,498]),o($Vj2,[2,499]),o($Vj2,[2,500]),{3:659,4:$VB,5:$VC},{3:660,4:$VB,5:$VC},{3:662,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC,286:663},{3:664,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:665,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:666,4:$VB,5:$VC},o($Vk2,[2,370]),o($VA,$VW2,{303:667,63:$VX2,64:[1,668]}),o($VA,$VW2,{303:670,63:$VX2}),{64:[1,671]},{3:194,4:$VB,5:$VC,92:672},o($VA,[2,357],{64:[1,673]}),{63:[1,675],64:[1,674]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:676,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V_1,[2,532],{219:[1,677]}),o($VA,[2,331],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,443]),o($VA,[2,444]),o($VA,[2,333],{61:$VY2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:679,314:126,315:$V51,319:$V61},o($VZ2,[2,341]),o($VZ2,[2,342]),o($VA,[2,334]),{61:$V_2,65:[1,680]},o($VO2,[2,354]),o($VA,[2,428]),o($V$2,[2,167],{71:682,139:[1,683]}),{126:[1,684]},o($Vl2,[2,147],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V12,[2,82],{108:592,111:595,107:685,100:686,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:687,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V03,[2,114]),o($V03,[2,115]),{3:174,4:$VB,5:$VC,64:[1,691],92:689,93:692,94:690,95:693,109:688,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{102:[1,694],113:$V13},{102:[1,696],113:$V23},o($V33,[2,130]),{101:[1,700],103:[1,699],111:698,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($V33,[2,132]),{113:[1,701]},{103:[1,703],113:[1,702]},{103:[1,705],113:[1,704]},{103:[1,706]},{113:[1,707]},{113:[1,708]},{61:$VD2,99:709,100:591,101:$VE2,103:$VF2,107:590,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,559],{349:710,350:711,351:712,204:$VP2,356:[1,713]}),o($V43,[2,543]),o($V43,[2,544]),{229:[1,715],352:[1,714]},{155:$Vl1,204:[2,540],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V22,[2,91]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,451]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,156:504,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,504],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:726},o($V53,[2,507]),o($V53,[2,508]),o($V53,[2,509]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,$Vp2,{149:728,150:$Vq2,151:$Vr2}),o($Vo2,[2,182],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vo2,[2,183],{225:252,150:[1,729],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vs2,[2,185]),o($Vs2,[2,187]),o($Vs2,[2,189]),o($Vh1,[2,72]),o($Ve1,[2,282]),{65:[1,730]},{61:$Vy2,65:[1,731]},o($Ve1,[2,302]),o($Ve1,[2,304]),{65:[1,732],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,733]},{61:$Vy2,65:[1,734]},o($Ve1,[2,307]),{61:[1,735],65:[1,736]},{61:$V63,65:[1,737]},o($Vz2,[2,346],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,[2,231]),{64:[1,739]},o($Ve1,$VU2,{174:740,175:$VV2}),o($Ve1,$VU2,{174:741,175:$VV2}),o($Vz2,[2,252],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VT1,[2,195]),o($Ve1,[2,192]),o($Ve1,[2,265]),o($Vf2,[2,269],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:652,4:$VB,5:$VC},o($VA,[2,423]),{297:[1,746]},o($VA,[2,424]),o($V73,[2,401],{169:747,4:$V92,288:[1,748],289:$Va2}),o($VA,[2,425]),o($VA,[2,427]),{61:$Vy2,65:[1,749]},o($VA,[2,431]),o($VA,[2,435]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,437]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:752,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,755]},{3:662,4:$VB,5:$VC,63:[1,758],255:756,265:757,286:759},{3:505,4:$VB,5:$VC,123:760,156:583},{33:761,66:59,74:79,80:$V4},o($V_1,[2,533],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:762,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,763],94:765,164:764,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V63,65:[1,766]},{33:768,66:59,74:79,80:$V4,245:[1,767]},{3:505,4:$VB,5:$VC,156:769},o($V83,[2,175],{72:770,145:[1,771]}),{126:[1,772]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:773,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,112]),o($V03,[2,113]),o($VO2,[2,90]),o($V03,[2,145],{110:779,120:[1,780],122:[1,781]}),o($Vc3,[2,117],{3:782,4:$VB,5:$VC,63:[1,783]}),{3:784,4:$VB,5:$VC,63:[1,785]},{33:786,66:59,74:79,80:$V4},o($Vc3,[2,124],{3:787,4:$VB,5:$VC,63:[1,788]}),o($Vc3,[2,127],{3:789,4:$VB,5:$VC,63:[1,790]}),{64:[1,791]},o($V33,[2,142]),{64:[1,792]},o($V33,[2,138]),o($V33,[2,131]),{113:$V23},{113:$V13},o($V33,[2,133]),o($V33,[2,134]),{113:[1,793]},o($V33,[2,136]),{113:[1,794]},{113:[1,795]},o($V33,[2,140]),o($V33,[2,141]),{65:[1,796],100:686,101:$VE2,103:$VF2,107:685,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,536]),o($V43,[2,541]),o($V43,[2,542]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:797,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,798],227:[1,799]},{352:[1,800]},o($V22,[2,92]),o($V52,[2,57]),o($VA,[2,461]),o($VA,[2,457]),o($VA,[2,459]),o($VA,[2,455]),o($VA,[2,326],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VR2,[2,329]),o($VR2,[2,330],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,505],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V53,[2,506]),{65:[1,801],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:802,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,294]),o($Ve1,[2,295]),o($Ve1,[2,316]),o($Ve1,[2,303]),o($Ve1,[2,305]),{152:[1,803]},o($Vx2,[2,403]),o($Vx2,[2,405]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:804,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:805,177:806,178:[1,807]},o($Ve1,[2,232]),o($Ve1,[2,233]),o($Ve1,[2,220]),{152:[1,809]},o($Ve1,[2,222]),{152:[1,810]},{3:811,4:$VB,5:$VC},o($V73,[2,406],{287:812,290:813,291:814,273:823,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V73,[2,400]),o($VA,[2,430],{63:[1,825]}),{61:$Vy2,65:[1,826]},o($VA,[2,439]),{61:$Vn3,65:[1,827]},o($Vo3,[2,169]),o($Vo3,[2,171],{225:252,142:[1,829],143:[1,830],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:831,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,832]},{61:[1,833],65:[2,372]},{33:834,66:59,74:79,80:$V4},o($Vz2,[2,397]),{61:$V_2,65:[1,835]},o($VA,[2,463]),o($V_1,[2,534],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:836,314:126,315:$V51,319:$V61},o($VZ2,[2,344]),o($VZ2,[2,345]),o($VZ2,[2,340]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:837,314:126,315:$V51,319:$V61},o($VA,[2,337]),o($VO2,[2,355]),o($Vp3,[2,158],{73:838,135:[1,839],136:[1,840],137:[1,841]}),{89:842,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:843,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,156],{128:844,61:$Vq3,134:[1,846]}),o($Vr3,[2,150]),{131:[1,847]},{64:[1,848]},{64:[1,849]},o($Vr3,[2,155],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,116]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:850,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:851,156:583},o($Vc3,[2,118]),{3:852,4:$VB,5:$VC},o($Vc3,[2,120]),{3:853,4:$VB,5:$VC},{65:[1,854]},o($Vc3,[2,125]),{3:855,4:$VB,5:$VC},o($Vc3,[2,128]),{3:856,4:$VB,5:$VC},{33:857,66:59,74:79,80:$V4},{33:858,66:59,74:79,80:$V4},o($V33,[2,135]),o($V33,[2,137]),o($V33,[2,139]),o($V12,[2,83]),o($VA,[2,560],{61:$Vn2,91:[1,859]}),{238:$Vs3,242:$Vt3,353:860},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:863,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,865],205:[1,864],227:[1,866]},o($V53,[2,510]),o($Vo2,[2,184],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,867]},o($Vz2,[2,347],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,868],139:$Vd3,177:869},{65:[1,870]},{126:[1,871]},{126:[1,872]},{65:[1,873]},{65:[1,874]},o($VA,[2,426]),o($V73,[2,399]),o($V73,[2,407],{273:823,291:875,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V62,[2,409]),{277:[1,876]},{277:[1,877]},{3:878,4:$VB,5:$VC},o($V62,[2,413]),o($V62,[2,415],{64:[1,879]}),{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:$VE,152:$VF,153:202,159:203,160:204,171:880,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V62,[2,417]),{192:[1,881]},o($V62,[2,419]),{64:[1,882]},{3:883,4:$VB,5:$VC},o($VA,$VW2,{303:884,63:$VX2}),o($VA,[2,445]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,141:885,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo3,[2,172]),{144:[1,886]},{61:$Vn3,65:[1,887]},o($VA,[2,358],{256:888,257:889,258:890,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($Vy3,$Vz3,{3:662,266:895,286:896,267:897,268:898,4:$VB,5:$VC,274:$VA3}),{65:[2,373]},{63:[1,900]},{61:$V63,65:[1,901]},o($VA,[2,335],{61:$VY2}),o($Vp3,[2,58]),{33:902,66:59,74:79,79:[1,903],80:$V4,138:[1,904]},{33:905,66:59,74:79,80:$V4,138:[1,906]},{33:907,66:59,74:79,80:$V4,138:[1,908]},o($V83,[2,177],{146:909,147:[1,910]}),o($V$2,[2,168],{61:$Vn3}),o($VC2,[2,149]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,129:911,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:912,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,913]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:914,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:915,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,143],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,144],{61:$V_2}),o($Vc3,[2,119]),o($Vc3,[2,121]),{3:916,4:$VB,5:$VC,63:[1,917]},o($Vc3,[2,126]),o($Vc3,[2,129]),{65:[1,918]},{65:[1,919]},{3:194,4:$VB,5:$VC,92:921,193:[1,920]},o($V43,[2,545]),o($V43,[2,547]),{239:[1,922]},{155:$Vl1,205:[1,923],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{243:$VB3,354:924},{312:[1,927],355:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:928,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vx2,[2,402]),o($Ve1,[2,235]),{65:[1,929]},o($Ve1,[2,236]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:930,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:931,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,221]),o($Ve1,[2,223]),o($V62,[2,408]),o($V62,[2,410]),{280:[1,932]},{64:[1,933]},{89:934,152:$VF},o($V62,[2,416]),o($V62,[2,418]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:935,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,432]),o($VA,[2,436]),o($Vo3,[2,170]),o($Vo3,[2,173],{142:[1,936]}),o($VA,[2,446]),o($VA,[2,356]),o($VA,[2,359],{258:937,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($VC3,[2,361]),o($VC3,[2,362]),{219:[1,938]},{219:[1,939]},{219:[1,940]},{61:[1,941],65:[2,371]},o($Vz2,[2,398]),o($Vz2,[2,374]),{78:[1,949],86:[1,950],269:942,270:943,271:944,272:945,273:946,275:$Vi3,276:[1,947],277:[1,951],279:[1,948]},{3:952,4:$VB,5:$VC},{33:953,66:59,74:79,80:$V4},o($VZ2,[2,343]),o($Vp3,[2,159]),{33:954,66:59,74:79,80:$V4,138:[1,955]},{33:956,66:59,74:79,80:$V4},o($Vp3,[2,161]),{33:957,66:59,74:79,80:$V4},o($Vp3,[2,162]),{33:958,66:59,74:79,80:$V4},o($V83,[2,176]),{89:959,152:$VF},o($Vr3,[2,151]),o($VC2,[2,157],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:960,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vq3,65:[1,961]},{61:$Vq3,65:[1,962]},o($Vc3,[2,122]),{3:963,4:$VB,5:$VC},{3:964,4:$VB,5:$VC,63:[1,965]},{3:966,4:$VB,5:$VC,63:[1,967]},{3:968,4:$VB,5:$VC},o($VA,[2,562],{64:[1,969]}),{3:505,4:$VB,5:$VC,156:504,240:970,241:503},{238:$Vs3,242:$Vt3,353:971},o($V43,[2,549]),{64:[1,973],245:[1,972],247:[1,974]},{205:[1,975],227:[1,976]},{205:[1,977],227:[1,978]},{155:$Vl1,205:[1,979],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Ve1,[2,237]),o([65,139],[2,238],{61:$Vq3}),{61:$Vn3,65:[2,239]},{3:980,4:$VB,5:$VC},{3:981,4:$VB,5:$VC},{61:[1,982]},{65:[1,983],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo3,[2,174]),o($VC3,[2,360]),{3:984,4:$VB,5:$VC},{89:985,152:$VF},{3:986,4:$VB,5:$VC},o($Vy3,$Vz3,{268:898,267:987,274:$VA3}),o($Vz2,[2,376]),o($Vz2,[2,377]),o($Vz2,[2,378]),o($Vz2,[2,379]),o($Vz2,[2,380]),{277:[1,988]},{277:[1,989]},o($Vz2,[2,390]),{3:990,4:$VB,5:$VC},{3:991,4:$VB,5:$VC},o($Vy3,[2,382]),o($VA,[2,462]),o($Vp3,[2,160]),{33:992,66:59,74:79,80:$V4},o($Vp3,[2,163]),o($Vp3,[2,165]),o($Vp3,[2,166]),o($V83,[2,178]),{61:$Vq3,65:[1,993]},o($Vr3,[2,153]),o($Vr3,[2,154]),o($Vc3,[2,123]),o($V03,[2,85]),{3:994,4:$VB,5:$VC},o($V03,[2,87]),{3:995,4:$VB,5:$VC},o($VA,[2,561]),{3:505,4:$VB,5:$VC,123:996,156:583},o($V43,[2,548],{61:$VQ2}),o($V43,[2,546]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:997,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:998,156:583},{245:[1,999]},{243:$VB3,354:1e3},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1001,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1004},{64:[1,1005]},{65:[1,1006]},{89:1007,152:$VF},o($V62,[2,383]),o($VC3,[2,363]),o($VC3,[2,364]),o($VC3,[2,365]),o($Vz2,[2,375]),{64:[1,1008]},{64:[1,1009]},{64:[1,1010]},{64:[1,1011]},o($Vp3,[2,164]),o($Vr3,[2,152]),o($V03,[2,86]),o($V03,[2,88]),{61:$V_2,65:[1,1012]},o($V43,[2,555],{61:$VY2}),{61:$V_2,65:[1,1013]},o($V43,[2,557]),o($V43,[2,550]),{155:$Vl1,205:[1,1014],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,553]),{155:$Vl1,205:[1,1015],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,551]),{3:1016,4:$VB,5:$VC},o($V62,[2,412]),{65:[1,1017]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1018},{3:1019,4:$VB,5:$VC,96:$VD3,278:1021},{3:505,4:$VB,5:$VC,123:1022,156:583},{3:505,4:$VB,5:$VC,123:1023,156:583},o($VA,[2,563]),{245:[1,1024],247:[1,1025]},{243:$VB3,354:1026},{238:$Vs3,242:$Vt3,353:1027},{65:[1,1028]},o($V62,[2,414]),{61:$VE3,65:[1,1029]},o($Vz2,[2,393]),o($Vz2,[2,394]),{61:$VE3,65:[1,1031]},{61:$V_2,65:[1,1032]},{61:$V_2,65:[1,1033]},{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1034,314:126,315:$V51,319:$V61},{245:[1,1035]},o($V43,[2,552]),o($V43,[2,554]),o($V62,[2,411]),o($Vz2,[2,384]),{3:1036,4:$VB,5:$VC,96:[1,1037]},{280:[1,1038]},o($Vz2,[2,391]),o($Vz2,[2,392]),o($V43,[2,556],{61:$VY2}),o($V43,[2,558]),o($Vz2,[2,395]),o($Vz2,[2,396]),{3:1039,4:$VB,5:$VC},{64:[1,1040]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1041},{61:$VE3,65:[1,1042]},o($Vz2,[2,386],{281:1043,282:1044,120:[1,1045]}),o($Vz2,[2,385]),{120:[1,1047],283:1046},{242:[1,1048]},o($Vz2,[2,387]),{238:[1,1049]},{284:[1,1050]},{284:[1,1051]},{285:[1,1052]},{285:[1,1053]},{120:[2,388]},o($Vz2,[2,389])],defaultActions:{81:[2,3],129:[2,240],130:[2,241],131:[2,242],132:[2,243],133:[2,244],134:[2,245],135:[2,246],136:[2,247],137:[2,248],166:[2,537],338:[2,538],406:[2,323],407:[2,324],408:[2,325],485:[2,539],834:[2,373],1052:[2,388]},parseError:function parseError(str,hash){if(hash.recoverable){this.trace(str) +}else{throw new Error(str)}},parse:function parse(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1;var args=lstack.slice.call(arguments,1);var lexer=Object.create(this.lexer);var sharedState={yy:{}};for(var k in this.yy){if(Object.prototype.hasOwnProperty.call(this.yy,k)){sharedState.yy[k]=this.yy[k]}}lexer.setInput(input,sharedState.yy);sharedState.yy.lexer=lexer;sharedState.yy.parser=this;if(typeof lexer.yylloc=="undefined"){lexer.yylloc={}}var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;if(typeof sharedState.yy.parseError==="function"){this.parseError=sharedState.yy.parseError}else{this.parseError=Object.getPrototypeOf(this).parseError}function popStack(n){stack.length=stack.length-2*n;vstack.length=vstack.length-n;lstack.length=lstack.length-n}_token_stack:function lex(){var token;token=lexer.lex()||EOF;if(typeof token!=="number"){token=self.symbols_[token]||token}return token}var symbol,preErrorSymbol,state,action,a,r,yyval={},p,len,newState,expected;while(true){state=stack[stack.length-1];if(this.defaultActions[state]){action=this.defaultActions[state]}else{if(symbol===null||typeof symbol=="undefined"){symbol=lex()}action=table[state]&&table[state][symbol]}if(typeof action==="undefined"||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state]){if(this.terminals_[p]&&p>TERROR){expected.push("'"+this.terminals_[p]+"'")}}if(lexer.showPosition){errStr="Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'"}else{errStr="Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'")}this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1){throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol)}switch(action[0]){case 1:stack.push(symbol);vstack.push(lexer.yytext);lstack.push(lexer.yylloc);stack.push(action[1]);symbol=null;if(!preErrorSymbol){yyleng=lexer.yyleng;yytext=lexer.yytext;yylineno=lexer.yylineno;yyloc=lexer.yylloc;if(recovering>0){recovering--}}else{symbol=preErrorSymbol;preErrorSymbol=null}break;case 2:len=this.productions_[action[1]][1];yyval.$=vstack[vstack.length-len];yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column};if(ranges){yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]}r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args));if(typeof r!=="undefined"){return r}if(len){stack=stack.slice(0,-1*len*2);vstack=vstack.slice(0,-1*len);lstack=lstack.slice(0,-1*len)}stack.push(this.productions_[action[1]][0]);vstack.push(yyval.$);lstack.push(yyval._$);newState=table[stack[stack.length-2]][stack[stack.length-1]];stack.push(newState);break;case 3:return true}}return true}};var lexer=function(){var lexer={EOF:1,parseError:function parseError(str,hash){if(this.yy.parser){this.yy.parser.parseError(str,hash)}else{throw new Error(str)}},setInput:function(input,yy){this.yy=yy||this.yy||{};this._input=input;this._more=this._backtrack=this.done=false;this.yylineno=this.yyleng=0;this.yytext=this.matched=this.match="";this.conditionStack=["INITIAL"];this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0};if(this.options.ranges){this.yylloc.range=[0,0]}this.offset=0;return this},input:function(){var ch=this._input[0];this.yytext+=ch;this.yyleng++;this.offset++;this.match+=ch;this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno++;this.yylloc.last_line++}else{this.yylloc.last_column++}if(this.options.ranges){this.yylloc.range[1]++}this._input=this._input.slice(1);return ch},unput:function(ch){var len=ch.length;var lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input;this.yytext=this.yytext.substr(0,this.yytext.length-len);this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1);this.matched=this.matched.substr(0,this.matched.length-1);if(lines.length-1){this.yylineno-=lines.length-1}var r=this.yylloc.range;this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len};if(this.options.ranges){this.yylloc.range=[r[0],r[0]+this.yyleng-len]}this.yyleng=this.yytext.length;return this},more:function(){this._more=true;return this},reject:function(){if(this.options.backtrack_lexer){this._backtrack=true}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;if(next.length<20){next+=this._input.substr(0,20-next.length)}return(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput();var c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer){backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done};if(this.options.ranges){backup.yylloc.range=this.yylloc.range.slice(0)}}lines=match[0].match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno+=lines.length}this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length};this.yytext+=match[0];this.match+=match[0];this.matches=match;this.yyleng=this.yytext.length;if(this.options.ranges){this.yylloc.range=[this.offset,this.offset+=this.yyleng]}this._more=false;this._backtrack=false;this._input=this._input.slice(match[0].length);this.matched+=match[0];token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]);if(this.done&&this._input){this.done=false}if(token){return token}else if(this._backtrack){for(var k in backup){this[k]=backup[k]}return false}return false},next:function(){if(this.done){return this.EOF}if(!this._input){this.done=true}var token,match,tempMatch,index;if(!this._more){this.yytext="";this.match=""}var rules=this._currentRules();for(var i=0;imatch[0].length)){match=tempMatch;index=i;if(this.options.backtrack_lexer){token=this.test_match(tempMatch,rules[i]);if(token!==false){return token}else if(this._backtrack){match=false;continue}else{return false}}else if(!this.options.flex){break}}}if(match){token=this.test_match(match,rules[index]);if(token!==false){return token}return false}if(this._input===""){return this.EOF}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}},lex:function lex(){var r=this.next();if(r){return r}else{return this.lex()}},begin:function begin(condition){this.conditionStack.push(condition)},popState:function popState(){var n=this.conditionStack.length-1;if(n>0){return this.conditionStack.pop()}else{return this.conditionStack[0]}},_currentRules:function _currentRules(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules}else{return this.conditions["INITIAL"].rules}},topState:function topState(n){n=this.conditionStack.length-1-Math.abs(n||0);if(n>=0){return this.conditionStack[n]}else{return"INITIAL"}},pushState:function pushState(condition){this.begin(condition)},stateStackSize:function stateStackSize(){return this.conditionStack.length},options:{"case-insensitive":true},performAction:function anonymous(yy,yy_,$avoiding_name_collisions,YY_START){var YYSTATE=YY_START;switch($avoiding_name_collisions){case 0:return 166;break;case 1:return 198;break;case 2:return 315;break;case 3:return 5;break;case 4:return 5;break;case 5:return 191;break;case 6:return 191;break;case 7:return 96;break;case 8:return 96;break;case 9:return;break;case 10:return;break;case 11:break;case 12:return 228;break;case 13:return 227;break;case 14:return"ABSOLUTE";break;case 15:return 285;break;case 16:return 298;break;case 17:return 186;break;case 18:return 79;break;case 19:return 295;break;case 20:return 227;break;case 21:return 119;break;case 22:return 237;break;case 23:return 102;break;case 24:return 187;break;case 25:return 63;break;case 26:return 313;break;case 27:return 142;break;case 28:return 300;break;case 29:return 260;break;case 30:return 260;break;case 31:return 183;break;case 32:return 332;break;case 33:return 232;break;case 34:return 336;break;case 35:return 233;break;case 36:return 208;break;case 37:return 126;break;case 38:return 199;break;case 39:return 168;break;case 40:return 261;break;case 41:return 275;break;case 42:return"CLOSE";break;case 43:return 143;break;case 44:return"COLUMN";break;case 45:return"COLUMNS";break;case 46:return"COMMIT";break;case 47:return"CONSTRAINT";break;case 48:return"CONTINUE";break;case 49:return"CONVERT";break;case 50:return"CORRESPONDING";break;case 51:return"COUNT";break;case 52:return 251;break;case 53:return"CROSS";break;case 54:return 133;break;case 55:return"CURRENT_TIMESTAMP";break;case 56:return"CURSOR";break;case 57:return 301;break;case 58:return 306;break;case 59:return 340;break;case 60:return 247;break;case 61:return 242;break;case 62:return"DELETED";break;case 63:return 142;break;case 64:return 302;break;case 65:return 75;break;case 66:return 293;break;case 67:return 202;break;case 68:return 259;break;case 69:return 289;break;case 70:return 206;break;case 71:return 136;break;case 72:return 194;break;case 73:return 13;break;case 74:return 190;break;case 75:return"FETCH";break;case 76:return 184;break;case 77:return 279;break;case 78:return 97;break;case 79:return 11;break;case 80:return 125;break;case 81:return 130;break;case 82:return 134;break;case 83:return 310;break;case 84:return 264;break;case 85:return 292;break;case 86:return 234;break;case 87:return 230;break;case 88:return 86;break;case 89:return 114;break;case 90:return 243;break;case 91:return"INSERTED";break;case 92:return 137;break;case 93:return 91;break;case 94:return 113;break;case 95:return 277;break;case 96:return 185;break;case 97:return 115;break;case 98:return 207;break;case 99:return 145;break;case 100:return 312;break;case 101:return"MATCHED";break;case 102:return 84;break;case 103:return"MAX";break;case 104:return"MERGE";break;case 105:return"MIN";break;case 106:return"EXCEPT";break;case 107:return"MODIFY";break;case 108:return 112;break;case 109:return"NEXT";break;case 110:return 167;break;case 111:return 144;break;case 112:return 284;break;case 113:return 229;break;case 114:return 192;break;case 115:return 328;break;case 116:return 120;break;case 117:return 147;break;case 118:return"OPEN";break;case 119:return 228;break;case 120:return 139;break;case 121:return 103;break;case 122:return 175;break;case 123:return 178;break;case 124:return 90;break;case 125:return 15;break;case 126:return 276;break;case 127:return 337;break;case 128:return"PRIOR";break;case 129:return 14;break;case 130:return 87;break;case 131:return"REDUCE";break;case 132:return 280;break;case 133:return"RELATIVE";break;case 134:return 296;break;case 135:return 338;break;case 136:return"RESTORE";break;case 137:return 116;break;case 138:return 331;break;case 139:return 132;break;case 140:return 82;break;case 141:return 301;break;case 142:return 306;break;case 143:return 80;break;case 144:return 118;break;case 145:return 239;break;case 146:return 131;break;case 147:return 305;break;case 148:return 236;break;case 149:return"STORE";break;case 150:return"SUM";break;case 151:return 253;break;case 152:return 307;break;case 153:return 355;break;case 154:return 150;break;case 155:return 263;break;case 156:return 262;break;case 157:return 85;break;case 158:return 151;break;case 159:return 205;break;case 160:return 297;break;case 161:return 88;break;case 162:return"TRAN";break;case 163:return 330;break;case 164:return 189;break;case 165:return 343;break;case 166:return 135;break;case 167:return 78;break;case 168:return 238;break;case 169:return 304;break;case 170:return 122;break;case 171:return 81;break;case 172:return 245;break;case 173:return 309;break;case 174:return 204;break;case 175:return 124;break;case 176:return 334;break;case 177:return 59;break;case 178:return 330;break;case 179:return 152;break;case 180:return 152;break;case 181:return 214;break;case 182:return 209;break;case 183:return 210;break;case 184:return 155;break;case 185:return 211;break;case 186:return 212;break;case 187:return 224;break;case 188:return 221;break;case 189:return 223;break;case 190:return 220;break;case 191:return 216;break;case 192:return 215;break;case 193:return 218;break;case 194:return 222;break;case 195:return 217;break;case 196:return 219;break;case 197:return 222;break;case 198:return 64;break;case 199:return 65;break;case 200:return 193;break;case 201:return 319;break;case 202:return 321;break;case 203:return 323;break;case 204:return 106;break;case 205:return 61;break;case 206:return 235;break;case 207:return 196;break;case 208:return 9;break;case 209:return 195;break;case 210:return 197;break;case 211:return 213;break;case 212:return 4;break;case 213:return 8;break;case 214:return"INVALID";break}},rules:[/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEMP\b)/i,/^(?:TEMPORARY\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],inclusive:true}}};return lexer}();parser.lexer=lexer;function Parser(){this.yy={}}Parser.prototype=parser;parser.Parser=Parser;return new Parser}();if(typeof require!=="undefined"&&typeof exports!=="undefined"){exports.parser=parser;exports.Parser=parser.Parser;exports.parse=function(){return parser.parse.apply(parser,arguments)};exports.main=function commonjsMain(args){if(!args[1]){console.log("Usage: "+args[0]+" FILE");process.exit(1)}var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)};if(typeof module!=="undefined"&&require.main===module){exports.main(process.argv.slice(1))}}alasql.prettyflag=false;alasql.pretty=function(sql,flag){var pf=alasql.prettyflag;alasql.prettyflag=!flag;var s=alasql.parse(sql).toString();alasql.prettyflag=pf;return s};function K(s){if(alasql.prettyflag){return''+s.toUpperCase()+""}else{return s}}function P(s){if(alasql.prettyflag){return''+s+""}else{return s}}function L(s){if(alasql.prettyflag){return''+s+""}else{return s}}function N(s){if(alasql.prettyflag){return''+s+""}else{return s}}function S(s){if(alasql.prettyflag){return''+s+""}else{return s}}function NL(){if(alasql.prettyflag){return"
"}else{return" "}}function ID(){if(alasql.prettyflag){return"     "}else{return""}}var utils=alasql.utils={};function returnTrue(){return true}function returnUndefined(){}var escapeq=utils.escapeq=function(s){return s.replace(/\'/g,"\\'")};var escapeqq=utils.undoubleq=function(s){return s.replace(/(\')/g,"''")};var doubleq=utils.doubleq=function(s){return s.replace(/(\'\')/g,"\\'")};var doubleqq=utils.doubleqq=function(s){return s.replace(/\'/g,"'")};var cutbom=function(s){if(s[0]==String.fromCharCode(65279))s=s.substr(1);return s};var loadFile=utils.loadFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(!path){var buff="";process.stdin.setEncoding("utf8");process.stdin.on("readable",function(){var chunk=process.stdin.read();if(chunk!==null){buff+=chunk.toString()}});process.stdin.on("end",function(){success(cutbom(buff))})}else{if(asy){fs.readFile(path,function(err,data){if(err){throw err}success(cutbom(data.toString()))})}else{var data=fs.readFileSync(path);success(cutbom(data.toString()))}}}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.file(function(file){var fileReader=new FileReader;fileReader.onloadend=function(e){success(cutbom(this.result))};fileReader.readAsText(file)})})})}else{if(typeof path=="string"){if(path.substr(0,1)=="#"&&typeof document!="undefined"){var data=document.querySelector(path).textContent;success(data)}else{var xhr=new XMLHttpRequest;xhr.onreadystatechange=function(){if(xhr.readyState===XMLHttpRequest.DONE){if(xhr.status===200){if(success)success(cutbom(xhr.responseText))}else{if(error)error(xhr)}}};xhr.open("GET",path,asy);xhr.send()}}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(cutbom(data))};reader.readAsText(files[0])}}};var loadBinaryFile=utils.loadBinaryFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(asy){fs.readFile(path,function(err,data){if(err){throw err}var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))})}else{var data=fs.readFileSync(path);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))}}else{if(typeof path=="string"){var xhr=new XMLHttpRequest;xhr.open("GET",path,asy);xhr.responseType="arraybuffer";xhr.onload=function(){var data=new Uint8Array(xhr.response);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))};xhr.send()}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(data)};reader.readAsBinaryString(files[0])}}};var removeFile=utils.removeFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.remove(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.remove(cb);if(cb)cb()},function(){if(cb)cb()})})}else{throw new Error("You can remove files only in Node.js and Apache Cordova")}};var deleteFile=utils.deleteFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.unlink(path,cb)}};var fileExists=utils.fileExists=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.exists(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){cb(true)},function(){cb(false)})})}else{throw new Error("You can use exists() only in Node.js or Apach Cordova")}};var saveFile=utils.saveFile=function(path,data,cb){var res=1;if(typeof path=="undefined"){res=data;if(cb)res=cb(res)}else{if(typeof exports=="object"){var fs=require("fs");var data=fs.writeFileSync(path,data);if(cb)res=cb(res)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:true},function(fileEntry){fileEntry.createWriter(function(fileWriter){fileWriter.onwriteend=function(){if(cb)res=cb(res)};fileWriter.write(data)})})})}else{var blob=new Blob([data],{type:"text/plain;charset=utf-8"});saveAs(blob,path);if(cb)res=cb(res)}}return res};var hash=utils.hash=function hash(str){var h=0;if(str.length==0)return h;for(var i=0;i=26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr;if(i>26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr}}return addr};var xlscn=utils.xlscn=function(s){var n=s.charCodeAt(0)-65;if(s.length>1){n=(n+1)*26+s.charCodeAt(1)-65;if(s.length>2){n=(n+1)*26+s.charCodeAt(2)-65}}return n};var domEmptyChildren=utils.domEmptyChildren=function(container){var len=container.childNodes.length;while(len--){container.removeChild(container.lastChild)}};alasql.utils.uncomment=function uncomment(str){str=("__"+str+"__").split("");var quote=false,quoteSign,blockComment=false,lineComment=false;for(var i=0,l=str.length;ialasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement}var res=alasql.res=statement(params,cb,scope);return res}else{alasql.precompile(ast.statements[0],alasql.useid,params);var res=alasql.res=ast.statements[0].execute(databaseid,params,cb,scope);return res}}else{if(cb){alasql.adrun(databaseid,ast,params,cb,scope)}else{return alasql.drun(databaseid,ast,params,cb,scope)}}};alasql.drun=function(databaseid,ast,params,cb,scope){var useid=alasql.useid;if(useid!=databaseid)alasql.use(databaseid);var res=[];for(var i=0,ilen=ast.statements.length;i=0){var source=query.sources[idx];source.data=data;if(typeof source.data=="function"){source.getfn=source.data;source.dontcache=source.getfn.dontcache;if(source.joinmode=="OUTER"||source.joinmode=="RIGHT"||source.joinmode=="ANTI"){source.dontcache=false}source.data={}}}else{query.queriesdata[-idx-1]=flatArray(data)}query.sourceslen--;if(query.sourceslen>0)return;return queryfn3(query)}function queryfn3(query){var scope=query.scope;preIndex(query);query.data=[];query.xgroups={};query.groups=[];var h=0;doJoin(query,scope,h);if(query.groupfn){query.data=[];if(query.groups.length==0){var g={};if(query.selectGroup.length>0){query.selectGroup.forEach(function(sg){if(sg.aggregatorid=="COUNT"||sg.aggregatorid=="SUM"){g[sg.nick]=0}else{g[sg.nick]=undefined}})}query.groups=[g]}for(var i=0,ilen=query.groups.length;i0){for(var i=0,ilen=query.data.length;i0&&source.optimization=="ix"&&source.onleftfn&&source.onrightfn){if(source.databaseid&&alasql.databases[source.databaseid].tables[source.tableid]){if(!alasql.databases[source.databaseid].tables[source.tableid].indices)query.database.tables[source.tableid].indices={};var ixx=alasql.databases[source.databaseid].tables[source.tableid].indices[hash(source.onrightfns+"`"+source.srcwherefns)];if(!alasql.databases[source.databaseid].tables[source.tableid].dirty&&ixx){source.ix=ixx}}if(!source.ix){source.ix={};var scope={};var i=0;var ilen=source.data.length;var dataw;while((dataw=source.data[i])||source.getfn&&(dataw=source.getfn(i))||i=query.sources.length){if(query.wherefn(scope,query.params,alasql)){if(query.groupfn){query.groupfn(scope,query.params,query.alasql)}else{query.data.push(query.selectfn(scope,query.params,alasql))}}}else if(query.sources[h].applyselect){var source=query.sources[h];source.applyselect(query.params,function(data){if(data.length>0){for(var i=0;i0){s+=NL()+ID()+K("GROUP BY")+" "+this.group.map(function(grp){return grp.toString()}).join(", ")}if(this.having)s+=NL()+ID()+K("HAVING")+" "+this.having.toString();if(this.order&&this.order.length>0){s+=NL()+ID()+K("ORDER BY")+" "+this.order.map(function(ord){return ord.toString()}).join(", ")}if(this.limit)s+=NL()+ID()+K("LIMIT")+" "+this.limit.value;if(this.offset)s+=NL()+ID()+K("OFFSET")+" "+this.offset.value;if(this.union)s+=NL()+K("UNION")+NL()+this.union.toString();if(this.unionall)s+=NL()+K("UNION ALL")+NL()+this.unionall.toString();if(this.except)s+=NL()+K("EXCEPT")+NL()+this.except.toString();if(this.intersect)s+=NL()+K("INTERSECT")+NL()+this.intersect.toString();return s};yy.Select.prototype.toJavaScript=function(context,tableid,defcols){var s="alasql.utils.flatArray(this.queriesfn["+(this.queriesidx-1)+"](this.params,null,"+context+"))[0]";return s};yy.Select.prototype.compile=function(databaseid){var db=alasql.databases[databaseid];var query=new Query;query.removeKeys=[];query.explain=this.explain;query.explaination=[];query.explid=1;query.modifier=this.modifier;query.database=db;this.compileWhereExists(query);this.compileQueries(query);query.defcols=this.compileDefCols(query,databaseid);query.fromfn=this.compileFrom(query);if(this.joins)this.compileJoins(query);this.compileSelectGroup0(query);if(this.group||query.selectGroup.length>0){query.selectgfns=this.compileSelectGroup1(query)}else{query.selectfns=this.compileSelect1(query)}if(this.where)this.compileWhereJoins(query);query.wherefn=this.compileWhere(query);if(this.group||query.selectGroup.length>0)query.groupfn=this.compileGroup(query);if(this.having)query.havingfn=this.compileHaving(query);if(this.group||query.selectGroup.length>0){query.selectgfn=this.compileSelectGroup2(query)}else{query.selectfn=this.compileSelect2(query)}query.distinct=this.distinct;if(this.order)query.orderfn=this.compileOrder(query);if(this.top){query.limit=this.top.value}else if(this.limit){query.limit=this.limit.value;if(this.offset){query.offset=this.offset.value}}query.percent=this.percent;if(this.union){query.unionfn=this.union.compile(databaseid);if(this.union.order){query.orderfn=this.union.compileOrder(query)}else{query.orderfn=null}}else if(this.unionall){query.unionallfn=this.unionall.compile(databaseid);if(this.unionall.order){query.orderfn=this.unionall.compileOrder(query)}else{query.orderfn=null}}else if(this.except){query.exceptfn=this.except.compile(databaseid);if(this.except.order){query.orderfn=this.except.compileOrder(query)}else{query.orderfn=null}}else if(this.intersect){query.intersectfn=this.intersect.compile(databaseid);if(this.intersect.order){query.intersectfn=this.intersect.compileOrder(query)}else{query.orderfn=null}}if(this.into){if(this.into instanceof yy.Table){if(alasql.options.autocommit&&alasql.databases[this.into.databaseid||databaseid].engineid){query.intoallfns='return alasql.engines["'+alasql.databases[this.into.databaseid||databaseid].engineid+'"]'+'.intoTable("'+(this.into.databaseid||databaseid)+'","'+this.into.tableid+'",this.data, columns, cb);'}else{query.intofns="alasql.databases['"+(this.into.databaseid||databaseid)+"'].tables"+"['"+this.into.tableid+"'].data.push(r);"}}else if(this.into instanceof yy.VarValue){query.intoallfns='alasql.vars["'+this.into.variable+'"]=this.data;res=this.data.length;if(cb)res=cb(res);return res;'}else if(this.into instanceof yy.FuncValue){var qs="return alasql.into['"+this.into.funcid.toUpperCase()+"'](";if(this.into.args&&this.into.args.length>0){qs+=this.into.args[0].toJavaScript()+",";if(this.into.args.length>1){qs+=this.into.args[1].toJavaScript()+","}else{qs+="undefined,"}}else{qs+="undefined, undefined,"}query.intoallfns=qs+"this.data,columns,cb)"}else if(this.into instanceof yy.ParamValue){query.intofns="params['"+this.into.param+"'].push(r)"}if(query.intofns){query.intofn=new Function("r,i,params,alasql",query.intofns)}else if(query.intoallfns){query.intoallfn=new Function("columns,cb,params,alasql",query.intoallfns)}}var statement=function(params,cb,oldscope){query.params=params;var res1=queryfn(query,oldscope,function(res){var res2=modify(query,res);if(cb)cb(res2);return res2});return res1};statement.query=query;return statement};function modify(query,res){if(query.modifier=="VALUE"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];res=res[0][key]}else{res=undefined}}if(query.modifier=="ROW"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var a=[];for(var key in res[0]){a.push(res[0][key])}res=a}else{res=undefined}}if(query.modifier=="COLUMN"){var ar=[];if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];for(var i=0,ilen=res.length;i0){key=query.columns[0].columnid;val=query.columns[1].columnid}else{var okeys=Object.keys(res[0]);key=okeys[0];val=okeys[1]}for(var i=0,ilen=res.length;i0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var s="";for(var i=0,ilen=res.length;i0){if(tq.args[0]){s+=tq.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(tq.args[1]){s+=tq.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s)}else if(tq instanceof yy.FromData){source.datafn=function(query,params,cb,idx,alasql){var res=tq.data;if(cb)res=cb(res,idx,query);return res}}else{throw new Error("Wrong table at FROM")}query.sources.push(source)});query.defaultTableid=query.sources[0].alias};alasql.prepareFromData=function(data,array){var res=data;if(typeof data=="string"){res=data.split(/\r?\n/);if(array){for(var i=0,ilen=res.length;i0){if(jn.args[0]){s+=jn.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(jn.args[1]){s+=jn.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s);query.aliases[source.alias]={type:"funcvalue"}}var alias=source.alias;if(jn.natural){if(jn.using||jn.on){throw new Error("NATURAL JOIN cannot have USING or ON clauses")}else{if(query.sources.length>0){var prevSource=query.sources[query.sources.length-1];var prevTable=alasql.databases[prevSource.databaseid].tables[prevSource.tableid];var table=alasql.databases[source.databaseid].tables[source.tableid];if(prevTable&&table){var c1=prevTable.columns.map(function(col){return col.columnid});var c2=table.columns.map(function(col){return col.columnid});jn.using=arrayIntersect(c1,c2).map(function(colid){return{columnid:colid}})}else{throw new Error("In this version of Alasql NATURAL JOIN "+"works for tables with predefined columns only")}}}}if(jn.using){var prevSource=query.sources[query.sources.length-1];source.onleftfns=jn.using.map(function(col){return"p['"+(prevSource.alias||prevSource.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfns=jn.using.map(function(col){return"p['"+(source.alias||source.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.optimization="ix"}else if(jn.on){if(jn.on instanceof yy.Op&&jn.on.op=="="&&!jn.on.allsome){source.optimization="ix";var lefts="";var rights="";var middles="";var middlef=false;var ls=jn.on.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=jn.on.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+alias+"']")>-1&&!(rs.indexOf("p['"+alias+"']")>-1)){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=ls}else{middlef=true}}else if(!(ls.indexOf("p['"+alias+"']")>-1)&&rs.indexOf("p['"+alias+"']")>-1){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=ls}else{middlef=true}}else{middlef=true}if(rs.indexOf("p['"+alias+"']")>-1&&!(ls.indexOf("p['"+alias+"']")>-1)){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=rs}else{middlef=true}}else if(!(rs.indexOf("p['"+alias+"']")>-1)&&ls.indexOf("p['"+alias+"']")>-1){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=rs}else{middlef=true}}else{middlef=true}if(middlef){rights="";lefts="";middles=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.optimization="no"}source.onleftfns=lefts;source.onrightfns=rights;source.onmiddlefns=middles||"true";source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.onmiddlefn=new Function("p,params,alasql","return "+source.onmiddlefns)}else{source.optimization="no";source.onmiddlefns=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.onmiddlefn=new Function("p,params,alasql","return "+jn.on.toJavaScript("p",query.defaultTableid,query.defcols))}}query.sources.push(source)}})};yy.Select.prototype.compileWhere=function(query){if(this.where){if(typeof this.where=="function"){return this.where}else{s=this.where.toJavaScript("p",query.defaultTableid,query.defcols);query.wherefns=s;return new Function("p,params,alasql","return "+s)}}else return function(){return true}};yy.Select.prototype.compileWhereJoins=function(query){return;optimizeWhereJoin(query,this.where.expression);query.sources.forEach(function(source){if(source.srcwherefns){source.srcwherefn=new Function("p,params,alasql","return "+source.srcwherefns)}if(source.wxleftfns){source.wxleftfn=new Function("p,params,alasql","return "+source.wxleftfns)}if(source.wxrightfns){source.wxrightfn=new Function("p,params,alasql","return "+source.wxrightfns)}})};function optimizeWhereJoin(query,ast){if(!ast)return false;if(!(ast instanceof yy.Op))return;if(ast.op!="="&&ast.op!="AND")return;if(ast.allsome)return;var s=ast.toJavaScript("p",query.defaultTableid,query.defcols);var fsrc=[];query.sources.forEach(function(source,idx){if(source.tableid){if(s.indexOf("p['"+source.alias+"']")>-1)fsrc.push(source)}});if(fsrc.length==0){return}else if(fsrc.length==1){if(!(s.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+fsrc[0].alias+"']"})){return}var src=fsrc[0];src.srcwherefns=src.srcwherefns?src.srcwherefns+"&&"+s:s;if(ast instanceof yy.Op&&(ast.op=="="&&!ast.allsome)){if(ast.left instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(rs.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=ls;fsrc[0].wxrightfns=rs}}if(ast.right instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=rs; +fsrc[0].wxrightfns=ls}}}ast.reduced=true;return}else{if(ast.op="AND"){optimizeWhereJoin(query,ast.left);optimizeWhereJoin(query,ast.right)}}}yy.Select.prototype.compileGroup=function(query){var self=this;if(query.sources.length>0){var tableid=query.sources[0].alias}else{var tableid=""}var defcols=query.defcols;var allgroup=[[]];if(this.group){allgroup=decartes(this.group,query)}var allgroups=[];allgroup.forEach(function(a){allgroups=arrayUnion(allgroups,a)});query.allgroups=allgroups;if(false){allgroups.forEach(function(col2){if(query.selectColumns[colid]){}else{var tmpid="default";if(query.sources.length>0)tmpid=query.sources[0].alias;if(Object.keys(query.selectColumns).length!=0)query.removeKeys.push(colid);query.selectfns+="r['"+escapeq(colid)+"']="+new yy.Column({columnid:colid}).toJavaScript("p",tmpid)+";"}})}var s="";allgroup.forEach(function(agroup){s+="var g=this.xgroups[";var rg=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"1";else return coljs});if(rg.length==0)rg=["''"];s+=rg.join('+"`"+');s+="];if(!g) {this.groups.push((g=this.xgroups[";s+=rg.join('+"`"+');s+="] = {";s+=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"";else return"'"+columnid+"':"+coljs+","}).join("");var neggroup=arrayDiff(allgroups,agroup);s+=neggroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];return"'"+columnid+"':null,"}).join("");var aft="";s+=query.selectGroup.map(function(col,idx){var colexp=col.expression.toJavaScript("p",tableid,defcols);var colas=col.nick;if(col instanceof yy.AggrValue){if(col.distinct){aft+=",g['$$_VALUES_"+colas+"']={},g['$$_VALUES_"+colas+"']["+colexp+"]=true"}if(col.aggregatorid=="SUM"||col.aggregatorid=="MIN"||col.aggregatorid=="MAX"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"){return"'"+colas+"':"+colexp+","}else if(col.aggregatorid=="ARRAY"){return"'"+colas+"':["+colexp+"],"}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*"){return"'"+colas+"':1,"}else{return"'"+colas+"':(typeof "+colexp+' != "undefined")?1:0,'}}else if(col.aggregatorid=="AVG"){query.removeKeys.push("_SUM_"+colas);query.removeKeys.push("_COUNT_"+colas);return"'"+colas+"':"+colexp+",'_SUM_"+colas+"':"+colexp+",'_COUNT_"+colas+"':1,"}else if(col.aggregatorid=="AGGR"){aft+=",g['"+colas+"']="+col.expression.toJavaScript("g",-1);return""}else if(col.aggregatorid=="REDUCE"){return"'"+colas+"':alasql.aggr['"+col.funcid+"']("+colexp+"),"}return""}else return""}).join("");s+="}"+aft+",g));} else {";s+=query.selectGroup.map(function(col,idx){var colas=col.nick;var colexp=col.expression.toJavaScript("p",tableid,defcols);if(col instanceof yy.AggrValue){if(col.distinct){var pre="if(typeof "+colexp+'!="undefined" && (!g[\'$$_VALUES_'+colas+"']["+colexp+"])) {";var post="g['$$_VALUES_"+colas+"']["+colexp+"]=true;}"}else{var pre="",post=""}if(col.aggregatorid=="SUM"){return pre+"g['"+colas+"']+="+colexp+";"+post}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*")return pre+"g['"+colas+"']++;"+post;else{return pre+"if(typeof "+colexp+'!="undefined") g[\''+colas+"']++;"+post}}else if(col.aggregatorid=="ARRAY"){return pre+"g['"+colas+"'].push("+colexp+");"+post}else if(col.aggregatorid=="MIN"){return pre+"g['"+colas+"']=Math.min(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="MAX"){return pre+"g['"+colas+"']=Math.max(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="FIRST"){return""}else if(col.aggregatorid=="LAST"){return pre+"g['"+colas+"']="+colexp+";"+post}else if(col.aggregatorid=="AVG"){return pre+"g['_SUM_"+colas+"']+="+colexp+";"+"g['_COUNT_"+colas+"']++;"+"g['"+colas+"']=g['_SUM_"+colas+"']/g['_COUNT_"+colas+"'];"+post}else if(col.aggregatorid=="AGGR"){return pre+"g['"+colas+"']="+col.expression.toJavaScript("g",-1)+";"+post}else if(col.aggregatorid=="REDUCE"){return pre+"g['"+colas+"']=alasql.aggr."+col.funcid+"("+colexp+",g['"+colas+"']);"+post}return""}else return""}).join("");s+="}"});return new Function("p,params,alasql",s)};function compileSelectStar(query,alias){var s="",sp="",ss=[];if(query.aliases[alias].tableid){var columns=alasql.databases[query.aliases[alias].databaseid].tables[query.aliases[alias].tableid].columns}if(columns&&columns.length>0){columns.forEach(function(tcol){ss.push("'"+tcol.columnid+"':p['"+alias+"']['"+tcol.columnid+"']");query.selectColumns[escapeq(tcol.columnid)]=true;var coldef={columnid:tcol.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbprecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef})}else{sp+='var w=p["'+alias+'"];for(var k in w){r[k]=w[k]};';query.dirtyColumns=true}return{s:ss.join(","),sp:sp}}yy.Select.prototype.compileSelect1=function(query){var self=this;query.columns=[];query.xcolumns={};query.selectColumns={};query.dirtyColumns=false;var s="var r={";var sp="";var ss=[];this.columns.forEach(function(col){if(col instanceof yy.Column){if(col.columnid=="*"){if(col.func){sp+="r=params['"+col.param+"'](p['"+query.sources[0].alias+"'],p,params,alasql);"}else if(col.tableid){var ret=compileSelectStar(query,col.tableid);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}else{for(var alias in query.aliases){var ret=compileSelectStar(query,alias);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}}}else{var tbid=col.tableid;var dbid=col.databaseid||query.sources[0].databaseid||query.database.databaseid;if(!tbid)tbid=query.defcols[col.columnid];if(!tbid)tbid=query.defaultTableid;if(col.columnid!="_"){ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']['"+col.columnid+"']")}else{ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']")}query.selectColumns[escapeq(col.as||col.columnid)]=true;if(query.aliases[tbid]&&query.aliases[tbid].type=="table"){if(!alasql.databases[dbid].tables[query.aliases[tbid].tableid]){throw new Error("Table '"+tbid+"' does not exists in database")}var columns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].columns;var xcolumns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].xcolumns;if(xcolumns&&columns.length>0){var tcol=xcolumns[col.columnid];var coldef={columnid:col.as||col.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbpecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}else{query.dirtyColumns=true}}else{}}}else if(col instanceof yy.AggrValue){if(!self.group){self.group=[""]}if(!col.as)col.as=escapeq(col.toString());if(col.aggregatorid=="SUM"||col.aggregatorid=="MAX"||col.aggregatorid=="MIN"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"||col.aggregatorid=="AVG"||col.aggregatorid=="ARRAY"||col.aggregatorid=="REDUCE"){ss.push("'"+escapeq(col.as)+"':"+col.expression.toJavaScript("p",query.defaultTableid,query.defcols))}else if(col.aggregatorid=="COUNT"){ss.push("'"+escapeq(col.as)+"':1")}query.selectColumns[col.aggregatorid+"("+escapeq(col.expression.toString())+")"]=thtd}else{ss.push("'"+escapeq(col.as||col.columnid||col.toString())+"':"+col.toJavaScript("p",query.defaultTableid,query.defcols));query.selectColumns[escapeq(col.as||col.columnid||col.toString())]=true}});s+=ss.join(",")+"};"+sp;return s};yy.Select.prototype.compileSelect2=function(query){var s=query.selectfns;return new Function("p,params,alasql",s+"return r")};yy.Select.prototype.compileSelectGroup0=function(query){var self=this;self.columns.forEach(function(col,idx){if(col instanceof yy.Column&&col.columnid=="*"){}else{var colas;if(col instanceof yy.Column){colas=escapeq(col.columnid)}else{colas=escapeq(col.toString())}for(var i=0;irb)return 1;if(ra==rb)return 0;return-1}}var s="";var sk="";this.order.forEach(function(ord,idx){var dg="";if(ord.expression instanceof yy.NumValue){ord.expression=self.columns[ord.expression.value-1]}if(ord.expression instanceof yy.Column){var columnid=ord.expression.columnid;if(query.xcolumns[columnid]){var dbtypeid=query.xcolumns[columnid].dbtypeid;if(dbtypeid=="DATE"||dbtypeid=="DATETIME")dg=".valueOf()"}else{if(alasql.options.valueof)dg=".valueOf()"}if(ord.nocase)dg+=".toUpperCase()";s+="if(a['"+columnid+"']"+dg+(ord.direction=="ASC"?">":"<")+"b['"+columnid+"']"+dg+")return 1;";s+="if(a['"+columnid+"']"+dg+"==b['"+columnid+"']"+dg+"){"}else{dg=".valueOf()";if(ord.nocase)dg+=".toUpperCase()";s+="if("+ord.toJavaScript("a","")+dg+(ord.direction=="ASC"?">":"<")+ord.toJavaScript("b","")+dg+")return 1;";s+="if("+ord.toJavaScript("a","")+dg+"=="+ord.toJavaScript("b","")+dg+"){"}sk+="}"});s+="return 0;";s+=sk+"return -1";query.orderfns=s;return new Function("a,b",s)}};var rollup=function(a,query){var rr=[];var mask=0;var glen=a.length;for(var g=0;g"){var s=this.left.toString()+"->";if(typeof this.right!="string"&&typeof this.right!="number")s+="(";s+=this.right.toString();if(typeof this.right!="string"&&typeof this.right!="number")s+=")";return s}return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+" ":"")+this.right.toString()};yy.Op.prototype.findAggregator=function(query){if(this.left&&this.left.findAggregator)this.left.findAggregator(query);if(this.right&&this.right.findAggregator&&!this.allsome){this.right.findAggregator(query)}};yy.Op.prototype.toType=function(tableid){if(["-","*","/","%","^"].indexOf(this.op)>-1)return"number";if(this.op=="+"){if(this.left.toType(tableid)=="string"||this.right.toType(tableid)=="string")return"string";if(this.left.toType(tableid)=="number"||this.right.toType(tableid)=="number")return"number"}if(["AND","OR","NOT","=","==","===","!=","!==","!===",">",">=","<","<=","IN","NOT IN","LIKE","NOT LIKE"].indexOf(this.op)>-1)return"boolean";if(this.op=="BETWEEN"||this.op=="NOT BETWEEN"||this.op=="IS NULL"||this.op=="IS NOT NULL")return"boolean";if(this.allsome)return"boolean";if(!this.op)return this.left.toType();return"unknown"};yy.Op.prototype.toJavaScript=function(context,tableid,defcols){var op=this.op;if(this.op=="=")op="===";else if(this.op=="<>")op="!=";else if(this.op=="OR")op="||";if(this.op=="->"){if(typeof this.right=="string"){return this.left.toJavaScript(context,tableid,defcols)+'["'+this.right+'"]'}else if(typeof this.right=="number"){return this.left.toJavaScript(context,tableid,defcols)+"["+this.right+"]"}else if(this.right instanceof yy.FuncValue){ss=[];if(!this.right.args||this.right.args.length==0){}else{var ss=this.right.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)})}return this.left.toJavaScript(context,tableid,defcols)+"['"+this.right.funcid+"']("+ss.join(",")+")"}else{return this.left.toJavaScript(context,tableid,defcols)+"["+this.right.toJavaScript(context,tableid,defcols)+"]"}}if(this.op=="IS"){return"((typeof "+this.left.toJavaScript(context,tableid,defcols)+"=='undefined') == "+"(typeof "+this.right.toJavaScript(context,tableid,defcols)+"=='undefined'))"}if(this.op=="=="){return"alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}if(this.op=="==="){return"(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!==="){return"!(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!=="){return"(!alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+"))"}if(this.op=="LIKE"){var s="("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g'))";return s}if(this.op=="NOT LIKE"){var s="!(("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g')))";return s}if(this.op=="BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong BETWEEN operator without AND part")}}if(this.op=="NOT BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"!(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong NOT BETWEEN operator without AND part")}}if(this.op=="IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else{var s="("+this.right.toJavaScript(context,tableid,defcols)+".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}}if(this.op=="NOT IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="ALL"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="SOME"||this.allsome=="ANY"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.op=="AND"){if(this.left.reduced){if(this.right.reduced){return"true"}else{return this.right.toJavaScript(context,tableid,defcols)}}else if(this.right.reduced){return this.left.toJavaScript(context,tableid,defcols)}op="&&"}if(this.op=="^"){return"Math.pow("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}return"("+this.left.toJavaScript(context,tableid,defcols)+op+this.right.toJavaScript(context,tableid,defcols)+")"};yy.VarValue=function(params){return yy.extend(this,params)};yy.VarValue.prototype.toString=function(){return"@"+L(this.variable)};yy.VarValue.prototype.toType=function(){return"unknown"};yy.VarValue.prototype.toJavaScript=function(){return"alasql.vars['"+this.variable+"']"};yy.NumValue=function(params){return yy.extend(this,params)};yy.NumValue.prototype.toString=function(){return N(this.value.toString())};yy.NumValue.prototype.toType=function(){return"number"};yy.NumValue.prototype.toJavaScript=function(){return""+this.value};yy.StringValue=function(params){return yy.extend(this,params)};yy.StringValue.prototype.toString=function(){return"'"+S(this.value.toString())+"'"};yy.StringValue.prototype.toType=function(){return"string"};yy.StringValue.prototype.toJavaScript=function(){return"'"+escapeq(this.value)+"'"};yy.LogicValue=function(params){return yy.extend(this,params)};yy.LogicValue.prototype.toString=function(){return this.value?"TRUE":"FALSE"};yy.LogicValue.prototype.toType=function(){return"boolean"};yy.LogicValue.prototype.toJavaScript=function(){return this.value?"true":"false"};yy.NullValue=function(params){return yy.extend(this,params)};yy.NullValue.prototype.toString=function(){return"NULL"};yy.NullValue.prototype.toJavaScript=function(){return"undefined"};yy.ParamValue=function(params){return yy.extend(this,params)};yy.ParamValue.prototype.toString=function(){return"$"+this.param};yy.ParamValue.prototype.toJavaScript=function(){if(typeof this.param=="string")return"params['"+this.param+"']";else return"params["+this.param+"]"};yy.UniOp=function(params){return yy.extend(this,params)};yy.UniOp.prototype.toString=function(){if(this.op=="-")return this.op+this.right.toString();if(this.op=="+")return this.op+this.right.toString();if(this.op=="NOT")return this.op+"("+this.right.toString()+")";else if(this.op==null)return"("+this.right.toString()+")"};yy.UniOp.prototype.findAggregator=function(query){if(this.right.findAggregator)this.right.findAggregator(query)};yy.UniOp.prototype.toType=function(tableid){if(this.op=="-")return"number";if(this.op=="+")return"number";if(this.op=="NOT")return"boolean"};yy.UniOp.prototype.toJavaScript=function(context,tableid,defcols){if(this.op=="-")return"(-("+this.right.toJavaScript(context,tableid,defcols)+"))";if(this.op=="+")return"("+this.right.toJavaScript(context,tableid,defcols)+")";if(this.op=="NOT")return"!("+this.right.toJavaScript(context,tableid,defcols)+")";else if(this.op==null)return"("+this.right.toJavaScript(context,tableid,defcols)+")"};yy.Column=function(params){return yy.extend(this,params)};yy.Column.prototype.toString=function(){var s;if(this.columnid==+this.columnid){s="["+this.columnid+"]"}else{s=this.columnid}if(this.tableid){if(+this.columnid==this.columnid){s=this.tableid+s}else{s=this.tableid+"."+s}if(this.databaseid){s=this.databaseid+"."+s}}return s};yy.Column.prototype.toJavaScript=function(context,tableid,defcols){var s="";if(!this.tableid&&tableid==""&&!defcols){if(this.columnid!="_"){s=context+"['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context}}}else{if(context=="g"){s="g['"+this.nick+"']"}else if(this.tableid){if(this.columnid!="_"){s=context+"['"+this.tableid+"']['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context+"['"+this.tableid+"']"}}}else if(defcols){var tbid=defcols[this.columnid];if(tbid=="-"){throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables')}else if(tbid){if(this.columnid!="_"){s=context+"['"+tbid+"']['"+this.columnid+"']"}else{s=context+"['"+tbid+"']"}}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}else if(tableid==-1){s=context+"['"+this.columnid+"']"}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}return s};yy.AggrValue=function(params){return yy.extend(this,params)};yy.AggrValue.prototype.toString=function(){var s="";if(this.aggregatorid=="REDUCE")s+=L(this.funcid)+"(";else s+=this.aggregatorid+"(";if(this.distinct)s+=K("DISTINCT")+" ";if(this.expression)s+=this.expression.toString();s+=")";if(this.over)s+=" "+this.over.toString();return s};yy.AggrValue.prototype.findAggregator=function(query){var colas=escapeq(this.toString())+":"+query.selectGroup.length;var found=false;if(!found){if(!this.nick){this.nick=colas;var found=false;for(var i=0;i-1)return"number";if(["ARRAY"].indexOf(this.aggregatorid)>-1)return"array";if(["FIRST","LAST"].indexOf(this.aggregatorid)>-1)return this.expression.toType()};yy.AggrValue.prototype.toJavaScript=function(context,tableid,defcols){var colas=this.nick;if(typeof colas=="undefined")colas=this.toString();return"g['"+colas+"']"};yy.OrderExpression=function(params){return yy.extend(this,params)};yy.OrderExpression.prototype.toString=function(){var s=this.expression.toString();if(this.order)s+=" "+this.order.toString();if(this.nocase)s+=" "+K("COLLATE")+" "+K("NOCASE");return s};yy.GroupExpression=function(params){return yy.extend(this,params)};yy.GroupExpression.prototype.toString=function(){return this.type+"("+this.group.toString()+")"};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.FromData=function(params){return yy.extend(this,params)};yy.FromData.prototype.toString=function(){if(this.data)return K("DATA")+"("+(Math.random()*1e16|0)+")";else return"?"};yy.FromData.prototype.toJavaScript=function(){};yy.Select.prototype.exec=function(params,cb){if(this.preparams)params=this.preparams.concat(params);var databaseid=alasql.useid;db=alasql.databases[databaseid];var sql=this.toString();var hh=hash(sql);var statement=this.compile(databaseid);if(!statement)return;statement.sql=sql;statement.dbversion=db.dbversion;if(db.sqlCacheSize>alasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement;var res=alasql.res=statement(params,cb);return res};yy.Select.prototype.Select=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.columns=[];args.forEach(function(arg){if(typeof arg=="string"){self.columns.push(new yy.Column({columnid:arg}))}else if(typeof arg=="function"){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(arg);self.columns.push(new yy.Column({columnid:"*",func:arg,param:pari}))}else{}});return self};yy.Select.prototype.From=function(tableid){var self=this;if(!self.from)self.from=[];if(tableid instanceof Array){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(tableid);self.from.push(new yy.ParamValue({param:pari}))}else if(typeof tableid=="string"){self.from.push(new yy.Table({tableid:tableid}))}else{throw new Error("Unknown arguments in From() function")}return self};yy.Select.prototype.OrderBy=function(){var self=this;var agrs=[];self.order=[];if(arguments.length==0){args=["_"]}else if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}if(args.length>0){args.forEach(function(arg){var expr=new yy.Column({columnid:arg});if(typeof arg=="function"){expr=arg +}self.order.push(new yy.OrderExpression({expression:expr,direction:"ASC"}))})}return self};yy.Select.prototype.Top=function(topnum){var self=this;self.top=new yy.NumValue({value:topnum});return self};yy.Select.prototype.GroupBy=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.group=[];args.forEach(function(arg){var expr=new yy.Column({columnid:arg});self.group.push(expr)});return self};yy.Select.prototype.Where=function(expr){var self=this;if(typeof expr=="function"){self.where=expr}return self};yy.FuncValue=function(params){return yy.extend(this,params)};yy.FuncValue.prototype.toString=function(){var s="";if(alasql.fn[this.funcid])s+=this.funcid;else if(alasql.aggr[this.funcid])s+=this.funcid;else if(alasql.stdlib[this.funcid.toUpperCase()]||alasql.stdfn[this.funcid.toUpperCase()])s+=this.funcid.toUpperCase();s+="(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toString()}).join(",")}s+=")";if(this.as)s+=" AS "+this.as.toString();return s};yy.FuncValue.prototype.findAggregator=function(query){if(this.args&&this.args.length>0){this.args.forEach(function(arg){if(arg.findAggregator)arg.findAggregator(query)})}};yy.FuncValue.prototype.toJavaScript=function(context,tableid,defcols){var s="";var funcid=this.funcid;if(alasql.fn[funcid]){if(this.newid)s+="new ";s+="alasql.fn."+this.funcid+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else if(alasql.stdlib[funcid.toUpperCase()]){if(this.args&&this.args.length>0){s+=alasql.stdlib[funcid.toUpperCase()].apply(this,this.args.map(function(arg){return arg.toJavaScript(context,tableid)}))}else{s+=alasql.stdlib[funcid.toUpperCase()]()}}else if(alasql.stdfn[funcid.toUpperCase()]){if(this.newid)s+="new ";s+="alasql.stdfn."+this.funcid.toUpperCase()+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else{}return s};var stdlib=alasql.stdlib={};var stdfn=alasql.stdfn={};stdlib.ABS=function(a){return"Math.abs("+a+")"};stdlib.CLONEDEEP=function(a){return"alasql.utils.cloneDeep("+a+")"};stdlib.IIF=function(a,b,c){if(arguments.length==3){return"(("+a+")?("+b+"):("+c+"))"}else{throw new Error("Number of arguments of IFF is not equals to 3")}};stdlib.IFNULL=function(a,b){return"("+a+"||"+b+")"};stdlib.INSTR=function(s,p){return"(("+s+").indexOf("+p+")+1)"};stdlib.LEN=stdlib.LENGTH=function(s){return"("+s+'+"").length'};stdlib.LOWER=stdlib.LCASE=function(s){return"("+s+").toLowerCase()"};stdlib.GREATEST=function(){return"Math.max("+Array.prototype.join.call(arguments,",")+")"};stdlib.LEAST=function(){return"Math.min("+Array.prototype.join.call(arguments,",")+")"};stdlib.MID=function(a,b,c){if(arguments.length==2)return"("+a+").substr("+b+"-1)";else if(arguments.length==3)return"("+a+").substr("+b+"-1,"+c+")"};stdlib.NULLIF=function(a,b){return"("+a+"=="+b+"?undefined:"+a+")"};stdlib.POWER=function(a,b){return"Math.pow("+a+","+b+")"};stdlib.RANDOM=function(r){if(arguments.length==0){return"Math.random()"}else{return"(Math.random()*("+r+")|0)"}};stdlib.ROUND=function(s,d){if(arguments.length==2){return"Math.round("+s+"*Math.pow(10,"+d+"))/Math.pow(10,"+d+")"}else{return"Math.round("+s+")"}};stdlib.SQRT=function(s){return"Math.sqrt("+s+")"};stdlib.TRIM=function(s){return s+".trim()"};stdlib.UPPER=stdlib.UCASE=function(s){return"("+s+").toUpperCase()"};alasql.aggr.GROUP_CONCAT=function(v,s){if(typeof s=="undefined")return v;else return s+","+v};yy.CaseValue=function(params){return yy.extend(this,params)};yy.CaseValue.prototype.toString=function(){var s="CASE ";if(this.expression)s+=this.expression.toString();if(this.whens){s+=this.whens.map(function(w){return" WHEN "+w.when.toString()+" THEN "+w.then.toString()}).join()}s+=" END";return s};yy.CaseValue.prototype.findAggregator=function(query){if(this.expression&&this.expression.findAggregator)this.expression.findAggregator(query);if(this.whens&&this.whens.length>0){this.whens.forEach(function(w){if(w.when.findAggregator)w.when.findAggregator(query);if(w.then.findAggregator)w.then.findAggregator(query)})}if(this.elses&&this.elses.findAggregator)this.elses.findAggregator(query)};yy.CaseValue.prototype.toJavaScript=function(context,tableid,defcols){var s="((function("+context+",params,alasql){var r;";if(this.expression){s+="v="+this.expression.toJavaScript(context,tableid,defcols)+";";s+=(this.whens||[]).map(function(w){return" if(v=="+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}else{s+=(this.whens||[]).map(function(w){return" if("+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}s+=";return r;}).bind(this))("+context+",params,alasql)";return s};yy.Json=function(params){return yy.extend(this,params)};yy.Json.prototype.toString=function(){var s="@";s+=JSONtoString(this.value);s+="";return s};var JSONtoString=alasql.utils.JSONtoString=function(obj){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s=obj;else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoString(b)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoString(obj[k]);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toString){s=obj.toString()}else{throw new Error("1Can not show JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not show JSON object "+JSON.stringify(obj))}return s};function JSONtoJavaScript(obj,context,tableid,defcols){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s="("+obj+")";else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoJavaScript(b,context,tableid,defcols)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoJavaScript(obj[k],context,tableid,defcols);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toJavaScript){s=obj.toJavaScript(context,tableid,defcols)}else{throw new Error("1Can not parse JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not parse JSON object "+JSON.stringify(obj))}return s}yy.Json.prototype.toJavaScript=function(context,tableid,defcols){return JSONtoJavaScript(this.value,context,tableid,defcols)};yy.Convert=function(params){return yy.extend(this,params)};yy.Convert.prototype.toString=function(){var s="CONVERT(";s+=this.dbtypeid;if(typeof this.dbsize!="undefined"){s+="("+this.dbsize;if(this.dbprecision)s+=","+dbprecision;s+=")"}s+=","+this.expression.toString();if(this.style)s+=","+this.style;s+=")";return s};yy.Convert.prototype.toJavaScript=function(context,tableid,defcols){return"alasql.stdfn.CONVERT("+this.expression.toJavaScript(context,tableid,defcols)+',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+",style:"+this.style+"})";throw new Error("There is not such type conversion for "+this.toString())};alasql.stdfn.CONVERT=function(value,args){var val=value;if(args.style){var t;if(/\d{8}/.test(val))t=new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2));else t=new Date(val);if(args.style==1){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==2){val=("0"+t.getYear()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==3){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==4){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getYear()).substr(-2)}else if(args.style==5){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==6){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+("0"+t.getYear()).substr(-2)}else if(args.style==7){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+("0"+t.getYear()).substr(-2)}else if(args.style==8){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==10){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==11){val=("0"+t.getYear()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==12){val=("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else if(args.style==101){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+t.getFullYear()}else if(args.style==102){val=t.getFullYear()+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==103){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+t.getFullYear()}else if(args.style==104){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+t.getFullYear()}else if(args.style==105){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+t.getFullYear()}else if(args.style==106){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+t.getFullYear()}else if(args.style==107){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+t.getFullYear()}else if(args.style==108){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==110){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+t.getFullYear()}else if(args.style==111){val=t.getFullYear()+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==112){val=t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else{throw new Error("The CONVERT style "+args.style+" is not realized yet.")}}if(args.dbtypeid=="Date"){return new Date(val)}else if(args.dbtypeid.toUpperCase()=="DATE"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);return s}else if(args.dbtypeid=="DATETIME"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);s+=" "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2);s+="."+("00"+d.getMilliseconds()).substr(-3);return s}else if(args.dbtypeid.toUpperCase()=="STRING"){return""+val}else if(args.dbtypeid.toUpperCase()=="NUMBER"||args.dbtypeid=="FLOAT"){return+val}else if(args.dbtypeid.toUpperCase()=="MONEY"){var m=+val;return(m|0)+m*100%100/100}else if(args.dbtypeid.toUpperCase()=="BOOLEAN"){return!!val}else if(args.dbtypeid.toUpperCase()=="INT"){return val|0}else if(args.dbtypeid.toUpperCase()=="VARCHAR"||args.dbtypeid=="NVARCHAR"){if(args.dbsize)return(""+val).substr(0,args.dbsize);else return""+val}else if(args.dbtypeid.toUpperCase()=="CHAR"||args.dbtypeid=="NCHAR"){return(val+new Array(args.dbsize+1).join(" ")).substr(0,args.dbsize)}};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.CreateTable=function(params){return yy.extend(this,params)};yy.CreateTable.prototype.toString=function(){var s=K("CREATE");if(this.temporary)s+=" "+K("TEMPORARY");if(this.view)s+=" "+K("VIEW");else s+=" "+K("TABLE");if(this.ifnotexists)s+=" "+K("IF")+" "+K("NOT")+" "+K("EXISTS");s+=" "+this.table.toString();if(this.viewcolumns){s+="("+this.viewcolumns.map(function(vcol){return vcol.toString()}).join(",")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);else{var ss=this.columns.map(function(col){return col.toString()});s+=" ("+NL()+ID()+ss.join(","+NL()+ID())+")"}if(this.view&&this.select){s+=" AS "+this.select.toString()}return s};yy.CreateTable.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.table.databaseid||databaseid];var tableid=this.table.tableid;if(!tableid){throw new Error("Table name is not defined")}var columns=this.columns;var constraints=this.constraints||[];if(this.ifnotexists&&db.tables[tableid])return 0;if(db.tables[tableid]){throw new Error("Can not create table '"+tableid+"', because it already exists in the database '"+db.databaseid+"'")}var table=db.tables[tableid]=new alasql.Table;var ss=[];if(this.columns){this.columns.forEach(function(col){var dbtypeid=col.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();var newcol={columnid:col.columnid,dbtypeid:dbtypeid};if(col.default){ss.push("'"+col.columnid+"':"+col.default.toJavaScript())}table.columns.push(newcol);table.xcolumns[newcol.columnid]=newcol;if(col.primarykey){var pk=table.pk={};pk.columns=[col.columnid];pk.onrightfns="r['"+col.columnid+"']";pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}})}table.defaultfns=ss.join(",");constraints.forEach(function(con){if(con.type=="PRIMARY KEY"){if(table.pk){throw new Error("Primary key already exists")}var pk=table.pk={};pk.columns=con.columns;pk.onrightfns=pk.columns.map(function(columnid){return"r['"+columnid+"']"}).join("+'`'+");pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}});if(this.view&&this.viewcolumns){var self=this;this.viewcolumns.forEach(function(vcol,idx){self.select.columns[idx].as=vcol.columnid})}if(db.engineid){return alasql.engines[db.engineid].createTable(this.table.databaseid||databaseid,tableid,this.ifnotexists,cb)}table.insert=function(r){if(this.pk){var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]!="undefined"){throw new Error("Cannot insert record, because it already exists in primary key")}else{table.data.push(r);this.indices[pk.hh][addr]=r}}else{table.data.push(r)}};table.delete=function(i){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined}}};table.deleteall=function(){this.data.length=0;if(this.pk){this.indices[this.pk.hh]={}}};table.update=function(assignfn,i,params){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r,params);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined;assignfn(r,params,alasql);var newaddr=pk.onrightfn(r);if(typeof this.indices[pk.hh][newaddr]!="undefined"){throw new Error("Record already exists")}else{this.indices[pk.hh][newaddr]=r}}}else{assignfn(this.data[i],params,alasql)}};if(this.view&&this.select){table.view=true;table.select=this.select.compile(this.table.databaseid||databaseid)}if(cb)cb(1);return 1};alasql.fn.Date=Object;alasql.fn.Date=Date;alasql.fn.Number=Number;alasql.fn.String=String;alasql.fn.Boolean=Boolean;stdfn.EXTEND=alasql.utils.extend;stdfn.CHAR=String.fromCharCode.bind(String);stdfn.ASCII=function(a){return a.charCodeAt(0)};stdfn.COALESCE=function(){for(var i=0;i0){for(var i=0,ilen=table.data.length;i0){for(var i=0,ilen=table.data.length;i=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[table.xcolumns[col.columnid].dbtypeid]){q+="(new "+table.xcolumns[col.columnid].dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{if(values instanceof Array&&table.columns&&table.columns.length>0){table.columns.forEach(function(col,idx){var q="'"+col.columnid+"':";if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid)>=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[col.dbtypeid]){q+="(new "+col.dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{sw=JSONtoJavaScript(values)}}if(db.tables[tableid].defaultfns)ss.unshift(db.tables[tableid].defaultfns);if(sw){s+="a="+sw+";"}else{s+="a={"+ss.join(",")+"};"}if(db.tables[tableid].insert){s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].insert(a);"}else{s+="aa.push(a);"}});s33=s3+s;if(db.tables[tableid].insert){}else{s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data="+"alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data.concat(aa);"}s+="return "+self.values.length;var insertfn=new Function("db, params, alasql",s3+s)}else if(this.select){selectfn=this.select.compile(databaseid);if(db.engineid&&alasql.engines[db.engineid].intoTable){var statement=function(params,cb){var aa=selectfn(params);var res=alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null,cb);return res};return statement}else{var insertfn=function(db,params,alasql){var res=selectfn(params);if(db.tables[tableid].insert){for(var i=0,ilen=res.length;i0){s+="("+this.args.map(function(arg){return arg.toString()}).join(", ")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.CreateDatabase.prototype.execute=function(databaseid,params,cb){var args;if(this.args&&this.args.length>0){args=this.args.map(function(arg){return new Function("params","return "+arg.toJavaScript())(params)})}if(this.engineid){var res=alasql.engines[this.engineid].createDatabase(this.databaseid,this.args,this.ifnotexists,this.as,cb);return res}else{var dbid=this.databaseid;if(alasql.databases[dbid]){throw new Error("Database '"+dbid+"' already exists")}var a=new alasql.Database(dbid);var res=1;if(cb)return cb(res);return res}};yy.AttachDatabase=function(params){return yy.extend(this,params)};yy.AttachDatabase.prototype.toString=function(){var s=K("ATTACH");if(this.engineid)s+=" "+L(this.engineid);s+=" "+K("DATABASE")+" "+L(this.databaseid);if(args){s+="(";if(args.length>0){s+=args.map(function(arg){return arg.toString()}).join(", ")}s+=")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.AttachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.engines[this.engineid]){throw new Error('Engine "'+this.engineid+'" is not defined.')}var res=alasql.engines[this.engineid].attachDatabase(this.databaseid,this.as,this.args,params,cb);return res};yy.DetachDatabase=function(params){return yy.extend(this,params)};yy.DetachDatabase.prototype.toString=function(){var s=K("DETACH");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DetachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.databases[this.databaseid].engineid){throw new Error('Cannot detach database "'+this.engineid+'", because it was not attached.')}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.UseDatabase=function(params){return yy.extend(this,params)};yy.UseDatabase.prototype.toString=function(){return K("USE")+" "+K("DATABASE")+" "+L(this.databaseid)};yy.UseDatabase.prototype.execute=function(databaseid,params,cb){var dbid=this.databaseid;if(!alasql.databases[dbid]){throw new Error("Database '"+dbid+"' does not exist")}alasql.use(dbid);var res=1;if(cb)cb(res);return res};yy.DropDatabase=function(params){return yy.extend(this,params)};yy.DropDatabase.prototype.toString=function(){var s=K("DROP");if(this.ifexists)s+=" "+K("IF")+" "+K("EXISTS");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DropDatabase.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].dropDatabase(this.databaseid,this.ifexists,cb)}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{if(alasql.databases[dbid].engineid){throw new Error("Cannot drop database '"+dbid+"', because it is attached. Detach it.")}delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.Declare=function(params){return yy.extend(this,params)};yy.Declare.prototype.toString=function(){var s=K("DECLARE")+" ";if(this.declares&&this.declares.length>0){s=this.declares.map(function(declare){var s="";s+="@"+L(declare.variable)+" ";s+=declare.dbtypeid;if(this.dbsize)s+="("+N(this.dbsize);if(this.dbprecision)s+=","+N(this.dbprecision);s+=")";if(declare.expression)s+=" = "+declare.expression.toString();return s}).join(",")}return s};yy.Declare.prototype.execute=function(databaseid,params,cb){var res=1;if(this.declares&&this.declares.length>0){this.declares.map(function(declare){var dbtypeid=declare.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();alasql.declares[declare.variable]={dbtypeid:dbtypeid,dbsize:declare.dbsize,dbprecision:declare.dbprecision};if(declare.expression){alasql.vars[declare.variable]=new Function("params,alasql","return "+declare.expression.toJavaScript("({})","",null))(params,alasql);if(alasql.declares[declare.variable]){alasql.vars[declare.variable]=alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable])}}})}if(cb)res=cb(res);return res};yy.ShowDatabases=function(params){return yy.extend(this,params)};yy.ShowDatabases.prototype.toString=function(){var s=K("SHOW")+" "+K("DATABASES");if(this.like)s+="LIKE "+this.like.toString();return s};yy.ShowDatabases.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].showDatabases(this.like,cb)}else{var self=this;var res=[];for(dbid in alasql.databases){res.push({databaseid:dbid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.databaseid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res}};yy.ShowTables=function(params){return yy.extend(this,params)};yy.ShowTables.prototype.toString=function(){var s=K("SHOW")+" "+K("TABLES");if(this.databaseid)s+=" FROM "+this.databaseid;if(this.like)s+=" "+K("LIKE")+" "+this.like.toString();return s};yy.ShowTables.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.databaseid||databaseid];var self=this;var res=[];for(tableid in db.tables){res.push({tableid:tableid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.tableid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res};yy.ShowColumns=function(params){return yy.extend(this,params)};yy.ShowColumns.prototype.toString=function(){var s=K("SHOW")+" "+K("COLUMNS");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowColumns.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table&&table.columns){var res=table.columns.map(function(col){return{columnid:col.columnid,dbtypeid:col.dbtypeid,dbsize:col.dbsize}});return res}else{return[]}};yy.ShowIndex=function(params){return yy.extend(this,params)};yy.ShowIndex.prototype.toString=function(){var s=K("SHOW")+" "+K("INDEX");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowIndex.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;var res=[];if(table&&table.indices){for(var ind in table.indices){res.push({hh:ind,len:Object.keys(table.indices[ind]).length})}}return res};yy.ShowCreateTable=function(params){return yy.extend(this,params)};yy.ShowCreateTable.prototype.toString=function(){var s=K("SHOW")+" "+K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid);if(this.databaseid)s+=" "+K("FROM")+" "+L(this.databaseid);return s};yy.ShowCreateTable.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table){var s=K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid)+" (";var ss=[];if(table.columns){table.columns.forEach(function(col){var a=L(col.columnid)+" "+K(col.dbtypeid);if(col.dbsize)a+="("+N(col.dbsize)+")";if(col.primarykey)a+=" "+K("PRIMARY")+" "+K("KEY");ss.push(a)});s+=ss.join(", ")}s+=")";return s}else{throw new Error('There is no such table "'+this.table.tableid+'"')}};yy.SetVariable=function(params){return yy.extend(this,params)};yy.SetVariable.prototype.toString=function(){var s=K("SET")+" ";if(typeof this.value!="undefined")s+=K(this.variable.toUpperCase())+" "+(this.value?"ON":"OFF");if(this.expression)s+="@"+L(this.variable)+" = "+this.expression.toString();return s};yy.SetVariable.prototype.execute=function(databaseid,params,cb){if(typeof this.value!="undefined"){var val=this.value;if(val=="ON")val=true;else if(val=="OFF")val=false;alasql.options[this.variable]=val}else if(this.expression){var res=new Function("params,alasql","return "+this.expression.toJavaScript("({})","",null))(params,alasql);if(alasql.declares[this.variable]){res=alasql.stdfn.CONVERT(res,alasql.declares[this.variable])}if(this.props&&this.props.length>0){var fs="alasql.vars['"+this.variable+"']";fs+=this.props.map(function(prop){if(typeof prop=="string"){return"['"+prop+"']"}else if(typeof prop=="number"){return"["+prop+"]"}else{return"["+prop.toJavaScript()+"]"}}).join();new Function("value,alasql",fs+"=value")(res,alasql)}else{alasql.vars[this.variable]=res}}var res=1;if(cb)res=cb(res);return res};alasql.test=function(name,times,fn){if(arguments.length==0){alasql.log(alasql.con.results);return}else if(arguments.length==1){var tm=Date.now();fn();alasql.con.log(Date.now()-tm);return}if(arguments.length==2){fn=times;times=1}var tm=Date.now();for(var i=0;i",sql);if(res instanceof Array){if(console.table){console.table(res)}else{console.log(JSONtoString(res))}}else{console.log(JSONtoString(res))}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}var s="";if(typeof sql=="string"&&alasql.options.logprompt){s+="

"+alasql.pretty(sql)+"
"}if(res instanceof Array){if(res.length==0){s+="

[ ]

"}else if(typeof res[0]!="object"||res[0]instanceof Array){for(var i=0,ilen=res.length;i"+loghtml(res[i])+"

"}}else{s+=loghtml(res)}}else{s+=loghtml(res)}el.innerHTML+=s}};alasql.clear=function(){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.clear){console.clear()}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML=""}};alasql.write=function(s){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.log){console.log(s)}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML+=s}};function loghtml(res){var s="";if(typeof res=="undefined"){s+="undefined"}else if(res instanceof Array){s+="";s+="";var cols=[];for(colid in res[0]){cols.push(colid)}s+="
#";cols.forEach(function(colid){s+=""+colid});for(var i=0,ilen=res.length;i"+(i+1);cols.forEach(function(colid){s+=" ";if(+res[i][colid]==+res[i][colid]){s+='
';if(typeof res[i][colid]=="undefined")s+="NULL";else s+=res[i][colid];s+="
"}else{if(typeof res[i][colid]=="undefined"){s+="NULL"}else if(typeof res[i][colid]=="string"){s+=res[i][colid]}else s+=JSONtoString(res[i][colid])}})}s+="
"}else{s+="

"+JSONtoString(res)+"

"}return s}function scrollTo(element,to,duration){if(duration<=0)return;var difference=to-element.scrollTop;var perTick=difference/duration*10;setTimeout(function(){if(element.scrollTop==to)return;element.scrollTop=element.scrollTop+perTick;scrollTo(element,to,duration-10)},10)}alasql.prompt=function(el,useidel,firstsql){if(typeof exports=="object"){throw new Error("The functionality of prompt is not realized for Node.js")}var prompti=0;if(typeof el=="string")el=document.getElementById(el);if(typeof useidel=="string")useidel=document.getElementById(useidel);useidel.textContent=alasql.useid;if(firstsql){alasql.prompthistory.push(firstsql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(firstsql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+sql+"

");alasql.write('

'+err+"

")}}var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500);el.onkeydown=function(event){if(event.which==13){var sql=el.value;var olduseid=alasql.useid;el.value="";alasql.prompthistory.push(sql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(sql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+alasql.pretty(sql,false)+"

");alasql.write('

'+err+"

")}el.focus();useidel.textContent=alasql.useid;var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500)}else if(event.which==38){prompti--;if(prompti<0)prompti=0;if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}else if(event.which==40){prompti++;if(prompti>=alasql.prompthistory.length){prompti=alasql.prompthistory.length;el.value=""}else if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}}};yy.BeginTransaction=function(params){return yy.extend(this,params)};yy.BeginTransaction.prototype.toString=function(){return K("BEGIN")+" "+K("TRANSACTION")};yy.BeginTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].begin(databaseid,cb)}else{}if(cb)cb(res);return res};yy.CommitTransaction=function(params){return yy.extend(this,params)};yy.CommitTransaction.prototype.toString=function(){return K("COMMIT")+" "+K("TRANSACTION")};yy.CommitTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].commit(databaseid,cb)}else{}if(cb)cb(res);return res};yy.RollbackTransaction=function(params){return yy.extend(this,params)};yy.RollbackTransaction.prototype.toString=function(){return K("ROLLBACK")+" "+K("TRANSACTION")};yy.RollbackTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[databaseid].engineid].rollback(databaseid,cb)}else{}if(cb)cb(res);return res};alasql.into.SQL=function(filename,opts,data,columns,cb){var res;if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};alasql.utils.extend(opt,opts);if(typeof opt.tableid=="undefined"){throw new Error("Table for INSERT TO is not defined.")}var s="";if(columns.length==0){if(typeof data[0]=="object"){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}else{}}for(var i=0,ilen=data.length;i0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var res=data.length;var s="";if(data.length>0){var key=columns[0].columnid;s+=data.map(function(d){return d[key]}).join("\n")}res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.TAB=alasql.into.TSV=function(filename,opts,data,columns,cb){var opt={};alasql.utils.extend(opt,opts);opt.separator=" ";return alasql.into.CSV(filename,opt,data,columns,cb)};alasql.into.CSV=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};opt.separator=",";opt.quote='"';alasql.utils.extend(opt,opts);var res=data.length;var s="";if(opt.headers){s+=columns.map(function(col){return col.columnid}).join(opt.separator)+"\n"}data.forEach(function(d,idx){s+=columns.map(function(col){var s=d[col.columnid];s=(s+"").replace(new RegExp("\\"+opt.quote,"g"),'""');if((s+"").indexOf(opt.separator)>-1||(s+"").indexOf(opt.quote)>-1)s=opt.quote+s+opt.quote;return s}).join(opt.separator)+"\n"});res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.XLSX=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof exports=="object"){var XLSX=require("xlsx")}else{var XLSX=window.XLSX}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={sheetid:"Sheet1",headers:true};alasql.utils.extend(opt,opts);var res=1;var wb={SheetNames:[],Sheets:{}};if(opt.sourcefilename){alasql.utils.loadBinaryFile(opt.sourcefilename,!!cb,function(data){wb=XLSX.read(data,{type:"binary"});res=doExport()})}else{res=doExport()}function doExport(){var cells={};if(wb.SheetNames.indexOf(opt.sheetid)>-1){cells=wb.Sheets[opt.sheetid]}else{wb.SheetNames.push(opt.sheetid);wb.Sheets[opt.sheetid]={};cells=wb.Sheets[opt.sheetid]}var range="A1";if(opt.range)range=opt.range;var col0=alasql.utils.xlscn(range.match(/[A-Z]+/)[0]);var row0=+range.match(/[0-9]+/)[0]-1;if(wb.Sheets[opt.sheetid]["!ref"]){var rangem=wb.Sheets[opt.sheetid]["!ref"];var colm=alasql.utils.xlscn(rangem.match(/[A-Z]+/)[0]);var rowm=+rangem.match(/[0-9]+/)[0]-1}else{var colm=1,rowm=1}var colmax=Math.max(col0+columns.length,colm);var rowmax=Math.max(row0+data.length+2,rowm);var i=row0+1;wb.Sheets[opt.sheetid]["!ref"]="A1:"+alasql.utils.xlsnc(colmax)+rowmax;if(opt.headers){columns.forEach(function(col,idx){cells[alasql.utils.xlsnc(col0+idx)+""+i]={v:col.columnid}});i++}for(var j=0;j ";s+="";s+="";s+="";if(typeof sheet.caption!="undefined"){var caption=sheet.caption;if(typeof caption=="string"){caption={title:caption}}s+=""}if(typeof sheet.columns!="undefined"){columns=sheet.columns}else{if(columns.length==0&&data.length>0){if(typeof data[0]=="object"){if(data[0]instanceof Array){columns=data[0].map(function(d,columnidx){return{columnid:columnidx}})}else{columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}}}}columns.forEach(function(column,columnidx){if(typeof sheet.column!="undefined"){extend(column,sheet.column)}if(typeof column.width=="undefined"){if(sheet.column&&sheet.column.width!="undefined"){column.width=sheet.column.width}else{column.width="120px"}}if(typeof column.width=="number")column.width=column.width+"px";if(typeof column.columnid=="undefined")column.columnid=columnidx;if(typeof column.title=="undefined")column.title=""+column.columnid;if(sheet.headers&&sheet.headers instanceof Array)column.title=sheet.headers[idx]});s+="";columns.forEach(function(column){s+=''});s+="";if(sheet.headers){s+="";s+="";columns.forEach(function(column,columnidx){s+="";s+=""}s+="";if(data&&data.length>0){data.forEach(function(row,rowidx){if(rowidx>sheet.limit)return;s+=""});s+=""})}s+="";s+="
"});s+="
";s+="";s+="";var res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res;function style(a){var s=' style="';if(a&&typeof a.style!="undefined"){s+=a.style+";"}s+='" ';return s}};alasql.from.TABLETOP=function(key,opts,cb,idx,query){var res=[];var opt={headers:true,simpleSheet:true,key:key};alasql.utils.extend(opt,opts);opt.callback=function(data){res=data;if(cb)res=cb(res,idx,query)};Tabletop.init(opt);return res};alasql.from.HTML=function(selector,opts,cb,idx,query){var opt={};alasql.utils.extend(opt,opts);var sel=document.querySelector(selector);if(!sel&&sel.tagName!="TABLE"){throw new Error("Selected HTML element is not a TABLE")}var res=[];var headers=opt.headers;if(headers&&!(headers instanceof Array)){headers=[];var ths=sel.querySelector("thead tr").children;for(var i=0;i=N)return EOF;if(eol)return eol=false,EOL;var j=I;if(text.charCodeAt(j)===quoteCode){var i=j;while(i++http://github/agershun/alasq for more information'}];yy.Help.prototype.execute=function(databaseid,params,cb){var ss=[];if(!this.subject){ss=helpdocs}else{ss.push('See also http://github/agershun/alasq for more information')}if(cb)ss=cb(ss);return ss};yy.Print=function(params){return yy.extend(this,params)};yy.Print.prototype.toString=function(){var s=K("PRINT");if(this.statement)s+=" "+this.statement.toString();return s};yy.Print.prototype.execute=function(databaseid,params,cb){var res,s;if(this.statement){s=this.statement.execute(databaseid,params)}else{s=""}s=JSONtoString(s);console.log(s);if(cb)res=cb(res);return res};yy.Source=function(params){return yy.extend(this,params)};yy.Source.prototype.toString=function(){var s=K("SOURCE");if(this.url)s+=" "+S("'"+this.url+"'");return s};yy.Source.prototype.execute=function(databaseid,params,cb){var res;loadFile(this.url,!!cb,function(data){res=alasql(data);if(cb)res=cb(res);return res},function(err){throw err});return res};yy.Require=function(params){return yy.extend(this,params)};yy.Require.prototype.toString=function(){var s=K("REQUIRE");if(this.paths&&this.paths.length>0){s+=this.paths.map(function(path){return path.toString()}).join(",")}return s};yy.Require.prototype.execute=function(databaseid,params,cb){var self=this;var res=0;var ss="";if(this.paths.length>0){this.paths.forEach(function(path){loadFile(path.value,!!cb,function(data){res++;ss+=data;if(res0){res=res.filter(function(d){return d.databaseid.match(relike)})}}if(cb)cb(res);return res};LS.createTable=function(databaseid,tableid,ifnotexists,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var tb=LS.get(lsdbid+"."+tableid);var res=1;if(tb&&!ifnotexists){throw new Error('Table "'+tableid+'" alsready exists in localStorage database "'+lsdbid+'"')}var lsdb=LS.get(lsdbid);var table=alasql.databases[databaseid].tables[tableid];lsdb.tables[tableid]={columns:table.columns};LS.set(lsdbid,lsdb);LS.set(lsdbid+"."+tableid,[]);if(cb)cb(res);return res};LS.dropTable=function(databaseid,tableid,ifexists,cb){var res=1;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(!ifexists&&!lsdb.tables[tableid]){throw new Error('Cannot drop table "'+tableid+'" in localStorage, because it does not exist')}delete lsdb.tables[tableid];LS.set(lsdbid,lsdb);localStorage.removeItem(lsdbid+"."+tableid);if(cb)cb(res);return res};LS.fromTable=function(databaseid,tableid,cb,idx,query){var lsdbid=alasql.databases[databaseid].lsdbid;var res=LS.get(lsdbid+"."+tableid);if(cb)res=cb(res,idx,query);return res};LS.intoTable=function(databaseid,tableid,value,columns,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var res=value.length;var tb=LS.get(lsdbid+"."+tableid);if(!tb)tb=[];tb=tb.concat(value);LS.set(lsdbid+"."+tableid,tb);if(cb)cb(res);return res};LS.loadTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;db.tables[tableid].data=LS.get(lsdbid+"."+tableid)};LS.saveTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;LS.set(lsdbid+"."+tableid,db.tables[tableid].data);db.tables[tableid].data=null};LS.commit=function(databaseid,cb){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb={databaseid:lsdbid,tables:{}};if(db.tables){for(var tbid in db.tables){lsdb.tables[tbid]={columns:db.tables[tbid].columns};LS.set(lsdbid+"."+tbid,db.tables[tbid].data)}}LS.set(lsdbid,lsdb);return 1};LS.begin=LS.commit;LS.rollback=function(databaseid,cb){var db=alasql.databases[databaseid];db.dbversion++;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(lsdb.tables){for(var tbid in lsdb.tables){var tb=new alasql.Table({columns:db.tables[tbid].columns});extend(tb,lsdb.tables[tbid]);lsdb.tables[tbid]=tb;if(!alasql.options.autocommit){lsdb.tables[tbid].data=LS.get(db.lsdbid+"."+tbid)}lsdb.tables[tbid].indexColumns()}}delete alasql.databases[databaseid];alasql.databases[databaseid]=new alasql.Database(databaseid);extend(alasql.databases[databaseid],lsdb);alasql.databases[databaseid].databaseid=databaseid;alasql.databases[databaseid].engineid="LOCALSTORAGE"};var SQLITE=alasql.engines.SQLITE=function(){};SQLITE.createDatabase=function(wdbid,args,ifnotexists,dbid,cb){throw new Error("Connot create SQLITE database in memory. Attach it.")};SQLITE.dropDatabase=function(databaseid){throw new Error("This is impossible to drop SQLite database. Detach it.")};SQLITE.attachDatabase=function(sqldbid,dbid,args,params,cb){var res=1;if(alasql.databases[dbid]){throw new Error('Unable to attach database as "'+dbid+'" because it already exists')}if(args[0]&&args[0]instanceof yy.StringValue||args[0]instanceof yy.ParamValue){if(args[0]instanceof yy.StringValue){var value=args[0].value}else if(args[0]instanceof yy.ParamValue){var value=params[args[0].param]}alasql.utils.loadBinaryFile(value,true,function(data){var db=new alasql.Database(dbid||sqldbid);db.engineid="SQLITE";db.sqldbid=sqldbid;var sqldb=db.sqldb=new SQL.Database(data);db.tables=[];var tables=sqldb.exec("SELECT * FROM sqlite_master WHERE type='table'")[0].values;tables.forEach(function(tbl){db.tables[tbl[1]]={};var columns=db.tables[tbl[1]].columns=[];var ast=alasql.parse(tbl[4]);var coldefs=ast.statements[0].columns;if(coldefs&&coldefs.length>0){coldefs.forEach(function(cd){columns.push(cd)})}});cb(1)},function(err){throw new Error('Cannot open SQLite database file "'+args[0].value+'"')});return res}else{throw new Error("Cannot attach SQLite database without a file")}return res};SQLITE.fromTable=function(databaseid,tableid,cb,idx,query){var data=alasql.databases[databaseid].sqldb.exec("SELECT * FROM "+tableid);var columns=query.sources[idx].columns=[];if(data[0].columns.length>0){data[0].columns.forEach(function(columnid){columns.push({columnid:columnid})})}var res=[];if(data[0].values.length>0){data[0].values.forEach(function(d){var r={};columns.forEach(function(col,idx){r[col.columnid]=d[idx]});res.push(r)})}if(cb)cb(res,idx,query)};SQLITE.intoTable=function(databaseid,tableid,value,columns,cb){var sqldb=alasql.databases[databaseid].sqldb;for(var i=0,ilen=value.length;i1){var sql="REQUIRE "+paths.map(function(p){return'"'+p+'"'}).join(",");alasql(sql,[],cb)}}else if(path===false){delete alasql.webworker;return}}} \ No newline at end of file diff --git a/dist/alasql.js b/dist/alasql.js index a6fca649d6..906e632d44 100755 --- a/dist/alasql.js +++ b/dist/alasql.js @@ -1,8 +1,8 @@ // // alasql.js // AlaSQL - JavaScript SQL database -// Date: 16.04.2015 -// Version: 0.0.47 +// Date: 19.04.2015 +// Version: 0.0.48 // (ñ) 2014-2015, Andrey Gershun // @@ -111,7 +111,7 @@ var alasql = function(sql, params, cb, scope) { }; /** Current version of alasql */ -alasql.version = "0.0.47"; +alasql.version = "0.0.48"; @@ -189,12 +189,12 @@ alasql.version = "0.0.47"; } */ var parser = (function(){ -var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[1,151],$V81=[4,5],$V91=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Va1=[1,167],$Vb1=[1,175],$Vc1=[1,174],$Vd1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Ve1=[1,206],$Vf1=[1,199],$Vg1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vh1=[2,74],$Vi1=[1,220],$Vj1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vk1=[1,236],$Vl1=[1,232],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,237],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,252],$VE1=[1,253],$VF1=[1,255],$VG1=[1,254],$VH1=[1,256],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[2,197],$VM1=[1,263],$VN1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VO1=[2,255],$VP1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VQ1=[1,271],$VR1=[1,281],$VS1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VT1=[1,297],$VU1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,102,104,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,258,259,260,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VV1=[1,304],$VW1=[1,305],$VX1=[2,368],$VY1=[1,310],$VZ1=[8,9,11,61,202,206],$V_1=[2,420],$V$1=[1,321],$V02=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V12=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22=[2,110],$V32=[1,349],$V42=[61,80],$V52=[8,9,11,61,65,192,202,206,229,247,259,275,276,279,280,292],$V62=[79,236,237],$V72=[1,414],$V82=[1,420],$V92=[1,421],$Va2=[1,431],$Vb2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vc2=[2,270],$Vd2=[1,438],$Ve2=[202,204,206],$Vf2=[61,323],$Vg2=[61,321,323],$Vh2=[1,445],$Vi2=[61,321],$Vj2=[4,5,96,191],$Vk2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vl2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vm2=[1,512],$Vn2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vo2=[2,180],$Vp2=[1,514],$Vq2=[1,515],$Vr2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vs2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[1,537],$Vy2=[61,65],$Vz2=[2,195],$VA2=[1,577],$VB2=[8,9,11,65,135,136,137,139,145,202,206],$VC2=[8,9,11,61,65,124,125,135,136,137,139,145,202,206],$VD2=[1,592],$VE2=[1,593],$VF2=[1,595],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,606],$VO2=[1,617],$VP2=[8,9,11,61,124,202,204,206,356],$VQ2=[1,625],$VR2=[1,624],$VS2=[2,233],$VT2=[1,646],$VU2=[2,437],$VV2=[1,667],$VW2=[1,679],$VX2=[8,9,11,61,202,204,206,356],$VY2=[1,682],$VZ2=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V_2=[8,9,11,65,135,136,137,145,202,206],$V$2=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V03=[1,696],$V13=[1,698],$V23=[4,5,64,193,195,196,197,198],$V33=[8,9,11,202,204,206,356],$V43=[214,219],$V53=[1,738],$V63=[8,9,11,61,65,202,206],$V73=[1,754],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,773],$Va3=[1,774],$Vb3=[1,775],$Vc3=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,805],$Ve3=[1,818],$Vf3=[1,819],$Vg3=[1,817],$Vh3=[1,815],$Vi3=[1,821],$Vj3=[1,812],$Vk3=[1,813],$Vl3=[1,814],$Vm3=[1,816],$Vn3=[1,825],$Vo3=[1,830],$Vp3=[1,831],$Vq3=[1,832],$Vr3=[1,833],$Vs3=[78,86,275,276,277,279],$Vt3=[2,380],$Vu3=[1,838],$Vv3=[8,9,11,65,202,206],$Vw3=[1,851],$Vx3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vy3=[1,868],$Vz3=[1,867],$VA3=[8,9,11,202,206,247,258,259,260],$VB3=[1,921],$VC3=[8,9,11,61,65,135,136,137,145,202,206],$VD3=[1,938]; +var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[253,309],$V81=[1,152],$V91=[4,5],$Va1=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Vb1=[1,168],$Vc1=[1,176],$Vd1=[1,175],$Ve1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vf1=[1,207],$Vg1=[1,200],$Vh1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vi1=[2,74],$Vj1=[1,221],$Vk1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vl1=[1,237],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,236],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,251],$VE1=[1,253],$VF1=[1,254],$VG1=[1,256],$VH1=[1,255],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[1,260],$VM1=[2,198],$VN1=[1,264],$VO1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VP1=[2,256],$VQ1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VR1=[1,272],$VS1=[1,282],$VT1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VU1=[1,298],$VV1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,101,103,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,259,260,261,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VW1=[1,305],$VX1=[1,306],$VY1=[2,369],$VZ1=[1,311],$V_1=[8,9,11,61,202,206],$V$1=[2,421],$V02=[1,322],$V12=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V22=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32=[2,111],$V42=[1,350],$V52=[61,80],$V62=[8,9,11,61,65,192,202,206,229,247,260,275,276,279,280,292],$V72=[79,236,237],$V82=[1,415],$V92=[1,421],$Va2=[1,422],$Vb2=[1,432],$Vc2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vd2=[2,271],$Ve2=[1,439],$Vf2=[202,204,206],$Vg2=[61,323],$Vh2=[61,321,323],$Vi2=[1,446],$Vj2=[61,321],$Vk2=[4,5,96,191],$Vl2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vm2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vn2=[1,514],$Vo2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vp2=[2,181],$Vq2=[1,516],$Vr2=[1,517],$Vs2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vy2=[1,539],$Vz2=[61,65],$VA2=[2,196],$VB2=[1,578],$VC2=[8,9,11,65,135,136,137,139,145,202,206],$VD2=[1,589],$VE2=[1,593],$VF2=[1,594],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,603],$VO2=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$VP2=[1,608],$VQ2=[1,619],$VR2=[8,9,11,61,124,202,204,206,356],$VS2=[1,627],$VT2=[1,626],$VU2=[2,234],$VV2=[1,648],$VW2=[2,438],$VX2=[1,669],$VY2=[1,678],$VZ2=[8,9,11,61,202,204,206,356],$V_2=[1,681],$V$2=[8,9,11,65,135,136,137,145,202,206],$V03=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V13=[1,695],$V23=[1,697],$V33=[4,5,64,193,195,196,197,198],$V43=[8,9,11,202,204,206,356],$V53=[214,219],$V63=[1,738],$V73=[8,9,11,61,65,202,206],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,775],$Va3=[1,776],$Vb3=[1,777],$Vc3=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,808],$Ve3=[1,821],$Vf3=[1,822],$Vg3=[1,820],$Vh3=[1,818],$Vi3=[1,824],$Vj3=[1,815],$Vk3=[1,816],$Vl3=[1,817],$Vm3=[1,819],$Vn3=[1,828],$Vo3=[8,9,11,61,65,135,136,137,145,202,206],$Vp3=[8,9,11,65,202,206],$Vq3=[1,845],$Vr3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vs3=[1,862],$Vt3=[1,861],$Vu3=[1,891],$Vv3=[1,892],$Vw3=[1,893],$Vx3=[1,894],$Vy3=[78,86,275,276,277,279],$Vz3=[2,381],$VA3=[1,899],$VB3=[1,925],$VC3=[8,9,11,202,206,247,259,260,261],$VD3=[1,1020],$VE3=[1,1030]; var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"Literal":3,"LITERAL":4,"BRALITERAL":5,"main":6,"Statements":7,"EOF":8,"SEMICOLON":9,"AStatement":10,"GO":11,"ExplainStatement":12,"EXPLAIN":13,"QUERY":14,"PLAN":15,"Statement":16,"If":17,"AlterTable":18,"AttachDatabase":19,"CreateDatabase":20,"CreateIndex":21,"CreateTable":22,"CreateView":23,"Declare":24,"Delete":25,"DetachDatabase":26,"DropDatabase":27,"DropIndex":28,"DropTable":29,"DropView":30,"Insert":31,"RenameTable":32,"Select":33,"Merge":34,"WithSelect":35,"ShowCreateTable":36,"ShowColumns":37,"ShowDatabases":38,"ShowIndex":39,"ShowTables":40,"TruncateTable":41,"BeginTransaction":42,"CommitTransaction":43,"RollbackTransaction":44,"EndTransaction":45,"UseDatabase":46,"Update":47,"Help":48,"JavaScript":49,"Source":50,"Assert":51,"While":52,"Continue":53,"Break":54,"BeginEnd":55,"Print":56,"Require":57,"SetVariable":58,"WITH":59,"WithTablesList":60,"COMMA":61,"WithTable":62,"AS":63,"LPAR":64,"RPAR":65,"SelectClause":66,"IntoClause":67,"FromClause":68,"WhereClause":69,"GroupClause":70,"OrderClause":71,"LimitClause":72,"UnionClause":73,"SelectModifier":74,"DISTINCT":75,"TopClause":76,"ResultColumns":77,"UNIQUE":78,"ALL":79,"SELECT":80,"VALUE":81,"ROW":82,"COLUMN":83,"MATRIX":84,"TEXTSTRING":85,"INDEX":86,"RECORDSET":87,"TOP":88,"NumValue":89,"PERCENT":90,"INTO":91,"Table":92,"FuncValue":93,"ParamValue":94,"VarValue":95,"STRING":96,"FROM":97,"FromTablesList":98,"FromTable":99,"JoinTablesList":100,"ApplyClause":101,"CROSS":102,"APPLY":103,"OUTER":104,"FromString":105,"DOT":106,"JoinTable":107,"JoinMode":108,"JoinTableAs":109,"OnClause":110,"JoinModeMode":111,"NATURAL":112,"JOIN":113,"INNER":114,"LEFT":115,"RIGHT":116,"FULL":117,"SEMI":118,"ANTI":119,"ON":120,"Expression":121,"USING":122,"ColumnsList":123,"WHERE":124,"GROUP":125,"BY":126,"GroupExpressionsList":127,"HavingClause":128,"GroupExpression":129,"GROUPING":130,"SETS":131,"ROLLUP":132,"CUBE":133,"HAVING":134,"UNION":135,"EXCEPT":136,"INTERSECT":137,"CORRESPONDING":138,"ORDER":139,"OrderExpressionsList":140,"OrderExpression":141,"DIRECTION":142,"COLLATE":143,"NOCASE":144,"LIMIT":145,"OffsetClause":146,"OFFSET":147,"ResultColumn":148,"TDTH":149,"TD":150,"TH":151,"NUMBER":152,"StringValue":153,"Star":154,"STAR":155,"Column":156,"AggrValue":157,"Op":158,"LogicValue":159,"NullValue":160,"ExistsValue":161,"CaseValue":162,"CastClause":163,"Json":164,"NewClause":165,"JAVASCRIPT":166,"NEW":167,"CAST":168,"ColumnType":169,"CONVERT":170,"PrimitiveValue":171,"CURRENT_TIMESTAMP":172,"Aggregator":173,"OverClause":174,"OVER":175,"OverPartitionClause":176,"OverOrderByClause":177,"PARTITION":178,"SUM":179,"COUNT":180,"MIN":181,"MAX":182,"AVG":183,"FIRST":184,"LAST":185,"AGGR":186,"ARRAY":187,"ExprList":188,"TRUE":189,"FALSE":190,"NSTRING":191,"NULL":192,"AT":193,"EXISTS":194,"DOLLAR":195,"COLON":196,"QUESTION":197,"BRAQUESTION":198,"CASE":199,"WhensList":200,"ElseClause":201,"END":202,"When":203,"WHEN":204,"THEN":205,"ELSE":206,"LIKE":207,"NOT_LIKE":208,"PLUS":209,"MINUS":210,"SLASH":211,"MODULO":212,"CARET":213,"ARROW":214,"GT":215,"GE":216,"LT":217,"LE":218,"EQ":219,"EQEQ":220,"EQEQEQ":221,"NE":222,"NEEQEQ":223,"NEEQEQEQ":224,"CondOp":225,"AllSome":226,"AND":227,"OR":228,"NOT":229,"IN":230,"ColFunc":231,"BETWEEN":232,"NOT_BETWEEN":233,"IS":234,"DOUBLECOLON":235,"SOME":236,"ANY":237,"UPDATE":238,"SET":239,"SetColumnsList":240,"SetColumn":241,"DELETE":242,"INSERT":243,"Into":244,"VALUES":245,"ValuesListsList":246,"DEFAULT":247,"ValuesList":248,"Value":249,"DateValue":250,"CREATE":251,"TABLE":252,"IfNotExists":253,"CreateTableDefClause":254,"CreateTableOptionsClause":255,"CreateTableOptions":256,"CreateTableOption":257,"ENGINE":258,"AUTO_INCREMENT":259,"CHARSET":260,"TemporaryClause":261,"TEMPORARY":262,"TEMP":263,"IF":264,"ColumnDefsList":265,"ConstraintsList":266,"Constraint":267,"ConstraintName":268,"PrimaryKey":269,"ForeignKey":270,"UniqueKey":271,"IndexKey":272,"Check":273,"CONSTRAINT":274,"CHECK":275,"PRIMARY":276,"KEY":277,"ColsList":278,"FOREIGN":279,"REFERENCES":280,"OnForeignKeyClause":281,"OnDeleteClause":282,"OnUpdateClause":283,"NO":284,"ACTION":285,"ColumnDef":286,"ColumnConstraintsClause":287,"ColumnConstraints":288,"ENUM":289,"ColumnConstraintsList":290,"ColumnConstraint":291,"IDENTITY":292,"DROP":293,"IfExists":294,"ALTER":295,"RENAME":296,"TO":297,"ADD":298,"MODIFY":299,"ATTACH":300,"DATABASE":301,"DETACH":302,"AsClause":303,"USE":304,"SHOW":305,"DATABASES":306,"TABLES":307,"COLUMNS":308,"VIEW":309,"HELP":310,"ExpressionStatement":311,"SOURCE":312,"ASSERT":313,"JsonObject":314,"ATLBRA":315,"JsonArray":316,"JsonValue":317,"JsonPrimitiveValue":318,"LCUR":319,"JsonPropertiesList":320,"RCUR":321,"JsonElementsList":322,"RBRA":323,"JsonProperty":324,"OnOff":325,"SetPropsList":326,"SetProp":327,"OFF":328,"COMMIT":329,"TRANSACTION":330,"ROLLBACK":331,"BEGIN":332,"ElseStatement":333,"WHILE":334,"CONTINUE":335,"BREAK":336,"PRINT":337,"REQUIRE":338,"StringValuesList":339,"DECLARE":340,"DeclaresList":341,"DeclareItem":342,"TRUNCATE":343,"MERGE":344,"MergeInto":345,"MergeUsing":346,"MergeOn":347,"MergeMatchedList":348,"OutputClause":349,"MergeMatched":350,"MergeNotMatched":351,"MATCHED":352,"MergeMatchedAction":353,"MergeNotMatchedAction":354,"TARGET":355,"OUTPUT":356,"$accept":0,"$end":1}, -terminals_: {2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",102:"CROSS",103:"APPLY",104:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",252:"TABLE",258:"ENGINE",259:"AUTO_INCREMENT",260:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"}, -productions_: [0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,0],[101,6],[101,7],[101,6],[101,7],[98,1],[98,3],[99,4],[99,5],[99,3],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[105,1],[92,3],[92,1],[100,2],[100,2],[100,1],[100,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,8],[22,4],[255,0],[255,1],[256,2],[256,1],[257,1],[257,3],[257,3],[257,3],[261,0],[261,1],[261,1],[253,0],[253,3],[254,3],[254,1],[254,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,9],[23,6],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]], +symbols_: {"error":2,"Literal":3,"LITERAL":4,"BRALITERAL":5,"main":6,"Statements":7,"EOF":8,"SEMICOLON":9,"AStatement":10,"GO":11,"ExplainStatement":12,"EXPLAIN":13,"QUERY":14,"PLAN":15,"Statement":16,"If":17,"AlterTable":18,"AttachDatabase":19,"CreateDatabase":20,"CreateIndex":21,"CreateTable":22,"CreateView":23,"Declare":24,"Delete":25,"DetachDatabase":26,"DropDatabase":27,"DropIndex":28,"DropTable":29,"DropView":30,"Insert":31,"RenameTable":32,"Select":33,"Merge":34,"WithSelect":35,"ShowCreateTable":36,"ShowColumns":37,"ShowDatabases":38,"ShowIndex":39,"ShowTables":40,"TruncateTable":41,"BeginTransaction":42,"CommitTransaction":43,"RollbackTransaction":44,"EndTransaction":45,"UseDatabase":46,"Update":47,"Help":48,"JavaScript":49,"Source":50,"Assert":51,"While":52,"Continue":53,"Break":54,"BeginEnd":55,"Print":56,"Require":57,"SetVariable":58,"WITH":59,"WithTablesList":60,"COMMA":61,"WithTable":62,"AS":63,"LPAR":64,"RPAR":65,"SelectClause":66,"IntoClause":67,"FromClause":68,"WhereClause":69,"GroupClause":70,"OrderClause":71,"LimitClause":72,"UnionClause":73,"SelectModifier":74,"DISTINCT":75,"TopClause":76,"ResultColumns":77,"UNIQUE":78,"ALL":79,"SELECT":80,"VALUE":81,"ROW":82,"COLUMN":83,"MATRIX":84,"TEXTSTRING":85,"INDEX":86,"RECORDSET":87,"TOP":88,"NumValue":89,"PERCENT":90,"INTO":91,"Table":92,"FuncValue":93,"ParamValue":94,"VarValue":95,"STRING":96,"FROM":97,"FromTablesList":98,"JoinTablesList":99,"ApplyClause":100,"CROSS":101,"APPLY":102,"OUTER":103,"FromTable":104,"FromString":105,"DOT":106,"JoinTable":107,"JoinMode":108,"JoinTableAs":109,"OnClause":110,"JoinModeMode":111,"NATURAL":112,"JOIN":113,"INNER":114,"LEFT":115,"RIGHT":116,"FULL":117,"SEMI":118,"ANTI":119,"ON":120,"Expression":121,"USING":122,"ColumnsList":123,"WHERE":124,"GROUP":125,"BY":126,"GroupExpressionsList":127,"HavingClause":128,"GroupExpression":129,"GROUPING":130,"SETS":131,"ROLLUP":132,"CUBE":133,"HAVING":134,"UNION":135,"EXCEPT":136,"INTERSECT":137,"CORRESPONDING":138,"ORDER":139,"OrderExpressionsList":140,"OrderExpression":141,"DIRECTION":142,"COLLATE":143,"NOCASE":144,"LIMIT":145,"OffsetClause":146,"OFFSET":147,"ResultColumn":148,"TDTH":149,"TD":150,"TH":151,"NUMBER":152,"StringValue":153,"Star":154,"STAR":155,"Column":156,"AggrValue":157,"Op":158,"LogicValue":159,"NullValue":160,"ExistsValue":161,"CaseValue":162,"CastClause":163,"Json":164,"NewClause":165,"JAVASCRIPT":166,"NEW":167,"CAST":168,"ColumnType":169,"CONVERT":170,"PrimitiveValue":171,"CURRENT_TIMESTAMP":172,"Aggregator":173,"OverClause":174,"OVER":175,"OverPartitionClause":176,"OverOrderByClause":177,"PARTITION":178,"SUM":179,"COUNT":180,"MIN":181,"MAX":182,"AVG":183,"FIRST":184,"LAST":185,"AGGR":186,"ARRAY":187,"ExprList":188,"TRUE":189,"FALSE":190,"NSTRING":191,"NULL":192,"AT":193,"EXISTS":194,"DOLLAR":195,"COLON":196,"QUESTION":197,"BRAQUESTION":198,"CASE":199,"WhensList":200,"ElseClause":201,"END":202,"When":203,"WHEN":204,"THEN":205,"ELSE":206,"LIKE":207,"NOT_LIKE":208,"PLUS":209,"MINUS":210,"SLASH":211,"MODULO":212,"CARET":213,"ARROW":214,"GT":215,"GE":216,"LT":217,"LE":218,"EQ":219,"EQEQ":220,"EQEQEQ":221,"NE":222,"NEEQEQ":223,"NEEQEQEQ":224,"CondOp":225,"AllSome":226,"AND":227,"OR":228,"NOT":229,"IN":230,"ColFunc":231,"BETWEEN":232,"NOT_BETWEEN":233,"IS":234,"DOUBLECOLON":235,"SOME":236,"ANY":237,"UPDATE":238,"SET":239,"SetColumnsList":240,"SetColumn":241,"DELETE":242,"INSERT":243,"Into":244,"VALUES":245,"ValuesListsList":246,"DEFAULT":247,"ValuesList":248,"Value":249,"DateValue":250,"CREATE":251,"TemporaryClause":252,"TABLE":253,"IfNotExists":254,"CreateTableDefClause":255,"CreateTableOptionsClause":256,"CreateTableOptions":257,"CreateTableOption":258,"ENGINE":259,"AUTO_INCREMENT":260,"CHARSET":261,"TEMPORARY":262,"TEMP":263,"IF":264,"ColumnDefsList":265,"ConstraintsList":266,"Constraint":267,"ConstraintName":268,"PrimaryKey":269,"ForeignKey":270,"UniqueKey":271,"IndexKey":272,"Check":273,"CONSTRAINT":274,"CHECK":275,"PRIMARY":276,"KEY":277,"ColsList":278,"FOREIGN":279,"REFERENCES":280,"OnForeignKeyClause":281,"OnDeleteClause":282,"OnUpdateClause":283,"NO":284,"ACTION":285,"ColumnDef":286,"ColumnConstraintsClause":287,"ColumnConstraints":288,"ENUM":289,"ColumnConstraintsList":290,"ColumnConstraint":291,"IDENTITY":292,"DROP":293,"IfExists":294,"ALTER":295,"RENAME":296,"TO":297,"ADD":298,"MODIFY":299,"ATTACH":300,"DATABASE":301,"DETACH":302,"AsClause":303,"USE":304,"SHOW":305,"DATABASES":306,"TABLES":307,"COLUMNS":308,"VIEW":309,"HELP":310,"ExpressionStatement":311,"SOURCE":312,"ASSERT":313,"JsonObject":314,"ATLBRA":315,"JsonArray":316,"JsonValue":317,"JsonPrimitiveValue":318,"LCUR":319,"JsonPropertiesList":320,"RCUR":321,"JsonElementsList":322,"RBRA":323,"JsonProperty":324,"OnOff":325,"SetPropsList":326,"SetProp":327,"OFF":328,"COMMIT":329,"TRANSACTION":330,"ROLLBACK":331,"BEGIN":332,"ElseStatement":333,"WHILE":334,"CONTINUE":335,"BREAK":336,"PRINT":337,"REQUIRE":338,"StringValuesList":339,"DECLARE":340,"DeclaresList":341,"DeclareItem":342,"TRUNCATE":343,"MERGE":344,"MergeInto":345,"MergeUsing":346,"MergeOn":347,"MergeMatchedList":348,"OutputClause":349,"MergeMatched":350,"MergeNotMatched":351,"MATCHED":352,"MergeMatchedAction":353,"MergeNotMatchedAction":354,"TARGET":355,"OUTPUT":356,"$accept":0,"$end":1}, +terminals_: {2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",101:"CROSS",102:"APPLY",103:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",253:"TABLE",259:"ENGINE",260:"AUTO_INCREMENT",261:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"}, +productions_: [0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,5],[68,0],[100,6],[100,7],[100,6],[100,7],[98,1],[98,3],[104,4],[104,5],[104,3],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[105,1],[92,3],[92,1],[99,2],[99,2],[99,1],[99,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,9],[22,5],[256,0],[256,1],[257,2],[257,1],[258,1],[258,3],[258,3],[258,3],[252,0],[252,1],[252,1],[254,0],[254,3],[255,3],[255,1],[255,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,10],[23,7],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ @@ -215,7 +215,7 @@ break; case 4: case 5: this.$ = $$[$0-2]; if($$[$0]) $$[$0-2].push($$[$0]); break; -case 6: case 7: case 56: case 88: case 113: case 114: case 149: case 168: case 250: case 267: case 327: case 340: case 341: case 345: case 353: case 392: case 393: case 501: case 506: case 526: case 528: case 542: case 543: +case 6: case 7: case 56: case 89: case 114: case 115: case 150: case 169: case 251: case 268: case 328: case 341: case 342: case 346: case 354: case 393: case 394: case 502: case 507: case 527: case 529: case 543: case 544: this.$ = [$$[$0]]; break; case 8: @@ -233,7 +233,7 @@ case 10: delete yy.queries; break; -case 11: case 63: case 74: case 83: case 144: case 145: case 147: case 155: case 157: case 166: case 174: case 176: case 229: case 270: case 365: case 368: case 380: case 385: case 386: case 420: +case 11: case 63: case 74: case 84: case 145: case 146: case 148: case 156: case 158: case 167: case 175: case 177: case 230: case 271: case 366: case 369: case 381: case 386: case 387: case 421: this.$ = undefined; break; case 54: @@ -298,7 +298,7 @@ break; case 73: this.$ = {top: $$[$0-1], percent:true}; break; -case 75: case 233: case 387: case 388: +case 75: case 234: case 388: case 389: this.$ = undefined; break; case 76: case 77: case 78: case 79: @@ -323,51 +323,54 @@ case 81: this.$ = { from: $$[$0] }; break; case 82: - this.$ = { from: [$$[$0-1]], joins: $$[$0] }; + this.$ = { from: $$[$0-1], joins: $$[$0] }; break; -case 84: - this.$ = new yy.Apply({select: $$[$0-2], applymode:'CROSS', as:$$[$0]}); +case 83: + this.$ = { from: $$[$0-2], joins: $$[$0-1] }; break; case 85: - this.$ = new yy.Apply({select: $$[$0-3], applymode:'CROSS', as:$$[$0]}); + this.$ = new yy.Apply({select: $$[$0-2], applymode:'CROSS', as:$$[$0]}); break; case 86: - this.$ = new yy.Apply({select: $$[$0-2], applymode:'OUTER', as:$$[$0]}); + this.$ = new yy.Apply({select: $$[$0-3], applymode:'CROSS', as:$$[$0]}); break; case 87: + this.$ = new yy.Apply({select: $$[$0-2], applymode:'OUTER', as:$$[$0]}); +break; +case 88: this.$ = new yy.Apply({select: $$[$0-3], applymode:'OUTER', as:$$[$0]}); break; -case 89: case 150: case 328: case 394: case 395: +case 90: case 151: case 329: case 395: case 396: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]); break; -case 90: +case 91: this.$ = $$[$0-2]; this.$.as = $$[$0] break; -case 91: +case 92: this.$ = $$[$0-3]; this.$.as = $$[$0] break; -case 92: +case 93: this.$ = $$[$0-1]; this.$.as = 'default' break; -case 93: +case 94: this.$ = $$[$0-1]; $$[$0-1].as = $$[$0] break; -case 94: +case 95: this.$ = $$[$0-2]; $$[$0-2].as = $$[$0] break; -case 95: case 154: case 190: case 198: case 199: case 200: case 201: case 202: case 203: case 204: case 205: case 206: case 207: case 208: case 209: case 210: case 211: case 213: case 223: case 224: case 225: case 226: case 227: case 228: case 269: case 316: case 317: case 318: case 319: case 320: case 321: case 381: case 406: case 408: case 475: case 476: case 477: case 478: case 479: case 480: case 484: case 486: case 487: case 496: case 507: case 508: +case 96: case 155: case 191: case 199: case 200: case 201: case 202: case 203: case 204: case 205: case 206: case 207: case 208: case 209: case 210: case 211: case 212: case 214: case 224: case 225: case 226: case 227: case 228: case 229: case 270: case 317: case 318: case 319: case 320: case 321: case 322: case 382: case 407: case 409: case 476: case 477: case 478: case 479: case 480: case 481: case 485: case 487: case 488: case 497: case 508: case 509: this.$ = $$[$0]; break; -case 96: case 100: case 103: case 106: +case 97: case 101: case 104: case 107: this.$ = $$[$0-1]; $$[$0-1].as = $$[$0]; break; -case 97: case 101: case 104: case 107: +case 98: case 102: case 105: case 108: this.$ = $$[$0-2]; $$[$0-2].as = $$[$0]; break; -case 98: case 99: case 102: case 105: +case 99: case 100: case 103: case 106: this.$ = $$[$0]; $$[$0].as = 'default'; break; -case 108: +case 109: var s = $$[$0]; s = s.substr(1,s.length-2); @@ -386,326 +389,283 @@ case 108: this.$ = r; break; -case 109: +case 110: this.$ = new yy.Table({databaseid: $$[$0-2], tableid:$$[$0]}); break; -case 110: +case 111: this.$ = new yy.Table({tableid: $$[$0]}); break; -case 111: case 112: +case 112: case 113: this.$ = $$[$0-1]; $$[$0-1].push($$[$0]); break; -case 115: +case 116: this.$ = new yy.Join($$[$0-2]); yy.extend(this.$, $$[$0-1]); yy.extend(this.$, $$[$0]); break; -case 116: +case 117: this.$ = {table: $$[$0]}; break; -case 117: +case 118: this.$ = {table: $$[$0-1], as: $$[$0] } ; break; -case 118: +case 119: this.$ = {table: $$[$0-2], as: $$[$0] } ; break; -case 119: +case 120: this.$ = {param: $$[$0-1], as: $$[$0] } ; break; -case 120: +case 121: this.$ = {param: $$[$0-2], as: $$[$0] } ; break; -case 121: +case 122: this.$ = {select: $$[$0-3], as: $$[$0]} ; break; -case 122: +case 123: this.$ = {select: $$[$0-4], as: $$[$0] } ; break; -case 123: +case 124: this.$ = {funcid:$$[$0], as:'default'}; break; -case 124: +case 125: this.$ = {funcid:$$[$0-1], as: $$[$0]}; break; -case 125: +case 126: this.$ = {funcid:$$[$0-2], as: $$[$0]}; break; -case 126: +case 127: this.$ = {variable:$$[$0],as:'default'}; break; -case 127: +case 128: this.$ = {variable:$$[$0-1],as:$$[$0]}; break; -case 128: +case 129: this.$ = {variable:$$[$0-2],as:$$[$0]} break; -case 129: +case 130: this.$ = { joinmode: $$[$0] } ; break; -case 130: +case 131: this.$ = {joinmode: $$[$0-1], natural:true} ; break; -case 131: case 132: +case 132: case 133: this.$ = "INNER"; break; -case 133: case 134: +case 134: case 135: this.$ = "LEFT"; break; -case 135: case 136: +case 136: case 137: this.$ = "RIGHT"; break; -case 137: case 138: +case 138: case 139: this.$ = "OUTER"; break; -case 139: +case 140: this.$ = "SEMI"; break; -case 140: +case 141: this.$ = "ANTI"; break; -case 141: +case 142: this.$ = "CROSS"; break; -case 142: +case 143: this.$ = {on: $$[$0]}; break; -case 143: case 538: +case 144: case 539: this.$ = {using: $$[$0]}; break; -case 146: +case 147: this.$ = {where: new yy.Expression({expression:$$[$0]})}; break; -case 148: +case 149: this.$ = {group:$$[$0-1]}; yy.extend(this.$,$$[$0]); break; -case 151: +case 152: this.$ = new yy.GroupExpression({type:'GROUPING SETS', group: $$[$0-1]}); break; -case 152: +case 153: this.$ = new yy.GroupExpression({type:'ROLLUP', group: $$[$0-1]}); break; -case 153: +case 154: this.$ = new yy.GroupExpression({type:'CUBE', group: $$[$0-1]}); break; -case 156: +case 157: this.$ = {having:$$[$0]} break; -case 158: +case 159: this.$ = {union: $$[$0]} ; break; -case 159: +case 160: this.$ = {unionall: $$[$0]} ; break; -case 160: +case 161: this.$ = {except: $$[$0]} ; break; -case 161: +case 162: this.$ = {intersect: $$[$0]} ; break; -case 162: +case 163: this.$ = {union: $$[$0-1], corresponding:true} ; break; -case 163: +case 164: this.$ = {unionall: $$[$0-1], corresponding:true} ; break; -case 164: +case 165: this.$ = {except: $$[$0-1], corresponding:true} ; break; -case 165: +case 166: this.$ = {intersect: $$[$0-1], corresponding:true} ; break; -case 167: +case 168: this.$ = {order:$$[$0]} break; -case 169: +case 170: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; -case 170: +case 171: this.$ = new yy.Expression({expression: $$[$0], direction:'ASC'}) break; -case 171: +case 172: this.$ = new yy.Expression({expression: $$[$0-1], direction:$$[$0].toUpperCase()}) break; -case 172: +case 173: this.$ = new yy.Expression({expression: $$[$0-2], direction:'ASC', nocase:true}) break; -case 173: +case 174: this.$ = new yy.Expression({expression: $$[$0-3], direction:$$[$0].toUpperCase(), nocase:true}) break; -case 175: +case 176: this.$ = {limit:$$[$0-1]}; yy.extend(this.$, $$[$0]) break; -case 177: +case 178: this.$ = {offset:$$[$0]} break; -case 178: +case 179: yy.extend($$[$0-1],$$[$0]); $$[$0-3].push($$[$0-1]); this.$ = $$[$0-3]; break; -case 179: +case 180: yy.extend($$[$0-1],$$[$0]); this.$ = [$$[$0-1]]; break; -case 180: +case 181: this.$ = undefined break; -case 181: +case 182: this.$ = {td:$$[$0]}; break; -case 182: +case 183: this.$ = {th:$$[$0]}; break; -case 183: +case 184: this.$ = {th:$$[$0-2],td:$$[$0]}; break; -case 184: case 186: case 188: +case 185: case 187: case 189: $$[$0-2].as = $$[$0]; this.$ = $$[$0-2]; break; -case 185: case 187: case 189: +case 186: case 188: case 190: $$[$0-1].as = $$[$0]; this.$ = $$[$0-1]; break; -case 191: +case 192: this.$ = new yy.Column({columid: $$[$0], tableid: $$[$0-2], databaseid:$$[$0-4]}); break; -case 192: +case 193: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2]}); break; -case 193: +case 194: this.$ = new yy.Column({columnid:$$[$0]}); break; -case 194: +case 195: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2], databaseid:$$[$0-4]}); break; -case 195: case 196: +case 196: case 197: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2]}); break; -case 197: +case 198: this.$ = new yy.Column({columnid: $$[$0]}); break; -case 212: +case 213: this.$ = new yy.Json({value:$$[$0]}); break; -<<<<<<< HEAD -case 214: - - if(!yy.queries) yy.queries = []; - yy.queries.push($$[$0-1]); - $$[$0-1].queriesidx = yy.queries.length; - this.$ = $$[$0-1]; -||||||| merged common ancestors -case 210: - - if(!yy.queries) yy.queries = []; - yy.queries.push($$[$0-1]); - $$[$0-1].queriesidx = yy.queries.length; - this.$ = $$[$0-1]; -======= -case 214: +case 215: if(!yy.queries) yy.queries = []; yy.queries.push($$[$0-1]); $$[$0-1].queriesidx = yy.queries.length; this.$ = $$[$0-1]; ->>>>>>> release/0.0.47 break; -case 215: +case 216: this.$ = $$[$0] break; -case 216: +case 217: this.$ = new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)}); break; -case 217: +case 218: this.$ = new yy.FuncValue({funcid:$$[$0], newid:true}); break; -case 218: +case 219: this.$ = $$[$0]; yy.extend(this.$,{newid:true}); break; -case 219: +case 220: this.$ = new yy.Convert({expression:$$[$0-3]}) ; yy.extend(this.$,$$[$0-1]) ; break; -case 220: +case 221: this.$ = new yy.Convert({expression:$$[$0-5], style:$$[$0-1]}) ; yy.extend(this.$,$$[$0-3]) ; break; -case 221: +case 222: this.$ = new yy.Convert({expression:$$[$0-1]}) ; yy.extend(this.$,$$[$0-3]) ; break; -case 222: +case 223: this.$ = new yy.Convert({expression:$$[$0-3], style:$$[$0-1]}) ; yy.extend(this.$,$$[$0-5]) ; break; -case 230: +case 231: this.$ = new yy.AggrValue({aggregatorid: $$[$0-4].toUpperCase(), expression: $$[$0-2], over:$$[$0]}); break; -case 231: +case 232: this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], distinct:true, over:$$[$0]}); break; -<<<<<<< HEAD -case 232: - this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], -||||||| merged common ancestors -case 228: - this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], -======= -case 232: +case 233: this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], ->>>>>>> release/0.0.47 over:$$[$0]}); break; -case 234: case 235: +case 235: case 236: this.$ = new yy.Over(); yy.extend(this.$,$$[$0-1]); break; -case 236: +case 237: this.$ = new yy.Over(); yy.extend(this.$,$$[$0-2]); yy.extend(this.$,$$[$0-1]); break; -case 237: +case 238: this.$ = {partition:$$[$0]}; break; -case 238: +case 239: this.$ = {order:$$[$0]}; break; -case 239: +case 240: this.$ = "SUM"; break; -case 240: +case 241: this.$ = "COUNT"; break; -case 241: +case 242: this.$ = "MIN"; break; -case 242: +case 243: this.$ = "MAX"; break; -case 243: +case 244: this.$ = "AVG"; break; -case 244: +case 245: this.$ = "FIRST"; break; -case 245: +case 246: this.$ = "LAST"; break; -case 246: +case 247: this.$ = "AGGR"; break; -case 247: +case 248: this.$ = "ARRAY"; break; -<<<<<<< HEAD -case 248: - - if(alasql.aggr[$$[$0-3]]) { - this.$ = new yy.AggrValue({aggregatorid: 'REDUCE', - funcid: $$[$0-3], expression: $$[$0-1].pop() }); - } else { - this.$ = new yy.FuncValue({funcid: $$[$0-3], args: $$[$0-1]}); - }; -||||||| merged common ancestors -case 244: - - if(alasql.aggr[$$[$0-3]]) { - this.$ = new yy.AggrValue({aggregatorid: 'REDUCE', - funcid: $$[$0-3], expression: $$[$0-1].pop() }); - } else { - this.$ = new yy.FuncValue({funcid: $$[$0-3], args: $$[$0-1]}); - }; -======= -case 248: +case 249: if(alasql.aggr[$$[$0-3]]) { this.$ = new yy.AggrValue({aggregatorid: 'REDUCE', @@ -713,880 +673,695 @@ case 248: } else { this.$ = new yy.FuncValue({funcid: $$[$0-3], args: $$[$0-1]}); }; ->>>>>>> release/0.0.47 break; -case 249: +case 250: this.$ = new yy.FuncValue({ funcid: $$[$0-2] }) break; -case 251: +case 252: $$[$0-2].push($$[$0]); this.$ = $$[$0-2] break; -case 252: +case 253: this.$ = new yy.NumValue({value:+$$[$0]}); break; -case 253: +case 254: this.$ = new yy.LogicValue({value:true}); break; -case 254: +case 255: this.$ = new yy.LogicValue({value:false}); break; -case 255: +case 256: this.$ = new yy.StringValue({value: $$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")}); break; -case 256: +case 257: this.$ = new yy.StringValue({value: $$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")}); break; -case 257: +case 258: this.$ = new yy.NullValue({value:undefined}); break; -case 258: +case 259: this.$ = new yy.VarValue({variable:$$[$0]}); break; -<<<<<<< HEAD -case 259: - - if(!yy.exists) yy.exists = []; - this.$ = new yy.ExistsValue({value:$$[$0-1], existsidx:yy.exists.length}); - yy.exists.push($$[$0-1]); -||||||| merged common ancestors -case 255: - - if(!yy.exists) yy.exists = []; - this.$ = new yy.ExistsValue({value:$$[$0-1], existsidx:yy.exists.length}); - yy.exists.push($$[$0-1]); -======= -case 259: +case 260: if(!yy.exists) yy.exists = []; this.$ = new yy.ExistsValue({value:$$[$0-1], existsidx:yy.exists.length}); yy.exists.push($$[$0-1]); ->>>>>>> release/0.0.47 break; -case 260: case 261: +case 261: case 262: this.$ = new yy.ParamValue({param: $$[$0]}); break; -<<<<<<< HEAD -case 262: - - if(typeof yy.question == 'undefined') yy.question = 0; - this.$ = new yy.ParamValue({param: yy.question++}); -||||||| merged common ancestors -case 258: - - if(typeof yy.question == 'undefined') yy.question = 0; - this.$ = new yy.ParamValue({param: yy.question++}); -======= -case 262: +case 263: if(typeof yy.question == 'undefined') yy.question = 0; this.$ = new yy.ParamValue({param: yy.question++}); ->>>>>>> release/0.0.47 break; -<<<<<<< HEAD -case 263: - - if(typeof yy.question == 'undefined') yy.question = 0; - this.$ = new yy.ParamValue({param: yy.question++, array:true}); -||||||| merged common ancestors -case 259: - - if(typeof yy.question == 'undefined') yy.question = 0; - this.$ = new yy.ParamValue({param: yy.question++, array:true}); -======= -case 263: +case 264: if(typeof yy.question == 'undefined') yy.question = 0; this.$ = new yy.ParamValue({param: yy.question++, array:true}); ->>>>>>> release/0.0.47 break; -case 264: +case 265: this.$ = new yy.CaseValue({expression:$$[$0-3], whens: $$[$0-2], elses: $$[$0-1]}); break; -case 265: +case 266: this.$ = new yy.CaseValue({whens: $$[$0-2], elses: $$[$0-1]}); break; -case 266: case 540: case 541: +case 267: case 541: case 542: this.$ = $$[$0-1]; this.$.push($$[$0]); break; -case 268: +case 269: this.$ = {when: $$[$0-2], then: $$[$0] }; break; -case 271: +case 272: this.$ = new yy.Op({left:$$[$0-2], op:'LIKE', right:$$[$0]}); break; -case 272: +case 273: this.$ = new yy.Op({left:$$[$0-2], op:'NOT LIKE', right:$$[$0] }); break; -case 273: +case 274: this.$ = new yy.Op({left:$$[$0-2], op:'+', right:$$[$0]}); break; -case 274: +case 275: this.$ = new yy.Op({left:$$[$0-2], op:'-', right:$$[$0]}); break; -case 275: +case 276: this.$ = new yy.Op({left:$$[$0-2], op:'*', right:$$[$0]}); break; -case 276: +case 277: this.$ = new yy.Op({left:$$[$0-2], op:'/', right:$$[$0]}); break; -case 277: +case 278: this.$ = new yy.Op({left:$$[$0-2], op:'%', right:$$[$0]}); break; -case 278: +case 279: this.$ = new yy.Op({left:$$[$0-2], op:'^', right:$$[$0]}); break; -case 279: case 280: case 282: +case 280: case 281: case 283: this.$ = new yy.Op({left:$$[$0-2], op:'->' , right:$$[$0]}); break; -case 281: +case 282: this.$ = new yy.Op({left:$$[$0-4], op:'->' , right:$$[$0-1]}); break; -case 283: +case 284: this.$ = new yy.Op({left:$$[$0-2], op:'>' , right:$$[$0]}); break; -case 284: +case 285: this.$ = new yy.Op({left:$$[$0-2], op:'>=' , right:$$[$0]}); break; -case 285: +case 286: this.$ = new yy.Op({left:$$[$0-2], op:'<' , right:$$[$0]}); break; -case 286: +case 287: this.$ = new yy.Op({left:$$[$0-2], op:'<=' , right:$$[$0]}); break; -case 287: +case 288: this.$ = new yy.Op({left:$$[$0-2], op:'=' , right:$$[$0]}); break; -case 288: +case 289: this.$ = new yy.Op({left:$$[$0-2], op:'==' , right:$$[$0]}); break; -case 289: +case 290: this.$ = new yy.Op({left:$$[$0-2], op:'===' , right:$$[$0]}); break; -case 290: +case 291: this.$ = new yy.Op({left:$$[$0-2], op:'!=' , right:$$[$0]}); break; -case 291: +case 292: this.$ = new yy.Op({left:$$[$0-2], op:'!==' , right:$$[$0]}); break; -case 292: +case 293: this.$ = new yy.Op({left:$$[$0-2], op:'!===' , right:$$[$0]}); break; -<<<<<<< HEAD -case 293: - - if(!yy.queries) yy.queries = []; - this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1], queriesidx: yy.queries.length}); - yy.queries.push($$[$0-1]); -||||||| merged common ancestors -case 289: - - if(!yy.queries) yy.queries = []; - this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1], queriesidx: yy.queries.length}); - yy.queries.push($$[$0-1]); -======= -case 293: +case 294: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); ->>>>>>> release/0.0.47 break; -<<<<<<< HEAD -case 294: - - this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1]}); -||||||| merged common ancestors -case 290: - - this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1]}); -======= -case 294: +case 295: this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1]}); ->>>>>>> release/0.0.47 break; -case 295: +case 296: this.$ = new yy.Op({left:$$[$0-2], op:'AND' , right:$$[$0]}); break; -case 296: +case 297: this.$ = new yy.Op({left:$$[$0-2], op:'OR' , right:$$[$0]}); break; -case 297: +case 298: this.$ = new yy.UniOp({op:'NOT' , right:$$[$0]}); break; -case 298: +case 299: this.$ = new yy.UniOp({op:'-' , right:$$[$0]}); break; -case 299: +case 300: this.$ = new yy.UniOp({op:'+' , right:$$[$0]}); break; -case 300: +case 301: this.$ = new yy.UniOp({right: $$[$0-1]}); break; -<<<<<<< HEAD -case 301: - - if(!yy.queries) yy.queries = []; - this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1], queriesidx: yy.queries.length}); - yy.queries.push($$[$0-1]); -||||||| merged common ancestors -case 297: - - if(!yy.queries) yy.queries = []; - this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1], queriesidx: yy.queries.length}); - yy.queries.push($$[$0-1]); -======= -case 301: +case 302: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); ->>>>>>> release/0.0.47 break; -<<<<<<< HEAD -case 302: - - if(!yy.queries) yy.queries = []; - this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1], queriesidx: yy.queries.length}); - yy.queries.push($$[$0-1]); -||||||| merged common ancestors -case 298: - - if(!yy.queries) yy.queries = []; - this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1], queriesidx: yy.queries.length}); - yy.queries.push($$[$0-1]); -======= -case 302: +case 303: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); ->>>>>>> release/0.0.47 break; -case 303: +case 304: this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1]}); break; -case 304: +case 305: this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1]}); break; -case 305: +case 306: this.$ = new yy.Op({left: $$[$0-3], op:'IN', right:[]}); break; -case 306: +case 307: this.$ = new yy.Op({left: $$[$0-4], op:'NOT IN', right:[]}); break; -case 307: +case 308: this.$ = new yy.Op({left: $$[$0-2], op:'IN', right:$$[$0]}); break; -case 308: +case 309: this.$ = new yy.Op({left: $$[$0-3], op:'NOT IN', right:$$[$0]}); break; -case 309: +case 310: this.$ = new yy.Op({left:$$[$0-2], op:'BETWEEN', right:$$[$0] }); break; -case 310: +case 311: this.$ = new yy.Op({left:$$[$0-2], op:'NOT BETWEEN', right:$$[$0] }); break; -case 311: +case 312: this.$ = new yy.Op({op:'IS' , left:$$[$0-2], right:$$[$0]}); break; -case 312: +case 313: this.$ = new yy.Convert({expression:$$[$0-2]}) ; yy.extend(this.$,$$[$0]) ; break; -case 313: case 314: +case 314: case 315: this.$ = $$[$0]; break; -case 315: +case 316: this.$ = $$[$0-1]; break; -case 322: +case 323: this.$ = 'ALL'; break; -case 323: +case 324: this.$ = 'SOME'; break; -case 324: +case 325: this.$ = 'ANY'; break; -case 325: +case 326: this.$ = new yy.Update({table:$$[$0-4], columns:$$[$0-2], where:$$[$0]}); break; -case 326: +case 327: this.$ = new yy.Update({table:$$[$0-2], columns:$$[$0]}); break; -case 329: +case 330: this.$ = new yy.SetColumn({columnid:$$[$0-2], expression:$$[$0]}) break; -case 330: +case 331: this.$ = new yy.Delete({table:$$[$0-2], where:$$[$0]}); break; -case 331: +case 332: this.$ = new yy.Delete({table:$$[$0]}); break; -case 332: +case 333: this.$ = new yy.Insert({into:$$[$0-2], values: $$[$0]}); break; -case 333: +case 334: this.$ = new yy.Insert({into:$$[$0-2], default: true}) ; break; -case 334: +case 335: this.$ = new yy.Insert({into:$$[$0-5], columns: $$[$0-3], values: $$[$0]}); break; -case 335: +case 336: this.$ = new yy.Insert({into:$$[$0-1], select: $$[$0]}); break; -case 336: +case 337: this.$ = new yy.Insert({into:$$[$0-4], columns: $$[$0-2], select: $$[$0]}); break; -case 339: +case 340: this.$ = [$$[$0-1]]; break; -case 342: +case 343: this.$ = $$[$0-4]; $$[$0-4].push($$[$0-1]) break; -case 343: case 344: case 346: case 354: +case 344: case 345: case 347: case 355: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; -<<<<<<< HEAD -case 355: - - this.$ = new yy.CreateTable({table:$$[$0-4]}); - //yy.extend(this.$,$$[$0-6]); - yy.extend(this.$,$$[$0-5]); - yy.extend(this.$,$$[$0-2]); -||||||| merged common ancestors -case 351: - - this.$ = new yy.CreateTable({table:$$[$0-4]}); - //yy.extend(this.$,$$[$0-6]); - yy.extend(this.$,$$[$0-5]); - yy.extend(this.$,$$[$0-2]); -======= -case 355: +case 356: this.$ = new yy.CreateTable({table:$$[$0-4]}); - //yy.extend(this.$,$$[$0-6]); + yy.extend(this.$,$$[$0-7]); yy.extend(this.$,$$[$0-5]); yy.extend(this.$,$$[$0-2]); ->>>>>>> release/0.0.47 + yy.extend(this.$,$$[$0]); break; -<<<<<<< HEAD -case 356: - - this.$ = new yy.CreateTable({table:$$[$0]}); -||||||| merged common ancestors -case 352: - - this.$ = new yy.CreateTable({table:$$[$0]}); -======= -case 356: +case 357: this.$ = new yy.CreateTable({table:$$[$0]}); ->>>>>>> release/0.0.47 + yy.extend(this.$,$$[$0-3]); + yy.extend(this.$,$$[$0-1]); break; -case 366: case 367: +case 367: case 368: this.$ = {temporary:true}; break; -case 369: +case 370: this.$ = {ifnotexists: true}; break; -case 370: +case 371: this.$ = {columns: $$[$0-2], constraints: $$[$0]}; break; -case 371: +case 372: this.$ = {columns: $$[$0]}; break; -case 372: +case 373: this.$ = {as: $$[$0]} break; -case 373: case 396: +case 374: case 397: this.$ = [$$[$0]]; break; -case 374: case 397: case 500: case 505: case 525: case 529: +case 375: case 398: case 501: case 506: case 526: case 530: $$[$0-2].push($$[$0]); this.$ = $$[$0-2]; break; -case 375: case 376: case 377: case 378: case 379: +case 376: case 377: case 378: case 379: case 380: $$[$0].constraintid = $$[$0-1]; this.$ = $$[$0]; break; -case 382: +case 383: this.$ = {type: 'CHECK', expression: $$[$0-1]}; break; -case 383: +case 384: this.$ = {type: 'PRIMARY KEY', columns: $$[$0-1]}; break; -case 384: +case 385: this.$ = {type: 'FOREIGN KEY', columns: $$[$0-7], fktableid: $$[$0-4], fkcolumns: $$[$0-2]}; break; -case 398: +case 399: this.$ = new yy.ColumnDef({columnid:$$[$0-2]}); yy.extend(this.$,$$[$0-1]); yy.extend(this.$,$$[$0]); break; -case 399: +case 400: this.$ = new yy.ColumnDef({columnid:$$[$0-1]}); yy.extend(this.$,$$[$0]); break; -case 400: +case 401: this.$ = new yy.ColumnDef({columnid:$$[$0], dbtypeid: ''}); break; -case 401: +case 402: this.$ = {dbtypeid: $$[$0-5], dbsize: +$$[$0-3], dbprecision: +$$[$0-1]} break; -case 402: +case 403: this.$ = {dbtypeid: $$[$0-3], dbsize: +$$[$0-1]} break; -case 403: +case 404: this.$ = {dbtypeid: $$[$0]} break; -case 404: +case 405: this.$ = {dbtypeid: 'ENUM', enumvalues: $$[$0-1]} break; -case 405: +case 406: this.$ = undefined break; -<<<<<<< HEAD -case 407: - - yy.extend($$[$0-1],$$[$0]); this.$ = $$[$0-1]; -||||||| merged common ancestors -case 403: - - yy.extend($$[$0-1],$$[$0]); this.$ = $$[$0-1]; -======= -case 407: +case 408: yy.extend($$[$0-1],$$[$0]); this.$ = $$[$0-1]; ->>>>>>> release/0.0.47 break; -case 409: +case 410: this.$ = {primarykey:true}; break; -case 410: case 411: +case 411: case 412: this.$ = {foreignkey:{tableid:$$[$0-3], columnid: $$[$0-1]}}; break; -case 412: +case 413: this.$ = {auto_increment:true}; break; -case 413: +case 414: this.$ = {identity: [$$[$0-3],$$[$0-1]]} break; -case 414: +case 415: this.$ = {identity: [1,1]} break; -case 415: +case 416: this.$ = {default:$$[$0]}; break; -case 416: +case 417: this.$ = {null:true}; break; -case 417: +case 418: this.$ = {notnull:true}; break; -case 418: +case 419: this.$ = $$[$0]; break; -case 419: +case 420: this.$ = new yy.DropTable({table:$$[$0]}); yy.extend(this.$, $$[$0-1]); break; -case 421: +case 422: this.$ = {ifexists: true}; break; -case 422: +case 423: this.$ = new yy.AlterTable({table:$$[$0-3], renameto: $$[$0]}); break; -case 423: +case 424: this.$ = new yy.AlterTable({table:$$[$0-3], addcolumn: $$[$0]}); break; -case 424: +case 425: this.$ = new yy.AlterTable({table:$$[$0-3], modifycolumn: $$[$0]}); break; -case 425: +case 426: this.$ = new yy.AlterTable({table:$$[$0-5], renamecolumn: $$[$0-2], to: $$[$0]}); break; -case 426: +case 427: this.$ = new yy.AlterTable({table:$$[$0-3], dropcolumn: $$[$0]}); break; -case 427: +case 428: this.$ = new yy.AlterTable({table:$$[$0-2], renameto: $$[$0]}); break; -case 428: +case 429: this.$ = new yy.AttachDatabase({databaseid:$$[$0], engineid:$$[$0-2].toUpperCase() }); break; -case 429: +case 430: this.$ = new yy.AttachDatabase({databaseid:$$[$0-3], engineid:$$[$0-5].toUpperCase(), args:$$[$0-1] }); break; -case 430: +case 431: this.$ = new yy.AttachDatabase({databaseid:$$[$0-2], engineid:$$[$0-4].toUpperCase(), as:$$[$0] }); break; -case 431: +case 432: this.$ = new yy.AttachDatabase({databaseid:$$[$0-5], engineid:$$[$0-7].toUpperCase(), as:$$[$0], args:$$[$0-3]}); break; -case 432: +case 433: this.$ = new yy.DetachDatabase({databaseid:$$[$0]}); break; -case 433: +case 434: this.$ = new yy.CreateDatabase({databaseid:$$[$0] }); yy.extend(this.$,$$[$0]); break; -case 434: +case 435: this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), databaseid:$$[$0-1], as:$$[$0] }); yy.extend(this.$,$$[$0-2]); break; -case 435: +case 436: this.$ = new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(), databaseid:$$[$0-4], args:$$[$0-2], as:$$[$0] }); yy.extend(this.$,$$[$0-5]); break; -<<<<<<< HEAD -case 436: - this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), -||||||| merged common ancestors -case 432: - this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), -======= -case 436: +case 437: this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), ->>>>>>> release/0.0.47 as:$$[$0], args:[$$[$0-1]] }); yy.extend(this.$,$$[$0-2]); break; -case 437: +case 438: this.$ = undefined; break; -case 438: case 471: case 489: case 492: case 509: +case 439: case 472: case 490: case 493: case 510: this.$ = $$[$0-1]; break; -case 439: case 440: +case 440: case 441: this.$ = new yy.UseDatabase({databaseid: $$[$0] }); break; -case 441: +case 442: this.$ = new yy.DropDatabase({databaseid: $$[$0] }); yy.extend(this.$,$$[$0-1]); break; -case 442: case 443: +case 443: case 444: this.$ = new yy.DropDatabase({databaseid: $$[$0], engineid:$$[$0-3].toUpperCase() }); yy.extend(this.$,$$[$0-1]); break; -case 444: +case 445: this.$ = new yy.CreateIndex({indexid:$$[$0-5], table:$$[$0-3], columns:$$[$0-1]}) break; -case 445: +case 446: this.$ = new yy.CreateIndex({indexid:$$[$0-5], table:$$[$0-3], columns:$$[$0-1], unique:true}) break; -case 446: +case 447: this.$ = new yy.DropIndex({indexid:$$[$0]}); break; -case 447: +case 448: this.$ = new yy.ShowDatabases(); break; -case 448: +case 449: this.$ = new yy.ShowDatabases({like:$$[$0]}); break; -case 449: +case 450: this.$ = new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase() }); break; -case 450: +case 451: this.$ = new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase() , like:$$[$0]}); break; -case 451: +case 452: this.$ = new yy.ShowTables(); break; -case 452: +case 453: this.$ = new yy.ShowTables({like:$$[$0]}); break; -case 453: +case 454: this.$ = new yy.ShowTables({databaseid: $$[$0]}); break; -case 454: +case 455: this.$ = new yy.ShowTables({like:$$[$0], databaseid: $$[$0-2]}); break; -case 455: +case 456: this.$ = new yy.ShowColumns({table: $$[$0]}); break; -case 456: +case 457: this.$ = new yy.ShowColumns({table: $$[$0-2], databaseid:$$[$0]}); break; -case 457: +case 458: this.$ = new yy.ShowIndex({table: $$[$0]}); break; -case 458: +case 459: this.$ = new yy.ShowIndex({table: $$[$0-2], databaseid: $$[$0]}); break; -case 459: +case 460: this.$ = new yy.ShowCreateTable({table: $$[$0]}); break; -case 460: +case 461: this.$ = new yy.ShowCreateTable({table: $$[$0-2], databaseid:$$[$0]}); break; -<<<<<<< HEAD -case 461: - - this.$ = new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]}); - yy.extend(this.$,$$[$0-6]); -||||||| merged common ancestors -case 457: - - this.$ = new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]}); - yy.extend(this.$,$$[$0-6]); -======= -case 461: - +case 462: + this.$ = new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]}); + yy.extend(this.$,$$[$0-8]); yy.extend(this.$,$$[$0-6]); ->>>>>>> release/0.0.47 break; -<<<<<<< HEAD -case 462: - - this.$ = new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]}); -||||||| merged common ancestors -case 458: - - this.$ = new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]}); -======= -case 462: +case 463: this.$ = new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]}); ->>>>>>> release/0.0.47 + yy.extend(this.$,$$[$0-5]); + yy.extend(this.$,$$[$0-3]); break; -case 463: +case 464: this.$ = new yy.DropTable({table:$$[$0], view:true}); yy.extend(this.$, $$[$0-1]); break; -case 464: +case 465: this.$ = new yy.Help({subject:$$[$0].value.toUpperCase()} ) ; break; -case 465: +case 466: this.$ = new yy.Help() ; break; -case 466: +case 467: this.$ = new yy.ExpressionStatement({expression:$$[$0]}); break; -case 467: +case 468: this.$ = new yy.Source({url:$$[$0].value}); break; -case 468: +case 469: this.$ = new yy.Assert({value:$$[$0]}); break; -case 469: +case 470: this.$ = new yy.Assert({value:$$[$0].value}); break; -case 470: +case 471: this.$ = new yy.Assert({value:$$[$0], message:$$[$0-2]}); break; -case 472: case 483: case 485: +case 473: case 484: case 486: this.$ = $$[$0].value; break; -case 473: case 481: +case 474: case 482: this.$ = +$$[$0].value; break; -case 474: +case 475: this.$ = (!!$$[$0].value); break; -case 482: +case 483: this.$ = ""+$$[$0].value; break; -case 488: +case 489: this.$ = $$[$0-1] break; -case 490: case 493: +case 491: case 494: this.$ = $$[$0-2]; break; -case 491: +case 492: this.$ = {}; break; -case 494: +case 495: this.$ = []; break; -case 495: +case 496: yy.extend($$[$0-2],$$[$0]); this.$ = $$[$0-2]; break; -case 497: +case 498: this.$ = {}; this.$[$$[$0-2].substr(1,$$[$0-2].length-2)] = $$[$0]; break; -case 498: case 499: +case 499: case 500: this.$ = {}; this.$[$$[$0-2]] = $$[$0]; break; -case 502: +case 503: this.$ = new yy.SetVariable({variable:$$[$0-1].toLowerCase(), value:$$[$0]}); break; -case 503: +case 504: this.$ = new yy.SetVariable({variable:$$[$0-2], expression:$$[$0]}); break; -case 504: +case 505: this.$ = new yy.SetVariable({variable:$$[$0-3], props: $$[$0-2], expression:$$[$0]}); break; -case 510: +case 511: this.$ = true; break; -case 511: +case 512: this.$ = false; break; -case 512: +case 513: this.$ = new yy.CommitTransaction(); break; -case 513: +case 514: this.$ = new yy.RollbackTransaction(); break; -case 514: +case 515: this.$ = new yy.BeginTransaction(); break; -<<<<<<< HEAD -case 515: - this.$ = new yy.If({expression:$$[$0-2],thenstat:$$[$0-1], elsestat:$$[$0]}); - if($$[$0-1].exists) this.$.exists = $$[$0-1].exists; - if($$[$0-1].queries) this.$.queries = $$[$0-1].queries; -||||||| merged common ancestors -case 511: - this.$ = new yy.If({expression:$$[$0-2],thenstat:$$[$0-1], elsestat:$$[$0]}); - if($$[$0-1].exists) this.$.exists = $$[$0-1].exists; - if($$[$0-1].queries) this.$.queries = $$[$0-1].queries; -======= -case 515: +case 516: this.$ = new yy.If({expression:$$[$0-2],thenstat:$$[$0-1], elsestat:$$[$0]}); if($$[$0-1].exists) this.$.exists = $$[$0-1].exists; if($$[$0-1].queries) this.$.queries = $$[$0-1].queries; ->>>>>>> release/0.0.47 -break; -case 516: - this.$ = new yy.If({expression:$$[$0-1],thenstat:$$[$0]}); break; case 517: -this.$ = $$[$0]; + + this.$ = new yy.If({expression:$$[$0-1],thenstat:$$[$0]}); + if($$[$0].exists) this.$.exists = $$[$0].exists; + if($$[$0].queries) this.$.queries = $$[$0].queries; + break; -<<<<<<< HEAD -case 518: - this.$ = new yy.While({expression:$$[$0-1],loopstat:$$[$0]}); - if($$[$0].exists) this.$.exists = $$[$0].exists; - if($$[$0].queries) this.$.queries = $$[$0].queries; -||||||| merged common ancestors -case 514: - this.$ = new yy.While({expression:$$[$0-1],loopstat:$$[$0]}); - if($$[$0].exists) this.$.exists = $$[$0].exists; - if($$[$0].queries) this.$.queries = $$[$0].queries; -======= case 518: +this.$ = $$[$0]; +break; +case 519: this.$ = new yy.While({expression:$$[$0-1],loopstat:$$[$0]}); if($$[$0].exists) this.$.exists = $$[$0].exists; if($$[$0].queries) this.$.queries = $$[$0].queries; ->>>>>>> release/0.0.47 break; -case 519: +case 520: this.$ = new yy.Continue(); break; -case 520: +case 521: this.$ = new yy.Break(); break; -case 521: +case 522: this.$ = new yy.BeginEnd({statements:$$[$0-1]}); break; -case 522: case 523: +case 523: case 524: this.$ = new yy.Print({statement:$$[$0]}); break; -case 524: +case 525: this.$ = new yy.Require({paths:$$[$0]}); break; -case 527: +case 528: this.$ = new yy.Declare({declares:$$[$0]}); break; -case 530: +case 531: this.$ = {variable: $$[$0-1]}; yy.extend(this.$,$$[$0]); break; -case 531: +case 532: this.$ = {variable: $$[$0-2]}; yy.extend(this.$,$$[$0]); break; -case 532: +case 533: this.$ = {variable: $$[$0-3], expression:$$[$0]}; yy.extend(this.$,$$[$0-2]); break; -case 533: +case 534: this.$ = {variable: $$[$0-4], expression:$$[$0]}; yy.extend(this.$,$$[$0-2]); break; -case 534: +case 535: this.$ = new yy.TruncateTable({table:$$[$0]}); break; -<<<<<<< HEAD -case 535: - - this.$ = new yy.Merge(); yy.extend(this.$,$$[$0-4]); yy.extend(this.$,$$[$0-3]); - yy.extend(this.$,$$[$0-2]); - yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]); -||||||| merged common ancestors -case 531: - - this.$ = new yy.Merge(); yy.extend(this.$,$$[$0-4]); yy.extend(this.$,$$[$0-3]); - yy.extend(this.$,$$[$0-2]); - yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]); -======= -case 535: +case 536: this.$ = new yy.Merge(); yy.extend(this.$,$$[$0-4]); yy.extend(this.$,$$[$0-3]); yy.extend(this.$,$$[$0-2]); yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]); ->>>>>>> release/0.0.47 break; -case 536: case 537: +case 537: case 538: this.$ = {into: $$[$0]}; break; -case 539: +case 540: this.$ = {on:$$[$0]}; break; -case 544: +case 545: this.$ = {matched:true, action:$$[$0]} break; -case 545: +case 546: this.$ = {matched:true, expr: $$[$0-2], action:$$[$0]} break; -case 546: +case 547: this.$ = {delete:true}; break; -case 547: +case 548: this.$ = {update:$$[$0]}; break; -case 548: case 549: +case 549: case 550: this.$ = {matched:false, bytarget: true, action:$$[$0]} break; -case 550: case 551: +case 551: case 552: this.$ = {matched:false, bytarget: true, expr:$$[$0-2], action:$$[$0]} break; -case 552: +case 553: this.$ = {matched:false, bysource: true, action:$$[$0]} break; -case 553: +case 554: this.$ = {matched:false, bysource: true, expr:$$[$0-2], action:$$[$0]} break; -case 554: +case 555: this.$ = {insert:true, values:$$[$0]}; break; -case 555: +case 556: this.$ = {insert:true, values:$$[$0], columns:$$[$0-3]}; break; -case 556: +case 557: this.$ = {insert:true, defaultvalues:true}; break; -case 557: +case 558: this.$ = {insert:true, defaultvalues:true, columns:$$[$0-3]}; break; -case 559: +case 560: this.$ = {output:{columns:$$[$0]}} break; -case 560: +case 561: this.$ = {output:{columns:$$[$0-3], intovar: $$[$0]}} break; -case 561: +case 562: this.$ = {output:{columns:$$[$0-2], intotable: $$[$0]}} break; -case 562: +case 563: this.$ = {output:{columns:$$[$0-5], intotable: $$[$0-3], intocolumns:$$[$0-1]}} break; } }, -table: [o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{252:[1,141]},{3:142,4:$VB,5:$VC},{3:144,4:$VB,5:$VC,78:[1,146],86:[1,145],252:[1,147],301:[1,143],309:[1,148]},{193:$V71,341:149,342:150},{97:[1,152]},{301:[1,153]},{3:155,4:$VB,5:$VC,86:[1,156],252:[1,157],301:[1,154],309:[1,158]},o($V81,[2,337],{244:159,91:[1,160]}),{252:[1,161]},o($V91,[2,75],{67:162,91:[1,163]}),{3:173,4:$VB,5:$VC,64:$Va1,91:[1,166],92:168,93:170,94:169,95:171,96:$Vb1,99:165,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01,345:164},{3:178,4:$VB,5:$VC,60:176,62:177},{3:182,4:$VB,5:$VC,86:[1,183],251:[1,179],306:[1,181],307:[1,184],308:[1,180]},{252:[1,185]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:187,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,186],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,188]},{330:[1,189]},{3:191,4:$VB,5:$VC,301:[1,190]},{3:193,4:$VB,5:$VC,92:192},o($VA,[2,465],{153:194,96:$VE,191:$VV}),o($Vd1,[2,216]),{96:$VE,153:195,191:$VV},{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:[1,198],152:$VF,153:201,159:202,160:203,164:196,171:197,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:208,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,519]),o($VA,[2,520]),{3:106,4:$VB,5:$VC,33:209,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:211,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:210,314:126,315:$V51,319:$V61},{96:$VE,153:213,191:$VV,339:212},{3:214,4:$VB,5:$VC,193:[1,215]},o($Vg1,$Vh1,{76:219,75:[1,216],78:[1,217],79:[1,218],88:$Vi1}),o($Vj1,[2,63],{81:[1,221],82:[1,222],83:[1,223],84:[1,224],85:[1,225],86:[1,226],87:[1,227]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:228,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,230]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:231,225:251,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vd1,[2,198]),o($Vd1,[2,199]),o($Vd1,[2,200]),o($Vd1,[2,201]),o($Vd1,[2,202]),o($Vd1,[2,203]),o($Vd1,[2,204]),o($Vd1,[2,205]),o($Vd1,[2,206]),o($Vd1,[2,207]),o($Vd1,[2,208]),o($Vd1,[2,209]),o($Vd1,[2,210]),o($Vd1,[2,211]),o($Vd1,[2,212]),o($Vd1,[2,213]),{3:106,4:$VB,5:$VC,33:260,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:261,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,215]),{64:[1,262]},o($Vd1,$VL1,{64:$VM1,106:[1,264]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:265,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,193]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,258,259,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,252]),o($VN1,[2,253]),o($VN1,[2,254]),o($VN1,$VO1),o($VN1,[2,256]),o($VN1,[2,257]),{3:268,4:$VB,5:$VC},{3:269,4:$VB,5:$VC},o($VP1,[2,262]),o($VP1,[2,263]),{3:270,4:$VB,5:$VC,64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},{64:[1,277]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:278,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:279,203:280,204:$VR1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,282]},{64:[1,283]},o($VS1,[2,476]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:284,317:287,318:289,319:$V61,322:285,323:[1,286]},{3:299,4:$VB,5:$VC,93:300},{64:[2,239]},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},o($VU1,[2,1]),o($VU1,[2,2]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,320:301,321:[1,302],324:303},{3:193,4:$VB,5:$VC,92:307},{301:[1,308]},o($V81,$VX1,{253:309,264:$VY1}),{301:[1,311]},{3:312,4:$VB,5:$VC},{86:[1,313]},o($V81,$VX1,{253:314,264:$VY1}),o($V81,$VX1,{253:315,264:$VY1}),o($VA,[2,527],{61:[1,316]}),o($VZ1,[2,528]),{3:317,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:318},{3:319,4:$VB,5:$VC},o($V81,$V_1,{294:320,264:$V$1}),{301:[1,322]},{3:323,4:$VB,5:$VC},o($V81,$V_1,{294:324,264:$V$1}),o($V81,$V_1,{294:325,264:$V$1}),{3:193,4:$VB,5:$VC,92:326},o($V81,[2,338]),{3:193,4:$VB,5:$VC,92:327},o($V02,[2,83],{68:328,97:[1,329]}),{3:173,4:$VB,5:$VC,92:330,93:331,94:332,95:333,96:[1,334],193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,336],346:335},{122:[2,536]},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:337,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:338,66:59,74:79,80:$V4},o($V12,[2,95],{3:339,4:$VB,5:$VC,63:[1,340]}),o($V12,[2,98],{3:341,4:$VB,5:$VC,63:[1,342]}),o($V12,[2,99],{3:343,4:$VB,5:$VC,63:[1,344]}),o($V12,[2,102],{3:345,4:$VB,5:$VC,63:[1,346]}),o($V12,[2,105],{3:347,4:$VB,5:$VC,63:[1,348]}),o([4,5,8,9,11,61,63,65,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22,{64:$VM1,106:$V32}),{3:270,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,108]),{33:350,61:[1,351],66:59,74:79,80:$V4},o($V42,[2,56]),{63:[1,352]},{252:[1,353]},{97:[1,354]},o($VA,[2,447],{207:[1,355]}),{306:[1,356]},{97:[1,357]},o($VA,[2,451],{97:[1,359],207:[1,358]}),{3:193,4:$VB,5:$VC,92:360},o($VA,[2,514]),{9:$Vx,11:$Vy,202:[1,361]},o($VA,[2,512]),o($VA,[2,513]),{3:362,4:$VB,5:$VC},o($VA,[2,440]),{239:[1,363]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V22,{106:$V32}),o($VA,[2,464]),o($VA,[2,467]),o($VA,[2,468]),o($VA,[2,469]),o($VA,$VO1,{61:[1,364]}),{64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},o($V52,[2,223]),o($V52,[2,224]),o($V52,[2,225]),o($V52,[2,226]),o($V52,[2,227]),o($V52,[2,228]),o($V52,[2,229]),{64:$VM1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:251,10:365,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,522]),o($VA,[2,523]),o($VA,[2,466],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,524],{61:[1,366]}),o($VZ1,[2,526]),{120:[1,368],325:367,328:[1,369]},{3:370,4:$VB,5:$VC},o($Vg1,$Vh1,{76:371,88:$Vi1}),o($Vg1,$Vh1,{76:372,88:$Vi1}),o($Vg1,$Vh1,{76:373,88:$Vi1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:374,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,378],89:377,152:$VF},o($Vj1,[2,64]),o($Vj1,[2,65]),o($Vj1,[2,66]),o($Vj1,[2,67]),o($Vj1,[2,68]),o($Vj1,[2,69]),o($Vj1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:379,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,516],{333:380,206:[1,381]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:382,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:390,4:$VB,5:$VC,64:[1,392],89:391,93:393,152:$VF},o($V62,[2,316],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:394,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:399,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V62,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:401,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:402,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,405],226:404,236:[1,406],237:[1,407]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:408,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:298,4:$VB,5:$VC,64:[1,410],93:413,156:412,193:$V72,231:411},{230:[1,415]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:416,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:419,289:$V92},{65:[1,422]},{65:[1,423],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,425],79:[1,426],89:92,93:88,94:96,95:97,96:$VE,121:424,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,428],89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:427,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:430,4:$VB,5:$VC,81:$Va2,155:[1,432]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,234:$VJ1}),o($Vb2,[2,298],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,299],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($VP1,[2,260]),o($VP1,[2,261]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,258]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:433,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,472]),o($VS1,[2,473]),o($VS1,[2,474]),o($VS1,[2,475]),o($VS1,[2,477]),{33:434,66:59,74:79,80:$V4},{155:$Vk1,200:435,203:280,204:$VR1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{201:436,202:$Vc2,203:437,204:$VR1,206:$Vd2},o($Ve2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:439,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:441,289:$V92},o($VS1,[2,478]),{61:[1,443],323:[1,442]},o($VS1,[2,494]),o($Vf2,[2,501]),o($Vg2,[2,479]),o($Vg2,[2,480]),o($Vg2,[2,481]),o($Vg2,[2,482]),o($Vg2,[2,483]),o($Vg2,[2,484]),o($Vg2,[2,485]),o($Vg2,[2,486]),o($Vg2,[2,487]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:444,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,$VL1,{64:$VM1,106:$Vh2}),o($Vd1,[2,217],{64:$VM1}),o($Vd1,[2,218]),{61:[1,447],321:[1,446]},o($VS1,[2,491]),o($Vi2,[2,496]),{196:[1,448]},{196:[1,449]},{196:[1,450]},{293:[1,454],296:[1,451],298:[1,452],299:[1,453]},{3:455,4:$VB,5:$VC},{3:456,4:$VB,5:$VC},{229:[1,457]},o($Vj2,$VX1,{253:458,264:$VY1}),{120:[1,459]},{3:460,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:461},{3:193,4:$VB,5:$VC,92:462},{193:$V71,342:463},{4:$V82,63:[1,465],169:464,289:$V92},o($VA,[2,331],{124:[1,466]}),o($VA,[2,432]),{3:467,4:$VB,5:$VC},{194:[1,468]},o($Vj2,$V_1,{294:469,264:$V$1}),o($VA,[2,446]),{3:193,4:$VB,5:$VC,92:470},{3:193,4:$VB,5:$VC,92:471},{33:475,64:[1,474],66:59,74:79,80:$V4,245:[1,472],247:[1,473]},{297:[1,476]},o($Vk2,[2,145],{69:477,124:[1,478]}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,98:479,99:480,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V91,[2,76]),o($V91,[2,77]),o($V91,[2,78]),o($V91,[2,79]),o($V91,[2,80]),{120:[1,482],347:481},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:483,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,537]},{65:[1,484]},o($V12,[2,93]),{3:485,4:$VB,5:$VC},o($V12,[2,96]),{3:486,4:$VB,5:$VC},o($V12,[2,100]),{3:487,4:$VB,5:$VC},o($V12,[2,103]),{3:488,4:$VB,5:$VC},o($V12,[2,106]),{3:489,4:$VB,5:$VC},{3:490,4:$VB,5:$VC},o($VA,[2,54]),{3:178,4:$VB,5:$VC,62:491},{64:[1,492]},{3:193,4:$VB,5:$VC,92:493},{3:193,4:$VB,5:$VC,92:494},{96:$VE,153:495,191:$VV},o($VA,[2,449],{207:[1,496]}),{3:193,4:$VB,5:$VC,92:497},{96:$VE,153:498,191:$VV},{3:499,4:$VB,5:$VC},o($VA,[2,534]),o($VA,[2,521]),o($VA,[2,439]),{3:503,4:$VB,5:$VC,156:502,240:500,241:501},{164:504,193:$Vf1,314:126,315:$V51,319:$V61},o($VA,[2,518]),{96:$VE,153:505,191:$VV},o($VA,[2,502]),o($VA,[2,510]),o($VA,[2,511]),{214:[1,508],219:[1,506],326:507},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:509,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:510,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vl2,[2,62],{61:$Vm2}),o($Vn2,$Vo2,{149:513,150:$Vp2,151:$Vq2}),o($Vr2,[2,190],{225:251,3:517,153:519,4:$VB,5:$VC,63:[1,516],96:$VE,152:[1,518],155:$Vk1,191:$VV,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vg1,[2,71],{90:[1,520]}),{89:521,152:$VF},o($Vz,[2,9]),o($VA,[2,515]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:522,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vs2,[2,271],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vs2,[2,272],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,273],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,274],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vt2,[2,275],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,276],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,277],{225:251,213:$Vr1,214:$Vs1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,278],{225:251,214:$Vs1}),o($Vd1,[2,279],{64:$VM1}),o($Vd1,[2,280]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:523,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,282]),o($Vu2,[2,283],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,284],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,285],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,286],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,287],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,288],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,289],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,290],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,291],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,292],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),{64:[1,524]},{64:[2,322]},{64:[2,323]},{64:[2,324]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,295],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1}),{3:106,4:$VB,5:$VC,33:525,49:104,64:$VD,65:[1,527],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:526,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,307]),o($Vd1,[2,313]),o($Vd1,[2,314]),{64:[1,528]},{3:298,4:$VB,5:$VC,64:[1,529],93:413,156:412,193:$V72,231:530},o($Vv2,[2,309],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o($Vv2,[2,310],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,311],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vd1,[2,312]),o($Vw2,[2,403],{64:[1,531]}),{64:[1,532]},o($Vd1,[2,214]),o($Vd1,[2,300]),{65:[1,533],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:534,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:535,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vx2,65:[1,536]},o($VP1,[2,249]),o($Vy2,[2,250],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,$Vz2,{106:[1,538]}),o($VS1,[2,196]),o($Vd1,[2,192]),{65:[1,539],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,540]},{201:541,202:$Vc2,203:437,204:$VR1,206:$Vd2},{202:[1,542]},o($Ve2,[2,266]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:543,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vk1,205:[1,544],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{63:[1,545],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{61:[1,546]},o($VS1,[2,492]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:548,318:289,319:$V61,323:[1,547]},{65:[1,549],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:550,4:$VB,5:$VC,81:$Va2},o($VS1,[2,489]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,321:[1,551],324:552},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:553,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:554,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:289,319:$V61},{83:[1,557],297:[1,556]},{83:[1,558]},{83:[1,559]},{83:[1,560]},o($VA,[2,428],{63:[1,562],64:[1,561]}),o($VA,[2,433]),{194:[1,563]},{3:564,4:$VB,5:$VC,96:$VE,153:565,191:$VV},{3:193,4:$VB,5:$VC,92:566},{120:[1,567]},o($VA,[2,356],{64:[1,568]}),{63:[1,570],64:[1,569]},o($VZ1,[2,529]),o($VZ1,[2,530],{219:[1,571]}),{4:$V82,169:572,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:573,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,441]),o($Vj2,[2,421]),{3:574,4:$VB,5:$VC,96:$VE,153:575,191:$VV},o($VA,[2,419]),o($VA,[2,463]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:576,314:126,315:$V51,319:$V61},{245:[1,580]},{3:503,4:$VB,5:$VC,123:581,156:582},o($VA,[2,335]),{3:583,4:$VB,5:$VC},o($VB2,[2,147],{70:584,125:[1,585]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:586,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V02,[2,81],{61:[1,587]}),o($VC2,[2,88],{100:588,107:589,101:590,108:591,111:594,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),{204:$VN2,348:603,350:604,351:605},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:607,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,538]},o($V12,[2,92],{3:608,4:$VB,5:$VC,63:[1,609]}),o($V12,[2,94]),o($V12,[2,97]),o($V12,[2,101]),o($V12,[2,104]),o($V12,[2,107]),o([4,5,8,9,11,61,63,64,65,80,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,109]),o($V42,[2,55]),{33:610,66:59,74:79,80:$V4},o($VA,[2,459],{97:[1,611]}),o($VA,[2,455],{97:[1,612]}),o($VA,[2,448]),{96:$VE,153:613,191:$VV},o($VA,[2,457],{97:[1,614]}),o($VA,[2,452]),o($VA,[2,453],{207:[1,615]}),o($VA,[2,326],{61:$VO2,124:[1,616]}),o($VP2,[2,327]),{219:[1,618]},o([8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VL1,{106:$Vh2}),o($VA,[2,470]),o($VZ1,[2,525]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:619,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,621],219:[1,620]},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:622},o($Vl2,[2,59],{61:$Vm2}),o($Vl2,[2,60],{61:$Vm2}),o($Vl2,[2,61],{61:$Vm2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:376,148:626,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:627,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:629,4:$VB,5:$VC,96:$VE,152:[1,630],153:631,191:$VV},o($Vr2,[2,185]),o($Vr2,[2,187]),o($Vr2,[2,189]),o($Vg1,[2,73]),{65:[1,632]},o($VA,[2,517]),{65:[1,633],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,33:634,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:635,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,636]},{61:$Vx2,65:[1,637]},o($Vd1,[2,305]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:638,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:639,49:104,64:$VD,65:[1,641],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:640,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,308]),{152:[1,642]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:643,314:126,315:$V51,319:$V61},o($Vd1,$VS2,{174:645,175:$VT2}),{65:[1,647],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,648],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VP1,[2,248]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:649,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:650,4:$VB,5:$VC,155:[1,651]},o($VS1,[2,471]),o($Vd1,[2,259]),{202:[1,652]},o($Vd1,[2,265]),{155:$Vk1,202:[2,269],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:653,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:654,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,493]),o($Vf2,[2,500]),o($Vg2,[2,488]),o($VS1,$Vz2,{106:[1,656]}),o($VS1,[2,490]),o($Vi2,[2,495]),o($Vi2,[2,497]),o($Vi2,[2,498]),o($Vi2,[2,499]),{3:657,4:$VB,5:$VC},{3:658,4:$VB,5:$VC},{3:660,4:$VB,5:$VC,286:659},{3:660,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:663,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:664,4:$VB,5:$VC},o($Vj2,[2,369]),o($VA,$VU2,{303:665,63:$VV2,64:[1,666]}),o($VA,$VU2,{303:668,63:$VV2}),{64:[1,669]},{3:193,4:$VB,5:$VC,92:670},{3:660,4:$VB,5:$VC,63:[1,673],254:671,265:672,286:674},{3:503,4:$VB,5:$VC,123:675,156:582},{33:676,66:59,74:79,80:$V4},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:677,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VZ1,[2,531],{219:[1,678]}),o($VA,[2,330],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,442]),o($VA,[2,443]),o($VA,[2,332],{61:$VW2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:680,314:126,315:$V51,319:$V61},o($VX2,[2,340]),o($VX2,[2,341]),o($VA,[2,333]),{61:$VY2,65:[1,681]},o($VZ2,[2,353]),o($VA,[2,427]),o($V_2,[2,166],{71:683,139:[1,684]}),{126:[1,685]},o($Vk2,[2,146],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:686,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V02,[2,82],{108:591,111:594,107:687,101:688,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),o($V$2,[2,113]),o($V$2,[2,114]),{3:173,4:$VB,5:$VC,64:[1,692],92:690,93:693,94:691,95:694,109:689,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{103:[1,695],113:$V03},{103:[1,697],113:$V13},o($V23,[2,129]),{102:[1,701],104:[1,700],111:699,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2},o($V23,[2,131]),{113:[1,702]},{104:[1,704],113:[1,703]},{104:[1,706],113:[1,705]},{104:[1,707]},{113:[1,708]},{113:[1,709]},o($VA,[2,558],{349:710,350:711,351:712,204:$VN2,356:[1,713]}),o($V33,[2,542]),o($V33,[2,543]),{229:[1,715],352:[1,714]},{155:$Vk1,204:[2,539],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V12,[2,90]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,450]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,156:502,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,503],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:726},o($V43,[2,506]),o($V43,[2,507]),o($V43,[2,508]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,$Vo2,{149:728,150:$Vp2,151:$Vq2}),o($Vn2,[2,181],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vn2,[2,182],{225:251,150:[1,729],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vr2,[2,184]),o($Vr2,[2,186]),o($Vr2,[2,188]),o($Vg1,[2,72]),o($Vd1,[2,281]),{65:[1,730]},{61:$Vx2,65:[1,731]},o($Vd1,[2,301]),o($Vd1,[2,303]),{65:[1,732],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,733]},{61:$Vx2,65:[1,734]},o($Vd1,[2,306]),{61:[1,735],65:[1,736]},{61:$V53,65:[1,737]},o($Vy2,[2,345],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,[2,230]),{64:[1,739]},o($Vd1,$VS2,{174:740,175:$VT2}),o($Vd1,$VS2,{174:741,175:$VT2}),o($Vy2,[2,251],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VS1,[2,194]),o($Vd1,[2,191]),o($Vd1,[2,264]),o($Ve2,[2,268],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:650,4:$VB,5:$VC},o($VA,[2,422]),{297:[1,746]},o($VA,[2,423]),o($V63,[2,400],{169:747,4:$V82,288:[1,748],289:$V92}),o($VA,[2,424]),o($VA,[2,426]),{61:$Vx2,65:[1,749]},o($VA,[2,430]),o($VA,[2,434]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,436]),{3:753,4:$VB,5:$VC,96:$V73,278:752},{64:[1,755]},{65:[1,756]},{61:[1,757],65:[2,371]},{33:758,66:59,74:79,80:$V4},o($Vy2,[2,396]),{61:$VY2,65:[1,759]},o($VA,[2,462]),o($VZ1,[2,532],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:760,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,761],94:763,164:762,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V53,65:[1,764]},{33:766,66:59,74:79,80:$V4,245:[1,765]},{3:503,4:$VB,5:$VC,156:767},o($V83,[2,174],{72:768,145:[1,769]}),{126:[1,770]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:771,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,89]),o($V$2,[2,111]),o($V$2,[2,112]),o($V$2,[2,144],{110:777,120:[1,778],122:[1,779]}),o($Vc3,[2,116],{3:780,4:$VB,5:$VC,63:[1,781]}),{3:782,4:$VB,5:$VC,63:[1,783]},{33:784,66:59,74:79,80:$V4},o($Vc3,[2,123],{3:785,4:$VB,5:$VC,63:[1,786]}),o($Vc3,[2,126],{3:787,4:$VB,5:$VC,63:[1,788]}),{64:[1,789]},o($V23,[2,141]),{64:[1,790]},o($V23,[2,137]),o($V23,[2,130]),{113:$V13},{113:$V03},o($V23,[2,132]),o($V23,[2,133]),{113:[1,791]},o($V23,[2,135]),{113:[1,792]},{113:[1,793]},o($V23,[2,139]),o($V23,[2,140]),o($VA,[2,535]),o($V33,[2,540]),o($V33,[2,541]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:794,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,795],227:[1,796]},{352:[1,797]},o($V12,[2,91]),o($V42,[2,57]),o($VA,[2,460]),o($VA,[2,456]),o($VA,[2,458]),o($VA,[2,454]),o($VA,[2,325],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VP2,[2,328]),o($VP2,[2,329],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,504],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V43,[2,505]),{65:[1,798],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vn2,[2,178]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:799,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,293]),o($Vd1,[2,294]),o($Vd1,[2,315]),o($Vd1,[2,302]),o($Vd1,[2,304]),{152:[1,800]},o($Vw2,[2,402]),o($Vw2,[2,404]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:801,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:802,177:803,178:[1,804]},o($Vd1,[2,231]),o($Vd1,[2,232]),o($Vd1,[2,219]),{152:[1,806]},o($Vd1,[2,221]),{152:[1,807]},{3:808,4:$VB,5:$VC},o($V63,[2,405],{287:809,290:810,291:811,273:820,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V63,[2,399]),o($VA,[2,429],{63:[1,822]}),{61:$Vx2,65:[1,823]},o($VA,[2,438]),{61:$Vn3,65:[1,824]},o($Vy2,[2,392]),o($Vy2,[2,393]),{3:753,4:$VB,5:$VC,96:$V73,278:826},o($VA,[2,357],{255:827,256:828,257:829,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($Vs3,$Vt3,{3:660,266:834,286:835,267:836,268:837,4:$VB,5:$VC,274:$Vu3}),{65:[2,372]},{63:[1,839]},o($VZ1,[2,533],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:840,314:126,315:$V51,319:$V61},o($VX2,[2,343]),o($VX2,[2,344]),o($VX2,[2,339]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:841,314:126,315:$V51,319:$V61},o($VA,[2,336]),o($VZ2,[2,354]),o($Vv3,[2,157],{73:842,135:[1,843],136:[1,844],137:[1,845]}),{89:846,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:847,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VB2,[2,155],{128:850,61:$Vw3,134:[1,852]}),o($Vx3,[2,149]),{131:[1,853]},{64:[1,854]},{64:[1,855]},o($Vx3,[2,154],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,115]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:856,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:857,156:582},o($Vc3,[2,117]),{3:858,4:$VB,5:$VC},o($Vc3,[2,119]),{3:859,4:$VB,5:$VC},{65:[1,860]},o($Vc3,[2,124]),{3:861,4:$VB,5:$VC},o($Vc3,[2,127]),{3:862,4:$VB,5:$VC},{33:863,66:59,74:79,80:$V4},{33:864,66:59,74:79,80:$V4},o($V23,[2,134]),o($V23,[2,136]),o($V23,[2,138]),o($VA,[2,559],{61:$Vm2,91:[1,865]}),{238:$Vy3,242:$Vz3,353:866},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:869,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,871],205:[1,870],227:[1,872]},o($V43,[2,509]),o($Vn2,[2,183],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,873]},o($Vy2,[2,346],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,874],139:$Vd3,177:875},{65:[1,876]},{126:[1,877]},{126:[1,878]},{65:[1,879]},{65:[1,880]},o($VA,[2,425]),o($V63,[2,398]),o($V63,[2,406],{273:820,291:881,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V52,[2,408]),{277:[1,882]},{277:[1,883]},{3:884,4:$VB,5:$VC},o($V52,[2,412]),o($V52,[2,414],{64:[1,885]}),{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:$VE,152:$VF,153:201,159:202,160:203,171:886,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V52,[2,416]),{192:[1,887]},o($V52,[2,418]),{64:[1,888]},{3:889,4:$VB,5:$VC},o($VA,$VU2,{303:890,63:$VV2}),o($VA,[2,444]),{3:891,4:$VB,5:$VC,96:[1,892]},{61:$Vn3,65:[1,893]},o($VA,[2,355]),o($VA,[2,358],{257:894,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($VA3,[2,360]),o($VA3,[2,361]),{219:[1,895]},{219:[1,896]},{219:[1,897]},{61:[1,898],65:[2,370]},o($Vy2,[2,397]),o($Vy2,[2,373]),{78:[1,906],86:[1,907],269:899,270:900,271:901,272:902,273:903,275:$Vi3,276:[1,904],277:[1,908],279:[1,905]},{3:909,4:$VB,5:$VC},{33:910,66:59,74:79,80:$V4},{61:$V53,65:[1,911]},o($VA,[2,334],{61:$VW2}),o($Vv3,[2,58]),{33:912,66:59,74:79,79:[1,913],80:$V4,138:[1,914]},{33:915,66:59,74:79,80:$V4,138:[1,916]},{33:917,66:59,74:79,80:$V4,138:[1,918]},o($V83,[2,176],{146:919,147:[1,920]}),o($V_2,[2,167],{61:$VB3}),o($VC3,[2,168]),o($VC3,[2,170],{225:251,142:[1,922],143:[1,923],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VB2,[2,148]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,129:924,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:925,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:927,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:928,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V$2,[2,142],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,143],{61:$VY2}),o($Vc3,[2,118]),o($Vc3,[2,120]),{3:929,4:$VB,5:$VC,63:[1,930]},o($Vc3,[2,125]),o($Vc3,[2,128]),{65:[1,931]},{65:[1,932]},{3:193,4:$VB,5:$VC,92:934,193:[1,933]},o($V33,[2,544]),o($V33,[2,546]),{239:[1,935]},{155:$Vk1,205:[1,936],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{243:$VD3,354:937},{312:[1,940],355:[1,939]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:941,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vw2,[2,401]),o($Vd1,[2,234]),{65:[1,942]},o($Vd1,[2,235]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:943,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:944,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,220]),o($Vd1,[2,222]),o($V52,[2,407]),o($V52,[2,409]),{280:[1,945]},{64:[1,946]},{89:947,152:$VF},o($V52,[2,415]),o($V52,[2,417]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:948,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,431]),o($VA,[2,435]),o($Vy2,[2,394]),o($Vy2,[2,395]),o($VA,[2,445]),o($VA3,[2,359]),{3:949,4:$VB,5:$VC},{89:950,152:$VF},{3:951,4:$VB,5:$VC},o($Vs3,$Vt3,{268:837,267:952,274:$Vu3}),o($Vy2,[2,375]),o($Vy2,[2,376]),o($Vy2,[2,377]),o($Vy2,[2,378]),o($Vy2,[2,379]),{277:[1,953]},{277:[1,954]},o($Vy2,[2,389]),{3:955,4:$VB,5:$VC},{3:956,4:$VB,5:$VC},o($Vs3,[2,381]),o($VA,[2,461]),o($VX2,[2,342]),o($Vv3,[2,158]),{33:957,66:59,74:79,80:$V4,138:[1,958]},{33:959,66:59,74:79,80:$V4},o($Vv3,[2,160]),{33:960,66:59,74:79,80:$V4},o($Vv3,[2,161]),{33:961,66:59,74:79,80:$V4},o($V83,[2,175]),{89:962,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,141:963,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC3,[2,171]),{144:[1,964]},o($Vx3,[2,150]),o($VB2,[2,156],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:965,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vw3,65:[1,966]},{61:$Vw3,65:[1,967]},o($Vc3,[2,121]),{3:968,4:$VB,5:$VC},{3:969,4:$VB,5:$VC,63:[1,970]},{3:971,4:$VB,5:$VC,63:[1,972]},{3:973,4:$VB,5:$VC},o($VA,[2,561],{64:[1,974]}),{3:503,4:$VB,5:$VC,156:502,240:975,241:501},{238:$Vy3,242:$Vz3,353:976},o($V33,[2,548]),{64:[1,978],245:[1,977],247:[1,979]},{205:[1,980],227:[1,981]},{205:[1,982],227:[1,983]},{155:$Vk1,205:[1,984],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vd1,[2,236]),o([65,139],[2,237],{61:$Vw3}),{61:$VB3,65:[2,238]},{3:985,4:$VB,5:$VC},{3:986,4:$VB,5:$VC},{61:[1,987]},{65:[1,988],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VA3,[2,362]),o($VA3,[2,363]),o($VA3,[2,364]),o($Vy2,[2,374]),{64:[1,989]},{64:[1,990]},{64:[1,991]},{64:[1,992]},o($Vv3,[2,159]),{33:993,66:59,74:79,80:$V4},o($Vv3,[2,162]),o($Vv3,[2,164]),o($Vv3,[2,165]),o($V83,[2,177]),o($VC3,[2,169]),o($VC3,[2,172],{142:[1,994]}),{61:$Vw3,65:[1,995]},o($Vx3,[2,152]),o($Vx3,[2,153]),o($Vc3,[2,122]),o($V$2,[2,84]),{3:996,4:$VB,5:$VC},o($V$2,[2,86]),{3:997,4:$VB,5:$VC},o($VA,[2,560]),{3:503,4:$VB,5:$VC,123:998,156:582},o($V33,[2,547],{61:$VO2}),o($V33,[2,545]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:999,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:1000,156:582},{245:[1,1001]},{243:$VD3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1004},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1005,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1006},{64:[1,1007]},{65:[1,1008]},{89:1009,152:$VF},o($V52,[2,382]),{3:753,4:$VB,5:$VC,96:$V73,278:1010},{3:753,4:$VB,5:$VC,96:$V73,278:1011},{3:503,4:$VB,5:$VC,123:1012,156:582},{3:503,4:$VB,5:$VC,123:1013,156:582},o($Vv3,[2,163]),o($VC3,[2,173]),o($Vx3,[2,151]),o($V$2,[2,85]),o($V$2,[2,87]),{61:$VY2,65:[1,1014]},o($V33,[2,554],{61:$VW2}),{61:$VY2,65:[1,1015]},o($V33,[2,556]),o($V33,[2,549]),{155:$Vk1,205:[1,1016],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,552]),{155:$Vk1,205:[1,1017],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,550]),{3:1018,4:$VB,5:$VC},o($V52,[2,411]),{65:[1,1019]},{61:$Vn3,65:[1,1020]},{61:$Vn3,65:[1,1021]},{61:$VY2,65:[1,1022]},{61:$VY2,65:[1,1023]},o($VA,[2,562]),{245:[1,1024],247:[1,1025]},{243:$VD3,354:1026},{238:$Vy3,242:$Vz3,353:1027},{65:[1,1028]},o($V52,[2,413]),o($Vy2,[2,383]),{280:[1,1029]},o($Vy2,[2,390]),o($Vy2,[2,391]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1030,314:126,315:$V51,319:$V61},{245:[1,1031]},o($V33,[2,551]),o($V33,[2,553]),o($V52,[2,410]),{3:1032,4:$VB,5:$VC},o($V33,[2,555],{61:$VW2}),o($V33,[2,557]),{64:[1,1033]},{3:753,4:$VB,5:$VC,96:$V73,278:1034},{61:$Vn3,65:[1,1035]},o($Vy2,[2,385],{281:1036,282:1037,120:[1,1038]}),o($Vy2,[2,384]),{120:[1,1040],283:1039},{242:[1,1041]},o($Vy2,[2,386]),{238:[1,1042]},{284:[1,1043]},{284:[1,1044]},{285:[1,1045]},{285:[1,1046]},{120:[2,387]},o($Vy2,[2,388])], -defaultActions: {81:[2,3],129:[2,239],130:[2,240],131:[2,241],132:[2,242],133:[2,243],134:[2,244],135:[2,245],136:[2,246],137:[2,247],165:[2,536],337:[2,537],405:[2,322],406:[2,323],407:[2,324],483:[2,538],758:[2,372],1045:[2,387]}, +table: [o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{253:[1,141]},{3:142,4:$VB,5:$VC},o($V71,[2,366],{3:144,252:147,4:$VB,5:$VC,78:[1,146],86:[1,145],262:[1,148],263:[1,149],301:[1,143]}),{193:$V81,341:150,342:151},{97:[1,153]},{301:[1,154]},{3:156,4:$VB,5:$VC,86:[1,157],253:[1,158],301:[1,155],309:[1,159]},o($V91,[2,338],{244:160,91:[1,161]}),{253:[1,162]},o($Va1,[2,75],{67:163,91:[1,164]}),{3:174,4:$VB,5:$VC,64:$Vb1,91:[1,167],92:169,93:171,94:170,95:172,96:$Vc1,104:166,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01,345:165},{3:179,4:$VB,5:$VC,60:177,62:178},{3:183,4:$VB,5:$VC,86:[1,184],251:[1,180],306:[1,182],307:[1,185],308:[1,181]},{253:[1,186]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:188,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,187],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,189]},{330:[1,190]},{3:192,4:$VB,5:$VC,301:[1,191]},{3:194,4:$VB,5:$VC,92:193},o($VA,[2,466],{153:195,96:$VE,191:$VV}),o($Ve1,[2,217]),{96:$VE,153:196,191:$VV},{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:[1,199],152:$VF,153:202,159:203,160:204,164:197,171:198,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:209,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,520]),o($VA,[2,521]),{3:106,4:$VB,5:$VC,33:210,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:212,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:211,314:126,315:$V51,319:$V61},{96:$VE,153:214,191:$VV,339:213},{3:215,4:$VB,5:$VC,193:[1,216]},o($Vh1,$Vi1,{76:220,75:[1,217],78:[1,218],79:[1,219],88:$Vj1}),o($Vk1,[2,63],{81:[1,222],82:[1,223],83:[1,224],84:[1,225],85:[1,226],86:[1,227],87:[1,228]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:230,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,231]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:232,225:252,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Ve1,[2,199]),o($Ve1,[2,200]),o($Ve1,[2,201]),o($Ve1,[2,202]),o($Ve1,[2,203]),o($Ve1,[2,204]),o($Ve1,[2,205]),o($Ve1,[2,206]),o($Ve1,[2,207]),o($Ve1,[2,208]),o($Ve1,[2,209]),o($Ve1,[2,210]),o($Ve1,[2,211]),o($Ve1,[2,212]),o($Ve1,[2,213]),o($Ve1,[2,214]),{3:106,4:$VB,5:$VC,33:261,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:262,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,216]),{64:[1,263]},o($Ve1,$VM1,{64:$VN1,106:[1,265]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:268,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,194]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,260,261,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,253]),o($VO1,[2,254]),o($VO1,[2,255]),o($VO1,$VP1),o($VO1,[2,257]),o($VO1,[2,258]),{3:269,4:$VB,5:$VC},{3:270,4:$VB,5:$VC},o($VQ1,[2,263]),o($VQ1,[2,264]),{3:271,4:$VB,5:$VC,64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},{64:[1,278]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:279,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:280,203:281,204:$VS1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,283]},{64:[1,284]},o($VT1,[2,477]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:285,317:288,318:290,319:$V61,322:286,323:[1,287]},{3:300,4:$VB,5:$VC,93:301},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},{64:[2,248]},o($VV1,[2,1]),o($VV1,[2,2]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,320:302,321:[1,303],324:304},{3:194,4:$VB,5:$VC,92:308},{301:[1,309]},o($V91,$VY1,{254:310,264:$VZ1}),{301:[1,312]},{3:313,4:$VB,5:$VC},{86:[1,314]},{253:[1,315],309:[1,316]},o($V71,[2,367]),o($V71,[2,368]),o($VA,[2,528],{61:[1,317]}),o($V_1,[2,529]),{3:318,4:$VB,5:$VC},{3:194,4:$VB,5:$VC,92:319},{3:320,4:$VB,5:$VC},o($V91,$V$1,{294:321,264:$V02}),{301:[1,323]},{3:324,4:$VB,5:$VC},o($V91,$V$1,{294:325,264:$V02}),o($V91,$V$1,{294:326,264:$V02}),{3:194,4:$VB,5:$VC,92:327},o($V91,[2,339]),{3:194,4:$VB,5:$VC,92:328},o($V12,[2,84],{68:329,97:[1,330]}),{3:174,4:$VB,5:$VC,92:331,93:332,94:333,95:334,96:[1,335],193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,337],346:336},{122:[2,537]},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:338,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:339,66:59,74:79,80:$V4},o($V22,[2,96],{3:340,4:$VB,5:$VC,63:[1,341]}),o($V22,[2,99],{3:342,4:$VB,5:$VC,63:[1,343]}),o($V22,[2,100],{3:344,4:$VB,5:$VC,63:[1,345]}),o($V22,[2,103],{3:346,4:$VB,5:$VC,63:[1,347]}),o($V22,[2,106],{3:348,4:$VB,5:$VC,63:[1,349]}),o([4,5,8,9,11,61,63,65,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32,{64:$VN1,106:$V42}),{3:271,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,109]),{33:351,61:[1,352],66:59,74:79,80:$V4},o($V52,[2,56]),{63:[1,353]},{253:[1,354]},{97:[1,355]},o($VA,[2,448],{207:[1,356]}),{306:[1,357]},{97:[1,358]},o($VA,[2,452],{97:[1,360],207:[1,359]}),{3:194,4:$VB,5:$VC,92:361},o($VA,[2,515]),{9:$Vx,11:$Vy,202:[1,362]},o($VA,[2,513]),o($VA,[2,514]),{3:363,4:$VB,5:$VC},o($VA,[2,441]),{239:[1,364]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V32,{106:$V42}),o($VA,[2,465]),o($VA,[2,468]),o($VA,[2,469]),o($VA,[2,470]),o($VA,$VP1,{61:[1,365]}),{64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},o($V62,[2,224]),o($V62,[2,225]),o($V62,[2,226]),o($V62,[2,227]),o($V62,[2,228]),o($V62,[2,229]),o($V62,[2,230]),{64:$VN1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:252,10:366,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,523]),o($VA,[2,524]),o($VA,[2,467],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,525],{61:[1,367]}),o($V_1,[2,527]),{120:[1,369],325:368,328:[1,370]},{3:371,4:$VB,5:$VC},o($Vh1,$Vi1,{76:372,88:$Vj1}),o($Vh1,$Vi1,{76:373,88:$Vj1}),o($Vh1,$Vi1,{76:374,88:$Vj1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:375,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,379],89:378,152:$VF},o($Vk1,[2,64]),o($Vk1,[2,65]),o($Vk1,[2,66]),o($Vk1,[2,67]),o($Vk1,[2,68]),o($Vk1,[2,69]),o($Vk1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:380,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,517],{333:381,206:[1,382]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:390,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:391,4:$VB,5:$VC,64:[1,393],89:392,93:394,152:$VF},o($V72,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:399,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:401,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V72,[2,322],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:402,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:404,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,406],226:405,236:[1,407],237:[1,408]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:410,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:299,4:$VB,5:$VC,64:[1,411],93:414,156:413,193:$V82,231:412},{230:[1,416]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:419,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:420,289:$Va2},{65:[1,423]},{65:[1,424],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,426],79:[1,427],89:92,93:88,94:96,95:97,96:$VE,121:425,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,429],89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:428,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:431,4:$VB,5:$VC,81:$Vb2,155:[1,433]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,298],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,234:$VK1}),o($Vc2,[2,299],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,300],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($VQ1,[2,261]),o($VQ1,[2,262]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,259]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:434,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,473]),o($VT1,[2,474]),o($VT1,[2,475]),o($VT1,[2,476]),o($VT1,[2,478]),{33:435,66:59,74:79,80:$V4},{155:$Vl1,200:436,203:281,204:$VS1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{201:437,202:$Vd2,203:438,204:$VS1,206:$Ve2},o($Vf2,[2,268]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:441,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:442,289:$Va2},o($VT1,[2,479]),{61:[1,444],323:[1,443]},o($VT1,[2,495]),o($Vg2,[2,502]),o($Vh2,[2,480]),o($Vh2,[2,481]),o($Vh2,[2,482]),o($Vh2,[2,483]),o($Vh2,[2,484]),o($Vh2,[2,485]),o($Vh2,[2,486]),o($Vh2,[2,487]),o($Vh2,[2,488]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:445,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,$VM1,{64:$VN1,106:$Vi2}),o($Ve1,[2,218],{64:$VN1}),o($Ve1,[2,219]),{61:[1,448],321:[1,447]},o($VT1,[2,492]),o($Vj2,[2,497]),{196:[1,449]},{196:[1,450]},{196:[1,451]},{293:[1,455],296:[1,452],298:[1,453],299:[1,454]},{3:456,4:$VB,5:$VC},{3:457,4:$VB,5:$VC},{229:[1,458]},o($Vk2,$VY1,{254:459,264:$VZ1}),{120:[1,460]},{3:461,4:$VB,5:$VC},o($V91,$VY1,{254:462,264:$VZ1}),o($V91,$VY1,{254:463,264:$VZ1}),{193:$V81,342:464},{4:$V92,63:[1,466],169:465,289:$Va2},o($VA,[2,332],{124:[1,467]}),o($VA,[2,433]),{3:468,4:$VB,5:$VC},{194:[1,469]},o($Vk2,$V$1,{294:470,264:$V02}),o($VA,[2,447]),{3:194,4:$VB,5:$VC,92:471},{3:194,4:$VB,5:$VC,92:472},{33:476,64:[1,475],66:59,74:79,80:$V4,245:[1,473],247:[1,474]},{297:[1,477]},o($Vl2,[2,146],{69:478,124:[1,479]}),{3:174,4:$VB,5:$VC,64:[1,481],92:169,93:171,94:170,95:172,96:$Vc1,98:480,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($Va1,[2,76]),o($Va1,[2,77]),o($Va1,[2,78]),o($Va1,[2,79]),o($Va1,[2,80]),{120:[1,484],347:483},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:485,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,538]},{65:[1,486]},o($V22,[2,94]),{3:487,4:$VB,5:$VC},o($V22,[2,97]),{3:488,4:$VB,5:$VC},o($V22,[2,101]),{3:489,4:$VB,5:$VC},o($V22,[2,104]),{3:490,4:$VB,5:$VC},o($V22,[2,107]),{3:491,4:$VB,5:$VC},{3:492,4:$VB,5:$VC},o($VA,[2,54]),{3:179,4:$VB,5:$VC,62:493},{64:[1,494]},{3:194,4:$VB,5:$VC,92:495},{3:194,4:$VB,5:$VC,92:496},{96:$VE,153:497,191:$VV},o($VA,[2,450],{207:[1,498]}),{3:194,4:$VB,5:$VC,92:499},{96:$VE,153:500,191:$VV},{3:501,4:$VB,5:$VC},o($VA,[2,535]),o($VA,[2,522]),o($VA,[2,440]),{3:505,4:$VB,5:$VC,156:504,240:502,241:503},{164:506,193:$Vg1,314:126,315:$V51,319:$V61},o($VA,[2,519]),{96:$VE,153:507,191:$VV},o($VA,[2,503]),o($VA,[2,511]),o($VA,[2,512]),{214:[1,510],219:[1,508],326:509},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:512,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:513,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vm2,[2,62],{61:$Vn2}),o($Vo2,$Vp2,{149:515,150:$Vq2,151:$Vr2}),o($Vs2,[2,191],{225:252,3:519,153:521,4:$VB,5:$VC,63:[1,518],96:$VE,152:[1,520],155:$Vl1,191:$VV,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vh1,[2,71],{90:[1,522]}),{89:523,152:$VF},o($Vz,[2,9]),o($VA,[2,516]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:524,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vt2,[2,272],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vt2,[2,273],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,274],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,275],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vu2,[2,276],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,277],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,278],{225:252,213:$Vs1,214:$Vt1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,279],{225:252,214:$Vt1}),o($Ve1,[2,280],{64:$VN1}),o($Ve1,[2,281]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:525,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,283]),o($Vv2,[2,284],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,285],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,286],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,287],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,288],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,289],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,290],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,291],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,292],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,293],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),{64:[1,526]},{64:[2,323]},{64:[2,324]},{64:[2,325]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1}),{3:106,4:$VB,5:$VC,33:527,49:104,64:$VD,65:[1,529],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:528,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,308]),o($Ve1,[2,314]),o($Ve1,[2,315]),{64:[1,530]},{3:299,4:$VB,5:$VC,64:[1,531],93:414,156:413,193:$V82,231:532},o($Vw2,[2,310],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o($Vw2,[2,311],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,312],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Ve1,[2,313]),o($Vx2,[2,404],{64:[1,533]}),{64:[1,534]},o($Ve1,[2,215]),o($Ve1,[2,301]),{65:[1,535],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:536,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:537,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vy2,65:[1,538]},o($VQ1,[2,250]),o($Vz2,[2,251],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,$VA2,{106:[1,540]}),o($VT1,[2,197]),o($Ve1,[2,193]),{65:[1,541],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,542]},{201:543,202:$Vd2,203:438,204:$VS1,206:$Ve2},{202:[1,544]},o($Vf2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:545,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vl1,205:[1,546],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{63:[1,547],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{61:[1,548]},o($VT1,[2,493]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:550,318:290,319:$V61,323:[1,549]},{65:[1,551],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:552,4:$VB,5:$VC,81:$Vb2},o($VT1,[2,490]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,321:[1,553],324:554},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:556,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:557,318:290,319:$V61},{83:[1,559],297:[1,558]},{83:[1,560]},{83:[1,561]},{83:[1,562]},o($VA,[2,429],{63:[1,564],64:[1,563]}),o($VA,[2,434]),{194:[1,565]},{3:566,4:$VB,5:$VC,96:$VE,153:567,191:$VV},{3:194,4:$VB,5:$VC,92:568},{120:[1,569]},{3:194,4:$VB,5:$VC,92:570},{3:194,4:$VB,5:$VC,92:571},o($V_1,[2,530]),o($V_1,[2,531],{219:[1,572]}),{4:$V92,169:573,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:574,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,442]),o($Vk2,[2,422]),{3:575,4:$VB,5:$VC,96:$VE,153:576,191:$VV},o($VA,[2,420]),o($VA,[2,464]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:577,314:126,315:$V51,319:$V61},{245:[1,581]},{3:505,4:$VB,5:$VC,123:582,156:583},o($VA,[2,336]),{3:584,4:$VB,5:$VC},o($VC2,[2,148],{70:585,125:[1,586]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:587,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V12,[2,81],{99:588,107:590,100:591,108:592,111:595,61:$VD2,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,33:339,64:$Vb1,66:59,74:79,80:$V4,92:169,93:171,94:170,95:172,96:$Vc1,98:604,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($VO2,[2,89]),{204:$VP2,348:605,350:606,351:607},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:609,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,539]},o($V22,[2,93],{3:610,4:$VB,5:$VC,63:[1,611]}),o($V22,[2,95]),o($V22,[2,98]),o($V22,[2,102]),o($V22,[2,105]),o($V22,[2,108]),o([4,5,8,9,11,61,63,64,65,80,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,110]),o($V52,[2,55]),{33:612,66:59,74:79,80:$V4},o($VA,[2,460],{97:[1,613]}),o($VA,[2,456],{97:[1,614]}),o($VA,[2,449]),{96:$VE,153:615,191:$VV},o($VA,[2,458],{97:[1,616]}),o($VA,[2,453]),o($VA,[2,454],{207:[1,617]}),o($VA,[2,327],{61:$VQ2,124:[1,618]}),o($VR2,[2,328]),{219:[1,620]},o([8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VM1,{106:$Vi2}),o($VA,[2,471]),o($V_1,[2,526]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:621,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,623],219:[1,622]},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:624},o($Vm2,[2,59],{61:$Vn2}),o($Vm2,[2,60],{61:$Vn2}),o($Vm2,[2,61],{61:$Vn2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:377,148:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,[2,180]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:629,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:630,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:631,4:$VB,5:$VC,96:$VE,152:[1,632],153:633,191:$VV},o($Vs2,[2,186]),o($Vs2,[2,188]),o($Vs2,[2,190]),o($Vh1,[2,73]),{65:[1,634]},o($VA,[2,518]),{65:[1,635],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,33:636,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:637,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,638]},{61:$Vy2,65:[1,639]},o($Ve1,[2,306]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:640,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:641,49:104,64:$VD,65:[1,643],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:642,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,309]),{152:[1,644]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:645,314:126,315:$V51,319:$V61},o($Ve1,$VU2,{174:647,175:$VV2}),{65:[1,649],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,650],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($VQ1,[2,249]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:651,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:652,4:$VB,5:$VC,155:[1,653]},o($VT1,[2,472]),o($Ve1,[2,260]),{202:[1,654]},o($Ve1,[2,266]),{155:$Vl1,202:[2,270],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:656,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:657,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,494]),o($Vg2,[2,501]),o($Vh2,[2,489]),o($VT1,$VA2,{106:[1,658]}),o($VT1,[2,491]),o($Vj2,[2,496]),o($Vj2,[2,498]),o($Vj2,[2,499]),o($Vj2,[2,500]),{3:659,4:$VB,5:$VC},{3:660,4:$VB,5:$VC},{3:662,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC,286:663},{3:664,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:665,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:666,4:$VB,5:$VC},o($Vk2,[2,370]),o($VA,$VW2,{303:667,63:$VX2,64:[1,668]}),o($VA,$VW2,{303:670,63:$VX2}),{64:[1,671]},{3:194,4:$VB,5:$VC,92:672},o($VA,[2,357],{64:[1,673]}),{63:[1,675],64:[1,674]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:676,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V_1,[2,532],{219:[1,677]}),o($VA,[2,331],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,443]),o($VA,[2,444]),o($VA,[2,333],{61:$VY2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:679,314:126,315:$V51,319:$V61},o($VZ2,[2,341]),o($VZ2,[2,342]),o($VA,[2,334]),{61:$V_2,65:[1,680]},o($VO2,[2,354]),o($VA,[2,428]),o($V$2,[2,167],{71:682,139:[1,683]}),{126:[1,684]},o($Vl2,[2,147],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V12,[2,82],{108:592,111:595,107:685,100:686,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:687,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V03,[2,114]),o($V03,[2,115]),{3:174,4:$VB,5:$VC,64:[1,691],92:689,93:692,94:690,95:693,109:688,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{102:[1,694],113:$V13},{102:[1,696],113:$V23},o($V33,[2,130]),{101:[1,700],103:[1,699],111:698,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($V33,[2,132]),{113:[1,701]},{103:[1,703],113:[1,702]},{103:[1,705],113:[1,704]},{103:[1,706]},{113:[1,707]},{113:[1,708]},{61:$VD2,99:709,100:591,101:$VE2,103:$VF2,107:590,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,559],{349:710,350:711,351:712,204:$VP2,356:[1,713]}),o($V43,[2,543]),o($V43,[2,544]),{229:[1,715],352:[1,714]},{155:$Vl1,204:[2,540],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V22,[2,91]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,451]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,156:504,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,504],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:726},o($V53,[2,507]),o($V53,[2,508]),o($V53,[2,509]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,$Vp2,{149:728,150:$Vq2,151:$Vr2}),o($Vo2,[2,182],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vo2,[2,183],{225:252,150:[1,729],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vs2,[2,185]),o($Vs2,[2,187]),o($Vs2,[2,189]),o($Vh1,[2,72]),o($Ve1,[2,282]),{65:[1,730]},{61:$Vy2,65:[1,731]},o($Ve1,[2,302]),o($Ve1,[2,304]),{65:[1,732],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,733]},{61:$Vy2,65:[1,734]},o($Ve1,[2,307]),{61:[1,735],65:[1,736]},{61:$V63,65:[1,737]},o($Vz2,[2,346],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,[2,231]),{64:[1,739]},o($Ve1,$VU2,{174:740,175:$VV2}),o($Ve1,$VU2,{174:741,175:$VV2}),o($Vz2,[2,252],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VT1,[2,195]),o($Ve1,[2,192]),o($Ve1,[2,265]),o($Vf2,[2,269],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:652,4:$VB,5:$VC},o($VA,[2,423]),{297:[1,746]},o($VA,[2,424]),o($V73,[2,401],{169:747,4:$V92,288:[1,748],289:$Va2}),o($VA,[2,425]),o($VA,[2,427]),{61:$Vy2,65:[1,749]},o($VA,[2,431]),o($VA,[2,435]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,437]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:752,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,755]},{3:662,4:$VB,5:$VC,63:[1,758],255:756,265:757,286:759},{3:505,4:$VB,5:$VC,123:760,156:583},{33:761,66:59,74:79,80:$V4},o($V_1,[2,533],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:762,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,763],94:765,164:764,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V63,65:[1,766]},{33:768,66:59,74:79,80:$V4,245:[1,767]},{3:505,4:$VB,5:$VC,156:769},o($V83,[2,175],{72:770,145:[1,771]}),{126:[1,772]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:773,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,112]),o($V03,[2,113]),o($VO2,[2,90]),o($V03,[2,145],{110:779,120:[1,780],122:[1,781]}),o($Vc3,[2,117],{3:782,4:$VB,5:$VC,63:[1,783]}),{3:784,4:$VB,5:$VC,63:[1,785]},{33:786,66:59,74:79,80:$V4},o($Vc3,[2,124],{3:787,4:$VB,5:$VC,63:[1,788]}),o($Vc3,[2,127],{3:789,4:$VB,5:$VC,63:[1,790]}),{64:[1,791]},o($V33,[2,142]),{64:[1,792]},o($V33,[2,138]),o($V33,[2,131]),{113:$V23},{113:$V13},o($V33,[2,133]),o($V33,[2,134]),{113:[1,793]},o($V33,[2,136]),{113:[1,794]},{113:[1,795]},o($V33,[2,140]),o($V33,[2,141]),{65:[1,796],100:686,101:$VE2,103:$VF2,107:685,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,536]),o($V43,[2,541]),o($V43,[2,542]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:797,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,798],227:[1,799]},{352:[1,800]},o($V22,[2,92]),o($V52,[2,57]),o($VA,[2,461]),o($VA,[2,457]),o($VA,[2,459]),o($VA,[2,455]),o($VA,[2,326],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VR2,[2,329]),o($VR2,[2,330],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,505],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V53,[2,506]),{65:[1,801],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:802,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,294]),o($Ve1,[2,295]),o($Ve1,[2,316]),o($Ve1,[2,303]),o($Ve1,[2,305]),{152:[1,803]},o($Vx2,[2,403]),o($Vx2,[2,405]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:804,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:805,177:806,178:[1,807]},o($Ve1,[2,232]),o($Ve1,[2,233]),o($Ve1,[2,220]),{152:[1,809]},o($Ve1,[2,222]),{152:[1,810]},{3:811,4:$VB,5:$VC},o($V73,[2,406],{287:812,290:813,291:814,273:823,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V73,[2,400]),o($VA,[2,430],{63:[1,825]}),{61:$Vy2,65:[1,826]},o($VA,[2,439]),{61:$Vn3,65:[1,827]},o($Vo3,[2,169]),o($Vo3,[2,171],{225:252,142:[1,829],143:[1,830],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:831,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,832]},{61:[1,833],65:[2,372]},{33:834,66:59,74:79,80:$V4},o($Vz2,[2,397]),{61:$V_2,65:[1,835]},o($VA,[2,463]),o($V_1,[2,534],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:836,314:126,315:$V51,319:$V61},o($VZ2,[2,344]),o($VZ2,[2,345]),o($VZ2,[2,340]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:837,314:126,315:$V51,319:$V61},o($VA,[2,337]),o($VO2,[2,355]),o($Vp3,[2,158],{73:838,135:[1,839],136:[1,840],137:[1,841]}),{89:842,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:843,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,156],{128:844,61:$Vq3,134:[1,846]}),o($Vr3,[2,150]),{131:[1,847]},{64:[1,848]},{64:[1,849]},o($Vr3,[2,155],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,116]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:850,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:851,156:583},o($Vc3,[2,118]),{3:852,4:$VB,5:$VC},o($Vc3,[2,120]),{3:853,4:$VB,5:$VC},{65:[1,854]},o($Vc3,[2,125]),{3:855,4:$VB,5:$VC},o($Vc3,[2,128]),{3:856,4:$VB,5:$VC},{33:857,66:59,74:79,80:$V4},{33:858,66:59,74:79,80:$V4},o($V33,[2,135]),o($V33,[2,137]),o($V33,[2,139]),o($V12,[2,83]),o($VA,[2,560],{61:$Vn2,91:[1,859]}),{238:$Vs3,242:$Vt3,353:860},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:863,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,865],205:[1,864],227:[1,866]},o($V53,[2,510]),o($Vo2,[2,184],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,867]},o($Vz2,[2,347],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,868],139:$Vd3,177:869},{65:[1,870]},{126:[1,871]},{126:[1,872]},{65:[1,873]},{65:[1,874]},o($VA,[2,426]),o($V73,[2,399]),o($V73,[2,407],{273:823,291:875,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V62,[2,409]),{277:[1,876]},{277:[1,877]},{3:878,4:$VB,5:$VC},o($V62,[2,413]),o($V62,[2,415],{64:[1,879]}),{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:$VE,152:$VF,153:202,159:203,160:204,171:880,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V62,[2,417]),{192:[1,881]},o($V62,[2,419]),{64:[1,882]},{3:883,4:$VB,5:$VC},o($VA,$VW2,{303:884,63:$VX2}),o($VA,[2,445]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,141:885,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo3,[2,172]),{144:[1,886]},{61:$Vn3,65:[1,887]},o($VA,[2,358],{256:888,257:889,258:890,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($Vy3,$Vz3,{3:662,266:895,286:896,267:897,268:898,4:$VB,5:$VC,274:$VA3}),{65:[2,373]},{63:[1,900]},{61:$V63,65:[1,901]},o($VA,[2,335],{61:$VY2}),o($Vp3,[2,58]),{33:902,66:59,74:79,79:[1,903],80:$V4,138:[1,904]},{33:905,66:59,74:79,80:$V4,138:[1,906]},{33:907,66:59,74:79,80:$V4,138:[1,908]},o($V83,[2,177],{146:909,147:[1,910]}),o($V$2,[2,168],{61:$Vn3}),o($VC2,[2,149]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,129:911,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:912,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,913]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:914,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:915,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,143],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,144],{61:$V_2}),o($Vc3,[2,119]),o($Vc3,[2,121]),{3:916,4:$VB,5:$VC,63:[1,917]},o($Vc3,[2,126]),o($Vc3,[2,129]),{65:[1,918]},{65:[1,919]},{3:194,4:$VB,5:$VC,92:921,193:[1,920]},o($V43,[2,545]),o($V43,[2,547]),{239:[1,922]},{155:$Vl1,205:[1,923],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{243:$VB3,354:924},{312:[1,927],355:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:928,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vx2,[2,402]),o($Ve1,[2,235]),{65:[1,929]},o($Ve1,[2,236]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:930,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:931,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,221]),o($Ve1,[2,223]),o($V62,[2,408]),o($V62,[2,410]),{280:[1,932]},{64:[1,933]},{89:934,152:$VF},o($V62,[2,416]),o($V62,[2,418]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:935,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,432]),o($VA,[2,436]),o($Vo3,[2,170]),o($Vo3,[2,173],{142:[1,936]}),o($VA,[2,446]),o($VA,[2,356]),o($VA,[2,359],{258:937,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($VC3,[2,361]),o($VC3,[2,362]),{219:[1,938]},{219:[1,939]},{219:[1,940]},{61:[1,941],65:[2,371]},o($Vz2,[2,398]),o($Vz2,[2,374]),{78:[1,949],86:[1,950],269:942,270:943,271:944,272:945,273:946,275:$Vi3,276:[1,947],277:[1,951],279:[1,948]},{3:952,4:$VB,5:$VC},{33:953,66:59,74:79,80:$V4},o($VZ2,[2,343]),o($Vp3,[2,159]),{33:954,66:59,74:79,80:$V4,138:[1,955]},{33:956,66:59,74:79,80:$V4},o($Vp3,[2,161]),{33:957,66:59,74:79,80:$V4},o($Vp3,[2,162]),{33:958,66:59,74:79,80:$V4},o($V83,[2,176]),{89:959,152:$VF},o($Vr3,[2,151]),o($VC2,[2,157],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:960,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vq3,65:[1,961]},{61:$Vq3,65:[1,962]},o($Vc3,[2,122]),{3:963,4:$VB,5:$VC},{3:964,4:$VB,5:$VC,63:[1,965]},{3:966,4:$VB,5:$VC,63:[1,967]},{3:968,4:$VB,5:$VC},o($VA,[2,562],{64:[1,969]}),{3:505,4:$VB,5:$VC,156:504,240:970,241:503},{238:$Vs3,242:$Vt3,353:971},o($V43,[2,549]),{64:[1,973],245:[1,972],247:[1,974]},{205:[1,975],227:[1,976]},{205:[1,977],227:[1,978]},{155:$Vl1,205:[1,979],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Ve1,[2,237]),o([65,139],[2,238],{61:$Vq3}),{61:$Vn3,65:[2,239]},{3:980,4:$VB,5:$VC},{3:981,4:$VB,5:$VC},{61:[1,982]},{65:[1,983],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo3,[2,174]),o($VC3,[2,360]),{3:984,4:$VB,5:$VC},{89:985,152:$VF},{3:986,4:$VB,5:$VC},o($Vy3,$Vz3,{268:898,267:987,274:$VA3}),o($Vz2,[2,376]),o($Vz2,[2,377]),o($Vz2,[2,378]),o($Vz2,[2,379]),o($Vz2,[2,380]),{277:[1,988]},{277:[1,989]},o($Vz2,[2,390]),{3:990,4:$VB,5:$VC},{3:991,4:$VB,5:$VC},o($Vy3,[2,382]),o($VA,[2,462]),o($Vp3,[2,160]),{33:992,66:59,74:79,80:$V4},o($Vp3,[2,163]),o($Vp3,[2,165]),o($Vp3,[2,166]),o($V83,[2,178]),{61:$Vq3,65:[1,993]},o($Vr3,[2,153]),o($Vr3,[2,154]),o($Vc3,[2,123]),o($V03,[2,85]),{3:994,4:$VB,5:$VC},o($V03,[2,87]),{3:995,4:$VB,5:$VC},o($VA,[2,561]),{3:505,4:$VB,5:$VC,123:996,156:583},o($V43,[2,548],{61:$VQ2}),o($V43,[2,546]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:997,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:998,156:583},{245:[1,999]},{243:$VB3,354:1000},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1001,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1004},{64:[1,1005]},{65:[1,1006]},{89:1007,152:$VF},o($V62,[2,383]),o($VC3,[2,363]),o($VC3,[2,364]),o($VC3,[2,365]),o($Vz2,[2,375]),{64:[1,1008]},{64:[1,1009]},{64:[1,1010]},{64:[1,1011]},o($Vp3,[2,164]),o($Vr3,[2,152]),o($V03,[2,86]),o($V03,[2,88]),{61:$V_2,65:[1,1012]},o($V43,[2,555],{61:$VY2}),{61:$V_2,65:[1,1013]},o($V43,[2,557]),o($V43,[2,550]),{155:$Vl1,205:[1,1014],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,553]),{155:$Vl1,205:[1,1015],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,551]),{3:1016,4:$VB,5:$VC},o($V62,[2,412]),{65:[1,1017]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1018},{3:1019,4:$VB,5:$VC,96:$VD3,278:1021},{3:505,4:$VB,5:$VC,123:1022,156:583},{3:505,4:$VB,5:$VC,123:1023,156:583},o($VA,[2,563]),{245:[1,1024],247:[1,1025]},{243:$VB3,354:1026},{238:$Vs3,242:$Vt3,353:1027},{65:[1,1028]},o($V62,[2,414]),{61:$VE3,65:[1,1029]},o($Vz2,[2,393]),o($Vz2,[2,394]),{61:$VE3,65:[1,1031]},{61:$V_2,65:[1,1032]},{61:$V_2,65:[1,1033]},{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1034,314:126,315:$V51,319:$V61},{245:[1,1035]},o($V43,[2,552]),o($V43,[2,554]),o($V62,[2,411]),o($Vz2,[2,384]),{3:1036,4:$VB,5:$VC,96:[1,1037]},{280:[1,1038]},o($Vz2,[2,391]),o($Vz2,[2,392]),o($V43,[2,556],{61:$VY2}),o($V43,[2,558]),o($Vz2,[2,395]),o($Vz2,[2,396]),{3:1039,4:$VB,5:$VC},{64:[1,1040]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1041},{61:$VE3,65:[1,1042]},o($Vz2,[2,386],{281:1043,282:1044,120:[1,1045]}),o($Vz2,[2,385]),{120:[1,1047],283:1046},{242:[1,1048]},o($Vz2,[2,387]),{238:[1,1049]},{284:[1,1050]},{284:[1,1051]},{285:[1,1052]},{285:[1,1053]},{120:[2,388]},o($Vz2,[2,389])], +defaultActions: {81:[2,3],129:[2,240],130:[2,241],131:[2,242],132:[2,243],133:[2,244],134:[2,245],135:[2,246],136:[2,247],137:[2,248],166:[2,537],338:[2,538],406:[2,323],407:[2,324],408:[2,325],485:[2,539],834:[2,373],1052:[2,388]}, parseError: function parseError(str, hash) { if (hash.recoverable) { this.trace(str); @@ -2105,7 +1880,7 @@ case 21:return 119 break; case 22:return 237 break; -case 23:return 103 +case 23:return 102 break; case 24:return 187 break; @@ -2117,9 +1892,9 @@ case 27:return 142 break; case 28:return 300 break; -case 29:return 259 +case 29:return 260 break; -case 30:return 259 +case 30:return 260 break; case 31:return 183 break; @@ -2139,7 +1914,7 @@ case 38:return 199 break; case 39:return 168 break; -case 40:return 260 +case 40:return 261 break; case 41:return 275 break; @@ -2195,7 +1970,7 @@ case 66:return 293 break; case 67:return 202 break; -case 68:return 258 +case 68:return 259 break; case 69:return 289 break; @@ -2301,7 +2076,7 @@ case 119:return 228 break; case 120:return 139 break; -case 121:return 104 +case 121:return 103 break; case 122:return 175 break; @@ -2361,7 +2136,7 @@ case 149:return 'STORE' break; case 150:return "SUM" break; -case 151:return 252 +case 151:return 253 break; case 152:return 307 break; @@ -2369,126 +2144,130 @@ case 153:return 355 break; case 154:return 150 break; -case 155:return 85 +case 155:return 263 +break; +case 156:return 262 +break; +case 157:return 85 break; -case 156:return 151 +case 158:return 151 break; -case 157:return 205 +case 159:return 205 break; -case 158:return 297 +case 160:return 297 break; -case 159:return 88 +case 161:return 88 break; -case 160:return 'TRAN' +case 162:return 'TRAN' break; -case 161:return 330 +case 163:return 330 break; -case 162:return 189 +case 164:return 189 break; -case 163:return 343 +case 165:return 343 break; -case 164:return 135 +case 166:return 135 break; -case 165:return 78 +case 167:return 78 break; -case 166:return 238 +case 168:return 238 break; -case 167:return 304 +case 169:return 304 break; -case 168:return 122 +case 170:return 122 break; -case 169:return 81 +case 171:return 81 break; -case 170:return 245 +case 172:return 245 break; -case 171:return 309 +case 173:return 309 break; -case 172:return 204 +case 174:return 204 break; -case 173:return 124 +case 175:return 124 break; -case 174:return 334 +case 176:return 334 break; -case 175:return 59 +case 177:return 59 break; -case 176:return 330 +case 178:return 330 break; -case 177:return 152 +case 179:return 152 break; -case 178:return 152 +case 180:return 152 break; -case 179:return 214 +case 181:return 214 break; -case 180:return 209 +case 182:return 209 break; -case 181:return 210 +case 183:return 210 break; -case 182:return 155 +case 184:return 155 break; -case 183:return 211 +case 185:return 211 break; -case 184:return 212 +case 186:return 212 break; -case 185:return 224 +case 187:return 224 break; -case 186:return 221 +case 188:return 221 break; -case 187:return 223 +case 189:return 223 break; -case 188:return 220 +case 190:return 220 break; -case 189:return 216 +case 191:return 216 break; -case 190:return 215 +case 192:return 215 break; -case 191:return 218 +case 193:return 218 break; -case 192:return 222 +case 194:return 222 break; -case 193:return 217 +case 195:return 217 break; -case 194:return 219 +case 196:return 219 break; -case 195:return 222 +case 197:return 222 break; -case 196:return 64 +case 198:return 64 break; -case 197:return 65 +case 199:return 65 break; -case 198:return 193 +case 200:return 193 break; -case 199:return 319 +case 201:return 319 break; -case 200:return 321 +case 202:return 321 break; -case 201:return 323 +case 203:return 323 break; -case 202:return 106 +case 204:return 106 break; -case 203:return 61 +case 205:return 61 break; -case 204:return 235 +case 206:return 235 break; -case 205:return 196 +case 207:return 196 break; -case 206:return 9 +case 208:return 9 break; -case 207:return 195 +case 209:return 195 break; -case 208:return 197 +case 210:return 197 break; -case 209:return 213 +case 211:return 213 break; -case 210:return 4 +case 212:return 4 break; -case 211:return 8 +case 213:return 8 break; -case 212:return 'INVALID' +case 214:return 'INVALID' break; } }, -rules: [/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i], -conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],"inclusive":true}} +rules: [/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEMP\b)/i,/^(?:TEMPORARY\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i], +conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],"inclusive":true}} }); return lexer; })(); @@ -3994,204 +3773,11 @@ Database.prototype.compile = function(sql, kind) { // var statement = this.sqlcache[hh]; // if(!statement) { -<<<<<<< HEAD -var saveFile = utils.saveFile = function(path, data, cb) { - var res = 1; - if(typeof path == 'undefined') { - // - // Return data into result variable - // like: alasql('SELECT * INTO TXT() FROM ?',[data]); - // - res = data; - if(cb) res = cb(res); - } else { - - if(typeof exports == 'object') { - // For Node.js - var fs = require('fs'); - var data = fs.writeFileSync(path,data); - if(cb) res = cb(res); - } else if(typeof cordova == 'object') { - // For Apache Cordova - window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) { -// alasql.utils.removeFile(path,function(){ - fileSystem.root.getFile(path, {create:true}, function (fileEntry) { - fileEntry.createWriter(function(fileWriter) { - fileWriter.onwriteend = function(){ - if(cb) res = cb(res); - }; - fileWriter.write(data); - }); - }); - // }); - }); -||||||| merged common ancestors -var saveFile = utils.saveFile = function(path, data, cb) { - if(!path) { - alasql.options.stdout = true; - console.log(data); - if(cb) cb(); - } else { - if(typeof exports == 'object') { - // For Node.js - var fs = require('fs'); - var data = fs.writeFileSync(path,data); - if(cb) cb(); - } else if(typeof cordova == 'object') { - // For Apache Cordova - window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) { -// alasql.utils.removeFile(path,function(){ - fileSystem.root.getFile(path, {create:true}, function (fileEntry) { - fileEntry.createWriter(function(fileWriter) { - fileWriter.onwriteend = function(){ - if(cb) cb(); - }; - fileWriter.write(data); - }); - }); - // }); - }); -======= // // If not fount, then compile it // var ast = alasql.parse(sql); // // Save to cache ->>>>>>> release/0.0.47 - -<<<<<<< HEAD -/* - } else if((typeof cordova == 'object') && cordova.file) { -// console.log('saveFile 1'); - // Cordova - var paths = path.split('/'); - var filename = paths[paths.length-1]; - var dirpath = path.substr(0,path.length-filename.length); - // console.log('CORDOVA',filename,dirpath); - //return success('[{"a":"'+filename+'"}]'); - - window.resolveLocalFileSystemURL(dirpath, function(dir) { -// console.log('saveFile 2'); - - dir.getFile(filename, {create:true}, function(file) { -// console.log('saveFile 3'); - -// file.file(function(file) { -// console.log('saveFile 4'); - - file.createWriter(function(fileWriter) { - -// fileWriter.seek(fileWriter.length); - - var blob = new Blob([data], {type:'text/plain'}); - fileWriter.write(blob); - fileWriter.onwriteend = function(){ - if(cb) cb(); - }; -// console.log("ok, in theory i worked"); - }); -*/ -/* - // Corodva - function writeFinish() { - // ... your done code here... - return cb() - }; - var written = 0; - var BLOCK_SIZE = 1*1024*1024; // write 1M every time of write - function writeNext(cbFinish) { - var sz = Math.min(BLOCK_SIZE, data.length - written); - var sub = data.slice(written, written+sz); - writer.write(sub); - written += sz; - writer.onwrite = function(evt) { - if (written < data.length) - writeNext(cbFinish); - else - cbFinish(); - }; - } - writeNext(writeFinish); - } -*/ -// }); -// }); -// }); - } else { - var blob = new Blob([data], {type: "text/plain;charset=utf-8"}); - saveAs(blob, path); - if(cb) res = cb(res); - } - }; - return res; -}; -||||||| merged common ancestors -/* - } else if((typeof cordova == 'object') && cordova.file) { -// console.log('saveFile 1'); - // Cordova - var paths = path.split('/'); - var filename = paths[paths.length-1]; - var dirpath = path.substr(0,path.length-filename.length); - // console.log('CORDOVA',filename,dirpath); - //return success('[{"a":"'+filename+'"}]'); - - window.resolveLocalFileSystemURL(dirpath, function(dir) { -// console.log('saveFile 2'); - - dir.getFile(filename, {create:true}, function(file) { -// console.log('saveFile 3'); - -// file.file(function(file) { -// console.log('saveFile 4'); - - file.createWriter(function(fileWriter) { - -// fileWriter.seek(fileWriter.length); - - var blob = new Blob([data], {type:'text/plain'}); - fileWriter.write(blob); - fileWriter.onwriteend = function(){ - if(cb) cb(); - }; -// console.log("ok, in theory i worked"); - }); -*/ -/* - // Corodva - function writeFinish() { - // ... your done code here... - return cb() - }; - var written = 0; - var BLOCK_SIZE = 1*1024*1024; // write 1M every time of write - function writeNext(cbFinish) { - var sz = Math.min(BLOCK_SIZE, data.length - written); - var sub = data.slice(written, written+sz); - writer.write(sub); - written += sz; - writer.onwrite = function(evt) { - if (written < data.length) - writeNext(cbFinish); - else - cbFinish(); - }; - } - writeNext(writeFinish); - } -*/ -// }); -// }); -// }); - } else { - var blob = new Blob([data], {type: "text/plain;charset=utf-8"}); - saveAs(blob, path); - if(cb) cb(); - } - }; -}; -======= // statement = this.sqlcache[hh]= ast.compile(self); ->>>>>>> release/0.0.47 // // Memory leak prevention // this.sqlcachesize++; @@ -4506,6 +4092,9 @@ yy.Statements.prototype.compile = function(db) { // Main query procedure function queryfn(query,oldscope,cb, A,B) { + +// console.log(query.queriesfn); + var ms; query.sourceslen = query.sources.length; var slen = query.sourceslen; @@ -4962,6 +4551,8 @@ function doJoin (query, scope, h) { if(query.groupfn) { query.groupfn(scope, query.params, query.alasql) } else { +// query.qwerty = 999; +//console.log(query.qwerty, query.queriesfn && query.queriesfn.length,2); query.data.push(query.selectfn(scope, query.params, alasql)); } } @@ -5289,7 +4880,7 @@ yy.Select.prototype.toJavaScript = function(context, tableid, defcols) { // return this.expression.toJavaScript(context, tableid, defcols); // console.log('Select.toJS', 81, this.queriesidx); // var s = 'this.queriesdata['+(this.queriesidx-1)+'][0]'; -//console.log(this); + var s = 'alasql.utils.flatArray(this.queriesfn['+(this.queriesidx-1)+'](this.params,null,'+context+'))[0]'; // s = '(console.log(this.queriesfn[0]),'+s+')'; @@ -5610,6 +5201,9 @@ yy.Select.prototype.compileQueries = function(query) { }); }; +// +// Prepare subqueries and exists +// alasql.precompile = function(statement,databaseid,params){ // console.log(statement); if(!statement) return; @@ -5624,8 +5218,6 @@ alasql.precompile = function(statement,databaseid,params){ return ex.compile(databaseid || statement.database.databaseid); }); }; - - } /* @@ -6338,7 +5930,12 @@ function optimizeWhereJoin (query, ast) { yy.Select.prototype.compileGroup = function(query) { // console.log(this.group); var self = this; - var tableid = query.sources[0].alias; + if(query.sources.length > 0) { + var tableid = query.sources[0].alias; + } else { + // If SELECT contains group aggregators without source tables + var tableid = ''; + } var defcols = query.defcols; // console.log(16,tableid, defcols); @@ -6786,7 +6383,7 @@ yy.Select.prototype.compileSelect1 = function(query) { } yy.Select.prototype.compileSelect2 = function(query) { - var s = query.selectfns ; + var s = query.selectfns; // console.log(s); return new Function('p,params,alasql',s+'return r'); }; @@ -6914,16914 +6511,4187 @@ yy.Select.prototype.compileSelectGroup2 = function(query) { } -<<<<<<< HEAD -var xlsnc = utils.xlsnc = function(i) { - var addr = String.fromCharCode(65+i%26); - if(i>=26) { - i=((i/26)|0)-1; - addr = String.fromCharCode(65+i%26)+addr; - if(i>26) { - i=((i/26)|0)-1; - addr = String.fromCharCode(65+i%26)+addr; - }; - }; - return addr; -}; - -/** - Excel:conver Excel column name to number - @param {integer} i Column number, like 'A' or 'BE' - @return {string} Column name, starting with 0 -*/ -var xlscn = utils.xlscn = function(s) { - var n = s.charCodeAt(0)-65; - if(s.length>1) { - n = (n+1)*26+s.charCodeAt(1)-65; -// console.log(n, s.charCodeAt(0)-65, s.charCodeAt(1)-65); - if(s.length>2) { - n = (n+1)*26+s.charCodeAt(2)-65; - } - } - return n; -}; - -var domEmptyChildren = utils.domEmptyChildren = function (container){ - var len = container.childNodes.length; - while (len--) { - container.removeChild(container.lastChild); - }; +yy.Select.prototype.compileHaving = function(query) { + if(this.having) { + s = this.having.toJavaScript('g',-1); + query.havingfns = s; +// console.log(s); + return new Function('g,params,alasql','return '+s); + } else return function(){return true}; }; - -/** - Strip all comments. - Based om the https://github.com/lehni/uncomment.js/blob/master/uncomment.js - I just replaced JavaScript's '//' to SQL's '--' and remove other stuff - TODO: Fixed [aaa/*bbb] for column names - TODO: Bug if -- comments in the last line - */ - -alasql.utils.uncomment = function uncomment(str) { - // Add some padding so we can always look ahead and behind by two chars - str = ('__' + str + '__').split(''); - var quote = false, - quoteSign, - // regularExpression = false, - // characterClass = false, - blockComment = false, - lineComment = false; - // preserveComment = false; - - for (var i = 0, l = str.length; i < l; i++) { -// console.log(i,str[i]); - // When checking for quote escaping, we also need to check that the - // escape sign itself is not escaped, as otherwise '\\' would cause - // the wrong impression of an unclosed string: - var unescaped = str[i - 1] !== '\\' || str[i - 2] === '\\'; - - if (quote) { - if (str[i] === quoteSign && unescaped) - quote = false; - // } else if (regularExpression) { - // Make sure '/'' inside character classes is not considered the end - // of the regular expression. - // if (str[i] === '[' && unescaped) { - // characterClass = true; - // } else if (str[i] === ']' && unescaped && characterClass) { - // characterClass = false; - // } else if (str[i] === '/' && unescaped && !characterClass) { - // regularExpression = false; - // } - } else if (blockComment) { - // Is the block comment closing? - if (str[i] === '*' && str[i + 1] === '/') { - // if (!preserveComment) - str[i] = str[i + 1] = ''; - blockComment /* = preserveComment*/ = false; - // Increase by 1 to skip closing '/', as it would be mistaken - // for a regexp otherwise - i++; - } else { //if (!preserveComment) { - str[i] = ''; - } - } else if (lineComment) { - // One-line comments end with the line-break - if (str[i + 1] == '\n' || str[i + 1] == '\r') - lineComment = false; - str[i] = ''; - } else { - if (str[i] == '"' || str[i] == "'") { - quote = true; - quoteSign = str[i]; - } else if (str[i] == '[' && str[i-1] != "@") { - quote = true; - quoteSign = ']'; - // } else if (str[i] === '-' && str[i + 1] === '-') { - // str[i] = ''; - // lineComment = true; - } else if (str[i] === '/' && str[i + 1] === '*') { - // Do not filter out conditional comments /*@ ... */ - // and comments marked as protected /*! ... */ -// preserveComment = /[@!]/.test(str[i + 2]); -// if (!preserveComment) - str[i] = ''; - blockComment = true; -// console.log('block'); - // } else if (str[i + 1] === '/') { - // str[i] = ''; - // lineComment = true; - // } else { - // We need to make sure we don't count normal divisions as - // regular expresions. Matching this properly is difficult, - // but if we assume that normal division always have a space - // after /, a simple check for white space or '='' (for /=) - // is enough to distinguish divisions from regexps. - // TODO: Develop a proper check for regexps. - // if (!/[\s=]/.test(str[i + 1])) { - // regularExpression = true; - // } - // } +yy.Select.prototype.compileOrder = function (query) { + var self = this; + if(this.order) { +// console.log(990, this.order); + if(this.order && this.order.length == 1 && this.order[0].expression + && typeof this.order[0].expression == "function") { +// console.log(991, this.order[0]); + var func = this.order[0].expression; +// console.log(994, func); + return function(a,b){ + var ra = func(a),rb = func(b); + if(ra>rb) return 1; + if(ra==rb) return 0; + return -1; } - } - } - // Remove padding again. - str = str.join('').slice(2, -2); - -/* - // Strip empty lines that contain only white space and line breaks, as they - // are left-overs from comment removal. - str = str.replace(/^[ \t]+(\r\n|\n|\r)/gm, function(all) { - return ''; - }); - // Replace a sequence of more than two line breaks with only two. - str = str.replace(/(\r\n|\n|\r)(\r\n|\n|\r)+/g, function(all, lineBreak) { - return lineBreak + lineBreak; - }); -*/ - return str; -}; - - -/* -// -// Database class for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - - -// Initial parameters -/** - Jison parser - */ -alasql.parser = parser; - -/** - Jison parser - @param {string} sql SQL statement - @return {object} AST (Abstract Syntax Tree) - */ -alasql.parse = function(sql) { - return parser.parse(alasql.utils.uncomment(sql)); -}; // Shortcut - -// Database Engines -/** - List of engines of external databases - */ -alasql.engines = {}; - -// Databases -/** - List of databases - */ -alasql.databases = {}; - -/** Number of databases */ -alasql.databasenum = 0; // Current database - -// Deafult options -/** - Alasql options object - */ -alasql.options = {}; -alasql.options.errorlog = false; // Log or throw error -alasql.options.valueof = false; // Use valueof in orderfn -alasql.options.dropifnotexists = false; // DROP database in any case -alasql.options.datetimeformat = 'sql'; // How to handle DATE and DATETIME types - // Another value is 'javascript' -alasql.options.casesensitive = true; // Table and column names are case sensitive and converted to lower-case -alasql.options.logtarget = 'output'; // target for log. Values: 'console', 'output', 'id' of html tag -alasql.options.logprompt = true; // Print SQL at log - -//alasql.options.worker = false; -// Variables -alasql.vars = {}; -alasql.declares = {}; - -// AUTOCOMMIT ON | OFF -alasql.options.autocommit = true; + }; -alasql.options.cache = true; + var s = ''; + var sk = ''; + this.order.forEach(function(ord,idx){ + // console.log(ord instanceof yy.Expression); + // console.log(ord.toJavaScript('a','')); + // console.log(ord.expression instanceof yy.Column); + + // Date conversion + var dg = ''; +//console.log(ord.expression, ord.expression instanceof yy.NumValue); + if(ord.expression instanceof yy.NumValue) { + ord.expression = self.columns[ord.expression.value-1]; + }; -alasql.prompthistory = []; + if(ord.expression instanceof yy.Column) { + var columnid = ord.expression.columnid; + if(query.xcolumns[columnid]) { + var dbtypeid = query.xcolumns[columnid].dbtypeid; + if( dbtypeid == 'DATE' || dbtypeid == 'DATETIME') dg = '.valueOf()'; + // TODO Add other types mapping + } else { + if(alasql.options.valueof) dg = '.valueOf()'; // TODO Check + } + // COLLATE NOCASE + if(ord.nocase) dg += '.toUpperCase()'; -alasql.from = {}; // FROM functions -alasql.into = {}; // INTO functions + s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; + s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; -alasql.fn = {}; -alasql.aggr = {}; + } else { + dg = '.valueOf()'; + // COLLATE NOCASE + if(ord.nocase) dg += '.toUpperCase()'; + s += 'if('+ord.toJavaScript('a','')+dg+(ord.direction == 'ASC'?'>':'<')+ord.toJavaScript('b','')+dg+')return 1;'; + s += 'if('+ord.toJavaScript('a','')+dg+'=='+ord.toJavaScript('b','')+dg+'){'; + } -alasql.busy = 0; +// if(columnid == '_') { +// s += 'if(a'+dg+(ord.direction == 'ASC'?'>':'<')+'b'+dg+')return 1;'; +// s += 'if(a'+dg+'==b'+dg+'){'; +// } else { + // TODO Add date comparision + // s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; + // s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; +// } + sk += '}'; + }); + s += 'return 0;'; + s += sk+'return -1'; + query.orderfns = s; +//console.log(s); + return new Function('a,b',s); + }; +}; -// Cache -alasql.MAXSQLCACHESIZE = 10000; -alasql.DEFAULTDATABASEID = 'alasql'; -/* WebWorker */ -alasql.lastid = 0; -alasql.buffer = {}; -/** - Select current database - @param {string} databaseid Selected database identificator - */ -alasql.use = function (databaseid) { - if(!databaseid) databaseid = alasql.DEFAULTDATABASEID; - if(alasql.useid == databaseid) return; - alasql.useid = databaseid; - var db = alasql.databases[alasql.useid]; - alasql.tables = db.tables; -// alasql.fn = db.fn; - db.resetSqlCache(); -}; +/* +// +// ROLLUP(), CUBE(), GROUPING SETS() for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ + +/** + Calculate ROLLUP() combination + */ + +var rollup = function (a,query) { + var rr = []; + var mask = 0; + var glen = a.length; + for(var g=0;g'+gv[t]+'<',gv[t]=='',typeof gv[t]); +// console.log(gv[t].toString()); +//console.log('+++'); + res = res.map(function(r){ + query.groupColumns[escapeq(gv[t].toString())] = escapeq(gv[t].toString()); + return r.concat(escapeq(gv[t].toString()) + +'\t' + +gv[t].toJavaScript('p',query.sources[0].alias,query.defcols)) + }); +// res = res.concat(gv[t]); + }; + + // switch(gv[t].t) { + // case 'plain': + // res = res.map(function(r){return r.concat(gv[t].p)}); + + // break; + // case 'rollup': res = cartes(res,rollup(gv[t].p)); break; + // case 'cube': res = cartes(res,cube(gv[t].p)); break; + // case 'groupingsets': res = cartes(res,groupingsets(gv[t].p)); break; + // default: res = res.concat(gv[t]); + // } + }; + return res; + } else if(gv instanceof yy.FuncValue) { +// console.log(gv); + query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); + return [gv.toString()+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; + } else if(gv instanceof yy.Column) { + gv.nick = escapeq(gv.columnid); + query.groupColumns[gv.nick] = gv.nick; + return [gv.nick+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; // Is this ever happened? + // } else if(gv instanceof yy.Expression) { + // return [gv.columnid]; // Is this ever happened? + } else { + query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); + return [escapeq(gv.toString())+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; +// throw new Error('Single argument in the group without array'); + }; + + + // switch(gv.t) { + // case 'plain': return gv.p; break; + // case 'rollup': return rollup(gv.p); break; + // case 'cube': return cube(gv.p); break; + // case 'groupingsets': return groupingsets(gv.p); break; + // default: return [gv];//return decartes(gv.p); + // } + // return gv; +}; + + -// Run one statement -/** - Run SQL statement on current database - */ -alasql.exec = function (sql, params, cb, scope) { - delete alasql.error; - if(alasql.options.errorlog){ - try { - return alasql.dexec(alasql.useid, sql, params, cb, scope); - } catch(err){ - alasql.error = err; - if(cb) cb(null,alasql.error); - } - } else { - return alasql.dexec(alasql.useid, sql, params, cb, scope); - } + +/* +// +// Select run-time part for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ + +yy.Select.prototype.compileDefCols = function(query, databaseid) { +// console.log('defcols'); + var defcols = {}; + if(this.from) { + this.from.forEach(function(fr){ + if(fr instanceof yy.Table) { + var alias = fr.as || fr.tableid; +// console.log(alasql.databases[fr.databaseid || databaseid]); +// console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); +//console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); +//console.log(alasql.databases); + var table = alasql.databases[fr.databaseid || databaseid].tables[fr.tableid]; +//console.log(table); + if(table.columns) { + table.columns.forEach(function(col){ + if(defcols[col.columnid]) { + defcols[col.columnid] = '-'; // Ambigous + } else { + defcols[col.columnid] = alias; + } + }); + } + } else if(fr instanceof yy.Select) { + + } else if(fr instanceof yy.ParamValue) { + + } else if(fr instanceof yy.VarValue) { + + } else if(fr instanceof yy.FuncValue) { + + } else if(fr instanceof yy.FromData) { + + } else { + throw new Error('Unknown type of FROM clause'); + }; + }); + }; + + if(this.joins) { + this.joins.forEach(function(jn){ +// console.log(jn); + if(jn.table) { + var alias = jn.table.tableid; + if(jn.as) alias = jn.as; + var alias = jn.as || jn.table.tableid; + var table = alasql.databases[jn.table.databaseid || databaseid].tables[jn.table.tableid]; +// console.log(jn.table.tableid, jn.table.databaseid); + if(table.columns) { + table.columns.forEach(function(col){ + if(defcols[col.columnid]) { + defcols[col.columnid] = '-'; // Ambigous + } else { + defcols[col.columnid] = alias; + } + }); + } + } else if(jn.select) { + + } else if(jn.param) { + + } else if(jn.func) { + + } else { + throw new Error('Unknown type of FROM clause'); + }; + }); + }; + // for(var k in defcols) { + // if(defcols[k] == '-') defcols[k] = undefined; + // } +// console.log(defcols); + return defcols; } -/** - Run SQL statement on specific database - */ -alasql.dexec = function (databaseid, sql, params, cb, scope) { - var db = alasql.databases[databaseid]; -// if(db.databaseid != databaseid) console.trace('got!'); -// console.log(3,db.databaseid,databaseid); - - // Create hash - if(alasql.options.cache) { - var hh = hash(sql); - var statement = db.sqlCache[hh]; - // If database structure was not changed sinse lat time return cache - if(statement && db.dbversion == statement.dbversion) { - return statement(params, cb); - } - } - - // Create AST - var ast = alasql.parse(sql); - if(!ast.statements) return; - if(ast.statements.length == 0) return 0; - else if(ast.statements.length == 1) { - if(ast.statements[0].compile) { - -// Compile and Execute - var statement = ast.statements[0].compile(databaseid); - if(!statement) return; - statement.sql = sql; - statement.dbversion = db.dbversion; - - if(alasql.options.cache) { - // Secure sqlCache size - if (db.sqlCacheSize > alasql.MAXSQLCACHESIZE) { - db.resetSqlCache(); - } - db.sqlCacheSize++; - db.sqlCache[hh] = statement; - } - var res = alasql.res = statement(params, cb, scope); - return res; - - } else { -// console.log(ast.statements[0]); - alasql.precompile(ast.statements[0],alasql.useid,params); - var res = alasql.res = ast.statements[0].execute(databaseid, params, cb, scope); - return res; - } - } else { - // Multiple statements - if(cb) { - alasql.adrun(databaseid, ast, params, cb, scope); - } else { - return alasql.drun(databaseid, ast, params, cb, scope); - } - } -}; - -/** - Run multiple statements and return array of results sync - */ -alasql.drun = function (databaseid, ast, params, cb, scope) { - var useid = alasql.useid; - if(useid != databaseid) alasql.use(databaseid); - var res = []; - for (var i=0, ilen=ast.statements.length; i alasql.MAXSQLCACHESIZE) { -// this.resetSqlCache(); -// } -// }; -// return statement; -// } - -// SQL.js compatibility method -//Database.prototype.prepare = Database.prototype.compile; - - -// Added for compatibility with WebSQL - - - - - -/* -// -// Transactio class for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - - -Database.prototype.transaction = function(cb) { - var tx = new alasql.Transaction(this.databaseid); - var res = cb(tx); - return res; -}; - -// Transaction class (for WebSQL compatibility) - -/** - Transaction class - @class Transaction - */ - -var Transaction = alasql.Transaction = function (databaseid) { - this.transactionid = Date.now(); - this.databaseid = databaseid; - this.commited = false; - this.dbversion = alasql.databases[databaseid].dbversion; -// this.bank = cloneDeep(alasql.databases[databaseid]); - this.bank = JSON.stringify(alasql.databases[databaseid]); - // TODO CLone Tables with insertfns -// console.log(this); - return this; -}; - -// Main class - - -// Commit - -/** - Commit transaction - */ -Transaction.prototype.commit = function() { - this.commited = true; - alasql.databases[this.databaseid].dbversion = Date.now(); - delete this.bank; -}; - -// Rollback -/** - Rollback transaction - */ -Transaction.prototype.rollback = function() { - if(!this.commited) { - alasql.databases[this.databaseid] = JSON.parse(this.bank); - // alasql.databases[this.databaseid].tables = this.bank; - // alasql.databases[this.databaseid].dbversion = this.dbversion; - delete this.bank; - } else { - throw new Error('Transaction already commited'); - } -}; - -// Transactions stub - -/** - Execute SQL statement - @param {string} sql SQL statement - @param {object} params Parameters - @param {function} cb Callback function - @return result - */ -Transaction.prototype.exec = function(sql, params, cb) { -// console.log(this.databaseid); - return alasql.dexec(this.databaseid,sql,params,cb); -}; - -Transaction.prototype.executeSQL = Transaction.prototype.exec; - -/* -Transaction.prototype.query = Database.prototype.exec; -Transaction.prototype.run = Database.prototype.exec; -Transaction.prototype.queryArray = function(sql, params, cb) { - return flatArray(this.exec(sql, params, cb)); -} - -Transaction.prototype.queryArrayOfArrays = function(sql, params, cb) { - return arrayOfArrays(this.exec(sql, params, cb)); -} - -Transaction.prototype.querySingle = function(sql, params, cb) { - return this.exec(sql, params, cb)[0]; -} -Transaction.prototype.queryValue = function(sql, params, cb) { - var res = this.querySingle(sql, params, cb); - return res[Object.keys(res)[0]]; -} -*/ - - -/* -// -// Table class for Alasql.js -// Date: 14.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Table class -var Table = alasql.Table = function(params){ - // Columns - this.columns = []; - this.xcolumns = {}; - // Data array - this.data = []; - - this.inddefs = {}; - this.indices = {}; - - this.uniqs = {}; - this.uniqdefs = {}; - - extend(this,params); -}; - - -// View = function(){ -// this.data = []; -// this.columns = []; -// this.ixcolumns = {}; -// this.ixdefs = {}; -// this.indices = {}; -// }; - -// alasql.View = View; - -Table.prototype.indexColumns = function() { - var self = this; - self.xcolumns = {}; - self.columns.forEach(function(col){ - self.xcolumns[col.columnid] = col; - }); -} - - - - -/* -// -// View class for Alasql.js -// Date: 14.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Table class -var View = alasql.View = function(params){ - // Columns - this.columns = []; - this.xcolumns = {}; - // Data array - this.query = []; - - extend(this,params); -}; - -// View = function(){ -// this.data = []; -// this.columns = []; -// this.ixcolumns = {}; -// this.ixdefs = {}; -// this.indices = {}; -// }; - -// alasql.View = View; - - - - -/* -// -// Query class for Alasql.js -// Date: 14.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Table class - -/** - @class Query Main query class - */ -var Query = alasql.Query = function(params){ - this.alasql = alasql; -// console.log(12,alasql); - // Columns - this.columns = []; - this.xcolumns = {}; - this.selectGroup = []; - this.groupColumns = {}; - // Data array - extend(this,params); -}; - -/** - @class Recordset data object - */ -var Recordset = alasql.Recordset = function(params){ - // Data array - extend(this,params); -}; - - -// View = function(){ -// this.data = []; -// this.columns = []; -// this.ixcolumns = {}; -// this.ixdefs = {}; -// this.indices = {}; -// }; - -// alasql.View = View; - - - - -/* -// -// Parser helper for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -var yy = parser.yy = {}; - -// Utility -yy.extend = extend; -// Option for case sensitive -yy.casesensitive = alasql.options.casesensitive; - -// Base class for all yy classes -var Base = yy.Base = function (params) { return yy.extend(this, params); }; - -Base.prototype.toString = function() {} -Base.prototype.toType = function() {} -Base.prototype.toJavaScript = function() {} - -//var BaseClause = yy,BaseClause = function (params) { return yy.extend(this, params); }; -Base.prototype.compile = returnUndefined; -Base.prototype.exec = function() {} - -//var BaseStatement = yy,BaseStatement = function (params) { return yy.extend(this, params); }; -Base.prototype.compile = returnUndefined; -Base.prototype.exec = function() {} - - - - -/* -// -// Statements class for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Statements container -yy.Statements = function(params) { return yy.extend(this, params); }; - -yy.Statements.prototype.toString = function () { - return this.statements.map(function(st){return st.toString()}).join(';'+NL()); -}; - -// Compile array of statements into single statement -yy.Statements.prototype.compile = function(db) { - var statements = this.statements.map(function(st){ - return st.compile(db) - }); - if(statements.length == 1) { - return statements[0]; - } else { - return function(params, cb){ - var res = statements.map(function(st){ return st(params); }); - if(cb) cb(res); - return res; - } - } -}; - - - -// Main query procedure -function queryfn(query,oldscope,cb, A,B) { - var ms; - query.sourceslen = query.sources.length; - var slen = query.sourceslen; - query.query = query; // TODO Remove to prevent memory leaks - query.A = A; - query.B = B; -// console.log(arguments); - query.cb = cb; - query.oldscope = oldscope; - - // Run all subqueries before main statement - if(query.queriesfn) { - query.sourceslen += query.queriesfn.length; - slen += query.queriesfn.length; - - query.queriesdata = []; - -// console.log(8); - query.queriesfn.forEach(function(q,idx){ -// if(query.explain) ms = Date.now(); -//console.log(18,idx); -// var res = flatArray(q(query.params,null,queryfn2,(-idx-1),query)); - -// var res = flatArray(queryfn(q.query,null,queryfn2,(-idx-1),query)); -// console.log(A,B); -// console.log(q); - q.query.params = query.params; -// query.queriesdata[idx] = - - if(false) { - queryfn(q.query,query.oldscope,queryfn2,(-idx-1),query); - } else { - queryfn2([],(-idx-1),query); - } - -// console.log(27,q); - - -// query.explaination.push({explid: query.explid++, description:'Query '+idx,ms:Date.now()-ms}); -// query.queriesdata[idx] = res; -// return res; - }); -// console.log(9,query.queriesdata.length); -// console.log(query.queriesdata[0]); - } - - var scope; - if(!oldscope) scope = {}; - else scope = cloneDeep(oldscope); - query.scope = scope; - - // First - refresh data sources - - var result; - query.sources.forEach(function(source, idx){ -// source.data = query.database.tables[source.tableid].data; -// console.log(666,idx); - source.query = query; - var rs = source.datafn(query, query.params, queryfn2, idx, alasql); -// console.log(333,rs); - if(typeof rs != undefined) { - // TODO - this is a hack: check if result is array - check all cases and - // make it more logical - if((query.intofn || query.intoallfn) && rs instanceof Array) rs = rs.length; - result = rs; - } -// console.log(444,result); -// -// Ugly hack to use in query.wherefn and source.srcwherefns functions -// constructions like this.queriesdata['test']. -// I can elimite it with source.srcwherefn.bind(this)() -// but it may be slow. -// - source.queriesdata = query.queriesdata; - }); - if(slen == 0) result = queryfn3(query); - return result; -}; - -function queryfn2(data,idx,query) { - -//console.log(56,arguments); -// console.log(78,data, idx,query); -//console.trace(); - - if(idx>=0) { - var source = query.sources[idx]; - source.data = data; - if(typeof source.data == 'function') { - source.getfn = source.data; - source.dontcache = source.getfn.dontcache; - - // var prevsource = query.sources[h-1]; - if(source.joinmode == 'OUTER' || source.joinmode == 'RIGHT' || source.joinmode == 'ANTI') { - source.dontcache = false; - } - source.data = {}; - } - } else { - // subqueries -// console.log("queriesdata",data, flatArray(data)); - query.queriesdata[-idx-1] = flatArray(data); -// console.log(98,query.queriesdata); -// console.log(79,query.queriesdata); - } - - query.sourceslen--; - if(query.sourceslen>0) return; - - return queryfn3(query); -}; - -function queryfn3(query) { -//console.log(55,query); - - - var scope = query.scope; - // Preindexation of data sources -// if(!oldscope) { - preIndex(query); -// } - - // query.sources.forEach(function(source) { - // console.log(source.data); - // }); - - // Prepare variables - query.data = []; - query.xgroups = {}; - query.groups = []; - - // Level of Joins - var h = 0; - - // Start walking over data - doJoin(query, scope, h); - -//console.log(85,query.data[0]); - - // If groupping, then filter groups with HAVING function -// console.log(query.havingfns); - if(query.groupfn) { - query.data = []; - if(query.groups.length == 0) { - var g = {}; - if(query.selectGroup.length>0) { -// console.log(query.selectGroup); - query.selectGroup.forEach(function(sg){ - if(sg.aggregatorid == "COUNT" || sg.aggregatorid == "SUM") { - g[sg.nick] = 0; - } else { - g[sg.nick] = undefined; - } - }); - }; - query.groups = [g]; -// console.log(); - }; - // console.log('EMPTY',query.groups); - // debugger; - // if(false && (query.groups.length == 1) && (Object.keys(query.groups[0]).length == 0)) { - // console.log('EMPTY',query.groups); - // } else { - for(var i=0,ilen=query.groups.length;i 0) { - for(var i=0,ilen=query.data.length;i 0 && source.optimization == 'ix' && source.onleftfn && source.onrightfn) { - // If there is no table.indices - create it - if(source.databaseid && alasql.databases[source.databaseid].tables[source.tableid]) { - if(!alasql.databases[source.databaseid].tables[source.tableid].indices) query.database.tables[source.tableid].indices = {}; - // Check if index already exists - var ixx = alasql.databases[source.databaseid].tables[source.tableid].indices[hash(source.onrightfns+'`'+source.srcwherefns)]; - if( !alasql.databases[source.databaseid].tables[source.tableid].dirty && ixx) { - source.ix = ixx; - } - }; - if(!source.ix) { - source.ix = {}; - // Walking over source data - var scope = {}; - var i = 0; - var ilen = source.data.length; - var dataw; -// while(source.getfn i=query.sources.length) { -//console.log(query.wherefns); - // Then apply where and select -// console.log(query); - if(query.wherefn(scope,query.params, alasql)) { - -// console.log("scope",scope.schools); - -// var res = query.selectfn(scope, query.params, alasql); -// console.log("last",res); - // If there is a GROUP BY then pipe to groupping function - if(query.groupfn) { - query.groupfn(scope, query.params, query.alasql) - } else { - query.data.push(query.selectfn(scope, query.params, alasql)); - } - } - } else if(query.sources[h].applyselect) { -// console.log('APPLY',scope); -// console.log('scope1',scope); -// console.log(scope); - var source = query.sources[h]; - source.applyselect(query.params, function(data){ - if(data.length > 0) { - // console.log('APPLY CB'); - for(var i=0;i0) { - s += NL()+ID()+K('GROUP BY')+' '+this.group.map(function(grp){ - return grp.toString(); - }).join(', '); - }; - if(this.having) s += NL()+ID()+K('HAVING')+' '+this.having.toString(); - - if(this.order && this.order.length>0) { - s += NL()+ID()+K('ORDER BY')+' '+this.order.map(function(ord){ - return ord.toString(); - }).join(', '); - }; - if(this.limit) s += NL()+ID()+K('LIMIT')+' '+this.limit.value; - if(this.offset) s += NL()+ID()+K('OFFSET')+' '+this.offset.value; - if(this.union) s += NL()+K('UNION')+NL()+this.union.toString(); - if(this.unionall) s += NL()+K('UNION ALL')+NL()+this.unionall.toString(); - if(this.except) s += NL()+K('EXCEPT')+NL()+this.except.toString(); - if(this.intersect) s += NL()+K('INTERSECT')+NL()+this.intersect.toString(); - return s; -}; - -/** - Select statement in expression - */ -yy.Select.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); -// if(this.expression.reduced) return 'true'; -// return this.expression.toJavaScript(context, tableid, defcols); -// console.log('Select.toJS', 81, this.queriesidx); -// var s = 'this.queriesdata['+(this.queriesidx-1)+'][0]'; -//console.log(this); - var s = 'alasql.utils.flatArray(this.queriesfn['+(this.queriesidx-1)+'](this.params,null,'+context+'))[0]'; -// s = '(console.log(this.queriesfn[0]),'+s+')'; - - return s; -}; - - -// Compile SELECT statement -yy.Select.prototype.compile = function(databaseid) { - var db = alasql.databases[databaseid]; - // Create variable for query - var query = new Query(); - - query.removeKeys = []; - - query.explain = this.explain; // Explain - query.explaination = []; - query.explid = 1; - - query.modifier = this.modifier; - - query.database = db; - // 0. Precompile whereexists - this.compileWhereExists(query); - - // 0. Precompile queries for IN, NOT IN, ANY and ALL operators - this.compileQueries(query); - - query.defcols = this.compileDefCols(query, databaseid); - - // 1. Compile FROM clause - query.fromfn = this.compileFrom(query); - // 2. Compile JOIN clauses - if(this.joins) this.compileJoins(query); - // 3. Compile SELECT clause - - this.compileSelectGroup0(query); - - if(this.group || query.selectGroup.length>0) { - query.selectgfns = this.compileSelectGroup1(query); - } else { - query.selectfns = this.compileSelect1(query); - } - // 5. Optimize WHERE and JOINS - if(this.where) this.compileWhereJoins(query); - - // 4. Compile WHERE clause - query.wherefn = this.compileWhere(query); - - - // 6. Compile GROUP BY - if(this.group || query.selectGroup.length>0) query.groupfn = this.compileGroup(query); - - // 6. Compile HAVING - if(this.having) query.havingfn = this.compileHaving(query); - - if(this.group || query.selectGroup.length>0) { - query.selectgfn = this.compileSelectGroup2(query); - } else { - query.selectfn = this.compileSelect2(query); - } - - - // 7. Compile DISTINCT, LIMIT and OFFSET - query.distinct = this.distinct; - - // 8. Compile ORDER BY clause - if(this.order) query.orderfn = this.compileOrder(query); - -// TOP - if(this.top) { - query.limit = this.top.value; - } else if(this.limit) { - query.limit = this.limit.value; - if(this.offset) { - query.offset = this.offset.value; - } - }; - query.percent = this.percent; - - // 9. Compile ordering function for UNION and UNIONALL - if(this.union) { - query.unionfn = this.union.compile(databaseid); - if(this.union.order) { - query.orderfn = this.union.compileOrder(query); - } else { - query.orderfn = null; - } - } else if(this.unionall) { - query.unionallfn = this.unionall.compile(databaseid); - if(this.unionall.order) { - query.orderfn = this.unionall.compileOrder(query); - } else { - query.orderfn = null; - } - } else if(this.except) { - query.exceptfn = this.except.compile(databaseid); - if(this.except.order) { - query.orderfn = this.except.compileOrder(query); - } else { - query.orderfn = null; - } - } else if(this.intersect) { - query.intersectfn = this.intersect.compile(databaseid); - if(this.intersect.order) { - query.intersectfn = this.intersect.compileOrder(query); - } else { - query.orderfn = null; - } - }; - - // SELECT INTO - if(this.into) { - if(this.into instanceof yy.Table) { - // - // Save into the table in database - // - if(alasql.options.autocommit && alasql.databases[this.into.databaseid||databaseid].engineid) { - // For external database when AUTOCOMMIT is ONs - query.intoallfns = 'return alasql.engines["'+alasql.databases[this.into.databaseid||databaseid].engineid+'"]'+ - '.intoTable("'+(this.into.databaseid||databaseid)+'","'+this.into.tableid+'",this.data, columns, cb);'; - } else { - // Into AlaSQL tables - query.intofns = - 'alasql.databases[\''+(this.into.databaseid||databaseid)+'\'].tables'+ - '[\''+this.into.tableid+'\'].data.push(r);'; - } - } else if(this.into instanceof yy.VarValue) { - // - // Save into local variable - // SELECT * INTO @VAR1 FROM ? - // - query.intoallfns = 'alasql.vars["'+this.into.variable+'"]=this.data;res=this.data.length;if(cb)res=cb(res);return res;'; - } else if (this.into instanceof yy.FuncValue) { - // - // If this is INTO() function, then call it - // with one or two parameters - // - var qs = 'return alasql.into[\''+this.into.funcid.toUpperCase()+'\']('; - if(this.into.args && this.into.args.length>0 ) { - qs += this.into.args[0].toJavaScript()+','; - if(this.into.args.length > 1) { - qs += this.into.args[1].toJavaScript()+','; - } else { - qs += 'undefined,'; - } - } else { - qs += 'undefined, undefined,' - } - query.intoallfns = qs+'this.data,columns,cb)'; -//console.log('999'); - - - } else if (this.into instanceof yy.ParamValue) { - // - // Save data into parameters array - // like alasql('SELECT * INTO ? FROM ?',[outdata,srcdata]); - // - query.intofns = "params['"+this.into.param+"'].push(r)"; - }; - - if(query.intofns) { - // Create intofn function - query.intofn = new Function("r,i,params,alasql",query.intofns); - } else if(query.intoallfns) { - // Create intoallfn function - query.intoallfn = new Function("columns,cb,params,alasql",query.intoallfns); - } - - } -//console.log(query); - - // Now, compile all togeather into one function with query object in scope - var statement = function(params, cb, oldscope) { - query.params = params; - var res1 = queryfn(query,oldscope,function(res){ - -//console.log(res[0].schoolid); -//console.log(184,res); - var res2 = modify(query, res); - - - if(cb) cb(res2); -//console.log(8888,res2); - return res2; - - }); -//console.log(9999,res1); - -// if(typeof res1 != 'undefined') res1 = modify(query,res1); - - return res1; - - }; - -// statement.dbversion = ; -// console.log(statement.query); -//console.log(202,statement); - statement.query = query; - return statement; -}; - -function modify(query, res) { - if(query.modifier == 'VALUE') { -// console.log(222,res); - if(res.length > 0) { - var key; - if(query.columns && query.columns.length > 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - res = res[0][key]; - } else { - res = undefined; - } - } if(query.modifier == 'ROW') { - if(res.length > 0) { - var key; - if(query.columns && query.columns.length > 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - var a = []; - for(var key in res[0]) { - a.push(res[0][key]); - }; - res = a; - } else { - res = undefined; - } - } if(query.modifier == 'COLUMN') { - var ar = []; - if(res.length > 0) { - var key; - if(query.columns && query.columns.length > 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - for(var i=0, ilen=res.length; i 0) { - key = query.columns[0].columnid; - val = query.columns[1].columnid; - } else { - var okeys = Object.keys(res[0]); - key = okeys[0]; - val = okeys[1]; - } - for(var i=0, ilen=res.length; i 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - var s = ''; - for(var i=0, ilen=res.length; i0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat('cb,idx,query').join(','); - // } - // if(tq.args && tq.args.length>0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat().join(','); - // } - if(tq.args && tq.args.length>0) { - if(tq.args[0]) { - s += tq.args[0].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - if(tq.args[1]) { - s += tq.args[1].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - } else { - s += 'null,null,' - } - s += 'cb,idx,query'; - s += ');/*if(cb)res=cb(res,idx,query);*/return res'; -// console.log(s); - source.datafn = new Function('query, params, cb, idx, alasql',s); - - } else if(tq instanceof yy.FromData) { - source.datafn = function(query,params,cb,idx, alasql) { - var res = tq.data; - if(cb) res = cb(res,idx,query); - return res; - } - } else { - throw new Error('Wrong table at FROM'); - } -// source.data = alasql.databases[source.databaseid].tables[source.tableid].data; - query.sources.push(source); - - }); - // TODO Add joins - query.defaultTableid = query.sources[0].alias; -//console.log(query.defaultTableid); -}; - -alasql.prepareFromData = function(data,array) { - var res = data; - if(typeof data == "string") { - res = data.split(/\r?\n/); - if(array) { - for(var i=0, ilen=res.length; i0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat('cb,idx,query').join(','); - // } - // if(tq.args && tq.args.length>0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat().join(','); - // } - if(jn.args && jn.args.length>0) { - if(jn.args[0]) { - s += jn.args[0].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - if(jn.args[1]) { - s += jn.args[1].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - } else { - s += 'null,null,' - } - s += 'cb,idx,query'; - s += ');/*if(cb)res=cb(res,idx,query);*/return res'; -// console.log(s); - source.datafn = new Function('query, params, cb, idx, alasql',s); - - query.aliases[source.alias] = {type:'funcvalue'}; - } -/* - } else if(tq instanceof yy.Select) { - query.aliases[alias] = {type:'subquery'}; - } else if(tq instanceof yy.ParamValue) { - query.aliases[alias] = {type:'paramvalue'}; - } else if(tq instanceof yy.FuncValue) { - query.aliases[alias] = {type:'paramvalue'}; - } else { - throw new Error('Wrong table at FROM'); - } -*/ - var alias = source.alias; - - // Test NATURAL-JOIN - if(jn.natural) { - if(jn.using || jn.on) { - throw new Error('NATURAL JOIN cannot have USING or ON clauses'); - } else { -// source.joinmode == "INNER"; - if(query.sources.length > 0) { - var prevSource = query.sources[query.sources.length-1]; - var prevTable = alasql.databases[prevSource.databaseid].tables[prevSource.tableid]; - var table = alasql.databases[source.databaseid].tables[source.tableid]; - - if(prevTable && table) { - var c1 = prevTable.columns.map(function(col){return col.columnid}); - var c2 = table.columns.map(function(col){return col.columnid}); - jn.using = arrayIntersect(c1,c2).map(function(colid){return {columnid:colid}}); -// console.log(jn.using); - } else { - throw new Error('In this version of Alasql NATURAL JOIN '+ - 'works for tables with predefined columns only'); - }; - } - } - } - - - - - - - - if(jn.using) { - var prevSource = query.sources[query.sources.length-1]; -// console.log(query.sources[0],prevSource,source); - source.onleftfns = jn.using.map(function(col){ -// console.log(141,colid); - return "p['"+(prevSource.alias||prevSource.tableid)+"']['"+col.columnid+"']"; - }).join('+"`"+'); - - - - source.onleftfn = new Function('p,params,alasql','return '+source.onleftfns); - - source.onrightfns = jn.using.map(function(col){ - return "p['"+(source.alias||source.tableid)+"']['"+col.columnid+"']"; - }).join('+"`"+'); - source.onrightfn = new Function('p,params,alasql','return '+source.onrightfns); - source.optimization = 'ix'; -// console.log(151,source.onleftfns, source.onrightfns); -// console.log(source); - } else if(jn.on) { -//console.log(jn.on); - if(jn.on instanceof yy.Op && jn.on.op == '=' && !jn.on.allsome) { -// console.log('ix optimization', jn.on.toJavaScript('p',query.defaultTableid) ); - source.optimization = 'ix'; - // source.onleftfns = jn.on.left.toJavaScript('p',query.defaultTableid); - // source.onleftfn = new Function('p', 'return '+source.onleftfns); - // source.onrightfns = jn.on.right.toJavaScript('p',query.defaultTableid); - // source.onrightfn = new Function('p', 'return '+source.onrightfns); - - var lefts = ''; - var rights = ''; - var middles = ''; - var middlef = false; - // Test right and left sides - var ls = jn.on.left.toJavaScript('p',query.defaultTableid,query.defcols); - var rs = jn.on.right.toJavaScript('p',query.defaultTableid,query.defcols); - - if((ls.indexOf("p['"+alias+"']")>-1) && !(rs.indexOf("p['"+alias+"']")>-1)){ - if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { rights = ls; } - else { middlef = true }; - - } else if(!(ls.indexOf("p['"+alias+"']")>-1) && (rs.indexOf("p['"+alias+"']")>-1)){ - if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { lefts = ls; } - else { middlef = true }; - } else { - middlef = true; - } - -// console.log(alias, 1,lefts, rights, middlef); - - if((rs.indexOf("p['"+alias+"']")>-1) && !(ls.indexOf("p['"+alias+"']")>-1)){ - if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { rights = rs; } - else { middlef = true }; - } else if(!(rs.indexOf("p['"+alias+"']")>-1) && (ls.indexOf("p['"+alias+"']")>-1)){ - if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { lefts = rs; } - else { middlef = true }; - } else { - middlef = true; - } - -// console.log(alias, 2,lefts, rights, middlef); - - if(middlef) { -// middles = jn.on.toJavaScript('p',query.defaultTableid); -// } else { - rights = ''; - lefts = ''; - middles = jn.on.toJavaScript('p',query.defaultTableid,query.defcols); - source.optimization = 'no'; - // What to here? - } - - source.onleftfns = lefts; - source.onrightfns = rights; - source.onmiddlefns = middles || 'true'; -// console.log(source.onleftfns, '-',source.onrightfns, '-',source.onmiddlefns); - - source.onleftfn = new Function('p,params,alasql', 'return '+source.onleftfns); - source.onrightfn = new Function('p,params,alasql', 'return '+source.onrightfns); - source.onmiddlefn = new Function('p,params,alasql', 'return '+source.onmiddlefns); - -// } else if(jn.on instanceof yy.Op && jn.on.op == 'AND') { -// console.log('join on and ',jn); - - } else { -// console.log('no optimization'); - source.optimization = 'no'; -// source.onleftfn = returnTrue; -// source.onleftfns = "true"; - source.onmiddlefns = jn.on.toJavaScript('p',query.defaultTableid,query.defcols); - source.onmiddlefn = new Function('p,params,alasql','return '+jn.on.toJavaScript('p',query.defaultTableid,query.defcols)); - }; -// console.log(source.onleftfns, source.onrightfns, source.onmiddlefns); - - // Optimization function - }; - -// source.data = alasql.databases[source.databaseid].tables[source.tableid].data; -//console.log(source, jn); - // TODO SubQueries -/* if(source.joinmode == 'RIGHT') { - var prevSource = query.sources.pop(); - if(prevSource.joinmode == 'INNER') { - prevSource.joinmode = 'LEFT'; - var onleftfn = prevSource.onleftfn; - var onleftfns = prevSource.onleftfns; - var onrightfn = prevSource.onrightfn; - var onrightfns = prevSource.onrightfns; - var optimization = prevSource.optimization; - - prevSource.onleftfn = source.onrightfn; - prevSource.onleftfns = source.onrightfns; - prevSource.onrightfn = source.onleftfn; - prevSource.onrightfns = source.onleftfns; - prevSource.optimization = source.optimization; - - source.onleftfn = onleftfn; - source.onleftfns = onleftfns; - source.onrightfn = onrightfn; - source.onrightfns = onrightfns; - source.optimization = optimization; - - source.joinmode = 'INNER'; - query.sources.push(source); - query.sources.push(prevSource); - } else { - throw new Error('Do not know how to process this SQL'); - } - } else { - query.sources.push(source); - } -*/ - query.sources.push(source); - }; - }); -// console.log('sources',query.sources); -} - - - -yy.Select.prototype.compileWhere = function(query) { - if(this.where) { - if(typeof this.where == "function") { - return this.where; - } else { - s = this.where.toJavaScript('p',query.defaultTableid,query.defcols); - query.wherefns = s; -// console.log(s); - return new Function('p,params,alasql','return '+s); - } - } else return function(){return true}; -}; - - - -yy.Select.prototype.compileWhereJoins = function(query) { - return; - - // TODO Fix Where optimization - //console.log(query); - - optimizeWhereJoin(query, this.where.expression); - - //for sources compile wherefs - query.sources.forEach(function(source) { - if(source.srcwherefns) { - source.srcwherefn = new Function('p,params,alasql','return '+source.srcwherefns); - }; - if(source.wxleftfns) { - source.wxleftfn = new Function('p,params,alasql','return '+source.wxleftfns); - }; - if(source.wxrightfns) { - source.wxrightfn = new Function('p,params,alasql','return '+source.wxrightfns); - }; -// console.log(source.alias, source.wherefns) -// console.log(source); - }); -}; - -function optimizeWhereJoin (query, ast) { - if(!ast) return false; - if(!(ast instanceof yy.Op)) return; - if(ast.op != '=' && ast.op != 'AND') return; - if(ast.allsome) return; - - var s = ast.toJavaScript('p',query.defaultTableid,query.defcols); - var fsrc = []; - query.sources.forEach(function(source,idx) { - // Optimization allowed only for tables only - if(source.tableid) { - // This is a good place to remove all unnecessary optimizations - if(s.indexOf('p[\''+source.alias+'\']')>-1) fsrc.push(source); - }; - }); -//console.log(fsrc.length); -// if(fsrc.length < query.sources.length) return; -// console.log(ast); -// console.log(s); -// console.log(fsrc.length); - if(fsrc.length == 0) { -// console.log('no optimization, can remove this part of ast'); - return; - } else if (fsrc.length == 1) { - - if(!(s.match(/p\[\'.*?\'\]/g)||[]) - .every(function(s){ - return s == "p['"+fsrc[0].alias+"']"})) { - return; - // This is means, that we have column from parent query - // So we return without optimization - } - - var src = fsrc[0]; // optmiization source - src.srcwherefns = src.srcwherefns ? src.srcwherefns+'&&'+s : s; - - if((ast instanceof yy.Op) && (ast.op == '=' && !ast.allsome)) { - if(ast.left instanceof yy.Column) { - var ls = ast.left.toJavaScript('p',query.defaultTableid,query.defcols); - var rs = ast.right.toJavaScript('p',query.defaultTableid,query.defcols); - if(rs.indexOf('p[\''+fsrc[0].alias+'\']') == -1) { - fsrc[0].wxleftfns = ls; - fsrc[0].wxrightfns = rs; - } - } if(ast.right instanceof yy.Column) { - var ls = ast.left.toJavaScript('p',query.defaultTableid,query.defcols); - var rs = ast.right.toJavaScript('p',query.defaultTableid,query.defcols); - if(ls.indexOf('p[\''+fsrc[0].alias+'\']') == -1) { - fsrc[0].wxleftfns = rs; - fsrc[0].wxrightfns = ls; - } - } - } - ast.reduced = true; // To do not duplicate wherefn and srcwherefn - return; - } else { - if(ast.op = 'AND') { - optimizeWhereJoin(query,ast.left); - optimizeWhereJoin(query,ast.right); - } - } - -}; - - - - -/* -// -// Select compiler part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -/** - Compile group of statements - */ -yy.Select.prototype.compileGroup = function(query) { -// console.log(this.group); - var self = this; - var tableid = query.sources[0].alias; - var defcols = query.defcols; -// console.log(16,tableid, defcols); - -// console.log(query.sources[0].alias,query.defcols); - var allgroup = [[]]; - if(this.group) { - allgroup = decartes(this.group,query); - } -// console.log(23,allgroup); - -// console.log(allgroup); - // Prepare groups - //var allgroup = [['a'], ['a','b'], ['a', 'b', 'c']]; - - // Union all arrays to get a maximum - var allgroups = []; - allgroup.forEach(function(a){ - allgroups = arrayUnion(allgroups, a); - }); - - query.allgroups = allgroups; - -//console.log(42,294, this.group); -//console.log(allgroups); -// console.log(42,364,query.selectColumns) - -if(false) { - allgroups.forEach(function(col2){ -// console.log(42,365,colid, query.selectColumns[colid]) - if(query.selectColumns[colid]) { -// console.log(colid,'ok'); - } else { -// if(colid.indexOf()) -// console.log(colid,'bad'); - var tmpid = 'default'; - if(query.sources.length > 0) tmpid = query.sources[0].alias; -// console.log(new yy.Column({columnid:colid}).toJavaScript('p',query.sources[0].alias)); -// query.selectfns += 'r[\''+colid+'\']=p[\''+tmpid+'\'][\''+colid+'\'];'; -//console.log(374, colid); - if(Object.keys(query.selectColumns).length != 0) query.removeKeys.push(colid); - query.selectfns += 'r[\''+escapeq(colid)+'\']='+(new yy.Column({columnid:colid}).toJavaScript('p',tmpid))+';'; - } - }); -}; - - // Create negative array - - var s = ''; -// s+= query.selectfns; - - allgroup.forEach(function(agroup) { -//console.log(agroup); - - // Start of group function - s += 'var g=this.xgroups['; - - // var gcols = this.group.map(function(col){return col.columnid}); // Group fields with r - // Array with group columns from record - var rg = agroup.map(function(col2){ - var columnid = col2.split('\t')[0]; - var coljs = col2.split('\t')[1]; - // Check, if aggregator exists but GROUP BY is not exists - if(columnid == '') return '1'; // Create fictive groupping column for fictive GROUP BY -// else return "r['"+columnid+"']"; - else return coljs; - }); - if(rg.length == 0) rg = ["''"]; - - // console.log('rg',rg); - - s += rg.join('+"`"+'); - s += '];if(!g) {this.groups.push((g=this.xgroups['; - s += rg.join('+"`"+'); - s += '] = {'; -// s += ']=r'; - s += agroup.map(function(col2){ - var columnid = col2.split('\t')[0]; - var coljs = col2.split('\t')[1]; - - if(columnid == '') return ''; - else return "'"+columnid+"':"+coljs+","; - }).join(''); - - var neggroup = arrayDiff(allgroups,agroup); - -// console.log(neggroup); - - s += neggroup.map(function(col2){ - var columnid = col2.split('\t')[0]; - var coljs = col2.split('\t')[1] - return "'"+columnid+"':null,"; - }).join(''); - - var aft = ''; -// s += self.columns.map(function(col){ -//console.log('query.selectGroup',query.selectGroup); - s += query.selectGroup.map(function(col,idx){ -//console.log(idx, col.toString(), col.as); - var colexp = col.expression.toJavaScript("p",tableid,defcols); - var colas = col.nick; - // if(typeof colas == 'undefined') { - // if(col instanceof yy.Column) colas = col.columnid; - // else colas = col.toString(); - // }; - if (col instanceof yy.AggrValue) { - if(col.distinct) { - aft += ',g[\'$$_VALUES_'+colas+'\']={},g[\'$$_VALUES_'+colas+'\']['+colexp+']=true'; - }; - if (col.aggregatorid == 'SUM' - || col.aggregatorid == 'MIN' - || col.aggregatorid == 'MAX' - || col.aggregatorid == 'FIRST' - || col.aggregatorid == 'LAST' -// || col.aggregatorid == 'AVG' -// ) { return '\''+col.as+'\':r[\''+col.as+'\'],'; }//f.field.arguments[0].toJavaScript(); - ) { return '\''+colas+'\':'+colexp+','; }//f.field.arguments[0].toJavaScript(); - else if(col.aggregatorid == 'ARRAY') { - return '\''+colas+'\':['+colexp+'],'; - } else if(col.aggregatorid == 'COUNT') { - if(col.expression.columnid == '*') { - return '\''+colas+'\':1,'; - } else { -// return '\''+colas+'\':(typeof '+colexp+' != "undefined")?1:0,'; -// } else { - return '\''+colas+'\':(typeof '+colexp+' != "undefined")?1:0,'; - } - -// else if(col.aggregatorid == 'MIN') { return '\''+col.as+'\':r[\''+col.as+'\'],'; } -// else if(col.aggregatorid == 'MAX') { return '\''+col.as+'\':r[\''+col.as+'\'],'; } - } else if(col.aggregatorid == 'AVG') { - query.removeKeys.push('_SUM_'+colas); - query.removeKeys.push('_COUNT_'+colas); - return '\''+colas+'\':'+colexp+',\'_SUM_'+colas+'\':'+colexp+',\'_COUNT_'+colas+'\':1,'; - } else if(col.aggregatorid == 'AGGR') { - aft += ',g[\''+colas+'\']='+col.expression.toJavaScript('g',-1); - return ''; - } else if(col.aggregatorid == 'REDUCE') { - return '\''+colas+'\':alasql.aggr[\''+col.funcid+'\']('+colexp+'),'; - } - return ''; - } else return ''; - }).join(''); - - - - - - // columnid:r.columnid - // var srg = [];//rg.map(function(fn){ return (fn+':'+fn); }); - - // var srg = this.group.map(function(col){ - // if(col == '') return ''; - // else return col.columnid+':'+col.toJavaScript('r',''); - // }); - - // Initializw aggregators - - /* - this.columns.forEach(function(col){ - // console.log(f); - // if(f.constructor.name == 'LiteralValue') return ''; - - - if (col instanceof yy.AggrValue) { - if (col.aggregatorid == 'SUM') { srg.push("'"+col.as+'\':0'); }//f.field.arguments[0].toJavaScript(); - else if(col.aggregatorid == 'COUNT') {srg.push( "'"+col.as+'\':0'); } - else if(col.aggregatorid == 'MIN') { srg.push( "'"+col.as+'\':Infinity'); } - else if(col.aggregatorid == 'MAX') { srg.push( "'"+col.as+'\':-Infinity'); } - // else if(col.aggregatorid == 'AVG') { srg.push(col.as+':0'); } - // return 'group.'+f.name.value+'=+(+group.'+f.name.value+'||0)+'+f.field.arguments[0].toJavaScript('rec','')+';'; //f.field.arguments[0].toJavaScript(); - }; - - }); - - */ - - /*****************/ - - // s += srg.join(','); - - // var ss = []; - // gff.forEach(function(fn){ - // ss.push(fn+':rec.'+fn); - // }); - // s += ss.join(','); - // s += '});};'; - - s += '}'+aft+',g));} else {'; - // console.log(s, this.columns); - - - - // var neggroup = arrayDiff(allgroups,agroup); - - // console.log(agroup,neggroup); - - // s += neggroup.map(function(columnid){ - // return "g['"+columnid+"']=null;"; - // }).join(''); - - // console.log(s); - - - //console.log(query.selectfn); -// s += self.columns.map(function(col){ - s += query.selectGroup.map(function(col,idx){ - var colas = col.nick; - // if(typeof colas == 'undefined') { - // if(col instanceof yy.Column) colas = col.columnid; - // else colas = col.toString(); - // } - var colexp = col.expression.toJavaScript("p",tableid,defcols); - - if (col instanceof yy.AggrValue) { - if(col.distinct) { - var pre = 'if(typeof '+colexp+'!="undefined" && (!g[\'$$_VALUES_'+colas+'\']['+colexp+'])) \ - {'; - var post = 'g[\'$$_VALUES_'+colas+'\']['+colexp+']=true;}'; - } else { - var pre = '', post = ''; - } - if (col.aggregatorid == 'SUM') { return pre+'g[\''+colas+'\']+='+colexp+';'+post; }//f.field.arguments[0].toJavaScript(); - else if(col.aggregatorid == 'COUNT') { -// console.log(221,col.expression.columnid == '*'); - if(col.expression.columnid == '*') return pre+'g[\''+colas+'\']++;'+post; - else { - return pre+'if(typeof '+colexp+'!="undefined") g[\''+colas+'\']++;'+post; - } - } - else if(col.aggregatorid == 'ARRAY') { return pre+'g[\''+colas+'\'].push('+colexp+');'+post; } - else if(col.aggregatorid == 'MIN') { return pre+'g[\''+colas+'\']=Math.min(g[\''+colas+'\'],'+colexp+');'+post; } - else if(col.aggregatorid == 'MAX') { return pre+'g[\''+colas+'\']=Math.max(g[\''+colas+'\'],'+colexp+');'+post; } - else if(col.aggregatorid == 'FIRST') { return ''; } - else if(col.aggregatorid == 'LAST') { return pre+'g[\''+colas+'\']='+colexp+';'+post; } - else if(col.aggregatorid == 'AVG') { - return pre+'g[\'_SUM_'+colas+'\']+='+colexp+';' - + 'g[\'_COUNT_'+colas+'\']++;' - + 'g[\''+colas+'\']=g[\'_SUM_'+colas+'\']/g[\'_COUNT_'+colas+'\'];'+post; -// } - // else if(col.aggregatorid == 'AVG') { srg.push(colas+':0'); } - } else if(col.aggregatorid == 'AGGR') { - return pre+'g[\''+colas+'\']='+col.expression.toJavaScript('g',-1)+';'+post; - } else if(col.aggregatorid == 'REDUCE') { - return pre+'g[\''+colas+'\']=alasql.aggr.'+col.funcid+'('+colexp+',g[\''+colas+'\']);'+post; - } - return ''; - } else return ''; - }).join(''); - - - // s += selectFields.map(function(f){ - // console.log(f); - // if(f.constructor.name == 'LiteralValue') return ''; - // if (f.field instanceof SQLParser.nodes.FunctionValue - // && (f.field.name.toUpperCase() == 'SUM' || f.field.name.toUpperCase() == 'COUNT')) { - // return 'group.'+f.name.value+'=+(+group.'+f.name.value+'||0)+'+f.field.arguments[0].toJavaScript('rec','')+';'; //f.field.arguments[0].toJavaScript(); - // return 'group.'+f.name.value+'+='+f.field.arguments[0].toJavaScript('rec','')+';'; //f.field.arguments[0].toJavaScript(); - // return 'group.'+f.name.value+'+=rec.'+f.name.value+';'; //f.field.arguments[0].toJavaScript(); - // }; - // return ''; - // }).join(''); - - //s += ' group.amt += rec.emplid;'; - //s += 'group.count++;'; - s += '}'; - - }); - -// console.log('groupfn',s); - return new Function('p,params,alasql',s); - -} - - -/* -// -// Select compiler part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// yy.Select.prototype.compileSources = function(query) { -// return sources; -// }; - -function compileSelectStar (query,alias) { - // console.log(query.aliases[alias]); -// console.log(query,alias); - // console.log(query.aliases[alias].tableid); -// console.log(42,631,alias); -// console.log(query.aliases); - var s = '', sp = '', ss=[]; -// if(!alias) { -// sp += 'for(var k1 in p) var w=p[k1];for(var k2 in w){r[k2]=w[k2]};'; -// } else { - if(query.aliases[alias].tableid) { - var columns = alasql.databases[query.aliases[alias].databaseid].tables[query.aliases[alias].tableid].columns; - }; - // Check if this is a Table or other - - if(columns && columns.length > 0) { - columns.forEach(function(tcol){ - ss.push('\''+tcol.columnid+'\':p[\''+alias+'\'][\''+tcol.columnid+'\']'); - query.selectColumns[escapeq(tcol.columnid)] = true; - - // console.log('ok',s); - - var coldef = { - columnid:tcol.columnid, - dbtypeid:tcol.dbtypeid, - dbsize:tcol.dbsize, - dbprecision:tcol.dbprecision, - dbenum: tcol.dbenum - }; - query.columns.push(coldef); - query.xcolumns[coldef.columnid]=coldef; - - }); -//console.log(999,columns); - } else { - // if column not exists, then copy all - sp += 'var w=p["'+alias+'"];for(var k in w){r[k]=w[k]};'; -//console.log(777, sp); - query.dirtyColumns = true; - } -// } -//console.log({s:ss.join(','),sp:sp}); - return {s:ss.join(','),sp:sp}; -} - - -yy.Select.prototype.compileSelect1 = function(query) { - var self = this; - query.columns = []; - query.xcolumns = {}; - query.selectColumns = {}; - query.dirtyColumns = false; - var s = 'var r={'; - var sp = ''; - var ss = []; - - this.columns.forEach(function(col){ -//console.log(col); - if(col instanceof yy.Column) { - if(col.columnid == '*') { - if(col.func) { - sp += 'r=params[\''+col.param+'\'](p[\''+query.sources[0].alias+'\'],p,params,alasql);'; - } else if(col.tableid) { - //Copy all - var ret = compileSelectStar(query, col.tableid); - if(ret.s) ss = ss.concat(ret.s); - sp += ret.sp; - - } else { -// console.log('aliases', query.aliases); - for(var alias in query.aliases) { - var ret = compileSelectStar(query, alias); //query.aliases[alias].tableid); - if(ret.s) ss = ss.concat(ret.s); - sp += ret.sp; - } - // TODO Remove these lines - // In case of no information - // sp += 'for(var k1 in p){var w=p[k1];'+ - // 'for(k2 in w) {r[k2]=w[k2]}}' - } - } else { - // If field, otherwise - expression - var tbid = col.tableid; -// console.log(query.sources); - var dbid = col.databaseid || query.sources[0].databaseid || query.database.databaseid; - if(!tbid) tbid = query.defcols[col.columnid]; - if(!tbid) tbid = query.defaultTableid; - if(col.columnid != '_') { - ss.push('\''+escapeq(col.as || col.columnid)+'\':p[\''+(tbid)+'\'][\''+col.columnid+'\']'); - } else { - ss.push('\''+escapeq(col.as || col.columnid)+'\':p[\''+(tbid)+'\']'); - } - query.selectColumns[escapeq(col.as || col.columnid)] = true; - - if(query.aliases[tbid] && query.aliases[tbid].type == 'table') { - - if(!alasql.databases[dbid].tables[query.aliases[tbid].tableid]) { -// console.log(query.database,tbid,query.aliases[tbid].tableid); - throw new Error('Table \''+(tbid)+'\' does not exists in database'); - } - var columns = alasql.databases[dbid].tables[query.aliases[tbid].tableid].columns; - var xcolumns = alasql.databases[dbid].tables[query.aliases[tbid].tableid].xcolumns; -//console.log(xcolumns, col,123); -// console.log(0); - if(xcolumns && columns.length > 0) { -// console.log(1); - var tcol = xcolumns[col.columnid]; - var coldef = { - columnid:col.as || col.columnid, - dbtypeid:tcol.dbtypeid, - dbsize:tcol.dbsize, - dbpecision:tcol.dbprecision, - dbenum: tcol.dbenum, - }; -// console.log(2); - query.columns.push(coldef); - query.xcolumns[coldef.columnid]=coldef; - } else { - query.dirtyColumns = true; - } - } else { - // This is a subquery? - // throw new Error('There is now such table \''+col.tableid+'\''); - }; - - } - } else if(col instanceof yy.AggrValue) { - if(!self.group) { -// self.group=[new yy.Column({columnid:'q',as:'q' })]; - self.group = ['']; - } - if(!col.as) col.as = escapeq(col.toString()); - if (col.aggregatorid == 'SUM' || col.aggregatorid == 'MAX' || col.aggregatorid == 'MIN' || - col.aggregatorid == 'FIRST' || col.aggregatorid == 'LAST' || - col.aggregatorid == 'AVG' || col.aggregatorid == 'ARRAY' || col.aggregatorid == 'REDUCE' - ) { - ss.push("'"+escapeq(col.as)+'\':'+col.expression.toJavaScript("p",query.defaultTableid,query.defcols)) - } else if (col.aggregatorid == 'COUNT') { - ss.push("'"+escapeq(col.as)+"':1"); - // Nothing - } - query.selectColumns[col.aggregatorid+'('+escapeq(col.expression.toString())+')'] = thtd; - -// else if (col.aggregatorid == 'MAX') { -// ss.push((col.as || col.columnid)+':'+col.toJavaScript("p.",query.defaultTableid)) -// } else if (col.aggregatorid == 'MIN') { -// ss.push((col.as || col.columnid)+':'+col.toJavaScript("p.",query.defaultTableid)) -// } - } else { - ss.push('\''+escapeq(col.as || col.columnid || col.toString())+'\':'+col.toJavaScript("p",query.defaultTableid,query.defcols)); -// ss.push('\''+escapeq(col.toString())+'\':'+col.toJavaScript("p",query.defaultTableid)); - //if(col instanceof yy.Expression) { - query.selectColumns[escapeq(col.as || col.columnid || col.toString())] = true; - } - }); - s += ss.join(',')+'};'+sp; - return s; -//console.log(42,753,query.xcolumns, query.selectColumns); -} -yy.Select.prototype.compileSelect2 = function(query) { - - var s = query.selectfns ; -// console.log(s); - return new Function('p,params,alasql',s+'return r'); -}; - - -yy.Select.prototype.compileSelectGroup0 = function(query) { - var self = this; - self.columns.forEach(function(col,idx){ - if(col instanceof yy.Column && col.columnid == '*') { - } else { - var colas; - // = col.as; - if(col instanceof yy.Column) { - colas = escapeq(col.columnid); - } else { - colas = escapeq(col.toString()); - } - for(var i=0;irb) return 1; - if(ra==rb) return 0; - return -1; - } - }; - - var s = ''; - var sk = ''; - this.order.forEach(function(ord,idx){ - // console.log(ord instanceof yy.Expression); - // console.log(ord.toJavaScript('a','')); - // console.log(ord.expression instanceof yy.Column); - - // Date conversion - var dg = ''; -//console.log(ord.expression, ord.expression instanceof yy.NumValue); - if(ord.expression instanceof yy.NumValue) { - ord.expression = self.columns[ord.expression.value-1]; - }; - - if(ord.expression instanceof yy.Column) { - var columnid = ord.expression.columnid; - if(query.xcolumns[columnid]) { - var dbtypeid = query.xcolumns[columnid].dbtypeid; - if( dbtypeid == 'DATE' || dbtypeid == 'DATETIME') dg = '.valueOf()'; - // TODO Add other types mapping - } else { - if(alasql.options.valueof) dg = '.valueOf()'; // TODO Check - } - // COLLATE NOCASE - if(ord.nocase) dg += '.toUpperCase()'; - - s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; - s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; - - } else { - dg = '.valueOf()'; - // COLLATE NOCASE - if(ord.nocase) dg += '.toUpperCase()'; - s += 'if('+ord.toJavaScript('a','')+dg+(ord.direction == 'ASC'?'>':'<')+ord.toJavaScript('b','')+dg+')return 1;'; - s += 'if('+ord.toJavaScript('a','')+dg+'=='+ord.toJavaScript('b','')+dg+'){'; - } - -// if(columnid == '_') { -// s += 'if(a'+dg+(ord.direction == 'ASC'?'>':'<')+'b'+dg+')return 1;'; -// s += 'if(a'+dg+'==b'+dg+'){'; -// } else { - // TODO Add date comparision - // s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; - // s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; -// } - sk += '}'; - }); - s += 'return 0;'; - s += sk+'return -1'; - query.orderfns = s; -//console.log(s); - return new Function('a,b',s); - }; -}; - - - -/* -// -// ROLLUP(), CUBE(), GROUPING SETS() for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -/** - Calculate ROLLUP() combination - */ - -var rollup = function (a,query) { - var rr = []; - var mask = 0; - var glen = a.length; - for(var g=0;g'+gv[t]+'<',gv[t]=='',typeof gv[t]); -// console.log(gv[t].toString()); -//console.log('+++'); - res = res.map(function(r){ - query.groupColumns[escapeq(gv[t].toString())] = escapeq(gv[t].toString()); - return r.concat(escapeq(gv[t].toString()) - +'\t' - +gv[t].toJavaScript('p',query.sources[0].alias,query.defcols)) - }); -// res = res.concat(gv[t]); - }; - - // switch(gv[t].t) { - // case 'plain': - // res = res.map(function(r){return r.concat(gv[t].p)}); - - // break; - // case 'rollup': res = cartes(res,rollup(gv[t].p)); break; - // case 'cube': res = cartes(res,cube(gv[t].p)); break; - // case 'groupingsets': res = cartes(res,groupingsets(gv[t].p)); break; - // default: res = res.concat(gv[t]); - // } - }; - return res; - } else if(gv instanceof yy.FuncValue) { -// console.log(gv); - query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); - return [gv.toString()+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; - } else if(gv instanceof yy.Column) { - gv.nick = escapeq(gv.columnid); - query.groupColumns[gv.nick] = gv.nick; - return [gv.nick+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; // Is this ever happened? - // } else if(gv instanceof yy.Expression) { - // return [gv.columnid]; // Is this ever happened? - } else { - query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); - return [escapeq(gv.toString())+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; -// throw new Error('Single argument in the group without array'); - }; - - - // switch(gv.t) { - // case 'plain': return gv.p; break; - // case 'rollup': return rollup(gv.p); break; - // case 'cube': return cube(gv.p); break; - // case 'groupingsets': return groupingsets(gv.p); break; - // default: return [gv];//return decartes(gv.p); - // } - // return gv; -}; - - - - -/* -// -// Select run-time part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Select.prototype.compileDefCols = function(query, databaseid) { -// console.log('defcols'); - var defcols = {}; - if(this.from) { - this.from.forEach(function(fr){ - if(fr instanceof yy.Table) { - var alias = fr.as || fr.tableid; -// console.log(alasql.databases[fr.databaseid || databaseid]); -// console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); -//console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); -//console.log(alasql.databases); - var table = alasql.databases[fr.databaseid || databaseid].tables[fr.tableid]; -//console.log(table); - if(table.columns) { - table.columns.forEach(function(col){ - if(defcols[col.columnid]) { - defcols[col.columnid] = '-'; // Ambigous - } else { - defcols[col.columnid] = alias; - } - }); - } - } else if(fr instanceof yy.Select) { - - } else if(fr instanceof yy.ParamValue) { - - } else if(fr instanceof yy.VarValue) { - - } else if(fr instanceof yy.FuncValue) { - - } else if(fr instanceof yy.FromData) { - - } else { - throw new Error('Unknown type of FROM clause'); - }; - }); - }; - - if(this.joins) { - this.joins.forEach(function(jn){ -// console.log(jn); - if(jn.table) { - var alias = jn.table.tableid; - if(jn.as) alias = jn.as; - var alias = jn.as || jn.table.tableid; - var table = alasql.databases[jn.table.databaseid || databaseid].tables[jn.table.tableid]; -// console.log(jn.table.tableid, jn.table.databaseid); - if(table.columns) { - table.columns.forEach(function(col){ - if(defcols[col.columnid]) { - defcols[col.columnid] = '-'; // Ambigous - } else { - defcols[col.columnid] = alias; - } - }); - } - } else if(jn.select) { - - } else if(jn.param) { - - } else if(jn.func) { - - } else { - throw new Error('Unknown type of FROM clause'); - }; - }); - }; - // for(var k in defcols) { - // if(defcols[k] == '-') defcols[k] = undefined; - // } -// console.log(defcols); - return defcols; -} - -/* -// -// UNION for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// SELECT UNION statement - -yy.Union = function (params) { return yy.extend(this, params); } -yy.Union.prototype.toString = function () { - return K('UNION'); -}; - -yy.Union.prototype.compile = function (tableid) { - return null; -}; - -/* -// -// CROSS AND OUTER APPLY for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Apply = function (params) { return yy.extend(this, params); } -yy.Apply.prototype.toString = function () { - var s = K(this.applymode)+' '+K('APPLY')+' ('; - s += this.select.toString()+')'; - if(this.as) s += ' '+K('AS')+' '+L(this.as); - return s; -}; - - - -/* -// -// CROSS AND OUTER APPLY for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Over = function (params) { return yy.extend(this, params); } -yy.Over.prototype.toString = function () { - var s = K('OVER')+' ('; - if(this.partition) { - s += K('PARTITION')+' '+K('BY')+' '+this.partition.toString(); - if(this.order) s+=' '; - } - if(this.order) { - s += K('ORDER')+' '+K('BY')+' '+this.order.toString(); - } - s += ')'; - return s; -}; - - - -/* -// -// Expressions for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.ExpressionStatement = function(params) { return yy.extend(this, params); }; -yy.ExpressionStatement.prototype.toString = function() { - return this.expression.toString(); -}; - -yy.ExpressionStatement.prototype.execute = function (databaseid, params, cb) { - if(this.expression) { -// console.log(this.expression.toJavaScript('','', null)); -// console.log(this.expression.toJavaScript('','', null)); - var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('','', null)); - var res = expr(params,alasql); - if(cb) res = cb(res); - return res; - } -} - -yy.Expression = function(params) { return yy.extend(this, params); }; -yy.Expression.prototype.toString = function() { - var s = this.expression.toString(); - if(this.order) s += ' '+this.order.toString(); - if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); - return s; -}; -yy.Expression.prototype.findAggregator = function (query){ - if(this.expression.findAggregator) this.expression.findAggregator(query); -}; - -yy.Expression.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); - if(this.expression.reduced) return 'true'; - return this.expression.toJavaScript(context, tableid, defcols); -}; -yy.Expression.prototype.compile = function(context, tableid, defcols){ -// console.log('Expression',this); - if(this.reduced) return returnTrue(); - return new Function('p','return '+this.toJavaScript(context, tableid, defcols)); -}; - - -yy.JavaScript = function(params) { return yy.extend(this, params); }; -yy.JavaScript.prototype.toString = function() { - var s = '``'+this.value+'``'; - return s; -}; - -yy.JavaScript.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); - return '('+this.value+')'; -}; -yy.JavaScript.prototype.execute = function (databaseid, params, cb) { - var res = 1; - var expr = new Function("params,alasql,p",this.value); - expr(params,alasql); - if(cb) res = cb(res); - return res; -} - - -yy.Literal = function (params) { return yy.extend(this, params); } -yy.Literal.prototype.toString = function() { - var s = this.value; - if(this.value1) s = this.value1+'.'+s; -// else s = tableid+'.'+s; - return L(s); -} - - -yy.Join = function (params) { return yy.extend(this, params); } -yy.Join.prototype.toString = function() { - var s = NL()+ID(); - if(this.joinmode) s += K(this.joinmode)+' '; - s += K('JOIN')+this.table.toString(); - return s; -} - -//yy.Join.prototype.toJavaScript = function(context, tableid) { -// return 'JOIN'+this.table.toString(); -//} - - -yy.Table = function (params) { return yy.extend(this, params); } -yy.Table.prototype.toString = function() { - var s = this.tableid; -// if(this.joinmode) - if(this.databaseid) s = this.databaseid+'.'+s; - return L(s); -}; - - -yy.View = function (params) { return yy.extend(this, params); } -yy.View.prototype.toString = function() { - var s = this.viewid; -// if(this.joinmode) - if(this.databaseid) s = this.databaseid+'.'+s; - return L(s); -}; - - -yy.Op = function (params) { return yy.extend(this, params); } -yy.Op.prototype.toString = function() { - if(this.op == 'IN' || this.op == 'NOT IN') { - return this.left.toString()+" "+P(this.op)+" ("+this.right.toString()+")"; - } - if(this.allsome) { - return this.left.toString()+" "+P(this.op)+" "+this.allsome+' ('+this.right.toString()+')'; - } - if(this.op == '->') { - var s = this.left.toString()+"->"; -// console.log(this.right); - if(typeof this.right != 'string' && typeof this.right != 'number' ) s += '('; - s += this.right.toString(); - if(typeof this.right != 'string' && typeof this.right != 'number' ) s += ')'; - return s; - } - return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+' ':'')+this.right.toString(); -}; - -yy.Op.prototype.findAggregator = function (query){ -// console.log(this.toString()); - if(this.left && this.left.findAggregator) this.left.findAggregator(query); - // Do not go in > ALL - if(this.right && this.right.findAggregator && (!this.allsome)) { - this.right.findAggregator(query); - } -}; - -yy.Op.prototype.toType = function(tableid) { - if(['-','*','/','%','^'].indexOf(this.op) >-1) return 'number'; - if(this.op == '+') { - if(this.left.toType(tableid) == 'string' || this.right.toType(tableid) == 'string') return 'string'; - if(this.left.toType(tableid) == 'number' || this.right.toType(tableid) == 'number') return 'number'; - }; - if(['AND','OR','NOT','=','==','===', '!=','!==','!===','>','>=','<','<=', 'IN', 'NOT IN', 'LIKE', 'NOT LIKE'].indexOf(this.op) >-1 ) return 'boolean'; - if(this.op == 'BETWEEN' || this.op == 'NOT BETWEEN' || this.op == 'IS NULL' || this.op == 'IS NOT NULL') return 'boolean'; - if(this.allsome) return 'boolean'; - if(!this.op) return this.left.toType(); - - return 'unknown'; -}; - -yy.Op.prototype.toJavaScript = function(context,tableid,defcols) { -// console.log(this); - var op = this.op; - if(this.op == '=') op = '==='; - else if(this.op == '<>') op = '!='; - else if(this.op == 'OR') op = '||'; - - if(this.op == '->') { -// console.log(this.right, typeof this.right); - if(typeof this.right == "string") { - return this.left.toJavaScript(context,tableid, defcols)+'["'+this.right+'"]'; - } else if(typeof this.right == "number") { - return this.left.toJavaScript(context,tableid, defcols)+'['+this.right+']'; - } else if(this.right instanceof yy.FuncValue) { - ss = []; - if(!this.right.args || this.right.args.length == 0) { - } else { - var ss = this.right.args.map(function(arg){ - return arg.toJavaScript(context,tableid, defcols); - }); - } - return this.left.toJavaScript(context,tableid, defcols)+'[\''+this.right.funcid+'\']('+ - ss.join(',')+')'; - } else { - return this.left.toJavaScript(context,tableid, defcols)+'['+this.right.toJavaScript(context,tableid, defcols)+']'; - } - } - - if(this.op == 'IS') { - return '((typeof '+this.left.toJavaScript(context,tableid, defcols)+"=='undefined') == " - + '(typeof '+this.right.toJavaScript(context,tableid, defcols)+"=='undefined'))"; - } - - - if(this.op == '==') { - return 'alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+')'; - } - if(this.op == '===') { - return "(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; - } - - if(this.op == '!===') { - return "!(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; - } - - - if(this.op == '!==') { - return '(!alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+'))'; - } - - if(this.op == 'LIKE') { - var s = "("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ - ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g'))" -// console.log(s); - return s; - }; - - if(this.op == 'NOT LIKE') { - var s = "!(("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ - ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g')))" - return s; - }; - - if(this.op == 'BETWEEN') { - if(this.right instanceof yy.Op && this.right.op == 'AND') { - return '(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ - '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; - } else { - throw new Error('Wrong BETWEEN operator without AND part'); - } - }; - - if(this.op == 'NOT BETWEEN') { - if(this.right instanceof yy.Op && this.right.op == 'AND') { - return '!(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ - '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; - } else { - throw new Error('Wrong NOT BETWEEN operator without AND part'); - } - }; - - if(this.op == 'IN') { - if(this.right instanceof yy.Select ) { - var s = '('; -// s += 'this.query.queriesdata['+this.queriesidx+']'; - s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s += '.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; - return s; - } else if(this.right instanceof Array ) { -// if(this.right.length == 0) return 'false'; - var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; -//console.log(s); - return s; - } else { - var s = '('+this.right.toJavaScript(context,tableid, defcols)+'.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; - return s; -// } else { -// throw new Error('Wrong IN operator without SELECT part'); - } - }; - - - if(this.op == 'NOT IN') { - if(this.right instanceof yy.Select ) { - var s = '(' - //this.query.queriesdata['+this.queriesidx+'] - s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s +='.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; - return s; - } else if(this.right instanceof Array ) { -// if(this.right.length == 0) return 'true'; - var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - - if(this.allsome == 'ALL') { - if(this.right instanceof yy.Select ) { -// var s = 'this.query.queriesdata['+this.queriesidx+']'; - var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - - s +='.every(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else if(this.right instanceof Array ) { - var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].every(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - - if(this.allsome == 'SOME' || this.allsome == 'ANY') { - if(this.right instanceof yy.Select ) { -// var s = 'this.query.queriesdata['+this.queriesidx+']'; - var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s+='.some(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else if(this.right instanceof Array ) { - var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].some(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - -// Special case for AND optimization (if reduced) - if(this.op == 'AND') { - if(this.left.reduced) { - if(this.right.reduced) { - return 'true'; - } else { - return this.right.toJavaScript(context,tableid, defcols); - } - } else if(this.right.reduced) { - return this.left.toJavaScript(context,tableid, defcols); - } - - // Otherwise process as regular operation (see below) - op = '&&'; - - } - - if(this.op == '^') { - return 'Math.pow('+this.left.toJavaScript(context,tableid, defcols) - +','+this.right.toJavaScript(context,tableid, defcols)+')'; - }; - - - // Change names -// console.log(this); - return '('+this.left.toJavaScript(context,tableid, defcols)+op+this.right.toJavaScript(context,tableid, defcols)+')'; -}; - - - -yy.VarValue = function (params) { return yy.extend(this, params); } -yy.VarValue.prototype.toString = function() { - return '@'+L(this.variable); -}; - -yy.VarValue.prototype.toType = function() { - return 'unknown'; -}; - -yy.VarValue.prototype.toJavaScript = function() { - return "alasql.vars['"+this.variable+"']"; -} - - -yy.NumValue = function (params) { return yy.extend(this, params); } -yy.NumValue.prototype.toString = function() { - return N(this.value.toString()); -}; - -yy.NumValue.prototype.toType = function() { - return 'number'; -}; - -yy.NumValue.prototype.toJavaScript = function() { - return ""+this.value; -} - - - - -yy.StringValue = function (params) { return yy.extend(this, params); } -yy.StringValue.prototype.toString = function() { - return "'"+S(this.value.toString())+"'"; -} - -yy.StringValue.prototype.toType = function() { - return 'string'; -} - -yy.StringValue.prototype.toJavaScript = function() { -// console.log("'"+doubleqq(this.value)+"'"); -// return "'"+doubleqq(this.value)+"'"; - return "'"+escapeq(this.value)+"'"; - -} - - -yy.LogicValue = function (params) { return yy.extend(this, params); } -yy.LogicValue.prototype.toString = function() { - return this.value?'TRUE':'FALSE'; -} - -yy.LogicValue.prototype.toType = function() { - return 'boolean'; -} - -yy.LogicValue.prototype.toJavaScript = function() { - return this.value?'true':'false'; -} - -yy.NullValue = function (params) { return yy.extend(this, params); } -yy.NullValue.prototype.toString = function() { - return 'NULL'; -} -yy.NullValue.prototype.toJavaScript = function() { - return 'undefined'; -} - -yy.ParamValue = function (params) { return yy.extend(this, params); } -yy.ParamValue.prototype.toString = function() { - return '$'+this.param; -} -yy.ParamValue.prototype.toJavaScript = function() { - if(typeof this.param == "string") return "params[\'"+this.param+"\']"; - else return "params["+this.param+"]"; -} - - - -yy.UniOp = function (params) { return yy.extend(this, params); } -yy.UniOp.prototype.toString = function() { - if(this.op == '-') return this.op+this.right.toString(); - if(this.op == '+') return this.op+this.right.toString(); - if(this.op == 'NOT') return this.op+'('+this.right.toString()+')'; - else if(this.op == null) return '('+this.right.toString()+')'; -}; - -yy.UniOp.prototype.findAggregator = function (query){ - if(this.right.findAggregator) this.right.findAggregator(query); -}; - -yy.UniOp.prototype.toType = function(tableid) { - if(this.op == '-') return 'number'; - if(this.op == '+') return 'number'; - if(this.op == 'NOT') return 'boolean'; -}; - -yy.UniOp.prototype.toJavaScript = function(context, tableid, defcols) { - if(this.op == '-') return "(-("+this.right.toJavaScript(context, tableid, defcols)+"))"; - if(this.op == '+') return "("+this.right.toJavaScript(context, tableid, defcols)+")"; - if(this.op == 'NOT') return '!('+this.right.toJavaScript(context, tableid, defcols)+')'; - else if(this.op == null) return '('+this.right.toJavaScript(context, tableid, defcols)+')'; -}; - - - -// yy.Star = function (params) { return yy.extend(this, params); } -// yy.Star.prototype.toString = function() { -// var s = this.fieldid; -// if(this.tableid) { -// s = this.tableid+'.'+s; -// if(this.databaseid) { -// s = this.databaseid+'.'+s; -// } -// } -// if(this.alias) s += ' AS '+this.alias; -// return s; -// } - -yy.Column = function(params) { return yy.extend(this, params); } -yy.Column.prototype.toString = function() { - var s; - if(this.columnid == +this.columnid) { - s = '['+this.columnid+']'; - } else { - s = this.columnid; - } - if(this.tableid) { - if(+this.columnid == this.columnid) { - s = this.tableid+s; - } else { - s = this.tableid+'.'+s; - } - if(this.databaseid) { - s = this.databaseid+'.'+s; - } - } -// if(this.alias) s += ' AS '+this.alias; - return s; -}; - -yy.Column.prototype.toJavaScript = function(context, tableid, defcols) { -// var s = this.value; -// var s = this.columnid; -// if(this.tableid) { -// s = this.tableid+'.'+s; -// // if(this.databaseid) { -// // s = this.databaseid+'.'+s; -// // } -// } else { -// s = tableid+'.'+s; -// } -//console.log('yy.Column',this, tableid); -// console.log(392,this.columnid); - var s = ''; - if(!this.tableid && tableid == '' && !defcols) { - if(this.columnid != '_') { - s = context+'[\''+this.columnid+'\']'; - } else { - if(context == 'g') { - s = 'g[\'_\']'; - } else { - s = context; - } - } - } else { - if(context == 'g') { - // if(this.columnid == '_') { - // } else { - s = 'g[\''+this.nick+'\']'; - // } - } else if(this.tableid) { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid) + '\'][\''+this.columnid+'\']'; - } else { - if(context == 'g') { - s = 'g[\'_\']'; - } else { - s = context+'[\''+(this.tableid) + '\']'; - } - } - } else if(defcols) { - var tbid = defcols[this.columnid]; - if(tbid == '-') { - throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables'); - } else if(tbid) { - if(this.columnid != '_') { - s = context+'[\''+(tbid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(tbid) + '\']'; - }; - } else { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(this.tableid || tableid) + '\']'; - }; - } - } else if(tableid == -1) { -// if(this.columnid != '') { - s = context+'[\''+this.columnid+'\']'; -// } else { -// s = context; -// } - } else { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(this.tableid || tableid) + '\']'; - } - } - } -// console.log(context,s); -// console.trace(new Error()); - return s; -} - - - - -yy.AggrValue = function(params){ return yy.extend(this, params); } -yy.AggrValue.prototype.toString = function() { - var s = ''; - if(this.aggregatorid == 'REDUCE') s += L(this.funcid)+'('; - else s += this.aggregatorid+'('; - if(this.distinct) s+= K('DISTINCT')+' '; - if(this.expression) s += this.expression.toString(); - s += ')'; - if(this.over) s += ' '+this.over.toString(); -// console.log(this.over); -// if(this.alias) s += ' AS '+this.alias; - return s; -}; -yy.AggrValue.prototype.findAggregator = function (query){ -// console.log('aggregator found',this.toString()); - -// var colas = this.as || this.toString(); - - var colas = escapeq(this.toString())+':'+query.selectGroup.length; -// console.log('findAgg',this); - - -/* var found = false; - for(var i=0;i-1) return 'number'; - if(['ARRAY'].indexOf(this.aggregatorid)>-1) return 'array'; - if(['FIRST','LAST' ].indexOf(this.aggregatorid)>-1) return this.expression.toType(); -} -yy.AggrValue.prototype.toJavaScript = function(context, tableid, defcols) { -// var s = 'alasql.functions.'+this.funcid+'('; -// if(this.expression) s += this.expression.toJavaScript(context, tableid); -// s += ')'; -// if(this.alias) s += ' AS '+this.alias; -// return s; -// var s = ''; -//if(this.as) console.log(499,this.as); -// var colas = this.as; - var colas = this.nick; - if(typeof colas == 'undefined') colas = this.toString(); - return 'g[\''+colas+'\']'; -} - - -yy.OrderExpression = function(params){ return yy.extend(this, params); } -yy.OrderExpression.prototype.toString = function() { - var s = this.expression.toString(); - if(this.order) s += ' '+this.order.toString(); - if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); - return s; -} - -yy.GroupExpression = function(params){ return yy.extend(this, params); } -yy.GroupExpression.prototype.toString = function() { - return this.type+'('+this.group.toString()+')'; -} - - -yy.ColumnDef = function (params) { return yy.extend(this, params); } -yy.ColumnDef.prototype.toString = function() { - var s = this.columnid; - if(this.dbtypeid) s += ' '+this.dbtypeid; - if(this.dbsize) { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+this.dbprecision; - s += ')'; - }; - if(this.primarykey) s += ' PRIMARY KEY'; - if(this.notnull) s += ' NOT NULL'; - return s; -} - - -// Alasql Linq library - -yy.FromData = function(params) { return yy.extend(this, params); }; -yy.FromData.prototype.toString = function() { - if(this.data) return K('DATA')+'('+((Math.random()*10e15)|0)+')'; - else return '?'; -}; -yy.FromData.prototype.toJavaScript = function(){ -// console.log('yy.FromData.prototype.toJavaScript'); -}; - -yy.Select.prototype.exec = function(params,cb) { - - if(this.preparams) params = this.preparams.concat(params); -// console.log(15,this.preparams); - - var databaseid = alasql.useid; - db = alasql.databases[databaseid]; - var sql = this.toString(); - var hh = hash(sql); -// console.log(sql); - - var statement = this.compile(databaseid); - if(!statement) return; - statement.sql = sql; - statement.dbversion = db.dbversion; - - // Secure sqlCache size - if (db.sqlCacheSize > alasql.MAXSQLCACHESIZE) { - db.resetSqlCache(); - } - db.sqlCacheSize++; - db.sqlCache[hh] = statement; - var res = alasql.res = statement(params, cb); - return res; -}; - -yy.Select.prototype.Select = function(){ - var self = this; - var agrs = []; - if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - self.columns = []; - - args.forEach(function(arg){ - if(typeof arg == "string") { - self.columns.push(new yy.Column({columnid: arg})); - } else if(typeof arg == "function") { - var pari = 0; - if(self.preparams) { - pari = self.preparams.length; - } else { - self.preparams = []; - } - self.preparams.push(arg); - self.columns.push(new yy.Column({columnid: "*", func:arg, param:pari})); - } else { - // Unknown type - } - }); - -// console.log(self instanceof yy.Select); - return self; -}; - -yy.Select.prototype.From = function(tableid){ - var self = this; - if(!self.from) self.from = []; - if(tableid instanceof Array) { - var pari = 0; - if(self.preparams) { - pari = self.preparams.length; - } else { - self.preparams = []; - } - self.preparams.push(tableid); - self.from.push(new yy.ParamValue({param:pari})); - } else if(typeof tableid =="string") { - self.from.push(new yy.Table({tableid:tableid})); - } else { - throw new Error('Unknown arguments in From() function') - } - return self; -} - -yy.Select.prototype.OrderBy = function(){ - var self = this; - var agrs = []; - - self.order = []; - - if(arguments.length == 0) { -// self.order.push(new yy.OrderExpression({expression: new yy.Column({columnid:"_"}), direction:'ASC'})); - args = ["_"]; - } else if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - if(args.length > 0) { - args.forEach(function(arg){ - var expr = new yy.Column({columnid:arg}); - if(typeof arg == 'function'){ - expr = arg; - } - self.order.push(new yy.OrderExpression({expression: expr, direction:'ASC'})); - }); - } - return self; -} - -yy.Select.prototype.Top = function(topnum){ - var self = this; - self.top = new yy.NumValue({value:topnum}); - return self; -}; - -yy.Select.prototype.GroupBy = function(){ - var self = this; - var agrs = []; - - if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - self.group = []; - - args.forEach(function(arg){ - var expr = new yy.Column({columnid:arg}); - self.group.push(expr); - }); - - return self; -}; - -yy.Select.prototype.Where = function(expr){ - var self = this; - if(typeof expr == 'function' ) { - self.where = expr; - } - return self; -}; - - - -/* -// -// Functions for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.FuncValue = function(params){ return yy.extend(this, params); } -yy.FuncValue.prototype.toString = function() { - var s = ''; - - if(alasql.fn[this.funcid]) s += this.funcid; - else if(alasql.aggr[this.funcid]) s += this.funcid; - else if(alasql.stdlib[this.funcid.toUpperCase()] || alasql.stdfn[this.funcid.toUpperCase()]) s += this.funcid.toUpperCase(); - - s += '('; - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toString(); - }).join(','); - }; - s += ')'; - if(this.as) s += ' AS '+this.as.toString(); -// if(this.alias) s += ' AS '+this.alias; - return s; -} - -yy.FuncValue.prototype.findAggregator = function(query) { - if(this.args && this.args.length > 0) { - this.args.forEach(function(arg){ - if(arg.findAggregator) arg.findAggregator(query); - }); - } -}; - -yy.FuncValue.prototype.toJavaScript = function(context, tableid, defcols) { - var s = ''; - var funcid = this.funcid; - // IF this is standard compile functions - if(alasql.fn[funcid]) { - // This is user-defined run-time function - // TODO arguments!!! -// var s = ''; - if(this.newid) s+= 'new '; - s += 'alasql.fn.'+this.funcid+'('; -// if(this.args) s += this.args.toJavaScript(context, tableid); - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toJavaScript(context, tableid, defcols); - }).join(','); - }; - s += ')'; - } else if(alasql.stdlib[funcid.toUpperCase()]) { - if(this.args && this.args.length > 0) { - s += alasql.stdlib[funcid.toUpperCase()].apply(this, this.args.map(function(arg) {return arg.toJavaScript(context, tableid)})); - } else { - s += alasql.stdlib[funcid.toUpperCase()](); - } - } else if(alasql.stdfn[funcid.toUpperCase()]) { - if(this.newid) s+= 'new '; - s += 'alasql.stdfn.'+this.funcid.toUpperCase()+'('; -// if(this.args) s += this.args.toJavaScript(context, tableid); - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toJavaScript(context, tableid, defcols); - }).join(','); - }; - s += ')'; - } else { - // Aggregator - } -//console.log('userfn:',s,this); - -// if(this.alias) s += ' AS '+this.alias; - return s; -} - -// // Functions compiler -// nodes.FunctionValue.prototype.toJavaScript = function (context, tableid) { -// var s = ''; -// s += fns[this.name.toUpperCase()].apply(null,this.arguments.map(function(arg){ -// if(arg) return arg.toJavaScript(context, tableid); -// else return ''; -// })); -// return s; -// }; - -// -// SQL FUNCTIONS COMPILERS -// Based on SQLite functions - -// IMPORTANT: These are compiled functions - -//alasql.fn = {}; // Keep for compatibility -//alasql.userlib = alasql.fn; - -var stdlib = alasql.stdlib = {} -var stdfn = alasql.stdfn = {} - -stdlib.ABS = function(a) {return 'Math.abs('+a+')'}; -stdlib.CLONEDEEP = function(a) {return 'alasql.utils.cloneDeep('+a+')'}; -stdlib.IIF = function(a,b,c) { - if(arguments.length == 3) { - return '(('+a+')?('+b+'):('+c+'))'; - } else { - throw new Error('Number of arguments of IFF is not equals to 3'); - }; -}; -stdlib.IFNULL = function(a,b) {return '('+a+'||'+b+')'}; -stdlib.INSTR = function(s,p) {return '(('+s+').indexOf('+p+')+1)'}; - -stdlib.LEN = stdlib.LENGTH = function(s) {return '('+s+'+"").length';}; -//stdlib.LENGTH = function(s) {return '('+s+').length'}; - -stdlib.LOWER = stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} -//stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} - - -// LTRIM - -stdlib.GREATEST = function(){ - return 'Math.max('+Array.prototype.join.call(arguments, ',')+')' -}; - -stdlib.LEAST = function(){ - return 'Math.min('+Array.prototype.join.call(arguments, ',')+')' -}; - -stdlib.MID = function(a,b,c){ - if(arguments.length == 2) return '('+a+').substr('+b+'-1)'; - else if(arguments.length == 3) return '('+a+').substr('+b+'-1,'+c+')'; -}; - -stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?null:'+a+')'}; - -stdlib.POWER = function(a,b) {return 'Math.pow('+a+','+b+')'}; - -stdlib.RANDOM = function(r) { - if(arguments.length == 0) { - return 'Math.random()'; - } else { - return '(Math.random()*('+r+')|0)'; - } -} -stdlib.ROUND = function(s,d) { - if(arguments.length == 2) { - return 'Math.round('+s+'*Math.pow(10,'+d+'))/Math.pow(10,'+d+')'; - } else { - return 'Math.round('+s+')'; - } -} -stdlib.SQRT = function(s) {return 'Math.sqrt('+s+')'}; - -stdlib.TRIM = function(s) {return s+'.trim()'}; - -stdlib.UPPER = stdlib.UCASE = function(s) {return '('+s+').toUpperCase()';} -//stdlib.UCASE = function(s) {return '('+s+').toUpperCase()';} -//REPLACE -// RTRIM -// SUBSTR -// TRIM -//REPLACE -// RTRIM -// SUBSTR -// TRIM - - -// Aggregator for joining strings -alasql.aggr.GROUP_CONCAT = function(v,s){ - if(typeof s == "undefined") return v; else return s+','+v; -}; - - - - -// -// -// SQL and JS DateTime functions -// -// - - - -/* -// -// CASE for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.CaseValue = function(params) { return yy.extend(this, params); }; -yy.CaseValue.prototype.toString = function() { - var s = 'CASE '; - if(this.expression) s += this.expression.toString(); - if(this.whens) { - s += this.whens.map(function(w) { return ' WHEN '+ - w.when.toString() + ' THEN '+w.then.toString()}).join(); - } - s += ' END'; - return s; -}; - -yy.CaseValue.prototype.findAggregator = function (query){ -// console.log(this.toString()); - if(this.expression && this.expression.findAggregator) this.expression.findAggregator(query); - if(this.whens && this.whens.length > 0) { - this.whens.forEach(function(w) { - if(w.when.findAggregator) w.when.findAggregator(query); - if(w.then.findAggregator) w.then.findAggregator(query); - }); - } -}; - -yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { - - var s = '(function('+context+',params,alasql){var r;'; - if(this.expression) { -// this.expression.toJavaScript(context, tableid) - s += 'v='+this.expression.toJavaScript(context, tableid, defcols)+';'; - s += (this.whens||[]).map(function(w) { return ' if(v=='+w.when.toJavaScript(context,tableid, defcols) - +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); - if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid, defcols)+'}'; - } else { - s += (this.whens||[]).map(function(w) { return ' if('+w.when.toJavaScript(context,tableid, defcols) - +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); - if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid,defcols)+'}'; - } - s += 'return r;})('+context+',params,alasql)'; - - return s; -}; - -/* -// -// JSON for Alasql.js -// Date: 19.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Json = function (params) { return yy.extend(this, params); } -yy.Json.prototype.toString = function() { - var s = '@'; - s += JSONtoString(this.value); - s += ''; - return s; -}; - -var JSONtoString = alasql.utils.JSONtoString = function (obj) { - var s = ''; - if(typeof obj == "string") s = '"'+obj+'"'; - else if(typeof obj == "number") s = obj; - else if(typeof obj == "boolean") s = obj; - else if(typeof obj == "object") { - if(obj instanceof Array) { - s += '['+obj.map(function(b){ - return JSONtoString(b); - }).join(',')+']'; - } else if(!obj.toJavaScript || obj instanceof yy.Json) { - // to prevent recursion - s = '{'; - var ss = []; - for(var k in obj) { - var s1 = ''; - if(typeof k == "string") s1 += '"'+k+'"'; - else if(typeof k == "number") s1 += k; - else if(typeof k == "boolean") s1 += k; - else { - throw new Error('THis is not ES6... no expressions on left side yet'); - } - s1 += ':'+JSONtoString(obj[k]); - ss.push(s1); - }; - s += ss.join(',')+'}'; - } else if(obj.toString) { - s = obj.toString(); - } else { - throw new Error('1Can not show JSON object '+JSON.stringify(obj)); - } - } else { - throw new Error('2Can not show JSON object '+JSON.stringify(obj)); - } - - return s; -} - - - -function JSONtoJavaScript(obj, context, tableid, defcols) { - var s = ''; - if(typeof obj == "string") s = '"'+obj+'"'; - else if(typeof obj == "number") s = '('+obj+')'; - else if(typeof obj == "boolean") s = obj; - else if(typeof obj == "object") { - if(obj instanceof Array) { - s += '['+obj.map(function(b){ - return JSONtoJavaScript(b, context, tableid, defcols); - }).join(',')+']'; - } else if(!obj.toJavaScript || obj instanceof yy.Json) { - // to prevent recursion - s = '{'; - var ss = []; - for(var k in obj) { - var s1 = ''; - if(typeof k == "string") s1 += '"'+k+'"'; - else if(typeof k == "number") s1 += k; - else if(typeof k == "boolean") s1 += k; - else { - throw new Error('THis is not ES6... no expressions on left side yet'); - } - s1 += ':'+JSONtoJavaScript(obj[k], context, tableid, defcols); - ss.push(s1); - }; - s += ss.join(',')+'}'; - } else if(obj.toJavaScript) { - s = obj.toJavaScript(context, tableid, defcols); - } else { - throw new Error('1Can not parse JSON object '+JSON.stringify(obj)); - } - } else { - throw new Error('2Can not parse JSON object '+JSON.stringify(obj)); - } - - return s; -} - -yy.Json.prototype.toJavaScript = function(context, tableid, defcols) { - // TODO reod - return JSONtoJavaScript(this.value,context, tableid, defcols); -} - - - - -/* -// -// CAST and CONVERT functions -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Convert = function(params) { return yy.extend(this, params); }; -yy.Convert.prototype.toString = function() { - var s = 'CONVERT('; - s += this.dbtypeid; - if(typeof this.dbsize != 'undefined') { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+dbprecision; - s += ')'; - } - s += ','+this.expression.toString(); - if(this.style) s += ','+this.style; - s += ')'; - return s; -}; -yy.Convert.prototype.toJavaScript = function(context, tableid, defcols) { - -// if(this.style) { - return 'alasql.stdfn.CONVERT('+this.expression.toJavaScript(context, tableid, defcols) - +',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+',style:'+ - this.style+'})'; -// } -/* - if(this.dbtypeid == 'INT') { - return '(('+this.expression.toJavaScript(context, tableid, defcols)+')|0)'; - } if(this.dbtypeid == 'STRING') { - return '(""+'+this.expression.toJavaScript(context, tableid, defcols)+')'; - } if(this.dbtypeid == 'NUMBER') { - return '(+('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } if(this.dbtypeid == 'DATE') { - if(alasql.options.datetimeformat == 'javascript') { - return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } else if(alasql.options.datetimeformat == 'sql') { - return this.expression.toJavaScript(context, tableid, defcols); - } - } if(this.dbtypeid == 'DATETIME') { - if(alasql.options.datetimeformat == 'javascript') { - return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } else if(alasql.options.datetimeformat == 'sql') { - return this.expression.toJavaScript(context, tableid, defcols); - } - } else { - - }; -*/ - throw new Error('There is not such type conversion for '+this.toString()); -}; - -/** - Convert one type to another - */ -alasql.stdfn.CONVERT = function(value, args) { - var val = value; -// console.log(args); - if(args.style) { - // TODO 9,109, 20,120,21,121,126,130,131 conversions - var t; - if(/\d{8}/.test(val)) t = new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2)); - else t = new Date(val); - - if(args.style == 1) { // mm/dd/yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+("0"+t.getYear()).substr(-2); - } else if(args.style == 2) { // yy.mm.dd - val = ("0"+t.getYear()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); - } else if(args.style == 3) { // dd/mm/yy - val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getYear()).substr(-2); - } else if(args.style == 4) { // dd.mm.yy - val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getYear()).substr(-2); - } else if(args.style == 5) { // dd-mm-yy - val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getYear()).substr(-2); - } else if(args.style == 6) { // dd mon yy - val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+("0"+t.getYear()).substr(-2); - } else if(args.style == 7) { // Mon dd,yy - val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+("0"+t.getYear()).substr(-2); - } else if(args.style == 8) { // hh:mm:ss - val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); - - } else if(args.style == 10) { // mm-dd-yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+("0"+t.getYear()).substr(-2); - } else if(args.style == 11) { // yy/mm/dd - val = ("0"+t.getYear()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); - } else if(args.style == 12) { // yymmdd - val = ("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); - - - } else if(args.style == 101) { // mm/dd/yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+t.getFullYear(); - } else if(args.style == 102) { // yy.mm.dd - val = t.getFullYear()+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); - } else if(args.style == 103) { // dd/mm/yy - val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+t.getFullYear(); - } else if(args.style == 104) { // dd.mm.yy - val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+t.getFullYear(); - } else if(args.style == 105) { // dd-mm-yy - val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+t.getFullYear(); - } else if(args.style == 106) { // dd mon yy - val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+t.getFullYear(); - } else if(args.style == 107) { // Mon dd,yy - val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+t.getFullYear(); - } else if(args.style == 108) { // hh:mm:ss - val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); - - } else if(args.style == 110) { // mm-dd-yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+t.getFullYear(); - } else if(args.style == 111) { // yy/mm/dd - val = t.getFullYear()+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); - } else if(args.style == 112) { // yymmdd - val = t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); - } else { - throw new Error('The CONVERT style '+args.style+' is not realized yet.'); - } - }; - - if(args.dbtypeid == 'Date') { - return new Date(val); - } else if(args.dbtypeid.toUpperCase() == 'DATE') { - var d = new Date(val); - var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); - return s; - } else if(args.dbtypeid == 'DATETIME') { - var d = new Date(val); - var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); - s += " "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2); - s += '.'+("00"+d.getMilliseconds()).substr(-3) - return s; - } else if(args.dbtypeid.toUpperCase() == 'STRING') { - return ""+val; - } else if(args.dbtypeid.toUpperCase() == 'NUMBER' || args.dbtypeid == 'FLOAT') { - return +val; - } else if(args.dbtypeid.toUpperCase() == 'MONEY') { - var m = +val; - return (m|0)+((m*100)%100)/100; - } else if(args.dbtypeid.toUpperCase() == 'BOOLEAN') { - return !!val; - } else if(args.dbtypeid.toUpperCase() == 'INT') { - return val|0; - } else if(args.dbtypeid.toUpperCase() == 'VARCHAR' || args.dbtypeid == 'NVARCHAR') { - if(args.dbsize) return (""+val).substr(0,args.dbsize); - else return ""+val; - } else if(args.dbtypeid.toUpperCase() == 'CHAR' || args.dbtypeid == 'NCHAR') { - return (val+(new Array(args.dbsize+1).join(" "))).substr(0,args.dbsize); - //else return ""+val.substr(0,1); - } -}; - - - -/* -// -// CREATE TABLE for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.ColumnDef = function (params) { return yy.extend(this, params); } -yy.ColumnDef.prototype.toString = function() { - var s = this.columnid; - if(this.dbtypeid) s += ' '+this.dbtypeid; - if(this.dbsize) { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+this.dbprecision; - s += ')'; - }; - if(this.primarykey) s += ' PRIMARY KEY'; - if(this.notnull) s += ' NOT NULL'; - return s; -} - -yy.CreateTable = function (params) { return yy.extend(this, params); } -yy.CreateTable.prototype.toString = function() { - var s = K('CREATE'); - if(this.temporary) s+=' '+K('TEMPORARY'); - if(this.view) s += ' '+K('VIEW'); - else s += ' '+K('TABLE'); - if(this.ifnotexists) s += ' '+K('IF')+' '+K('NOT')+' '+K('EXISTS'); - s += ' '+this.table.toString(); - if(this.viewcolumns) { - s += '('+this.viewcolumns.map(function(vcol){ - return vcol.toString(); - }).join(',')+')'; - } - if(this.as) s += ' '+K('AS')+' '+L(this.as); - else { - var ss = this.columns.map(function(col){ - return col.toString(); - }); - s += ' ('+NL()+ID()+ss.join(','+NL()+ID())+')'; - }; - if(this.view && this.select) { - s += ' AS '+this.select.toString(); - } - return s; -} - -// CREATE TABLE -//yy.CreateTable.prototype.compile = returnUndefined; -yy.CreateTable.prototype.execute = function (databaseid, params, cb) { -// var self = this; - var db = alasql.databases[this.table.databaseid || databaseid]; - - var tableid = this.table.tableid; - if(!tableid) { - throw new Error('Table name is not defined'); - } - -// var ifnotexists = this.ifnotexists; - var columns = this.columns; - // if(false) { - // if(!columns) { - // throw new Error('Columns are not defined'); - // } - // } - var constraints = this.constraints||[]; -// console.log(this); - - // IF NOT EXISTS - if(this.ifnotexists && db.tables[tableid]) return 0; - - if(db.tables[tableid]) { - throw new Error('Can not create table \''+tableid - +'\', because it already exists in the database \''+db.databaseid+'\''); - } - - var table = db.tables[tableid] = new alasql.Table(); // TODO Can use special object? - - var ss = []; - if(this.columns) { - this.columns.forEach(function(col) { - var dbtypeid = col.dbtypeid; - if(!alasql.fn[dbtypeid]) dbtypeid = dbtypeid.toUpperCase(); - var newcol = { - columnid: col.columnid, - dbtypeid: dbtypeid // TODO: Add types table - }; - - if(col.default) { - ss.push('\''+col.columnid+'\':'+col.default.toJavaScript()); - } - - table.columns.push(newcol); - table.xcolumns[newcol.columnid] = newcol; - - // Check for primary key - if(col.primarykey) { - var pk = table.pk = {}; - pk.columns = [col.columnid]; - pk.onrightfns = 'r[\''+col.columnid+'\']'; - pk.onrightfn = new Function("r",'return '+pk.onrightfns); - pk.hh = hash(pk.onrightfns); - table.indices[pk.hh] = {}; - }; - - }); - }; - table.defaultfns = ss.join(','); - - -// if(constraints) { - constraints.forEach(function(con) { - //console.log(con, con.columns); - if(con.type == 'PRIMARY KEY') { - if(table.pk) { - throw new Error('Primary key already exists'); - } - var pk = table.pk = {}; - pk.columns = con.columns; - pk.onrightfns = pk.columns.map(function(columnid){ - return 'r[\''+columnid+'\']' - }).join("+'`'+"); - pk.onrightfn = new Function("r",'return '+pk.onrightfns); - pk.hh = hash(pk.onrightfns); - table.indices[pk.hh] = {}; - } - }); - - if(this.view && this.viewcolumns) { - var self = this; - this.viewcolumns.forEach(function(vcol,idx){ - self.select.columns[idx].as = vcol.columnid; - }); - } - -// console.log(100,db.engineid); - if(db.engineid) { -// console.log(101,db.engineid); - return alasql.engines[db.engineid].createTable(this.table.databaseid || databaseid, tableid, this.ifnotexists, cb); -// console.log('createtable',res1); -// return res1; - } - -// } -// if(table.pk) { - table.insert = function(r) { - if(this.pk) { - var pk = this.pk; - var addr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][addr] != 'undefined') { - throw new Error('Cannot insert record, because it already exists in primary key'); - } else { - table.data.push(r); - this.indices[pk.hh][addr]=r; - }; - } else { - table.data.push(r); - } - }; - - table.delete = function(i) { - if(this.pk) { - var r = this.data[i]; - var pk = this.pk; - var addr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][addr] == 'undefined') { - throw new Error('Something wrong with index on table'); - } else { - this.indices[pk.hh][addr]=undefined; - }; - } - }; - - table.deleteall = function() { - this.data.length = 0; - if(this.pk) { -// var r = this.data[i]; - this.indices[this.pk.hh] = {}; - } - }; - - table.update = function(assignfn, i, params) { - if(this.pk) { - var r = this.data[i]; - var pk = this.pk; - var addr = pk.onrightfn(r,params); - if(typeof this.indices[pk.hh][addr] == 'undefined') { - throw new Error('Something wrong with index on table'); - } else { - this.indices[pk.hh][addr]=undefined; - assignfn(r,params,alasql); - var newaddr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][newaddr] != 'undefined') { - throw new Error('Record already exists'); - } else { - this.indices[pk.hh][newaddr] = r; - } - } - - } else { - assignfn(this.data[i],params,alasql); - }; - - }; - - if(this.view && this.select) { - table.view = true; -// console.log(this.select.toString()); -// console.log('this.table.databaseid',this.table.databaseid); -// console.log(this.select.compile(this.table.databaseid||databaseid)); - table.select = this.select.compile(this.table.databaseid||databaseid); - } -// console.log(databaseid); -// console.log(db.databaseid,db.tables); -// console.log(table); - if(cb) cb(1); - - return 1; -}; - - - - -// -// Date functions -// -// (c) 2014, Andrey Gershun -// - -/** Standard JavaScript data types */ - -alasql.fn.Date = Object; -alasql.fn.Date = Date; -alasql.fn.Number = Number; -alasql.fn.String = String; -alasql.fn.Boolean = Boolean; - -/** Extend Object with properties */ -stdfn.EXTEND = alasql.utils.extend; - - -stdfn.CHAR = String.fromCharCode.bind(String); -stdfn.ASCII = function(a) { - return a.charCodeAt(0); -}; - -/** - Return first non-null argument - See https://msdn.microsoft.com/en-us/library/ms190349.aspx -*/ -stdfn.COALESCE = function() { - for(var i=0;i 0) { - for(var i=0, ilen=table.data.length; i 0) { - for(var i=0, ilen=table.data.length; i=0) { - q += "+"+values[idx].toJavaScript(); - } else if (alasql.fn[table.xcolumns[col.columnid].dbtypeid]) { - q += "(new "+table.xcolumns[col.columnid].dbtypeid+"("; - q += values[idx].toJavaScript(); - q += "))"; - } else { - q += values[idx].toJavaScript(); - }; - } else { - q += values[idx].toJavaScript(); - } - ss.push(q); - - }); - } else { -// var table = db.tables[tableid]; -// console.log('table1', db, self); -//console.log(111, table.columns); -//console.log(74,table); - if((values instanceof Array) && table.columns && table.columns.length > 0) { - table.columns.forEach(function(col, idx){ - - var q = '\''+col.columnid +'\':'; -// var val = values[idx].toJavaScript(); - - if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid) >=0) { - q += "+"+values[idx].toJavaScript(); - } else if (alasql.fn[col.dbtypeid]) { - q += "(new "+col.dbtypeid+"("; - q += values[idx].toJavaScript(); - q += "))"; - } else { - q += values[idx].toJavaScript(); - } - - // if(table.xcolumns && table.xcolumns[col.columnid] && - // (table.xcolumns[col.columnid].dbtypeid == "DATE" || - // table.xcolumns[col.columnid].dbtypeid == "DATETIME" - // )) { - // val = "(new Date("+val+"))"; - // } - // || table.xcolumns[col.columnid].dbtypeid == "FLOAT" - // || table.xcolumns[col.columnid].dbtypeid == "NUMBER" - // || table.xcolumns[col.columnid].dbtypeid == "MONEY" - // )) q += '+'; - // console.log(self.values[idx].toString()); - //console.log(self); -// q += val; - - // if(table.xcolumns && table.xcolumns[col.columnid] && table.xcolumns[col.columnid].dbtypeid == "INT") q += '|0'; - ss.push(q); - - // console.log(fld); - // TODO: type checking and conversions - // rec[fld.fldid] = eval(self.insertExpression[idx].toJavaScript('','')); - // console.log(rec[fld.fldid]); - // if(rec[fld.fldid] == "NULL") rec[fld.fldid] = undefined; - - // if(table.xflds[fld.fldid].dbtypeid == "INT") rec[fld.fldid] = +rec[fld.fldid]|0; - // else if(table.xflds[fld.fldid].dbtypeid == "FLOAT" || table.xflds[fld.fldid].dbtypeid == "MONEY" ) - // rec[fld.fldid] = +rec[fld.fldid]; - }); - } else { -// console.log(222,values); -// sw = 'var w='+JSONtoJavaScript(values)+';for(var k in w){r[k]=w[k]};'; - sw = JSONtoJavaScript(values); - } - } -//console.log(ss); - - if(db.tables[tableid].defaultfns) ss.unshift(db.tables[tableid].defaultfns); - if(sw) { - s += 'a='+sw+';'; - } else { - s += 'a={'+ss.join(',')+'};'; - } -// s += 'db.tables[\''+tableid+'\'].insert(r);'; - if(db.tables[tableid].insert) { - s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].insert(a);'; - } else { - s += 'aa.push(a);'; - } - }); - - s33 = s3+s; - - if(db.tables[tableid].insert) { -// s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].insert(r);'; - } else { - s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].data='+ - 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].data.concat(aa);'; - } - - s += 'return '+self.values.length; - -//console.log(s); - var insertfn = new Function('db, params, alasql',s3+s); - -// INSERT INTO table SELECT - - } else if(this.select) { - selectfn = this.select.compile(databaseid); - if(db.engineid && alasql.engines[db.engineid].intoTable) { - var statement = function(params, cb) { - var aa = selectfn(params); - var res = alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null, cb); - return res; - }; - return statement; - } else { - var insertfn = function(db, params, alasql) { - var res = selectfn(params); - if(db.tables[tableid].insert) { - // If insert() function exists (issue #92) - for(var i=0,ilen=res.length;i=26) { - i=((i/26)|0)-1; - addr = String.fromCharCode(65+i%26)+addr; - if(i>26) { - i=((i/26)|0)-1; - addr = String.fromCharCode(65+i%26)+addr; - }; - }; - return addr; -}; - -/** - Excel:conver Excel column name to number - @param {integer} i Column number, like 'A' or 'BE' - @return {string} Column name, starting with 0 -*/ -var xlscn = utils.xlscn = function(s) { - var n = s.charCodeAt(0)-65; - if(s.length>1) { - n = (n+1)*26+s.charCodeAt(1)-65; -// console.log(n, s.charCodeAt(0)-65, s.charCodeAt(1)-65); - if(s.length>2) { - n = (n+1)*26+s.charCodeAt(2)-65; - } - } - return n; -}; - -var domEmptyChildren = utils.domEmptyChildren = function (container){ - var len = container.childNodes.length; - while (len--) { - container.removeChild(container.lastChild); - }; -}; - - - -/** - Strip all comments. - Based om the https://github.com/lehni/uncomment.js/blob/master/uncomment.js - I just replaced JavaScript's '//' to SQL's '--' and remove other stuff - TODO: Fixed [aaa/*bbb] for column names - TODO: Bug if -- comments in the last line - */ - -alasql.utils.uncomment = function uncomment(str) { - // Add some padding so we can always look ahead and behind by two chars - str = ('__' + str + '__').split(''); - var quote = false, - quoteSign, - // regularExpression = false, - // characterClass = false, - blockComment = false, - lineComment = false; - // preserveComment = false; - - for (var i = 0, l = str.length; i < l; i++) { -// console.log(i,str[i]); - // When checking for quote escaping, we also need to check that the - // escape sign itself is not escaped, as otherwise '\\' would cause - // the wrong impression of an unclosed string: - var unescaped = str[i - 1] !== '\\' || str[i - 2] === '\\'; - - if (quote) { - if (str[i] === quoteSign && unescaped) - quote = false; - // } else if (regularExpression) { - // Make sure '/'' inside character classes is not considered the end - // of the regular expression. - // if (str[i] === '[' && unescaped) { - // characterClass = true; - // } else if (str[i] === ']' && unescaped && characterClass) { - // characterClass = false; - // } else if (str[i] === '/' && unescaped && !characterClass) { - // regularExpression = false; - // } - } else if (blockComment) { - // Is the block comment closing? - if (str[i] === '*' && str[i + 1] === '/') { - // if (!preserveComment) - str[i] = str[i + 1] = ''; - blockComment /* = preserveComment*/ = false; - // Increase by 1 to skip closing '/', as it would be mistaken - // for a regexp otherwise - i++; - } else { //if (!preserveComment) { - str[i] = ''; - } - } else if (lineComment) { - // One-line comments end with the line-break - if (str[i + 1] == '\n' || str[i + 1] == '\r') - lineComment = false; - str[i] = ''; - } else { - if (str[i] == '"' || str[i] == "'") { - quote = true; - quoteSign = str[i]; - } else if (str[i] == '[' && str[i-1] != "@") { - quote = true; - quoteSign = ']'; - // } else if (str[i] === '-' && str[i + 1] === '-') { - // str[i] = ''; - // lineComment = true; - } else if (str[i] === '/' && str[i + 1] === '*') { - // Do not filter out conditional comments /*@ ... */ - // and comments marked as protected /*! ... */ -// preserveComment = /[@!]/.test(str[i + 2]); -// if (!preserveComment) - str[i] = ''; - blockComment = true; -// console.log('block'); - // } else if (str[i + 1] === '/') { - // str[i] = ''; - // lineComment = true; - // } else { - // We need to make sure we don't count normal divisions as - // regular expresions. Matching this properly is difficult, - // but if we assume that normal division always have a space - // after /, a simple check for white space or '='' (for /=) - // is enough to distinguish divisions from regexps. - // TODO: Develop a proper check for regexps. - // if (!/[\s=]/.test(str[i + 1])) { - // regularExpression = true; - // } - // } - } - } - } - // Remove padding again. - str = str.join('').slice(2, -2); - -/* - // Strip empty lines that contain only white space and line breaks, as they - // are left-overs from comment removal. - str = str.replace(/^[ \t]+(\r\n|\n|\r)/gm, function(all) { - return ''; - }); - // Replace a sequence of more than two line breaks with only two. - str = str.replace(/(\r\n|\n|\r)(\r\n|\n|\r)+/g, function(all, lineBreak) { - return lineBreak + lineBreak; - }); -*/ - return str; -}; - - -/* -// -// Database class for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - - -// Initial parameters -/** - Jison parser - */ -alasql.parser = parser; - -/** - Jison parser - @param {string} sql SQL statement - @return {object} AST (Abstract Syntax Tree) - */ -alasql.parse = function(sql) { - return parser.parse(alasql.utils.uncomment(sql)); -}; // Shortcut - -// Database Engines -/** - List of engines of external databases - */ -alasql.engines = {}; - -// Databases -/** - List of databases - */ -alasql.databases = {}; - -/** Number of databases */ -alasql.databasenum = 0; // Current database - -// Deafult options -/** - Alasql options object - */ -alasql.options = {}; -alasql.options.errorlog = false; // Log or throw error -alasql.options.valueof = false; // Use valueof in orderfn -alasql.options.dropifnotexists = false; // DROP database in any case -alasql.options.datetimeformat = 'sql'; // How to handle DATE and DATETIME types - // Another value is 'javascript' -alasql.options.casesensitive = true; // Table and column names are case sensitive and converted to lower-case -alasql.options.logtarget = 'output'; // target for log. Values: 'console', 'output', 'id' of html tag -alasql.options.logprompt = true; // Print SQL at log - -//alasql.options.worker = false; -// Variables -alasql.vars = {}; -alasql.declares = {}; - -// AUTOCOMMIT ON | OFF -alasql.options.autocommit = true; - -alasql.options.cache = true; - -alasql.prompthistory = []; - -alasql.from = {}; // FROM functions -alasql.into = {}; // INTO functions - -alasql.fn = {}; -alasql.aggr = {}; - -alasql.busy = 0; - -// Cache -alasql.MAXSQLCACHESIZE = 10000; -alasql.DEFAULTDATABASEID = 'alasql'; - -/* WebWorker */ -alasql.lastid = 0; -alasql.buffer = {}; - -/** - Select current database - @param {string} databaseid Selected database identificator - */ -alasql.use = function (databaseid) { - if(!databaseid) databaseid = alasql.DEFAULTDATABASEID; - if(alasql.useid == databaseid) return; - alasql.useid = databaseid; - var db = alasql.databases[alasql.useid]; - alasql.tables = db.tables; -// alasql.fn = db.fn; - db.resetSqlCache(); -}; - -// Run one statement -/** - Run SQL statement on current database - */ -alasql.exec = function (sql, params, cb, scope) { - delete alasql.error; - if(alasql.options.errorlog){ - try { - return alasql.dexec(alasql.useid, sql, params, cb, scope); - } catch(err){ - alasql.error = err; - if(cb) cb(null,alasql.error); - } - } else { - return alasql.dexec(alasql.useid, sql, params, cb, scope); - } -} - -/** - Run SQL statement on specific database - */ -alasql.dexec = function (databaseid, sql, params, cb, scope) { - var db = alasql.databases[databaseid]; -// if(db.databaseid != databaseid) console.trace('got!'); -// console.log(3,db.databaseid,databaseid); - - // Create hash - if(alasql.options.cache) { - var hh = hash(sql); - var statement = db.sqlCache[hh]; - // If database structure was not changed sinse lat time return cache - if(statement && db.dbversion == statement.dbversion) { - return statement(params, cb); - } - } - - // Create AST - var ast = alasql.parse(sql); - if(!ast.statements) return; - if(ast.statements.length == 0) return 0; - else if(ast.statements.length == 1) { - if(ast.statements[0].compile) { - -// Compile and Execute - var statement = ast.statements[0].compile(databaseid); - if(!statement) return; - statement.sql = sql; - statement.dbversion = db.dbversion; - - if(alasql.options.cache) { - // Secure sqlCache size - if (db.sqlCacheSize > alasql.MAXSQLCACHESIZE) { - db.resetSqlCache(); - } - db.sqlCacheSize++; - db.sqlCache[hh] = statement; - } - var res = alasql.res = statement(params, cb, scope); - return res; - - } else { -// console.log(ast.statements[0]); - alasql.precompile(ast.statements[0],alasql.useid,params); - var res = alasql.res = ast.statements[0].execute(databaseid, params, cb, scope); - return res; - } - } else { - // Multiple statements - if(cb) { - alasql.adrun(databaseid, ast, params, cb, scope); - } else { - return alasql.drun(databaseid, ast, params, cb, scope); - } - } -}; - -/** - Run multiple statements and return array of results sync - */ -alasql.drun = function (databaseid, ast, params, cb, scope) { - var useid = alasql.useid; - if(useid != databaseid) alasql.use(databaseid); - var res = []; - for (var i=0, ilen=ast.statements.length; i alasql.MAXSQLCACHESIZE) { -// this.resetSqlCache(); -// } -// }; -// return statement; -// } - -// SQL.js compatibility method -//Database.prototype.prepare = Database.prototype.compile; - - -// Added for compatibility with WebSQL - - - - - -/* -// -// Transactio class for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - - -Database.prototype.transaction = function(cb) { - var tx = new alasql.Transaction(this.databaseid); - var res = cb(tx); - return res; -}; - -// Transaction class (for WebSQL compatibility) - -/** - Transaction class - @class Transaction - */ - -var Transaction = alasql.Transaction = function (databaseid) { - this.transactionid = Date.now(); - this.databaseid = databaseid; - this.commited = false; - this.dbversion = alasql.databases[databaseid].dbversion; -// this.bank = cloneDeep(alasql.databases[databaseid]); - this.bank = JSON.stringify(alasql.databases[databaseid]); - // TODO CLone Tables with insertfns -// console.log(this); - return this; -}; - -// Main class - - -// Commit - -/** - Commit transaction - */ -Transaction.prototype.commit = function() { - this.commited = true; - alasql.databases[this.databaseid].dbversion = Date.now(); - delete this.bank; -}; - -// Rollback -/** - Rollback transaction - */ -Transaction.prototype.rollback = function() { - if(!this.commited) { - alasql.databases[this.databaseid] = JSON.parse(this.bank); - // alasql.databases[this.databaseid].tables = this.bank; - // alasql.databases[this.databaseid].dbversion = this.dbversion; - delete this.bank; - } else { - throw new Error('Transaction already commited'); - } -}; - -// Transactions stub - -/** - Execute SQL statement - @param {string} sql SQL statement - @param {object} params Parameters - @param {function} cb Callback function - @return result - */ -Transaction.prototype.exec = function(sql, params, cb) { -// console.log(this.databaseid); - return alasql.dexec(this.databaseid,sql,params,cb); -}; - -Transaction.prototype.executeSQL = Transaction.prototype.exec; - -/* -Transaction.prototype.query = Database.prototype.exec; -Transaction.prototype.run = Database.prototype.exec; -Transaction.prototype.queryArray = function(sql, params, cb) { - return flatArray(this.exec(sql, params, cb)); -} - -Transaction.prototype.queryArrayOfArrays = function(sql, params, cb) { - return arrayOfArrays(this.exec(sql, params, cb)); -} - -Transaction.prototype.querySingle = function(sql, params, cb) { - return this.exec(sql, params, cb)[0]; -} -Transaction.prototype.queryValue = function(sql, params, cb) { - var res = this.querySingle(sql, params, cb); - return res[Object.keys(res)[0]]; -} -*/ - - -/* -// -// Table class for Alasql.js -// Date: 14.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Table class -var Table = alasql.Table = function(params){ - // Columns - this.columns = []; - this.xcolumns = {}; - // Data array - this.data = []; - - this.inddefs = {}; - this.indices = {}; - - this.uniqs = {}; - this.uniqdefs = {}; - - extend(this,params); -}; - - -// View = function(){ -// this.data = []; -// this.columns = []; -// this.ixcolumns = {}; -// this.ixdefs = {}; -// this.indices = {}; -// }; - -// alasql.View = View; - -Table.prototype.indexColumns = function() { - var self = this; - self.xcolumns = {}; - self.columns.forEach(function(col){ - self.xcolumns[col.columnid] = col; - }); -} - - - - -/* -// -// View class for Alasql.js -// Date: 14.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Table class -var View = alasql.View = function(params){ - // Columns - this.columns = []; - this.xcolumns = {}; - // Data array - this.query = []; - - extend(this,params); -}; - -// View = function(){ -// this.data = []; -// this.columns = []; -// this.ixcolumns = {}; -// this.ixdefs = {}; -// this.indices = {}; -// }; - -// alasql.View = View; - - - - -/* -// -// Query class for Alasql.js -// Date: 14.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Table class - -/** - @class Query Main query class - */ -var Query = alasql.Query = function(params){ - this.alasql = alasql; -// console.log(12,alasql); - // Columns - this.columns = []; - this.xcolumns = {}; - this.selectGroup = []; - this.groupColumns = {}; - // Data array - extend(this,params); -}; - -/** - @class Recordset data object - */ -var Recordset = alasql.Recordset = function(params){ - // Data array - extend(this,params); -}; - - -// View = function(){ -// this.data = []; -// this.columns = []; -// this.ixcolumns = {}; -// this.ixdefs = {}; -// this.indices = {}; -// }; - -// alasql.View = View; - - - - -/* -// -// Parser helper for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -var yy = parser.yy = {}; - -// Utility -yy.extend = extend; -// Option for case sensitive -yy.casesensitive = alasql.options.casesensitive; - -// Base class for all yy classes -var Base = yy.Base = function (params) { return yy.extend(this, params); }; - -Base.prototype.toString = function() {} -Base.prototype.toType = function() {} -Base.prototype.toJavaScript = function() {} - -//var BaseClause = yy,BaseClause = function (params) { return yy.extend(this, params); }; -Base.prototype.compile = returnUndefined; -Base.prototype.exec = function() {} - -//var BaseStatement = yy,BaseStatement = function (params) { return yy.extend(this, params); }; -Base.prototype.compile = returnUndefined; -Base.prototype.exec = function() {} - - - - -/* -// -// Statements class for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// Statements container -yy.Statements = function(params) { return yy.extend(this, params); }; - -yy.Statements.prototype.toString = function () { - return this.statements.map(function(st){return st.toString()}).join(';'+NL()); -}; - -// Compile array of statements into single statement -yy.Statements.prototype.compile = function(db) { - var statements = this.statements.map(function(st){ - return st.compile(db) - }); - if(statements.length == 1) { - return statements[0]; - } else { - return function(params, cb){ - var res = statements.map(function(st){ return st(params); }); - if(cb) cb(res); - return res; - } - } -}; - - - -// Main query procedure -function queryfn(query,oldscope,cb, A,B) { - var ms; - query.sourceslen = query.sources.length; - var slen = query.sourceslen; - query.query = query; // TODO Remove to prevent memory leaks - query.A = A; - query.B = B; -// console.log(arguments); - query.cb = cb; - query.oldscope = oldscope; - - // Run all subqueries before main statement - if(query.queriesfn) { - query.sourceslen += query.queriesfn.length; - slen += query.queriesfn.length; - - query.queriesdata = []; - -// console.log(8); - query.queriesfn.forEach(function(q,idx){ -// if(query.explain) ms = Date.now(); -//console.log(18,idx); -// var res = flatArray(q(query.params,null,queryfn2,(-idx-1),query)); - -// var res = flatArray(queryfn(q.query,null,queryfn2,(-idx-1),query)); -// console.log(A,B); -// console.log(q); - q.query.params = query.params; -// query.queriesdata[idx] = - - if(false) { - queryfn(q.query,query.oldscope,queryfn2,(-idx-1),query); - } else { - queryfn2([],(-idx-1),query); - } - -// console.log(27,q); - - -// query.explaination.push({explid: query.explid++, description:'Query '+idx,ms:Date.now()-ms}); -// query.queriesdata[idx] = res; -// return res; - }); -// console.log(9,query.queriesdata.length); -// console.log(query.queriesdata[0]); - } - - var scope; - if(!oldscope) scope = {}; - else scope = cloneDeep(oldscope); - query.scope = scope; - - // First - refresh data sources - - var result; - query.sources.forEach(function(source, idx){ -// source.data = query.database.tables[source.tableid].data; -// console.log(666,idx); - source.query = query; - var rs = source.datafn(query, query.params, queryfn2, idx, alasql); -// console.log(333,rs); - if(typeof rs != undefined) { - // TODO - this is a hack: check if result is array - check all cases and - // make it more logical - if((query.intofn || query.intoallfn) && rs instanceof Array) rs = rs.length; - result = rs; - } -// console.log(444,result); -// -// Ugly hack to use in query.wherefn and source.srcwherefns functions -// constructions like this.queriesdata['test']. -// I can elimite it with source.srcwherefn.bind(this)() -// but it may be slow. -// - source.queriesdata = query.queriesdata; - }); - if(slen == 0) result = queryfn3(query); - return result; -}; - -function queryfn2(data,idx,query) { - -//console.log(56,arguments); -// console.log(78,data, idx,query); -//console.trace(); - - if(idx>=0) { - var source = query.sources[idx]; - source.data = data; - if(typeof source.data == 'function') { - source.getfn = source.data; - source.dontcache = source.getfn.dontcache; - - // var prevsource = query.sources[h-1]; - if(source.joinmode == 'OUTER' || source.joinmode == 'RIGHT' || source.joinmode == 'ANTI') { - source.dontcache = false; - } - source.data = {}; - } - } else { - // subqueries -// console.log("queriesdata",data, flatArray(data)); - query.queriesdata[-idx-1] = flatArray(data); -// console.log(98,query.queriesdata); -// console.log(79,query.queriesdata); - } - - query.sourceslen--; - if(query.sourceslen>0) return; - - return queryfn3(query); -}; - -function queryfn3(query) { -//console.log(55,query); - - - var scope = query.scope; - // Preindexation of data sources -// if(!oldscope) { - preIndex(query); -// } - - // query.sources.forEach(function(source) { - // console.log(source.data); - // }); - - // Prepare variables - query.data = []; - query.xgroups = {}; - query.groups = []; - - // Level of Joins - var h = 0; - - // Start walking over data - doJoin(query, scope, h); - -//console.log(85,query.data[0]); - - // If groupping, then filter groups with HAVING function -// console.log(query.havingfns); - if(query.groupfn) { - query.data = []; - if(query.groups.length == 0) { - var g = {}; - if(query.selectGroup.length>0) { -// console.log(query.selectGroup); - query.selectGroup.forEach(function(sg){ - if(sg.aggregatorid == "COUNT" || sg.aggregatorid == "SUM") { - g[sg.nick] = 0; - } else { - g[sg.nick] = undefined; - } - }); - }; - query.groups = [g]; -// console.log(); - }; - // console.log('EMPTY',query.groups); - // debugger; - // if(false && (query.groups.length == 1) && (Object.keys(query.groups[0]).length == 0)) { - // console.log('EMPTY',query.groups); - // } else { - for(var i=0,ilen=query.groups.length;i 0) { - for(var i=0,ilen=query.data.length;i 0 && source.optimization == 'ix' && source.onleftfn && source.onrightfn) { - // If there is no table.indices - create it - if(source.databaseid && alasql.databases[source.databaseid].tables[source.tableid]) { - if(!alasql.databases[source.databaseid].tables[source.tableid].indices) query.database.tables[source.tableid].indices = {}; - // Check if index already exists - var ixx = alasql.databases[source.databaseid].tables[source.tableid].indices[hash(source.onrightfns+'`'+source.srcwherefns)]; - if( !alasql.databases[source.databaseid].tables[source.tableid].dirty && ixx) { - source.ix = ixx; - } - }; - if(!source.ix) { - source.ix = {}; - // Walking over source data - var scope = {}; - var i = 0; - var ilen = source.data.length; - var dataw; -// while(source.getfn i=query.sources.length) { -//console.log(query.wherefns); - // Then apply where and select -// console.log(query); - if(query.wherefn(scope,query.params, alasql)) { - -// console.log("scope",scope.schools); - -// var res = query.selectfn(scope, query.params, alasql); -// console.log("last",res); - // If there is a GROUP BY then pipe to groupping function - if(query.groupfn) { - query.groupfn(scope, query.params, query.alasql) - } else { - query.data.push(query.selectfn(scope, query.params, alasql)); - } - } - } else if(query.sources[h].applyselect) { -// console.log('APPLY',scope); -// console.log('scope1',scope); -// console.log(scope); - var source = query.sources[h]; - source.applyselect(query.params, function(data){ - if(data.length > 0) { - // console.log('APPLY CB'); - for(var i=0;i0) { - s += NL()+ID()+K('GROUP BY')+' '+this.group.map(function(grp){ - return grp.toString(); - }).join(', '); - }; - if(this.having) s += NL()+ID()+K('HAVING')+' '+this.having.toString(); - - if(this.order && this.order.length>0) { - s += NL()+ID()+K('ORDER BY')+' '+this.order.map(function(ord){ - return ord.toString(); - }).join(', '); - }; - if(this.limit) s += NL()+ID()+K('LIMIT')+' '+this.limit.value; - if(this.offset) s += NL()+ID()+K('OFFSET')+' '+this.offset.value; - if(this.union) s += NL()+K('UNION')+NL()+this.union.toString(); - if(this.unionall) s += NL()+K('UNION ALL')+NL()+this.unionall.toString(); - if(this.except) s += NL()+K('EXCEPT')+NL()+this.except.toString(); - if(this.intersect) s += NL()+K('INTERSECT')+NL()+this.intersect.toString(); - return s; -}; - -/** - Select statement in expression - */ -yy.Select.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); -// if(this.expression.reduced) return 'true'; -// return this.expression.toJavaScript(context, tableid, defcols); -// console.log('Select.toJS', 81, this.queriesidx); -// var s = 'this.queriesdata['+(this.queriesidx-1)+'][0]'; -//console.log(this); - var s = 'alasql.utils.flatArray(this.queriesfn['+(this.queriesidx-1)+'](this.params,null,'+context+'))[0]'; -// s = '(console.log(this.queriesfn[0]),'+s+')'; - - return s; -}; - - -// Compile SELECT statement -yy.Select.prototype.compile = function(databaseid) { - var db = alasql.databases[databaseid]; - // Create variable for query - var query = new Query(); - - query.removeKeys = []; - - query.explain = this.explain; // Explain - query.explaination = []; - query.explid = 1; - - query.modifier = this.modifier; - - query.database = db; - // 0. Precompile whereexists - this.compileWhereExists(query); - - // 0. Precompile queries for IN, NOT IN, ANY and ALL operators - this.compileQueries(query); - - query.defcols = this.compileDefCols(query, databaseid); - - // 1. Compile FROM clause - query.fromfn = this.compileFrom(query); - // 2. Compile JOIN clauses - if(this.joins) this.compileJoins(query); - // 3. Compile SELECT clause - - this.compileSelectGroup0(query); - - if(this.group || query.selectGroup.length>0) { - query.selectgfns = this.compileSelectGroup1(query); - } else { - query.selectfns = this.compileSelect1(query); - } - // 5. Optimize WHERE and JOINS - if(this.where) this.compileWhereJoins(query); - - // 4. Compile WHERE clause - query.wherefn = this.compileWhere(query); - - - // 6. Compile GROUP BY - if(this.group || query.selectGroup.length>0) query.groupfn = this.compileGroup(query); - - // 6. Compile HAVING - if(this.having) query.havingfn = this.compileHaving(query); - - if(this.group || query.selectGroup.length>0) { - query.selectgfn = this.compileSelectGroup2(query); - } else { - query.selectfn = this.compileSelect2(query); - } - - - // 7. Compile DISTINCT, LIMIT and OFFSET - query.distinct = this.distinct; - - // 8. Compile ORDER BY clause - if(this.order) query.orderfn = this.compileOrder(query); - -// TOP - if(this.top) { - query.limit = this.top.value; - } else if(this.limit) { - query.limit = this.limit.value; - if(this.offset) { - query.offset = this.offset.value; - } - }; - query.percent = this.percent; - - // 9. Compile ordering function for UNION and UNIONALL - if(this.union) { - query.unionfn = this.union.compile(databaseid); - if(this.union.order) { - query.orderfn = this.union.compileOrder(query); - } else { - query.orderfn = null; - } - } else if(this.unionall) { - query.unionallfn = this.unionall.compile(databaseid); - if(this.unionall.order) { - query.orderfn = this.unionall.compileOrder(query); - } else { - query.orderfn = null; - } - } else if(this.except) { - query.exceptfn = this.except.compile(databaseid); - if(this.except.order) { - query.orderfn = this.except.compileOrder(query); - } else { - query.orderfn = null; - } - } else if(this.intersect) { - query.intersectfn = this.intersect.compile(databaseid); - if(this.intersect.order) { - query.intersectfn = this.intersect.compileOrder(query); - } else { - query.orderfn = null; - } - }; - - // SELECT INTO -// console.log(this.into); - if(this.into) { - if(this.into instanceof yy.Table) { - if(alasql.options.autocommit && alasql.databases[this.into.databaseid||databaseid].engineid) { - query.intoallfns = 'return alasql.engines["'+alasql.databases[this.into.databaseid||databaseid].engineid+'"]'+ - '.intoTable("'+(this.into.databaseid||databaseid)+'","'+this.into.tableid+'",this.data, columns, cb);'; - } else { - query.intofns = - 'alasql.databases[\''+(this.into.databaseid||databaseid)+'\'].tables'+ - '[\''+this.into.tableid+'\'].data.push(r);'; - } - } else if(this.into instanceof yy.VarValue) { - query.intoallfns = 'alasql.vars["'+this.into.variable+'"]=this.data;res=1;if(cb)res=cb(res);return res;'; - } else if (this.into instanceof yy.FuncValue) { - -/* - query.intofns = 'alasql.into[\''+this.into.funcid+'\']('; - var ss = ['r','i']; - if(this.into.args && this.into.args.length>0 ) - this.into.args.forEach(function(arg){ - ss.push(arg.toJavaScript()); - }); - query.intofns += ss.join(',')+')'; -*/ - var qs = 'alasql.into[\''+this.into.funcid.toUpperCase()+'\']('; - if(this.into.args && this.into.args.length>0 ) { - qs += this.into.args[0].toJavaScript()+','; - if(this.into.args.length > 1) { - qs += this.into.args[1].toJavaScript()+','; - } else { - qs += 'null,'; - } - } else { - qs += 'null, null,' - } - query.intoallfns = qs+'this.data,columns,cb)'; -//console.log('999'); - - - - - } else if (this.into instanceof yy.ParamValue) { -// console.log(184); -// query.intofns = 'params[\''+this.into.param+"\'](r)"; - query.intofns = "params['"+this.into.param+"'].push(r)"; - - }; -// console.log(query.intofns); - if(query.intofns) { - query.intofn = new Function("r,i,params,alasql",query.intofns); - }; - - if(query.intoallfns) { -// console.log(query.intoallfns); - query.intoallfn = new Function("columns,cb,alasql",query.intoallfns); - } - - } -//console.log(query); - - // Now, compile all togeather into one function with query object in scope - var statement = function(params, cb, oldscope) { - query.params = params; - var res1 = queryfn(query,oldscope,function(res){ - -//console.log(res[0].schoolid); -//console.log(184,res); - var res2 = modify(query, res); - - - if(cb) cb(res2); -//console.log(8888,res2); - return res2; - - }); -//console.log(9999,res1); - -// if(typeof res1 != 'undefined') res1 = modify(query,res1); - - return res1; - - }; - -// statement.dbversion = ; -// console.log(statement.query); -//console.log(202,statement); - statement.query = query; - return statement; -}; - -function modify(query, res) { - if(query.modifier == 'VALUE') { -// console.log(222,res); - if(res.length > 0) { - var key; - if(query.columns && query.columns.length > 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - res = res[0][key]; - } else { - res = undefined; - } - } if(query.modifier == 'ROW') { - if(res.length > 0) { - var key; - if(query.columns && query.columns.length > 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - var a = []; - for(var key in res[0]) { - a.push(res[0][key]); - }; - res = a; - } else { - res = undefined; - } - } if(query.modifier == 'COLUMN') { - var ar = []; - if(res.length > 0) { - var key; - if(query.columns && query.columns.length > 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - for(var i=0, ilen=res.length; i 0) { - key = query.columns[0].columnid; - val = query.columns[1].columnid; - } else { - var okeys = Object.keys(res[0]); - key = okeys[0]; - val = okeys[1]; - } - for(var i=0, ilen=res.length; i 0) key = query.columns[0].columnid; - else key = Object.keys(res[0])[0]; - var s = ''; - for(var i=0, ilen=res.length; i0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat('cb,idx,query').join(','); - // } - // if(tq.args && tq.args.length>0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat().join(','); - // } - if(tq.args && tq.args.length>0) { - if(tq.args[0]) { - s += tq.args[0].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - if(tq.args[1]) { - s += tq.args[1].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - } else { - s += 'null,null,' - } - s += 'cb,idx,query'; - s += ');/*if(cb)res=cb(res,idx,query);*/return res'; -// console.log(s); - source.datafn = new Function('query, params, cb, idx, alasql',s); - - } else if(tq instanceof yy.FromData) { - source.datafn = function(query,params,cb,idx, alasql) { - var res = tq.data; - if(cb) res = cb(res,idx,query); - return res; - } - } else { - throw new Error('Wrong table at FROM'); - } -// source.data = alasql.databases[source.databaseid].tables[source.tableid].data; - query.sources.push(source); - - }); - // TODO Add joins - query.defaultTableid = query.sources[0].alias; -//console.log(query.defaultTableid); -}; - -alasql.prepareFromData = function(data,array) { - var res = data; - if(typeof data == "string") { - res = data.split(/\r?\n/); - if(array) { - for(var i=0, ilen=res.length; i0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat('cb,idx,query').join(','); - // } - // if(tq.args && tq.args.length>0) { - // s += tq.args.map(function(arg){ - // return arg.toJavaScript(); - // }).concat().join(','); - // } - if(jn.args && jn.args.length>0) { - if(jn.args[0]) { - s += jn.args[0].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - if(jn.args[1]) { - s += jn.args[1].toJavaScript('query.oldscope')+','; - } else { - s += 'null,'; - }; - } else { - s += 'null,null,' - } - s += 'cb,idx,query'; - s += ');/*if(cb)res=cb(res,idx,query);*/return res'; -// console.log(s); - source.datafn = new Function('query, params, cb, idx, alasql',s); - - query.aliases[source.alias] = {type:'funcvalue'}; - } -/* - } else if(tq instanceof yy.Select) { - query.aliases[alias] = {type:'subquery'}; - } else if(tq instanceof yy.ParamValue) { - query.aliases[alias] = {type:'paramvalue'}; - } else if(tq instanceof yy.FuncValue) { - query.aliases[alias] = {type:'paramvalue'}; - } else { - throw new Error('Wrong table at FROM'); - } -*/ - var alias = source.alias; - - // Test NATURAL-JOIN - if(jn.natural) { - if(jn.using || jn.on) { - throw new Error('NATURAL JOIN cannot have USING or ON clauses'); - } else { -// source.joinmode == "INNER"; - if(query.sources.length > 0) { - var prevSource = query.sources[query.sources.length-1]; - var prevTable = alasql.databases[prevSource.databaseid].tables[prevSource.tableid]; - var table = alasql.databases[source.databaseid].tables[source.tableid]; - - if(prevTable && table) { - var c1 = prevTable.columns.map(function(col){return col.columnid}); - var c2 = table.columns.map(function(col){return col.columnid}); - jn.using = arrayIntersect(c1,c2).map(function(colid){return {columnid:colid}}); -// console.log(jn.using); - } else { - throw new Error('In this version of Alasql NATURAL JOIN '+ - 'works for tables with predefined columns only'); - }; - } - } - } - - - - - - - - if(jn.using) { - var prevSource = query.sources[query.sources.length-1]; -// console.log(query.sources[0],prevSource,source); - source.onleftfns = jn.using.map(function(col){ -// console.log(141,colid); - return "p['"+(prevSource.alias||prevSource.tableid)+"']['"+col.columnid+"']"; - }).join('+"`"+'); - - - - source.onleftfn = new Function('p,params,alasql','return '+source.onleftfns); - - source.onrightfns = jn.using.map(function(col){ - return "p['"+(source.alias||source.tableid)+"']['"+col.columnid+"']"; - }).join('+"`"+'); - source.onrightfn = new Function('p,params,alasql','return '+source.onrightfns); - source.optimization = 'ix'; -// console.log(151,source.onleftfns, source.onrightfns); -// console.log(source); - } else if(jn.on) { -//console.log(jn.on); - if(jn.on instanceof yy.Op && jn.on.op == '=' && !jn.on.allsome) { -// console.log('ix optimization', jn.on.toJavaScript('p',query.defaultTableid) ); - source.optimization = 'ix'; - // source.onleftfns = jn.on.left.toJavaScript('p',query.defaultTableid); - // source.onleftfn = new Function('p', 'return '+source.onleftfns); - // source.onrightfns = jn.on.right.toJavaScript('p',query.defaultTableid); - // source.onrightfn = new Function('p', 'return '+source.onrightfns); - - var lefts = ''; - var rights = ''; - var middles = ''; - var middlef = false; - // Test right and left sides - var ls = jn.on.left.toJavaScript('p',query.defaultTableid,query.defcols); - var rs = jn.on.right.toJavaScript('p',query.defaultTableid,query.defcols); - - if((ls.indexOf("p['"+alias+"']")>-1) && !(rs.indexOf("p['"+alias+"']")>-1)){ - if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { rights = ls; } - else { middlef = true }; - - } else if(!(ls.indexOf("p['"+alias+"']")>-1) && (rs.indexOf("p['"+alias+"']")>-1)){ - if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { lefts = ls; } - else { middlef = true }; - } else { - middlef = true; - } - -// console.log(alias, 1,lefts, rights, middlef); - - if((rs.indexOf("p['"+alias+"']")>-1) && !(ls.indexOf("p['"+alias+"']")>-1)){ - if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { rights = rs; } - else { middlef = true }; - } else if(!(rs.indexOf("p['"+alias+"']")>-1) && (ls.indexOf("p['"+alias+"']")>-1)){ - if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){ - return s == "p['"+alias+"']"})) { lefts = rs; } - else { middlef = true }; - } else { - middlef = true; - } - -// console.log(alias, 2,lefts, rights, middlef); - - if(middlef) { -// middles = jn.on.toJavaScript('p',query.defaultTableid); -// } else { - rights = ''; - lefts = ''; - middles = jn.on.toJavaScript('p',query.defaultTableid,query.defcols); - source.optimization = 'no'; - // What to here? - } - - source.onleftfns = lefts; - source.onrightfns = rights; - source.onmiddlefns = middles || 'true'; -// console.log(source.onleftfns, '-',source.onrightfns, '-',source.onmiddlefns); - - source.onleftfn = new Function('p,params,alasql', 'return '+source.onleftfns); - source.onrightfn = new Function('p,params,alasql', 'return '+source.onrightfns); - source.onmiddlefn = new Function('p,params,alasql', 'return '+source.onmiddlefns); - -// } else if(jn.on instanceof yy.Op && jn.on.op == 'AND') { -// console.log('join on and ',jn); - - } else { -// console.log('no optimization'); - source.optimization = 'no'; -// source.onleftfn = returnTrue; -// source.onleftfns = "true"; - source.onmiddlefns = jn.on.toJavaScript('p',query.defaultTableid,query.defcols); - source.onmiddlefn = new Function('p,params,alasql','return '+jn.on.toJavaScript('p',query.defaultTableid,query.defcols)); - }; -// console.log(source.onleftfns, source.onrightfns, source.onmiddlefns); - - // Optimization function - }; - -// source.data = alasql.databases[source.databaseid].tables[source.tableid].data; -//console.log(source, jn); - // TODO SubQueries -/* if(source.joinmode == 'RIGHT') { - var prevSource = query.sources.pop(); - if(prevSource.joinmode == 'INNER') { - prevSource.joinmode = 'LEFT'; - var onleftfn = prevSource.onleftfn; - var onleftfns = prevSource.onleftfns; - var onrightfn = prevSource.onrightfn; - var onrightfns = prevSource.onrightfns; - var optimization = prevSource.optimization; - - prevSource.onleftfn = source.onrightfn; - prevSource.onleftfns = source.onrightfns; - prevSource.onrightfn = source.onleftfn; - prevSource.onrightfns = source.onleftfns; - prevSource.optimization = source.optimization; - - source.onleftfn = onleftfn; - source.onleftfns = onleftfns; - source.onrightfn = onrightfn; - source.onrightfns = onrightfns; - source.optimization = optimization; - - source.joinmode = 'INNER'; - query.sources.push(source); - query.sources.push(prevSource); - } else { - throw new Error('Do not know how to process this SQL'); - } - } else { - query.sources.push(source); - } -*/ - query.sources.push(source); - }; - }); -// console.log('sources',query.sources); -} - - - -yy.Select.prototype.compileWhere = function(query) { - if(this.where) { - if(typeof this.where == "function") { - return this.where; - } else { - s = this.where.toJavaScript('p',query.defaultTableid,query.defcols); - query.wherefns = s; -// console.log(s); - return new Function('p,params,alasql','return '+s); - } - } else return function(){return true}; -}; - - - -yy.Select.prototype.compileWhereJoins = function(query) { - return; - - // TODO Fix Where optimization - //console.log(query); - - optimizeWhereJoin(query, this.where.expression); - - //for sources compile wherefs - query.sources.forEach(function(source) { - if(source.srcwherefns) { - source.srcwherefn = new Function('p,params,alasql','return '+source.srcwherefns); - }; - if(source.wxleftfns) { - source.wxleftfn = new Function('p,params,alasql','return '+source.wxleftfns); - }; - if(source.wxrightfns) { - source.wxrightfn = new Function('p,params,alasql','return '+source.wxrightfns); - }; -// console.log(source.alias, source.wherefns) -// console.log(source); - }); -}; - -function optimizeWhereJoin (query, ast) { - if(!ast) return false; - if(!(ast instanceof yy.Op)) return; - if(ast.op != '=' && ast.op != 'AND') return; - if(ast.allsome) return; - - var s = ast.toJavaScript('p',query.defaultTableid,query.defcols); - var fsrc = []; - query.sources.forEach(function(source,idx) { - // Optimization allowed only for tables only - if(source.tableid) { - // This is a good place to remove all unnecessary optimizations - if(s.indexOf('p[\''+source.alias+'\']')>-1) fsrc.push(source); - }; - }); -//console.log(fsrc.length); -// if(fsrc.length < query.sources.length) return; -// console.log(ast); -// console.log(s); -// console.log(fsrc.length); - if(fsrc.length == 0) { -// console.log('no optimization, can remove this part of ast'); - return; - } else if (fsrc.length == 1) { - - if(!(s.match(/p\[\'.*?\'\]/g)||[]) - .every(function(s){ - return s == "p['"+fsrc[0].alias+"']"})) { - return; - // This is means, that we have column from parent query - // So we return without optimization - } - - var src = fsrc[0]; // optmiization source - src.srcwherefns = src.srcwherefns ? src.srcwherefns+'&&'+s : s; - - if((ast instanceof yy.Op) && (ast.op == '=' && !ast.allsome)) { - if(ast.left instanceof yy.Column) { - var ls = ast.left.toJavaScript('p',query.defaultTableid,query.defcols); - var rs = ast.right.toJavaScript('p',query.defaultTableid,query.defcols); - if(rs.indexOf('p[\''+fsrc[0].alias+'\']') == -1) { - fsrc[0].wxleftfns = ls; - fsrc[0].wxrightfns = rs; - } - } if(ast.right instanceof yy.Column) { - var ls = ast.left.toJavaScript('p',query.defaultTableid,query.defcols); - var rs = ast.right.toJavaScript('p',query.defaultTableid,query.defcols); - if(ls.indexOf('p[\''+fsrc[0].alias+'\']') == -1) { - fsrc[0].wxleftfns = rs; - fsrc[0].wxrightfns = ls; - } - } - } - ast.reduced = true; // To do not duplicate wherefn and srcwherefn - return; - } else { - if(ast.op = 'AND') { - optimizeWhereJoin(query,ast.left); - optimizeWhereJoin(query,ast.right); - } - } - -}; - - - - -/* -// -// Select compiler part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -/** - Compile group of statements - */ -yy.Select.prototype.compileGroup = function(query) { -// console.log(this.group); - var self = this; - var tableid = query.sources[0].alias; - var defcols = query.defcols; -// console.log(16,tableid, defcols); - -// console.log(query.sources[0].alias,query.defcols); - var allgroup = [[]]; - if(this.group) { - allgroup = decartes(this.group,query); - } -// console.log(23,allgroup); - -// console.log(allgroup); - // Prepare groups - //var allgroup = [['a'], ['a','b'], ['a', 'b', 'c']]; - - // Union all arrays to get a maximum - var allgroups = []; - allgroup.forEach(function(a){ - allgroups = arrayUnion(allgroups, a); - }); - - query.allgroups = allgroups; - -//console.log(42,294, this.group); -//console.log(allgroups); -// console.log(42,364,query.selectColumns) - -if(false) { - allgroups.forEach(function(col2){ -// console.log(42,365,colid, query.selectColumns[colid]) - if(query.selectColumns[colid]) { -// console.log(colid,'ok'); - } else { -// if(colid.indexOf()) -// console.log(colid,'bad'); - var tmpid = 'default'; - if(query.sources.length > 0) tmpid = query.sources[0].alias; -// console.log(new yy.Column({columnid:colid}).toJavaScript('p',query.sources[0].alias)); -// query.selectfns += 'r[\''+colid+'\']=p[\''+tmpid+'\'][\''+colid+'\'];'; -//console.log(374, colid); - if(Object.keys(query.selectColumns).length != 0) query.removeKeys.push(colid); - query.selectfns += 'r[\''+escapeq(colid)+'\']='+(new yy.Column({columnid:colid}).toJavaScript('p',tmpid))+';'; - } - }); -}; - - // Create negative array - - var s = ''; -// s+= query.selectfns; - - allgroup.forEach(function(agroup) { -//console.log(agroup); - - // Start of group function - s += 'var g=this.xgroups['; - - // var gcols = this.group.map(function(col){return col.columnid}); // Group fields with r - // Array with group columns from record - var rg = agroup.map(function(col2){ - var columnid = col2.split('\t')[0]; - var coljs = col2.split('\t')[1]; - // Check, if aggregator exists but GROUP BY is not exists - if(columnid == '') return '1'; // Create fictive groupping column for fictive GROUP BY -// else return "r['"+columnid+"']"; - else return coljs; - }); - if(rg.length == 0) rg = ["''"]; - - // console.log('rg',rg); - - s += rg.join('+"`"+'); - s += '];if(!g) {this.groups.push((g=this.xgroups['; - s += rg.join('+"`"+'); - s += '] = {'; -// s += ']=r'; - s += agroup.map(function(col2){ - var columnid = col2.split('\t')[0]; - var coljs = col2.split('\t')[1]; - - if(columnid == '') return ''; - else return "'"+columnid+"':"+coljs+","; - }).join(''); - - var neggroup = arrayDiff(allgroups,agroup); - -// console.log(neggroup); - - s += neggroup.map(function(col2){ - var columnid = col2.split('\t')[0]; - var coljs = col2.split('\t')[1] - return "'"+columnid+"':null,"; - }).join(''); - - var aft = ''; -// s += self.columns.map(function(col){ -//console.log('query.selectGroup',query.selectGroup); - s += query.selectGroup.map(function(col,idx){ -//console.log(idx, col.toString(), col.as); - var colexp = col.expression.toJavaScript("p",tableid,defcols); - var colas = col.nick; - // if(typeof colas == 'undefined') { - // if(col instanceof yy.Column) colas = col.columnid; - // else colas = col.toString(); - // }; - if (col instanceof yy.AggrValue) { - if(col.distinct) { - aft += ',g[\'$$_VALUES_'+colas+'\']={},g[\'$$_VALUES_'+colas+'\']['+colexp+']=true'; - }; - if (col.aggregatorid == 'SUM' - || col.aggregatorid == 'MIN' - || col.aggregatorid == 'MAX' - || col.aggregatorid == 'FIRST' - || col.aggregatorid == 'LAST' -// || col.aggregatorid == 'AVG' -// ) { return '\''+col.as+'\':r[\''+col.as+'\'],'; }//f.field.arguments[0].toJavaScript(); - ) { return '\''+colas+'\':'+colexp+','; }//f.field.arguments[0].toJavaScript(); - else if(col.aggregatorid == 'ARRAY') { - return '\''+colas+'\':['+colexp+'],'; - } else if(col.aggregatorid == 'COUNT') { - if(col.expression.columnid == '*') { - return '\''+colas+'\':1,'; - } else { -// return '\''+colas+'\':(typeof '+colexp+' != "undefined")?1:0,'; -// } else { - return '\''+colas+'\':(typeof '+colexp+' != "undefined")?1:0,'; - } - -// else if(col.aggregatorid == 'MIN') { return '\''+col.as+'\':r[\''+col.as+'\'],'; } -// else if(col.aggregatorid == 'MAX') { return '\''+col.as+'\':r[\''+col.as+'\'],'; } - } else if(col.aggregatorid == 'AVG') { - query.removeKeys.push('_SUM_'+colas); - query.removeKeys.push('_COUNT_'+colas); - return '\''+colas+'\':'+colexp+',\'_SUM_'+colas+'\':'+colexp+',\'_COUNT_'+colas+'\':1,'; - } else if(col.aggregatorid == 'AGGR') { - aft += ',g[\''+colas+'\']='+col.expression.toJavaScript('g',-1); - return ''; - } else if(col.aggregatorid == 'REDUCE') { - return '\''+colas+'\':alasql.aggr[\''+col.funcid+'\']('+colexp+'),'; - } - return ''; - } else return ''; - }).join(''); - - - - - - // columnid:r.columnid - // var srg = [];//rg.map(function(fn){ return (fn+':'+fn); }); - - // var srg = this.group.map(function(col){ - // if(col == '') return ''; - // else return col.columnid+':'+col.toJavaScript('r',''); - // }); - - // Initializw aggregators - - /* - this.columns.forEach(function(col){ - // console.log(f); - // if(f.constructor.name == 'LiteralValue') return ''; - - - if (col instanceof yy.AggrValue) { - if (col.aggregatorid == 'SUM') { srg.push("'"+col.as+'\':0'); }//f.field.arguments[0].toJavaScript(); - else if(col.aggregatorid == 'COUNT') {srg.push( "'"+col.as+'\':0'); } - else if(col.aggregatorid == 'MIN') { srg.push( "'"+col.as+'\':Infinity'); } - else if(col.aggregatorid == 'MAX') { srg.push( "'"+col.as+'\':-Infinity'); } - // else if(col.aggregatorid == 'AVG') { srg.push(col.as+':0'); } - // return 'group.'+f.name.value+'=+(+group.'+f.name.value+'||0)+'+f.field.arguments[0].toJavaScript('rec','')+';'; //f.field.arguments[0].toJavaScript(); - }; - - }); - - */ - - /*****************/ - - // s += srg.join(','); - - // var ss = []; - // gff.forEach(function(fn){ - // ss.push(fn+':rec.'+fn); - // }); - // s += ss.join(','); - // s += '});};'; - - s += '}'+aft+',g));} else {'; - // console.log(s, this.columns); - - - - // var neggroup = arrayDiff(allgroups,agroup); - - // console.log(agroup,neggroup); - - // s += neggroup.map(function(columnid){ - // return "g['"+columnid+"']=null;"; - // }).join(''); - - // console.log(s); - - - //console.log(query.selectfn); -// s += self.columns.map(function(col){ - s += query.selectGroup.map(function(col,idx){ - var colas = col.nick; - // if(typeof colas == 'undefined') { - // if(col instanceof yy.Column) colas = col.columnid; - // else colas = col.toString(); - // } - var colexp = col.expression.toJavaScript("p",tableid,defcols); - - if (col instanceof yy.AggrValue) { - if(col.distinct) { - var pre = 'if(typeof '+colexp+'!="undefined" && (!g[\'$$_VALUES_'+colas+'\']['+colexp+'])) \ - {'; - var post = 'g[\'$$_VALUES_'+colas+'\']['+colexp+']=true;}'; - } else { - var pre = '', post = ''; - } - if (col.aggregatorid == 'SUM') { return pre+'g[\''+colas+'\']+='+colexp+';'+post; }//f.field.arguments[0].toJavaScript(); - else if(col.aggregatorid == 'COUNT') { -// console.log(221,col.expression.columnid == '*'); - if(col.expression.columnid == '*') return pre+'g[\''+colas+'\']++;'+post; - else { - return pre+'if(typeof '+colexp+'!="undefined") g[\''+colas+'\']++;'+post; - } - } - else if(col.aggregatorid == 'ARRAY') { return pre+'g[\''+colas+'\'].push('+colexp+');'+post; } - else if(col.aggregatorid == 'MIN') { return pre+'g[\''+colas+'\']=Math.min(g[\''+colas+'\'],'+colexp+');'+post; } - else if(col.aggregatorid == 'MAX') { return pre+'g[\''+colas+'\']=Math.max(g[\''+colas+'\'],'+colexp+');'+post; } - else if(col.aggregatorid == 'FIRST') { return ''; } - else if(col.aggregatorid == 'LAST') { return pre+'g[\''+colas+'\']='+colexp+';'+post; } - else if(col.aggregatorid == 'AVG') { - return pre+'g[\'_SUM_'+colas+'\']+='+colexp+';' - + 'g[\'_COUNT_'+colas+'\']++;' - + 'g[\''+colas+'\']=g[\'_SUM_'+colas+'\']/g[\'_COUNT_'+colas+'\'];'+post; -// } - // else if(col.aggregatorid == 'AVG') { srg.push(colas+':0'); } - } else if(col.aggregatorid == 'AGGR') { - return pre+'g[\''+colas+'\']='+col.expression.toJavaScript('g',-1)+';'+post; - } else if(col.aggregatorid == 'REDUCE') { - return pre+'g[\''+colas+'\']=alasql.aggr.'+col.funcid+'('+colexp+',g[\''+colas+'\']);'+post; - } - return ''; - } else return ''; - }).join(''); - - - // s += selectFields.map(function(f){ - // console.log(f); - // if(f.constructor.name == 'LiteralValue') return ''; - // if (f.field instanceof SQLParser.nodes.FunctionValue - // && (f.field.name.toUpperCase() == 'SUM' || f.field.name.toUpperCase() == 'COUNT')) { - // return 'group.'+f.name.value+'=+(+group.'+f.name.value+'||0)+'+f.field.arguments[0].toJavaScript('rec','')+';'; //f.field.arguments[0].toJavaScript(); - // return 'group.'+f.name.value+'+='+f.field.arguments[0].toJavaScript('rec','')+';'; //f.field.arguments[0].toJavaScript(); - // return 'group.'+f.name.value+'+=rec.'+f.name.value+';'; //f.field.arguments[0].toJavaScript(); - // }; - // return ''; - // }).join(''); - - //s += ' group.amt += rec.emplid;'; - //s += 'group.count++;'; - s += '}'; - - }); - -// console.log('groupfn',s); - return new Function('p,params,alasql',s); - -} - - -/* -// -// Select compiler part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// yy.Select.prototype.compileSources = function(query) { -// return sources; -// }; - -function compileSelectStar (query,alias) { - // console.log(query.aliases[alias]); -// console.log(query,alias); - // console.log(query.aliases[alias].tableid); -// console.log(42,631,alias); -// console.log(query.aliases); - var s = '', sp = '', ss=[]; -// if(!alias) { -// sp += 'for(var k1 in p) var w=p[k1];for(var k2 in w){r[k2]=w[k2]};'; -// } else { - if(query.aliases[alias].tableid) { - var columns = alasql.databases[query.aliases[alias].databaseid].tables[query.aliases[alias].tableid].columns; - }; - // Check if this is a Table or other - - if(columns && columns.length > 0) { - columns.forEach(function(tcol){ - ss.push('\''+tcol.columnid+'\':p[\''+alias+'\'][\''+tcol.columnid+'\']'); - query.selectColumns[escapeq(tcol.columnid)] = true; - - // console.log('ok',s); - - var coldef = { - columnid:tcol.columnid, - dbtypeid:tcol.dbtypeid, - dbsize:tcol.dbsize, - dbprecision:tcol.dbprecision, - dbenum: tcol.dbenum - }; - query.columns.push(coldef); - query.xcolumns[coldef.columnid]=coldef; - - }); -//console.log(999,columns); - } else { - // if column not exists, then copy all - sp += 'var w=p["'+alias+'"];for(var k in w){r[k]=w[k]};'; -//console.log(777, sp); - query.dirtyColumns = true; - } -// } -//console.log({s:ss.join(','),sp:sp}); - return {s:ss.join(','),sp:sp}; -} - - -yy.Select.prototype.compileSelect1 = function(query) { - var self = this; - query.columns = []; - query.xcolumns = {}; - query.selectColumns = {}; - query.dirtyColumns = false; - var s = 'var r={'; - var sp = ''; - var ss = []; - - this.columns.forEach(function(col){ -//console.log(col); - if(col instanceof yy.Column) { - if(col.columnid == '*') { - if(col.func) { - sp += 'r=params[\''+col.param+'\'](p[\''+query.sources[0].alias+'\'],p,params,alasql);'; - } else if(col.tableid) { - //Copy all - var ret = compileSelectStar(query, col.tableid); - if(ret.s) ss = ss.concat(ret.s); - sp += ret.sp; - - } else { -// console.log('aliases', query.aliases); - for(var alias in query.aliases) { - var ret = compileSelectStar(query, alias); //query.aliases[alias].tableid); - if(ret.s) ss = ss.concat(ret.s); - sp += ret.sp; - } - // TODO Remove these lines - // In case of no information - // sp += 'for(var k1 in p){var w=p[k1];'+ - // 'for(k2 in w) {r[k2]=w[k2]}}' - } - } else { - // If field, otherwise - expression - var tbid = col.tableid; -// console.log(query.sources); - var dbid = col.databaseid || query.sources[0].databaseid || query.database.databaseid; - if(!tbid) tbid = query.defcols[col.columnid]; - if(!tbid) tbid = query.defaultTableid; - if(col.columnid != '_') { - ss.push('\''+escapeq(col.as || col.columnid)+'\':p[\''+(tbid)+'\'][\''+col.columnid+'\']'); - } else { - ss.push('\''+escapeq(col.as || col.columnid)+'\':p[\''+(tbid)+'\']'); - } - query.selectColumns[escapeq(col.as || col.columnid)] = true; - - if(query.aliases[tbid] && query.aliases[tbid].type == 'table') { - - if(!alasql.databases[dbid].tables[query.aliases[tbid].tableid]) { -// console.log(query.database,tbid,query.aliases[tbid].tableid); - throw new Error('Table \''+(tbid)+'\' does not exists in database'); - } - var columns = alasql.databases[dbid].tables[query.aliases[tbid].tableid].columns; - var xcolumns = alasql.databases[dbid].tables[query.aliases[tbid].tableid].xcolumns; -//console.log(xcolumns, col,123); -// console.log(0); - if(xcolumns && columns.length > 0) { -// console.log(1); - var tcol = xcolumns[col.columnid]; - var coldef = { - columnid:col.as || col.columnid, - dbtypeid:tcol.dbtypeid, - dbsize:tcol.dbsize, - dbpecision:tcol.dbprecision, - dbenum: tcol.dbenum, - }; -// console.log(2); - query.columns.push(coldef); - query.xcolumns[coldef.columnid]=coldef; - } else { - query.dirtyColumns = true; - } - } else { - // This is a subquery? - // throw new Error('There is now such table \''+col.tableid+'\''); - }; - - } - } else if(col instanceof yy.AggrValue) { - if(!self.group) { -// self.group=[new yy.Column({columnid:'q',as:'q' })]; - self.group = ['']; - } - if(!col.as) col.as = escapeq(col.toString()); - if (col.aggregatorid == 'SUM' || col.aggregatorid == 'MAX' || col.aggregatorid == 'MIN' || - col.aggregatorid == 'FIRST' || col.aggregatorid == 'LAST' || - col.aggregatorid == 'AVG' || col.aggregatorid == 'ARRAY' || col.aggregatorid == 'REDUCE' - ) { - ss.push("'"+escapeq(col.as)+'\':'+col.expression.toJavaScript("p",query.defaultTableid,query.defcols)) - } else if (col.aggregatorid == 'COUNT') { - ss.push("'"+escapeq(col.as)+"':1"); - // Nothing - } - query.selectColumns[col.aggregatorid+'('+escapeq(col.expression.toString())+')'] = thtd; - -// else if (col.aggregatorid == 'MAX') { -// ss.push((col.as || col.columnid)+':'+col.toJavaScript("p.",query.defaultTableid)) -// } else if (col.aggregatorid == 'MIN') { -// ss.push((col.as || col.columnid)+':'+col.toJavaScript("p.",query.defaultTableid)) -// } - } else { - ss.push('\''+escapeq(col.as || col.columnid || col.toString())+'\':'+col.toJavaScript("p",query.defaultTableid,query.defcols)); -// ss.push('\''+escapeq(col.toString())+'\':'+col.toJavaScript("p",query.defaultTableid)); - //if(col instanceof yy.Expression) { - query.selectColumns[escapeq(col.as || col.columnid || col.toString())] = true; - } - }); - s += ss.join(',')+'};'+sp; - return s; -//console.log(42,753,query.xcolumns, query.selectColumns); -} -yy.Select.prototype.compileSelect2 = function(query) { - - var s = query.selectfns ; -// console.log(s); - return new Function('p,params,alasql',s+'return r'); -}; - - -yy.Select.prototype.compileSelectGroup0 = function(query) { - var self = this; - self.columns.forEach(function(col,idx){ - if(col instanceof yy.Column && col.columnid == '*') { - } else { - var colas; - // = col.as; - if(col instanceof yy.Column) { - colas = escapeq(col.columnid); - } else { - colas = escapeq(col.toString()); - } - for(var i=0;irb) return 1; - if(ra==rb) return 0; - return -1; - } - }; - - var s = ''; - var sk = ''; - this.order.forEach(function(ord,idx){ - // console.log(ord instanceof yy.Expression); - // console.log(ord.toJavaScript('a','')); - // console.log(ord.expression instanceof yy.Column); - - // Date conversion - var dg = ''; -//console.log(ord.expression, ord.expression instanceof yy.NumValue); - if(ord.expression instanceof yy.NumValue) { - ord.expression = self.columns[ord.expression.value-1]; - }; - - if(ord.expression instanceof yy.Column) { - var columnid = ord.expression.columnid; - if(query.xcolumns[columnid]) { - var dbtypeid = query.xcolumns[columnid].dbtypeid; - if( dbtypeid == 'DATE' || dbtypeid == 'DATETIME') dg = '.valueOf()'; - // TODO Add other types mapping - } else { - if(alasql.options.valueof) dg = '.valueOf()'; // TODO Check - } - // COLLATE NOCASE - if(ord.nocase) dg += '.toUpperCase()'; - - s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; - s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; - - } else { - dg = '.valueOf()'; - // COLLATE NOCASE - if(ord.nocase) dg += '.toUpperCase()'; - s += 'if('+ord.toJavaScript('a','')+dg+(ord.direction == 'ASC'?'>':'<')+ord.toJavaScript('b','')+dg+')return 1;'; - s += 'if('+ord.toJavaScript('a','')+dg+'=='+ord.toJavaScript('b','')+dg+'){'; - } - -// if(columnid == '_') { -// s += 'if(a'+dg+(ord.direction == 'ASC'?'>':'<')+'b'+dg+')return 1;'; -// s += 'if(a'+dg+'==b'+dg+'){'; -// } else { - // TODO Add date comparision - // s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; - // s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; -// } - sk += '}'; - }); - s += 'return 0;'; - s += sk+'return -1'; - query.orderfns = s; -//console.log(s); - return new Function('a,b',s); - }; -}; - - - -/* -// -// ROLLUP(), CUBE(), GROUPING SETS() for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -/** - Calculate ROLLUP() combination - */ - -var rollup = function (a,query) { - var rr = []; - var mask = 0; - var glen = a.length; - for(var g=0;g'+gv[t]+'<',gv[t]=='',typeof gv[t]); -// console.log(gv[t].toString()); -//console.log('+++'); - res = res.map(function(r){ - query.groupColumns[escapeq(gv[t].toString())] = escapeq(gv[t].toString()); - return r.concat(escapeq(gv[t].toString()) - +'\t' - +gv[t].toJavaScript('p',query.sources[0].alias,query.defcols)) - }); -// res = res.concat(gv[t]); - }; - - // switch(gv[t].t) { - // case 'plain': - // res = res.map(function(r){return r.concat(gv[t].p)}); - - // break; - // case 'rollup': res = cartes(res,rollup(gv[t].p)); break; - // case 'cube': res = cartes(res,cube(gv[t].p)); break; - // case 'groupingsets': res = cartes(res,groupingsets(gv[t].p)); break; - // default: res = res.concat(gv[t]); - // } - }; - return res; - } else if(gv instanceof yy.FuncValue) { -// console.log(gv); - query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); - return [gv.toString()+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; - } else if(gv instanceof yy.Column) { - gv.nick = escapeq(gv.columnid); - query.groupColumns[gv.nick] = gv.nick; - return [gv.nick+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; // Is this ever happened? - // } else if(gv instanceof yy.Expression) { - // return [gv.columnid]; // Is this ever happened? - } else { - query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); - return [escapeq(gv.toString())+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; -// throw new Error('Single argument in the group without array'); - }; - - - // switch(gv.t) { - // case 'plain': return gv.p; break; - // case 'rollup': return rollup(gv.p); break; - // case 'cube': return cube(gv.p); break; - // case 'groupingsets': return groupingsets(gv.p); break; - // default: return [gv];//return decartes(gv.p); - // } - // return gv; -}; - - - - -/* -// -// Select run-time part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Select.prototype.compileDefCols = function(query, databaseid) { -// console.log('defcols'); - var defcols = {}; - if(this.from) { - this.from.forEach(function(fr){ - if(fr instanceof yy.Table) { - var alias = fr.as || fr.tableid; -// console.log(alasql.databases[fr.databaseid || databaseid]); -// console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); -//console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); -//console.log(alasql.databases); - var table = alasql.databases[fr.databaseid || databaseid].tables[fr.tableid]; -//console.log(table); - if(table.columns) { - table.columns.forEach(function(col){ - if(defcols[col.columnid]) { - defcols[col.columnid] = '-'; // Ambigous - } else { - defcols[col.columnid] = alias; - } - }); - } - } else if(fr instanceof yy.Select) { - - } else if(fr instanceof yy.ParamValue) { - - } else if(fr instanceof yy.VarValue) { - - } else if(fr instanceof yy.FuncValue) { - - } else if(fr instanceof yy.FromData) { - - } else { - throw new Error('Unknown type of FROM clause'); - }; - }); - }; - - if(this.joins) { - this.joins.forEach(function(jn){ -// console.log(jn); - if(jn.table) { - var alias = jn.table.tableid; - if(jn.as) alias = jn.as; - var alias = jn.as || jn.table.tableid; - var table = alasql.databases[jn.table.databaseid || databaseid].tables[jn.table.tableid]; -// console.log(jn.table.tableid, jn.table.databaseid); - if(table.columns) { - table.columns.forEach(function(col){ - if(defcols[col.columnid]) { - defcols[col.columnid] = '-'; // Ambigous - } else { - defcols[col.columnid] = alias; - } - }); - } - } else if(jn.select) { - - } else if(jn.param) { - - } else if(jn.func) { - - } else { - throw new Error('Unknown type of FROM clause'); - }; - }); - }; - // for(var k in defcols) { - // if(defcols[k] == '-') defcols[k] = undefined; - // } -// console.log(defcols); - return defcols; -} - -/* -// -// UNION for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// SELECT UNION statement - -yy.Union = function (params) { return yy.extend(this, params); } -yy.Union.prototype.toString = function () { - return K('UNION'); -}; - -yy.Union.prototype.compile = function (tableid) { - return null; -}; - -/* -// -// CROSS AND OUTER APPLY for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Apply = function (params) { return yy.extend(this, params); } -yy.Apply.prototype.toString = function () { - var s = K(this.applymode)+' '+K('APPLY')+' ('; - s += this.select.toString()+')'; - if(this.as) s += ' '+K('AS')+' '+L(this.as); - return s; -}; - - - -/* -// -// CROSS AND OUTER APPLY for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Over = function (params) { return yy.extend(this, params); } -yy.Over.prototype.toString = function () { - var s = K('OVER')+' ('; - if(this.partition) { - s += K('PARTITION')+' '+K('BY')+' '+this.partition.toString(); - if(this.order) s+=' '; - } - if(this.order) { - s += K('ORDER')+' '+K('BY')+' '+this.order.toString(); - } - s += ')'; - return s; -}; - - - -/* -// -// Expressions for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.ExpressionStatement = function(params) { return yy.extend(this, params); }; -yy.ExpressionStatement.prototype.toString = function() { - return this.expression.toString(); -}; - -yy.ExpressionStatement.prototype.execute = function (databaseid, params, cb) { - if(this.expression) { -// console.log(this.expression.toJavaScript('','', null)); -// console.log(this.expression.toJavaScript('','', null)); - var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('','', null)); - var res = expr(params,alasql); - if(cb) res = cb(res); - return res; - } -} - -yy.Expression = function(params) { return yy.extend(this, params); }; -yy.Expression.prototype.toString = function() { - var s = this.expression.toString(); - if(this.order) s += ' '+this.order.toString(); - if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); - return s; -}; -yy.Expression.prototype.findAggregator = function (query){ - if(this.expression.findAggregator) this.expression.findAggregator(query); -}; - -yy.Expression.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); - if(this.expression.reduced) return 'true'; - return this.expression.toJavaScript(context, tableid, defcols); -}; -yy.Expression.prototype.compile = function(context, tableid, defcols){ -// console.log('Expression',this); - if(this.reduced) return returnTrue(); - return new Function('p','return '+this.toJavaScript(context, tableid, defcols)); -}; - - -yy.JavaScript = function(params) { return yy.extend(this, params); }; -yy.JavaScript.prototype.toString = function() { - var s = '``'+this.value+'``'; - return s; -}; - -yy.JavaScript.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); - return '('+this.value+')'; -}; -yy.JavaScript.prototype.execute = function (databaseid, params, cb) { - var res = 1; - var expr = new Function("params,alasql,p",this.value); - expr(params,alasql); - if(cb) res = cb(res); - return res; -} - - -yy.Literal = function (params) { return yy.extend(this, params); } -yy.Literal.prototype.toString = function() { - var s = this.value; - if(this.value1) s = this.value1+'.'+s; -// else s = tableid+'.'+s; - return L(s); -} - - -yy.Join = function (params) { return yy.extend(this, params); } -yy.Join.prototype.toString = function() { - var s = NL()+ID(); - if(this.joinmode) s += K(this.joinmode)+' '; - s += K('JOIN')+this.table.toString(); - return s; -} - -//yy.Join.prototype.toJavaScript = function(context, tableid) { -// return 'JOIN'+this.table.toString(); -//} - - -yy.Table = function (params) { return yy.extend(this, params); } -yy.Table.prototype.toString = function() { - var s = this.tableid; -// if(this.joinmode) - if(this.databaseid) s = this.databaseid+'.'+s; - return L(s); -}; - - -yy.View = function (params) { return yy.extend(this, params); } -yy.View.prototype.toString = function() { - var s = this.viewid; -// if(this.joinmode) - if(this.databaseid) s = this.databaseid+'.'+s; - return L(s); -}; - - -yy.Op = function (params) { return yy.extend(this, params); } -yy.Op.prototype.toString = function() { - if(this.op == 'IN' || this.op == 'NOT IN') { - return this.left.toString()+" "+P(this.op)+" ("+this.right.toString()+")"; - } - if(this.allsome) { - return this.left.toString()+" "+P(this.op)+" "+this.allsome+' ('+this.right.toString()+')'; - } - if(this.op == '->') { - var s = this.left.toString()+"->"; -// console.log(this.right); - if(typeof this.right != 'string' && typeof this.right != 'number' ) s += '('; - s += this.right.toString(); - if(typeof this.right != 'string' && typeof this.right != 'number' ) s += ')'; - return s; - } - return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+' ':'')+this.right.toString(); -}; - -yy.Op.prototype.findAggregator = function (query){ -// console.log(this.toString()); - if(this.left && this.left.findAggregator) this.left.findAggregator(query); - // Do not go in > ALL - if(this.right && this.right.findAggregator && (!this.allsome)) { - this.right.findAggregator(query); - } -}; - -yy.Op.prototype.toType = function(tableid) { - if(['-','*','/','%','^'].indexOf(this.op) >-1) return 'number'; - if(this.op == '+') { - if(this.left.toType(tableid) == 'string' || this.right.toType(tableid) == 'string') return 'string'; - if(this.left.toType(tableid) == 'number' || this.right.toType(tableid) == 'number') return 'number'; - }; - if(['AND','OR','NOT','=','==','===', '!=','!==','!===','>','>=','<','<=', 'IN', 'NOT IN', 'LIKE', 'NOT LIKE'].indexOf(this.op) >-1 ) return 'boolean'; - if(this.op == 'BETWEEN' || this.op == 'NOT BETWEEN' || this.op == 'IS NULL' || this.op == 'IS NOT NULL') return 'boolean'; - if(this.allsome) return 'boolean'; - if(!this.op) return this.left.toType(); - - return 'unknown'; -}; - -yy.Op.prototype.toJavaScript = function(context,tableid,defcols) { -// console.log(this); - var op = this.op; - if(this.op == '=') op = '==='; - else if(this.op == '<>') op = '!='; - else if(this.op == 'OR') op = '||'; - - if(this.op == '->') { -// console.log(this.right, typeof this.right); - if(typeof this.right == "string") { - return this.left.toJavaScript(context,tableid, defcols)+'["'+this.right+'"]'; - } else if(typeof this.right == "number") { - return this.left.toJavaScript(context,tableid, defcols)+'['+this.right+']'; - } else if(this.right instanceof yy.FuncValue) { - ss = []; - if(!this.right.args || this.right.args.length == 0) { - } else { - var ss = this.right.args.map(function(arg){ - return arg.toJavaScript(context,tableid, defcols); - }); - } - return this.left.toJavaScript(context,tableid, defcols)+'[\''+this.right.funcid+'\']('+ - ss.join(',')+')'; - } else { - return this.left.toJavaScript(context,tableid, defcols)+'['+this.right.toJavaScript(context,tableid, defcols)+']'; - } - } - - if(this.op == 'IS') { - return '((typeof '+this.left.toJavaScript(context,tableid, defcols)+"=='undefined') == " - + '(typeof '+this.right.toJavaScript(context,tableid, defcols)+"=='undefined'))"; - } - - - if(this.op == '==') { - return 'alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+')'; - } - if(this.op == '===') { - return "(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; - } - - if(this.op == '!===') { - return "!(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; - } - - - if(this.op == '!==') { - return '(!alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+'))'; - } - - if(this.op == 'LIKE') { - var s = "("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ - ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g'))" -// console.log(s); - return s; - }; - - if(this.op == 'NOT LIKE') { - var s = "!(("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ - ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g')))" - return s; - }; - - if(this.op == 'BETWEEN') { - if(this.right instanceof yy.Op && this.right.op == 'AND') { - return '(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ - '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; - } else { - throw new Error('Wrong BETWEEN operator without AND part'); - } - }; - - if(this.op == 'NOT BETWEEN') { - if(this.right instanceof yy.Op && this.right.op == 'AND') { - return '!(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ - '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; - } else { - throw new Error('Wrong NOT BETWEEN operator without AND part'); - } - }; - - if(this.op == 'IN') { - if(this.right instanceof yy.Select ) { - var s = '('; -// s += 'this.query.queriesdata['+this.queriesidx+']'; - s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s += '.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; - return s; - } else if(this.right instanceof Array ) { -// if(this.right.length == 0) return 'false'; - var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; -//console.log(s); - return s; - } else { - var s = '('+this.right.toJavaScript(context,tableid, defcols)+'.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; - return s; -// } else { -// throw new Error('Wrong IN operator without SELECT part'); - } - }; - - - if(this.op == 'NOT IN') { - if(this.right instanceof yy.Select ) { - var s = '(' - //this.query.queriesdata['+this.queriesidx+'] - s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s +='.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; - return s; - } else if(this.right instanceof Array ) { -// if(this.right.length == 0) return 'true'; - var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - - if(this.allsome == 'ALL') { - if(this.right instanceof yy.Select ) { -// var s = 'this.query.queriesdata['+this.queriesidx+']'; - var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - - s +='.every(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else if(this.right instanceof Array ) { - var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].every(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - - if(this.allsome == 'SOME' || this.allsome == 'ANY') { - if(this.right instanceof yy.Select ) { -// var s = 'this.query.queriesdata['+this.queriesidx+']'; - var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s+='.some(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else if(this.right instanceof Array ) { - var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].some(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - -// Special case for AND optimization (if reduced) - if(this.op == 'AND') { - if(this.left.reduced) { - if(this.right.reduced) { - return 'true'; - } else { - return this.right.toJavaScript(context,tableid, defcols); - } - } else if(this.right.reduced) { - return this.left.toJavaScript(context,tableid, defcols); - } - - // Otherwise process as regular operation (see below) - op = '&&'; - - } - - if(this.op == '^') { - return 'Math.pow('+this.left.toJavaScript(context,tableid, defcols) - +','+this.right.toJavaScript(context,tableid, defcols)+')'; - }; - - - // Change names -// console.log(this); - return '('+this.left.toJavaScript(context,tableid, defcols)+op+this.right.toJavaScript(context,tableid, defcols)+')'; -}; - - - -yy.VarValue = function (params) { return yy.extend(this, params); } -yy.VarValue.prototype.toString = function() { - return '@'+L(this.variable); -}; - -yy.VarValue.prototype.toType = function() { - return 'unknown'; -}; - -yy.VarValue.prototype.toJavaScript = function() { - return "alasql.vars['"+this.variable+"']"; -} - - -yy.NumValue = function (params) { return yy.extend(this, params); } -yy.NumValue.prototype.toString = function() { - return N(this.value.toString()); -}; - -yy.NumValue.prototype.toType = function() { - return 'number'; -}; - -yy.NumValue.prototype.toJavaScript = function() { - return ""+this.value; -} - - - - -yy.StringValue = function (params) { return yy.extend(this, params); } -yy.StringValue.prototype.toString = function() { - return "'"+S(this.value.toString())+"'"; -} - -yy.StringValue.prototype.toType = function() { - return 'string'; -} - -yy.StringValue.prototype.toJavaScript = function() { -// console.log("'"+doubleqq(this.value)+"'"); -// return "'"+doubleqq(this.value)+"'"; - return "'"+escapeq(this.value)+"'"; - -} - - -yy.LogicValue = function (params) { return yy.extend(this, params); } -yy.LogicValue.prototype.toString = function() { - return this.value?'TRUE':'FALSE'; -} - -yy.LogicValue.prototype.toType = function() { - return 'boolean'; -} - -yy.LogicValue.prototype.toJavaScript = function() { - return this.value?'true':'false'; -} - -yy.NullValue = function (params) { return yy.extend(this, params); } -yy.NullValue.prototype.toString = function() { - return 'NULL'; -} -yy.NullValue.prototype.toJavaScript = function() { - return 'undefined'; -} - -yy.ParamValue = function (params) { return yy.extend(this, params); } -yy.ParamValue.prototype.toString = function() { - return '$'+this.param; -} -yy.ParamValue.prototype.toJavaScript = function() { - if(typeof this.param == "string") return "params[\'"+this.param+"\']"; - else return "params["+this.param+"]"; -} - - - -yy.UniOp = function (params) { return yy.extend(this, params); } -yy.UniOp.prototype.toString = function() { - if(this.op == '-') return this.op+this.right.toString(); - if(this.op == '+') return this.op+this.right.toString(); - if(this.op == 'NOT') return this.op+'('+this.right.toString()+')'; - else if(this.op == null) return '('+this.right.toString()+')'; -}; - -yy.UniOp.prototype.findAggregator = function (query){ - if(this.right.findAggregator) this.right.findAggregator(query); -}; - -yy.UniOp.prototype.toType = function(tableid) { - if(this.op == '-') return 'number'; - if(this.op == '+') return 'number'; - if(this.op == 'NOT') return 'boolean'; -}; - -yy.UniOp.prototype.toJavaScript = function(context, tableid, defcols) { - if(this.op == '-') return "(-("+this.right.toJavaScript(context, tableid, defcols)+"))"; - if(this.op == '+') return "("+this.right.toJavaScript(context, tableid, defcols)+")"; - if(this.op == 'NOT') return '!('+this.right.toJavaScript(context, tableid, defcols)+')'; - else if(this.op == null) return '('+this.right.toJavaScript(context, tableid, defcols)+')'; -}; - - - -// yy.Star = function (params) { return yy.extend(this, params); } -// yy.Star.prototype.toString = function() { -// var s = this.fieldid; -// if(this.tableid) { -// s = this.tableid+'.'+s; -// if(this.databaseid) { -// s = this.databaseid+'.'+s; -// } -// } -// if(this.alias) s += ' AS '+this.alias; -// return s; -// } - -yy.Column = function(params) { return yy.extend(this, params); } -yy.Column.prototype.toString = function() { - var s; - if(this.columnid == +this.columnid) { - s = '['+this.columnid+']'; - } else { - s = this.columnid; - } - if(this.tableid) { - if(+this.columnid == this.columnid) { - s = this.tableid+s; - } else { - s = this.tableid+'.'+s; - } - if(this.databaseid) { - s = this.databaseid+'.'+s; - } - } -// if(this.alias) s += ' AS '+this.alias; - return s; -}; - -yy.Column.prototype.toJavaScript = function(context, tableid, defcols) { -// var s = this.value; -// var s = this.columnid; -// if(this.tableid) { -// s = this.tableid+'.'+s; -// // if(this.databaseid) { -// // s = this.databaseid+'.'+s; -// // } -// } else { -// s = tableid+'.'+s; -// } -//console.log('yy.Column',this, tableid); -// console.log(392,this.columnid); - var s = ''; - if(!this.tableid && tableid == '' && !defcols) { - if(this.columnid != '_') { - s = context+'[\''+this.columnid+'\']'; - } else { - if(context == 'g') { - s = 'g[\'_\']'; - } else { - s = context; - } - } - } else { - if(context == 'g') { - // if(this.columnid == '_') { - // } else { - s = 'g[\''+this.nick+'\']'; - // } - } else if(this.tableid) { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid) + '\'][\''+this.columnid+'\']'; - } else { - if(context == 'g') { - s = 'g[\'_\']'; - } else { - s = context+'[\''+(this.tableid) + '\']'; - } - } - } else if(defcols) { - var tbid = defcols[this.columnid]; - if(tbid == '-') { - throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables'); - } else if(tbid) { - if(this.columnid != '_') { - s = context+'[\''+(tbid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(tbid) + '\']'; - }; - } else { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(this.tableid || tableid) + '\']'; - }; - } - } else if(tableid == -1) { -// if(this.columnid != '') { - s = context+'[\''+this.columnid+'\']'; -// } else { -// s = context; -// } - } else { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(this.tableid || tableid) + '\']'; - } - } - } -// console.log(context,s); -// console.trace(new Error()); - return s; -} - - - - -yy.AggrValue = function(params){ return yy.extend(this, params); } -yy.AggrValue.prototype.toString = function() { - var s = ''; - if(this.aggregatorid == 'REDUCE') s += L(this.funcid)+'('; - else s += this.aggregatorid+'('; - if(this.distinct) s+= K('DISTINCT')+' '; - if(this.expression) s += this.expression.toString(); - s += ')'; - if(this.over) s += ' '+this.over.toString(); -// console.log(this.over); -// if(this.alias) s += ' AS '+this.alias; - return s; -}; -yy.AggrValue.prototype.findAggregator = function (query){ -// console.log('aggregator found',this.toString()); - -// var colas = this.as || this.toString(); - - var colas = escapeq(this.toString())+':'+query.selectGroup.length; -// console.log('findAgg',this); - - -/* var found = false; - for(var i=0;i-1) return 'number'; - if(['ARRAY'].indexOf(this.aggregatorid)>-1) return 'array'; - if(['FIRST','LAST' ].indexOf(this.aggregatorid)>-1) return this.expression.toType(); -} -yy.AggrValue.prototype.toJavaScript = function(context, tableid, defcols) { -// var s = 'alasql.functions.'+this.funcid+'('; -// if(this.expression) s += this.expression.toJavaScript(context, tableid); -// s += ')'; -// if(this.alias) s += ' AS '+this.alias; -// return s; -// var s = ''; -//if(this.as) console.log(499,this.as); -// var colas = this.as; - var colas = this.nick; - if(typeof colas == 'undefined') colas = this.toString(); - return 'g[\''+colas+'\']'; -} - - -yy.OrderExpression = function(params){ return yy.extend(this, params); } -yy.OrderExpression.prototype.toString = function() { - var s = this.expression.toString(); - if(this.order) s += ' '+this.order.toString(); - if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); - return s; -} - -yy.GroupExpression = function(params){ return yy.extend(this, params); } -yy.GroupExpression.prototype.toString = function() { - return this.type+'('+this.group.toString()+')'; -} - - -yy.ColumnDef = function (params) { return yy.extend(this, params); } -yy.ColumnDef.prototype.toString = function() { - var s = this.columnid; - if(this.dbtypeid) s += ' '+this.dbtypeid; - if(this.dbsize) { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+this.dbprecision; - s += ')'; - }; - if(this.primarykey) s += ' PRIMARY KEY'; - if(this.notnull) s += ' NOT NULL'; - return s; -} - - -// Alasql Linq library - -yy.FromData = function(params) { return yy.extend(this, params); }; -yy.FromData.prototype.toString = function() { - if(this.data) return K('DATA')+'('+((Math.random()*10e15)|0)+')'; - else return '?'; -}; -yy.FromData.prototype.toJavaScript = function(){ -// console.log('yy.FromData.prototype.toJavaScript'); -}; - -yy.Select.prototype.exec = function(params,cb) { - - if(this.preparams) params = this.preparams.concat(params); -// console.log(15,this.preparams); - - var databaseid = alasql.useid; - db = alasql.databases[databaseid]; - var sql = this.toString(); - var hh = hash(sql); -// console.log(sql); - - var statement = this.compile(databaseid); - if(!statement) return; - statement.sql = sql; - statement.dbversion = db.dbversion; - - // Secure sqlCache size - if (db.sqlCacheSize > alasql.MAXSQLCACHESIZE) { - db.resetSqlCache(); - } - db.sqlCacheSize++; - db.sqlCache[hh] = statement; - var res = alasql.res = statement(params, cb); - return res; -}; - -yy.Select.prototype.Select = function(){ - var self = this; - var agrs = []; - if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - self.columns = []; - - args.forEach(function(arg){ - if(typeof arg == "string") { - self.columns.push(new yy.Column({columnid: arg})); - } else if(typeof arg == "function") { - var pari = 0; - if(self.preparams) { - pari = self.preparams.length; - } else { - self.preparams = []; - } - self.preparams.push(arg); - self.columns.push(new yy.Column({columnid: "*", func:arg, param:pari})); - } else { - // Unknown type - } - }); - -// console.log(self instanceof yy.Select); - return self; -}; - -yy.Select.prototype.From = function(tableid){ - var self = this; - if(!self.from) self.from = []; - if(tableid instanceof Array) { - var pari = 0; - if(self.preparams) { - pari = self.preparams.length; - } else { - self.preparams = []; - } - self.preparams.push(tableid); - self.from.push(new yy.ParamValue({param:pari})); - } else if(typeof tableid =="string") { - self.from.push(new yy.Table({tableid:tableid})); - } else { - throw new Error('Unknown arguments in From() function') - } - return self; -} - -yy.Select.prototype.OrderBy = function(){ - var self = this; - var agrs = []; - - self.order = []; - - if(arguments.length == 0) { -// self.order.push(new yy.OrderExpression({expression: new yy.Column({columnid:"_"}), direction:'ASC'})); - args = ["_"]; - } else if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - if(args.length > 0) { - args.forEach(function(arg){ - var expr = new yy.Column({columnid:arg}); - if(typeof arg == 'function'){ - expr = arg; - } - self.order.push(new yy.OrderExpression({expression: expr, direction:'ASC'})); - }); - } - return self; -} - -yy.Select.prototype.Top = function(topnum){ - var self = this; - self.top = new yy.NumValue({value:topnum}); - return self; -}; - -yy.Select.prototype.GroupBy = function(){ - var self = this; - var agrs = []; - - if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - self.group = []; - - args.forEach(function(arg){ - var expr = new yy.Column({columnid:arg}); - self.group.push(expr); - }); - - return self; -}; - -yy.Select.prototype.Where = function(expr){ - var self = this; - if(typeof expr == 'function' ) { - self.where = expr; - } - return self; -}; - - - -/* -// -// Functions for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.FuncValue = function(params){ return yy.extend(this, params); } -yy.FuncValue.prototype.toString = function() { - var s = ''; - - if(alasql.fn[this.funcid]) s += this.funcid; - else if(alasql.aggr[this.funcid]) s += this.funcid; - else if(alasql.stdlib[this.funcid.toUpperCase()] || alasql.stdfn[this.funcid.toUpperCase()]) s += this.funcid.toUpperCase(); - - s += '('; - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toString(); - }).join(','); - }; - s += ')'; - if(this.as) s += ' AS '+this.as.toString(); -// if(this.alias) s += ' AS '+this.alias; - return s; -} - -yy.FuncValue.prototype.findAggregator = function(query) { - if(this.args && this.args.length > 0) { - this.args.forEach(function(arg){ - if(arg.findAggregator) arg.findAggregator(query); - }); - } -}; - -yy.FuncValue.prototype.toJavaScript = function(context, tableid, defcols) { - var s = ''; - var funcid = this.funcid; - // IF this is standard compile functions - if(alasql.fn[funcid]) { - // This is user-defined run-time function - // TODO arguments!!! -// var s = ''; - if(this.newid) s+= 'new '; - s += 'alasql.fn.'+this.funcid+'('; -// if(this.args) s += this.args.toJavaScript(context, tableid); - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toJavaScript(context, tableid, defcols); - }).join(','); - }; - s += ')'; - } else if(alasql.stdlib[funcid.toUpperCase()]) { - if(this.args && this.args.length > 0) { - s += alasql.stdlib[funcid.toUpperCase()].apply(this, this.args.map(function(arg) {return arg.toJavaScript(context, tableid)})); - } else { - s += alasql.stdlib[funcid.toUpperCase()](); - } - } else if(alasql.stdfn[funcid.toUpperCase()]) { - if(this.newid) s+= 'new '; - s += 'alasql.stdfn.'+this.funcid.toUpperCase()+'('; -// if(this.args) s += this.args.toJavaScript(context, tableid); - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toJavaScript(context, tableid, defcols); - }).join(','); - }; - s += ')'; - } else { - // Aggregator - } -//console.log('userfn:',s,this); - -// if(this.alias) s += ' AS '+this.alias; - return s; -} - -// // Functions compiler -// nodes.FunctionValue.prototype.toJavaScript = function (context, tableid) { -// var s = ''; -// s += fns[this.name.toUpperCase()].apply(null,this.arguments.map(function(arg){ -// if(arg) return arg.toJavaScript(context, tableid); -// else return ''; -// })); -// return s; -// }; - -// -// SQL FUNCTIONS COMPILERS -// Based on SQLite functions - -// IMPORTANT: These are compiled functions - -//alasql.fn = {}; // Keep for compatibility -//alasql.userlib = alasql.fn; - -var stdlib = alasql.stdlib = {} -var stdfn = alasql.stdfn = {} - -stdlib.ABS = function(a) {return 'Math.abs('+a+')'}; -stdlib.CLONEDEEP = function(a) {return 'alasql.utils.cloneDeep('+a+')'}; -stdlib.IIF = function(a,b,c) { - if(arguments.length == 3) { - return '(('+a+')?('+b+'):('+c+'))'; - } else { - throw new Error('Number of arguments of IFF is not equals to 3'); - }; -}; -stdlib.IFNULL = function(a,b) {return '('+a+'||'+b+')'}; -stdlib.INSTR = function(s,p) {return '(('+s+').indexOf('+p+')+1)'}; - -stdlib.LEN = stdlib.LENGTH = function(s) {return '('+s+'+"").length';}; -//stdlib.LENGTH = function(s) {return '('+s+').length'}; - -stdlib.LOWER = stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} -//stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} - - -// LTRIM - -stdlib.GREATEST = function(){ - return 'Math.max('+Array.prototype.join.call(arguments, ',')+')' -}; - -stdlib.LEAST = function(){ - return 'Math.min('+Array.prototype.join.call(arguments, ',')+')' -}; - -stdlib.MID = function(a,b,c){ - if(arguments.length == 2) return '('+a+').substr('+b+'-1)'; - else if(arguments.length == 3) return '('+a+').substr('+b+'-1,'+c+')'; -}; - -stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?null:'+a+')'}; - -stdlib.POWER = function(a,b) {return 'Math.pow('+a+','+b+')'}; - -stdlib.RANDOM = function(r) { - if(arguments.length == 0) { - return 'Math.random()'; - } else { - return '(Math.random()*('+r+')|0)'; - } -} -stdlib.ROUND = function(s,d) { - if(arguments.length == 2) { - return 'Math.round('+s+'*Math.pow(10,'+d+'))/Math.pow(10,'+d+')'; - } else { - return 'Math.round('+s+')'; - } -} -stdlib.SQRT = function(s) {return 'Math.sqrt('+s+')'}; - -stdlib.TRIM = function(s) {return s+'.trim()'}; - -stdlib.UPPER = stdlib.UCASE = function(s) {return '('+s+').toUpperCase()';} -//stdlib.UCASE = function(s) {return '('+s+').toUpperCase()';} -//REPLACE -// RTRIM -// SUBSTR -// TRIM -//REPLACE -// RTRIM -// SUBSTR -// TRIM - - -// Aggregator for joining strings -alasql.aggr.GROUP_CONCAT = function(v,s){ - if(typeof s == "undefined") return v; else return s+','+v; -}; - - - - -// -// -// SQL and JS DateTime functions -// -// - - - -/* -// -// CASE for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.CaseValue = function(params) { return yy.extend(this, params); }; -yy.CaseValue.prototype.toString = function() { - var s = 'CASE '; - if(this.expression) s += this.expression.toString(); - if(this.whens) { - s += this.whens.map(function(w) { return ' WHEN '+ - w.when.toString() + ' THEN '+w.then.toString()}).join(); - } - s += ' END'; - return s; -}; - -yy.CaseValue.prototype.findAggregator = function (query){ -// console.log(this.toString()); - if(this.expression && this.expression.findAggregator) this.expression.findAggregator(query); - if(this.whens && this.whens.length > 0) { - this.whens.forEach(function(w) { - if(w.when.findAggregator) w.when.findAggregator(query); - if(w.then.findAggregator) w.then.findAggregator(query); - }); - } -}; - -yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { - - var s = '(function('+context+',params,alasql){var r;'; - if(this.expression) { -// this.expression.toJavaScript(context, tableid) - s += 'v='+this.expression.toJavaScript(context, tableid, defcols)+';'; - s += (this.whens||[]).map(function(w) { return ' if(v=='+w.when.toJavaScript(context,tableid, defcols) - +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); - if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid, defcols)+'}'; - } else { - s += (this.whens||[]).map(function(w) { return ' if('+w.when.toJavaScript(context,tableid, defcols) - +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); - if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid,defcols)+'}'; - } - s += 'return r;})('+context+',params,alasql)'; - - return s; -}; - -/* -// -// JSON for Alasql.js -// Date: 19.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Json = function (params) { return yy.extend(this, params); } -yy.Json.prototype.toString = function() { - var s = '@'; - s += JSONtoString(this.value); - s += ''; - return s; -}; - -var JSONtoString = alasql.utils.JSONtoString = function (obj) { - var s = ''; - if(typeof obj == "string") s = '"'+obj+'"'; - else if(typeof obj == "number") s = obj; - else if(typeof obj == "boolean") s = obj; - else if(typeof obj == "object") { - if(obj instanceof Array) { - s += '['+obj.map(function(b){ - return JSONtoString(b); - }).join(',')+']'; - } else if(!obj.toJavaScript || obj instanceof yy.Json) { - // to prevent recursion - s = '{'; - var ss = []; - for(var k in obj) { - var s1 = ''; - if(typeof k == "string") s1 += '"'+k+'"'; - else if(typeof k == "number") s1 += k; - else if(typeof k == "boolean") s1 += k; - else { - throw new Error('THis is not ES6... no expressions on left side yet'); - } - s1 += ':'+JSONtoString(obj[k]); - ss.push(s1); - }; - s += ss.join(',')+'}'; - } else if(obj.toString) { - s = obj.toString(); - } else { - throw new Error('1Can not show JSON object '+JSON.stringify(obj)); - } - } else { - throw new Error('2Can not show JSON object '+JSON.stringify(obj)); - } - - return s; -} - - - -function JSONtoJavaScript(obj, context, tableid, defcols) { - var s = ''; - if(typeof obj == "string") s = '"'+obj+'"'; - else if(typeof obj == "number") s = '('+obj+')'; - else if(typeof obj == "boolean") s = obj; - else if(typeof obj == "object") { - if(obj instanceof Array) { - s += '['+obj.map(function(b){ - return JSONtoJavaScript(b, context, tableid, defcols); - }).join(',')+']'; - } else if(!obj.toJavaScript || obj instanceof yy.Json) { - // to prevent recursion - s = '{'; - var ss = []; - for(var k in obj) { - var s1 = ''; - if(typeof k == "string") s1 += '"'+k+'"'; - else if(typeof k == "number") s1 += k; - else if(typeof k == "boolean") s1 += k; - else { - throw new Error('THis is not ES6... no expressions on left side yet'); - } - s1 += ':'+JSONtoJavaScript(obj[k], context, tableid, defcols); - ss.push(s1); - }; - s += ss.join(',')+'}'; - } else if(obj.toJavaScript) { - s = obj.toJavaScript(context, tableid, defcols); - } else { - throw new Error('1Can not parse JSON object '+JSON.stringify(obj)); - } - } else { - throw new Error('2Can not parse JSON object '+JSON.stringify(obj)); - } - - return s; -} - -yy.Json.prototype.toJavaScript = function(context, tableid, defcols) { - // TODO reod - return JSONtoJavaScript(this.value,context, tableid, defcols); -} - - - - -/* -// -// CAST and CONVERT functions -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Convert = function(params) { return yy.extend(this, params); }; -yy.Convert.prototype.toString = function() { - var s = 'CONVERT('; - s += this.dbtypeid; - if(typeof this.dbsize != 'undefined') { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+dbprecision; - s += ')'; - } - s += ','+this.expression.toString(); - if(this.style) s += ','+this.style; - s += ')'; - return s; -}; -yy.Convert.prototype.toJavaScript = function(context, tableid, defcols) { - -// if(this.style) { - return 'alasql.stdfn.CONVERT('+this.expression.toJavaScript(context, tableid, defcols) - +',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+',style:'+ - this.style+'})'; -// } -/* - if(this.dbtypeid == 'INT') { - return '(('+this.expression.toJavaScript(context, tableid, defcols)+')|0)'; - } if(this.dbtypeid == 'STRING') { - return '(""+'+this.expression.toJavaScript(context, tableid, defcols)+')'; - } if(this.dbtypeid == 'NUMBER') { - return '(+('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } if(this.dbtypeid == 'DATE') { - if(alasql.options.datetimeformat == 'javascript') { - return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } else if(alasql.options.datetimeformat == 'sql') { - return this.expression.toJavaScript(context, tableid, defcols); - } - } if(this.dbtypeid == 'DATETIME') { - if(alasql.options.datetimeformat == 'javascript') { - return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } else if(alasql.options.datetimeformat == 'sql') { - return this.expression.toJavaScript(context, tableid, defcols); - } - } else { - - }; -*/ - throw new Error('There is not such type conversion for '+this.toString()); -}; - -/** - Convert one type to another - */ -alasql.stdfn.CONVERT = function(value, args) { - var val = value; -// console.log(args); - if(args.style) { - // TODO 9,109, 20,120,21,121,126,130,131 conversions - var t; - if(/\d{8}/.test(val)) t = new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2)); - else t = new Date(val); - - if(args.style == 1) { // mm/dd/yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+("0"+t.getYear()).substr(-2); - } else if(args.style == 2) { // yy.mm.dd - val = ("0"+t.getYear()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); - } else if(args.style == 3) { // dd/mm/yy - val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getYear()).substr(-2); - } else if(args.style == 4) { // dd.mm.yy - val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getYear()).substr(-2); - } else if(args.style == 5) { // dd-mm-yy - val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getYear()).substr(-2); - } else if(args.style == 6) { // dd mon yy - val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+("0"+t.getYear()).substr(-2); - } else if(args.style == 7) { // Mon dd,yy - val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+("0"+t.getYear()).substr(-2); - } else if(args.style == 8) { // hh:mm:ss - val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); - - } else if(args.style == 10) { // mm-dd-yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+("0"+t.getYear()).substr(-2); - } else if(args.style == 11) { // yy/mm/dd - val = ("0"+t.getYear()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); - } else if(args.style == 12) { // yymmdd - val = ("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); - - - } else if(args.style == 101) { // mm/dd/yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+t.getFullYear(); - } else if(args.style == 102) { // yy.mm.dd - val = t.getFullYear()+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); - } else if(args.style == 103) { // dd/mm/yy - val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+t.getFullYear(); - } else if(args.style == 104) { // dd.mm.yy - val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+t.getFullYear(); - } else if(args.style == 105) { // dd-mm-yy - val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+t.getFullYear(); - } else if(args.style == 106) { // dd mon yy - val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+t.getFullYear(); - } else if(args.style == 107) { // Mon dd,yy - val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+t.getFullYear(); - } else if(args.style == 108) { // hh:mm:ss - val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); - - } else if(args.style == 110) { // mm-dd-yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+t.getFullYear(); - } else if(args.style == 111) { // yy/mm/dd - val = t.getFullYear()+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); - } else if(args.style == 112) { // yymmdd - val = t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); - } else { - throw new Error('The CONVERT style '+args.style+' is not realized yet.'); - } - }; - - if(args.dbtypeid == 'Date') { - return new Date(val); - } else if(args.dbtypeid.toUpperCase() == 'DATE') { - var d = new Date(val); - var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); - return s; - } else if(args.dbtypeid == 'DATETIME') { - var d = new Date(val); - var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); - s += " "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2); - s += '.'+("00"+d.getMilliseconds()).substr(-3) - return s; - } else if(args.dbtypeid.toUpperCase() == 'STRING') { - return ""+val; - } else if(args.dbtypeid.toUpperCase() == 'NUMBER' || args.dbtypeid == 'FLOAT') { - return +val; - } else if(args.dbtypeid.toUpperCase() == 'MONEY') { - var m = +val; - return (m|0)+((m*100)%100)/100; - } else if(args.dbtypeid.toUpperCase() == 'BOOLEAN') { - return !!val; - } else if(args.dbtypeid.toUpperCase() == 'INT') { - return val|0; - } else if(args.dbtypeid.toUpperCase() == 'VARCHAR' || args.dbtypeid == 'NVARCHAR') { - if(args.dbsize) return (""+val).substr(0,args.dbsize); - else return ""+val; - } else if(args.dbtypeid.toUpperCase() == 'CHAR' || args.dbtypeid == 'NCHAR') { - return (val+(new Array(args.dbsize+1).join(" "))).substr(0,args.dbsize); - //else return ""+val.substr(0,1); - } -}; - - - -/* -// -// CREATE TABLE for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.ColumnDef = function (params) { return yy.extend(this, params); } -yy.ColumnDef.prototype.toString = function() { - var s = this.columnid; - if(this.dbtypeid) s += ' '+this.dbtypeid; - if(this.dbsize) { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+this.dbprecision; - s += ')'; - }; - if(this.primarykey) s += ' PRIMARY KEY'; - if(this.notnull) s += ' NOT NULL'; - return s; -} - -yy.CreateTable = function (params) { return yy.extend(this, params); } -yy.CreateTable.prototype.toString = function() { - var s = K('CREATE'); - if(this.temporary) s+=' '+K('TEMPORARY'); - if(this.view) s += ' '+K('VIEW'); - else s += ' '+K('TABLE'); - if(this.ifnotexists) s += ' '+K('IF')+' '+K('NOT')+' '+K('EXISTS'); - s += ' '+this.table.toString(); - if(this.viewcolumns) { - s += '('+this.viewcolumns.map(function(vcol){ - return vcol.toString(); - }).join(',')+')'; - } - if(this.as) s += ' '+K('AS')+' '+L(this.as); - else { - var ss = this.columns.map(function(col){ - return col.toString(); - }); - s += ' ('+NL()+ID()+ss.join(','+NL()+ID())+')'; - }; - if(this.view && this.select) { - s += ' AS '+this.select.toString(); - } - return s; -} - -// CREATE TABLE -//yy.CreateTable.prototype.compile = returnUndefined; -yy.CreateTable.prototype.execute = function (databaseid, params, cb) { -// var self = this; - var db = alasql.databases[this.table.databaseid || databaseid]; - - var tableid = this.table.tableid; - if(!tableid) { - throw new Error('Table name is not defined'); - } - -// var ifnotexists = this.ifnotexists; - var columns = this.columns; - // if(false) { - // if(!columns) { - // throw new Error('Columns are not defined'); - // } - // } - var constraints = this.constraints||[]; -// console.log(this); - - // IF NOT EXISTS - if(this.ifnotexists && db.tables[tableid]) return 0; - - if(db.tables[tableid]) { - throw new Error('Can not create table \''+tableid - +'\', because it already exists in the database \''+db.databaseid+'\''); - } - - var table = db.tables[tableid] = new alasql.Table(); // TODO Can use special object? - - var ss = []; - if(this.columns) { - this.columns.forEach(function(col) { - var dbtypeid = col.dbtypeid; - if(!alasql.fn[dbtypeid]) dbtypeid = dbtypeid.toUpperCase(); - var newcol = { - columnid: col.columnid, - dbtypeid: dbtypeid // TODO: Add types table - }; - - if(col.default) { - ss.push('\''+col.columnid+'\':'+col.default.toJavaScript()); - } - - table.columns.push(newcol); - table.xcolumns[newcol.columnid] = newcol; - - // Check for primary key - if(col.primarykey) { - var pk = table.pk = {}; - pk.columns = [col.columnid]; - pk.onrightfns = 'r[\''+col.columnid+'\']'; - pk.onrightfn = new Function("r",'return '+pk.onrightfns); - pk.hh = hash(pk.onrightfns); - table.indices[pk.hh] = {}; - }; - - }); - }; - table.defaultfns = ss.join(','); - - -// if(constraints) { - constraints.forEach(function(con) { - //console.log(con, con.columns); - if(con.type == 'PRIMARY KEY') { - if(table.pk) { - throw new Error('Primary key already exists'); - } - var pk = table.pk = {}; - pk.columns = con.columns; - pk.onrightfns = pk.columns.map(function(columnid){ - return 'r[\''+columnid+'\']' - }).join("+'`'+"); - pk.onrightfn = new Function("r",'return '+pk.onrightfns); - pk.hh = hash(pk.onrightfns); - table.indices[pk.hh] = {}; - } - }); - - if(this.view && this.viewcolumns) { - var self = this; - this.viewcolumns.forEach(function(vcol,idx){ - self.select.columns[idx].as = vcol.columnid; - }); - } - -// console.log(100,db.engineid); - if(db.engineid) { -// console.log(101,db.engineid); - return alasql.engines[db.engineid].createTable(this.table.databaseid || databaseid, tableid, this.ifnotexists, cb); -// console.log('createtable',res1); -// return res1; - } - -// } -// if(table.pk) { - table.insert = function(r) { - if(this.pk) { - var pk = this.pk; - var addr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][addr] != 'undefined') { - throw new Error('Cannot insert record, because it already exists in primary key'); - } else { - table.data.push(r); - this.indices[pk.hh][addr]=r; - }; - } else { - table.data.push(r); - } - }; - - table.delete = function(i) { - if(this.pk) { - var r = this.data[i]; - var pk = this.pk; - var addr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][addr] == 'undefined') { - throw new Error('Something wrong with index on table'); - } else { - this.indices[pk.hh][addr]=undefined; - }; - } - }; - - table.deleteall = function() { - this.data.length = 0; - if(this.pk) { -// var r = this.data[i]; - this.indices[this.pk.hh] = {}; - } - }; - - table.update = function(assignfn, i, params) { - if(this.pk) { - var r = this.data[i]; - var pk = this.pk; - var addr = pk.onrightfn(r,params); - if(typeof this.indices[pk.hh][addr] == 'undefined') { - throw new Error('Something wrong with index on table'); - } else { - this.indices[pk.hh][addr]=undefined; - assignfn(r,params,alasql); - var newaddr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][newaddr] != 'undefined') { - throw new Error('Record already exists'); - } else { - this.indices[pk.hh][newaddr] = r; - } - } - - } else { - assignfn(this.data[i],params,alasql); - }; - - }; - - if(this.view && this.select) { - table.view = true; -// console.log(this.select.toString()); -// console.log('this.table.databaseid',this.table.databaseid); -// console.log(this.select.compile(this.table.databaseid||databaseid)); - table.select = this.select.compile(this.table.databaseid||databaseid); - } -// console.log(databaseid); -// console.log(db.databaseid,db.tables); -// console.log(table); - if(cb) cb(1); - - return 1; -}; - - - - -// -// Date functions -// -// (c) 2014, Andrey Gershun -// - -/** Standard JavaScript data types */ - -alasql.fn.Date = Object; -alasql.fn.Date = Date; -alasql.fn.Number = Number; -alasql.fn.String = String; -alasql.fn.Boolean = Boolean; - -/** Extend Object with properties */ -stdfn.EXTEND = alasql.utils.extend; - - -stdfn.CHAR = String.fromCharCode.bind(String); -stdfn.ASCII = function(a) { - return a.charCodeAt(0); -}; - -/** - Return first non-null argument - See https://msdn.microsoft.com/en-us/library/ms190349.aspx -*/ -stdfn.COALESCE = function() { - for(var i=0;i 0) { - for(var i=0, ilen=table.data.length; i 0) { - for(var i=0, ilen=table.data.length; i=0) { - q += "+"+values[idx].toJavaScript(); - } else if (alasql.fn[table.xcolumns[col.columnid].dbtypeid]) { - q += "(new "+table.xcolumns[col.columnid].dbtypeid+"("; - q += values[idx].toJavaScript(); - q += "))"; - } else { - q += values[idx].toJavaScript(); - }; - } else { - q += values[idx].toJavaScript(); - } - ss.push(q); - - }); - } else { -// var table = db.tables[tableid]; -// console.log('table1', db, self); -//console.log(111, table.columns); -//console.log(74,table); - if((values instanceof Array) && table.columns && table.columns.length > 0) { - table.columns.forEach(function(col, idx){ - - var q = '\''+col.columnid +'\':'; -// var val = values[idx].toJavaScript(); - - if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid) >=0) { - q += "+"+values[idx].toJavaScript(); - } else if (alasql.fn[col.dbtypeid]) { - q += "(new "+col.dbtypeid+"("; - q += values[idx].toJavaScript(); - q += "))"; - } else { - q += values[idx].toJavaScript(); - } - - // if(table.xcolumns && table.xcolumns[col.columnid] && - // (table.xcolumns[col.columnid].dbtypeid == "DATE" || - // table.xcolumns[col.columnid].dbtypeid == "DATETIME" - // )) { - // val = "(new Date("+val+"))"; - // } - // || table.xcolumns[col.columnid].dbtypeid == "FLOAT" - // || table.xcolumns[col.columnid].dbtypeid == "NUMBER" - // || table.xcolumns[col.columnid].dbtypeid == "MONEY" - // )) q += '+'; - // console.log(self.values[idx].toString()); - //console.log(self); -// q += val; - - // if(table.xcolumns && table.xcolumns[col.columnid] && table.xcolumns[col.columnid].dbtypeid == "INT") q += '|0'; - ss.push(q); - - // console.log(fld); - // TODO: type checking and conversions - // rec[fld.fldid] = eval(self.insertExpression[idx].toJavaScript('','')); - // console.log(rec[fld.fldid]); - // if(rec[fld.fldid] == "NULL") rec[fld.fldid] = undefined; - - // if(table.xflds[fld.fldid].dbtypeid == "INT") rec[fld.fldid] = +rec[fld.fldid]|0; - // else if(table.xflds[fld.fldid].dbtypeid == "FLOAT" || table.xflds[fld.fldid].dbtypeid == "MONEY" ) - // rec[fld.fldid] = +rec[fld.fldid]; - }); - } else { -// console.log(222,values); -// sw = 'var w='+JSONtoJavaScript(values)+';for(var k in w){r[k]=w[k]};'; - sw = JSONtoJavaScript(values); - } - } -//console.log(ss); - - if(db.tables[tableid].defaultfns) ss.unshift(db.tables[tableid].defaultfns); - if(sw) { - s += 'a='+sw+';'; - } else { - s += 'a={'+ss.join(',')+'};'; - } -// s += 'db.tables[\''+tableid+'\'].insert(r);'; - if(db.tables[tableid].insert) { - s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].insert(a);'; - } else { - s += 'aa.push(a);'; - } - }); - - s33 = s3+s; - - if(db.tables[tableid].insert) { -// s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].insert(r);'; - } else { - s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].data='+ - 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].data.concat(aa);'; - } - - s += 'return '+self.values.length; - -//console.log(s); - var insertfn = new Function('db, params, alasql',s3+s); - -// INSERT INTO table SELECT - - } else if(this.select) { - selectfn = this.select.compile(databaseid); - if(db.engineid && alasql.engines[db.engineid].intoTable) { - var statement = function(params, cb) { - var aa = selectfn(params); - var res = alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null, cb); - return res; - }; - return statement; - } else { - var insertfn = function(db, params, alasql) { - var res = selectfn(params); - if(db.tables[tableid].insert) { - // If insert() function exists (issue #92) - for(var i=0,ilen=res.length;i>>>>>> release/0.0.47 -}; - - -yy.Select.prototype.compileOrder = function (query) { - var self = this; - if(this.order) { -// console.log(990, this.order); - if(this.order && this.order.length == 1 && this.order[0].expression - && typeof this.order[0].expression == "function") { -// console.log(991, this.order[0]); - var func = this.order[0].expression; -// console.log(994, func); - return function(a,b){ - var ra = func(a),rb = func(b); - if(ra>rb) return 1; - if(ra==rb) return 0; - return -1; - } - }; - - var s = ''; - var sk = ''; - this.order.forEach(function(ord,idx){ - // console.log(ord instanceof yy.Expression); - // console.log(ord.toJavaScript('a','')); - // console.log(ord.expression instanceof yy.Column); - - // Date conversion - var dg = ''; -//console.log(ord.expression, ord.expression instanceof yy.NumValue); - if(ord.expression instanceof yy.NumValue) { - ord.expression = self.columns[ord.expression.value-1]; - }; - - if(ord.expression instanceof yy.Column) { - var columnid = ord.expression.columnid; - if(query.xcolumns[columnid]) { - var dbtypeid = query.xcolumns[columnid].dbtypeid; - if( dbtypeid == 'DATE' || dbtypeid == 'DATETIME') dg = '.valueOf()'; - // TODO Add other types mapping - } else { - if(alasql.options.valueof) dg = '.valueOf()'; // TODO Check - } - // COLLATE NOCASE - if(ord.nocase) dg += '.toUpperCase()'; - - s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; - s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; - - } else { - dg = '.valueOf()'; - // COLLATE NOCASE - if(ord.nocase) dg += '.toUpperCase()'; - s += 'if('+ord.toJavaScript('a','')+dg+(ord.direction == 'ASC'?'>':'<')+ord.toJavaScript('b','')+dg+')return 1;'; - s += 'if('+ord.toJavaScript('a','')+dg+'=='+ord.toJavaScript('b','')+dg+'){'; - } - -// if(columnid == '_') { -// s += 'if(a'+dg+(ord.direction == 'ASC'?'>':'<')+'b'+dg+')return 1;'; -// s += 'if(a'+dg+'==b'+dg+'){'; -// } else { - // TODO Add date comparision - // s += 'if(a[\''+columnid+"']"+dg+(ord.direction == 'ASC'?'>':'<')+'b[\''+columnid+"']"+dg+')return 1;'; - // s += 'if(a[\''+columnid+"']"+dg+'==b[\''+columnid+"']"+dg+'){'; -// } - sk += '}'; - }); - s += 'return 0;'; - s += sk+'return -1'; - query.orderfns = s; -//console.log(s); - return new Function('a,b',s); - }; -}; - - - -/* -// -// ROLLUP(), CUBE(), GROUPING SETS() for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -/** - Calculate ROLLUP() combination - */ - -var rollup = function (a,query) { - var rr = []; - var mask = 0; - var glen = a.length; - for(var g=0;g'+gv[t]+'<',gv[t]=='',typeof gv[t]); -// console.log(gv[t].toString()); -//console.log('+++'); - res = res.map(function(r){ - query.groupColumns[escapeq(gv[t].toString())] = escapeq(gv[t].toString()); - return r.concat(escapeq(gv[t].toString()) - +'\t' - +gv[t].toJavaScript('p',query.sources[0].alias,query.defcols)) - }); -// res = res.concat(gv[t]); - }; - - // switch(gv[t].t) { - // case 'plain': - // res = res.map(function(r){return r.concat(gv[t].p)}); - - // break; - // case 'rollup': res = cartes(res,rollup(gv[t].p)); break; - // case 'cube': res = cartes(res,cube(gv[t].p)); break; - // case 'groupingsets': res = cartes(res,groupingsets(gv[t].p)); break; - // default: res = res.concat(gv[t]); - // } - }; - return res; - } else if(gv instanceof yy.FuncValue) { -// console.log(gv); - query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); - return [gv.toString()+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; - } else if(gv instanceof yy.Column) { - gv.nick = escapeq(gv.columnid); - query.groupColumns[gv.nick] = gv.nick; - return [gv.nick+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; // Is this ever happened? - // } else if(gv instanceof yy.Expression) { - // return [gv.columnid]; // Is this ever happened? - } else { - query.groupColumns[escapeq(gv.toString())] = escapeq(gv.toString()); - return [escapeq(gv.toString())+'\t'+gv.toJavaScript('p',query.sources[0].alias,query.defcols)]; -// throw new Error('Single argument in the group without array'); - }; - - - // switch(gv.t) { - // case 'plain': return gv.p; break; - // case 'rollup': return rollup(gv.p); break; - // case 'cube': return cube(gv.p); break; - // case 'groupingsets': return groupingsets(gv.p); break; - // default: return [gv];//return decartes(gv.p); - // } - // return gv; -}; - - - - -/* -// -// Select run-time part for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Select.prototype.compileDefCols = function(query, databaseid) { -// console.log('defcols'); - var defcols = {}; - if(this.from) { - this.from.forEach(function(fr){ - if(fr instanceof yy.Table) { - var alias = fr.as || fr.tableid; -// console.log(alasql.databases[fr.databaseid || databaseid]); -// console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); -//console.log(alasql.databases[fr.databaseid || databaseid].tables, fr.tableid); -//console.log(alasql.databases); - var table = alasql.databases[fr.databaseid || databaseid].tables[fr.tableid]; -//console.log(table); - if(table.columns) { - table.columns.forEach(function(col){ - if(defcols[col.columnid]) { - defcols[col.columnid] = '-'; // Ambigous - } else { - defcols[col.columnid] = alias; - } - }); - } - } else if(fr instanceof yy.Select) { - - } else if(fr instanceof yy.ParamValue) { - - } else if(fr instanceof yy.VarValue) { - - } else if(fr instanceof yy.FuncValue) { - - } else if(fr instanceof yy.FromData) { - - } else { - throw new Error('Unknown type of FROM clause'); - }; - }); - }; - - if(this.joins) { - this.joins.forEach(function(jn){ -// console.log(jn); - if(jn.table) { - var alias = jn.table.tableid; - if(jn.as) alias = jn.as; - var alias = jn.as || jn.table.tableid; - var table = alasql.databases[jn.table.databaseid || databaseid].tables[jn.table.tableid]; -// console.log(jn.table.tableid, jn.table.databaseid); - if(table.columns) { - table.columns.forEach(function(col){ - if(defcols[col.columnid]) { - defcols[col.columnid] = '-'; // Ambigous - } else { - defcols[col.columnid] = alias; - } - }); - } - } else if(jn.select) { - - } else if(jn.param) { - - } else if(jn.func) { - - } else { - throw new Error('Unknown type of FROM clause'); - }; - }); - }; - // for(var k in defcols) { - // if(defcols[k] == '-') defcols[k] = undefined; - // } -// console.log(defcols); - return defcols; -} - -/* -// -// UNION for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -// SELECT UNION statement - -yy.Union = function (params) { return yy.extend(this, params); } -yy.Union.prototype.toString = function () { - return K('UNION'); -}; - -yy.Union.prototype.compile = function (tableid) { - return null; -}; - -/* -// -// CROSS AND OUTER APPLY for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Apply = function (params) { return yy.extend(this, params); } -yy.Apply.prototype.toString = function () { - var s = K(this.applymode)+' '+K('APPLY')+' ('; - s += this.select.toString()+')'; - if(this.as) s += ' '+K('AS')+' '+L(this.as); - return s; -}; - - - -/* -// -// CROSS AND OUTER APPLY for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Over = function (params) { return yy.extend(this, params); } -yy.Over.prototype.toString = function () { - var s = K('OVER')+' ('; - if(this.partition) { - s += K('PARTITION')+' '+K('BY')+' '+this.partition.toString(); - if(this.order) s+=' '; - } - if(this.order) { - s += K('ORDER')+' '+K('BY')+' '+this.order.toString(); - } - s += ')'; - return s; -}; - - - -/* -// -// Expressions for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.ExpressionStatement = function(params) { return yy.extend(this, params); }; -yy.ExpressionStatement.prototype.toString = function() { - return this.expression.toString(); -}; - -yy.ExpressionStatement.prototype.execute = function (databaseid, params, cb) { - if(this.expression) { -// console.log(this.expression.toJavaScript('','', null)); -// console.log(this.expression.toJavaScript('','', null)); - var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('','', null)); - var res = expr(params,alasql); - if(cb) res = cb(res); - return res; - } -} - -yy.Expression = function(params) { return yy.extend(this, params); }; -yy.Expression.prototype.toString = function() { - var s = this.expression.toString(); - if(this.order) s += ' '+this.order.toString(); - if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); - return s; -}; -yy.Expression.prototype.findAggregator = function (query){ - if(this.expression.findAggregator) this.expression.findAggregator(query); -}; - -yy.Expression.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); - if(this.expression.reduced) return 'true'; - return this.expression.toJavaScript(context, tableid, defcols); -}; -yy.Expression.prototype.compile = function(context, tableid, defcols){ -// console.log('Expression',this); - if(this.reduced) return returnTrue(); - return new Function('p','return '+this.toJavaScript(context, tableid, defcols)); -}; - - -yy.JavaScript = function(params) { return yy.extend(this, params); }; -yy.JavaScript.prototype.toString = function() { - var s = '``'+this.value+'``'; - return s; -}; - -yy.JavaScript.prototype.toJavaScript = function(context, tableid, defcols) { -// console.log('Expression',this); - return '('+this.value+')'; -}; -yy.JavaScript.prototype.execute = function (databaseid, params, cb) { - var res = 1; - var expr = new Function("params,alasql,p",this.value); - expr(params,alasql); - if(cb) res = cb(res); - return res; -} - - -yy.Literal = function (params) { return yy.extend(this, params); } -yy.Literal.prototype.toString = function() { - var s = this.value; - if(this.value1) s = this.value1+'.'+s; -// else s = tableid+'.'+s; - return L(s); -} - - -yy.Join = function (params) { return yy.extend(this, params); } -yy.Join.prototype.toString = function() { - var s = NL()+ID(); - if(this.joinmode) s += K(this.joinmode)+' '; - s += K('JOIN')+this.table.toString(); - return s; -} - -//yy.Join.prototype.toJavaScript = function(context, tableid) { -// return 'JOIN'+this.table.toString(); -//} - - -yy.Table = function (params) { return yy.extend(this, params); } -yy.Table.prototype.toString = function() { - var s = this.tableid; -// if(this.joinmode) - if(this.databaseid) s = this.databaseid+'.'+s; - return L(s); -}; - - -yy.View = function (params) { return yy.extend(this, params); } -yy.View.prototype.toString = function() { - var s = this.viewid; -// if(this.joinmode) - if(this.databaseid) s = this.databaseid+'.'+s; - return L(s); -}; - - -yy.Op = function (params) { return yy.extend(this, params); } -yy.Op.prototype.toString = function() { - if(this.op == 'IN' || this.op == 'NOT IN') { - return this.left.toString()+" "+P(this.op)+" ("+this.right.toString()+")"; - } - if(this.allsome) { - return this.left.toString()+" "+P(this.op)+" "+this.allsome+' ('+this.right.toString()+')'; - } - if(this.op == '->') { - var s = this.left.toString()+"->"; -// console.log(this.right); - if(typeof this.right != 'string' && typeof this.right != 'number' ) s += '('; - s += this.right.toString(); - if(typeof this.right != 'string' && typeof this.right != 'number' ) s += ')'; - return s; - } - return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+' ':'')+this.right.toString(); -}; - -yy.Op.prototype.findAggregator = function (query){ -// console.log(this.toString()); - if(this.left && this.left.findAggregator) this.left.findAggregator(query); - // Do not go in > ALL - if(this.right && this.right.findAggregator && (!this.allsome)) { - this.right.findAggregator(query); - } -}; - -yy.Op.prototype.toType = function(tableid) { - if(['-','*','/','%','^'].indexOf(this.op) >-1) return 'number'; - if(this.op == '+') { - if(this.left.toType(tableid) == 'string' || this.right.toType(tableid) == 'string') return 'string'; - if(this.left.toType(tableid) == 'number' || this.right.toType(tableid) == 'number') return 'number'; - }; - if(['AND','OR','NOT','=','==','===', '!=','!==','!===','>','>=','<','<=', 'IN', 'NOT IN', 'LIKE', 'NOT LIKE'].indexOf(this.op) >-1 ) return 'boolean'; - if(this.op == 'BETWEEN' || this.op == 'NOT BETWEEN' || this.op == 'IS NULL' || this.op == 'IS NOT NULL') return 'boolean'; - if(this.allsome) return 'boolean'; - if(!this.op) return this.left.toType(); - - return 'unknown'; -}; - -yy.Op.prototype.toJavaScript = function(context,tableid,defcols) { -// console.log(this); - var op = this.op; - if(this.op == '=') op = '==='; - else if(this.op == '<>') op = '!='; - else if(this.op == 'OR') op = '||'; - - if(this.op == '->') { -// console.log(this.right, typeof this.right); - if(typeof this.right == "string") { - return this.left.toJavaScript(context,tableid, defcols)+'["'+this.right+'"]'; - } else if(typeof this.right == "number") { - return this.left.toJavaScript(context,tableid, defcols)+'['+this.right+']'; - } else if(this.right instanceof yy.FuncValue) { - ss = []; - if(!this.right.args || this.right.args.length == 0) { - } else { - var ss = this.right.args.map(function(arg){ - return arg.toJavaScript(context,tableid, defcols); - }); - } - return this.left.toJavaScript(context,tableid, defcols)+'[\''+this.right.funcid+'\']('+ - ss.join(',')+')'; - } else { - return this.left.toJavaScript(context,tableid, defcols)+'['+this.right.toJavaScript(context,tableid, defcols)+']'; - } - } - - if(this.op == 'IS') { - return '((typeof '+this.left.toJavaScript(context,tableid, defcols)+"=='undefined') == " - + '(typeof '+this.right.toJavaScript(context,tableid, defcols)+"=='undefined'))"; - } - - - if(this.op == '==') { - return 'alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+')'; - } - if(this.op == '===') { - return "(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; - } - - if(this.op == '!===') { - return "!(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; - } - - - if(this.op == '!==') { - return '(!alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+'))'; - } - - if(this.op == 'LIKE') { - var s = "("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ - ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g'))" -// console.log(s); - return s; - }; - - if(this.op == 'NOT LIKE') { - var s = "!(("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ - ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g')))" - return s; - }; - - if(this.op == 'BETWEEN') { - if(this.right instanceof yy.Op && this.right.op == 'AND') { - return '(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ - '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; - } else { - throw new Error('Wrong BETWEEN operator without AND part'); - } - }; - - if(this.op == 'NOT BETWEEN') { - if(this.right instanceof yy.Op && this.right.op == 'AND') { - return '!(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ - '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; - } else { - throw new Error('Wrong NOT BETWEEN operator without AND part'); - } - }; - - if(this.op == 'IN') { - if(this.right instanceof yy.Select ) { - var s = '('; -// s += 'this.query.queriesdata['+this.queriesidx+']'; - s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s += '.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; - return s; - } else if(this.right instanceof Array ) { -// if(this.right.length == 0) return 'false'; - var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; -//console.log(s); - return s; - } else { - var s = '('+this.right.toJavaScript(context,tableid, defcols)+'.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; - return s; -// } else { -// throw new Error('Wrong IN operator without SELECT part'); - } - }; - - - if(this.op == 'NOT IN') { - if(this.right instanceof yy.Select ) { - var s = '(' - //this.query.queriesdata['+this.queriesidx+'] - s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s +='.indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; - return s; - } else if(this.right instanceof Array ) { -// if(this.right.length == 0) return 'true'; - var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; - s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - - if(this.allsome == 'ALL') { - if(this.right instanceof yy.Select ) { -// var s = 'this.query.queriesdata['+this.queriesidx+']'; - var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - - s +='.every(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else if(this.right instanceof Array ) { - var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].every(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - - if(this.allsome == 'SOME' || this.allsome == 'ANY') { - if(this.right instanceof yy.Select ) { -// var s = 'this.query.queriesdata['+this.queriesidx+']'; - var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; - s+='.some(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else if(this.right instanceof Array ) { - var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].some(function(b){return ('; - s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; - return s; - } else { - throw new Error('Wrong NOT IN operator without SELECT part'); - } - }; - -// Special case for AND optimization (if reduced) - if(this.op == 'AND') { - if(this.left.reduced) { - if(this.right.reduced) { - return 'true'; - } else { - return this.right.toJavaScript(context,tableid, defcols); - } - } else if(this.right.reduced) { - return this.left.toJavaScript(context,tableid, defcols); - } - - // Otherwise process as regular operation (see below) - op = '&&'; - - } - - if(this.op == '^') { - return 'Math.pow('+this.left.toJavaScript(context,tableid, defcols) - +','+this.right.toJavaScript(context,tableid, defcols)+')'; - }; - - - // Change names -// console.log(this); - return '('+this.left.toJavaScript(context,tableid, defcols)+op+this.right.toJavaScript(context,tableid, defcols)+')'; -}; - - - -yy.VarValue = function (params) { return yy.extend(this, params); } -yy.VarValue.prototype.toString = function() { - return '@'+L(this.variable); -}; - -yy.VarValue.prototype.toType = function() { - return 'unknown'; -}; - -yy.VarValue.prototype.toJavaScript = function() { - return "alasql.vars['"+this.variable+"']"; -} - - -yy.NumValue = function (params) { return yy.extend(this, params); } -yy.NumValue.prototype.toString = function() { - return N(this.value.toString()); -}; - -yy.NumValue.prototype.toType = function() { - return 'number'; -}; - -yy.NumValue.prototype.toJavaScript = function() { - return ""+this.value; -} - - - - -yy.StringValue = function (params) { return yy.extend(this, params); } -yy.StringValue.prototype.toString = function() { - return "'"+S(this.value.toString())+"'"; -} - -yy.StringValue.prototype.toType = function() { - return 'string'; -} - -yy.StringValue.prototype.toJavaScript = function() { -// console.log("'"+doubleqq(this.value)+"'"); -// return "'"+doubleqq(this.value)+"'"; - return "'"+escapeq(this.value)+"'"; - -} - - -yy.LogicValue = function (params) { return yy.extend(this, params); } -yy.LogicValue.prototype.toString = function() { - return this.value?'TRUE':'FALSE'; -} - -yy.LogicValue.prototype.toType = function() { - return 'boolean'; -} - -yy.LogicValue.prototype.toJavaScript = function() { - return this.value?'true':'false'; -} - -yy.NullValue = function (params) { return yy.extend(this, params); } -yy.NullValue.prototype.toString = function() { - return 'NULL'; -} -yy.NullValue.prototype.toJavaScript = function() { - return 'undefined'; -} - -yy.ParamValue = function (params) { return yy.extend(this, params); } -yy.ParamValue.prototype.toString = function() { - return '$'+this.param; -} -yy.ParamValue.prototype.toJavaScript = function() { - if(typeof this.param == "string") return "params[\'"+this.param+"\']"; - else return "params["+this.param+"]"; -} - - - -yy.UniOp = function (params) { return yy.extend(this, params); } -yy.UniOp.prototype.toString = function() { - if(this.op == '-') return this.op+this.right.toString(); - if(this.op == '+') return this.op+this.right.toString(); - if(this.op == 'NOT') return this.op+'('+this.right.toString()+')'; - else if(this.op == null) return '('+this.right.toString()+')'; -}; - -yy.UniOp.prototype.findAggregator = function (query){ - if(this.right.findAggregator) this.right.findAggregator(query); -}; - -yy.UniOp.prototype.toType = function(tableid) { - if(this.op == '-') return 'number'; - if(this.op == '+') return 'number'; - if(this.op == 'NOT') return 'boolean'; -}; - -yy.UniOp.prototype.toJavaScript = function(context, tableid, defcols) { - if(this.op == '-') return "(-("+this.right.toJavaScript(context, tableid, defcols)+"))"; - if(this.op == '+') return "("+this.right.toJavaScript(context, tableid, defcols)+")"; - if(this.op == 'NOT') return '!('+this.right.toJavaScript(context, tableid, defcols)+')'; - else if(this.op == null) return '('+this.right.toJavaScript(context, tableid, defcols)+')'; -}; - - - -// yy.Star = function (params) { return yy.extend(this, params); } -// yy.Star.prototype.toString = function() { -// var s = this.fieldid; -// if(this.tableid) { -// s = this.tableid+'.'+s; -// if(this.databaseid) { -// s = this.databaseid+'.'+s; -// } -// } -// if(this.alias) s += ' AS '+this.alias; -// return s; -// } - -yy.Column = function(params) { return yy.extend(this, params); } -yy.Column.prototype.toString = function() { - var s; - if(this.columnid == +this.columnid) { - s = '['+this.columnid+']'; - } else { - s = this.columnid; - } - if(this.tableid) { - if(+this.columnid == this.columnid) { - s = this.tableid+s; - } else { - s = this.tableid+'.'+s; - } - if(this.databaseid) { - s = this.databaseid+'.'+s; - } - } -// if(this.alias) s += ' AS '+this.alias; - return s; -}; - -yy.Column.prototype.toJavaScript = function(context, tableid, defcols) { -// var s = this.value; -// var s = this.columnid; -// if(this.tableid) { -// s = this.tableid+'.'+s; -// // if(this.databaseid) { -// // s = this.databaseid+'.'+s; -// // } -// } else { -// s = tableid+'.'+s; -// } -//console.log('yy.Column',this, tableid); -// console.log(392,this.columnid); - var s = ''; - if(!this.tableid && tableid == '' && !defcols) { - if(this.columnid != '_') { - s = context+'[\''+this.columnid+'\']'; - } else { - if(context == 'g') { - s = 'g[\'_\']'; - } else { - s = context; - } - } - } else { - if(context == 'g') { - // if(this.columnid == '_') { - // } else { - s = 'g[\''+this.nick+'\']'; - // } - } else if(this.tableid) { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid) + '\'][\''+this.columnid+'\']'; - } else { - if(context == 'g') { - s = 'g[\'_\']'; - } else { - s = context+'[\''+(this.tableid) + '\']'; - } - } - } else if(defcols) { - var tbid = defcols[this.columnid]; - if(tbid == '-') { - throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables'); - } else if(tbid) { - if(this.columnid != '_') { - s = context+'[\''+(tbid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(tbid) + '\']'; - }; - } else { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(this.tableid || tableid) + '\']'; - }; - } - } else if(tableid == -1) { -// if(this.columnid != '') { - s = context+'[\''+this.columnid+'\']'; -// } else { -// s = context; -// } - } else { - if(this.columnid != '_') { - s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; - } else { - s = context+'[\''+(this.tableid || tableid) + '\']'; - } - } - } -// console.log(context,s); -// console.trace(new Error()); - return s; -} - - - - -yy.AggrValue = function(params){ return yy.extend(this, params); } -yy.AggrValue.prototype.toString = function() { - var s = ''; - if(this.aggregatorid == 'REDUCE') s += L(this.funcid)+'('; - else s += this.aggregatorid+'('; - if(this.distinct) s+= K('DISTINCT')+' '; - if(this.expression) s += this.expression.toString(); - s += ')'; - if(this.over) s += ' '+this.over.toString(); -// console.log(this.over); -// if(this.alias) s += ' AS '+this.alias; - return s; -}; -yy.AggrValue.prototype.findAggregator = function (query){ -// console.log('aggregator found',this.toString()); - -// var colas = this.as || this.toString(); - - var colas = escapeq(this.toString())+':'+query.selectGroup.length; -// console.log('findAgg',this); - - -/* var found = false; - for(var i=0;i-1) return 'number'; - if(['ARRAY'].indexOf(this.aggregatorid)>-1) return 'array'; - if(['FIRST','LAST' ].indexOf(this.aggregatorid)>-1) return this.expression.toType(); -} -yy.AggrValue.prototype.toJavaScript = function(context, tableid, defcols) { -// var s = 'alasql.functions.'+this.funcid+'('; -// if(this.expression) s += this.expression.toJavaScript(context, tableid); -// s += ')'; -// if(this.alias) s += ' AS '+this.alias; -// return s; -// var s = ''; -//if(this.as) console.log(499,this.as); -// var colas = this.as; - var colas = this.nick; - if(typeof colas == 'undefined') colas = this.toString(); - return 'g[\''+colas+'\']'; -} - - -yy.OrderExpression = function(params){ return yy.extend(this, params); } -yy.OrderExpression.prototype.toString = function() { - var s = this.expression.toString(); - if(this.order) s += ' '+this.order.toString(); - if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); - return s; -} - -yy.GroupExpression = function(params){ return yy.extend(this, params); } -yy.GroupExpression.prototype.toString = function() { - return this.type+'('+this.group.toString()+')'; -} - - -yy.ColumnDef = function (params) { return yy.extend(this, params); } -yy.ColumnDef.prototype.toString = function() { - var s = this.columnid; - if(this.dbtypeid) s += ' '+this.dbtypeid; - if(this.dbsize) { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+this.dbprecision; - s += ')'; - }; - if(this.primarykey) s += ' PRIMARY KEY'; - if(this.notnull) s += ' NOT NULL'; - return s; -} - - -// Alasql Linq library - -yy.FromData = function(params) { return yy.extend(this, params); }; -yy.FromData.prototype.toString = function() { - if(this.data) return K('DATA')+'('+((Math.random()*10e15)|0)+')'; - else return '?'; -}; -yy.FromData.prototype.toJavaScript = function(){ -// console.log('yy.FromData.prototype.toJavaScript'); -}; - -yy.Select.prototype.exec = function(params,cb) { - - if(this.preparams) params = this.preparams.concat(params); -// console.log(15,this.preparams); - - var databaseid = alasql.useid; - db = alasql.databases[databaseid]; - var sql = this.toString(); - var hh = hash(sql); -// console.log(sql); - - var statement = this.compile(databaseid); - if(!statement) return; - statement.sql = sql; - statement.dbversion = db.dbversion; - - // Secure sqlCache size - if (db.sqlCacheSize > alasql.MAXSQLCACHESIZE) { - db.resetSqlCache(); - } - db.sqlCacheSize++; - db.sqlCache[hh] = statement; - var res = alasql.res = statement(params, cb); - return res; -}; - -yy.Select.prototype.Select = function(){ - var self = this; - var agrs = []; - if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - self.columns = []; - - args.forEach(function(arg){ - if(typeof arg == "string") { - self.columns.push(new yy.Column({columnid: arg})); - } else if(typeof arg == "function") { - var pari = 0; - if(self.preparams) { - pari = self.preparams.length; - } else { - self.preparams = []; - } - self.preparams.push(arg); - self.columns.push(new yy.Column({columnid: "*", func:arg, param:pari})); - } else { - // Unknown type - } - }); - -// console.log(self instanceof yy.Select); - return self; -}; - -yy.Select.prototype.From = function(tableid){ - var self = this; - if(!self.from) self.from = []; - if(tableid instanceof Array) { - var pari = 0; - if(self.preparams) { - pari = self.preparams.length; - } else { - self.preparams = []; - } - self.preparams.push(tableid); - self.from.push(new yy.ParamValue({param:pari})); - } else if(typeof tableid =="string") { - self.from.push(new yy.Table({tableid:tableid})); - } else { - throw new Error('Unknown arguments in From() function') - } - return self; -} - -yy.Select.prototype.OrderBy = function(){ - var self = this; - var agrs = []; - - self.order = []; - - if(arguments.length == 0) { -// self.order.push(new yy.OrderExpression({expression: new yy.Column({columnid:"_"}), direction:'ASC'})); - args = ["_"]; - } else if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - if(args.length > 0) { - args.forEach(function(arg){ - var expr = new yy.Column({columnid:arg}); - if(typeof arg == 'function'){ - expr = arg; - } - self.order.push(new yy.OrderExpression({expression: expr, direction:'ASC'})); - }); - } - return self; -} - -yy.Select.prototype.Top = function(topnum){ - var self = this; - self.top = new yy.NumValue({value:topnum}); - return self; -}; - -yy.Select.prototype.GroupBy = function(){ - var self = this; - var agrs = []; - - if(arguments.length > 1) { - args = Array.prototype.slice.call(arguments);; - } else if(arguments.length == 1) { - if(arguments[0] instanceof Array) { - args = arguments[0]; - } else { - args = [arguments[0]]; - } - } else { - throw new Error('Wrong number of arguments of Select() function'); - } - - self.group = []; - - args.forEach(function(arg){ - var expr = new yy.Column({columnid:arg}); - self.group.push(expr); - }); - - return self; -}; - -yy.Select.prototype.Where = function(expr){ - var self = this; - if(typeof expr == 'function' ) { - self.where = expr; - } - return self; -}; - - - -/* -// -// Functions for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.FuncValue = function(params){ return yy.extend(this, params); } -yy.FuncValue.prototype.toString = function() { - var s = ''; - - if(alasql.fn[this.funcid]) s += this.funcid; - else if(alasql.aggr[this.funcid]) s += this.funcid; - else if(alasql.stdlib[this.funcid.toUpperCase()] || alasql.stdfn[this.funcid.toUpperCase()]) s += this.funcid.toUpperCase(); - - s += '('; - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toString(); - }).join(','); - }; - s += ')'; - if(this.as) s += ' AS '+this.as.toString(); -// if(this.alias) s += ' AS '+this.alias; - return s; -} - -yy.FuncValue.prototype.findAggregator = function(query) { - if(this.args && this.args.length > 0) { - this.args.forEach(function(arg){ - if(arg.findAggregator) arg.findAggregator(query); - }); - } -}; - -yy.FuncValue.prototype.toJavaScript = function(context, tableid, defcols) { - var s = ''; - var funcid = this.funcid; - // IF this is standard compile functions - if(alasql.fn[funcid]) { - // This is user-defined run-time function - // TODO arguments!!! -// var s = ''; - if(this.newid) s+= 'new '; - s += 'alasql.fn.'+this.funcid+'('; -// if(this.args) s += this.args.toJavaScript(context, tableid); - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toJavaScript(context, tableid, defcols); - }).join(','); - }; - s += ')'; - } else if(alasql.stdlib[funcid.toUpperCase()]) { - if(this.args && this.args.length > 0) { - s += alasql.stdlib[funcid.toUpperCase()].apply(this, this.args.map(function(arg) {return arg.toJavaScript(context, tableid)})); - } else { - s += alasql.stdlib[funcid.toUpperCase()](); - } - } else if(alasql.stdfn[funcid.toUpperCase()]) { - if(this.newid) s+= 'new '; - s += 'alasql.stdfn.'+this.funcid.toUpperCase()+'('; -// if(this.args) s += this.args.toJavaScript(context, tableid); - if(this.args && this.args.length > 0) { - s += this.args.map(function(arg){ - return arg.toJavaScript(context, tableid, defcols); - }).join(','); - }; - s += ')'; - } else { - // Aggregator - } -//console.log('userfn:',s,this); - -// if(this.alias) s += ' AS '+this.alias; - return s; -} - -// // Functions compiler -// nodes.FunctionValue.prototype.toJavaScript = function (context, tableid) { -// var s = ''; -// s += fns[this.name.toUpperCase()].apply(null,this.arguments.map(function(arg){ -// if(arg) return arg.toJavaScript(context, tableid); -// else return ''; -// })); -// return s; -// }; - -// -// SQL FUNCTIONS COMPILERS -// Based on SQLite functions - -// IMPORTANT: These are compiled functions - -//alasql.fn = {}; // Keep for compatibility -//alasql.userlib = alasql.fn; - -var stdlib = alasql.stdlib = {} -var stdfn = alasql.stdfn = {} - -stdlib.ABS = function(a) {return 'Math.abs('+a+')'}; -stdlib.CLONEDEEP = function(a) {return 'alasql.utils.cloneDeep('+a+')'}; -stdlib.IIF = function(a,b,c) { - if(arguments.length == 3) { - return '(('+a+')?('+b+'):('+c+'))'; - } else { - throw new Error('Number of arguments of IFF is not equals to 3'); - }; -}; -stdlib.IFNULL = function(a,b) {return '('+a+'||'+b+')'}; -stdlib.INSTR = function(s,p) {return '(('+s+').indexOf('+p+')+1)'}; - -stdlib.LEN = stdlib.LENGTH = function(s) {return '('+s+'+"").length';}; -//stdlib.LENGTH = function(s) {return '('+s+').length'}; - -stdlib.LOWER = stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} -//stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} - - -// LTRIM - -stdlib.GREATEST = function(){ - return 'Math.max('+Array.prototype.join.call(arguments, ',')+')' -}; - -stdlib.LEAST = function(){ - return 'Math.min('+Array.prototype.join.call(arguments, ',')+')' -}; - -stdlib.MID = function(a,b,c){ - if(arguments.length == 2) return '('+a+').substr('+b+'-1)'; - else if(arguments.length == 3) return '('+a+').substr('+b+'-1,'+c+')'; -}; - -stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?null:'+a+')'}; - -stdlib.POWER = function(a,b) {return 'Math.pow('+a+','+b+')'}; - -stdlib.RANDOM = function(r) { - if(arguments.length == 0) { - return 'Math.random()'; - } else { - return '(Math.random()*('+r+')|0)'; - } -} -stdlib.ROUND = function(s,d) { - if(arguments.length == 2) { - return 'Math.round('+s+'*Math.pow(10,'+d+'))/Math.pow(10,'+d+')'; - } else { - return 'Math.round('+s+')'; - } -} -stdlib.SQRT = function(s) {return 'Math.sqrt('+s+')'}; - -stdlib.TRIM = function(s) {return s+'.trim()'}; - -stdlib.UPPER = stdlib.UCASE = function(s) {return '('+s+').toUpperCase()';} -//stdlib.UCASE = function(s) {return '('+s+').toUpperCase()';} -//REPLACE -// RTRIM -// SUBSTR -// TRIM -//REPLACE -// RTRIM -// SUBSTR -// TRIM - - -// Aggregator for joining strings -alasql.aggr.GROUP_CONCAT = function(v,s){ - if(typeof s == "undefined") return v; else return s+','+v; -}; - - - - -// -// -// SQL and JS DateTime functions -// -// - - - -/* -// -// CASE for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.CaseValue = function(params) { return yy.extend(this, params); }; -yy.CaseValue.prototype.toString = function() { - var s = 'CASE '; - if(this.expression) s += this.expression.toString(); - if(this.whens) { - s += this.whens.map(function(w) { return ' WHEN '+ - w.when.toString() + ' THEN '+w.then.toString()}).join(); - } - s += ' END'; - return s; -}; - -yy.CaseValue.prototype.findAggregator = function (query){ -// console.log(this.toString()); - if(this.expression && this.expression.findAggregator) this.expression.findAggregator(query); - if(this.whens && this.whens.length > 0) { - this.whens.forEach(function(w) { - if(w.when.findAggregator) w.when.findAggregator(query); - if(w.then.findAggregator) w.then.findAggregator(query); - }); - } -}; - -yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { - - var s = '(function('+context+',params,alasql){var r;'; - if(this.expression) { -// this.expression.toJavaScript(context, tableid) - s += 'v='+this.expression.toJavaScript(context, tableid, defcols)+';'; - s += (this.whens||[]).map(function(w) { return ' if(v=='+w.when.toJavaScript(context,tableid, defcols) - +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); - if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid, defcols)+'}'; - } else { - s += (this.whens||[]).map(function(w) { return ' if('+w.when.toJavaScript(context,tableid, defcols) - +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); - if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid,defcols)+'}'; - } - s += 'return r;})('+context+',params,alasql)'; - - return s; -}; - -/* -// -// JSON for Alasql.js -// Date: 19.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Json = function (params) { return yy.extend(this, params); } -yy.Json.prototype.toString = function() { - var s = '@'; - s += JSONtoString(this.value); - s += ''; - return s; -}; - -var JSONtoString = alasql.utils.JSONtoString = function (obj) { - var s = ''; - if(typeof obj == "string") s = '"'+obj+'"'; - else if(typeof obj == "number") s = obj; - else if(typeof obj == "boolean") s = obj; - else if(typeof obj == "object") { - if(obj instanceof Array) { - s += '['+obj.map(function(b){ - return JSONtoString(b); - }).join(',')+']'; - } else if(!obj.toJavaScript || obj instanceof yy.Json) { - // to prevent recursion - s = '{'; - var ss = []; - for(var k in obj) { - var s1 = ''; - if(typeof k == "string") s1 += '"'+k+'"'; - else if(typeof k == "number") s1 += k; - else if(typeof k == "boolean") s1 += k; - else { - throw new Error('THis is not ES6... no expressions on left side yet'); - } - s1 += ':'+JSONtoString(obj[k]); - ss.push(s1); - }; - s += ss.join(',')+'}'; - } else if(obj.toString) { - s = obj.toString(); - } else { - throw new Error('1Can not show JSON object '+JSON.stringify(obj)); - } - } else { - throw new Error('2Can not show JSON object '+JSON.stringify(obj)); - } - - return s; -} - - - -function JSONtoJavaScript(obj, context, tableid, defcols) { - var s = ''; - if(typeof obj == "string") s = '"'+obj+'"'; - else if(typeof obj == "number") s = '('+obj+')'; - else if(typeof obj == "boolean") s = obj; - else if(typeof obj == "object") { - if(obj instanceof Array) { - s += '['+obj.map(function(b){ - return JSONtoJavaScript(b, context, tableid, defcols); - }).join(',')+']'; - } else if(!obj.toJavaScript || obj instanceof yy.Json) { - // to prevent recursion - s = '{'; - var ss = []; - for(var k in obj) { - var s1 = ''; - if(typeof k == "string") s1 += '"'+k+'"'; - else if(typeof k == "number") s1 += k; - else if(typeof k == "boolean") s1 += k; - else { - throw new Error('THis is not ES6... no expressions on left side yet'); - } - s1 += ':'+JSONtoJavaScript(obj[k], context, tableid, defcols); - ss.push(s1); - }; - s += ss.join(',')+'}'; - } else if(obj.toJavaScript) { - s = obj.toJavaScript(context, tableid, defcols); - } else { - throw new Error('1Can not parse JSON object '+JSON.stringify(obj)); - } - } else { - throw new Error('2Can not parse JSON object '+JSON.stringify(obj)); - } - - return s; -} - -yy.Json.prototype.toJavaScript = function(context, tableid, defcols) { - // TODO reod - return JSONtoJavaScript(this.value,context, tableid, defcols); -} - - - - -/* -// -// CAST and CONVERT functions -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.Convert = function(params) { return yy.extend(this, params); }; -yy.Convert.prototype.toString = function() { - var s = 'CONVERT('; - s += this.dbtypeid; - if(typeof this.dbsize != 'undefined') { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+dbprecision; - s += ')'; - } - s += ','+this.expression.toString(); - if(this.style) s += ','+this.style; - s += ')'; - return s; -}; -yy.Convert.prototype.toJavaScript = function(context, tableid, defcols) { - -// if(this.style) { - return 'alasql.stdfn.CONVERT('+this.expression.toJavaScript(context, tableid, defcols) - +',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+',style:'+ - this.style+'})'; -// } -/* - if(this.dbtypeid == 'INT') { - return '(('+this.expression.toJavaScript(context, tableid, defcols)+')|0)'; - } if(this.dbtypeid == 'STRING') { - return '(""+'+this.expression.toJavaScript(context, tableid, defcols)+')'; - } if(this.dbtypeid == 'NUMBER') { - return '(+('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } if(this.dbtypeid == 'DATE') { - if(alasql.options.datetimeformat == 'javascript') { - return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } else if(alasql.options.datetimeformat == 'sql') { - return this.expression.toJavaScript(context, tableid, defcols); - } - } if(this.dbtypeid == 'DATETIME') { - if(alasql.options.datetimeformat == 'javascript') { - return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; - } else if(alasql.options.datetimeformat == 'sql') { - return this.expression.toJavaScript(context, tableid, defcols); - } - } else { - - }; -*/ - throw new Error('There is not such type conversion for '+this.toString()); -}; - -/** - Convert one type to another - */ -alasql.stdfn.CONVERT = function(value, args) { - var val = value; -// console.log(args); - if(args.style) { - // TODO 9,109, 20,120,21,121,126,130,131 conversions - var t; - if(/\d{8}/.test(val)) t = new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2)); - else t = new Date(val); - - if(args.style == 1) { // mm/dd/yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+("0"+t.getYear()).substr(-2); - } else if(args.style == 2) { // yy.mm.dd - val = ("0"+t.getYear()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); - } else if(args.style == 3) { // dd/mm/yy - val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getYear()).substr(-2); - } else if(args.style == 4) { // dd.mm.yy - val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getYear()).substr(-2); - } else if(args.style == 5) { // dd-mm-yy - val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getYear()).substr(-2); - } else if(args.style == 6) { // dd mon yy - val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+("0"+t.getYear()).substr(-2); - } else if(args.style == 7) { // Mon dd,yy - val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+("0"+t.getYear()).substr(-2); - } else if(args.style == 8) { // hh:mm:ss - val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); - - } else if(args.style == 10) { // mm-dd-yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+("0"+t.getYear()).substr(-2); - } else if(args.style == 11) { // yy/mm/dd - val = ("0"+t.getYear()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); - } else if(args.style == 12) { // yymmdd - val = ("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); - - - } else if(args.style == 101) { // mm/dd/yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+t.getFullYear(); - } else if(args.style == 102) { // yy.mm.dd - val = t.getFullYear()+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); - } else if(args.style == 103) { // dd/mm/yy - val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+t.getFullYear(); - } else if(args.style == 104) { // dd.mm.yy - val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+t.getFullYear(); - } else if(args.style == 105) { // dd-mm-yy - val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+t.getFullYear(); - } else if(args.style == 106) { // dd mon yy - val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+t.getFullYear(); - } else if(args.style == 107) { // Mon dd,yy - val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+t.getFullYear(); - } else if(args.style == 108) { // hh:mm:ss - val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); - - } else if(args.style == 110) { // mm-dd-yy - val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+t.getFullYear(); - } else if(args.style == 111) { // yy/mm/dd - val = t.getFullYear()+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); - } else if(args.style == 112) { // yymmdd - val = t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); - } else { - throw new Error('The CONVERT style '+args.style+' is not realized yet.'); - } - }; - - if(args.dbtypeid == 'Date') { - return new Date(val); - } else if(args.dbtypeid.toUpperCase() == 'DATE') { - var d = new Date(val); - var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); - return s; - } else if(args.dbtypeid == 'DATETIME') { - var d = new Date(val); - var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); - s += " "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2); - s += '.'+("00"+d.getMilliseconds()).substr(-3) - return s; - } else if(args.dbtypeid.toUpperCase() == 'STRING') { - return ""+val; - } else if(args.dbtypeid.toUpperCase() == 'NUMBER' || args.dbtypeid == 'FLOAT') { - return +val; - } else if(args.dbtypeid.toUpperCase() == 'MONEY') { - var m = +val; - return (m|0)+((m*100)%100)/100; - } else if(args.dbtypeid.toUpperCase() == 'BOOLEAN') { - return !!val; - } else if(args.dbtypeid.toUpperCase() == 'INT') { - return val|0; - } else if(args.dbtypeid.toUpperCase() == 'VARCHAR' || args.dbtypeid == 'NVARCHAR') { - if(args.dbsize) return (""+val).substr(0,args.dbsize); - else return ""+val; - } else if(args.dbtypeid.toUpperCase() == 'CHAR' || args.dbtypeid == 'NCHAR') { - return (val+(new Array(args.dbsize+1).join(" "))).substr(0,args.dbsize); - //else return ""+val.substr(0,1); - } -}; - - - -/* -// -// CREATE TABLE for Alasql.js -// Date: 03.11.2014 -// (c) 2014, Andrey Gershun -// -*/ - -yy.ColumnDef = function (params) { return yy.extend(this, params); } -yy.ColumnDef.prototype.toString = function() { - var s = this.columnid; - if(this.dbtypeid) s += ' '+this.dbtypeid; - if(this.dbsize) { - s += '('+this.dbsize; - if(this.dbprecision) s += ','+this.dbprecision; - s += ')'; - }; - if(this.primarykey) s += ' PRIMARY KEY'; - if(this.notnull) s += ' NOT NULL'; - return s; -} - -yy.CreateTable = function (params) { return yy.extend(this, params); } -yy.CreateTable.prototype.toString = function() { - var s = K('CREATE'); - if(this.temporary) s+=' '+K('TEMPORARY'); - if(this.view) s += ' '+K('VIEW'); - else s += ' '+K('TABLE'); - if(this.ifnotexists) s += ' '+K('IF')+' '+K('NOT')+' '+K('EXISTS'); - s += ' '+this.table.toString(); - if(this.viewcolumns) { - s += '('+this.viewcolumns.map(function(vcol){ - return vcol.toString(); - }).join(',')+')'; - } - if(this.as) s += ' '+K('AS')+' '+L(this.as); - else { - var ss = this.columns.map(function(col){ - return col.toString(); - }); - s += ' ('+NL()+ID()+ss.join(','+NL()+ID())+')'; - }; - if(this.view && this.select) { - s += ' AS '+this.select.toString(); - } - return s; -} - -// CREATE TABLE -//yy.CreateTable.prototype.compile = returnUndefined; -yy.CreateTable.prototype.execute = function (databaseid, params, cb) { -// var self = this; - var db = alasql.databases[this.table.databaseid || databaseid]; - - var tableid = this.table.tableid; - if(!tableid) { - throw new Error('Table name is not defined'); - } - -// var ifnotexists = this.ifnotexists; - var columns = this.columns; - // if(false) { - // if(!columns) { - // throw new Error('Columns are not defined'); - // } - // } - var constraints = this.constraints||[]; -// console.log(this); - - // IF NOT EXISTS - if(this.ifnotexists && db.tables[tableid]) return 0; - - if(db.tables[tableid]) { - throw new Error('Can not create table \''+tableid - +'\', because it already exists in the database \''+db.databaseid+'\''); - } - - var table = db.tables[tableid] = new alasql.Table(); // TODO Can use special object? - - var ss = []; - if(this.columns) { - this.columns.forEach(function(col) { - var dbtypeid = col.dbtypeid; - if(!alasql.fn[dbtypeid]) dbtypeid = dbtypeid.toUpperCase(); - var newcol = { - columnid: col.columnid, - dbtypeid: dbtypeid // TODO: Add types table - }; - - if(col.default) { - ss.push('\''+col.columnid+'\':'+col.default.toJavaScript()); - } - - table.columns.push(newcol); - table.xcolumns[newcol.columnid] = newcol; - - // Check for primary key - if(col.primarykey) { - var pk = table.pk = {}; - pk.columns = [col.columnid]; - pk.onrightfns = 'r[\''+col.columnid+'\']'; - pk.onrightfn = new Function("r",'return '+pk.onrightfns); - pk.hh = hash(pk.onrightfns); - table.indices[pk.hh] = {}; - }; - - }); - }; - table.defaultfns = ss.join(','); - - -// if(constraints) { - constraints.forEach(function(con) { - //console.log(con, con.columns); - if(con.type == 'PRIMARY KEY') { - if(table.pk) { - throw new Error('Primary key already exists'); - } - var pk = table.pk = {}; - pk.columns = con.columns; - pk.onrightfns = pk.columns.map(function(columnid){ - return 'r[\''+columnid+'\']' - }).join("+'`'+"); - pk.onrightfn = new Function("r",'return '+pk.onrightfns); - pk.hh = hash(pk.onrightfns); - table.indices[pk.hh] = {}; - } - }); - - if(this.view && this.viewcolumns) { - var self = this; - this.viewcolumns.forEach(function(vcol,idx){ - self.select.columns[idx].as = vcol.columnid; - }); - } - -// console.log(100,db.engineid); - if(db.engineid) { -// console.log(101,db.engineid); - return alasql.engines[db.engineid].createTable(this.table.databaseid || databaseid, tableid, this.ifnotexists, cb); -// console.log('createtable',res1); -// return res1; - } - -// } -// if(table.pk) { - table.insert = function(r) { - if(this.pk) { - var pk = this.pk; - var addr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][addr] != 'undefined') { - throw new Error('Cannot insert record, because it already exists in primary key'); - } else { - table.data.push(r); - this.indices[pk.hh][addr]=r; - }; - } else { - table.data.push(r); - } - }; - - table.delete = function(i) { - if(this.pk) { - var r = this.data[i]; - var pk = this.pk; - var addr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][addr] == 'undefined') { - throw new Error('Something wrong with index on table'); - } else { - this.indices[pk.hh][addr]=undefined; - }; - } - }; - - table.deleteall = function() { - this.data.length = 0; - if(this.pk) { -// var r = this.data[i]; - this.indices[this.pk.hh] = {}; - } - }; - - table.update = function(assignfn, i, params) { - if(this.pk) { - var r = this.data[i]; - var pk = this.pk; - var addr = pk.onrightfn(r,params); - if(typeof this.indices[pk.hh][addr] == 'undefined') { - throw new Error('Something wrong with index on table'); - } else { - this.indices[pk.hh][addr]=undefined; - assignfn(r,params,alasql); - var newaddr = pk.onrightfn(r); - if(typeof this.indices[pk.hh][newaddr] != 'undefined') { - throw new Error('Record already exists'); - } else { - this.indices[pk.hh][newaddr] = r; - } - } - - } else { - assignfn(this.data[i],params,alasql); - }; - - }; - - if(this.view && this.select) { - table.view = true; -// console.log(this.select.toString()); -// console.log('this.table.databaseid',this.table.databaseid); -// console.log(this.select.compile(this.table.databaseid||databaseid)); - table.select = this.select.compile(this.table.databaseid||databaseid); - } -// console.log(databaseid); -// console.log(db.databaseid,db.tables); -// console.log(table); - if(cb) cb(1); - - return 1; -}; - - - - -// -// Date functions -// -// (c) 2014, Andrey Gershun -// - -/** Standard JavaScript data types */ - -alasql.fn.Date = Object; -alasql.fn.Date = Date; -alasql.fn.Number = Number; -alasql.fn.String = String; -alasql.fn.Boolean = Boolean; - -/** Extend Object with properties */ -stdfn.EXTEND = alasql.utils.extend; - - -stdfn.CHAR = String.fromCharCode.bind(String); -stdfn.ASCII = function(a) { - return a.charCodeAt(0); -}; - -/** - Return first non-null argument - See https://msdn.microsoft.com/en-us/library/ms190349.aspx -*/ -stdfn.COALESCE = function() { - for(var i=0;i 0) { - for(var i=0, ilen=table.data.length; i 0) { - for(var i=0, ilen=table.data.length; i=0) { - q += "+"+values[idx].toJavaScript(); - } else if (alasql.fn[table.xcolumns[col.columnid].dbtypeid]) { - q += "(new "+table.xcolumns[col.columnid].dbtypeid+"("; - q += values[idx].toJavaScript(); - q += "))"; - } else { - q += values[idx].toJavaScript(); - }; - } else { - q += values[idx].toJavaScript(); - } - ss.push(q); - - }); - } else { -// var table = db.tables[tableid]; -// console.log('table1', db, self); -//console.log(111, table.columns); -//console.log(74,table); - if((values instanceof Array) && table.columns && table.columns.length > 0) { - table.columns.forEach(function(col, idx){ - - var q = '\''+col.columnid +'\':'; -// var val = values[idx].toJavaScript(); - - if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid) >=0) { - q += "+"+values[idx].toJavaScript(); - } else if (alasql.fn[col.dbtypeid]) { - q += "(new "+col.dbtypeid+"("; - q += values[idx].toJavaScript(); - q += "))"; - } else { - q += values[idx].toJavaScript(); - } - - // if(table.xcolumns && table.xcolumns[col.columnid] && - // (table.xcolumns[col.columnid].dbtypeid == "DATE" || - // table.xcolumns[col.columnid].dbtypeid == "DATETIME" - // )) { - // val = "(new Date("+val+"))"; - // } - // || table.xcolumns[col.columnid].dbtypeid == "FLOAT" - // || table.xcolumns[col.columnid].dbtypeid == "NUMBER" - // || table.xcolumns[col.columnid].dbtypeid == "MONEY" - // )) q += '+'; - // console.log(self.values[idx].toString()); - //console.log(self); -// q += val; - - // if(table.xcolumns && table.xcolumns[col.columnid] && table.xcolumns[col.columnid].dbtypeid == "INT") q += '|0'; - ss.push(q); - - // console.log(fld); - // TODO: type checking and conversions - // rec[fld.fldid] = eval(self.insertExpression[idx].toJavaScript('','')); - // console.log(rec[fld.fldid]); - // if(rec[fld.fldid] == "NULL") rec[fld.fldid] = undefined; - - // if(table.xflds[fld.fldid].dbtypeid == "INT") rec[fld.fldid] = +rec[fld.fldid]|0; - // else if(table.xflds[fld.fldid].dbtypeid == "FLOAT" || table.xflds[fld.fldid].dbtypeid == "MONEY" ) - // rec[fld.fldid] = +rec[fld.fldid]; - }); - } else { -// console.log(222,values); -// sw = 'var w='+JSONtoJavaScript(values)+';for(var k in w){r[k]=w[k]};'; - sw = JSONtoJavaScript(values); - } - } -//console.log(ss); - - if(db.tables[tableid].defaultfns) ss.unshift(db.tables[tableid].defaultfns); - if(sw) { - s += 'a='+sw+';'; - } else { - s += 'a={'+ss.join(',')+'};'; - } -// s += 'db.tables[\''+tableid+'\'].insert(r);'; - if(db.tables[tableid].insert) { - s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].insert(a);'; - } else { - s += 'aa.push(a);'; - } - }); - - s33 = s3+s; - - if(db.tables[tableid].insert) { -// s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].insert(r);'; - } else { - s += 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].data='+ - 'alasql.databases[\''+databaseid+'\'].tables[\''+tableid+'\'].data.concat(aa);'; - } - - s += 'return '+self.values.length; - -//console.log(s); - var insertfn = new Function('db, params, alasql',s3+s); - -// INSERT INTO table SELECT - - } else if(this.select) { - selectfn = this.select.compile(databaseid); - if(db.engineid && alasql.engines[db.engineid].intoTable) { - var statement = function(params, cb) { - var aa = selectfn(params); - var res = alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null, cb); - return res; - }; - return statement; - } else { - var insertfn = function(db, params, alasql) { - var res = selectfn(params); - if(db.tables[tableid].insert) { - // If insert() function exists (issue #92) - for(var i=0,ilen=res.length;i') { + var s = this.left.toString()+"->"; +// console.log(this.right); + if(typeof this.right != 'string' && typeof this.right != 'number' ) s += '('; + s += this.right.toString(); + if(typeof this.right != 'string' && typeof this.right != 'number' ) s += ')'; + return s; + } + return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+' ':'')+this.right.toString(); +}; + +yy.Op.prototype.findAggregator = function (query){ +// console.log(this.toString()); + if(this.left && this.left.findAggregator) this.left.findAggregator(query); + // Do not go in > ALL + if(this.right && this.right.findAggregator && (!this.allsome)) { + this.right.findAggregator(query); + } +}; + +yy.Op.prototype.toType = function(tableid) { + if(['-','*','/','%','^'].indexOf(this.op) >-1) return 'number'; + if(this.op == '+') { + if(this.left.toType(tableid) == 'string' || this.right.toType(tableid) == 'string') return 'string'; + if(this.left.toType(tableid) == 'number' || this.right.toType(tableid) == 'number') return 'number'; + }; + if(['AND','OR','NOT','=','==','===', '!=','!==','!===','>','>=','<','<=', 'IN', 'NOT IN', 'LIKE', 'NOT LIKE'].indexOf(this.op) >-1 ) return 'boolean'; + if(this.op == 'BETWEEN' || this.op == 'NOT BETWEEN' || this.op == 'IS NULL' || this.op == 'IS NOT NULL') return 'boolean'; + if(this.allsome) return 'boolean'; + if(!this.op) return this.left.toType(); + + return 'unknown'; +}; + +yy.Op.prototype.toJavaScript = function(context,tableid,defcols) { +// console.log(this); + var op = this.op; + if(this.op == '=') op = '==='; + else if(this.op == '<>') op = '!='; + else if(this.op == 'OR') op = '||'; + + if(this.op == '->') { +// console.log(this.right, typeof this.right); + if(typeof this.right == "string") { + return this.left.toJavaScript(context,tableid, defcols)+'["'+this.right+'"]'; + } else if(typeof this.right == "number") { + return this.left.toJavaScript(context,tableid, defcols)+'['+this.right+']'; + } else if(this.right instanceof yy.FuncValue) { + ss = []; + if(!this.right.args || this.right.args.length == 0) { + } else { + var ss = this.right.args.map(function(arg){ + return arg.toJavaScript(context,tableid, defcols); + }); + } + return this.left.toJavaScript(context,tableid, defcols)+'[\''+this.right.funcid+'\']('+ + ss.join(',')+')'; + } else { + return this.left.toJavaScript(context,tableid, defcols)+'['+this.right.toJavaScript(context,tableid, defcols)+']'; + } + } + + if(this.op == 'IS') { + return '((typeof '+this.left.toJavaScript(context,tableid, defcols)+"=='undefined') == " + + '(typeof '+this.right.toJavaScript(context,tableid, defcols)+"=='undefined'))"; + } + + + if(this.op == '==') { + return 'alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+')'; + } + if(this.op == '===') { + return "(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; + } + + if(this.op == '!===') { + return "!(("+this.left.toJavaScript(context,tableid, defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid, defcols)+'.valueOf()))'; + } + + + if(this.op == '!==') { + return '(!alasql.utils.deepEqual('+this.left.toJavaScript(context,tableid, defcols)+","+this.right.toJavaScript(context,tableid, defcols)+'))'; + } + + if(this.op == 'LIKE') { + var s = "("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ + ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g'))" +// console.log(s); + return s; + }; + + if(this.op == 'NOT LIKE') { + var s = "!(("+this.left.toJavaScript(context,tableid, defcols)+"+'')"+ + ".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid, defcols)+").replace(/\\\%/g,'.*').toUpperCase()+'$','g')))" + return s; + }; + + if(this.op == 'BETWEEN') { + if(this.right instanceof yy.Op && this.right.op == 'AND') { + return '(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ + '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; + } else { + throw new Error('Wrong BETWEEN operator without AND part'); + } + }; + + if(this.op == 'NOT BETWEEN') { + if(this.right instanceof yy.Op && this.right.op == 'AND') { + return '!(('+this.right.left.toJavaScript(context,tableid, defcols)+'<='+this.left.toJavaScript(context,tableid, defcols)+')&&'+ + '('+this.left.toJavaScript(context,tableid, defcols)+'<='+this.right.right.toJavaScript(context,tableid, defcols)+'))'; + } else { + throw new Error('Wrong NOT BETWEEN operator without AND part'); + } + }; + + if(this.op == 'IN') { + if(this.right instanceof yy.Select ) { + var s = '('; +// s += 'this.query.queriesdata['+this.queriesidx+']'; + s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; + s += '.indexOf('; + s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; + return s; + } else if(this.right instanceof Array ) { +// if(this.right.length == 0) return 'false'; + var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; + s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; +//console.log(s); + return s; + } else { + var s = '('+this.right.toJavaScript(context,tableid, defcols)+'.indexOf('; + s += this.left.toJavaScript(context,tableid, defcols)+')>-1)'; + return s; +// } else { +// throw new Error('Wrong IN operator without SELECT part'); + } + }; + + + if(this.op == 'NOT IN') { + if(this.right instanceof yy.Select ) { + var s = '(' + //this.query.queriesdata['+this.queriesidx+'] + s += 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; + s +='.indexOf('; + s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; + return s; + } else if(this.right instanceof Array ) { +// if(this.right.length == 0) return 'true'; + var s = '(['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].indexOf('; + s += this.left.toJavaScript(context,tableid, defcols)+')<0)'; + return s; + } else { + throw new Error('Wrong NOT IN operator without SELECT part'); + } + }; + + if(this.allsome == 'ALL') { + if(this.right instanceof yy.Select ) { +// var s = 'this.query.queriesdata['+this.queriesidx+']'; + var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; + + s +='.every(function(b){return ('; + s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; + return s; + } else if(this.right instanceof Array ) { + var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].every(function(b){return ('; + s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; + return s; + } else { + throw new Error('Wrong NOT IN operator without SELECT part'); + } + }; + + if(this.allsome == 'SOME' || this.allsome == 'ANY') { + if(this.right instanceof yy.Select ) { +// var s = 'this.query.queriesdata['+this.queriesidx+']'; + var s = 'alasql.utils.flatArray(this.query.queriesfn['+(this.queriesidx)+'](params,null,p))'; + s+='.some(function(b){return ('; + s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; + return s; + } else if(this.right instanceof Array ) { + var s = '['+this.right.map(function(a){return a.toJavaScript(context,tableid, defcols)}).join(',')+'].some(function(b){return ('; + s += this.left.toJavaScript(context,tableid, defcols)+')'+op+'b})'; + return s; + } else { + throw new Error('Wrong NOT IN operator without SELECT part'); + } + }; + +// Special case for AND optimization (if reduced) + if(this.op == 'AND') { + if(this.left.reduced) { + if(this.right.reduced) { + return 'true'; + } else { + return this.right.toJavaScript(context,tableid, defcols); + } + } else if(this.right.reduced) { + return this.left.toJavaScript(context,tableid, defcols); + } + + // Otherwise process as regular operation (see below) + op = '&&'; + + } + + if(this.op == '^') { + return 'Math.pow('+this.left.toJavaScript(context,tableid, defcols) + +','+this.right.toJavaScript(context,tableid, defcols)+')'; + }; + + + // Change names +// console.log(this); + return '('+this.left.toJavaScript(context,tableid, defcols)+op+this.right.toJavaScript(context,tableid, defcols)+')'; +}; + + + +yy.VarValue = function (params) { return yy.extend(this, params); } +yy.VarValue.prototype.toString = function() { + return '@'+L(this.variable); +}; + +yy.VarValue.prototype.toType = function() { + return 'unknown'; +}; + +yy.VarValue.prototype.toJavaScript = function() { + return "alasql.vars['"+this.variable+"']"; +} + + +yy.NumValue = function (params) { return yy.extend(this, params); } +yy.NumValue.prototype.toString = function() { + return N(this.value.toString()); +}; + +yy.NumValue.prototype.toType = function() { + return 'number'; +}; + +yy.NumValue.prototype.toJavaScript = function() { + return ""+this.value; +} + + + + +yy.StringValue = function (params) { return yy.extend(this, params); } +yy.StringValue.prototype.toString = function() { + return "'"+S(this.value.toString())+"'"; +} + +yy.StringValue.prototype.toType = function() { + return 'string'; +} + +yy.StringValue.prototype.toJavaScript = function() { +// console.log("'"+doubleqq(this.value)+"'"); +// return "'"+doubleqq(this.value)+"'"; + return "'"+escapeq(this.value)+"'"; + +} + + +yy.LogicValue = function (params) { return yy.extend(this, params); } +yy.LogicValue.prototype.toString = function() { + return this.value?'TRUE':'FALSE'; +} + +yy.LogicValue.prototype.toType = function() { + return 'boolean'; +} + +yy.LogicValue.prototype.toJavaScript = function() { + return this.value?'true':'false'; +} + +yy.NullValue = function (params) { return yy.extend(this, params); } +yy.NullValue.prototype.toString = function() { + return 'NULL'; +} +yy.NullValue.prototype.toJavaScript = function() { + return 'undefined'; +} + +yy.ParamValue = function (params) { return yy.extend(this, params); } +yy.ParamValue.prototype.toString = function() { + return '$'+this.param; +} +yy.ParamValue.prototype.toJavaScript = function() { + if(typeof this.param == "string") return "params[\'"+this.param+"\']"; + else return "params["+this.param+"]"; +} + + + +yy.UniOp = function (params) { return yy.extend(this, params); } +yy.UniOp.prototype.toString = function() { + if(this.op == '-') return this.op+this.right.toString(); + if(this.op == '+') return this.op+this.right.toString(); + if(this.op == 'NOT') return this.op+'('+this.right.toString()+')'; + else if(this.op == null) return '('+this.right.toString()+')'; +}; + +yy.UniOp.prototype.findAggregator = function (query){ + if(this.right.findAggregator) this.right.findAggregator(query); +}; + +yy.UniOp.prototype.toType = function(tableid) { + if(this.op == '-') return 'number'; + if(this.op == '+') return 'number'; + if(this.op == 'NOT') return 'boolean'; +}; + +yy.UniOp.prototype.toJavaScript = function(context, tableid, defcols) { + if(this.op == '-') return "(-("+this.right.toJavaScript(context, tableid, defcols)+"))"; + if(this.op == '+') return "("+this.right.toJavaScript(context, tableid, defcols)+")"; + if(this.op == 'NOT') return '!('+this.right.toJavaScript(context, tableid, defcols)+')'; + else if(this.op == null) return '('+this.right.toJavaScript(context, tableid, defcols)+')'; +}; + + + +// yy.Star = function (params) { return yy.extend(this, params); } +// yy.Star.prototype.toString = function() { +// var s = this.fieldid; +// if(this.tableid) { +// s = this.tableid+'.'+s; +// if(this.databaseid) { +// s = this.databaseid+'.'+s; +// } +// } +// if(this.alias) s += ' AS '+this.alias; +// return s; +// } + +yy.Column = function(params) { return yy.extend(this, params); } +yy.Column.prototype.toString = function() { + var s; + if(this.columnid == +this.columnid) { + s = '['+this.columnid+']'; + } else { + s = this.columnid; + } + if(this.tableid) { + if(+this.columnid == this.columnid) { + s = this.tableid+s; + } else { + s = this.tableid+'.'+s; + } + if(this.databaseid) { + s = this.databaseid+'.'+s; + } + } +// if(this.alias) s += ' AS '+this.alias; + return s; +}; + +yy.Column.prototype.toJavaScript = function(context, tableid, defcols) { +// var s = this.value; +// var s = this.columnid; +// if(this.tableid) { +// s = this.tableid+'.'+s; +// // if(this.databaseid) { +// // s = this.databaseid+'.'+s; +// // } +// } else { +// s = tableid+'.'+s; +// } +//console.log('yy.Column',this, tableid); +// console.log(392,this.columnid); + var s = ''; + if(!this.tableid && tableid == '' && !defcols) { + if(this.columnid != '_') { + s = context+'[\''+this.columnid+'\']'; + } else { + if(context == 'g') { + s = 'g[\'_\']'; + } else { + s = context; + } + } + } else { + if(context == 'g') { + // if(this.columnid == '_') { + // } else { + s = 'g[\''+this.nick+'\']'; + // } + } else if(this.tableid) { + if(this.columnid != '_') { + s = context+'[\''+(this.tableid) + '\'][\''+this.columnid+'\']'; + } else { + if(context == 'g') { + s = 'g[\'_\']'; + } else { + s = context+'[\''+(this.tableid) + '\']'; + } + } + } else if(defcols) { + var tbid = defcols[this.columnid]; + if(tbid == '-') { + throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables'); + } else if(tbid) { + if(this.columnid != '_') { + s = context+'[\''+(tbid) + '\'][\''+this.columnid+'\']'; + } else { + s = context+'[\''+(tbid) + '\']'; + }; + } else { + if(this.columnid != '_') { + s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; + } else { + s = context+'[\''+(this.tableid || tableid) + '\']'; + }; + } + } else if(tableid == -1) { +// if(this.columnid != '') { + s = context+'[\''+this.columnid+'\']'; +// } else { +// s = context; +// } + } else { + if(this.columnid != '_') { + s = context+'[\''+(this.tableid || tableid) + '\'][\''+this.columnid+'\']'; + } else { + s = context+'[\''+(this.tableid || tableid) + '\']'; + } + } + } +// console.log(context,s); +// console.trace(new Error()); + return s; +} + + + + +yy.AggrValue = function(params){ return yy.extend(this, params); } +yy.AggrValue.prototype.toString = function() { + var s = ''; + if(this.aggregatorid == 'REDUCE') s += L(this.funcid)+'('; + else s += this.aggregatorid+'('; + if(this.distinct) s+= K('DISTINCT')+' '; + if(this.expression) s += this.expression.toString(); + s += ')'; + if(this.over) s += ' '+this.over.toString(); +// console.log(this.over); +// if(this.alias) s += ' AS '+this.alias; + return s; +}; +yy.AggrValue.prototype.findAggregator = function (query){ +// console.log('aggregator found',this.toString()); + +// var colas = this.as || this.toString(); + + var colas = escapeq(this.toString())+':'+query.selectGroup.length; +// console.log('findAgg',this); + + +/* var found = false; + for(var i=0;i-1) return 'number'; + if(['ARRAY'].indexOf(this.aggregatorid)>-1) return 'array'; + if(['FIRST','LAST' ].indexOf(this.aggregatorid)>-1) return this.expression.toType(); +} +yy.AggrValue.prototype.toJavaScript = function(context, tableid, defcols) { +// var s = 'alasql.functions.'+this.funcid+'('; +// if(this.expression) s += this.expression.toJavaScript(context, tableid); +// s += ')'; +// if(this.alias) s += ' AS '+this.alias; +// return s; +// var s = ''; +//if(this.as) console.log(499,this.as); +// var colas = this.as; + var colas = this.nick; + if(typeof colas == 'undefined') colas = this.toString(); + return 'g[\''+colas+'\']'; +} + + +yy.OrderExpression = function(params){ return yy.extend(this, params); } +yy.OrderExpression.prototype.toString = function() { + var s = this.expression.toString(); + if(this.order) s += ' '+this.order.toString(); + if(this.nocase) s += ' '+K('COLLATE')+' '+K('NOCASE'); + return s; +} + +yy.GroupExpression = function(params){ return yy.extend(this, params); } +yy.GroupExpression.prototype.toString = function() { + return this.type+'('+this.group.toString()+')'; +} + + +yy.ColumnDef = function (params) { return yy.extend(this, params); } +yy.ColumnDef.prototype.toString = function() { + var s = this.columnid; + if(this.dbtypeid) s += ' '+this.dbtypeid; + if(this.dbsize) { + s += '('+this.dbsize; + if(this.dbprecision) s += ','+this.dbprecision; + s += ')'; + }; + if(this.primarykey) s += ' PRIMARY KEY'; + if(this.notnull) s += ' NOT NULL'; + return s; +} -}; -yy.Delete.prototype.execute = function (databaseid, params, cb) { - return this.compile(databaseid)(params,cb); -} +// Alasql Linq library + +yy.FromData = function(params) { return yy.extend(this, params); }; +yy.FromData.prototype.toString = function() { + if(this.data) return K('DATA')+'('+((Math.random()*10e15)|0)+')'; + else return '?'; +}; +yy.FromData.prototype.toJavaScript = function(){ +// console.log('yy.FromData.prototype.toJavaScript'); +}; + +yy.Select.prototype.exec = function(params,cb) { + + if(this.preparams) params = this.preparams.concat(params); +// console.log(15,this.preparams); + + var databaseid = alasql.useid; + db = alasql.databases[databaseid]; + var sql = this.toString(); + var hh = hash(sql); +// console.log(sql); + + var statement = this.compile(databaseid); + if(!statement) return; + statement.sql = sql; + statement.dbversion = db.dbversion; + + // Secure sqlCache size + if (db.sqlCacheSize > alasql.MAXSQLCACHESIZE) { + db.resetSqlCache(); + } + db.sqlCacheSize++; + db.sqlCache[hh] = statement; + var res = alasql.res = statement(params, cb); + return res; +}; + +yy.Select.prototype.Select = function(){ + var self = this; + var agrs = []; + if(arguments.length > 1) { + args = Array.prototype.slice.call(arguments);; + } else if(arguments.length == 1) { + if(arguments[0] instanceof Array) { + args = arguments[0]; + } else { + args = [arguments[0]]; + } + } else { + throw new Error('Wrong number of arguments of Select() function'); + } + + self.columns = []; + + args.forEach(function(arg){ + if(typeof arg == "string") { + self.columns.push(new yy.Column({columnid: arg})); + } else if(typeof arg == "function") { + var pari = 0; + if(self.preparams) { + pari = self.preparams.length; + } else { + self.preparams = []; + } + self.preparams.push(arg); + self.columns.push(new yy.Column({columnid: "*", func:arg, param:pari})); + } else { + // Unknown type + } + }); + +// console.log(self instanceof yy.Select); + return self; +}; + +yy.Select.prototype.From = function(tableid){ + var self = this; + if(!self.from) self.from = []; + if(tableid instanceof Array) { + var pari = 0; + if(self.preparams) { + pari = self.preparams.length; + } else { + self.preparams = []; + } + self.preparams.push(tableid); + self.from.push(new yy.ParamValue({param:pari})); + } else if(typeof tableid =="string") { + self.from.push(new yy.Table({tableid:tableid})); + } else { + throw new Error('Unknown arguments in From() function') + } + return self; +} + +yy.Select.prototype.OrderBy = function(){ + var self = this; + var agrs = []; + + self.order = []; + + if(arguments.length == 0) { +// self.order.push(new yy.OrderExpression({expression: new yy.Column({columnid:"_"}), direction:'ASC'})); + args = ["_"]; + } else if(arguments.length > 1) { + args = Array.prototype.slice.call(arguments);; + } else if(arguments.length == 1) { + if(arguments[0] instanceof Array) { + args = arguments[0]; + } else { + args = [arguments[0]]; + } + } else { + throw new Error('Wrong number of arguments of Select() function'); + } + + if(args.length > 0) { + args.forEach(function(arg){ + var expr = new yy.Column({columnid:arg}); + if(typeof arg == 'function'){ + expr = arg; + } + self.order.push(new yy.OrderExpression({expression: expr, direction:'ASC'})); + }); + } + return self; +} + +yy.Select.prototype.Top = function(topnum){ + var self = this; + self.top = new yy.NumValue({value:topnum}); + return self; +}; + +yy.Select.prototype.GroupBy = function(){ + var self = this; + var agrs = []; + + if(arguments.length > 1) { + args = Array.prototype.slice.call(arguments);; + } else if(arguments.length == 1) { + if(arguments[0] instanceof Array) { + args = arguments[0]; + } else { + args = [arguments[0]]; + } + } else { + throw new Error('Wrong number of arguments of Select() function'); + } + + self.group = []; + + args.forEach(function(arg){ + var expr = new yy.Column({columnid:arg}); + self.group.push(expr); + }); + + return self; +}; + +yy.Select.prototype.Where = function(expr){ + var self = this; + if(typeof expr == 'function' ) { + self.where = expr; + } + return self; +}; + /* // -// UPDATE for Alasql.js +// Functions for Alasql.js // Date: 03.11.2014 // (c) 2014, Andrey Gershun // */ -yy.Update = function (params) { return yy.extend(this, params); } -yy.Update.prototype.toString = function() { - var s = 'UPDATE '+this.table.toString(); - if(this.columns) s += ' SET '+this.columns.toString(); - if(this.where) s += ' WHERE '+this.where.toString(); +yy.FuncValue = function(params){ return yy.extend(this, params); } +yy.FuncValue.prototype.toString = function() { + var s = ''; + + if(alasql.fn[this.funcid]) s += this.funcid; + else if(alasql.aggr[this.funcid]) s += this.funcid; + else if(alasql.stdlib[this.funcid.toUpperCase()] || alasql.stdfn[this.funcid.toUpperCase()]) s += this.funcid.toUpperCase(); + + s += '('; + if(this.args && this.args.length > 0) { + s += this.args.map(function(arg){ + return arg.toString(); + }).join(','); + }; + s += ')'; + if(this.as) s += ' AS '+this.as.toString(); +// if(this.alias) s += ' AS '+this.alias; return s; } +yy.FuncValue.prototype.findAggregator = function(query) { + if(this.args && this.args.length > 0) { + this.args.forEach(function(arg){ + if(arg.findAggregator) arg.findAggregator(query); + }); + } +}; -yy.SetColumn = function (params) { return yy.extend(this, params); } -yy.SetColumn.prototype.toString = function() { - return this.columnid.toString() + '='+this.expression.toString(); +yy.FuncValue.prototype.toJavaScript = function(context, tableid, defcols) { + var s = ''; + var funcid = this.funcid; + // IF this is standard compile functions + if(alasql.fn[funcid]) { + // This is user-defined run-time function + // TODO arguments!!! +// var s = ''; + if(this.newid) s+= 'new '; + s += 'alasql.fn.'+this.funcid+'('; +// if(this.args) s += this.args.toJavaScript(context, tableid); + if(this.args && this.args.length > 0) { + s += this.args.map(function(arg){ + return arg.toJavaScript(context, tableid, defcols); + }).join(','); + }; + s += ')'; + } else if(alasql.stdlib[funcid.toUpperCase()]) { + if(this.args && this.args.length > 0) { + s += alasql.stdlib[funcid.toUpperCase()].apply(this, this.args.map(function(arg) {return arg.toJavaScript(context, tableid)})); + } else { + s += alasql.stdlib[funcid.toUpperCase()](); + } + } else if(alasql.stdfn[funcid.toUpperCase()]) { + if(this.newid) s+= 'new '; + s += 'alasql.stdfn.'+this.funcid.toUpperCase()+'('; +// if(this.args) s += this.args.toJavaScript(context, tableid); + if(this.args && this.args.length > 0) { + s += this.args.map(function(arg){ + return arg.toJavaScript(context, tableid, defcols); + }).join(','); + }; + s += ')'; + } else { + // Aggregator + } +//console.log('userfn:',s,this); + +// if(this.alias) s += ' AS '+this.alias; + return s; } -yy.Update.prototype.compile = function (databaseid) { -// console.log(this); - databaseid = this.table.databaseid || databaseid; - var tableid = this.table.tableid; - - if(this.where) { - var wherefn = new Function('r,params,alasql','return '+this.where.toJavaScript('r','')); +// // Functions compiler +// nodes.FunctionValue.prototype.toJavaScript = function (context, tableid) { +// var s = ''; +// s += fns[this.name.toUpperCase()].apply(null,this.arguments.map(function(arg){ +// if(arg) return arg.toJavaScript(context, tableid); +// else return ''; +// })); +// return s; +// }; + +// +// SQL FUNCTIONS COMPILERS +// Based on SQLite functions + +// IMPORTANT: These are compiled functions + +//alasql.fn = {}; // Keep for compatibility +//alasql.userlib = alasql.fn; + +var stdlib = alasql.stdlib = {} +var stdfn = alasql.stdfn = {} + +stdlib.ABS = function(a) {return 'Math.abs('+a+')'}; +stdlib.CLONEDEEP = function(a) {return 'alasql.utils.cloneDeep('+a+')'}; +stdlib.IIF = function(a,b,c) { + if(arguments.length == 3) { + return '(('+a+')?('+b+'):('+c+'))'; + } else { + throw new Error('Number of arguments of IFF is not equals to 3'); }; +}; +stdlib.IFNULL = function(a,b) {return '('+a+'||'+b+')'}; +stdlib.INSTR = function(s,p) {return '(('+s+').indexOf('+p+')+1)'}; - // Construct update function - var s = ''; - this.columns.forEach(function(col){ - s += 'r[\''+col.columnid+'\']='+col.expression.toJavaScript('r','')+';'; - }); - var assignfn = new Function('r,params,alasql',s); +stdlib.LEN = stdlib.LENGTH = function(s) {return '('+s+'+"").length';}; +//stdlib.LENGTH = function(s) {return '('+s+').length'}; - var statement = function(params, cb) { - var db = alasql.databases[databaseid]; +stdlib.LOWER = stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} +//stdlib.LCASE = function(s) {return '('+s+').toLowerCase()';} -// console.log(db.engineid); -// console.log(db.engineid && alasql.engines[db.engineid].updateTable); - if(db.engineid && alasql.engines[db.engineid].updateTable) { -// console.log('updateTable'); - return alasql.engines[db.engineid].updateTable(databaseid, tableid, assignfn, wherefn, params, cb); - } +// LTRIM - if(alasql.options.autocommit && db.engineid) { - alasql.engines[db.engineid].loadTableData(databaseid,tableid); - } +stdlib.GREATEST = function(){ + return 'Math.max('+Array.prototype.join.call(arguments, ',')+')' +}; - var table = db.tables[tableid]; - if(!table) { - throw new Error("Table '"+tableid+"' not exists") - } -// table.dirty = true; - var numrows = 0; - for(var i=0, ilen=table.data.length; i 0) { + this.whens.forEach(function(w) { + if(w.when.findAggregator) w.when.findAggregator(query); + if(w.then.findAggregator) w.then.findAggregator(query); + }); + }; + if(this.elses && this.elses.findAggregator) this.elses.findAggregator(query); +}; +yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { - if(cb) res=cb(res); - return res; -}; + var s = '((function('+context+',params,alasql){var r;'; + if(this.expression) { +// this.expression.toJavaScript(context, tableid) + s += 'v='+this.expression.toJavaScript(context, tableid, defcols)+';'; + s += (this.whens||[]).map(function(w) { return ' if(v=='+w.when.toJavaScript(context,tableid, defcols) + +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); + if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid, defcols)+'}'; + } else { + s += (this.whens||[]).map(function(w) { return ' if('+w.when.toJavaScript(context,tableid, defcols) + +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); + if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid,defcols)+'}'; + } + // TODO remove bind from CASE + s += ';return r;}).bind(this))('+context+',params,alasql)'; - + return s; +}; /* // -// UPDATE for Alasql.js -// Date: 03.11.2014 -// Modified: 16.11.2014 +// JSON for Alasql.js +// Date: 19.11.2014 // (c) 2014, Andrey Gershun // */ -// CREATE DATABASE databaseid -yy.CreateDatabase = function (params) { return yy.extend(this, params); }; -yy.CreateDatabase.prototype.toString = function() { - var s = K('CREATE'); - if(this.engineid) s+=' '+L(this.engineid); - s += ' '+K('DATABASE'); - if(this.ifnotexists) s += ' '+K('IF')+' '+K('NOT')+' '+K('EXISTS'); - s += ' '+L(this.databaseid); - if(this.args && this.args.length > 0) { - s += '('+this.args.map(function(arg){ return arg.toString()}).join(', ')+')'; - } - if(this.as) s += ' '+K('AS')+' '+L(this.as); +yy.Json = function (params) { return yy.extend(this, params); } +yy.Json.prototype.toString = function() { + var s = '@'; + s += JSONtoString(this.value); + s += ''; return s; -} -//yy.CreateDatabase.prototype.compile = returnUndefined; -yy.CreateDatabase.prototype.execute = function (databaseid, params, cb) { - // console.log(alasql.useid, databaseid, this.databaseid); - // console.trace(); - var args; - if(this.args && this.args.length > 0) { - args = this.args.map(function(arg){ - return new Function('params','return '+arg.toJavaScript())(params); - }); - }; - if(this.engineid) { - var res = alasql.engines[this.engineid].createDatabase(this.databaseid, this.args, this.ifnotexists, this.as, cb); - return res; - } else { - var dbid = this.databaseid; - if(alasql.databases[dbid]) { - throw new Error("Database '"+dbid+"' already exists") - }; - var a = new alasql.Database(dbid); - var res = 1; - if(cb) return cb(res); - return res; - } }; -// CREATE DATABASE databaseid -yy.AttachDatabase = function (params) { return yy.extend(this, params); }; -yy.AttachDatabase.prototype.toString = function() { - var s = K('ATTACH'); - if(this.engineid) s += ' '+L(this.engineid); - s += ' '+K('DATABASE')+' '+L(this.databaseid); - // TODO add params - if(args) { - s += '('; - if(args.length>0) { - s += args.map(function(arg){ return arg.toString(); }).join(', '); - } - s += ')'; +var JSONtoString = alasql.utils.JSONtoString = function (obj) { + var s = ''; + if(typeof obj == "string") s = '"'+obj+'"'; + else if(typeof obj == "number") s = obj; + else if(typeof obj == "boolean") s = obj; + else if(typeof obj == "object") { + if(obj instanceof Array) { + s += '['+obj.map(function(b){ + return JSONtoString(b); + }).join(',')+']'; + } else if(!obj.toJavaScript || obj instanceof yy.Json) { + // to prevent recursion + s = '{'; + var ss = []; + for(var k in obj) { + var s1 = ''; + if(typeof k == "string") s1 += '"'+k+'"'; + else if(typeof k == "number") s1 += k; + else if(typeof k == "boolean") s1 += k; + else { + throw new Error('THis is not ES6... no expressions on left side yet'); + } + s1 += ':'+JSONtoString(obj[k]); + ss.push(s1); + }; + s += ss.join(',')+'}'; + } else if(obj.toString) { + s = obj.toString(); + } else { + throw new Error('1Can not show JSON object '+JSON.stringify(obj)); + } + } else { + throw new Error('2Can not show JSON object '+JSON.stringify(obj)); } - if(this.as) s+= ' '+K('AS')+' '+L(this.as); + return s; } -//yy.CreateDatabase.prototype.compile = returnUndefined; -yy.AttachDatabase.prototype.execute = function (databaseid, params, cb) { - // console.log(alasql.useid, databaseid, this.databaseid); - // console.trace(); - if(!alasql.engines[this.engineid]) { - throw new Error('Engine "'+this.engineid+'" is not defined.'); - }; - var res = alasql.engines[this.engineid].attachDatabase(this.databaseid, this.as, this.args, params, cb); - return res; -}; -// CREATE DATABASE databaseid -yy.DetachDatabase = function (params) { return yy.extend(this, params); }; -yy.DetachDatabase.prototype.toString = function() { - var s = K('DETACH'); - s += ' '+K('DATABASE')+' '+L(this.databaseid); - return s; -} -//yy.CreateDatabase.prototype.compile = returnUndefined; -yy.DetachDatabase.prototype.execute = function (databaseid, params, cb) { - // console.log(alasql.useid, databaseid, this.databaseid); - // console.trace(); - if(!alasql.databases[this.databaseid].engineid) { - throw new Error('Cannot detach database "'+this.engineid+'", because it was not attached.'); - }; - var res; - - var dbid = this.databaseid; - if(dbid == alasql.DEFAULTDATABASEID) { - throw new Error("Drop of default database is prohibited"); - } -// console.log(dbid); - if(!alasql.databases[dbid]) { - if(!this.ifexists) { - throw new Error("Database '"+dbid+"' does not exist"); +function JSONtoJavaScript(obj, context, tableid, defcols) { + var s = ''; + if(typeof obj == "string") s = '"'+obj+'"'; + else if(typeof obj == "number") s = '('+obj+')'; + else if(typeof obj == "boolean") s = obj; + else if(typeof obj == "object") { + if(obj instanceof Array) { + s += '['+obj.map(function(b){ + return JSONtoJavaScript(b, context, tableid, defcols); + }).join(',')+']'; + } else if(!obj.toJavaScript || obj instanceof yy.Json) { + // to prevent recursion + s = '{'; + var ss = []; + for(var k in obj) { + var s1 = ''; + if(typeof k == "string") s1 += '"'+k+'"'; + else if(typeof k == "number") s1 += k; + else if(typeof k == "boolean") s1 += k; + else { + throw new Error('THis is not ES6... no expressions on left side yet'); + } + s1 += ':'+JSONtoJavaScript(obj[k], context, tableid, defcols); + ss.push(s1); + }; + s += ss.join(',')+'}'; + } else if(obj.toJavaScript) { + s = obj.toJavaScript(context, tableid, defcols); } else { - res = 0; + throw new Error('1Can not parse JSON object '+JSON.stringify(obj)); } } else { - delete alasql.databases[dbid]; - if(dbid == alasql.useid) { - alasql.use(); - } - res = 1; + throw new Error('2Can not parse JSON object '+JSON.stringify(obj)); } - if(cb) cb(res); - return res; -// var res = alasql.engines[this.engineid].attachDatabase(this.databaseid, this.as, cb); -// return res; -}; -// USE DATABSE databaseid -// USE databaseid -yy.UseDatabase = function (params) { return yy.extend(this, params); }; -yy.UseDatabase.prototype.toString = function() { - return K('USE') +' '+K('DATABASE')+' '+L(this.databaseid); + return s; } -//yy.UseDatabase.prototype.compile = returnUndefined; -yy.UseDatabase.prototype.execute = function (databaseid, params, cb) { - var dbid = this.databaseid; - if(!alasql.databases[dbid]) { - throw new Error("Database '"+dbid+"' does not exist") - }; - alasql.use(dbid); - var res = 1; - if(cb) cb(res); - return res; -}; -// DROP DATABASE databaseid -yy.DropDatabase = function (params) { return yy.extend(this, params); } -yy.DropDatabase.prototype.toString = function() { - var s = K('DROP'); - if(this.ifexists) s += ' '+K('IF')+' '+K('EXISTS'); - s += ' '+K('DATABASE')+' '+L(this.databaseid); - return s; +yy.Json.prototype.toJavaScript = function(context, tableid, defcols) { + // TODO reod + return JSONtoJavaScript(this.value,context, tableid, defcols); } -//yy.DropDatabase.prototype.compile = returnUndefined; -yy.DropDatabase.prototype.execute = function (databaseid, params, cb) { - if(this.engineid) { -// console.log(this,this.databaseid, this.ifexists); - return alasql.engines[this.engineid].dropDatabase(this.databaseid, this.ifexists, cb); - } - var res; - - var dbid = this.databaseid; - if(dbid == alasql.DEFAULTDATABASEID) { - throw new Error("Drop of default database is prohibited"); + + +/* +// +// CAST and CONVERT functions +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ + +yy.Convert = function(params) { return yy.extend(this, params); }; +yy.Convert.prototype.toString = function() { + var s = 'CONVERT('; + s += this.dbtypeid; + if(typeof this.dbsize != 'undefined') { + s += '('+this.dbsize; + if(this.dbprecision) s += ','+dbprecision; + s += ')'; } -// console.log(dbid); - if(!alasql.databases[dbid]) { - if(!this.ifexists) { - throw new Error("Database '"+dbid+"' does not exist"); - } else { - res = 0; + s += ','+this.expression.toString(); + if(this.style) s += ','+this.style; + s += ')'; + return s; +}; +yy.Convert.prototype.toJavaScript = function(context, tableid, defcols) { + +// if(this.style) { + return 'alasql.stdfn.CONVERT('+this.expression.toJavaScript(context, tableid, defcols) + +',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+',style:'+ + this.style+'})'; +// } +/* + if(this.dbtypeid == 'INT') { + return '(('+this.expression.toJavaScript(context, tableid, defcols)+')|0)'; + } if(this.dbtypeid == 'STRING') { + return '(""+'+this.expression.toJavaScript(context, tableid, defcols)+')'; + } if(this.dbtypeid == 'NUMBER') { + return '(+('+this.expression.toJavaScript(context, tableid, defcols)+'))'; + } if(this.dbtypeid == 'DATE') { + if(alasql.options.datetimeformat == 'javascript') { + return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; + } else if(alasql.options.datetimeformat == 'sql') { + return this.expression.toJavaScript(context, tableid, defcols); } - } else { - if(alasql.databases[dbid].engineid) { - throw new Error("Cannot drop database '"+dbid+"', because it is attached. Detach it."); + } if(this.dbtypeid == 'DATETIME') { + if(alasql.options.datetimeformat == 'javascript') { + return '(new Date('+this.expression.toJavaScript(context, tableid, defcols)+'))'; + } else if(alasql.options.datetimeformat == 'sql') { + return this.expression.toJavaScript(context, tableid, defcols); } + } else { - delete alasql.databases[dbid]; - if(dbid == alasql.useid) { - alasql.use(); - } - res = 1; - } - if(cb) cb(res); - return res; + }; +*/ + throw new Error('There is not such type conversion for '+this.toString()); }; +/** + Convert one type to another + */ +alasql.stdfn.CONVERT = function(value, args) { + var val = value; +// console.log(args); + if(args.style) { + // TODO 9,109, 20,120,21,121,126,130,131 conversions + var t; + if(/\d{8}/.test(val)) t = new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2)); + else t = new Date(val); + + if(args.style == 1) { // mm/dd/yy + val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+("0"+t.getYear()).substr(-2); + } else if(args.style == 2) { // yy.mm.dd + val = ("0"+t.getYear()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); + } else if(args.style == 3) { // dd/mm/yy + val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getYear()).substr(-2); + } else if(args.style == 4) { // dd.mm.yy + val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getYear()).substr(-2); + } else if(args.style == 5) { // dd-mm-yy + val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getYear()).substr(-2); + } else if(args.style == 6) { // dd mon yy + val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+("0"+t.getYear()).substr(-2); + } else if(args.style == 7) { // Mon dd,yy + val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+("0"+t.getYear()).substr(-2); + } else if(args.style == 8) { // hh:mm:ss + val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); + + } else if(args.style == 10) { // mm-dd-yy + val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+("0"+t.getYear()).substr(-2); + } else if(args.style == 11) { // yy/mm/dd + val = ("0"+t.getYear()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); + } else if(args.style == 12) { // yymmdd + val = ("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); + + } else if(args.style == 101) { // mm/dd/yy + val = ("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2)+'/'+t.getFullYear(); + } else if(args.style == 102) { // yy.mm.dd + val = t.getFullYear()+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+("0"+t.getDate()).substr(-2); + } else if(args.style == 103) { // dd/mm/yy + val = ("0"+t.getDate()).substr(-2)+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+t.getFullYear(); + } else if(args.style == 104) { // dd.mm.yy + val = ("0"+t.getDate()).substr(-2)+'.'+("0"+(t.getMonth()+1)).substr(-2)+'.'+t.getFullYear(); + } else if(args.style == 105) { // dd-mm-yy + val = ("0"+t.getDate()).substr(-2)+'-'+("0"+(t.getMonth()+1)).substr(-2)+'-'+t.getFullYear(); + } else if(args.style == 106) { // dd mon yy + val = ("0"+t.getDate()).substr(-2)+' '+t.toString().substr(4,3).toLowerCase()+' '+t.getFullYear(); + } else if(args.style == 107) { // Mon dd,yy + val = t.toString().substr(4,3)+' '+("0"+t.getDate()).substr(-2)+','+t.getFullYear(); + } else if(args.style == 108) { // hh:mm:ss + val = ("0"+t.getHours()).substr(-2)+':'+("0"+(t.getMinutes()+1)).substr(-2)+':'+("0"+t.getSeconds()).substr(-2); + } else if(args.style == 110) { // mm-dd-yy + val = ("0"+(t.getMonth()+1)).substr(-2)+'-'+("0"+t.getDate()).substr(-2)+'-'+t.getFullYear(); + } else if(args.style == 111) { // yy/mm/dd + val = t.getFullYear()+'/'+("0"+(t.getMonth()+1)).substr(-2)+'/'+("0"+t.getDate()).substr(-2); + } else if(args.style == 112) { // yymmdd + val = t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2); + } else { + throw new Error('The CONVERT style '+args.style+' is not realized yet.'); + } + }; + if(args.dbtypeid == 'Date') { + return new Date(val); + } else if(args.dbtypeid.toUpperCase() == 'DATE') { + var d = new Date(val); + var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); + return s; + } else if(args.dbtypeid == 'DATETIME') { + var d = new Date(val); + var s = d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2); + s += " "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2); + s += '.'+("00"+d.getMilliseconds()).substr(-3) + return s; + } else if(args.dbtypeid.toUpperCase() == 'STRING') { + return ""+val; + } else if(args.dbtypeid.toUpperCase() == 'NUMBER' || args.dbtypeid == 'FLOAT') { + return +val; + } else if(args.dbtypeid.toUpperCase() == 'MONEY') { + var m = +val; + return (m|0)+((m*100)%100)/100; + } else if(args.dbtypeid.toUpperCase() == 'BOOLEAN') { + return !!val; + } else if(args.dbtypeid.toUpperCase() == 'INT') { + return val|0; + } else if(args.dbtypeid.toUpperCase() == 'VARCHAR' || args.dbtypeid == 'NVARCHAR') { + if(args.dbsize) return (""+val).substr(0,args.dbsize); + else return ""+val; + } else if(args.dbtypeid.toUpperCase() == 'CHAR' || args.dbtypeid == 'NCHAR') { + return (val+(new Array(args.dbsize+1).join(" "))).substr(0,args.dbsize); + //else return ""+val.substr(0,1); + } +}; /* // -// SET for Alasql.js -// Date: 01.12.2014 +// CREATE TABLE for Alasql.js +// Date: 03.11.2014 // (c) 2014, Andrey Gershun // */ -yy.Declare = function (params) { return yy.extend(this, params); } -yy.Declare.prototype.toString = function() { - var s = K('DECLARE')+' '; - if(this.declares && this.declares.length > 0) { - s = this.declares.map(function(declare){ - var s = ''; - s += '@'+L(declare.variable)+' '; - s += declare.dbtypeid; - if(this.dbsize) s += '('+N(this.dbsize); - if(this.dbprecision) s+= ','+N(this.dbprecision); - s += ')'; - if(declare.expression) s += ' = '+declare.expression.toString(); - return s; - }).join(','); +yy.ColumnDef = function (params) { return yy.extend(this, params); } +yy.ColumnDef.prototype.toString = function() { + var s = this.columnid; + if(this.dbtypeid) s += ' '+this.dbtypeid; + if(this.dbsize) { + s += '('+this.dbsize; + if(this.dbprecision) s += ','+this.dbprecision; + s += ')'; + }; + if(this.primarykey) s += ' PRIMARY KEY'; + if(this.notnull) s += ' NOT NULL'; + return s; +} + +yy.CreateTable = function (params) { return yy.extend(this, params); } +yy.CreateTable.prototype.toString = function() { + var s = K('CREATE'); + if(this.temporary) s+=' '+K('TEMPORARY'); + if(this.view) s += ' '+K('VIEW'); + else s += ' '+K('TABLE'); + if(this.ifnotexists) s += ' '+K('IF')+' '+K('NOT')+' '+K('EXISTS'); + s += ' '+this.table.toString(); + if(this.viewcolumns) { + s += '('+this.viewcolumns.map(function(vcol){ + return vcol.toString(); + }).join(',')+')'; + } + if(this.as) s += ' '+K('AS')+' '+L(this.as); + else { + var ss = this.columns.map(function(col){ + return col.toString(); + }); + s += ' ('+NL()+ID()+ss.join(','+NL()+ID())+')'; + }; + if(this.view && this.select) { + s += ' AS '+this.select.toString(); } return s; } -yy.Declare.prototype.execute = function (databaseid,params,cb) { - var res = 1; - if(this.declares && this.declares.length > 0) { - this.declares.map(function(declare){ - var dbtypeid = declare.dbtypeid; - if(!alasql.fn[dbtypeid]) dbtypeid = dbtypeid.toUpperCase(); +// CREATE TABLE +//yy.CreateTable.prototype.compile = returnUndefined; +yy.CreateTable.prototype.execute = function (databaseid, params, cb) { +// var self = this; + var db = alasql.databases[this.table.databaseid || databaseid]; - alasql.declares[declare.variable] = {dbtypeid:dbtypeid, - dbsize:declare.dbsize, dbprecision:declare.dbprecision}; + var tableid = this.table.tableid; + if(!tableid) { + throw new Error('Table name is not defined'); + } - // Set value - if(declare.expression) { - // console.log(this.expression.toJavaScript('','', null)); - alasql.vars[declare.variable] = new Function("params,alasql","return " - +declare.expression.toJavaScript('','', null))(params,alasql); - if(alasql.declares[declare.variable]) { - alasql.vars[declare.variable] = alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable]); - } - }; - }); - }; - if(cb) res=cb(res); - return res; -}; +// var ifnotexists = this.ifnotexists; + var columns = this.columns; + // if(false) { + // if(!columns) { + // throw new Error('Columns are not defined'); + // } + // } + var constraints = this.constraints||[]; +// console.log(this); - - -/* -// -// SHOW for Alasql.js -// Date: 19.11.2014 -// (c) 2014, Andrey Gershun -// -*/ + // IF NOT EXISTS + if(this.ifnotexists && db.tables[tableid]) return 0; -yy.ShowDatabases = function (params) { return yy.extend(this, params); } -yy.ShowDatabases.prototype.toString = function() { - var s = K('SHOW')+' '+K('DATABASES'); - if(this.like) s += 'LIKE '+this.like.toString(); - return s; -} -yy.ShowDatabases.prototype.execute = function (databaseid, params, cb) { - if(this.engineid) { - return alasql.engines[this.engineid].showDatabases(this.like, cb); - } else { - var self = this; - var res = []; - for(dbid in alasql.databases) { - res.push({databaseid: dbid}); - }; - if(self.like && res && res.length > 0) { - res = res.filter(function(d){ - return d.databaseid.match(new RegExp((self.like.value).replace(/\%/g,'.*'),'g')); - }); - } - if(cb) cb(res); - return res; - }; + if(db.tables[tableid]) { + throw new Error('Can not create table \''+tableid + +'\', because it already exists in the database \''+db.databaseid+'\''); + } -}; + var table = db.tables[tableid] = new alasql.Table(); // TODO Can use special object? + + var ss = []; + if(this.columns) { + this.columns.forEach(function(col) { + var dbtypeid = col.dbtypeid; + if(!alasql.fn[dbtypeid]) dbtypeid = dbtypeid.toUpperCase(); + var newcol = { + columnid: col.columnid, + dbtypeid: dbtypeid // TODO: Add types table + }; + if(col.default) { + ss.push('\''+col.columnid+'\':'+col.default.toJavaScript()); + } -yy.ShowTables = function (params) { return yy.extend(this, params); } -yy.ShowTables.prototype.toString = function() { - var s = K('SHOW')+' '+K('TABLES'); - if(this.databaseid) s += ' FROM '+this.databaseid; - if(this.like) s += ' '+K('LIKE')+' '+this.like.toString(); - return s; -} -yy.ShowTables.prototype.execute = function (databaseid, params, cb) { - var db = alasql.databases[this.databaseid || databaseid]; + table.columns.push(newcol); + table.xcolumns[newcol.columnid] = newcol; + + // Check for primary key + if(col.primarykey) { + var pk = table.pk = {}; + pk.columns = [col.columnid]; + pk.onrightfns = 'r[\''+col.columnid+'\']'; + pk.onrightfn = new Function("r",'return '+pk.onrightfns); + pk.hh = hash(pk.onrightfns); + table.indices[pk.hh] = {}; + }; - var self = this; - var res = []; - for(tableid in db.tables) { - res.push({tableid: tableid}); - }; - if(self.like && res && res.length > 0) { - res = res.filter(function(d){ - return d.tableid.match(new RegExp((self.like.value).replace(/\%/g,'.*'),'g')); }); }; - if(cb) cb(res); - return res; -}; + table.defaultfns = ss.join(','); -yy.ShowColumns = function (params) { return yy.extend(this, params); } -yy.ShowColumns.prototype.toString = function() { - var s = K('SHOW')+' '+K('COLUMNS'); - if(this.table.tableid) s += ' '+K('FROM')+' '+this.table.tableid; - if(this.databaseid) s += ' '+K('FROM')+' '+this.databaseid; - return s; -}; -yy.ShowColumns.prototype.execute = function (databaseid) { - var db = alasql.databases[this.databaseid || databaseid]; - var table = db.tables[this.table.tableid]; - var self = this; - if(table && table.columns) { - var res = table.columns.map(function(col){ - return {columnid: col.columnid, dbtypeid: col.dbtypeid, dbsize: col.dbsize}; +// if(constraints) { + constraints.forEach(function(con) { + //console.log(con, con.columns); + if(con.type == 'PRIMARY KEY') { + if(table.pk) { + throw new Error('Primary key already exists'); + } + var pk = table.pk = {}; + pk.columns = con.columns; + pk.onrightfns = pk.columns.map(function(columnid){ + return 'r[\''+columnid+'\']' + }).join("+'`'+"); + pk.onrightfn = new Function("r",'return '+pk.onrightfns); + pk.hh = hash(pk.onrightfns); + table.indices[pk.hh] = {}; + } + }); + + if(this.view && this.viewcolumns) { + var self = this; + this.viewcolumns.forEach(function(vcol,idx){ + self.select.columns[idx].as = vcol.columnid; }); - return res; - } else { - return []; } -}; -yy.ShowIndex = function (params) { return yy.extend(this, params); } -yy.ShowIndex.prototype.toString = function() { - var s = K('SHOW')+' '+K('INDEX'); - if(this.table.tableid) s += ' '+K('FROM')+' '+this.table.tableid; - if(this.databaseid) s += ' '+K('FROM')+' '+this.databaseid; - return s; -} -yy.ShowIndex.prototype.execute = function (databaseid) { - var db = alasql.databases[this.databaseid || databaseid]; - var table = db.tables[this.table.tableid]; - var self = this; - var res = []; - if(table && table.indices) { - for(var ind in table.indices) { - res.push({hh:ind, len:Object.keys(table.indices[ind]).length}); - } +// console.log(100,db.engineid); + if(db.engineid) { +// console.log(101,db.engineid); + return alasql.engines[db.engineid].createTable(this.table.databaseid || databaseid, tableid, this.ifnotexists, cb); +// console.log('createtable',res1); +// return res1; } - return res; -}; -yy.ShowCreateTable = function (params) { return yy.extend(this, params); } -yy.ShowCreateTable.prototype.toString = function() { - var s = K('SHOW')+' '+K('CREATE')+' '+K('TABLE')+' '+L(this.table.tableid); - if(this.databaseid) s += ' '+K('FROM')+' '+L(this.databaseid); - return s; -} -yy.ShowCreateTable.prototype.execute = function (databaseid) { - var db = alasql.databases[this.databaseid || databaseid]; - var table = db.tables[this.table.tableid]; - var self = this; - if(table) { - var s = K('CREATE')+' '+K('TABLE')+' '+L(this.table.tableid)+' ('; - var ss = []; - if(table.columns) { - table.columns.forEach(function(col){ - var a = L(col.columnid)+' '+K(col.dbtypeid); - if(col.dbsize) a += '('+N(col.dbsize)+')'; - if(col.primarykey) a += ' '+K('PRIMARY')+' '+K('KEY'); - // TODO extend - ss.push(a); - }); - s += ss.join(', '); +// } +// if(table.pk) { + table.insert = function(r) { + if(this.pk) { + var pk = this.pk; + var addr = pk.onrightfn(r); + if(typeof this.indices[pk.hh][addr] != 'undefined') { + throw new Error('Cannot insert record, because it already exists in primary key'); + } else { + table.data.push(r); + this.indices[pk.hh][addr]=r; + }; + } else { + table.data.push(r); + } + }; + + table.delete = function(i) { + if(this.pk) { + var r = this.data[i]; + var pk = this.pk; + var addr = pk.onrightfn(r); + if(typeof this.indices[pk.hh][addr] == 'undefined') { + throw new Error('Something wrong with index on table'); + } else { + this.indices[pk.hh][addr]=undefined; + }; + } + }; + + table.deleteall = function() { + this.data.length = 0; + if(this.pk) { +// var r = this.data[i]; + this.indices[this.pk.hh] = {}; + } + }; + + table.update = function(assignfn, i, params) { + if(this.pk) { + var r = this.data[i]; + var pk = this.pk; + var addr = pk.onrightfn(r,params); + if(typeof this.indices[pk.hh][addr] == 'undefined') { + throw new Error('Something wrong with index on table'); + } else { + this.indices[pk.hh][addr]=undefined; + assignfn(r,params,alasql); + var newaddr = pk.onrightfn(r); + if(typeof this.indices[pk.hh][newaddr] != 'undefined') { + throw new Error('Record already exists'); + } else { + this.indices[pk.hh][newaddr] = r; + } + } + + } else { + assignfn(this.data[i],params,alasql); }; - s += ')'; - return s; - } else { - throw new Error('There is no such table "'+this.table.tableid+'"'); + + }; + + if(this.view && this.select) { + table.view = true; +// console.log(this.select.toString()); +// console.log('this.table.databaseid',this.table.databaseid); +// console.log(this.select.compile(this.table.databaseid||databaseid)); + table.select = this.select.compile(this.table.databaseid||databaseid); } +// console.log(databaseid); +// console.log(db.databaseid,db.tables); +// console.log(table); + if(cb) cb(1); + + return 1; }; + + + + +// +// Date functions +// +// (c) 2014, Andrey Gershun +// + +/** Standard JavaScript data types */ + +alasql.fn.Date = Object; +alasql.fn.Date = Date; +alasql.fn.Number = Number; +alasql.fn.String = String; +alasql.fn.Boolean = Boolean; + +/** Extend Object with properties */ +stdfn.EXTEND = alasql.utils.extend; + + +stdfn.CHAR = String.fromCharCode.bind(String); +stdfn.ASCII = function(a) { + return a.charCodeAt(0); +}; + +/** + Return first non-null argument + See https://msdn.microsoft.com/en-us/library/ms190349.aspx +*/ +stdfn.COALESCE = function() { + for(var i=0;i 0) { - var fs = 'alasql.vars[\''+this.variable+'\']'; - fs += this.props.map(function(prop){ - if(typeof prop == 'string') { - return '[\''+prop+'\']'; - } else if(typeof prop == 'number') { - return '['+prop+']'; - } else { - // console.log('prop:',prop, prop.toJavaScript()); - return '['+prop.toJavaScript()+']'; -// } else { -// console.log(prop, typeof ); -// throw new Error('Wrong SET property'); - } - }).join(); -// console.log(fs); - new Function("value,alasql",fs +'=value')(res,alasql); - } else { - alasql.vars[this.variable] = res; - } - } - var res = 1; - if(cb) res=cb(res); - return res; -}; - - - -// Console functions -/* -alasql.con = { - results:{} -}; - -alasql.con.open = function(el) { - // For browser only - if (typeof exports === 'object') return; - - // Find parent element - el = el || document.getElementById('alasql-con') || document.getElementsByTagName('body'); - if(!el) {throw new Error('Cannot fid element for console.')} - - var conel = document.createElement('div'); - conel.style.width = "1000px"; - conel.style.height = "320px"; - - alasql.con.conel = conel; - - var lenta = document.createElement('div'); - lenta.style.width = "1000px"; - lenta.style.height = "200px"; - lenta.style.overflow = "scroll"; - alasql.con.lenta = lenta; - - var inpel = document.createElement('div'); - inpel.style.width = "1000px"; - inpel.style.height = "100px"; - inpel.style.contentEditable = true; - inpel.innerHTML = 'command '; - alasql.con.inpel = inpel; - - conel.appendChild(lenta); - conel.appendChild(inpel); - el.appendChild(conel); -}; - -alasql.con.clear = function() { - // For browser only - if (typeof exports === 'object') return; - alasql.con.conel.innerHTML = ''; +// DROP TABLE +yy.DropTable.prototype.execute = function (databaseid, params, cb) { +// console.log(arguments); +// console.log(alasql.databases[databaseid]); + var db = alasql.databases[this.table.databaseid || databaseid]; + var tableid = this.table.tableid; +// console.log(db, this.table.databaseid ); + if(db.engineid /*&& alasql.options.autocommit*/) { + return alasql.engines[db.engineid].dropTable(this.table.databaseid || databaseid,tableid, this.ifexists, cb); + } + if(!this.ifexists || this.ifexists && db.tables[tableid]) { + if(!db.tables[tableid]) { + if(!alasql.options.dropifnotexists) { + throw new Error('Can not drop table \''+this.table.tableid+'\', because it does not exist in the database.'); + } + } else { + delete db.tables[tableid]; + return 1; + } + } + return 0; }; -alasql.con.close = function() { - // For browser only - if (typeof exports === 'object') return; - alasql.con.conel.removeChild(alasql.con.lenta); - alasql.con.conel.removeChild(alasql.con.inel); - alasql.con.conel.parentElement.removeChild(conel); -}; +yy.TruncateTable = function (params) { return yy.extend(this, params); } +yy.TruncateTable.prototype.toString = function() { + var s = K('TRUNCATE')+' '+K('TABLE'); + s += ' '+this.table.toString(); + return s; +} -alasql.con.log = function() { - // For browser only - if (typeof exports === 'object') { - console.log.bind(console).apply(this, arguments); +yy.TruncateTable.prototype.execute = function (databaseid, params, cb) { + var db = alasql.databases[this.table.databaseid || databaseid]; + var tableid = this.table.tableid; +// console.log(db, this.table.databaseid ); + if(db.engineid) { + return alasql.engines[db.engineid].truncateTable(this.table.databaseid || databaseid,tableid, this.ifexists, cb); + } + if(db.tables[tableid]) { + db.tables[tableid].data = []; } else { - var s = '

'; - s += Array.prototype.slice.call(arguments, 0).map(function(arg){ - return arg.toString(); - }).join(' '); - s += '
'; - alasql.con.conel.innerHTML += s; - }; - + throw new Error('Cannot truncate table becaues it does not exist'); + } + return 0; }; + + +/* +// +// ALTER TABLE for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// */ -alasql.test = function(name, times, fn) { - if(arguments.length == 0) { - alasql.log(alasql.con.results); - return; - } else if(arguments.length == 1) { - var tm = Date.now(); - fn(); - alasql.con.log(Date.now()-tm); - return; - } - if(arguments.length == 2) { - fn = times; - times = 1; - } +// ALTER TABLE table1 RENAME TO table2 +yy.AlterTable = function (params) { return yy.extend(this, params); } +yy.AlterTable.prototype.toString = function() { + var s = 'ALTER TABLE '+this.table.toString(); + if(this.renameto) s += ' RENAME TO '+this.renameto; + return s; +} - var tm = Date.now(); - for(var i=0;i',sql); + table.columns.push(col); + table.xcolumns[columnid] = col; - if(res instanceof Array) { - if(console.table) { - // For Chrome and other consoles - console.table(res); - } else { - // Add print procedure - console.log(JSONtoString(res)); - } - } else { - console.log(JSONtoString(res)); + for(var i=0, ilen=table.data.length; i'; - s += '
'+alasql.pretty(sql)+'
'; + + // TODO + return 1; + } else if(this.renamecolumn) { + var db = alasql.databases[this.table.databaseid || databaseid]; + db.dbversion++; + + var tableid = this.table.tableid; + var table = db.tables[tableid]; + var columnid = this.renamecolumn; + var tocolumnid = this.to; + + var col; + if(!table.xcolumns[columnid]) { + throw new Error('Column "'+columnid+'" is not found in the table "'+tableid+'"'); + } + if(table.xcolumns[tocolumnid]) { + throw new Error('Column "'+tocolumnid+'" already exists in the table "'+tableid+'"'); } - if(res instanceof Array) { - if(res.length == 0) { - s += '

[ ]

' - } else if(typeof res[0] != 'object' || res[0] instanceof Array) { - for(var i=0,ilen=res.length;i'; + if(columnid != tocolumnid) { + for(var j=0; j 0) { + for(var i=0, ilen=table.data.length; i 0) { + for(var i=0, ilen=table.data.length; i'; +// DROP TABLE +yy.DropIndex.prototype.compile = function (db) { + var indexid = this.indexid; + return function() { + return 1; } - // if () {} +}; + + +/* +// +// WITH SELECT for Alasql.js +// Date: 11.01.2015 +// (c) 2015, Andrey Gershun +// +*/ + + +yy.WithSelect = function (params) { return yy.extend(this, params); } +yy.WithSelect.prototype.toString = function() { + var s = K('WITH')+' '; + s += this.withs.map(function(w){ + return L(w.name)+' '+K('AS')+' ('+w.select.toString()+')'; + }).join(',')+' '; + s += this.select.toString(); + return s; +}; + +yy.WithSelect.prototype.execute = function (databaseid,params,cb) { + var self = this; + // Create temporary tables + var savedTables = []; + self.withs.forEach(function(w){ + savedTables.push(alasql.databases[databaseid].tables[w.name]); + var tb = alasql.databases[databaseid].tables[w.name] = new Table({tableid:w.name}); + tb.data = w.select.execute(databaseid,params); + }); + + var res = 1; + res = this.select.execute(databaseid,params,function(data){ + // Clear temporary tables +// setTimeout(function(){ + self.withs.forEach(function(w,idx){ + if(savedTables[idx]) alasql.databases[databaseid].tables[w.name] = savedTables[idx] ; + else delete alasql.databases[databaseid].tables[w.name]; + }); +// },0); + + if(cb) data = cb(data); + return data; + }); + return res; +}; + +/* +// CREATE TABLE +//yy.CreateTable.prototype.compile = returnUndefined; +yy.CreateView.prototype.execute = function (databaseid) { +// var self = this; + var db = alasql.databases[this.view.databaseid || databaseid]; + var v = db.views[this.view.viewid] = new View(); + +// console.log(databaseid); +// console.log(db.databaseid,db.tables); +// console.log(table); + + return 1; +}; + +yy.DropView = function (params) { return yy.extend(this, params); } +yy.DropView.prototype.toString = function() { + var s = K('DROP')+' '+K('VIEW'); + s += ' '+this.view.toString(); + return s; +}; + +// CREATE TABLE +//yy.CreateTable.prototype.compile = returnUndefined; +yy.DropView.prototype.execute = function (databaseid) { +// var self = this; +}; + +*/ + + + +/* +// +// CREATE VIEW for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ - // if(typeof res == 'object') { - // s += '

'+JSON.stringify(res)+'

'; - // } else { - // } +yy.If = function (params) { return yy.extend(this, params); } +yy.If.prototype.toString = function() { + var s = K('IF')+' '; + s += this.expression.toString(); + s += ' '+this.thenstat.toString(); + if(this.elsestat) s += ' '+K('ELSE')+NL()+ID()+this.thenstat.toString(); return s; }; +// CREATE TABLE +//yy.CreateTable.prototype.compile = returnUndefined; +yy.If.prototype.execute = function (databaseid,params,cb){ + var res; +// console.log(this); +// console.log(this.expression.toJavaScript('{}','',null)); +// console.log(); + var fn = new Function('params,alasql,p','return '+this.expression.toJavaScript('({})','',null)).bind(this); +// var fn = new Function('params,alasql,p','console.log(this.thenstat);return '+this.expression.toJavaScript('({})','',null)).bind(this); + if(fn(params,alasql)) res = this.thenstat.execute(databaseid,params,cb); + else { + if(this.elsestat) res = this.elsestat.execute(databaseid,params,cb); + else { + if(cb) res = cb(res); + } + } +// else res = this.elsestat.execute(databaseid,params,cb,scope); + return res; +}; -function scrollTo(element, to, duration) { - if (duration <= 0) return; - var difference = to - element.scrollTop; - var perTick = difference / duration * 10; - - setTimeout(function() { - if (element.scrollTop==to) return; - element.scrollTop = element.scrollTop + perTick; - scrollTo(element, to, duration - 10); - }, 10); -} + + +/* +// +// CREATE VIEW for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ -alasql.prompt = function(el, useidel, firstsql) { - if(typeof exports == 'object') { - throw new Error('The functionality of prompt is not realized for Node.js'); - }; - var prompti = 0; - if(typeof el == 'string') el = document.getElementById(el); - if(typeof useidel == 'string') useidel = document.getElementById(useidel); - useidel.textContent = alasql.useid; +yy.While = function (params) { return yy.extend(this, params); } +yy.While.prototype.toString = function() { + var s = 'WHILE '; + s += this.expression.toString(); + s += ' '+this.loopstat.toString(); + return s; +}; - if(firstsql) { - alasql.prompthistory.push(firstsql); - prompti = alasql.prompthistory.length; - try { - var tm = Date.now(); - alasql.log(firstsql); - alasql.write('

'+(Date.now()-tm)+' ms

'); - } catch (err) { - alasql.write('

'+olduseid+'> '+sql+'

'); - alasql.write('

'+err+'

'); +yy.While.prototype.execute = function (databaseid,params,cb) { + var self = this; + var res = []; +// console.log(this.expression.toJavaScript()); + var fn = new Function('params,alasql,p','return '+this.expression.toJavaScript()); +// console.log('cb',!!cb); + if(cb) { + var first = false; + loop(); + function loop(data) { + if(first) { + res.push(data); + } else { + first = true; + }; + setTimeout(function(){ + if(fn(params,alasql)) { + self.loopstat.execute(databaseid,params,loop); + } else { + res = cb(res); + } + },0); + } + } else { + while(fn(params,alasql)) { + var res1 = self.loopstat.execute(databaseid,params); + res.push(res1); } - }; + } + return res; +}; - var y = el.getBoundingClientRect().top + document.getElementsByTagName('body')[0].scrollTop; - scrollTo(document.getElementsByTagName('body')[0],y,500); +yy.Break = function (params) { return yy.extend(this, params); } +yy.Break.prototype.toString = function() { + var s = K('BREAK'); + return s; +}; - el.onkeydown = function(event) { - if(event.which == 13) { - var sql = el.value; - var olduseid = alasql.useid; - el.value = ''; - alasql.prompthistory.push(sql); - prompti = alasql.prompthistory.length; - try { - var tm = Date.now(); - alasql.log(sql); - alasql.write('

'+(Date.now()-tm)+' ms

'); - } catch (err) { - alasql.write('

'+olduseid+'> '+alasql.pretty(sql, false)+'

'); - alasql.write('

'+err+'

'); - } - el.focus(); -// console.log(el.getBoundingClientRect().top); - useidel.textContent = alasql.useid; - var y = el.getBoundingClientRect().top + document.getElementsByTagName('body')[0].scrollTop; - scrollTo(document.getElementsByTagName('body')[0],y,500); - } else if(event.which == 38) { - prompti--; if(prompti<0) prompti = 0; - if(alasql.prompthistory[prompti]) { - el.value = alasql.prompthistory[prompti]; - event.preventDefault(); - } +yy.Break.prototype.execute = function (databaseid,params,cb,scope) { + var res = 1; + if(cb) res = cb(res); + return res; +}; - } else if(event.which == 40) { - prompti++; - if(prompti>=alasql.prompthistory.length) { - prompti = alasql.prompthistory.length; - el.value = ''; - } else if(alasql.prompthistory[prompti]) { - el.value = alasql.prompthistory[prompti]; - event.preventDefault(); - } - } +yy.Continue = function (params) { return yy.extend(this, params); } +yy.Continue.prototype.toString = function() { + var s = K('CONTINUE'); + return s; +}; - } -} +yy.Continue.prototype.execute = function (databaseid,params,cb,scope) { + var res = 1; + if(cb) res = cb(res); + return res; +}; +yy.BeginEnd = function (params) { return yy.extend(this, params); } +yy.BeginEnd.prototype.toString = function() { + var s = K('BEGIN')+' '+this.statements.toString()+' '+K('END'); + return s; +}; +yy.BeginEnd.prototype.execute = function (databaseid,params,cb,scope) { + var self = this; + var res = []; + var idx = 0; + runone(); + function runone() { + self.statements[idx].execute(databaseid,params,function(data){ + res.push(data); + idx++; + if(idx=0) { + q += "+"+values[idx].toJavaScript(); + } else if (alasql.fn[table.xcolumns[col.columnid].dbtypeid]) { + q += "(new "+table.xcolumns[col.columnid].dbtypeid+"("; + q += values[idx].toJavaScript(); + q += "))"; + } else { + q += values[idx].toJavaScript(); + }; + } else { + q += values[idx].toJavaScript(); + } + ss.push(q); + }); + } else { +// var table = db.tables[tableid]; +// console.log('table1', db, self); +//console.log(111, table.columns); +//console.log(74,table); + if((values instanceof Array) && table.columns && table.columns.length > 0) { + table.columns.forEach(function(col, idx){ -/* -// -// Commit for Alasql.js -// Date: 01.12.2014 -// (c) 2014, Andrey Gershun -// -*/ -yy.BeginTransaction = function (params) { return yy.extend(this, params); } -yy.BeginTransaction.prototype.toString = function() { - return K('BEGIN')+' '+K('TRANSACTION'); -} - -yy.BeginTransaction.prototype.execute = function (databaseid,params, cb) { - var res = 1; - if(alasql.databases[databaseid].engineid) { - return alasql.engines[alasql.databases[alasql.useid].engineid].begin(databaseid, cb); - } else { - // alasql commit!!! - } - if(cb) cb(res); - return res; -}; - -yy.CommitTransaction = function (params) { return yy.extend(this, params); } -yy.CommitTransaction.prototype.toString = function() { - return K('COMMIT')+' '+K('TRANSACTION'); -} - -yy.CommitTransaction.prototype.execute = function (databaseid,params, cb) { - var res = 1; - if(alasql.databases[databaseid].engineid) { - return alasql.engines[alasql.databases[alasql.useid].engineid].commit(databaseid, cb); - } else { - // alasql commit!!! - } - if(cb) cb(res); - return res; -}; - -yy.RollbackTransaction = function (params) { return yy.extend(this, params); } -yy.RollbackTransaction.prototype.toString = function() { - return K('ROLLBACK')+' '+K('TRANSACTION'); -} - -yy.RollbackTransaction.prototype.execute = function (databaseid,params,cb) { - var res = 1; - if(alasql.databases[databaseid].engineid) { - return alasql.engines[alasql.databases[databaseid].engineid].rollback(databaseid, cb); - } else { - // alasql commit!!! - } - if(cb) cb(res); - return res; -}; + var q = '\''+col.columnid +'\':'; +// var val = values[idx].toJavaScript(); + if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid) >=0) { + q += "+"+values[idx].toJavaScript(); + } else if (alasql.fn[col.dbtypeid]) { + q += "(new "+col.dbtypeid+"("; + q += values[idx].toJavaScript(); + q += "))"; + } else { + q += values[idx].toJavaScript(); + } -// -// into functions -// -// (c) 2014 Andrey Gershun -// + // if(table.xcolumns && table.xcolumns[col.columnid] && + // (table.xcolumns[col.columnid].dbtypeid == "DATE" || + // table.xcolumns[col.columnid].dbtypeid == "DATETIME" + // )) { + // val = "(new Date("+val+"))"; + // } + // || table.xcolumns[col.columnid].dbtypeid == "FLOAT" + // || table.xcolumns[col.columnid].dbtypeid == "NUMBER" + // || table.xcolumns[col.columnid].dbtypeid == "MONEY" + // )) q += '+'; + // console.log(self.values[idx].toString()); + //console.log(self); +// q += val; -alasql.into.SQL = function(filename, opts, data, columns, cb) { - var res; - if(typeof filename == 'object') { - opts = filename; - filename = undefined; - } - var opt = {}; - alasql.utils.extend(opt, opts); - if(typeof opt.tableid == 'undefined') { - throw new Error('Table for INSERT TO is not defined.'); - }; + // if(table.xcolumns && table.xcolumns[col.columnid] && table.xcolumns[col.columnid].dbtypeid == "INT") q += '|0'; + ss.push(q); - var s = ''; - if(columns.length == 0) { - if(typeof data[0] == "object") { - columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); - } else { - // What should I do? - // columns = [{columnid:"_"}]; - } - } + // console.log(fld); + // TODO: type checking and conversions + // rec[fld.fldid] = eval(self.insertExpression[idx].toJavaScript('','')); + // console.log(rec[fld.fldid]); + // if(rec[fld.fldid] == "NULL") rec[fld.fldid] = undefined; - for(var i=0,ilen=data.length;i 0) { - columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); - }; - // If one parameter - if(typeof filename == 'object') { - opts = filename; - filename = undefined; - }; - var res = data.length; - var s = ''; - if(data.length > 0) { - var key = columns[0].columnid; - s += data.map(function(d){ - return d[key]; - }).join('\n'); - } -// } else { -// if(typeof exports == 'object') { -// process.stdout.write(s); -// } else { -// console.log(s); -// }; -// } - res = alasql.utils.saveFile(filename,s); - if(cb) res = cb(res); - return res; -}; -alasql.into.TAB = alasql.into.TSV = function(filename, opts, data, columns, cb) { - var opt = {}; - alasql.utils.extend(opt, opts); - opt.separator = '\t'; - return alasql.into.CSV(filename, opt, data, columns, cb); +/* +// +// DELETE for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ + +yy.Delete = function (params) { return yy.extend(this, params); } +yy.Delete.prototype.toString = function() { + var s = 'DELETE FROM '+this.table.toString(); + if(this.where) s += ' WHERE '+this.where.toString(); + return s; } -alasql.into.CSV = function(filename, opts, data, columns, cb) { - if(columns.length == 0 && data.length > 0) { - columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); - } - if(typeof filename == 'object') { - opts = filename; - filename = undefined; - } +yy.Delete.prototype.compile = function (databaseid) { +// console.log(11,this); + databaseid = this.table.databaseid || databaseid; + var tableid = this.table.tableid; + var statement; + var db = alasql.databases[databaseid]; - var opt = {}; - opt.separator = ','; - opt.quote = '"'; - alasql.utils.extend(opt, opts); - var res = data.length; - var s = ''; - if(opt.headers) { - s += columns.map(function(col){ - return col.columnid; - }).join(opt.separator)+'\n'; - } - data.forEach(function(d, idx){ - s += columns.map(function(col){ - var s = d[col.columnid]; - s = (s+"").replace(new RegExp('\\'+opt.quote,"g"),'""'); - if((s+"").indexOf(opt.separator) > -1 || (s+"").indexOf(opt.quote) > -1) s = opt.quote + s + opt.quote; - return s; - }).join(opt.separator)+'\n'; - }); - res = alasql.utils.saveFile(filename,s); - if(cb) res = cb(res); - return res; -}; + if(this.where) { +// try { +// console.log(this, 22, this.where.toJavaScript('r','')); +// } catch(err){console.log(444,err)}; +// var query = {}; + wherefn = new Function('r,params','return ('+this.where.toJavaScript('r','')+')'); +// console.log(wherefn); + statement = (function (params, cb) { + if(db.engineid && alasql.engines[db.engineid].deleteFromTable) { + return alasql.engines[db.engineid].deleteFromTable(databaseid, tableid, wherefn, params, cb); + } -alasql.into.XLSX = function(filename, opts, data, columns, cb) { - if(columns.length == 0 && data.length > 0) { - columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); - } + if(alasql.options.autocommit && db.engineid && db.engineid == 'LOCALSTORAGE') { + alasql.engines[db.engineid].loadTableData(databaseid,tableid); + } - if(typeof exports == 'object') { - var XLSX = require('xlsx'); - } else { - var XLSX = window.XLSX; - }; - if(typeof filename == 'object') { - opts = filename; - filename = undefined; - } - var opt = {sheetid:'Sheet1',headers:true}; - alasql.utils.extend(opt, opts); + var table = db.tables[tableid]; +// table.dirty = true; + var orignum = table.data.length; - var res = 1; + var newtable = []; + for(var i=0, ilen=table.data.length;i -1) { - cells = wb.Sheets[opt.sheetid]; - } else { - wb.SheetNames.push(opt.sheetid); - wb.Sheets[opt.sheetid] = {}; - cells = wb.Sheets[opt.sheetid]; - } + return statement; - var range = "A1"; - if(opt.range) range = opt.range; +}; + +yy.Delete.prototype.execute = function (databaseid, params, cb) { + return this.compile(databaseid)(params,cb); +} + + +/* +// +// UPDATE for Alasql.js +// Date: 03.11.2014 +// (c) 2014, Andrey Gershun +// +*/ + +yy.Update = function (params) { return yy.extend(this, params); } +yy.Update.prototype.toString = function() { + var s = 'UPDATE '+this.table.toString(); + if(this.columns) s += ' SET '+this.columns.toString(); + if(this.where) s += ' WHERE '+this.where.toString(); + return s; +} + + +yy.SetColumn = function (params) { return yy.extend(this, params); } +yy.SetColumn.prototype.toString = function() { + return this.columnid.toString() + '='+this.expression.toString(); +} + +yy.Update.prototype.compile = function (databaseid) { +// console.log(this); + databaseid = this.table.databaseid || databaseid; + var tableid = this.table.tableid; + + if(this.where) { + var wherefn = new Function('r,params,alasql','return '+this.where.toJavaScript('r','')); + }; + + // Construct update function + var s = ''; + this.columns.forEach(function(col){ + s += 'r[\''+col.columnid+'\']='+col.expression.toJavaScript('r','')+';'; + }); + var assignfn = new Function('r,params,alasql',s); + + var statement = function(params, cb) { + var db = alasql.databases[databaseid]; + + +// console.log(db.engineid); +// console.log(db.engineid && alasql.engines[db.engineid].updateTable); + if(db.engineid && alasql.engines[db.engineid].updateTable) { +// console.log('updateTable'); + return alasql.engines[db.engineid].updateTable(databaseid, tableid, assignfn, wherefn, params, cb); + } + + if(alasql.options.autocommit && db.engineid) { + alasql.engines[db.engineid].loadTableData(databaseid,tableid); + } + + var table = db.tables[tableid]; + if(!table) { + throw new Error("Table '"+tableid+"' not exists") + } +// table.dirty = true; + var numrows = 0; + for(var i=0, ilen=table.data.length; i 0) { + s += '('+this.args.map(function(arg){ return arg.toString()}).join(', ')+')'; + } + if(this.as) s += ' '+K('AS')+' '+L(this.as); + return s; +} +//yy.CreateDatabase.prototype.compile = returnUndefined; +yy.CreateDatabase.prototype.execute = function (databaseid, params, cb) { + // console.log(alasql.useid, databaseid, this.databaseid); + // console.trace(); + var args; + if(this.args && this.args.length > 0) { + args = this.args.map(function(arg){ + return new Function('params','return '+arg.toJavaScript())(params); + }); + }; + if(this.engineid) { + var res = alasql.engines[this.engineid].createDatabase(this.databaseid, this.args, this.ifnotexists, this.as, cb); + return res; + } else { + var dbid = this.databaseid; + if(alasql.databases[dbid]) { + throw new Error("Database '"+dbid+"' already exists") + }; + var a = new alasql.Database(dbid); + var res = 1; + if(cb) return cb(res); + return res; + } +}; + +// CREATE DATABASE databaseid +yy.AttachDatabase = function (params) { return yy.extend(this, params); }; +yy.AttachDatabase.prototype.toString = function() { + var s = K('ATTACH'); + if(this.engineid) s += ' '+L(this.engineid); + s += ' '+K('DATABASE')+' '+L(this.databaseid); + // TODO add params + if(args) { + s += '('; + if(args.length>0) { + s += args.map(function(arg){ return arg.toString(); }).join(', '); + } + s += ')'; + } + if(this.as) s+= ' '+K('AS')+' '+L(this.as); + return s; +} +//yy.CreateDatabase.prototype.compile = returnUndefined; +yy.AttachDatabase.prototype.execute = function (databaseid, params, cb) { + // console.log(alasql.useid, databaseid, this.databaseid); + // console.trace(); + if(!alasql.engines[this.engineid]) { + throw new Error('Engine "'+this.engineid+'" is not defined.'); + }; + var res = alasql.engines[this.engineid].attachDatabase(this.databaseid, this.as, this.args, params, cb); + return res; +}; + + +// CREATE DATABASE databaseid +yy.DetachDatabase = function (params) { return yy.extend(this, params); }; +yy.DetachDatabase.prototype.toString = function() { + var s = K('DETACH'); + s += ' '+K('DATABASE')+' '+L(this.databaseid); + return s; +} +//yy.CreateDatabase.prototype.compile = returnUndefined; +yy.DetachDatabase.prototype.execute = function (databaseid, params, cb) { + // console.log(alasql.useid, databaseid, this.databaseid); + // console.trace(); + if(!alasql.databases[this.databaseid].engineid) { + throw new Error('Cannot detach database "'+this.engineid+'", because it was not attached.'); + }; + var res; + + var dbid = this.databaseid; + + if(dbid == alasql.DEFAULTDATABASEID) { + throw new Error("Drop of default database is prohibited"); + } +// console.log(dbid); + if(!alasql.databases[dbid]) { + if(!this.ifexists) { + throw new Error("Database '"+dbid+"' does not exist"); + } else { + res = 0; + } + } else { + delete alasql.databases[dbid]; + if(dbid == alasql.useid) { + alasql.use(); + } + res = 1; + } + if(cb) cb(res); + return res; +// var res = alasql.engines[this.engineid].attachDatabase(this.databaseid, this.as, cb); +// return res; +}; + +// USE DATABSE databaseid +// USE databaseid +yy.UseDatabase = function (params) { return yy.extend(this, params); }; +yy.UseDatabase.prototype.toString = function() { + return K('USE') +' '+K('DATABASE')+' '+L(this.databaseid); +} +//yy.UseDatabase.prototype.compile = returnUndefined; +yy.UseDatabase.prototype.execute = function (databaseid, params, cb) { + var dbid = this.databaseid; + if(!alasql.databases[dbid]) { + throw new Error("Database '"+dbid+"' does not exist") + }; + alasql.use(dbid); + var res = 1; + if(cb) cb(res); + return res; +}; + +// DROP DATABASE databaseid +yy.DropDatabase = function (params) { return yy.extend(this, params); } +yy.DropDatabase.prototype.toString = function() { + var s = K('DROP'); + if(this.ifexists) s += ' '+K('IF')+' '+K('EXISTS'); + s += ' '+K('DATABASE')+' '+L(this.databaseid); + return s; +} +//yy.DropDatabase.prototype.compile = returnUndefined; +yy.DropDatabase.prototype.execute = function (databaseid, params, cb) { + if(this.engineid) { + +// console.log(this,this.databaseid, this.ifexists); + return alasql.engines[this.engineid].dropDatabase(this.databaseid, this.ifexists, cb); + } + var res; + + var dbid = this.databaseid; + + if(dbid == alasql.DEFAULTDATABASEID) { + throw new Error("Drop of default database is prohibited"); + } +// console.log(dbid); + if(!alasql.databases[dbid]) { + if(!this.ifexists) { + throw new Error("Database '"+dbid+"' does not exist"); + } else { + res = 0; + } + } else { + if(alasql.databases[dbid].engineid) { + throw new Error("Cannot drop database '"+dbid+"', because it is attached. Detach it."); + } + + delete alasql.databases[dbid]; + if(dbid == alasql.useid) { + alasql.use(); + } + res = 1; + } + if(cb) cb(res); + return res; +}; + + + + + - if(opt.headers) { - columns.forEach(function(col, idx){ - cells[alasql.utils.xlsnc(col0+idx)+""+i] = {v:col.columnid}; - }); - i++; - } - for(var j=0;j 0) { + s = this.declares.map(function(declare){ + var s = ''; + s += '@'+L(declare.variable)+' '; + s += declare.dbtypeid; + if(this.dbsize) s += '('+N(this.dbsize); + if(this.dbprecision) s+= ','+N(this.dbprecision); + s += ')'; + if(declare.expression) s += ' = '+declare.expression.toString(); + return s; + }).join(','); + } + return s; +} + +yy.Declare.prototype.execute = function (databaseid,params,cb) { + var res = 1; + if(this.declares && this.declares.length > 0) { + this.declares.map(function(declare){ + var dbtypeid = declare.dbtypeid; + if(!alasql.fn[dbtypeid]) dbtypeid = dbtypeid.toUpperCase(); + + alasql.declares[declare.variable] = {dbtypeid:dbtypeid, + dbsize:declare.dbsize, dbprecision:declare.dbprecision}; + + // Set value + if(declare.expression) { + // console.log(this.expression.toJavaScript('','', null)); + alasql.vars[declare.variable] = new Function("params,alasql","return " + +declare.expression.toJavaScript('({})','', null))(params,alasql); + if(alasql.declares[declare.variable]) { + alasql.vars[declare.variable] = alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable]); + } + }; + }); + }; + if(cb) res=cb(res); + return res; +}; + - // console.log(wb); - // console.log(wb); - if(typeof filename == 'undefined') { - res = wb; - } else { - if(typeof exports == 'object') { - XLSX.writeFile(wb, filename); - } else { - var wopts = { bookType:'xlsx', bookSST:false, type:'binary' }; - var wbout = XLSX.write(wb,wopts); +/* +// +// SHOW for Alasql.js +// Date: 19.11.2014 +// (c) 2014, Andrey Gershun +// +*/ + +yy.ShowDatabases = function (params) { return yy.extend(this, params); } +yy.ShowDatabases.prototype.toString = function() { + var s = K('SHOW')+' '+K('DATABASES'); + if(this.like) s += 'LIKE '+this.like.toString(); + return s; +} +yy.ShowDatabases.prototype.execute = function (databaseid, params, cb) { + if(this.engineid) { + return alasql.engines[this.engineid].showDatabases(this.like, cb); + } else { + var self = this; + var res = []; + for(dbid in alasql.databases) { + res.push({databaseid: dbid}); + }; + if(self.like && res && res.length > 0) { + res = res.filter(function(d){ + return d.databaseid.match(new RegExp((self.like.value).replace(/\%/g,'.*'),'g')); + }); + } + if(cb) cb(res); + return res; + }; + +}; + + +yy.ShowTables = function (params) { return yy.extend(this, params); } +yy.ShowTables.prototype.toString = function() { + var s = K('SHOW')+' '+K('TABLES'); + if(this.databaseid) s += ' FROM '+this.databaseid; + if(this.like) s += ' '+K('LIKE')+' '+this.like.toString(); + return s; +} +yy.ShowTables.prototype.execute = function (databaseid, params, cb) { + var db = alasql.databases[this.databaseid || databaseid]; + + var self = this; + var res = []; + for(tableid in db.tables) { + res.push({tableid: tableid}); + }; + if(self.like && res && res.length > 0) { + res = res.filter(function(d){ + return d.tableid.match(new RegExp((self.like.value).replace(/\%/g,'.*'),'g')); + }); + }; + if(cb) cb(res); + return res; +}; + +yy.ShowColumns = function (params) { return yy.extend(this, params); } +yy.ShowColumns.prototype.toString = function() { + var s = K('SHOW')+' '+K('COLUMNS'); + if(this.table.tableid) s += ' '+K('FROM')+' '+this.table.tableid; + if(this.databaseid) s += ' '+K('FROM')+' '+this.databaseid; + return s; +}; + +yy.ShowColumns.prototype.execute = function (databaseid) { + var db = alasql.databases[this.databaseid || databaseid]; + var table = db.tables[this.table.tableid]; + var self = this; + if(table && table.columns) { + var res = table.columns.map(function(col){ + return {columnid: col.columnid, dbtypeid: col.dbtypeid, dbsize: col.dbsize}; + }); + return res; + } else { + return []; + } +}; + +yy.ShowIndex = function (params) { return yy.extend(this, params); } +yy.ShowIndex.prototype.toString = function() { + var s = K('SHOW')+' '+K('INDEX'); + if(this.table.tableid) s += ' '+K('FROM')+' '+this.table.tableid; + if(this.databaseid) s += ' '+K('FROM')+' '+this.databaseid; + return s; +} +yy.ShowIndex.prototype.execute = function (databaseid) { + var db = alasql.databases[this.databaseid || databaseid]; + var table = db.tables[this.table.tableid]; + var self = this; + var res = []; + if(table && table.indices) { + for(var ind in table.indices) { + res.push({hh:ind, len:Object.keys(table.indices[ind]).length}); + } + } + return res; +}; + +yy.ShowCreateTable = function (params) { return yy.extend(this, params); } +yy.ShowCreateTable.prototype.toString = function() { + var s = K('SHOW')+' '+K('CREATE')+' '+K('TABLE')+' '+L(this.table.tableid); + if(this.databaseid) s += ' '+K('FROM')+' '+L(this.databaseid); + return s; +} +yy.ShowCreateTable.prototype.execute = function (databaseid) { + var db = alasql.databases[this.databaseid || databaseid]; + var table = db.tables[this.table.tableid]; + var self = this; + if(table) { + var s = K('CREATE')+' '+K('TABLE')+' '+L(this.table.tableid)+' ('; + var ss = []; + if(table.columns) { + table.columns.forEach(function(col){ + var a = L(col.columnid)+' '+K(col.dbtypeid); + if(col.dbsize) a += '('+N(col.dbsize)+')'; + if(col.primarykey) a += ' '+K('PRIMARY')+' '+K('KEY'); + // TODO extend + ss.push(a); + }); + s += ss.join(', '); + }; + s += ')'; + return s; + } else { + throw new Error('There is no such table "'+this.table.tableid+'"'); + } +}; - function s2ab(s) { - var buf = new ArrayBuffer(s.length); - var view = new Uint8Array(buf); - for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF; - return buf; - } - /* the saveAs call downloads a file on the local machine */ - // saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), '"'+filename+'"') - // saveAs(new Blob([s2ab(wbout)],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"}), filename) - // saveAs(new Blob([s2ab(wbout)],{type:"application/vnd.ms-excel"}), '"'+filename+'"'); - saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), filename); - } - } +/* +// +// SET for Alasql.js +// Date: 01.12.2014 +// (c) 2014, Andrey Gershun +// +*/ + +yy.SetVariable = function (params) { return yy.extend(this, params); } +yy.SetVariable.prototype.toString = function() { + var s = K('SET')+' '; + if(typeof this.value != 'undefined') s += K(this.variable.toUpperCase())+' '+(this.value?'ON':'OFF'); + if(this.expression) s += '@' + L(this.variable)+' = '+this.expression.toString(); + return s; +} + +yy.SetVariable.prototype.execute = function (databaseid,params,cb) { +// console.log(this); + if(typeof this.value != 'undefined') { + var val = this.value; + if(val == 'ON') val = true; + else if(val == 'OFF') val = false; + alasql.options[this.variable] = val; + } else if(this.expression) { +// console.log(this.expression.toJavaScript('','', null)); + var res = new Function("params,alasql","return " + +this.expression.toJavaScript('({})','', null))(params,alasql); + if(alasql.declares[this.variable]) { + res = alasql.stdfn.CONVERT(res,alasql.declares[this.variable]); + } + if(this.props && this.props.length > 0) { + var fs = 'alasql.vars[\''+this.variable+'\']'; + fs += this.props.map(function(prop){ + if(typeof prop == 'string') { + return '[\''+prop+'\']'; + } else if(typeof prop == 'number') { + return '['+prop+']'; + } else { + // console.log('prop:',prop, prop.toJavaScript()); + return '['+prop.toJavaScript()+']'; +// } else { +// console.log(prop, typeof ); +// throw new Error('Wrong SET property'); + } + }).join(); +// console.log(fs); + new Function("value,alasql",fs +'=value')(res,alasql); + } else { + alasql.vars[this.variable] = res; + } + } + var res = 1; + if(cb) res=cb(res); + return res; +}; + +// Console functions +/* +alasql.con = { + results:{} +}; + +alasql.con.open = function(el) { + // For browser only + if (typeof exports === 'object') return; + + // Find parent element + el = el || document.getElementById('alasql-con') || document.getElementsByTagName('body'); + if(!el) {throw new Error('Cannot fid element for console.')} + + var conel = document.createElement('div'); + conel.style.width = "1000px"; + conel.style.height = "320px"; + + alasql.con.conel = conel; + + var lenta = document.createElement('div'); + lenta.style.width = "1000px"; + lenta.style.height = "200px"; + lenta.style.overflow = "scroll"; + alasql.con.lenta = lenta; + + var inpel = document.createElement('div'); + inpel.style.width = "1000px"; + inpel.style.height = "100px"; + inpel.style.contentEditable = true; + inpel.innerHTML = 'command '; + alasql.con.inpel = inpel; + + conel.appendChild(lenta); + conel.appendChild(inpel); + el.appendChild(conel); +}; + +alasql.con.clear = function() { + // For browser only + if (typeof exports === 'object') return; + + alasql.con.conel.innerHTML = ''; +}; + +alasql.con.close = function() { + // For browser only + if (typeof exports === 'object') return; + + alasql.con.conel.removeChild(alasql.con.lenta); + alasql.con.conel.removeChild(alasql.con.inel); + alasql.con.conel.parentElement.removeChild(conel); +}; + +alasql.con.log = function() { + // For browser only + if (typeof exports === 'object') { + console.log.bind(console).apply(this, arguments); + } else { + var s = '

'; + s += Array.prototype.slice.call(arguments, 0).map(function(arg){ + return arg.toString(); + }).join(' '); + s += '
'; + alasql.con.conel.innerHTML += s; + }; + +}; +*/ +alasql.test = function(name, times, fn) { + if(arguments.length == 0) { + alasql.log(alasql.con.results); + return; + } else if(arguments.length == 1) { + var tm = Date.now(); + fn(); + alasql.con.log(Date.now()-tm); + return; + } + + if(arguments.length == 2) { + fn = times; + times = 1; + } + + var tm = Date.now(); + for(var i=0;i',sql); + + if(res instanceof Array) { + if(console.table) { + // For Chrome and other consoles + console.table(res); + } else { + // Add print procedure + console.log(JSONtoString(res)); + } + } else { + console.log(JSONtoString(res)); + } + + } else { + var el; + if(target == 'output') { + el = document.getElementsByTagName('output')[0]; + } else { + if(typeof target == 'string') { + el = document.getElementById(target); + } else { + // in case of DOM + el = target; + } + + } + + var s = ''; + + if(typeof sql == 'string' && alasql.options.logprompt) { +// s += '

'+olduseid+'> '+alasql.pretty(sql)+'

'; + s += '
'+alasql.pretty(sql)+'
'; + } + + if(res instanceof Array) { + if(res.length == 0) { + s += '

[ ]

' + } else if(typeof res[0] != 'object' || res[0] instanceof Array) { + for(var i=0,ilen=res.length;i'; + } + } else { + s += loghtml(res); + } + } else { + s += loghtml(res); + } + el.innerHTML += s; + } +}; + +alasql.clear = function() { + var target = alasql.options.logtarget; + // For node other + if(typeof exports == 'object') { + target = 'console'; + }; + + if(target == 'console' || typeof exports == 'object') { + if(console.clear) { + console.clear(); + } else { + // Something todo in Node + } + } else { + var el; + if(target == 'output') { + el = document.getElementsByTagName('output')[0]; + } else { + if(typeof target == 'string') { + el = document.getElementById(target); + } else { + // in case of DOM + el = target; + } + } + el.innerHTML = ''; + } +} + +alasql.write = function(s) { +// console.log('write',s); + var target = alasql.options.logtarget; + // For node other + if(typeof exports == 'object') { + target = 'console'; + }; + + if(target == 'console' || typeof exports == 'object') { + if(console.log) { + console.log(s); + } else { + // Something todo in Node + } + } else { + var el; + if(target == 'output') { + el = document.getElementsByTagName('output')[0]; + } else { + if(typeof target == 'string') { + el = document.getElementById(target); + } else { + // in case of DOM + el = target; + } + } + el.innerHTML += s; + } +} + +function loghtml(res) { +// console.log(res); + var s = ''; + if(typeof res == 'undefined') { + s += 'undefined'; + } else if(res instanceof Array) { + s += ''; + s += ''; + var cols = []; + for(colid in res[0]) { + cols.push(colid); + } + s += ''; - s += ''; + res = alasql.utils.saveFile(filename,s); + if(cb) res = cb(res); + return res; +}; - // TODO: Skip columns to body +alasql.into.TXT = function(filename, opts, data, columns, cb) { + // If columns is empty + if(columns.length == 0 && data.length > 0) { + columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); + }; + // If one parameter + if(typeof filename == 'object') { + opts = filename; + filename = undefined; + }; - // Headers - columns.forEach(function (column,columnidx) { + var res = data.length; + var s = ''; + if(data.length > 0) { + var key = columns[0].columnid; + s += data.map(function(d){ + return d[key]; + }).join('\n'); + } - s += ''; + var opt = {}; + opt.separator = ','; + opt.quote = '"'; + alasql.utils.extend(opt, opts); + var res = data.length; + var s = ''; + if(opt.headers) { + s += columns.map(function(col){ + return col.columnid; + }).join(opt.separator)+'\n'; + } - // TODO: Skip lines between header and body + data.forEach(function(d, idx){ + s += columns.map(function(col){ + var s = d[col.columnid]; + s = (s+"").replace(new RegExp('\\'+opt.quote,"g"),'""'); + if((s+"").indexOf(opt.separator) > -1 || (s+"").indexOf(opt.quote) > -1) s = opt.quote + s + opt.quote; + return s; + }).join(opt.separator)+'\n'; + }); - if(data && data.length > 0) { + res = alasql.utils.saveFile(filename,s); + if(cb) res = cb(res); + return res; +}; - // TODO: Skip columns to body +alasql.into.XLSX = function(filename, opts, data, columns, cb) { + if(columns.length == 0 && data.length > 0) { + columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); + } - // Loop over data rows - data.forEach(function(row,rowidx){ - // Limit number of rows on the sheet - if(rowidx>sheet.limit) return; - // Create row - s += ' -1) { + cells = wb.Sheets[opt.sheetid]; + } else { + wb.SheetNames.push(opt.sheetid); + wb.Sheets[opt.sheetid] = {}; + cells = wb.Sheets[opt.sheetid]; + } - var typestyle = ''; + var range = "A1"; + if(opt.range) range = opt.range; - if(typeid == 'money') { - typestyle = 'mso-number-format:\"\\#\\,\\#\\#0\\\\ _р_\\.\";white-space:normal;'; - } else if(typeid == 'number') { - typestyle = ' '; - } else if (typeid == 'date') { - typestyle = 'mso-number-format:\"Short Date\";'; - } else { - // FOr other types is saved - if( opts.types && opts.types[typeid] && opts.types[typeid].typestyle) { - typestyle = opts.types[typeid].typestyle; - } - } + var col0 = alasql.utils.xlscn(range.match(/[A-Z]+/)[0]); + var row0 = +range.match(/[0-9]+/)[0]-1; - // TODO Replace with extend... - typestyle = typestyle || 'mso-number-format:\"\\@\";'; // Default type style + if(wb.Sheets[opt.sheetid]['!ref']) { + var rangem = wb.Sheets[opt.sheetid]['!ref']; + var colm = alasql.utils.xlscn(rangem.match(/[A-Z]+/)[0]); + var rowm = +rangem.match(/[0-9]+/)[0]-1; + } else { + var colm = 1, rowm = 1; + } + var colmax = Math.max(col0+columns.length,colm); + var rowmax = Math.max(row0+data.length+2,rowm); - s += "'; + // console.log(wb); + // console.log(wb); -<<<<<<< HEAD if(typeof filename == 'undefined') { res = wb; } else { @@ -23879,39 +10737,8 @@ alasql.into.XLS = function(filename, opts, data, columns, cb) { } } -||||||| merged common ancestors - if(typeof exports == 'object') { - XLSX.writeFile(wb, filename); - } else { - //console.log(wb); - var wopts = { bookType:'xlsx', bookSST:false, type:'binary' }; - var wbout = XLSX.write(wb,wopts); - - function s2ab(s) { - var buf = new ArrayBuffer(s.length); - var view = new Uint8Array(buf); - for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF; - return buf; - } - /* the saveAs call downloads a file on the local machine */ - // saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), '"'+filename+'"') - // saveAs(new Blob([s2ab(wbout)],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"}), filename) - // saveAs(new Blob([s2ab(wbout)],{type:"application/vnd.ms-excel"}), '"'+filename+'"'); - saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), filename); - } -======= - // Generate epilogue - s += '
#'; + cols.forEach(function(colid){ + s += ''+colid; + }); + for(var i=0,ilen=res.length;i'; + } + // if () {} + + // if(typeof res == 'object') { + // s += '

'+JSON.stringify(res)+'

'; + // } else { + // } + return s; +}; + + + +function scrollTo(element, to, duration) { + if (duration <= 0) return; + var difference = to - element.scrollTop; + var perTick = difference / duration * 10; + + setTimeout(function() { + if (element.scrollTop==to) return; + element.scrollTop = element.scrollTop + perTick; + scrollTo(element, to, duration - 10); + }, 10); +} + +alasql.prompt = function(el, useidel, firstsql) { + if(typeof exports == 'object') { + throw new Error('The functionality of prompt is not realized for Node.js'); + }; + var prompti = 0; + if(typeof el == 'string') el = document.getElementById(el); + if(typeof useidel == 'string') useidel = document.getElementById(useidel); + useidel.textContent = alasql.useid; + + if(firstsql) { + alasql.prompthistory.push(firstsql); + prompti = alasql.prompthistory.length; + try { + var tm = Date.now(); + alasql.log(firstsql); + alasql.write('

'+(Date.now()-tm)+' ms

'); + } catch (err) { + alasql.write('

'+olduseid+'> '+sql+'

'); + alasql.write('

'+err+'

'); + } + }; + + var y = el.getBoundingClientRect().top + document.getElementsByTagName('body')[0].scrollTop; + scrollTo(document.getElementsByTagName('body')[0],y,500); + + el.onkeydown = function(event) { + if(event.which == 13) { + var sql = el.value; + var olduseid = alasql.useid; + el.value = ''; + alasql.prompthistory.push(sql); + prompti = alasql.prompthistory.length; + try { + var tm = Date.now(); + alasql.log(sql); + alasql.write('

'+(Date.now()-tm)+' ms

'); + } catch (err) { + alasql.write('

'+olduseid+'> '+alasql.pretty(sql, false)+'

'); + alasql.write('

'+err+'

'); + } + el.focus(); +// console.log(el.getBoundingClientRect().top); + useidel.textContent = alasql.useid; + var y = el.getBoundingClientRect().top + document.getElementsByTagName('body')[0].scrollTop; + scrollTo(document.getElementsByTagName('body')[0],y,500); + } else if(event.which == 38) { + prompti--; if(prompti<0) prompti = 0; + if(alasql.prompthistory[prompti]) { + el.value = alasql.prompthistory[prompti]; + event.preventDefault(); + } + + } else if(event.which == 40) { + prompti++; + if(prompti>=alasql.prompthistory.length) { + prompti = alasql.prompthistory.length; + el.value = ''; + } else if(alasql.prompthistory[prompti]) { + el.value = alasql.prompthistory[prompti]; + event.preventDefault(); + } + } + + } +} + + + - // data.forEach(function(d){ - // s += columns.map(function(col){ - // return d[col.columnid]; - // }).join(opts.separator)+'\n'; - // }); - // alasql.utils.saveFile(filename,s); - if(cb) res = cb(res); - return res; - }; -}; +/* +// +// Commit for Alasql.js +// Date: 01.12.2014 +// (c) 2014, Andrey Gershun +// +*/ +yy.BeginTransaction = function (params) { return yy.extend(this, params); } +yy.BeginTransaction.prototype.toString = function() { + return K('BEGIN')+' '+K('TRANSACTION'); +} + +yy.BeginTransaction.prototype.execute = function (databaseid,params, cb) { + var res = 1; + if(alasql.databases[databaseid].engineid) { + return alasql.engines[alasql.databases[alasql.useid].engineid].begin(databaseid, cb); + } else { + // alasql commit!!! + } + if(cb) cb(res); + return res; +}; + +yy.CommitTransaction = function (params) { return yy.extend(this, params); } +yy.CommitTransaction.prototype.toString = function() { + return K('COMMIT')+' '+K('TRANSACTION'); +} + +yy.CommitTransaction.prototype.execute = function (databaseid,params, cb) { + var res = 1; + if(alasql.databases[databaseid].engineid) { + return alasql.engines[alasql.databases[alasql.useid].engineid].commit(databaseid, cb); + } else { + // alasql commit!!! + } + if(cb) cb(res); + return res; +}; + +yy.RollbackTransaction = function (params) { return yy.extend(this, params); } +yy.RollbackTransaction.prototype.toString = function() { + return K('ROLLBACK')+' '+K('TRANSACTION'); +} + +yy.RollbackTransaction.prototype.execute = function (databaseid,params,cb) { + var res = 1; + if(alasql.databases[databaseid].engineid) { + return alasql.engines[alasql.databases[databaseid].engineid].rollback(databaseid, cb); + } else { + // alasql commit!!! + } + if(cb) cb(res); + return res; +}; // -// 831xl.js - Coloring Excel -// 18.04.2015 -// Generate XLS file with colors and styles -// with Excel +// into functions +// +// (c) 2014 Andrey Gershun +// -alasql.into.XLS = function(filename, opts, data, columns, cb) { - // If filename is not defined then output to the result +alasql.into.SQL = function(filename, opts, data, columns, cb) { + var res; if(typeof filename == 'object') { opts = filename; filename = undefined; } - - // Set sheets - var sheets = {}; - if(opts && opts.sheets) { - sheets = opts.sheets; - }; - - // Default sheet - var sheet = {}; - if(typeof sheets[0] != 'undefined') { - sheet = sheets[0]; - } else { - if(typeof opts != 'undefined') { - sheet = opts; - } - }; - - // Set sheet name and default is 'Sheet1' - if(typeof sheet.sheetid == 'undefined') { - sheet.sheetid = 'Sheet1'; + var opt = {}; + alasql.utils.extend(opt, opts); + if(typeof opt.tableid == 'undefined') { + throw new Error('Table for INSERT TO is not defined.'); }; - - // Generate prologue - var s = ' \ - \ - '; - // Generate body - s += ' 0) { - if(typeof data[0] == 'object') { - if(data[0] instanceof Array) { - columns = data[0].map(function(d,columnidx){ - return {columnid:columnidx}; - }); - } else { - columns = Object.keys(data[0]).map(function(columnid){ - return {columnid:columnid}; - }); - } + var sel = document.querySelector(selector); + if(!sel) { + throw new Error('Selected HTML element is not found'); + }; + + if(columns.length == 0) { + if(typeof data[0] == "object") { + columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); + } else { + // What should I do? + // columns = [{columnid:"_"}]; } } - }; - // Prepare columns - columns.forEach(function(column,columnidx){ - if(typeof sheet.column != 'undefined') { - extend(column,sheet.column); + var tbe = document.createElement('table'); + var thead = document.createElement('thead'); + tbe.appendChild(thead); + if(opt.headers) { + var tre = document.createElement('tr'); + for(var i=0;i'; - }); - s += ''; +alasql.into.JSON = function(filename, opts, data, columns, cb) { + var res = 1; + if(typeof filename == 'object') { + opts = filename; + filename = undefined; + } + var opt = {}; + var s = JSON.stringify(data); - // Headers - if(sheet.headers) { - s += '

0) { + columns = Object.keys(data[0]).map(function(columnid){return {columnid:columnid}}); + } + if(typeof filename == 'object') { + opts = filename; + filename = undefined; } - s += '
>>>>>> release/0.0.47 - s += '
'; - s += ''; - s += ''; ->>>>>>> release/0.0.47 - // File is ready to save - var res = alasql.utils.saveFile(filename,s); - if(cb) res = cb(res); - return res; -<<<<<<< HEAD // data.forEach(function(d){ // s += columns.map(function(col){ @@ -23921,31 +10748,11 @@ alasql.into.XLS = function(filename, opts, data, columns, cb) { // alasql.utils.saveFile(filename,s); if(cb) res = cb(res); return res; -||||||| merged common ancestors - // data.forEach(function(d){ - // s += columns.map(function(col){ - // return d[col.columnid]; - // }).join(opts.separator)+'\n'; - // }); - // alasql.utils.saveFile(filename,s); - if(cb) res = cb(res); - return res; -======= - // Style function - function style(a) { - var s = ' style="'; - if(a && typeof a.style != 'undefined') { - s += a.style + ';'; - } - s += '" '; - return s; - } ->>>>>>> release/0.0.47 + }; }; -<<<<<<< HEAD // // 831xl.js - Coloring Excel // 18.04.2015 @@ -24264,10 +11071,6 @@ alasql.into.XLS = function(filename, opts, data, columns, cb) { -||||||| merged common ancestors -======= - ->>>>>>> release/0.0.47 /* // // FROM functions Alasql.js diff --git a/dist/alasql.js.map b/dist/alasql.js.map index 603ad8c5d7..5f538ccae1 100755 --- a/dist/alasql.js.map +++ b/dist/alasql.js.map @@ -77,5 +77,5 @@ "src/99worker.js" ], "names": [], - "mappings": "AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/RA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3SA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5pBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9KA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5TA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpSA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA" + "mappings": "AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpoEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3SA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5pBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/KA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5TA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpSA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA" } \ No newline at end of file diff --git a/dist/alasql.min.js b/dist/alasql.min.js index 9543268100..f81fc6016a 100644 --- a/dist/alasql.min.js +++ b/dist/alasql.min.js @@ -1,8 +1,8 @@ -(function(root,factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}else{root.alasql=factory()}})(this,function(){var alasql=function(sql,params,cb,scope){if(typeof importScripts!="function"&&alasql.webworker){var id=alasql.lastid++;alasql.buffer[id]=cb;alasql.webworker.postMessage({id:id,sql:sql,params:params})}else{if(arguments.length==0){return new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]})}else if(arguments.length==1&&typeof sql=="object"&&sql instanceof Array){var select=new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]});select.preparams=[sql];return select}else{if(typeof sql=="string"&&sql[0]=="#"&&typeof document=="object"){sql=document.querySelector(sql).textContent}else if(typeof sql=="object"&&sql instanceof HTMElement){sql=sql.textContent}else if(typeof sql=="function"){sql=sql.toString().slice(14,-3)}return alasql.exec(sql,params,cb,scope)}}};alasql.version="0.0.47";var parser=function(){var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[1,151],$V81=[4,5],$V91=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Va1=[1,167],$Vb1=[1,175],$Vc1=[1,174],$Vd1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Ve1=[1,206],$Vf1=[1,199],$Vg1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vh1=[2,74],$Vi1=[1,220],$Vj1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vk1=[1,236],$Vl1=[1,232],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,237],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,252],$VE1=[1,253],$VF1=[1,255],$VG1=[1,254],$VH1=[1,256],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[2,197],$VM1=[1,263],$VN1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VO1=[2,255],$VP1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VQ1=[1,271],$VR1=[1,281],$VS1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VT1=[1,297],$VU1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,102,104,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,258,259,260,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VV1=[1,304],$VW1=[1,305],$VX1=[2,368],$VY1=[1,310],$VZ1=[8,9,11,61,202,206],$V_1=[2,420],$V$1=[1,321],$V02=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V12=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22=[2,110],$V32=[1,349],$V42=[61,80],$V52=[8,9,11,61,65,192,202,206,229,247,259,275,276,279,280,292],$V62=[79,236,237],$V72=[1,414],$V82=[1,420],$V92=[1,421],$Va2=[1,431],$Vb2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vc2=[2,270],$Vd2=[1,438],$Ve2=[202,204,206],$Vf2=[61,323],$Vg2=[61,321,323],$Vh2=[1,445],$Vi2=[61,321],$Vj2=[4,5,96,191],$Vk2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vl2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vm2=[1,512],$Vn2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vo2=[2,180],$Vp2=[1,514],$Vq2=[1,515],$Vr2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vs2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[1,537],$Vy2=[61,65],$Vz2=[2,195],$VA2=[1,577],$VB2=[8,9,11,65,135,136,137,139,145,202,206],$VC2=[8,9,11,61,65,124,125,135,136,137,139,145,202,206],$VD2=[1,592],$VE2=[1,593],$VF2=[1,595],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,606],$VO2=[1,617],$VP2=[8,9,11,61,124,202,204,206,356],$VQ2=[1,625],$VR2=[1,624],$VS2=[2,233],$VT2=[1,646],$VU2=[2,437],$VV2=[1,667],$VW2=[1,679],$VX2=[8,9,11,61,202,204,206,356],$VY2=[1,682],$VZ2=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V_2=[8,9,11,65,135,136,137,145,202,206],$V$2=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V03=[1,696],$V13=[1,698],$V23=[4,5,64,193,195,196,197,198],$V33=[8,9,11,202,204,206,356],$V43=[214,219],$V53=[1,738],$V63=[8,9,11,61,65,202,206],$V73=[1,754],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,773],$Va3=[1,774],$Vb3=[1,775],$Vc3=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,805],$Ve3=[1,818],$Vf3=[1,819],$Vg3=[1,817],$Vh3=[1,815],$Vi3=[1,821],$Vj3=[1,812],$Vk3=[1,813],$Vl3=[1,814],$Vm3=[1,816],$Vn3=[1,825],$Vo3=[1,830],$Vp3=[1,831],$Vq3=[1,832],$Vr3=[1,833],$Vs3=[78,86,275,276,277,279],$Vt3=[2,380],$Vu3=[1,838],$Vv3=[8,9,11,65,202,206],$Vw3=[1,851],$Vx3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vy3=[1,868],$Vz3=[1,867],$VA3=[8,9,11,202,206,247,258,259,260],$VB3=[1,921],$VC3=[8,9,11,61,65,135,136,137,145,202,206],$VD3=[1,938];var parser={trace:function trace(){},yy:{},symbols_:{error:2,Literal:3,LITERAL:4,BRALITERAL:5,main:6,Statements:7,EOF:8,SEMICOLON:9,AStatement:10,GO:11,ExplainStatement:12,EXPLAIN:13,QUERY:14,PLAN:15,Statement:16,If:17,AlterTable:18,AttachDatabase:19,CreateDatabase:20,CreateIndex:21,CreateTable:22,CreateView:23,Declare:24,Delete:25,DetachDatabase:26,DropDatabase:27,DropIndex:28,DropTable:29,DropView:30,Insert:31,RenameTable:32,Select:33,Merge:34,WithSelect:35,ShowCreateTable:36,ShowColumns:37,ShowDatabases:38,ShowIndex:39,ShowTables:40,TruncateTable:41,BeginTransaction:42,CommitTransaction:43,RollbackTransaction:44,EndTransaction:45,UseDatabase:46,Update:47,Help:48,JavaScript:49,Source:50,Assert:51,While:52,Continue:53,Break:54,BeginEnd:55,Print:56,Require:57,SetVariable:58,WITH:59,WithTablesList:60,COMMA:61,WithTable:62,AS:63,LPAR:64,RPAR:65,SelectClause:66,IntoClause:67,FromClause:68,WhereClause:69,GroupClause:70,OrderClause:71,LimitClause:72,UnionClause:73,SelectModifier:74,DISTINCT:75,TopClause:76,ResultColumns:77,UNIQUE:78,ALL:79,SELECT:80,VALUE:81,ROW:82,COLUMN:83,MATRIX:84,TEXTSTRING:85,INDEX:86,RECORDSET:87,TOP:88,NumValue:89,PERCENT:90,INTO:91,Table:92,FuncValue:93,ParamValue:94,VarValue:95,STRING:96,FROM:97,FromTablesList:98,FromTable:99,JoinTablesList:100,ApplyClause:101,CROSS:102,APPLY:103,OUTER:104,FromString:105,DOT:106,JoinTable:107,JoinMode:108,JoinTableAs:109,OnClause:110,JoinModeMode:111,NATURAL:112,JOIN:113,INNER:114,LEFT:115,RIGHT:116,FULL:117,SEMI:118,ANTI:119,ON:120,Expression:121,USING:122,ColumnsList:123,WHERE:124,GROUP:125,BY:126,GroupExpressionsList:127,HavingClause:128,GroupExpression:129,GROUPING:130,SETS:131,ROLLUP:132,CUBE:133,HAVING:134,UNION:135,EXCEPT:136,INTERSECT:137,CORRESPONDING:138,ORDER:139,OrderExpressionsList:140,OrderExpression:141,DIRECTION:142,COLLATE:143,NOCASE:144,LIMIT:145,OffsetClause:146,OFFSET:147,ResultColumn:148,TDTH:149,TD:150,TH:151,NUMBER:152,StringValue:153,Star:154,STAR:155,Column:156,AggrValue:157,Op:158,LogicValue:159,NullValue:160,ExistsValue:161,CaseValue:162,CastClause:163,Json:164,NewClause:165,JAVASCRIPT:166,NEW:167,CAST:168,ColumnType:169,CONVERT:170,PrimitiveValue:171,CURRENT_TIMESTAMP:172,Aggregator:173,OverClause:174,OVER:175,OverPartitionClause:176,OverOrderByClause:177,PARTITION:178,SUM:179,COUNT:180,MIN:181,MAX:182,AVG:183,FIRST:184,LAST:185,AGGR:186,ARRAY:187,ExprList:188,TRUE:189,FALSE:190,NSTRING:191,NULL:192,AT:193,EXISTS:194,DOLLAR:195,COLON:196,QUESTION:197,BRAQUESTION:198,CASE:199,WhensList:200,ElseClause:201,END:202,When:203,WHEN:204,THEN:205,ELSE:206,LIKE:207,NOT_LIKE:208,PLUS:209,MINUS:210,SLASH:211,MODULO:212,CARET:213,ARROW:214,GT:215,GE:216,LT:217,LE:218,EQ:219,EQEQ:220,EQEQEQ:221,NE:222,NEEQEQ:223,NEEQEQEQ:224,CondOp:225,AllSome:226,AND:227,OR:228,NOT:229,IN:230,ColFunc:231,BETWEEN:232,NOT_BETWEEN:233,IS:234,DOUBLECOLON:235,SOME:236,ANY:237,UPDATE:238,SET:239,SetColumnsList:240,SetColumn:241,DELETE:242,INSERT:243,Into:244,VALUES:245,ValuesListsList:246,DEFAULT:247,ValuesList:248,Value:249,DateValue:250,CREATE:251,TABLE:252,IfNotExists:253,CreateTableDefClause:254,CreateTableOptionsClause:255,CreateTableOptions:256,CreateTableOption:257,ENGINE:258,AUTO_INCREMENT:259,CHARSET:260,TemporaryClause:261,TEMPORARY:262,TEMP:263,IF:264,ColumnDefsList:265,ConstraintsList:266,Constraint:267,ConstraintName:268,PrimaryKey:269,ForeignKey:270,UniqueKey:271,IndexKey:272,Check:273,CONSTRAINT:274,CHECK:275,PRIMARY:276,KEY:277,ColsList:278,FOREIGN:279,REFERENCES:280,OnForeignKeyClause:281,OnDeleteClause:282,OnUpdateClause:283,NO:284,ACTION:285,ColumnDef:286,ColumnConstraintsClause:287,ColumnConstraints:288,ENUM:289,ColumnConstraintsList:290,ColumnConstraint:291,IDENTITY:292,DROP:293,IfExists:294,ALTER:295,RENAME:296,TO:297,ADD:298,MODIFY:299,ATTACH:300,DATABASE:301,DETACH:302,AsClause:303,USE:304,SHOW:305,DATABASES:306,TABLES:307,COLUMNS:308,VIEW:309,HELP:310,ExpressionStatement:311,SOURCE:312,ASSERT:313,JsonObject:314,ATLBRA:315,JsonArray:316,JsonValue:317,JsonPrimitiveValue:318,LCUR:319,JsonPropertiesList:320,RCUR:321,JsonElementsList:322,RBRA:323,JsonProperty:324,OnOff:325,SetPropsList:326,SetProp:327,OFF:328,COMMIT:329,TRANSACTION:330,ROLLBACK:331,BEGIN:332,ElseStatement:333,WHILE:334,CONTINUE:335,BREAK:336,PRINT:337,REQUIRE:338,StringValuesList:339,DECLARE:340,DeclaresList:341,DeclareItem:342,TRUNCATE:343,MERGE:344,MergeInto:345,MergeUsing:346,MergeOn:347,MergeMatchedList:348,OutputClause:349,MergeMatched:350,MergeNotMatched:351,MATCHED:352,MergeMatchedAction:353,MergeNotMatchedAction:354,TARGET:355,OUTPUT:356,$accept:0,$end:1},terminals_:{2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",102:"CROSS",103:"APPLY",104:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",252:"TABLE",258:"ENGINE",259:"AUTO_INCREMENT",260:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"},productions_:[0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,0],[101,6],[101,7],[101,6],[101,7],[98,1],[98,3],[99,4],[99,5],[99,3],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[105,1],[92,3],[92,1],[100,2],[100,2],[100,1],[100,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,8],[22,4],[255,0],[255,1],[256,2],[256,1],[257,1],[257,3],[257,3],[257,3],[261,0],[261,1],[261,1],[253,0],[253,3],[254,3],[254,1],[254,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,9],[23,6],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]],performAction:function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:if(yy.casesensitive)this.$=$$[$0];else this.$=$$[$0].toLowerCase();break;case 2:this.$=doubleq($$[$0].substr(1,$$[$0].length-2));break;case 3:return new yy.Statements({statements:$$[$0-1]});break;case 4:case 5:this.$=$$[$0-2];if($$[$0])$$[$0-2].push($$[$0]);break;case 6:case 7:case 56:case 88:case 113:case 114:case 149:case 168:case 250:case 267:case 327:case 340:case 341:case 345:case 353:case 392:case 393:case 501:case 506:case 526:case 528:case 542:case 543:this.$=[$$[$0]];break;case 8:this.$=$$[$0];$$[$0].explain=true;break;case 9:this.$=$$[$0];$$[$0].explain=true;break;case 10:this.$=$$[$0];if(yy.exists)this.$.exists=yy.exists;delete yy.exists;if(yy.queries)this.$.queries=yy.queries;delete yy.queries;break;case 11:case 63:case 74:case 83:case 144:case 145:case 147:case 155:case 157:case 166:case 174:case 176:case 229:case 270:case 365:case 368:case 380:case 385:case 386:case 420:this.$=undefined;break;case 54:this.$=new yy.WithSelect({withs:$$[$0-1],select:$$[$0]});break;case 55:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 57:this.$={name:$$[$0-4],select:$$[$0-1]};break;case 58:yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);this.$=$$[$0-7];break;case 59:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 60:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 61:this.$=new yy.Select({columns:$$[$0],all:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 62:this.$=new yy.Select({columns:$$[$0]});yy,extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 64:this.$={modifier:"VALUE"};break;case 65:this.$={modifier:"ROW"};break;case 66:this.$={modifier:"COLUMN"};break;case 67:this.$={modifier:"MATRIX"};break;case 68:this.$={modifier:"TEXTSTRING"};break;case 69:this.$={modifier:"INDEX"};break;case 70:this.$={modifier:"RECORDSET"};break;case 71:this.$={top:$$[$0]};break;case 72:this.$={top:$$[$0-1]};break;case 73:this.$={top:$$[$0-1],percent:true};break;case 75:case 233:case 387:case 388:this.$=undefined;break;case 76:case 77:case 78:case 79:this.$={into:$$[$0]};break;case 80:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();if(s[0]=="#"){this.$={into:new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){this.$={into:new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x4=="XLSX"||x4=="JSON"){this.$={into:new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}break;case 81:this.$={from:$$[$0]};break;case 82:this.$={from:[$$[$0-1]],joins:$$[$0]};break;case 84:this.$=new yy.Apply({select:$$[$0-2],applymode:"CROSS",as:$$[$0]});break;case 85:this.$=new yy.Apply({select:$$[$0-3],applymode:"CROSS",as:$$[$0]});break;case 86:this.$=new yy.Apply({select:$$[$0-2],applymode:"OUTER",as:$$[$0]});break;case 87:this.$=new yy.Apply({select:$$[$0-3],applymode:"OUTER",as:$$[$0]});break;case 89:case 150:case 328:case 394:case 395:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 90:this.$=$$[$0-2];this.$.as=$$[$0];break;case 91:this.$=$$[$0-3];this.$.as=$$[$0];break;case 92:this.$=$$[$0-1];this.$.as="default";break;case 93:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 94:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 95:case 154:case 190:case 198:case 199:case 200:case 201:case 202:case 203:case 204:case 205:case 206:case 207:case 208:case 209:case 210:case 211:case 213:case 223:case 224:case 225:case 226:case 227:case 228:case 269:case 316:case 317:case 318:case 319:case 320:case 321:case 381:case 406:case 408:case 475:case 476:case 477:case 478:case 479:case 480:case 484:case 486:case 487:case 496:case 507:case 508:this.$=$$[$0];break;case 96:case 100:case 103:case 106:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 97:case 101:case 104:case 107:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 98:case 99:case 102:case 105:this.$=$$[$0];$$[$0].as="default";break;case 108:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();var r;if(s[0]=="#"){r=new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){r=new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x4=="XLSX"||x4=="JSON"){r=new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else{throw new Error("Unknown string in FROM clause")};this.$=r;break;case 109:this.$=new yy.Table({databaseid:$$[$0-2],tableid:$$[$0]});break;case 110:this.$=new yy.Table({tableid:$$[$0]});break;case 111:case 112:this.$=$$[$0-1];$$[$0-1].push($$[$0]);break;case 115:this.$=new yy.Join($$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 116:this.$={table:$$[$0]};break;case 117:this.$={table:$$[$0-1],as:$$[$0]};break;case 118:this.$={table:$$[$0-2],as:$$[$0]};break;case 119:this.$={param:$$[$0-1],as:$$[$0]};break;case 120:this.$={param:$$[$0-2],as:$$[$0]};break;case 121:this.$={select:$$[$0-3],as:$$[$0]};break;case 122:this.$={select:$$[$0-4],as:$$[$0]};break;case 123:this.$={funcid:$$[$0],as:"default"};break;case 124:this.$={funcid:$$[$0-1],as:$$[$0]};break;case 125:this.$={funcid:$$[$0-2],as:$$[$0]};break;case 126:this.$={variable:$$[$0],as:"default"};break;case 127:this.$={variable:$$[$0-1],as:$$[$0]};break;case 128:this.$={variable:$$[$0-2],as:$$[$0]};break;case 129:this.$={joinmode:$$[$0]};break;case 130:this.$={joinmode:$$[$0-1],natural:true};break;case 131:case 132:this.$="INNER";break;case 133:case 134:this.$="LEFT";break;case 135:case 136:this.$="RIGHT";break;case 137:case 138:this.$="OUTER";break;case 139:this.$="SEMI";break;case 140:this.$="ANTI";break;case 141:this.$="CROSS";break;case 142:this.$={on:$$[$0]};break;case 143:case 538:this.$={using:$$[$0]};break;case 146:this.$={where:new yy.Expression({expression:$$[$0]})};break;case 148:this.$={group:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 151:this.$=new yy.GroupExpression({type:"GROUPING SETS",group:$$[$0-1]});break;case 152:this.$=new yy.GroupExpression({type:"ROLLUP",group:$$[$0-1]});break;case 153:this.$=new yy.GroupExpression({type:"CUBE",group:$$[$0-1]});break;case 156:this.$={having:$$[$0]};break;case 158:this.$={union:$$[$0]};break;case 159:this.$={unionall:$$[$0]};break;case 160:this.$={except:$$[$0]};break;case 161:this.$={intersect:$$[$0]};break;case 162:this.$={union:$$[$0-1],corresponding:true};break;case 163:this.$={unionall:$$[$0-1],corresponding:true};break;case 164:this.$={except:$$[$0-1],corresponding:true};break;case 165:this.$={intersect:$$[$0-1],corresponding:true};break;case 167:this.$={order:$$[$0]};break;case 169:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 170:this.$=new yy.Expression({expression:$$[$0],direction:"ASC"});break;case 171:this.$=new yy.Expression({expression:$$[$0-1],direction:$$[$0].toUpperCase()});break;case 172:this.$=new yy.Expression({expression:$$[$0-2],direction:"ASC",nocase:true});break;case 173:this.$=new yy.Expression({expression:$$[$0-3],direction:$$[$0].toUpperCase(),nocase:true});break;case 175:this.$={limit:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 177:this.$={offset:$$[$0]};break;case 178:yy.extend($$[$0-1],$$[$0]);$$[$0-3].push($$[$0-1]);this.$=$$[$0-3];break;case 179:yy.extend($$[$0-1],$$[$0]);this.$=[$$[$0-1]];break;case 180:this.$=undefined;break;case 181:this.$={td:$$[$0]};break;case 182:this.$={th:$$[$0]};break;case 183:this.$={th:$$[$0-2],td:$$[$0]};break;case 184:case 186:case 188:$$[$0-2].as=$$[$0];this.$=$$[$0-2];break;case 185:case 187:case 189:$$[$0-1].as=$$[$0];this.$=$$[$0-1];break;case 191:this.$=new yy.Column({columid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 192:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 193:this.$=new yy.Column({columnid:$$[$0]});break;case 194:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 195:case 196:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 197:this.$=new yy.Column({columnid:$$[$0]});break;case 212:this.$=new yy.Json({value:$$[$0]});break;case 214:if(!yy.queries)yy.queries=[];yy.queries.push($$[$0-1]);$$[$0-1].queriesidx=yy.queries.length;this.$=$$[$0-1];break;case 215:this.$=$$[$0];break;case 216:this.$=new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)});break;case 217:this.$=new yy.FuncValue({funcid:$$[$0],newid:true});break;case 218:this.$=$$[$0];yy.extend(this.$,{newid:true});break;case 219:this.$=new yy.Convert({expression:$$[$0-3]});yy.extend(this.$,$$[$0-1]);break;case 220:this.$=new yy.Convert({expression:$$[$0-5],style:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 221:this.$=new yy.Convert({expression:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 222:this.$=new yy.Convert({expression:$$[$0-3],style:$$[$0-1]});yy.extend(this.$,$$[$0-5]);break;case 230:this.$=new yy.AggrValue({aggregatorid:$$[$0-4].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 231:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],distinct:true,over:$$[$0]});break;case 232:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 234:case 235:this.$=new yy.Over;yy.extend(this.$,$$[$0-1]);break;case 236:this.$=new yy.Over;yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 237:this.$={partition:$$[$0]};break;case 238:this.$={order:$$[$0]};break;case 239:this.$="SUM";break;case 240:this.$="COUNT";break;case 241:this.$="MIN";break;case 242:this.$="MAX";break;case 243:this.$="AVG";break;case 244:this.$="FIRST";break;case 245:this.$="LAST";break;case 246:this.$="AGGR";break;case 247:this.$="ARRAY";break;case 248:if(alasql.aggr[$$[$0-3]]){this.$=new yy.AggrValue({aggregatorid:"REDUCE",funcid:$$[$0-3],expression:$$[$0-1].pop()})}else{this.$=new yy.FuncValue({funcid:$$[$0-3],args:$$[$0-1]})};break;case 249:this.$=new yy.FuncValue({funcid:$$[$0-2]});break;case 251:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 252:this.$=new yy.NumValue({value:+$$[$0]});break;case 253:this.$=new yy.LogicValue({value:true});break;case 254:this.$=new yy.LogicValue({value:false});break;case 255:this.$=new yy.StringValue({value:$$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 256:this.$=new yy.StringValue({value:$$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 257:this.$=new yy.NullValue({value:undefined});break;case 258:this.$=new yy.VarValue({variable:$$[$0]});break;case 259:if(!yy.exists)yy.exists=[];this.$=new yy.ExistsValue({value:$$[$0-1],existsidx:yy.exists.length});yy.exists.push($$[$0-1]);break;case 260:case 261:this.$=new yy.ParamValue({param:$$[$0]});break;case 262:if(typeof yy.question=="undefined")yy.question=0; -this.$=new yy.ParamValue({param:yy.question++});break;case 263:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++,array:true});break;case 264:this.$=new yy.CaseValue({expression:$$[$0-3],whens:$$[$0-2],elses:$$[$0-1]});break;case 265:this.$=new yy.CaseValue({whens:$$[$0-2],elses:$$[$0-1]});break;case 266:case 540:case 541:this.$=$$[$0-1];this.$.push($$[$0]);break;case 268:this.$={when:$$[$0-2],then:$$[$0]};break;case 271:this.$=new yy.Op({left:$$[$0-2],op:"LIKE",right:$$[$0]});break;case 272:this.$=new yy.Op({left:$$[$0-2],op:"NOT LIKE",right:$$[$0]});break;case 273:this.$=new yy.Op({left:$$[$0-2],op:"+",right:$$[$0]});break;case 274:this.$=new yy.Op({left:$$[$0-2],op:"-",right:$$[$0]});break;case 275:this.$=new yy.Op({left:$$[$0-2],op:"*",right:$$[$0]});break;case 276:this.$=new yy.Op({left:$$[$0-2],op:"/",right:$$[$0]});break;case 277:this.$=new yy.Op({left:$$[$0-2],op:"%",right:$$[$0]});break;case 278:this.$=new yy.Op({left:$$[$0-2],op:"^",right:$$[$0]});break;case 279:case 280:case 282:this.$=new yy.Op({left:$$[$0-2],op:"->",right:$$[$0]});break;case 281:this.$=new yy.Op({left:$$[$0-4],op:"->",right:$$[$0-1]});break;case 283:this.$=new yy.Op({left:$$[$0-2],op:">",right:$$[$0]});break;case 284:this.$=new yy.Op({left:$$[$0-2],op:">=",right:$$[$0]});break;case 285:this.$=new yy.Op({left:$$[$0-2],op:"<",right:$$[$0]});break;case 286:this.$=new yy.Op({left:$$[$0-2],op:"<=",right:$$[$0]});break;case 287:this.$=new yy.Op({left:$$[$0-2],op:"=",right:$$[$0]});break;case 288:this.$=new yy.Op({left:$$[$0-2],op:"==",right:$$[$0]});break;case 289:this.$=new yy.Op({left:$$[$0-2],op:"===",right:$$[$0]});break;case 290:this.$=new yy.Op({left:$$[$0-2],op:"!=",right:$$[$0]});break;case 291:this.$=new yy.Op({left:$$[$0-2],op:"!==",right:$$[$0]});break;case 292:this.$=new yy.Op({left:$$[$0-2],op:"!===",right:$$[$0]});break;case 293:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 294:this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1]});break;case 295:this.$=new yy.Op({left:$$[$0-2],op:"AND",right:$$[$0]});break;case 296:this.$=new yy.Op({left:$$[$0-2],op:"OR",right:$$[$0]});break;case 297:this.$=new yy.UniOp({op:"NOT",right:$$[$0]});break;case 298:this.$=new yy.UniOp({op:"-",right:$$[$0]});break;case 299:this.$=new yy.UniOp({op:"+",right:$$[$0]});break;case 300:this.$=new yy.UniOp({right:$$[$0-1]});break;case 301:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 302:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 303:this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1]});break;case 304:this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1]});break;case 305:this.$=new yy.Op({left:$$[$0-3],op:"IN",right:[]});break;case 306:this.$=new yy.Op({left:$$[$0-4],op:"NOT IN",right:[]});break;case 307:this.$=new yy.Op({left:$$[$0-2],op:"IN",right:$$[$0]});break;case 308:this.$=new yy.Op({left:$$[$0-3],op:"NOT IN",right:$$[$0]});break;case 309:this.$=new yy.Op({left:$$[$0-2],op:"BETWEEN",right:$$[$0]});break;case 310:this.$=new yy.Op({left:$$[$0-2],op:"NOT BETWEEN",right:$$[$0]});break;case 311:this.$=new yy.Op({op:"IS",left:$$[$0-2],right:$$[$0]});break;case 312:this.$=new yy.Convert({expression:$$[$0-2]});yy.extend(this.$,$$[$0]);break;case 313:case 314:this.$=$$[$0];break;case 315:this.$=$$[$0-1];break;case 322:this.$="ALL";break;case 323:this.$="SOME";break;case 324:this.$="ANY";break;case 325:this.$=new yy.Update({table:$$[$0-4],columns:$$[$0-2],where:$$[$0]});break;case 326:this.$=new yy.Update({table:$$[$0-2],columns:$$[$0]});break;case 329:this.$=new yy.SetColumn({columnid:$$[$0-2],expression:$$[$0]});break;case 330:this.$=new yy.Delete({table:$$[$0-2],where:$$[$0]});break;case 331:this.$=new yy.Delete({table:$$[$0]});break;case 332:this.$=new yy.Insert({into:$$[$0-2],values:$$[$0]});break;case 333:this.$=new yy.Insert({into:$$[$0-2],"default":true});break;case 334:this.$=new yy.Insert({into:$$[$0-5],columns:$$[$0-3],values:$$[$0]});break;case 335:this.$=new yy.Insert({into:$$[$0-1],select:$$[$0]});break;case 336:this.$=new yy.Insert({into:$$[$0-4],columns:$$[$0-2],select:$$[$0]});break;case 339:this.$=[$$[$0-1]];break;case 342:this.$=$$[$0-4];$$[$0-4].push($$[$0-1]);break;case 343:case 344:case 346:case 354:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 355:this.$=new yy.CreateTable({table:$$[$0-4]});yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-2]);break;case 356:this.$=new yy.CreateTable({table:$$[$0]});break;case 366:case 367:this.$={temporary:true};break;case 369:this.$={ifnotexists:true};break;case 370:this.$={columns:$$[$0-2],constraints:$$[$0]};break;case 371:this.$={columns:$$[$0]};break;case 372:this.$={as:$$[$0]};break;case 373:case 396:this.$=[$$[$0]];break;case 374:case 397:case 500:case 505:case 525:case 529:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 375:case 376:case 377:case 378:case 379:$$[$0].constraintid=$$[$0-1];this.$=$$[$0];break;case 382:this.$={type:"CHECK",expression:$$[$0-1]};break;case 383:this.$={type:"PRIMARY KEY",columns:$$[$0-1]};break;case 384:this.$={type:"FOREIGN KEY",columns:$$[$0-7],fktableid:$$[$0-4],fkcolumns:$$[$0-2]};break;case 398:this.$=new yy.ColumnDef({columnid:$$[$0-2]});yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 399:this.$=new yy.ColumnDef({columnid:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 400:this.$=new yy.ColumnDef({columnid:$$[$0],dbtypeid:""});break;case 401:this.$={dbtypeid:$$[$0-5],dbsize:+$$[$0-3],dbprecision:+$$[$0-1]};break;case 402:this.$={dbtypeid:$$[$0-3],dbsize:+$$[$0-1]};break;case 403:this.$={dbtypeid:$$[$0]};break;case 404:this.$={dbtypeid:"ENUM",enumvalues:$$[$0-1]};break;case 405:this.$=undefined;break;case 407:yy.extend($$[$0-1],$$[$0]);this.$=$$[$0-1];break;case 409:this.$={primarykey:true};break;case 410:case 411:this.$={foreignkey:{tableid:$$[$0-3],columnid:$$[$0-1]}};break;case 412:this.$={auto_increment:true};break;case 413:this.$={identity:[$$[$0-3],$$[$0-1]]};break;case 414:this.$={identity:[1,1]};break;case 415:this.$={"default":$$[$0]};break;case 416:this.$={"null":true};break;case 417:this.$={notnull:true};break;case 418:this.$=$$[$0];break;case 419:this.$=new yy.DropTable({table:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 421:this.$={ifexists:true};break;case 422:this.$=new yy.AlterTable({table:$$[$0-3],renameto:$$[$0]});break;case 423:this.$=new yy.AlterTable({table:$$[$0-3],addcolumn:$$[$0]});break;case 424:this.$=new yy.AlterTable({table:$$[$0-3],modifycolumn:$$[$0]});break;case 425:this.$=new yy.AlterTable({table:$$[$0-5],renamecolumn:$$[$0-2],to:$$[$0]});break;case 426:this.$=new yy.AlterTable({table:$$[$0-3],dropcolumn:$$[$0]});break;case 427:this.$=new yy.AlterTable({table:$$[$0-2],renameto:$$[$0]});break;case 428:this.$=new yy.AttachDatabase({databaseid:$$[$0],engineid:$$[$0-2].toUpperCase()});break;case 429:this.$=new yy.AttachDatabase({databaseid:$$[$0-3],engineid:$$[$0-5].toUpperCase(),args:$$[$0-1]});break;case 430:this.$=new yy.AttachDatabase({databaseid:$$[$0-2],engineid:$$[$0-4].toUpperCase(),as:$$[$0]});break;case 431:this.$=new yy.AttachDatabase({databaseid:$$[$0-5],engineid:$$[$0-7].toUpperCase(),as:$$[$0],args:$$[$0-3]});break;case 432:this.$=new yy.DetachDatabase({databaseid:$$[$0]});break;case 433:this.$=new yy.CreateDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0]);break;case 434:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),databaseid:$$[$0-1],as:$$[$0]});yy.extend(this.$,$$[$0-2]);break;case 435:this.$=new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(),databaseid:$$[$0-4],args:$$[$0-2],as:$$[$0]});yy.extend(this.$,$$[$0-5]);break;case 436:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),as:$$[$0],args:[$$[$0-1]]});yy.extend(this.$,$$[$0-2]);break;case 437:this.$=undefined;break;case 438:case 471:case 489:case 492:case 509:this.$=$$[$0-1];break;case 439:case 440:this.$=new yy.UseDatabase({databaseid:$$[$0]});break;case 441:this.$=new yy.DropDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 442:case 443:this.$=new yy.DropDatabase({databaseid:$$[$0],engineid:$$[$0-3].toUpperCase()});yy.extend(this.$,$$[$0-1]);break;case 444:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1]});break;case 445:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1],unique:true});break;case 446:this.$=new yy.DropIndex({indexid:$$[$0]});break;case 447:this.$=new yy.ShowDatabases;break;case 448:this.$=new yy.ShowDatabases({like:$$[$0]});break;case 449:this.$=new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase()});break;case 450:this.$=new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase(),like:$$[$0]});break;case 451:this.$=new yy.ShowTables;break;case 452:this.$=new yy.ShowTables({like:$$[$0]});break;case 453:this.$=new yy.ShowTables({databaseid:$$[$0]});break;case 454:this.$=new yy.ShowTables({like:$$[$0],databaseid:$$[$0-2]});break;case 455:this.$=new yy.ShowColumns({table:$$[$0]});break;case 456:this.$=new yy.ShowColumns({table:$$[$0-2],databaseid:$$[$0]});break;case 457:this.$=new yy.ShowIndex({table:$$[$0]});break;case 458:this.$=new yy.ShowIndex({table:$$[$0-2],databaseid:$$[$0]});break;case 459:this.$=new yy.ShowCreateTable({table:$$[$0]});break;case 460:this.$=new yy.ShowCreateTable({table:$$[$0-2],databaseid:$$[$0]});break;case 461:this.$=new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]});yy.extend(this.$,$$[$0-6]);break;case 462:this.$=new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]});break;case 463:this.$=new yy.DropTable({table:$$[$0],view:true});yy.extend(this.$,$$[$0-1]);break;case 464:this.$=new yy.Help({subject:$$[$0].value.toUpperCase()});break;case 465:this.$=new yy.Help;break;case 466:this.$=new yy.ExpressionStatement({expression:$$[$0]});break;case 467:this.$=new yy.Source({url:$$[$0].value});break;case 468:this.$=new yy.Assert({value:$$[$0]});break;case 469:this.$=new yy.Assert({value:$$[$0].value});break;case 470:this.$=new yy.Assert({value:$$[$0],message:$$[$0-2]});break;case 472:case 483:case 485:this.$=$$[$0].value;break;case 473:case 481:this.$=+$$[$0].value;break;case 474:this.$=!!$$[$0].value;break;case 482:this.$=""+$$[$0].value;break;case 488:this.$=$$[$0-1];break;case 490:case 493:this.$=$$[$0-2];break;case 491:this.$={};break;case 494:this.$=[];break;case 495:yy.extend($$[$0-2],$$[$0]);this.$=$$[$0-2];break;case 497:this.$={};this.$[$$[$0-2].substr(1,$$[$0-2].length-2)]=$$[$0];break;case 498:case 499:this.$={};this.$[$$[$0-2]]=$$[$0];break;case 502:this.$=new yy.SetVariable({variable:$$[$0-1].toLowerCase(),value:$$[$0]});break;case 503:this.$=new yy.SetVariable({variable:$$[$0-2],expression:$$[$0]});break;case 504:this.$=new yy.SetVariable({variable:$$[$0-3],props:$$[$0-2],expression:$$[$0]});break;case 510:this.$=true;break;case 511:this.$=false;break;case 512:this.$=new yy.CommitTransaction;break;case 513:this.$=new yy.RollbackTransaction;break;case 514:this.$=new yy.BeginTransaction;break;case 515:this.$=new yy.If({expression:$$[$0-2],thenstat:$$[$0-1],elsestat:$$[$0]});if($$[$0-1].exists)this.$.exists=$$[$0-1].exists;if($$[$0-1].queries)this.$.queries=$$[$0-1].queries;break;case 516:this.$=new yy.If({expression:$$[$0-1],thenstat:$$[$0]});break;case 517:this.$=$$[$0];break;case 518:this.$=new yy.While({expression:$$[$0-1],loopstat:$$[$0]});if($$[$0].exists)this.$.exists=$$[$0].exists;if($$[$0].queries)this.$.queries=$$[$0].queries;break;case 519:this.$=new yy.Continue;break;case 520:this.$=new yy.Break;break;case 521:this.$=new yy.BeginEnd({statements:$$[$0-1]});break;case 522:case 523:this.$=new yy.Print({statement:$$[$0]});break;case 524:this.$=new yy.Require({paths:$$[$0]});break;case 527:this.$=new yy.Declare({declares:$$[$0]});break;case 530:this.$={variable:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 531:this.$={variable:$$[$0-2]};yy.extend(this.$,$$[$0]);break;case 532:this.$={variable:$$[$0-3],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 533:this.$={variable:$$[$0-4],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 534:this.$=new yy.TruncateTable({table:$$[$0]});break;case 535:this.$=new yy.Merge;yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 536:case 537:this.$={into:$$[$0]};break;case 539:this.$={on:$$[$0]};break;case 544:this.$={matched:true,action:$$[$0]};break;case 545:this.$={matched:true,expr:$$[$0-2],action:$$[$0]};break;case 546:this.$={"delete":true};break;case 547:this.$={update:$$[$0]};break;case 548:case 549:this.$={matched:false,bytarget:true,action:$$[$0]};break;case 550:case 551:this.$={matched:false,bytarget:true,expr:$$[$0-2],action:$$[$0]};break;case 552:this.$={matched:false,bysource:true,action:$$[$0]};break;case 553:this.$={matched:false,bysource:true,expr:$$[$0-2],action:$$[$0]};break;case 554:this.$={insert:true,values:$$[$0]};break;case 555:this.$={insert:true,values:$$[$0],columns:$$[$0-3]};break;case 556:this.$={insert:true,defaultvalues:true};break;case 557:this.$={insert:true,defaultvalues:true,columns:$$[$0-3]};break;case 559:this.$={output:{columns:$$[$0]}};break;case 560:this.$={output:{columns:$$[$0-3],intovar:$$[$0]}};break;case 561:this.$={output:{columns:$$[$0-2],intotable:$$[$0]}};break;case 562:this.$={output:{columns:$$[$0-5],intotable:$$[$0-3],intocolumns:$$[$0-1]}};break}},table:[o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{252:[1,141]},{3:142,4:$VB,5:$VC},{3:144,4:$VB,5:$VC,78:[1,146],86:[1,145],252:[1,147],301:[1,143],309:[1,148]},{193:$V71,341:149,342:150},{97:[1,152]},{301:[1,153]},{3:155,4:$VB,5:$VC,86:[1,156],252:[1,157],301:[1,154],309:[1,158]},o($V81,[2,337],{244:159,91:[1,160]}),{252:[1,161]},o($V91,[2,75],{67:162,91:[1,163]}),{3:173,4:$VB,5:$VC,64:$Va1,91:[1,166],92:168,93:170,94:169,95:171,96:$Vb1,99:165,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01,345:164},{3:178,4:$VB,5:$VC,60:176,62:177},{3:182,4:$VB,5:$VC,86:[1,183],251:[1,179],306:[1,181],307:[1,184],308:[1,180]},{252:[1,185]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:187,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,186],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,188]},{330:[1,189]},{3:191,4:$VB,5:$VC,301:[1,190]},{3:193,4:$VB,5:$VC,92:192},o($VA,[2,465],{153:194,96:$VE,191:$VV}),o($Vd1,[2,216]),{96:$VE,153:195,191:$VV},{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:[1,198],152:$VF,153:201,159:202,160:203,164:196,171:197,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:208,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,519]),o($VA,[2,520]),{3:106,4:$VB,5:$VC,33:209,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:211,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:210,314:126,315:$V51,319:$V61},{96:$VE,153:213,191:$VV,339:212},{3:214,4:$VB,5:$VC,193:[1,215]},o($Vg1,$Vh1,{76:219,75:[1,216],78:[1,217],79:[1,218],88:$Vi1}),o($Vj1,[2,63],{81:[1,221],82:[1,222],83:[1,223],84:[1,224],85:[1,225],86:[1,226],87:[1,227]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:228,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,230]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:231,225:251,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vd1,[2,198]),o($Vd1,[2,199]),o($Vd1,[2,200]),o($Vd1,[2,201]),o($Vd1,[2,202]),o($Vd1,[2,203]),o($Vd1,[2,204]),o($Vd1,[2,205]),o($Vd1,[2,206]),o($Vd1,[2,207]),o($Vd1,[2,208]),o($Vd1,[2,209]),o($Vd1,[2,210]),o($Vd1,[2,211]),o($Vd1,[2,212]),o($Vd1,[2,213]),{3:106,4:$VB,5:$VC,33:260,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:261,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,215]),{64:[1,262]},o($Vd1,$VL1,{64:$VM1,106:[1,264]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:265,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,193]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,258,259,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,252]),o($VN1,[2,253]),o($VN1,[2,254]),o($VN1,$VO1),o($VN1,[2,256]),o($VN1,[2,257]),{3:268,4:$VB,5:$VC},{3:269,4:$VB,5:$VC},o($VP1,[2,262]),o($VP1,[2,263]),{3:270,4:$VB,5:$VC,64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},{64:[1,277]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:278,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:279,203:280,204:$VR1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,282]},{64:[1,283]},o($VS1,[2,476]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:284,317:287,318:289,319:$V61,322:285,323:[1,286]},{3:299,4:$VB,5:$VC,93:300},{64:[2,239]},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},o($VU1,[2,1]),o($VU1,[2,2]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,320:301,321:[1,302],324:303},{3:193,4:$VB,5:$VC,92:307},{301:[1,308]},o($V81,$VX1,{253:309,264:$VY1}),{301:[1,311]},{3:312,4:$VB,5:$VC},{86:[1,313]},o($V81,$VX1,{253:314,264:$VY1}),o($V81,$VX1,{253:315,264:$VY1}),o($VA,[2,527],{61:[1,316]}),o($VZ1,[2,528]),{3:317,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:318},{3:319,4:$VB,5:$VC},o($V81,$V_1,{294:320,264:$V$1}),{301:[1,322]},{3:323,4:$VB,5:$VC},o($V81,$V_1,{294:324,264:$V$1}),o($V81,$V_1,{294:325,264:$V$1}),{3:193,4:$VB,5:$VC,92:326},o($V81,[2,338]),{3:193,4:$VB,5:$VC,92:327},o($V02,[2,83],{68:328,97:[1,329]}),{3:173,4:$VB,5:$VC,92:330,93:331,94:332,95:333,96:[1,334],193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,336],346:335},{122:[2,536]},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:337,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:338,66:59,74:79,80:$V4},o($V12,[2,95],{3:339,4:$VB,5:$VC,63:[1,340]}),o($V12,[2,98],{3:341,4:$VB,5:$VC,63:[1,342]}),o($V12,[2,99],{3:343,4:$VB,5:$VC,63:[1,344]}),o($V12,[2,102],{3:345,4:$VB,5:$VC,63:[1,346]}),o($V12,[2,105],{3:347,4:$VB,5:$VC,63:[1,348]}),o([4,5,8,9,11,61,63,65,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22,{64:$VM1,106:$V32}),{3:270,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,108]),{33:350,61:[1,351],66:59,74:79,80:$V4},o($V42,[2,56]),{63:[1,352]},{252:[1,353]},{97:[1,354]},o($VA,[2,447],{207:[1,355]}),{306:[1,356]},{97:[1,357]},o($VA,[2,451],{97:[1,359],207:[1,358]}),{3:193,4:$VB,5:$VC,92:360},o($VA,[2,514]),{9:$Vx,11:$Vy,202:[1,361]},o($VA,[2,512]),o($VA,[2,513]),{3:362,4:$VB,5:$VC},o($VA,[2,440]),{239:[1,363]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V22,{106:$V32}),o($VA,[2,464]),o($VA,[2,467]),o($VA,[2,468]),o($VA,[2,469]),o($VA,$VO1,{61:[1,364]}),{64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},o($V52,[2,223]),o($V52,[2,224]),o($V52,[2,225]),o($V52,[2,226]),o($V52,[2,227]),o($V52,[2,228]),o($V52,[2,229]),{64:$VM1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:251,10:365,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,522]),o($VA,[2,523]),o($VA,[2,466],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,524],{61:[1,366]}),o($VZ1,[2,526]),{120:[1,368],325:367,328:[1,369]},{3:370,4:$VB,5:$VC},o($Vg1,$Vh1,{76:371,88:$Vi1}),o($Vg1,$Vh1,{76:372,88:$Vi1}),o($Vg1,$Vh1,{76:373,88:$Vi1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:374,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,378],89:377,152:$VF},o($Vj1,[2,64]),o($Vj1,[2,65]),o($Vj1,[2,66]),o($Vj1,[2,67]),o($Vj1,[2,68]),o($Vj1,[2,69]),o($Vj1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:379,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,516],{333:380,206:[1,381]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:382,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:390,4:$VB,5:$VC,64:[1,392],89:391,93:393,152:$VF},o($V62,[2,316],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:394,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:399,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V62,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:401,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:402,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,405],226:404,236:[1,406],237:[1,407]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:408,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:298,4:$VB,5:$VC,64:[1,410],93:413,156:412,193:$V72,231:411},{230:[1,415]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:416,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:419,289:$V92},{65:[1,422]},{65:[1,423],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,425],79:[1,426],89:92,93:88,94:96,95:97,96:$VE,121:424,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,428],89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:427,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:430,4:$VB,5:$VC,81:$Va2,155:[1,432]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,234:$VJ1}),o($Vb2,[2,298],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,299],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($VP1,[2,260]),o($VP1,[2,261]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,258]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:433,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,472]),o($VS1,[2,473]),o($VS1,[2,474]),o($VS1,[2,475]),o($VS1,[2,477]),{33:434,66:59,74:79,80:$V4},{155:$Vk1,200:435,203:280,204:$VR1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{201:436,202:$Vc2,203:437,204:$VR1,206:$Vd2},o($Ve2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:439,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:441,289:$V92},o($VS1,[2,478]),{61:[1,443],323:[1,442]},o($VS1,[2,494]),o($Vf2,[2,501]),o($Vg2,[2,479]),o($Vg2,[2,480]),o($Vg2,[2,481]),o($Vg2,[2,482]),o($Vg2,[2,483]),o($Vg2,[2,484]),o($Vg2,[2,485]),o($Vg2,[2,486]),o($Vg2,[2,487]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:444,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,$VL1,{64:$VM1,106:$Vh2}),o($Vd1,[2,217],{64:$VM1}),o($Vd1,[2,218]),{61:[1,447],321:[1,446]},o($VS1,[2,491]),o($Vi2,[2,496]),{196:[1,448]},{196:[1,449]},{196:[1,450]},{293:[1,454],296:[1,451],298:[1,452],299:[1,453]},{3:455,4:$VB,5:$VC},{3:456,4:$VB,5:$VC},{229:[1,457]},o($Vj2,$VX1,{253:458,264:$VY1}),{120:[1,459]},{3:460,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:461},{3:193,4:$VB,5:$VC,92:462},{193:$V71,342:463},{4:$V82,63:[1,465],169:464,289:$V92},o($VA,[2,331],{124:[1,466]}),o($VA,[2,432]),{3:467,4:$VB,5:$VC},{194:[1,468]},o($Vj2,$V_1,{294:469,264:$V$1}),o($VA,[2,446]),{3:193,4:$VB,5:$VC,92:470},{3:193,4:$VB,5:$VC,92:471},{33:475,64:[1,474],66:59,74:79,80:$V4,245:[1,472],247:[1,473]},{297:[1,476]},o($Vk2,[2,145],{69:477,124:[1,478]}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,98:479,99:480,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V91,[2,76]),o($V91,[2,77]),o($V91,[2,78]),o($V91,[2,79]),o($V91,[2,80]),{120:[1,482],347:481},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:483,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,537]},{65:[1,484]},o($V12,[2,93]),{3:485,4:$VB,5:$VC},o($V12,[2,96]),{3:486,4:$VB,5:$VC},o($V12,[2,100]),{3:487,4:$VB,5:$VC},o($V12,[2,103]),{3:488,4:$VB,5:$VC},o($V12,[2,106]),{3:489,4:$VB,5:$VC},{3:490,4:$VB,5:$VC},o($VA,[2,54]),{3:178,4:$VB,5:$VC,62:491},{64:[1,492]},{3:193,4:$VB,5:$VC,92:493},{3:193,4:$VB,5:$VC,92:494},{96:$VE,153:495,191:$VV},o($VA,[2,449],{207:[1,496]}),{3:193,4:$VB,5:$VC,92:497},{96:$VE,153:498,191:$VV},{3:499,4:$VB,5:$VC},o($VA,[2,534]),o($VA,[2,521]),o($VA,[2,439]),{3:503,4:$VB,5:$VC,156:502,240:500,241:501},{164:504,193:$Vf1,314:126,315:$V51,319:$V61},o($VA,[2,518]),{96:$VE,153:505,191:$VV},o($VA,[2,502]),o($VA,[2,510]),o($VA,[2,511]),{214:[1,508],219:[1,506],326:507},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:509,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:510,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vl2,[2,62],{61:$Vm2}),o($Vn2,$Vo2,{149:513,150:$Vp2,151:$Vq2}),o($Vr2,[2,190],{225:251,3:517,153:519,4:$VB,5:$VC,63:[1,516],96:$VE,152:[1,518],155:$Vk1,191:$VV,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vg1,[2,71],{90:[1,520]}),{89:521,152:$VF},o($Vz,[2,9]),o($VA,[2,515]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:522,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vs2,[2,271],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vs2,[2,272],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,273],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,274],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vt2,[2,275],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,276],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,277],{225:251,213:$Vr1,214:$Vs1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,278],{225:251,214:$Vs1}),o($Vd1,[2,279],{64:$VM1}),o($Vd1,[2,280]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:523,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,282]),o($Vu2,[2,283],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,284],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,285],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,286],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,287],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,288],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,289],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,290],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,291],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,292],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),{64:[1,524]},{64:[2,322]},{64:[2,323]},{64:[2,324]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,295],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1}),{3:106,4:$VB,5:$VC,33:525,49:104,64:$VD,65:[1,527],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:526,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,307]),o($Vd1,[2,313]),o($Vd1,[2,314]),{64:[1,528]},{3:298,4:$VB,5:$VC,64:[1,529],93:413,156:412,193:$V72,231:530},o($Vv2,[2,309],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o($Vv2,[2,310],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,311],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vd1,[2,312]),o($Vw2,[2,403],{64:[1,531]}),{64:[1,532]},o($Vd1,[2,214]),o($Vd1,[2,300]),{65:[1,533],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:534,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:535,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vx2,65:[1,536]},o($VP1,[2,249]),o($Vy2,[2,250],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,$Vz2,{106:[1,538]}),o($VS1,[2,196]),o($Vd1,[2,192]),{65:[1,539],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,540]},{201:541,202:$Vc2,203:437,204:$VR1,206:$Vd2},{202:[1,542]},o($Ve2,[2,266]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:543,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vk1,205:[1,544],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{63:[1,545],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{61:[1,546]},o($VS1,[2,492]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:548,318:289,319:$V61,323:[1,547]},{65:[1,549],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:550,4:$VB,5:$VC,81:$Va2},o($VS1,[2,489]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,321:[1,551],324:552},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:553,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:554,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:289,319:$V61},{83:[1,557],297:[1,556]},{83:[1,558]},{83:[1,559]},{83:[1,560]},o($VA,[2,428],{63:[1,562],64:[1,561]}),o($VA,[2,433]),{194:[1,563]},{3:564,4:$VB,5:$VC,96:$VE,153:565,191:$VV},{3:193,4:$VB,5:$VC,92:566},{120:[1,567]},o($VA,[2,356],{64:[1,568]}),{63:[1,570],64:[1,569]},o($VZ1,[2,529]),o($VZ1,[2,530],{219:[1,571]}),{4:$V82,169:572,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:573,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,441]),o($Vj2,[2,421]),{3:574,4:$VB,5:$VC,96:$VE,153:575,191:$VV},o($VA,[2,419]),o($VA,[2,463]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:576,314:126,315:$V51,319:$V61},{245:[1,580]},{3:503,4:$VB,5:$VC,123:581,156:582},o($VA,[2,335]),{3:583,4:$VB,5:$VC},o($VB2,[2,147],{70:584,125:[1,585]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:586,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V02,[2,81],{61:[1,587]}),o($VC2,[2,88],{100:588,107:589,101:590,108:591,111:594,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),{204:$VN2,348:603,350:604,351:605},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:607,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,538]},o($V12,[2,92],{3:608,4:$VB,5:$VC,63:[1,609]}),o($V12,[2,94]),o($V12,[2,97]),o($V12,[2,101]),o($V12,[2,104]),o($V12,[2,107]),o([4,5,8,9,11,61,63,64,65,80,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,109]),o($V42,[2,55]),{33:610,66:59,74:79,80:$V4},o($VA,[2,459],{97:[1,611]}),o($VA,[2,455],{97:[1,612]}),o($VA,[2,448]),{96:$VE,153:613,191:$VV},o($VA,[2,457],{97:[1,614]}),o($VA,[2,452]),o($VA,[2,453],{207:[1,615]}),o($VA,[2,326],{61:$VO2,124:[1,616]}),o($VP2,[2,327]),{219:[1,618]},o([8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VL1,{106:$Vh2}),o($VA,[2,470]),o($VZ1,[2,525]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:619,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,621],219:[1,620]},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:622},o($Vl2,[2,59],{61:$Vm2}),o($Vl2,[2,60],{61:$Vm2}),o($Vl2,[2,61],{61:$Vm2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:376,148:626,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:627,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:629,4:$VB,5:$VC,96:$VE,152:[1,630],153:631,191:$VV},o($Vr2,[2,185]),o($Vr2,[2,187]),o($Vr2,[2,189]),o($Vg1,[2,73]),{65:[1,632]},o($VA,[2,517]),{65:[1,633],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,33:634,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:635,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,636]},{61:$Vx2,65:[1,637]},o($Vd1,[2,305]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:638,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:639,49:104,64:$VD,65:[1,641],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:640,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,308]),{152:[1,642]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:643,314:126,315:$V51,319:$V61},o($Vd1,$VS2,{174:645,175:$VT2}),{65:[1,647],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,648],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VP1,[2,248]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:649,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:650,4:$VB,5:$VC,155:[1,651]},o($VS1,[2,471]),o($Vd1,[2,259]),{202:[1,652]},o($Vd1,[2,265]),{155:$Vk1,202:[2,269],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:653,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:654,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,493]),o($Vf2,[2,500]),o($Vg2,[2,488]),o($VS1,$Vz2,{106:[1,656]}),o($VS1,[2,490]),o($Vi2,[2,495]),o($Vi2,[2,497]),o($Vi2,[2,498]),o($Vi2,[2,499]),{3:657,4:$VB,5:$VC},{3:658,4:$VB,5:$VC},{3:660,4:$VB,5:$VC,286:659},{3:660,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:663,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:664,4:$VB,5:$VC},o($Vj2,[2,369]),o($VA,$VU2,{303:665,63:$VV2,64:[1,666]}),o($VA,$VU2,{303:668,63:$VV2}),{64:[1,669]},{3:193,4:$VB,5:$VC,92:670},{3:660,4:$VB,5:$VC,63:[1,673],254:671,265:672,286:674},{3:503,4:$VB,5:$VC,123:675,156:582},{33:676,66:59,74:79,80:$V4},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:677,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VZ1,[2,531],{219:[1,678]}),o($VA,[2,330],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,442]),o($VA,[2,443]),o($VA,[2,332],{61:$VW2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:680,314:126,315:$V51,319:$V61},o($VX2,[2,340]),o($VX2,[2,341]),o($VA,[2,333]),{61:$VY2,65:[1,681]},o($VZ2,[2,353]),o($VA,[2,427]),o($V_2,[2,166],{71:683,139:[1,684]}),{126:[1,685]},o($Vk2,[2,146],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:686,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V02,[2,82],{108:591,111:594,107:687,101:688,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),o($V$2,[2,113]),o($V$2,[2,114]),{3:173,4:$VB,5:$VC,64:[1,692],92:690,93:693,94:691,95:694,109:689,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{103:[1,695],113:$V03},{103:[1,697],113:$V13},o($V23,[2,129]),{102:[1,701],104:[1,700],111:699,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2},o($V23,[2,131]),{113:[1,702]},{104:[1,704],113:[1,703]},{104:[1,706],113:[1,705]},{104:[1,707]},{113:[1,708]},{113:[1,709]},o($VA,[2,558],{349:710,350:711,351:712,204:$VN2,356:[1,713]}),o($V33,[2,542]),o($V33,[2,543]),{229:[1,715],352:[1,714]},{155:$Vk1,204:[2,539],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V12,[2,90]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,450]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,156:502,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,503],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:726},o($V43,[2,506]),o($V43,[2,507]),o($V43,[2,508]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,$Vo2,{149:728,150:$Vp2,151:$Vq2}),o($Vn2,[2,181],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vn2,[2,182],{225:251,150:[1,729],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vr2,[2,184]),o($Vr2,[2,186]),o($Vr2,[2,188]),o($Vg1,[2,72]),o($Vd1,[2,281]),{65:[1,730]},{61:$Vx2,65:[1,731]},o($Vd1,[2,301]),o($Vd1,[2,303]),{65:[1,732],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,733]},{61:$Vx2,65:[1,734]},o($Vd1,[2,306]),{61:[1,735],65:[1,736]},{61:$V53,65:[1,737]},o($Vy2,[2,345],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,[2,230]),{64:[1,739]},o($Vd1,$VS2,{174:740,175:$VT2}),o($Vd1,$VS2,{174:741,175:$VT2}),o($Vy2,[2,251],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VS1,[2,194]),o($Vd1,[2,191]),o($Vd1,[2,264]),o($Ve2,[2,268],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:650,4:$VB,5:$VC},o($VA,[2,422]),{297:[1,746]},o($VA,[2,423]),o($V63,[2,400],{169:747,4:$V82,288:[1,748],289:$V92}),o($VA,[2,424]),o($VA,[2,426]),{61:$Vx2,65:[1,749]},o($VA,[2,430]),o($VA,[2,434]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,436]),{3:753,4:$VB,5:$VC,96:$V73,278:752},{64:[1,755]},{65:[1,756]},{61:[1,757],65:[2,371]},{33:758,66:59,74:79,80:$V4},o($Vy2,[2,396]),{61:$VY2,65:[1,759]},o($VA,[2,462]),o($VZ1,[2,532],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:760,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,761],94:763,164:762,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V53,65:[1,764]},{33:766,66:59,74:79,80:$V4,245:[1,765]},{3:503,4:$VB,5:$VC,156:767},o($V83,[2,174],{72:768,145:[1,769]}),{126:[1,770]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:771,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,89]),o($V$2,[2,111]),o($V$2,[2,112]),o($V$2,[2,144],{110:777,120:[1,778],122:[1,779]}),o($Vc3,[2,116],{3:780,4:$VB,5:$VC,63:[1,781]}),{3:782,4:$VB,5:$VC,63:[1,783]},{33:784,66:59,74:79,80:$V4},o($Vc3,[2,123],{3:785,4:$VB,5:$VC,63:[1,786]}),o($Vc3,[2,126],{3:787,4:$VB,5:$VC,63:[1,788]}),{64:[1,789]},o($V23,[2,141]),{64:[1,790]},o($V23,[2,137]),o($V23,[2,130]),{113:$V13},{113:$V03},o($V23,[2,132]),o($V23,[2,133]),{113:[1,791]},o($V23,[2,135]),{113:[1,792]},{113:[1,793]},o($V23,[2,139]),o($V23,[2,140]),o($VA,[2,535]),o($V33,[2,540]),o($V33,[2,541]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:794,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,795],227:[1,796]},{352:[1,797]},o($V12,[2,91]),o($V42,[2,57]),o($VA,[2,460]),o($VA,[2,456]),o($VA,[2,458]),o($VA,[2,454]),o($VA,[2,325],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VP2,[2,328]),o($VP2,[2,329],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,504],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V43,[2,505]),{65:[1,798],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vn2,[2,178]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:799,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,293]),o($Vd1,[2,294]),o($Vd1,[2,315]),o($Vd1,[2,302]),o($Vd1,[2,304]),{152:[1,800]},o($Vw2,[2,402]),o($Vw2,[2,404]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:801,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:802,177:803,178:[1,804]},o($Vd1,[2,231]),o($Vd1,[2,232]),o($Vd1,[2,219]),{152:[1,806]},o($Vd1,[2,221]),{152:[1,807]},{3:808,4:$VB,5:$VC},o($V63,[2,405],{287:809,290:810,291:811,273:820,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V63,[2,399]),o($VA,[2,429],{63:[1,822]}),{61:$Vx2,65:[1,823]},o($VA,[2,438]),{61:$Vn3,65:[1,824]},o($Vy2,[2,392]),o($Vy2,[2,393]),{3:753,4:$VB,5:$VC,96:$V73,278:826},o($VA,[2,357],{255:827,256:828,257:829,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($Vs3,$Vt3,{3:660,266:834,286:835,267:836,268:837,4:$VB,5:$VC,274:$Vu3}),{65:[2,372]},{63:[1,839]},o($VZ1,[2,533],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:840,314:126,315:$V51,319:$V61},o($VX2,[2,343]),o($VX2,[2,344]),o($VX2,[2,339]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:841,314:126,315:$V51,319:$V61},o($VA,[2,336]),o($VZ2,[2,354]),o($Vv3,[2,157],{73:842,135:[1,843],136:[1,844],137:[1,845]}),{89:846,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:847,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VB2,[2,155],{128:850,61:$Vw3,134:[1,852]}),o($Vx3,[2,149]),{131:[1,853]},{64:[1,854]},{64:[1,855]},o($Vx3,[2,154],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,115]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:856,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:857,156:582},o($Vc3,[2,117]),{3:858,4:$VB,5:$VC},o($Vc3,[2,119]),{3:859,4:$VB,5:$VC},{65:[1,860]},o($Vc3,[2,124]),{3:861,4:$VB,5:$VC},o($Vc3,[2,127]),{3:862,4:$VB,5:$VC},{33:863,66:59,74:79,80:$V4},{33:864,66:59,74:79,80:$V4},o($V23,[2,134]),o($V23,[2,136]),o($V23,[2,138]),o($VA,[2,559],{61:$Vm2,91:[1,865]}),{238:$Vy3,242:$Vz3,353:866},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:869,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,871],205:[1,870],227:[1,872]},o($V43,[2,509]),o($Vn2,[2,183],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,873]},o($Vy2,[2,346],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,874],139:$Vd3,177:875},{65:[1,876]},{126:[1,877]},{126:[1,878]},{65:[1,879]},{65:[1,880]},o($VA,[2,425]),o($V63,[2,398]),o($V63,[2,406],{273:820,291:881,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V52,[2,408]),{277:[1,882]},{277:[1,883]},{3:884,4:$VB,5:$VC},o($V52,[2,412]),o($V52,[2,414],{64:[1,885]}),{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:$VE,152:$VF,153:201,159:202,160:203,171:886,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V52,[2,416]),{192:[1,887]},o($V52,[2,418]),{64:[1,888]},{3:889,4:$VB,5:$VC},o($VA,$VU2,{303:890,63:$VV2}),o($VA,[2,444]),{3:891,4:$VB,5:$VC,96:[1,892]},{61:$Vn3,65:[1,893]},o($VA,[2,355]),o($VA,[2,358],{257:894,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($VA3,[2,360]),o($VA3,[2,361]),{219:[1,895]},{219:[1,896]},{219:[1,897]},{61:[1,898],65:[2,370]},o($Vy2,[2,397]),o($Vy2,[2,373]),{78:[1,906],86:[1,907],269:899,270:900,271:901,272:902,273:903,275:$Vi3,276:[1,904],277:[1,908],279:[1,905]},{3:909,4:$VB,5:$VC},{33:910,66:59,74:79,80:$V4},{61:$V53,65:[1,911]},o($VA,[2,334],{61:$VW2}),o($Vv3,[2,58]),{33:912,66:59,74:79,79:[1,913],80:$V4,138:[1,914]},{33:915,66:59,74:79,80:$V4,138:[1,916]},{33:917,66:59,74:79,80:$V4,138:[1,918]},o($V83,[2,176],{146:919,147:[1,920]}),o($V_2,[2,167],{61:$VB3}),o($VC3,[2,168]),o($VC3,[2,170],{225:251,142:[1,922],143:[1,923],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VB2,[2,148]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,129:924,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:925,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:927,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:928,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V$2,[2,142],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,143],{61:$VY2}),o($Vc3,[2,118]),o($Vc3,[2,120]),{3:929,4:$VB,5:$VC,63:[1,930]},o($Vc3,[2,125]),o($Vc3,[2,128]),{65:[1,931]},{65:[1,932]},{3:193,4:$VB,5:$VC,92:934,193:[1,933]},o($V33,[2,544]),o($V33,[2,546]),{239:[1,935]},{155:$Vk1,205:[1,936],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{243:$VD3,354:937},{312:[1,940],355:[1,939]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:941,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vw2,[2,401]),o($Vd1,[2,234]),{65:[1,942]},o($Vd1,[2,235]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:943,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:944,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,220]),o($Vd1,[2,222]),o($V52,[2,407]),o($V52,[2,409]),{280:[1,945]},{64:[1,946]},{89:947,152:$VF},o($V52,[2,415]),o($V52,[2,417]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:948,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,431]),o($VA,[2,435]),o($Vy2,[2,394]),o($Vy2,[2,395]),o($VA,[2,445]),o($VA3,[2,359]),{3:949,4:$VB,5:$VC},{89:950,152:$VF},{3:951,4:$VB,5:$VC},o($Vs3,$Vt3,{268:837,267:952,274:$Vu3}),o($Vy2,[2,375]),o($Vy2,[2,376]),o($Vy2,[2,377]),o($Vy2,[2,378]),o($Vy2,[2,379]),{277:[1,953]},{277:[1,954]},o($Vy2,[2,389]),{3:955,4:$VB,5:$VC},{3:956,4:$VB,5:$VC},o($Vs3,[2,381]),o($VA,[2,461]),o($VX2,[2,342]),o($Vv3,[2,158]),{33:957,66:59,74:79,80:$V4,138:[1,958]},{33:959,66:59,74:79,80:$V4},o($Vv3,[2,160]),{33:960,66:59,74:79,80:$V4},o($Vv3,[2,161]),{33:961,66:59,74:79,80:$V4},o($V83,[2,175]),{89:962,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,141:963,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC3,[2,171]),{144:[1,964]},o($Vx3,[2,150]),o($VB2,[2,156],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:965,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vw3,65:[1,966]},{61:$Vw3,65:[1,967]},o($Vc3,[2,121]),{3:968,4:$VB,5:$VC},{3:969,4:$VB,5:$VC,63:[1,970]},{3:971,4:$VB,5:$VC,63:[1,972]},{3:973,4:$VB,5:$VC},o($VA,[2,561],{64:[1,974]}),{3:503,4:$VB,5:$VC,156:502,240:975,241:501},{238:$Vy3,242:$Vz3,353:976},o($V33,[2,548]),{64:[1,978],245:[1,977],247:[1,979]},{205:[1,980],227:[1,981]},{205:[1,982],227:[1,983]},{155:$Vk1,205:[1,984],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vd1,[2,236]),o([65,139],[2,237],{61:$Vw3}),{61:$VB3,65:[2,238]},{3:985,4:$VB,5:$VC},{3:986,4:$VB,5:$VC},{61:[1,987]},{65:[1,988],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VA3,[2,362]),o($VA3,[2,363]),o($VA3,[2,364]),o($Vy2,[2,374]),{64:[1,989]},{64:[1,990]},{64:[1,991]},{64:[1,992]},o($Vv3,[2,159]),{33:993,66:59,74:79,80:$V4},o($Vv3,[2,162]),o($Vv3,[2,164]),o($Vv3,[2,165]),o($V83,[2,177]),o($VC3,[2,169]),o($VC3,[2,172],{142:[1,994]}),{61:$Vw3,65:[1,995]},o($Vx3,[2,152]),o($Vx3,[2,153]),o($Vc3,[2,122]),o($V$2,[2,84]),{3:996,4:$VB,5:$VC},o($V$2,[2,86]),{3:997,4:$VB,5:$VC},o($VA,[2,560]),{3:503,4:$VB,5:$VC,123:998,156:582},o($V33,[2,547],{61:$VO2}),o($V33,[2,545]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:999,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:1e3,156:582},{245:[1,1001]},{243:$VD3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1004},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1005,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1006},{64:[1,1007]},{65:[1,1008]},{89:1009,152:$VF},o($V52,[2,382]),{3:753,4:$VB,5:$VC,96:$V73,278:1010},{3:753,4:$VB,5:$VC,96:$V73,278:1011},{3:503,4:$VB,5:$VC,123:1012,156:582},{3:503,4:$VB,5:$VC,123:1013,156:582},o($Vv3,[2,163]),o($VC3,[2,173]),o($Vx3,[2,151]),o($V$2,[2,85]),o($V$2,[2,87]),{61:$VY2,65:[1,1014]},o($V33,[2,554],{61:$VW2}),{61:$VY2,65:[1,1015]},o($V33,[2,556]),o($V33,[2,549]),{155:$Vk1,205:[1,1016],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,552]),{155:$Vk1,205:[1,1017],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,550]),{3:1018,4:$VB,5:$VC},o($V52,[2,411]),{65:[1,1019]},{61:$Vn3,65:[1,1020]},{61:$Vn3,65:[1,1021]},{61:$VY2,65:[1,1022]},{61:$VY2,65:[1,1023]},o($VA,[2,562]),{245:[1,1024],247:[1,1025]},{243:$VD3,354:1026},{238:$Vy3,242:$Vz3,353:1027},{65:[1,1028]},o($V52,[2,413]),o($Vy2,[2,383]),{280:[1,1029]},o($Vy2,[2,390]),o($Vy2,[2,391]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1030,314:126,315:$V51,319:$V61},{245:[1,1031]},o($V33,[2,551]),o($V33,[2,553]),o($V52,[2,410]),{3:1032,4:$VB,5:$VC},o($V33,[2,555],{61:$VW2}),o($V33,[2,557]),{64:[1,1033]},{3:753,4:$VB,5:$VC,96:$V73,278:1034},{61:$Vn3,65:[1,1035]},o($Vy2,[2,385],{281:1036,282:1037,120:[1,1038]}),o($Vy2,[2,384]),{120:[1,1040],283:1039},{242:[1,1041]},o($Vy2,[2,386]),{238:[1,1042]},{284:[1,1043]},{284:[1,1044]},{285:[1,1045]},{285:[1,1046]},{120:[2,387]},o($Vy2,[2,388])],defaultActions:{81:[2,3],129:[2,239],130:[2,240],131:[2,241],132:[2,242],133:[2,243],134:[2,244],135:[2,245],136:[2,246],137:[2,247],165:[2,536],337:[2,537],405:[2,322],406:[2,323],407:[2,324],483:[2,538],758:[2,372],1045:[2,387]},parseError:function parseError(str,hash){if(hash.recoverable){this.trace(str) -}else{throw new Error(str)}},parse:function parse(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1;var args=lstack.slice.call(arguments,1);var lexer=Object.create(this.lexer);var sharedState={yy:{}};for(var k in this.yy){if(Object.prototype.hasOwnProperty.call(this.yy,k)){sharedState.yy[k]=this.yy[k]}}lexer.setInput(input,sharedState.yy);sharedState.yy.lexer=lexer;sharedState.yy.parser=this;if(typeof lexer.yylloc=="undefined"){lexer.yylloc={}}var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;if(typeof sharedState.yy.parseError==="function"){this.parseError=sharedState.yy.parseError}else{this.parseError=Object.getPrototypeOf(this).parseError}function popStack(n){stack.length=stack.length-2*n;vstack.length=vstack.length-n;lstack.length=lstack.length-n}_token_stack:function lex(){var token;token=lexer.lex()||EOF;if(typeof token!=="number"){token=self.symbols_[token]||token}return token}var symbol,preErrorSymbol,state,action,a,r,yyval={},p,len,newState,expected;while(true){state=stack[stack.length-1];if(this.defaultActions[state]){action=this.defaultActions[state]}else{if(symbol===null||typeof symbol=="undefined"){symbol=lex()}action=table[state]&&table[state][symbol]}if(typeof action==="undefined"||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state]){if(this.terminals_[p]&&p>TERROR){expected.push("'"+this.terminals_[p]+"'")}}if(lexer.showPosition){errStr="Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'"}else{errStr="Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'")}this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1){throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol)}switch(action[0]){case 1:stack.push(symbol);vstack.push(lexer.yytext);lstack.push(lexer.yylloc);stack.push(action[1]);symbol=null;if(!preErrorSymbol){yyleng=lexer.yyleng;yytext=lexer.yytext;yylineno=lexer.yylineno;yyloc=lexer.yylloc;if(recovering>0){recovering--}}else{symbol=preErrorSymbol;preErrorSymbol=null}break;case 2:len=this.productions_[action[1]][1];yyval.$=vstack[vstack.length-len];yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column};if(ranges){yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]}r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args));if(typeof r!=="undefined"){return r}if(len){stack=stack.slice(0,-1*len*2);vstack=vstack.slice(0,-1*len);lstack=lstack.slice(0,-1*len)}stack.push(this.productions_[action[1]][0]);vstack.push(yyval.$);lstack.push(yyval._$);newState=table[stack[stack.length-2]][stack[stack.length-1]];stack.push(newState);break;case 3:return true}}return true}};var lexer=function(){var lexer={EOF:1,parseError:function parseError(str,hash){if(this.yy.parser){this.yy.parser.parseError(str,hash)}else{throw new Error(str)}},setInput:function(input,yy){this.yy=yy||this.yy||{};this._input=input;this._more=this._backtrack=this.done=false;this.yylineno=this.yyleng=0;this.yytext=this.matched=this.match="";this.conditionStack=["INITIAL"];this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0};if(this.options.ranges){this.yylloc.range=[0,0]}this.offset=0;return this},input:function(){var ch=this._input[0];this.yytext+=ch;this.yyleng++;this.offset++;this.match+=ch;this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno++;this.yylloc.last_line++}else{this.yylloc.last_column++}if(this.options.ranges){this.yylloc.range[1]++}this._input=this._input.slice(1);return ch},unput:function(ch){var len=ch.length;var lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input;this.yytext=this.yytext.substr(0,this.yytext.length-len);this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1);this.matched=this.matched.substr(0,this.matched.length-1);if(lines.length-1){this.yylineno-=lines.length-1}var r=this.yylloc.range;this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len};if(this.options.ranges){this.yylloc.range=[r[0],r[0]+this.yyleng-len]}this.yyleng=this.yytext.length;return this},more:function(){this._more=true;return this},reject:function(){if(this.options.backtrack_lexer){this._backtrack=true}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;if(next.length<20){next+=this._input.substr(0,20-next.length)}return(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput();var c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer){backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done};if(this.options.ranges){backup.yylloc.range=this.yylloc.range.slice(0)}}lines=match[0].match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno+=lines.length}this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length};this.yytext+=match[0];this.match+=match[0];this.matches=match;this.yyleng=this.yytext.length;if(this.options.ranges){this.yylloc.range=[this.offset,this.offset+=this.yyleng]}this._more=false;this._backtrack=false;this._input=this._input.slice(match[0].length);this.matched+=match[0];token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]);if(this.done&&this._input){this.done=false}if(token){return token}else if(this._backtrack){for(var k in backup){this[k]=backup[k]}return false}return false},next:function(){if(this.done){return this.EOF}if(!this._input){this.done=true}var token,match,tempMatch,index;if(!this._more){this.yytext="";this.match=""}var rules=this._currentRules();for(var i=0;imatch[0].length)){match=tempMatch;index=i;if(this.options.backtrack_lexer){token=this.test_match(tempMatch,rules[i]);if(token!==false){return token}else if(this._backtrack){match=false;continue}else{return false}}else if(!this.options.flex){break}}}if(match){token=this.test_match(match,rules[index]);if(token!==false){return token}return false}if(this._input===""){return this.EOF}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}},lex:function lex(){var r=this.next();if(r){return r}else{return this.lex()}},begin:function begin(condition){this.conditionStack.push(condition)},popState:function popState(){var n=this.conditionStack.length-1;if(n>0){return this.conditionStack.pop()}else{return this.conditionStack[0]}},_currentRules:function _currentRules(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules}else{return this.conditions["INITIAL"].rules}},topState:function topState(n){n=this.conditionStack.length-1-Math.abs(n||0);if(n>=0){return this.conditionStack[n]}else{return"INITIAL"}},pushState:function pushState(condition){this.begin(condition)},stateStackSize:function stateStackSize(){return this.conditionStack.length},options:{"case-insensitive":true},performAction:function anonymous(yy,yy_,$avoiding_name_collisions,YY_START){var YYSTATE=YY_START;switch($avoiding_name_collisions){case 0:return 166;break;case 1:return 198;break;case 2:return 315;break;case 3:return 5;break;case 4:return 5;break;case 5:return 191;break;case 6:return 191;break;case 7:return 96;break;case 8:return 96;break;case 9:return;break;case 10:return;break;case 11:break;case 12:return 228;break;case 13:return 227;break;case 14:return"ABSOLUTE";break;case 15:return 285;break;case 16:return 298;break;case 17:return 186;break;case 18:return 79;break;case 19:return 295;break;case 20:return 227;break;case 21:return 119;break;case 22:return 237;break;case 23:return 103;break;case 24:return 187;break;case 25:return 63;break;case 26:return 313;break;case 27:return 142;break;case 28:return 300;break;case 29:return 259;break;case 30:return 259;break;case 31:return 183;break;case 32:return 332;break;case 33:return 232;break;case 34:return 336;break;case 35:return 233;break;case 36:return 208;break;case 37:return 126;break;case 38:return 199;break;case 39:return 168;break;case 40:return 260;break;case 41:return 275;break;case 42:return"CLOSE";break;case 43:return 143;break;case 44:return"COLUMN";break;case 45:return"COLUMNS";break;case 46:return"COMMIT";break;case 47:return"CONSTRAINT";break;case 48:return"CONTINUE";break;case 49:return"CONVERT";break;case 50:return"CORRESPONDING";break;case 51:return"COUNT";break;case 52:return 251;break;case 53:return"CROSS";break;case 54:return 133;break;case 55:return"CURRENT_TIMESTAMP";break;case 56:return"CURSOR";break;case 57:return 301;break;case 58:return 306;break;case 59:return 340;break;case 60:return 247;break;case 61:return 242;break;case 62:return"DELETED";break;case 63:return 142;break;case 64:return 302;break;case 65:return 75;break;case 66:return 293;break;case 67:return 202;break;case 68:return 258;break;case 69:return 289;break;case 70:return 206;break;case 71:return 136;break;case 72:return 194;break;case 73:return 13;break;case 74:return 190;break;case 75:return"FETCH";break;case 76:return 184;break;case 77:return 279;break;case 78:return 97;break;case 79:return 11;break;case 80:return 125;break;case 81:return 130;break;case 82:return 134;break;case 83:return 310;break;case 84:return 264;break;case 85:return 292;break;case 86:return 234;break;case 87:return 230;break;case 88:return 86;break;case 89:return 114;break;case 90:return 243;break;case 91:return"INSERTED";break;case 92:return 137;break;case 93:return 91;break;case 94:return 113;break;case 95:return 277;break;case 96:return 185;break;case 97:return 115;break;case 98:return 207;break;case 99:return 145;break;case 100:return 312;break;case 101:return"MATCHED";break;case 102:return 84;break;case 103:return"MAX";break;case 104:return"MERGE";break;case 105:return"MIN";break;case 106:return"EXCEPT";break;case 107:return"MODIFY";break;case 108:return 112;break;case 109:return"NEXT";break;case 110:return 167;break;case 111:return 144;break;case 112:return 284;break;case 113:return 229;break;case 114:return 192;break;case 115:return 328;break;case 116:return 120;break;case 117:return 147;break;case 118:return"OPEN";break;case 119:return 228;break;case 120:return 139;break;case 121:return 104;break;case 122:return 175;break;case 123:return 178;break;case 124:return 90;break;case 125:return 15;break;case 126:return 276;break;case 127:return 337;break;case 128:return"PRIOR";break;case 129:return 14;break;case 130:return 87;break;case 131:return"REDUCE";break;case 132:return 280;break;case 133:return"RELATIVE";break;case 134:return 296;break;case 135:return 338;break;case 136:return"RESTORE";break;case 137:return 116;break;case 138:return 331;break;case 139:return 132;break;case 140:return 82;break;case 141:return 301;break;case 142:return 306;break;case 143:return 80;break;case 144:return 118;break;case 145:return 239;break;case 146:return 131;break;case 147:return 305;break;case 148:return 236;break;case 149:return"STORE";break;case 150:return"SUM";break;case 151:return 252;break;case 152:return 307;break;case 153:return 355;break;case 154:return 150;break;case 155:return 85;break;case 156:return 151;break;case 157:return 205;break;case 158:return 297;break;case 159:return 88;break;case 160:return"TRAN";break;case 161:return 330;break;case 162:return 189;break;case 163:return 343;break;case 164:return 135;break;case 165:return 78;break;case 166:return 238;break;case 167:return 304;break;case 168:return 122;break;case 169:return 81;break;case 170:return 245;break;case 171:return 309;break;case 172:return 204;break;case 173:return 124;break;case 174:return 334;break;case 175:return 59;break;case 176:return 330;break;case 177:return 152;break;case 178:return 152;break;case 179:return 214;break;case 180:return 209;break;case 181:return 210;break;case 182:return 155;break;case 183:return 211;break;case 184:return 212;break;case 185:return 224;break;case 186:return 221;break;case 187:return 223;break;case 188:return 220;break;case 189:return 216;break;case 190:return 215;break;case 191:return 218;break;case 192:return 222;break;case 193:return 217;break;case 194:return 219;break;case 195:return 222;break;case 196:return 64;break;case 197:return 65;break;case 198:return 193;break;case 199:return 319;break;case 200:return 321;break;case 201:return 323;break;case 202:return 106;break;case 203:return 61;break;case 204:return 235;break;case 205:return 196;break;case 206:return 9;break;case 207:return 195;break;case 208:return 197;break;case 209:return 213;break;case 210:return 4;break;case 211:return 8;break;case 212:return"INVALID";break}},rules:[/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],inclusive:true}}};return lexer}();parser.lexer=lexer;function Parser(){this.yy={}}Parser.prototype=parser;parser.Parser=Parser;return new Parser}();if(typeof require!=="undefined"&&typeof exports!=="undefined"){exports.parser=parser;exports.Parser=parser.Parser;exports.parse=function(){return parser.parse.apply(parser,arguments)};exports.main=function commonjsMain(args){if(!args[1]){console.log("Usage: "+args[0]+" FILE");process.exit(1)}var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)};if(typeof module!=="undefined"&&require.main===module){exports.main(process.argv.slice(1))}}alasql.prettyflag=false;alasql.pretty=function(sql,flag){var pf=alasql.prettyflag;alasql.prettyflag=!flag;var s=alasql.parse(sql).toString();alasql.prettyflag=pf;return s};function K(s){if(alasql.prettyflag){return''+s.toUpperCase()+""}else{return s}}function P(s){if(alasql.prettyflag){return''+s+""}else{return s}}function L(s){if(alasql.prettyflag){return''+s+""}else{return s}}function N(s){if(alasql.prettyflag){return''+s+""}else{return s}}function S(s){if(alasql.prettyflag){return''+s+""}else{return s}}function NL(){if(alasql.prettyflag){return"
"}else{return" "}}function ID(){if(alasql.prettyflag){return"     "}else{return""}}var utils=alasql.utils={};function returnTrue(){return true}function returnUndefined(){}var escapeq=utils.escapeq=function(s){return s.replace(/\'/g,"\\'")};var escapeqq=utils.undoubleq=function(s){return s.replace(/(\')/g,"''")};var doubleq=utils.doubleq=function(s){return s.replace(/(\'\')/g,"\\'")};var doubleqq=utils.doubleqq=function(s){return s.replace(/\'/g,"'")};var cutbom=function(s){if(s[0]==String.fromCharCode(65279))s=s.substr(1);return s};var loadFile=utils.loadFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(!path){var buff="";process.stdin.setEncoding("utf8");process.stdin.on("readable",function(){var chunk=process.stdin.read();if(chunk!==null){buff+=chunk.toString()}});process.stdin.on("end",function(){success(cutbom(buff))})}else{if(asy){fs.readFile(path,function(err,data){if(err){throw err}success(cutbom(data.toString()))})}else{var data=fs.readFileSync(path);success(cutbom(data.toString()))}}}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.file(function(file){var fileReader=new FileReader;fileReader.onloadend=function(e){success(cutbom(this.result))};fileReader.readAsText(file)})})})}else{if(typeof path=="string"){if(path.substr(0,1)=="#"&&typeof document!="undefined"){var data=document.querySelector(path).textContent;success(data)}else{var xhr=new XMLHttpRequest;xhr.onreadystatechange=function(){if(xhr.readyState===XMLHttpRequest.DONE){if(xhr.status===200){if(success)success(cutbom(xhr.responseText))}else{if(error)error(xhr)}}};xhr.open("GET",path,asy);xhr.send()}}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(cutbom(data))};reader.readAsText(files[0])}}};var loadBinaryFile=utils.loadBinaryFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(asy){fs.readFile(path,function(err,data){if(err){throw err}var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))})}else{var data=fs.readFileSync(path);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))}}else{if(typeof path=="string"){var xhr=new XMLHttpRequest;xhr.open("GET",path,asy);xhr.responseType="arraybuffer";xhr.onload=function(){var data=new Uint8Array(xhr.response);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))};xhr.send()}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(data)};reader.readAsBinaryString(files[0])}}};var removeFile=utils.removeFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.remove(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.remove(cb);if(cb)cb()},function(){if(cb)cb()})})}else{throw new Error("You can remove files only in Node.js and Apache Cordova")}};var deleteFile=utils.deleteFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.unlink(path,cb)}};var fileExists=utils.fileExists=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.exists(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){cb(true)},function(){cb(false)})})}else{throw new Error("You can use exists() only in Node.js or Apach Cordova")}};var saveFile=utils.saveFile=function(path,data,cb){var res=1;if(typeof path=="undefined"){res=data;if(cb)res=cb(res)}else{if(typeof exports=="object"){var fs=require("fs");var data=fs.writeFileSync(path,data);if(cb)res=cb(res)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:true},function(fileEntry){fileEntry.createWriter(function(fileWriter){fileWriter.onwriteend=function(){if(cb)res=cb(res)};fileWriter.write(data)})})})}else{var blob=new Blob([data],{type:"text/plain;charset=utf-8"});saveAs(blob,path);if(cb)res=cb(res)}}return res};var hash=utils.hash=function hash(str){var h=0;if(str.length==0)return h;for(var i=0;i=26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr;if(i>26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr}}return addr};var xlscn=utils.xlscn=function(s){var n=s.charCodeAt(0)-65;if(s.length>1){n=(n+1)*26+s.charCodeAt(1)-65;if(s.length>2){n=(n+1)*26+s.charCodeAt(2)-65}}return n};var domEmptyChildren=utils.domEmptyChildren=function(container){var len=container.childNodes.length;while(len--){container.removeChild(container.lastChild)}};alasql.utils.uncomment=function uncomment(str){str=("__"+str+"__").split("");var quote=false,quoteSign,blockComment=false,lineComment=false;for(var i=0,l=str.length;ialasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement}var res=alasql.res=statement(params,cb,scope);return res}else{alasql.precompile(ast.statements[0],alasql.useid,params);var res=alasql.res=ast.statements[0].execute(databaseid,params,cb,scope);return res}}else{if(cb){alasql.adrun(databaseid,ast,params,cb,scope)}else{return alasql.drun(databaseid,ast,params,cb,scope)}}};alasql.drun=function(databaseid,ast,params,cb,scope){var useid=alasql.useid;if(useid!=databaseid)alasql.use(databaseid);var res=[];for(var i=0,ilen=ast.statements.length;i=0){var source=query.sources[idx];source.data=data;if(typeof source.data=="function"){source.getfn=source.data;source.dontcache=source.getfn.dontcache;if(source.joinmode=="OUTER"||source.joinmode=="RIGHT"||source.joinmode=="ANTI"){source.dontcache=false}source.data={}}}else{query.queriesdata[-idx-1]=flatArray(data)}query.sourceslen--;if(query.sourceslen>0)return;return queryfn3(query)}function queryfn3(query){var scope=query.scope;preIndex(query);query.data=[];query.xgroups={};query.groups=[];var h=0;doJoin(query,scope,h);if(query.groupfn){query.data=[];if(query.groups.length==0){var g={};if(query.selectGroup.length>0){query.selectGroup.forEach(function(sg){if(sg.aggregatorid=="COUNT"||sg.aggregatorid=="SUM"){g[sg.nick]=0}else{g[sg.nick]=undefined}})}query.groups=[g]}for(var i=0,ilen=query.groups.length;i0){for(var i=0,ilen=query.data.length;i0&&source.optimization=="ix"&&source.onleftfn&&source.onrightfn){if(source.databaseid&&alasql.databases[source.databaseid].tables[source.tableid]){if(!alasql.databases[source.databaseid].tables[source.tableid].indices)query.database.tables[source.tableid].indices={};var ixx=alasql.databases[source.databaseid].tables[source.tableid].indices[hash(source.onrightfns+"`"+source.srcwherefns)];if(!alasql.databases[source.databaseid].tables[source.tableid].dirty&&ixx){source.ix=ixx}}if(!source.ix){source.ix={};var scope={};var i=0;var ilen=source.data.length;var dataw;while((dataw=source.data[i])||source.getfn&&(dataw=source.getfn(i))||i=query.sources.length){if(query.wherefn(scope,query.params,alasql)){if(query.groupfn){query.groupfn(scope,query.params,query.alasql)}else{query.data.push(query.selectfn(scope,query.params,alasql))}}}else if(query.sources[h].applyselect){var source=query.sources[h];source.applyselect(query.params,function(data){if(data.length>0){for(var i=0;i0){s+=NL()+ID()+K("GROUP BY")+" "+this.group.map(function(grp){return grp.toString()}).join(", ")}if(this.having)s+=NL()+ID()+K("HAVING")+" "+this.having.toString();if(this.order&&this.order.length>0){s+=NL()+ID()+K("ORDER BY")+" "+this.order.map(function(ord){return ord.toString()}).join(", ")}if(this.limit)s+=NL()+ID()+K("LIMIT")+" "+this.limit.value;if(this.offset)s+=NL()+ID()+K("OFFSET")+" "+this.offset.value;if(this.union)s+=NL()+K("UNION")+NL()+this.union.toString();if(this.unionall)s+=NL()+K("UNION ALL")+NL()+this.unionall.toString();if(this.except)s+=NL()+K("EXCEPT")+NL()+this.except.toString();if(this.intersect)s+=NL()+K("INTERSECT")+NL()+this.intersect.toString();return s};yy.Select.prototype.toJavaScript=function(context,tableid,defcols){var s="alasql.utils.flatArray(this.queriesfn["+(this.queriesidx-1)+"](this.params,null,"+context+"))[0]";return s};yy.Select.prototype.compile=function(databaseid){var db=alasql.databases[databaseid];var query=new Query;query.removeKeys=[];query.explain=this.explain;query.explaination=[];query.explid=1;query.modifier=this.modifier;query.database=db;this.compileWhereExists(query);this.compileQueries(query);query.defcols=this.compileDefCols(query,databaseid);query.fromfn=this.compileFrom(query);if(this.joins)this.compileJoins(query);this.compileSelectGroup0(query);if(this.group||query.selectGroup.length>0){query.selectgfns=this.compileSelectGroup1(query)}else{query.selectfns=this.compileSelect1(query)}if(this.where)this.compileWhereJoins(query);query.wherefn=this.compileWhere(query);if(this.group||query.selectGroup.length>0)query.groupfn=this.compileGroup(query);if(this.having)query.havingfn=this.compileHaving(query);if(this.group||query.selectGroup.length>0){query.selectgfn=this.compileSelectGroup2(query)}else{query.selectfn=this.compileSelect2(query)}query.distinct=this.distinct;if(this.order)query.orderfn=this.compileOrder(query);if(this.top){query.limit=this.top.value}else if(this.limit){query.limit=this.limit.value;if(this.offset){query.offset=this.offset.value}}query.percent=this.percent;if(this.union){query.unionfn=this.union.compile(databaseid);if(this.union.order){query.orderfn=this.union.compileOrder(query)}else{query.orderfn=null}}else if(this.unionall){query.unionallfn=this.unionall.compile(databaseid);if(this.unionall.order){query.orderfn=this.unionall.compileOrder(query)}else{query.orderfn=null}}else if(this.except){query.exceptfn=this.except.compile(databaseid);if(this.except.order){query.orderfn=this.except.compileOrder(query)}else{query.orderfn=null}}else if(this.intersect){query.intersectfn=this.intersect.compile(databaseid);if(this.intersect.order){query.intersectfn=this.intersect.compileOrder(query)}else{query.orderfn=null}}if(this.into){if(this.into instanceof yy.Table){if(alasql.options.autocommit&&alasql.databases[this.into.databaseid||databaseid].engineid){query.intoallfns='return alasql.engines["'+alasql.databases[this.into.databaseid||databaseid].engineid+'"]'+'.intoTable("'+(this.into.databaseid||databaseid)+'","'+this.into.tableid+'",this.data, columns, cb);'}else{query.intofns="alasql.databases['"+(this.into.databaseid||databaseid)+"'].tables"+"['"+this.into.tableid+"'].data.push(r);"}}else if(this.into instanceof yy.VarValue){query.intoallfns='alasql.vars["'+this.into.variable+'"]=this.data;res=this.data.length;if(cb)res=cb(res);return res;'}else if(this.into instanceof yy.FuncValue){var qs="return alasql.into['"+this.into.funcid.toUpperCase()+"'](";if(this.into.args&&this.into.args.length>0){qs+=this.into.args[0].toJavaScript()+",";if(this.into.args.length>1){qs+=this.into.args[1].toJavaScript()+","}else{qs+="undefined,"}}else{qs+="undefined, undefined,"}query.intoallfns=qs+"this.data,columns,cb)"}else if(this.into instanceof yy.ParamValue){query.intofns="params['"+this.into.param+"'].push(r)"}if(query.intofns){query.intofn=new Function("r,i,params,alasql",query.intofns)}else if(query.intoallfns){query.intoallfn=new Function("columns,cb,params,alasql",query.intoallfns)}}var statement=function(params,cb,oldscope){query.params=params;var res1=queryfn(query,oldscope,function(res){var res2=modify(query,res);if(cb)cb(res2);return res2});return res1};statement.query=query;return statement};function modify(query,res){if(query.modifier=="VALUE"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];res=res[0][key]}else{res=undefined}}if(query.modifier=="ROW"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var a=[];for(var key in res[0]){a.push(res[0][key])}res=a}else{res=undefined}}if(query.modifier=="COLUMN"){var ar=[];if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];for(var i=0,ilen=res.length;i0){key=query.columns[0].columnid;val=query.columns[1].columnid}else{var okeys=Object.keys(res[0]);key=okeys[0];val=okeys[1]}for(var i=0,ilen=res.length;i0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var s="";for(var i=0,ilen=res.length;i0){if(tq.args[0]){s+=tq.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(tq.args[1]){s+=tq.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s)}else if(tq instanceof yy.FromData){source.datafn=function(query,params,cb,idx,alasql){var res=tq.data;if(cb)res=cb(res,idx,query);return res}}else{throw new Error("Wrong table at FROM")}query.sources.push(source)});query.defaultTableid=query.sources[0].alias};alasql.prepareFromData=function(data,array){var res=data;if(typeof data=="string"){res=data.split(/\r?\n/);if(array){for(var i=0,ilen=res.length;i0){if(jn.args[0]){s+=jn.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(jn.args[1]){s+=jn.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s);query.aliases[source.alias]={type:"funcvalue"}}var alias=source.alias;if(jn.natural){if(jn.using||jn.on){throw new Error("NATURAL JOIN cannot have USING or ON clauses")}else{if(query.sources.length>0){var prevSource=query.sources[query.sources.length-1];var prevTable=alasql.databases[prevSource.databaseid].tables[prevSource.tableid];var table=alasql.databases[source.databaseid].tables[source.tableid];if(prevTable&&table){var c1=prevTable.columns.map(function(col){return col.columnid});var c2=table.columns.map(function(col){return col.columnid});jn.using=arrayIntersect(c1,c2).map(function(colid){return{columnid:colid}})}else{throw new Error("In this version of Alasql NATURAL JOIN "+"works for tables with predefined columns only")}}}}if(jn.using){var prevSource=query.sources[query.sources.length-1];source.onleftfns=jn.using.map(function(col){return"p['"+(prevSource.alias||prevSource.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfns=jn.using.map(function(col){return"p['"+(source.alias||source.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.optimization="ix"}else if(jn.on){if(jn.on instanceof yy.Op&&jn.on.op=="="&&!jn.on.allsome){source.optimization="ix";var lefts="";var rights="";var middles="";var middlef=false;var ls=jn.on.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=jn.on.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+alias+"']")>-1&&!(rs.indexOf("p['"+alias+"']")>-1)){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=ls}else{middlef=true}}else if(!(ls.indexOf("p['"+alias+"']")>-1)&&rs.indexOf("p['"+alias+"']")>-1){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=ls}else{middlef=true}}else{middlef=true}if(rs.indexOf("p['"+alias+"']")>-1&&!(ls.indexOf("p['"+alias+"']")>-1)){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=rs}else{middlef=true}}else if(!(rs.indexOf("p['"+alias+"']")>-1)&&ls.indexOf("p['"+alias+"']")>-1){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=rs}else{middlef=true}}else{middlef=true}if(middlef){rights="";lefts="";middles=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.optimization="no"}source.onleftfns=lefts;source.onrightfns=rights;source.onmiddlefns=middles||"true";source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.onmiddlefn=new Function("p,params,alasql","return "+source.onmiddlefns)}else{source.optimization="no";source.onmiddlefns=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.onmiddlefn=new Function("p,params,alasql","return "+jn.on.toJavaScript("p",query.defaultTableid,query.defcols))}}query.sources.push(source)}})};yy.Select.prototype.compileWhere=function(query){if(this.where){if(typeof this.where=="function"){return this.where}else{s=this.where.toJavaScript("p",query.defaultTableid,query.defcols);query.wherefns=s;return new Function("p,params,alasql","return "+s)}}else return function(){return true}};yy.Select.prototype.compileWhereJoins=function(query){return;optimizeWhereJoin(query,this.where.expression);query.sources.forEach(function(source){if(source.srcwherefns){source.srcwherefn=new Function("p,params,alasql","return "+source.srcwherefns)}if(source.wxleftfns){source.wxleftfn=new Function("p,params,alasql","return "+source.wxleftfns)}if(source.wxrightfns){source.wxrightfn=new Function("p,params,alasql","return "+source.wxrightfns)}})};function optimizeWhereJoin(query,ast){if(!ast)return false;if(!(ast instanceof yy.Op))return;if(ast.op!="="&&ast.op!="AND")return;if(ast.allsome)return;var s=ast.toJavaScript("p",query.defaultTableid,query.defcols);var fsrc=[];query.sources.forEach(function(source,idx){if(source.tableid){if(s.indexOf("p['"+source.alias+"']")>-1)fsrc.push(source)}});if(fsrc.length==0){return}else if(fsrc.length==1){if(!(s.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+fsrc[0].alias+"']"})){return}var src=fsrc[0];src.srcwherefns=src.srcwherefns?src.srcwherefns+"&&"+s:s;if(ast instanceof yy.Op&&(ast.op=="="&&!ast.allsome)){if(ast.left instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(rs.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=ls;fsrc[0].wxrightfns=rs}}if(ast.right instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=rs;fsrc[0].wxrightfns=ls}}}ast.reduced=true;return}else{if(ast.op="AND"){optimizeWhereJoin(query,ast.left); -optimizeWhereJoin(query,ast.right)}}}yy.Select.prototype.compileGroup=function(query){var self=this;var tableid=query.sources[0].alias;var defcols=query.defcols;var allgroup=[[]];if(this.group){allgroup=decartes(this.group,query)}var allgroups=[];allgroup.forEach(function(a){allgroups=arrayUnion(allgroups,a)});query.allgroups=allgroups;if(false){allgroups.forEach(function(col2){if(query.selectColumns[colid]){}else{var tmpid="default";if(query.sources.length>0)tmpid=query.sources[0].alias;if(Object.keys(query.selectColumns).length!=0)query.removeKeys.push(colid);query.selectfns+="r['"+escapeq(colid)+"']="+new yy.Column({columnid:colid}).toJavaScript("p",tmpid)+";"}})}var s="";allgroup.forEach(function(agroup){s+="var g=this.xgroups[";var rg=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"1";else return coljs});if(rg.length==0)rg=["''"];s+=rg.join('+"`"+');s+="];if(!g) {this.groups.push((g=this.xgroups[";s+=rg.join('+"`"+');s+="] = {";s+=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"";else return"'"+columnid+"':"+coljs+","}).join("");var neggroup=arrayDiff(allgroups,agroup);s+=neggroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];return"'"+columnid+"':null,"}).join("");var aft="";s+=query.selectGroup.map(function(col,idx){var colexp=col.expression.toJavaScript("p",tableid,defcols);var colas=col.nick;if(col instanceof yy.AggrValue){if(col.distinct){aft+=",g['$$_VALUES_"+colas+"']={},g['$$_VALUES_"+colas+"']["+colexp+"]=true"}if(col.aggregatorid=="SUM"||col.aggregatorid=="MIN"||col.aggregatorid=="MAX"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"){return"'"+colas+"':"+colexp+","}else if(col.aggregatorid=="ARRAY"){return"'"+colas+"':["+colexp+"],"}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*"){return"'"+colas+"':1,"}else{return"'"+colas+"':(typeof "+colexp+' != "undefined")?1:0,'}}else if(col.aggregatorid=="AVG"){query.removeKeys.push("_SUM_"+colas);query.removeKeys.push("_COUNT_"+colas);return"'"+colas+"':"+colexp+",'_SUM_"+colas+"':"+colexp+",'_COUNT_"+colas+"':1,"}else if(col.aggregatorid=="AGGR"){aft+=",g['"+colas+"']="+col.expression.toJavaScript("g",-1);return""}else if(col.aggregatorid=="REDUCE"){return"'"+colas+"':alasql.aggr['"+col.funcid+"']("+colexp+"),"}return""}else return""}).join("");s+="}"+aft+",g));} else {";s+=query.selectGroup.map(function(col,idx){var colas=col.nick;var colexp=col.expression.toJavaScript("p",tableid,defcols);if(col instanceof yy.AggrValue){if(col.distinct){var pre="if(typeof "+colexp+'!="undefined" && (!g[\'$$_VALUES_'+colas+"']["+colexp+"])) {";var post="g['$$_VALUES_"+colas+"']["+colexp+"]=true;}"}else{var pre="",post=""}if(col.aggregatorid=="SUM"){return pre+"g['"+colas+"']+="+colexp+";"+post}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*")return pre+"g['"+colas+"']++;"+post;else{return pre+"if(typeof "+colexp+'!="undefined") g[\''+colas+"']++;"+post}}else if(col.aggregatorid=="ARRAY"){return pre+"g['"+colas+"'].push("+colexp+");"+post}else if(col.aggregatorid=="MIN"){return pre+"g['"+colas+"']=Math.min(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="MAX"){return pre+"g['"+colas+"']=Math.max(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="FIRST"){return""}else if(col.aggregatorid=="LAST"){return pre+"g['"+colas+"']="+colexp+";"+post}else if(col.aggregatorid=="AVG"){return pre+"g['_SUM_"+colas+"']+="+colexp+";"+"g['_COUNT_"+colas+"']++;"+"g['"+colas+"']=g['_SUM_"+colas+"']/g['_COUNT_"+colas+"'];"+post}else if(col.aggregatorid=="AGGR"){return pre+"g['"+colas+"']="+col.expression.toJavaScript("g",-1)+";"+post}else if(col.aggregatorid=="REDUCE"){return pre+"g['"+colas+"']=alasql.aggr."+col.funcid+"("+colexp+",g['"+colas+"']);"+post}return""}else return""}).join("");s+="}"});return new Function("p,params,alasql",s)};function compileSelectStar(query,alias){var s="",sp="",ss=[];if(query.aliases[alias].tableid){var columns=alasql.databases[query.aliases[alias].databaseid].tables[query.aliases[alias].tableid].columns}if(columns&&columns.length>0){columns.forEach(function(tcol){ss.push("'"+tcol.columnid+"':p['"+alias+"']['"+tcol.columnid+"']");query.selectColumns[escapeq(tcol.columnid)]=true;var coldef={columnid:tcol.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbprecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef})}else{sp+='var w=p["'+alias+'"];for(var k in w){r[k]=w[k]};';query.dirtyColumns=true}return{s:ss.join(","),sp:sp}}yy.Select.prototype.compileSelect1=function(query){var self=this;query.columns=[];query.xcolumns={};query.selectColumns={};query.dirtyColumns=false;var s="var r={";var sp="";var ss=[];this.columns.forEach(function(col){if(col instanceof yy.Column){if(col.columnid=="*"){if(col.func){sp+="r=params['"+col.param+"'](p['"+query.sources[0].alias+"'],p,params,alasql);"}else if(col.tableid){var ret=compileSelectStar(query,col.tableid);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}else{for(var alias in query.aliases){var ret=compileSelectStar(query,alias);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}}}else{var tbid=col.tableid;var dbid=col.databaseid||query.sources[0].databaseid||query.database.databaseid;if(!tbid)tbid=query.defcols[col.columnid];if(!tbid)tbid=query.defaultTableid;if(col.columnid!="_"){ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']['"+col.columnid+"']")}else{ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']")}query.selectColumns[escapeq(col.as||col.columnid)]=true;if(query.aliases[tbid]&&query.aliases[tbid].type=="table"){if(!alasql.databases[dbid].tables[query.aliases[tbid].tableid]){throw new Error("Table '"+tbid+"' does not exists in database")}var columns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].columns;var xcolumns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].xcolumns;if(xcolumns&&columns.length>0){var tcol=xcolumns[col.columnid];var coldef={columnid:col.as||col.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbpecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}else{query.dirtyColumns=true}}else{}}}else if(col instanceof yy.AggrValue){if(!self.group){self.group=[""]}if(!col.as)col.as=escapeq(col.toString());if(col.aggregatorid=="SUM"||col.aggregatorid=="MAX"||col.aggregatorid=="MIN"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"||col.aggregatorid=="AVG"||col.aggregatorid=="ARRAY"||col.aggregatorid=="REDUCE"){ss.push("'"+escapeq(col.as)+"':"+col.expression.toJavaScript("p",query.defaultTableid,query.defcols))}else if(col.aggregatorid=="COUNT"){ss.push("'"+escapeq(col.as)+"':1")}query.selectColumns[col.aggregatorid+"("+escapeq(col.expression.toString())+")"]=thtd}else{ss.push("'"+escapeq(col.as||col.columnid||col.toString())+"':"+col.toJavaScript("p",query.defaultTableid,query.defcols));query.selectColumns[escapeq(col.as||col.columnid||col.toString())]=true}});s+=ss.join(",")+"};"+sp;return s};yy.Select.prototype.compileSelect2=function(query){var s=query.selectfns;return new Function("p,params,alasql",s+"return r")};yy.Select.prototype.compileSelectGroup0=function(query){var self=this;self.columns.forEach(function(col,idx){if(col instanceof yy.Column&&col.columnid=="*"){}else{var colas;if(col instanceof yy.Column){colas=escapeq(col.columnid)}else{colas=escapeq(col.toString())}for(var i=0;irb)return 1;if(ra==rb)return 0;return-1}}var s="";var sk="";this.order.forEach(function(ord,idx){var dg="";if(ord.expression instanceof yy.NumValue){ord.expression=self.columns[ord.expression.value-1]}if(ord.expression instanceof yy.Column){var columnid=ord.expression.columnid;if(query.xcolumns[columnid]){var dbtypeid=query.xcolumns[columnid].dbtypeid;if(dbtypeid=="DATE"||dbtypeid=="DATETIME")dg=".valueOf()"}else{if(alasql.options.valueof)dg=".valueOf()"}if(ord.nocase)dg+=".toUpperCase()";s+="if(a['"+columnid+"']"+dg+(ord.direction=="ASC"?">":"<")+"b['"+columnid+"']"+dg+")return 1;";s+="if(a['"+columnid+"']"+dg+"==b['"+columnid+"']"+dg+"){"}else{dg=".valueOf()";if(ord.nocase)dg+=".toUpperCase()";s+="if("+ord.toJavaScript("a","")+dg+(ord.direction=="ASC"?">":"<")+ord.toJavaScript("b","")+dg+")return 1;";s+="if("+ord.toJavaScript("a","")+dg+"=="+ord.toJavaScript("b","")+dg+"){"}sk+="}"});s+="return 0;";s+=sk+"return -1";query.orderfns=s;return new Function("a,b",s)}};var rollup=function(a,query){var rr=[];var mask=0;var glen=a.length;for(var g=0;g"){var s=this.left.toString()+"->";if(typeof this.right!="string"&&typeof this.right!="number")s+="(";s+=this.right.toString();if(typeof this.right!="string"&&typeof this.right!="number")s+=")";return s}return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+" ":"")+this.right.toString()};yy.Op.prototype.findAggregator=function(query){if(this.left&&this.left.findAggregator)this.left.findAggregator(query);if(this.right&&this.right.findAggregator&&!this.allsome){this.right.findAggregator(query)}};yy.Op.prototype.toType=function(tableid){if(["-","*","/","%","^"].indexOf(this.op)>-1)return"number";if(this.op=="+"){if(this.left.toType(tableid)=="string"||this.right.toType(tableid)=="string")return"string";if(this.left.toType(tableid)=="number"||this.right.toType(tableid)=="number")return"number"}if(["AND","OR","NOT","=","==","===","!=","!==","!===",">",">=","<","<=","IN","NOT IN","LIKE","NOT LIKE"].indexOf(this.op)>-1)return"boolean";if(this.op=="BETWEEN"||this.op=="NOT BETWEEN"||this.op=="IS NULL"||this.op=="IS NOT NULL")return"boolean";if(this.allsome)return"boolean";if(!this.op)return this.left.toType();return"unknown"};yy.Op.prototype.toJavaScript=function(context,tableid,defcols){var op=this.op;if(this.op=="=")op="===";else if(this.op=="<>")op="!=";else if(this.op=="OR")op="||";if(this.op=="->"){if(typeof this.right=="string"){return this.left.toJavaScript(context,tableid,defcols)+'["'+this.right+'"]'}else if(typeof this.right=="number"){return this.left.toJavaScript(context,tableid,defcols)+"["+this.right+"]"}else if(this.right instanceof yy.FuncValue){ss=[];if(!this.right.args||this.right.args.length==0){}else{var ss=this.right.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)})}return this.left.toJavaScript(context,tableid,defcols)+"['"+this.right.funcid+"']("+ss.join(",")+")"}else{return this.left.toJavaScript(context,tableid,defcols)+"["+this.right.toJavaScript(context,tableid,defcols)+"]"}}if(this.op=="IS"){return"((typeof "+this.left.toJavaScript(context,tableid,defcols)+"=='undefined') == "+"(typeof "+this.right.toJavaScript(context,tableid,defcols)+"=='undefined'))"}if(this.op=="=="){return"alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}if(this.op=="==="){return"(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!==="){return"!(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!=="){return"(!alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+"))"}if(this.op=="LIKE"){var s="("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g'))";return s}if(this.op=="NOT LIKE"){var s="!(("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g')))";return s}if(this.op=="BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong BETWEEN operator without AND part")}}if(this.op=="NOT BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"!(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong NOT BETWEEN operator without AND part")}}if(this.op=="IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else{var s="("+this.right.toJavaScript(context,tableid,defcols)+".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}}if(this.op=="NOT IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="ALL"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="SOME"||this.allsome=="ANY"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.op=="AND"){if(this.left.reduced){if(this.right.reduced){return"true"}else{return this.right.toJavaScript(context,tableid,defcols)}}else if(this.right.reduced){return this.left.toJavaScript(context,tableid,defcols)}op="&&"}if(this.op=="^"){return"Math.pow("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}return"("+this.left.toJavaScript(context,tableid,defcols)+op+this.right.toJavaScript(context,tableid,defcols)+")"};yy.VarValue=function(params){return yy.extend(this,params)};yy.VarValue.prototype.toString=function(){return"@"+L(this.variable)};yy.VarValue.prototype.toType=function(){return"unknown"};yy.VarValue.prototype.toJavaScript=function(){return"alasql.vars['"+this.variable+"']"};yy.NumValue=function(params){return yy.extend(this,params)};yy.NumValue.prototype.toString=function(){return N(this.value.toString())};yy.NumValue.prototype.toType=function(){return"number"};yy.NumValue.prototype.toJavaScript=function(){return""+this.value};yy.StringValue=function(params){return yy.extend(this,params)};yy.StringValue.prototype.toString=function(){return"'"+S(this.value.toString())+"'"};yy.StringValue.prototype.toType=function(){return"string"};yy.StringValue.prototype.toJavaScript=function(){return"'"+escapeq(this.value)+"'"};yy.LogicValue=function(params){return yy.extend(this,params)};yy.LogicValue.prototype.toString=function(){return this.value?"TRUE":"FALSE"};yy.LogicValue.prototype.toType=function(){return"boolean"};yy.LogicValue.prototype.toJavaScript=function(){return this.value?"true":"false"};yy.NullValue=function(params){return yy.extend(this,params)};yy.NullValue.prototype.toString=function(){return"NULL"};yy.NullValue.prototype.toJavaScript=function(){return"undefined"};yy.ParamValue=function(params){return yy.extend(this,params)};yy.ParamValue.prototype.toString=function(){return"$"+this.param};yy.ParamValue.prototype.toJavaScript=function(){if(typeof this.param=="string")return"params['"+this.param+"']";else return"params["+this.param+"]"};yy.UniOp=function(params){return yy.extend(this,params)};yy.UniOp.prototype.toString=function(){if(this.op=="-")return this.op+this.right.toString();if(this.op=="+")return this.op+this.right.toString();if(this.op=="NOT")return this.op+"("+this.right.toString()+")";else if(this.op==null)return"("+this.right.toString()+")"};yy.UniOp.prototype.findAggregator=function(query){if(this.right.findAggregator)this.right.findAggregator(query)};yy.UniOp.prototype.toType=function(tableid){if(this.op=="-")return"number";if(this.op=="+")return"number";if(this.op=="NOT")return"boolean"};yy.UniOp.prototype.toJavaScript=function(context,tableid,defcols){if(this.op=="-")return"(-("+this.right.toJavaScript(context,tableid,defcols)+"))";if(this.op=="+")return"("+this.right.toJavaScript(context,tableid,defcols)+")";if(this.op=="NOT")return"!("+this.right.toJavaScript(context,tableid,defcols)+")";else if(this.op==null)return"("+this.right.toJavaScript(context,tableid,defcols)+")"};yy.Column=function(params){return yy.extend(this,params)};yy.Column.prototype.toString=function(){var s;if(this.columnid==+this.columnid){s="["+this.columnid+"]"}else{s=this.columnid}if(this.tableid){if(+this.columnid==this.columnid){s=this.tableid+s}else{s=this.tableid+"."+s}if(this.databaseid){s=this.databaseid+"."+s}}return s};yy.Column.prototype.toJavaScript=function(context,tableid,defcols){var s="";if(!this.tableid&&tableid==""&&!defcols){if(this.columnid!="_"){s=context+"['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context}}}else{if(context=="g"){s="g['"+this.nick+"']"}else if(this.tableid){if(this.columnid!="_"){s=context+"['"+this.tableid+"']['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context+"['"+this.tableid+"']"}}}else if(defcols){var tbid=defcols[this.columnid];if(tbid=="-"){throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables')}else if(tbid){if(this.columnid!="_"){s=context+"['"+tbid+"']['"+this.columnid+"']"}else{s=context+"['"+tbid+"']"}}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}else if(tableid==-1){s=context+"['"+this.columnid+"']"}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}return s};yy.AggrValue=function(params){return yy.extend(this,params)};yy.AggrValue.prototype.toString=function(){var s="";if(this.aggregatorid=="REDUCE")s+=L(this.funcid)+"(";else s+=this.aggregatorid+"(";if(this.distinct)s+=K("DISTINCT")+" ";if(this.expression)s+=this.expression.toString();s+=")";if(this.over)s+=" "+this.over.toString();return s};yy.AggrValue.prototype.findAggregator=function(query){var colas=escapeq(this.toString())+":"+query.selectGroup.length;var found=false;if(!found){if(!this.nick){this.nick=colas;var found=false;for(var i=0;i-1)return"number";if(["ARRAY"].indexOf(this.aggregatorid)>-1)return"array";if(["FIRST","LAST"].indexOf(this.aggregatorid)>-1)return this.expression.toType()};yy.AggrValue.prototype.toJavaScript=function(context,tableid,defcols){var colas=this.nick;if(typeof colas=="undefined")colas=this.toString();return"g['"+colas+"']"};yy.OrderExpression=function(params){return yy.extend(this,params)};yy.OrderExpression.prototype.toString=function(){var s=this.expression.toString();if(this.order)s+=" "+this.order.toString();if(this.nocase)s+=" "+K("COLLATE")+" "+K("NOCASE");return s};yy.GroupExpression=function(params){return yy.extend(this,params)};yy.GroupExpression.prototype.toString=function(){return this.type+"("+this.group.toString()+")"};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.FromData=function(params){return yy.extend(this,params)};yy.FromData.prototype.toString=function(){if(this.data)return K("DATA")+"("+(Math.random()*1e16|0)+")";else return"?"};yy.FromData.prototype.toJavaScript=function(){};yy.Select.prototype.exec=function(params,cb){if(this.preparams)params=this.preparams.concat(params);var databaseid=alasql.useid;db=alasql.databases[databaseid];var sql=this.toString();var hh=hash(sql);var statement=this.compile(databaseid);if(!statement)return;statement.sql=sql;statement.dbversion=db.dbversion;if(db.sqlCacheSize>alasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement;var res=alasql.res=statement(params,cb);return res};yy.Select.prototype.Select=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.columns=[];args.forEach(function(arg){if(typeof arg=="string"){self.columns.push(new yy.Column({columnid:arg}))}else if(typeof arg=="function"){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(arg);self.columns.push(new yy.Column({columnid:"*",func:arg,param:pari}))}else{}});return self};yy.Select.prototype.From=function(tableid){var self=this;if(!self.from)self.from=[];if(tableid instanceof Array){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(tableid);self.from.push(new yy.ParamValue({param:pari}))}else if(typeof tableid=="string"){self.from.push(new yy.Table({tableid:tableid}))}else{throw new Error("Unknown arguments in From() function")}return self};yy.Select.prototype.OrderBy=function(){var self=this;var agrs=[];self.order=[];if(arguments.length==0){args=["_"]}else if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}if(args.length>0){args.forEach(function(arg){var expr=new yy.Column({columnid:arg});if(typeof arg=="function"){expr=arg}self.order.push(new yy.OrderExpression({expression:expr,direction:"ASC"}))})}return self};yy.Select.prototype.Top=function(topnum){var self=this; -self.top=new yy.NumValue({value:topnum});return self};yy.Select.prototype.GroupBy=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.group=[];args.forEach(function(arg){var expr=new yy.Column({columnid:arg});self.group.push(expr)});return self};yy.Select.prototype.Where=function(expr){var self=this;if(typeof expr=="function"){self.where=expr}return self};yy.FuncValue=function(params){return yy.extend(this,params)};yy.FuncValue.prototype.toString=function(){var s="";if(alasql.fn[this.funcid])s+=this.funcid;else if(alasql.aggr[this.funcid])s+=this.funcid;else if(alasql.stdlib[this.funcid.toUpperCase()]||alasql.stdfn[this.funcid.toUpperCase()])s+=this.funcid.toUpperCase();s+="(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toString()}).join(",")}s+=")";if(this.as)s+=" AS "+this.as.toString();return s};yy.FuncValue.prototype.findAggregator=function(query){if(this.args&&this.args.length>0){this.args.forEach(function(arg){if(arg.findAggregator)arg.findAggregator(query)})}};yy.FuncValue.prototype.toJavaScript=function(context,tableid,defcols){var s="";var funcid=this.funcid;if(alasql.fn[funcid]){if(this.newid)s+="new ";s+="alasql.fn."+this.funcid+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else if(alasql.stdlib[funcid.toUpperCase()]){if(this.args&&this.args.length>0){s+=alasql.stdlib[funcid.toUpperCase()].apply(this,this.args.map(function(arg){return arg.toJavaScript(context,tableid)}))}else{s+=alasql.stdlib[funcid.toUpperCase()]()}}else if(alasql.stdfn[funcid.toUpperCase()]){if(this.newid)s+="new ";s+="alasql.stdfn."+this.funcid.toUpperCase()+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else{}return s};var stdlib=alasql.stdlib={};var stdfn=alasql.stdfn={};stdlib.ABS=function(a){return"Math.abs("+a+")"};stdlib.CLONEDEEP=function(a){return"alasql.utils.cloneDeep("+a+")"};stdlib.IIF=function(a,b,c){if(arguments.length==3){return"(("+a+")?("+b+"):("+c+"))"}else{throw new Error("Number of arguments of IFF is not equals to 3")}};stdlib.IFNULL=function(a,b){return"("+a+"||"+b+")"};stdlib.INSTR=function(s,p){return"(("+s+").indexOf("+p+")+1)"};stdlib.LEN=stdlib.LENGTH=function(s){return"("+s+'+"").length'};stdlib.LOWER=stdlib.LCASE=function(s){return"("+s+").toLowerCase()"};stdlib.GREATEST=function(){return"Math.max("+Array.prototype.join.call(arguments,",")+")"};stdlib.LEAST=function(){return"Math.min("+Array.prototype.join.call(arguments,",")+")"};stdlib.MID=function(a,b,c){if(arguments.length==2)return"("+a+").substr("+b+"-1)";else if(arguments.length==3)return"("+a+").substr("+b+"-1,"+c+")"};stdlib.NULLIF=function(a,b){return"("+a+"=="+b+"?null:"+a+")"};stdlib.POWER=function(a,b){return"Math.pow("+a+","+b+")"};stdlib.RANDOM=function(r){if(arguments.length==0){return"Math.random()"}else{return"(Math.random()*("+r+")|0)"}};stdlib.ROUND=function(s,d){if(arguments.length==2){return"Math.round("+s+"*Math.pow(10,"+d+"))/Math.pow(10,"+d+")"}else{return"Math.round("+s+")"}};stdlib.SQRT=function(s){return"Math.sqrt("+s+")"};stdlib.TRIM=function(s){return s+".trim()"};stdlib.UPPER=stdlib.UCASE=function(s){return"("+s+").toUpperCase()"};alasql.aggr.GROUP_CONCAT=function(v,s){if(typeof s=="undefined")return v;else return s+","+v};yy.CaseValue=function(params){return yy.extend(this,params)};yy.CaseValue.prototype.toString=function(){var s="CASE ";if(this.expression)s+=this.expression.toString();if(this.whens){s+=this.whens.map(function(w){return" WHEN "+w.when.toString()+" THEN "+w.then.toString()}).join()}s+=" END";return s};yy.CaseValue.prototype.findAggregator=function(query){if(this.expression&&this.expression.findAggregator)this.expression.findAggregator(query);if(this.whens&&this.whens.length>0){this.whens.forEach(function(w){if(w.when.findAggregator)w.when.findAggregator(query);if(w.then.findAggregator)w.then.findAggregator(query)})}};yy.CaseValue.prototype.toJavaScript=function(context,tableid,defcols){var s="(function("+context+",params,alasql){var r;";if(this.expression){s+="v="+this.expression.toJavaScript(context,tableid,defcols)+";";s+=(this.whens||[]).map(function(w){return" if(v=="+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}else{s+=(this.whens||[]).map(function(w){return" if("+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}s+="return r;})("+context+",params,alasql)";return s};yy.Json=function(params){return yy.extend(this,params)};yy.Json.prototype.toString=function(){var s="@";s+=JSONtoString(this.value);s+="";return s};var JSONtoString=alasql.utils.JSONtoString=function(obj){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s=obj;else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoString(b)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoString(obj[k]);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toString){s=obj.toString()}else{throw new Error("1Can not show JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not show JSON object "+JSON.stringify(obj))}return s};function JSONtoJavaScript(obj,context,tableid,defcols){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s="("+obj+")";else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoJavaScript(b,context,tableid,defcols)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoJavaScript(obj[k],context,tableid,defcols);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toJavaScript){s=obj.toJavaScript(context,tableid,defcols)}else{throw new Error("1Can not parse JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not parse JSON object "+JSON.stringify(obj))}return s}yy.Json.prototype.toJavaScript=function(context,tableid,defcols){return JSONtoJavaScript(this.value,context,tableid,defcols)};yy.Convert=function(params){return yy.extend(this,params)};yy.Convert.prototype.toString=function(){var s="CONVERT(";s+=this.dbtypeid;if(typeof this.dbsize!="undefined"){s+="("+this.dbsize;if(this.dbprecision)s+=","+dbprecision;s+=")"}s+=","+this.expression.toString();if(this.style)s+=","+this.style;s+=")";return s};yy.Convert.prototype.toJavaScript=function(context,tableid,defcols){return"alasql.stdfn.CONVERT("+this.expression.toJavaScript(context,tableid,defcols)+',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+",style:"+this.style+"})";throw new Error("There is not such type conversion for "+this.toString())};alasql.stdfn.CONVERT=function(value,args){var val=value;if(args.style){var t;if(/\d{8}/.test(val))t=new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2));else t=new Date(val);if(args.style==1){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==2){val=("0"+t.getYear()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==3){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==4){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getYear()).substr(-2)}else if(args.style==5){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==6){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+("0"+t.getYear()).substr(-2)}else if(args.style==7){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+("0"+t.getYear()).substr(-2)}else if(args.style==8){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==10){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==11){val=("0"+t.getYear()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==12){val=("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else if(args.style==101){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+t.getFullYear()}else if(args.style==102){val=t.getFullYear()+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==103){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+t.getFullYear()}else if(args.style==104){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+t.getFullYear()}else if(args.style==105){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+t.getFullYear()}else if(args.style==106){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+t.getFullYear()}else if(args.style==107){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+t.getFullYear()}else if(args.style==108){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==110){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+t.getFullYear()}else if(args.style==111){val=t.getFullYear()+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==112){val=t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else{throw new Error("The CONVERT style "+args.style+" is not realized yet.")}}if(args.dbtypeid=="Date"){return new Date(val)}else if(args.dbtypeid.toUpperCase()=="DATE"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);return s}else if(args.dbtypeid=="DATETIME"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);s+=" "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2);s+="."+("00"+d.getMilliseconds()).substr(-3);return s}else if(args.dbtypeid.toUpperCase()=="STRING"){return""+val}else if(args.dbtypeid.toUpperCase()=="NUMBER"||args.dbtypeid=="FLOAT"){return+val}else if(args.dbtypeid.toUpperCase()=="MONEY"){var m=+val;return(m|0)+m*100%100/100}else if(args.dbtypeid.toUpperCase()=="BOOLEAN"){return!!val}else if(args.dbtypeid.toUpperCase()=="INT"){return val|0}else if(args.dbtypeid.toUpperCase()=="VARCHAR"||args.dbtypeid=="NVARCHAR"){if(args.dbsize)return(""+val).substr(0,args.dbsize);else return""+val}else if(args.dbtypeid.toUpperCase()=="CHAR"||args.dbtypeid=="NCHAR"){return(val+new Array(args.dbsize+1).join(" ")).substr(0,args.dbsize)}};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.CreateTable=function(params){return yy.extend(this,params)};yy.CreateTable.prototype.toString=function(){var s=K("CREATE");if(this.temporary)s+=" "+K("TEMPORARY");if(this.view)s+=" "+K("VIEW");else s+=" "+K("TABLE");if(this.ifnotexists)s+=" "+K("IF")+" "+K("NOT")+" "+K("EXISTS");s+=" "+this.table.toString();if(this.viewcolumns){s+="("+this.viewcolumns.map(function(vcol){return vcol.toString()}).join(",")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);else{var ss=this.columns.map(function(col){return col.toString()});s+=" ("+NL()+ID()+ss.join(","+NL()+ID())+")"}if(this.view&&this.select){s+=" AS "+this.select.toString()}return s};yy.CreateTable.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.table.databaseid||databaseid];var tableid=this.table.tableid;if(!tableid){throw new Error("Table name is not defined")}var columns=this.columns;var constraints=this.constraints||[];if(this.ifnotexists&&db.tables[tableid])return 0;if(db.tables[tableid]){throw new Error("Can not create table '"+tableid+"', because it already exists in the database '"+db.databaseid+"'")}var table=db.tables[tableid]=new alasql.Table;var ss=[];if(this.columns){this.columns.forEach(function(col){var dbtypeid=col.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();var newcol={columnid:col.columnid,dbtypeid:dbtypeid};if(col.default){ss.push("'"+col.columnid+"':"+col.default.toJavaScript())}table.columns.push(newcol);table.xcolumns[newcol.columnid]=newcol;if(col.primarykey){var pk=table.pk={};pk.columns=[col.columnid];pk.onrightfns="r['"+col.columnid+"']";pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}})}table.defaultfns=ss.join(",");constraints.forEach(function(con){if(con.type=="PRIMARY KEY"){if(table.pk){throw new Error("Primary key already exists")}var pk=table.pk={};pk.columns=con.columns;pk.onrightfns=pk.columns.map(function(columnid){return"r['"+columnid+"']"}).join("+'`'+");pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}});if(this.view&&this.viewcolumns){var self=this;this.viewcolumns.forEach(function(vcol,idx){self.select.columns[idx].as=vcol.columnid})}if(db.engineid){return alasql.engines[db.engineid].createTable(this.table.databaseid||databaseid,tableid,this.ifnotexists,cb)}table.insert=function(r){if(this.pk){var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]!="undefined"){throw new Error("Cannot insert record, because it already exists in primary key")}else{table.data.push(r);this.indices[pk.hh][addr]=r}}else{table.data.push(r)}};table.delete=function(i){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined}}};table.deleteall=function(){this.data.length=0;if(this.pk){this.indices[this.pk.hh]={}}};table.update=function(assignfn,i,params){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r,params);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined;assignfn(r,params,alasql);var newaddr=pk.onrightfn(r);if(typeof this.indices[pk.hh][newaddr]!="undefined"){throw new Error("Record already exists")}else{this.indices[pk.hh][newaddr]=r}}}else{assignfn(this.data[i],params,alasql)}};if(this.view&&this.select){table.view=true;table.select=this.select.compile(this.table.databaseid||databaseid)}if(cb)cb(1);return 1};alasql.fn.Date=Object;alasql.fn.Date=Date;alasql.fn.Number=Number;alasql.fn.String=String;alasql.fn.Boolean=Boolean;stdfn.EXTEND=alasql.utils.extend;stdfn.CHAR=String.fromCharCode.bind(String);stdfn.ASCII=function(a){return a.charCodeAt(0)};stdfn.COALESCE=function(){for(var i=0;i0){for(var i=0,ilen=table.data.length;i0){for(var i=0,ilen=table.data.length;i=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[table.xcolumns[col.columnid].dbtypeid]){q+="(new "+table.xcolumns[col.columnid].dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{if(values instanceof Array&&table.columns&&table.columns.length>0){table.columns.forEach(function(col,idx){var q="'"+col.columnid+"':";if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid)>=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[col.dbtypeid]){q+="(new "+col.dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{sw=JSONtoJavaScript(values)}}if(db.tables[tableid].defaultfns)ss.unshift(db.tables[tableid].defaultfns);if(sw){s+="a="+sw+";"}else{s+="a={"+ss.join(",")+"};"}if(db.tables[tableid].insert){s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].insert(a);"}else{s+="aa.push(a);"}});s33=s3+s;if(db.tables[tableid].insert){}else{s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data="+"alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data.concat(aa);"}s+="return "+self.values.length;var insertfn=new Function("db, params, alasql",s3+s)}else if(this.select){selectfn=this.select.compile(databaseid);if(db.engineid&&alasql.engines[db.engineid].intoTable){var statement=function(params,cb){var aa=selectfn(params);var res=alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null,cb);return res};return statement}else{var insertfn=function(db,params,alasql){var res=selectfn(params);if(db.tables[tableid].insert){for(var i=0,ilen=res.length;i0){s+="("+this.args.map(function(arg){return arg.toString()}).join(", ")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.CreateDatabase.prototype.execute=function(databaseid,params,cb){var args;if(this.args&&this.args.length>0){args=this.args.map(function(arg){return new Function("params","return "+arg.toJavaScript())(params)})}if(this.engineid){var res=alasql.engines[this.engineid].createDatabase(this.databaseid,this.args,this.ifnotexists,this.as,cb);return res}else{var dbid=this.databaseid;if(alasql.databases[dbid]){throw new Error("Database '"+dbid+"' already exists")}var a=new alasql.Database(dbid);var res=1;if(cb)return cb(res);return res}};yy.AttachDatabase=function(params){return yy.extend(this,params)};yy.AttachDatabase.prototype.toString=function(){var s=K("ATTACH");if(this.engineid)s+=" "+L(this.engineid);s+=" "+K("DATABASE")+" "+L(this.databaseid);if(args){s+="(";if(args.length>0){s+=args.map(function(arg){return arg.toString()}).join(", ")}s+=")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.AttachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.engines[this.engineid]){throw new Error('Engine "'+this.engineid+'" is not defined.')}var res=alasql.engines[this.engineid].attachDatabase(this.databaseid,this.as,this.args,params,cb);return res};yy.DetachDatabase=function(params){return yy.extend(this,params)};yy.DetachDatabase.prototype.toString=function(){var s=K("DETACH");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DetachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.databases[this.databaseid].engineid){throw new Error('Cannot detach database "'+this.engineid+'", because it was not attached.')}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.UseDatabase=function(params){return yy.extend(this,params)};yy.UseDatabase.prototype.toString=function(){return K("USE")+" "+K("DATABASE")+" "+L(this.databaseid)};yy.UseDatabase.prototype.execute=function(databaseid,params,cb){var dbid=this.databaseid;if(!alasql.databases[dbid]){throw new Error("Database '"+dbid+"' does not exist")}alasql.use(dbid);var res=1;if(cb)cb(res);return res};yy.DropDatabase=function(params){return yy.extend(this,params)};yy.DropDatabase.prototype.toString=function(){var s=K("DROP");if(this.ifexists)s+=" "+K("IF")+" "+K("EXISTS");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DropDatabase.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].dropDatabase(this.databaseid,this.ifexists,cb)}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{if(alasql.databases[dbid].engineid){throw new Error("Cannot drop database '"+dbid+"', because it is attached. Detach it.")}delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.Declare=function(params){return yy.extend(this,params)};yy.Declare.prototype.toString=function(){var s=K("DECLARE")+" ";if(this.declares&&this.declares.length>0){s=this.declares.map(function(declare){var s="";s+="@"+L(declare.variable)+" ";s+=declare.dbtypeid;if(this.dbsize)s+="("+N(this.dbsize);if(this.dbprecision)s+=","+N(this.dbprecision);s+=")";if(declare.expression)s+=" = "+declare.expression.toString();return s}).join(",")}return s};yy.Declare.prototype.execute=function(databaseid,params,cb){var res=1;if(this.declares&&this.declares.length>0){this.declares.map(function(declare){var dbtypeid=declare.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();alasql.declares[declare.variable]={dbtypeid:dbtypeid,dbsize:declare.dbsize,dbprecision:declare.dbprecision};if(declare.expression){alasql.vars[declare.variable]=new Function("params,alasql","return "+declare.expression.toJavaScript("","",null))(params,alasql);if(alasql.declares[declare.variable]){alasql.vars[declare.variable]=alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable])}}})}if(cb)res=cb(res);return res};yy.ShowDatabases=function(params){return yy.extend(this,params)};yy.ShowDatabases.prototype.toString=function(){var s=K("SHOW")+" "+K("DATABASES");if(this.like)s+="LIKE "+this.like.toString();return s};yy.ShowDatabases.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].showDatabases(this.like,cb)}else{var self=this;var res=[];for(dbid in alasql.databases){res.push({databaseid:dbid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.databaseid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res}};yy.ShowTables=function(params){return yy.extend(this,params)};yy.ShowTables.prototype.toString=function(){var s=K("SHOW")+" "+K("TABLES");if(this.databaseid)s+=" FROM "+this.databaseid;if(this.like)s+=" "+K("LIKE")+" "+this.like.toString();return s};yy.ShowTables.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.databaseid||databaseid];var self=this;var res=[];for(tableid in db.tables){res.push({tableid:tableid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.tableid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res};yy.ShowColumns=function(params){return yy.extend(this,params)};yy.ShowColumns.prototype.toString=function(){var s=K("SHOW")+" "+K("COLUMNS");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowColumns.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table&&table.columns){var res=table.columns.map(function(col){return{columnid:col.columnid,dbtypeid:col.dbtypeid,dbsize:col.dbsize}});return res}else{return[]}};yy.ShowIndex=function(params){return yy.extend(this,params)};yy.ShowIndex.prototype.toString=function(){var s=K("SHOW")+" "+K("INDEX");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowIndex.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;var res=[];if(table&&table.indices){for(var ind in table.indices){res.push({hh:ind,len:Object.keys(table.indices[ind]).length})}}return res};yy.ShowCreateTable=function(params){return yy.extend(this,params)};yy.ShowCreateTable.prototype.toString=function(){var s=K("SHOW")+" "+K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid);if(this.databaseid)s+=" "+K("FROM")+" "+L(this.databaseid);return s};yy.ShowCreateTable.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table){var s=K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid)+" (";var ss=[];if(table.columns){table.columns.forEach(function(col){var a=L(col.columnid)+" "+K(col.dbtypeid);if(col.dbsize)a+="("+N(col.dbsize)+")";if(col.primarykey)a+=" "+K("PRIMARY")+" "+K("KEY");ss.push(a)});s+=ss.join(", ")}s+=")";return s}else{throw new Error('There is no such table "'+this.table.tableid+'"')}};yy.SetVariable=function(params){return yy.extend(this,params)};yy.SetVariable.prototype.toString=function(){var s=K("SET")+" ";if(typeof this.value!="undefined")s+=K(this.variable.toUpperCase())+" "+(this.value?"ON":"OFF");if(this.expression)s+="@"+L(this.variable)+" = "+this.expression.toString();return s};yy.SetVariable.prototype.execute=function(databaseid,params,cb){if(typeof this.value!="undefined"){var val=this.value;if(val=="ON")val=true;else if(val=="OFF")val=false;alasql.options[this.variable]=val}else if(this.expression){var res=new Function("params,alasql","return "+this.expression.toJavaScript("","",null))(params,alasql);if(alasql.declares[this.variable]){res=alasql.stdfn.CONVERT(res,alasql.declares[this.variable])}if(this.props&&this.props.length>0){var fs="alasql.vars['"+this.variable+"']";fs+=this.props.map(function(prop){if(typeof prop=="string"){return"['"+prop+"']"}else if(typeof prop=="number"){return"["+prop+"]"}else{return"["+prop.toJavaScript()+"]"}}).join();new Function("value,alasql",fs+"=value")(res,alasql)}else{alasql.vars[this.variable]=res}}var res=1;if(cb)res=cb(res);return res};alasql.test=function(name,times,fn){if(arguments.length==0){alasql.log(alasql.con.results);return}else if(arguments.length==1){var tm=Date.now();fn();alasql.con.log(Date.now()-tm);return}if(arguments.length==2){fn=times;times=1}var tm=Date.now();for(var i=0;i",sql);if(res instanceof Array){if(console.table){console.table(res)}else{console.log(JSONtoString(res))}}else{console.log(JSONtoString(res))}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}var s="";if(typeof sql=="string"&&alasql.options.logprompt){s+="
"+alasql.pretty(sql)+"
"}if(res instanceof Array){if(res.length==0){s+="

[ ]

"}else if(typeof res[0]!="object"||res[0]instanceof Array){for(var i=0,ilen=res.length;i"+loghtml(res[i])+"

"}}else{s+=loghtml(res)}}else{s+=loghtml(res)}el.innerHTML+=s}};alasql.clear=function(){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.clear){console.clear()}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML=""}};alasql.write=function(s){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.log){console.log(s)}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML+=s}};function loghtml(res){var s="";if(typeof res=="undefined"){s+="undefined"}else if(res instanceof Array){s+="";s+="";var cols=[];for(colid in res[0]){cols.push(colid)}s+="
#";cols.forEach(function(colid){s+=""+colid});for(var i=0,ilen=res.length;i"+(i+1);cols.forEach(function(colid){s+=" ";if(+res[i][colid]==+res[i][colid]){s+='
';if(typeof res[i][colid]=="undefined")s+="NULL";else s+=res[i][colid];s+="
"}else{if(typeof res[i][colid]=="undefined"){s+="NULL"}else if(typeof res[i][colid]=="string"){s+=res[i][colid]}else s+=JSONtoString(res[i][colid])}})}s+="
"}else{s+="

"+JSONtoString(res)+"

"}return s}function scrollTo(element,to,duration){if(duration<=0)return;var difference=to-element.scrollTop;var perTick=difference/duration*10;setTimeout(function(){if(element.scrollTop==to)return;element.scrollTop=element.scrollTop+perTick;scrollTo(element,to,duration-10)},10)}alasql.prompt=function(el,useidel,firstsql){if(typeof exports=="object"){throw new Error("The functionality of prompt is not realized for Node.js")}var prompti=0;if(typeof el=="string")el=document.getElementById(el);if(typeof useidel=="string")useidel=document.getElementById(useidel);useidel.textContent=alasql.useid;if(firstsql){alasql.prompthistory.push(firstsql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(firstsql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+sql+"

");alasql.write('

'+err+"

")}}var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500);el.onkeydown=function(event){if(event.which==13){var sql=el.value;var olduseid=alasql.useid;el.value="";alasql.prompthistory.push(sql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(sql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+alasql.pretty(sql,false)+"

");alasql.write('

'+err+"

")}el.focus();useidel.textContent=alasql.useid;var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500)}else if(event.which==38){prompti--;if(prompti<0)prompti=0;if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}else if(event.which==40){prompti++;if(prompti>=alasql.prompthistory.length){prompti=alasql.prompthistory.length;el.value=""}else if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}}};yy.BeginTransaction=function(params){return yy.extend(this,params)};yy.BeginTransaction.prototype.toString=function(){return K("BEGIN")+" "+K("TRANSACTION")};yy.BeginTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].begin(databaseid,cb)}else{}if(cb)cb(res);return res};yy.CommitTransaction=function(params){return yy.extend(this,params)};yy.CommitTransaction.prototype.toString=function(){return K("COMMIT")+" "+K("TRANSACTION")};yy.CommitTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].commit(databaseid,cb)}else{}if(cb)cb(res);return res};yy.RollbackTransaction=function(params){return yy.extend(this,params)};yy.RollbackTransaction.prototype.toString=function(){return K("ROLLBACK")+" "+K("TRANSACTION")};yy.RollbackTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[databaseid].engineid].rollback(databaseid,cb)}else{}if(cb)cb(res);return res};alasql.into.SQL=function(filename,opts,data,columns,cb){var res;if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};alasql.utils.extend(opt,opts);if(typeof opt.tableid=="undefined"){throw new Error("Table for INSERT TO is not defined.")}var s="";if(columns.length==0){if(typeof data[0]=="object"){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}else{}}for(var i=0,ilen=data.length;i0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var res=data.length;var s="";if(data.length>0){var key=columns[0].columnid;s+=data.map(function(d){return d[key]}).join("\n")}res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.TAB=alasql.into.TSV=function(filename,opts,data,columns,cb){var opt={};alasql.utils.extend(opt,opts);opt.separator=" ";return alasql.into.CSV(filename,opt,data,columns,cb)};alasql.into.CSV=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};opt.separator=",";opt.quote='"';alasql.utils.extend(opt,opts);var res=data.length;var s="";if(opt.headers){s+=columns.map(function(col){return col.columnid}).join(opt.separator)+"\n"}data.forEach(function(d,idx){s+=columns.map(function(col){var s=d[col.columnid];s=(s+"").replace(new RegExp("\\"+opt.quote,"g"),'""');if((s+"").indexOf(opt.separator)>-1||(s+"").indexOf(opt.quote)>-1)s=opt.quote+s+opt.quote;return s}).join(opt.separator)+"\n"});res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.XLSX=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof exports=="object"){var XLSX=require("xlsx")}else{var XLSX=window.XLSX}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={sheetid:"Sheet1",headers:true};alasql.utils.extend(opt,opts);var res=1;var wb={SheetNames:[],Sheets:{}};if(opt.sourcefilename){alasql.utils.loadBinaryFile(opt.sourcefilename,!!cb,function(data){wb=XLSX.read(data,{type:"binary"});res=doExport()})}else{res=doExport()}function doExport(){var cells={};if(wb.SheetNames.indexOf(opt.sheetid)>-1){cells=wb.Sheets[opt.sheetid]}else{wb.SheetNames.push(opt.sheetid);wb.Sheets[opt.sheetid]={};cells=wb.Sheets[opt.sheetid]}var range="A1";if(opt.range)range=opt.range;var col0=alasql.utils.xlscn(range.match(/[A-Z]+/)[0]);var row0=+range.match(/[0-9]+/)[0]-1;if(wb.Sheets[opt.sheetid]["!ref"]){var rangem=wb.Sheets[opt.sheetid]["!ref"];var colm=alasql.utils.xlscn(rangem.match(/[A-Z]+/)[0]);var rowm=+rangem.match(/[0-9]+/)[0]-1}else{var colm=1,rowm=1}var colmax=Math.max(col0+columns.length,colm);var rowmax=Math.max(row0+data.length+2,rowm);var i=row0+1;wb.Sheets[opt.sheetid]["!ref"]="A1:"+alasql.utils.xlsnc(colmax)+rowmax;if(opt.headers){columns.forEach(function(col,idx){cells[alasql.utils.xlsnc(col0+idx)+""+i]={v:col.columnid}});i++}for(var j=0;j ";s+="";s+="";s+="";if(typeof sheet.caption!="undefined"){var caption=sheet.caption;if(typeof caption=="string"){caption={title:caption}}s+=""}if(typeof sheet.columns!="undefined"){columns=sheet.columns}else{if(columns.length==0&&data.length>0){if(typeof data[0]=="object"){if(data[0]instanceof Array){columns=data[0].map(function(d,columnidx){return{columnid:columnidx}})}else{columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}}}}columns.forEach(function(column,columnidx){if(typeof sheet.column!="undefined"){extend(column,sheet.column)}if(typeof column.width=="undefined"){if(sheet.column&&sheet.column.width!="undefined"){column.width=sheet.column.width}else{column.width="120px"}}if(typeof column.width=="number")column.width=column.width+"px";if(typeof column.columnid=="undefined")column.columnid=columnidx;if(typeof column.title=="undefined")column.title=""+column.columnid;if(sheet.headers&&sheet.headers instanceof Array)column.title=sheet.headers[idx]});s+="";columns.forEach(function(column){s+=''});s+="";if(sheet.headers){s+="";s+="";columns.forEach(function(column,columnidx){s+="";s+=""}s+="";if(data&&data.length>0){data.forEach(function(row,rowidx){if(rowidx>sheet.limit)return;s+=""});s+=""})}s+="";s+="
"});s+="
";s+="";s+="";var res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res;function style(a){var s=' style="';if(a&&typeof a.style!="undefined"){s+=a.style+";"}s+='" ';return s}};alasql.from.TABLETOP=function(key,opts,cb,idx,query){var res=[];var opt={headers:true,simpleSheet:true,key:key};alasql.utils.extend(opt,opts);opt.callback=function(data){res=data;if(cb)res=cb(res,idx,query)};Tabletop.init(opt);return res};alasql.from.HTML=function(selector,opts,cb,idx,query){var opt={};alasql.utils.extend(opt,opts);var sel=document.querySelector(selector);if(!sel&&sel.tagName!="TABLE"){throw new Error("Selected HTML element is not a TABLE")}var res=[];var headers=opt.headers;if(headers&&!(headers instanceof Array)){headers=[];var ths=sel.querySelector("thead tr").children;for(var i=0;i=N)return EOF;if(eol)return eol=false,EOL;var j=I;if(text.charCodeAt(j)===quoteCode){var i=j;while(i++http://github/agershun/alasq for more information'}];yy.Help.prototype.execute=function(databaseid,params,cb){var ss=[];if(!this.subject){ss=helpdocs}else{ss.push('See also http://github/agershun/alasq for more information')}if(cb)ss=cb(ss);return ss};yy.Print=function(params){return yy.extend(this,params)};yy.Print.prototype.toString=function(){var s=K("PRINT");if(this.statement)s+=" "+this.statement.toString();return s};yy.Print.prototype.execute=function(databaseid,params,cb){var res,s;if(this.statement){s=this.statement.execute(databaseid,params)}else{s=""}s=JSONtoString(s);console.log(s);if(cb)res=cb(res);return res};yy.Source=function(params){return yy.extend(this,params)};yy.Source.prototype.toString=function(){var s=K("SOURCE");if(this.url)s+=" "+S("'"+this.url+"'");return s};yy.Source.prototype.execute=function(databaseid,params,cb){var res;loadFile(this.url,!!cb,function(data){res=alasql(data);if(cb)res=cb(res);return res},function(err){throw err});return res};yy.Require=function(params){return yy.extend(this,params)};yy.Require.prototype.toString=function(){var s=K("REQUIRE");if(this.paths&&this.paths.length>0){s+=this.paths.map(function(path){return path.toString()}).join(",")}return s};yy.Require.prototype.execute=function(databaseid,params,cb){var self=this;var res=0;var ss="";if(this.paths.length>0){this.paths.forEach(function(path){loadFile(path.value,!!cb,function(data){res++;ss+=data;if(res0){res=res.filter(function(d){return d.databaseid.match(relike)})}}if(cb)cb(res);return res};LS.createTable=function(databaseid,tableid,ifnotexists,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var tb=LS.get(lsdbid+"."+tableid);var res=1;if(tb&&!ifnotexists){throw new Error('Table "'+tableid+'" alsready exists in localStorage database "'+lsdbid+'"')}var lsdb=LS.get(lsdbid);var table=alasql.databases[databaseid].tables[tableid];lsdb.tables[tableid]={columns:table.columns};LS.set(lsdbid,lsdb);LS.set(lsdbid+"."+tableid,[]);if(cb)cb(res);return res};LS.dropTable=function(databaseid,tableid,ifexists,cb){var res=1;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(!ifexists&&!lsdb.tables[tableid]){throw new Error('Cannot drop table "'+tableid+'" in localStorage, because it does not exist')}delete lsdb.tables[tableid];LS.set(lsdbid,lsdb);localStorage.removeItem(lsdbid+"."+tableid);if(cb)cb(res);return res};LS.fromTable=function(databaseid,tableid,cb,idx,query){var lsdbid=alasql.databases[databaseid].lsdbid;var res=LS.get(lsdbid+"."+tableid);if(cb)res=cb(res,idx,query);return res};LS.intoTable=function(databaseid,tableid,value,columns,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var res=value.length;var tb=LS.get(lsdbid+"."+tableid);if(!tb)tb=[];tb=tb.concat(value);LS.set(lsdbid+"."+tableid,tb);if(cb)cb(res);return res};LS.loadTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;db.tables[tableid].data=LS.get(lsdbid+"."+tableid)};LS.saveTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;LS.set(lsdbid+"."+tableid,db.tables[tableid].data);db.tables[tableid].data=null};LS.commit=function(databaseid,cb){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb={databaseid:lsdbid,tables:{}};if(db.tables){for(var tbid in db.tables){lsdb.tables[tbid]={columns:db.tables[tbid].columns};LS.set(lsdbid+"."+tbid,db.tables[tbid].data)}}LS.set(lsdbid,lsdb);return 1};LS.begin=LS.commit;LS.rollback=function(databaseid,cb){var db=alasql.databases[databaseid];db.dbversion++;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(lsdb.tables){for(var tbid in lsdb.tables){var tb=new alasql.Table({columns:db.tables[tbid].columns});extend(tb,lsdb.tables[tbid]);lsdb.tables[tbid]=tb;if(!alasql.options.autocommit){lsdb.tables[tbid].data=LS.get(db.lsdbid+"."+tbid)}lsdb.tables[tbid].indexColumns()}}delete alasql.databases[databaseid];alasql.databases[databaseid]=new alasql.Database(databaseid);extend(alasql.databases[databaseid],lsdb);alasql.databases[databaseid].databaseid=databaseid;alasql.databases[databaseid].engineid="LOCALSTORAGE"};var SQLITE=alasql.engines.SQLITE=function(){};SQLITE.createDatabase=function(wdbid,args,ifnotexists,dbid,cb){throw new Error("Connot create SQLITE database in memory. Attach it.")};SQLITE.dropDatabase=function(databaseid){throw new Error("This is impossible to drop SQLite database. Detach it.")};SQLITE.attachDatabase=function(sqldbid,dbid,args,params,cb){var res=1;if(alasql.databases[dbid]){throw new Error('Unable to attach database as "'+dbid+'" because it already exists')}if(args[0]&&args[0]instanceof yy.StringValue||args[0]instanceof yy.ParamValue){if(args[0]instanceof yy.StringValue){var value=args[0].value}else if(args[0]instanceof yy.ParamValue){var value=params[args[0].param]}alasql.utils.loadBinaryFile(value,true,function(data){var db=new alasql.Database(dbid||sqldbid);db.engineid="SQLITE";db.sqldbid=sqldbid;var sqldb=db.sqldb=new SQL.Database(data);db.tables=[];var tables=sqldb.exec("SELECT * FROM sqlite_master WHERE type='table'")[0].values;tables.forEach(function(tbl){db.tables[tbl[1]]={};var columns=db.tables[tbl[1]].columns=[];var ast=alasql.parse(tbl[4]);var coldefs=ast.statements[0].columns;if(coldefs&&coldefs.length>0){coldefs.forEach(function(cd){columns.push(cd)})}});cb(1)},function(err){throw new Error('Cannot open SQLite database file "'+args[0].value+'"')});return res}else{throw new Error("Cannot attach SQLite database without a file")}return res};SQLITE.fromTable=function(databaseid,tableid,cb,idx,query){var data=alasql.databases[databaseid].sqldb.exec("SELECT * FROM "+tableid);var columns=query.sources[idx].columns=[];if(data[0].columns.length>0){data[0].columns.forEach(function(columnid){columns.push({columnid:columnid})})}var res=[];if(data[0].values.length>0){data[0].values.forEach(function(d){var r={};columns.forEach(function(col,idx){r[col.columnid]=d[idx]});res.push(r)})}if(cb)cb(res,idx,query)};SQLITE.intoTable=function(databaseid,tableid,value,columns,cb){var sqldb=alasql.databases[databaseid].sqldb;for(var i=0,ilen=value.length;i1){var sql="REQUIRE "+paths.map(function(p){return'"'+p+'"'}).join(",");alasql(sql,[],cb)}}else if(path===false){delete alasql.webworker;return}}} \ No newline at end of file +(function(root,factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}else{root.alasql=factory()}})(this,function(){var alasql=function(sql,params,cb,scope){if(typeof importScripts!="function"&&alasql.webworker){var id=alasql.lastid++;alasql.buffer[id]=cb;alasql.webworker.postMessage({id:id,sql:sql,params:params})}else{if(arguments.length==0){return new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]})}else if(arguments.length==1&&typeof sql=="object"&&sql instanceof Array){var select=new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]});select.preparams=[sql];return select}else{if(typeof sql=="string"&&sql[0]=="#"&&typeof document=="object"){sql=document.querySelector(sql).textContent}else if(typeof sql=="object"&&sql instanceof HTMElement){sql=sql.textContent}else if(typeof sql=="function"){sql=sql.toString().slice(14,-3)}return alasql.exec(sql,params,cb,scope)}}};alasql.version="0.0.48";var parser=function(){var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[253,309],$V81=[1,152],$V91=[4,5],$Va1=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Vb1=[1,168],$Vc1=[1,176],$Vd1=[1,175],$Ve1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vf1=[1,207],$Vg1=[1,200],$Vh1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vi1=[2,74],$Vj1=[1,221],$Vk1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vl1=[1,237],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,236],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,251],$VE1=[1,253],$VF1=[1,254],$VG1=[1,256],$VH1=[1,255],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[1,260],$VM1=[2,198],$VN1=[1,264],$VO1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VP1=[2,256],$VQ1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VR1=[1,272],$VS1=[1,282],$VT1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VU1=[1,298],$VV1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,101,103,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,259,260,261,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VW1=[1,305],$VX1=[1,306],$VY1=[2,369],$VZ1=[1,311],$V_1=[8,9,11,61,202,206],$V$1=[2,421],$V02=[1,322],$V12=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V22=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32=[2,111],$V42=[1,350],$V52=[61,80],$V62=[8,9,11,61,65,192,202,206,229,247,260,275,276,279,280,292],$V72=[79,236,237],$V82=[1,415],$V92=[1,421],$Va2=[1,422],$Vb2=[1,432],$Vc2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vd2=[2,271],$Ve2=[1,439],$Vf2=[202,204,206],$Vg2=[61,323],$Vh2=[61,321,323],$Vi2=[1,446],$Vj2=[61,321],$Vk2=[4,5,96,191],$Vl2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vm2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vn2=[1,514],$Vo2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vp2=[2,181],$Vq2=[1,516],$Vr2=[1,517],$Vs2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vy2=[1,539],$Vz2=[61,65],$VA2=[2,196],$VB2=[1,578],$VC2=[8,9,11,65,135,136,137,139,145,202,206],$VD2=[1,589],$VE2=[1,593],$VF2=[1,594],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,603],$VO2=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$VP2=[1,608],$VQ2=[1,619],$VR2=[8,9,11,61,124,202,204,206,356],$VS2=[1,627],$VT2=[1,626],$VU2=[2,234],$VV2=[1,648],$VW2=[2,438],$VX2=[1,669],$VY2=[1,678],$VZ2=[8,9,11,61,202,204,206,356],$V_2=[1,681],$V$2=[8,9,11,65,135,136,137,145,202,206],$V03=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V13=[1,695],$V23=[1,697],$V33=[4,5,64,193,195,196,197,198],$V43=[8,9,11,202,204,206,356],$V53=[214,219],$V63=[1,738],$V73=[8,9,11,61,65,202,206],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,775],$Va3=[1,776],$Vb3=[1,777],$Vc3=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,808],$Ve3=[1,821],$Vf3=[1,822],$Vg3=[1,820],$Vh3=[1,818],$Vi3=[1,824],$Vj3=[1,815],$Vk3=[1,816],$Vl3=[1,817],$Vm3=[1,819],$Vn3=[1,828],$Vo3=[8,9,11,61,65,135,136,137,145,202,206],$Vp3=[8,9,11,65,202,206],$Vq3=[1,845],$Vr3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vs3=[1,862],$Vt3=[1,861],$Vu3=[1,891],$Vv3=[1,892],$Vw3=[1,893],$Vx3=[1,894],$Vy3=[78,86,275,276,277,279],$Vz3=[2,381],$VA3=[1,899],$VB3=[1,925],$VC3=[8,9,11,202,206,247,259,260,261],$VD3=[1,1020],$VE3=[1,1030];var parser={trace:function trace(){},yy:{},symbols_:{error:2,Literal:3,LITERAL:4,BRALITERAL:5,main:6,Statements:7,EOF:8,SEMICOLON:9,AStatement:10,GO:11,ExplainStatement:12,EXPLAIN:13,QUERY:14,PLAN:15,Statement:16,If:17,AlterTable:18,AttachDatabase:19,CreateDatabase:20,CreateIndex:21,CreateTable:22,CreateView:23,Declare:24,Delete:25,DetachDatabase:26,DropDatabase:27,DropIndex:28,DropTable:29,DropView:30,Insert:31,RenameTable:32,Select:33,Merge:34,WithSelect:35,ShowCreateTable:36,ShowColumns:37,ShowDatabases:38,ShowIndex:39,ShowTables:40,TruncateTable:41,BeginTransaction:42,CommitTransaction:43,RollbackTransaction:44,EndTransaction:45,UseDatabase:46,Update:47,Help:48,JavaScript:49,Source:50,Assert:51,While:52,Continue:53,Break:54,BeginEnd:55,Print:56,Require:57,SetVariable:58,WITH:59,WithTablesList:60,COMMA:61,WithTable:62,AS:63,LPAR:64,RPAR:65,SelectClause:66,IntoClause:67,FromClause:68,WhereClause:69,GroupClause:70,OrderClause:71,LimitClause:72,UnionClause:73,SelectModifier:74,DISTINCT:75,TopClause:76,ResultColumns:77,UNIQUE:78,ALL:79,SELECT:80,VALUE:81,ROW:82,COLUMN:83,MATRIX:84,TEXTSTRING:85,INDEX:86,RECORDSET:87,TOP:88,NumValue:89,PERCENT:90,INTO:91,Table:92,FuncValue:93,ParamValue:94,VarValue:95,STRING:96,FROM:97,FromTablesList:98,JoinTablesList:99,ApplyClause:100,CROSS:101,APPLY:102,OUTER:103,FromTable:104,FromString:105,DOT:106,JoinTable:107,JoinMode:108,JoinTableAs:109,OnClause:110,JoinModeMode:111,NATURAL:112,JOIN:113,INNER:114,LEFT:115,RIGHT:116,FULL:117,SEMI:118,ANTI:119,ON:120,Expression:121,USING:122,ColumnsList:123,WHERE:124,GROUP:125,BY:126,GroupExpressionsList:127,HavingClause:128,GroupExpression:129,GROUPING:130,SETS:131,ROLLUP:132,CUBE:133,HAVING:134,UNION:135,EXCEPT:136,INTERSECT:137,CORRESPONDING:138,ORDER:139,OrderExpressionsList:140,OrderExpression:141,DIRECTION:142,COLLATE:143,NOCASE:144,LIMIT:145,OffsetClause:146,OFFSET:147,ResultColumn:148,TDTH:149,TD:150,TH:151,NUMBER:152,StringValue:153,Star:154,STAR:155,Column:156,AggrValue:157,Op:158,LogicValue:159,NullValue:160,ExistsValue:161,CaseValue:162,CastClause:163,Json:164,NewClause:165,JAVASCRIPT:166,NEW:167,CAST:168,ColumnType:169,CONVERT:170,PrimitiveValue:171,CURRENT_TIMESTAMP:172,Aggregator:173,OverClause:174,OVER:175,OverPartitionClause:176,OverOrderByClause:177,PARTITION:178,SUM:179,COUNT:180,MIN:181,MAX:182,AVG:183,FIRST:184,LAST:185,AGGR:186,ARRAY:187,ExprList:188,TRUE:189,FALSE:190,NSTRING:191,NULL:192,AT:193,EXISTS:194,DOLLAR:195,COLON:196,QUESTION:197,BRAQUESTION:198,CASE:199,WhensList:200,ElseClause:201,END:202,When:203,WHEN:204,THEN:205,ELSE:206,LIKE:207,NOT_LIKE:208,PLUS:209,MINUS:210,SLASH:211,MODULO:212,CARET:213,ARROW:214,GT:215,GE:216,LT:217,LE:218,EQ:219,EQEQ:220,EQEQEQ:221,NE:222,NEEQEQ:223,NEEQEQEQ:224,CondOp:225,AllSome:226,AND:227,OR:228,NOT:229,IN:230,ColFunc:231,BETWEEN:232,NOT_BETWEEN:233,IS:234,DOUBLECOLON:235,SOME:236,ANY:237,UPDATE:238,SET:239,SetColumnsList:240,SetColumn:241,DELETE:242,INSERT:243,Into:244,VALUES:245,ValuesListsList:246,DEFAULT:247,ValuesList:248,Value:249,DateValue:250,CREATE:251,TemporaryClause:252,TABLE:253,IfNotExists:254,CreateTableDefClause:255,CreateTableOptionsClause:256,CreateTableOptions:257,CreateTableOption:258,ENGINE:259,AUTO_INCREMENT:260,CHARSET:261,TEMPORARY:262,TEMP:263,IF:264,ColumnDefsList:265,ConstraintsList:266,Constraint:267,ConstraintName:268,PrimaryKey:269,ForeignKey:270,UniqueKey:271,IndexKey:272,Check:273,CONSTRAINT:274,CHECK:275,PRIMARY:276,KEY:277,ColsList:278,FOREIGN:279,REFERENCES:280,OnForeignKeyClause:281,OnDeleteClause:282,OnUpdateClause:283,NO:284,ACTION:285,ColumnDef:286,ColumnConstraintsClause:287,ColumnConstraints:288,ENUM:289,ColumnConstraintsList:290,ColumnConstraint:291,IDENTITY:292,DROP:293,IfExists:294,ALTER:295,RENAME:296,TO:297,ADD:298,MODIFY:299,ATTACH:300,DATABASE:301,DETACH:302,AsClause:303,USE:304,SHOW:305,DATABASES:306,TABLES:307,COLUMNS:308,VIEW:309,HELP:310,ExpressionStatement:311,SOURCE:312,ASSERT:313,JsonObject:314,ATLBRA:315,JsonArray:316,JsonValue:317,JsonPrimitiveValue:318,LCUR:319,JsonPropertiesList:320,RCUR:321,JsonElementsList:322,RBRA:323,JsonProperty:324,OnOff:325,SetPropsList:326,SetProp:327,OFF:328,COMMIT:329,TRANSACTION:330,ROLLBACK:331,BEGIN:332,ElseStatement:333,WHILE:334,CONTINUE:335,BREAK:336,PRINT:337,REQUIRE:338,StringValuesList:339,DECLARE:340,DeclaresList:341,DeclareItem:342,TRUNCATE:343,MERGE:344,MergeInto:345,MergeUsing:346,MergeOn:347,MergeMatchedList:348,OutputClause:349,MergeMatched:350,MergeNotMatched:351,MATCHED:352,MergeMatchedAction:353,MergeNotMatchedAction:354,TARGET:355,OUTPUT:356,$accept:0,$end:1},terminals_:{2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",101:"CROSS",102:"APPLY",103:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",253:"TABLE",259:"ENGINE",260:"AUTO_INCREMENT",261:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"},productions_:[0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,5],[68,0],[100,6],[100,7],[100,6],[100,7],[98,1],[98,3],[104,4],[104,5],[104,3],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[105,1],[92,3],[92,1],[99,2],[99,2],[99,1],[99,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,9],[22,5],[256,0],[256,1],[257,2],[257,1],[258,1],[258,3],[258,3],[258,3],[252,0],[252,1],[252,1],[254,0],[254,3],[255,3],[255,1],[255,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,10],[23,7],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]],performAction:function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:if(yy.casesensitive)this.$=$$[$0];else this.$=$$[$0].toLowerCase();break;case 2:this.$=doubleq($$[$0].substr(1,$$[$0].length-2));break;case 3:return new yy.Statements({statements:$$[$0-1]});break;case 4:case 5:this.$=$$[$0-2];if($$[$0])$$[$0-2].push($$[$0]);break;case 6:case 7:case 56:case 89:case 114:case 115:case 150:case 169:case 251:case 268:case 328:case 341:case 342:case 346:case 354:case 393:case 394:case 502:case 507:case 527:case 529:case 543:case 544:this.$=[$$[$0]];break;case 8:this.$=$$[$0];$$[$0].explain=true;break;case 9:this.$=$$[$0];$$[$0].explain=true;break;case 10:this.$=$$[$0];if(yy.exists)this.$.exists=yy.exists;delete yy.exists;if(yy.queries)this.$.queries=yy.queries;delete yy.queries;break;case 11:case 63:case 74:case 84:case 145:case 146:case 148:case 156:case 158:case 167:case 175:case 177:case 230:case 271:case 366:case 369:case 381:case 386:case 387:case 421:this.$=undefined;break;case 54:this.$=new yy.WithSelect({withs:$$[$0-1],select:$$[$0]});break;case 55:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 57:this.$={name:$$[$0-4],select:$$[$0-1]};break;case 58:yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);this.$=$$[$0-7];break;case 59:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 60:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 61:this.$=new yy.Select({columns:$$[$0],all:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 62:this.$=new yy.Select({columns:$$[$0]});yy,extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 64:this.$={modifier:"VALUE"};break;case 65:this.$={modifier:"ROW"};break;case 66:this.$={modifier:"COLUMN"};break;case 67:this.$={modifier:"MATRIX"};break;case 68:this.$={modifier:"TEXTSTRING"};break;case 69:this.$={modifier:"INDEX"};break;case 70:this.$={modifier:"RECORDSET"};break;case 71:this.$={top:$$[$0]};break;case 72:this.$={top:$$[$0-1]};break;case 73:this.$={top:$$[$0-1],percent:true};break;case 75:case 234:case 388:case 389:this.$=undefined;break;case 76:case 77:case 78:case 79:this.$={into:$$[$0]};break;case 80:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();if(s[0]=="#"){this.$={into:new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){this.$={into:new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x4=="XLSX"||x4=="JSON"){this.$={into:new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}break;case 81:this.$={from:$$[$0]};break;case 82:this.$={from:$$[$0-1],joins:$$[$0]};break;case 83:this.$={from:$$[$0-2],joins:$$[$0-1]};break;case 85:this.$=new yy.Apply({select:$$[$0-2],applymode:"CROSS",as:$$[$0]});break;case 86:this.$=new yy.Apply({select:$$[$0-3],applymode:"CROSS",as:$$[$0]});break;case 87:this.$=new yy.Apply({select:$$[$0-2],applymode:"OUTER",as:$$[$0]});break;case 88:this.$=new yy.Apply({select:$$[$0-3],applymode:"OUTER",as:$$[$0]});break;case 90:case 151:case 329:case 395:case 396:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 91:this.$=$$[$0-2];this.$.as=$$[$0];break;case 92:this.$=$$[$0-3];this.$.as=$$[$0];break;case 93:this.$=$$[$0-1];this.$.as="default";break;case 94:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 95:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 96:case 155:case 191:case 199:case 200:case 201:case 202:case 203:case 204:case 205:case 206:case 207:case 208:case 209:case 210:case 211:case 212:case 214:case 224:case 225:case 226:case 227:case 228:case 229:case 270:case 317:case 318:case 319:case 320:case 321:case 322:case 382:case 407:case 409:case 476:case 477:case 478:case 479:case 480:case 481:case 485:case 487:case 488:case 497:case 508:case 509:this.$=$$[$0];break;case 97:case 101:case 104:case 107:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 98:case 102:case 105:case 108:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 99:case 100:case 103:case 106:this.$=$$[$0];$$[$0].as="default";break;case 109:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();var r;if(s[0]=="#"){r=new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){r=new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x4=="XLSX"||x4=="JSON"){r=new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else{throw new Error("Unknown string in FROM clause")};this.$=r;break;case 110:this.$=new yy.Table({databaseid:$$[$0-2],tableid:$$[$0]});break;case 111:this.$=new yy.Table({tableid:$$[$0]});break;case 112:case 113:this.$=$$[$0-1];$$[$0-1].push($$[$0]);break;case 116:this.$=new yy.Join($$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 117:this.$={table:$$[$0]};break;case 118:this.$={table:$$[$0-1],as:$$[$0]};break;case 119:this.$={table:$$[$0-2],as:$$[$0]};break;case 120:this.$={param:$$[$0-1],as:$$[$0]};break;case 121:this.$={param:$$[$0-2],as:$$[$0]};break;case 122:this.$={select:$$[$0-3],as:$$[$0]};break;case 123:this.$={select:$$[$0-4],as:$$[$0]};break;case 124:this.$={funcid:$$[$0],as:"default"};break;case 125:this.$={funcid:$$[$0-1],as:$$[$0]};break;case 126:this.$={funcid:$$[$0-2],as:$$[$0]};break;case 127:this.$={variable:$$[$0],as:"default"};break;case 128:this.$={variable:$$[$0-1],as:$$[$0]};break;case 129:this.$={variable:$$[$0-2],as:$$[$0]};break;case 130:this.$={joinmode:$$[$0]};break;case 131:this.$={joinmode:$$[$0-1],natural:true};break;case 132:case 133:this.$="INNER";break;case 134:case 135:this.$="LEFT";break;case 136:case 137:this.$="RIGHT";break;case 138:case 139:this.$="OUTER";break;case 140:this.$="SEMI";break;case 141:this.$="ANTI";break;case 142:this.$="CROSS";break;case 143:this.$={on:$$[$0]};break;case 144:case 539:this.$={using:$$[$0]};break;case 147:this.$={where:new yy.Expression({expression:$$[$0]})};break;case 149:this.$={group:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 152:this.$=new yy.GroupExpression({type:"GROUPING SETS",group:$$[$0-1]});break;case 153:this.$=new yy.GroupExpression({type:"ROLLUP",group:$$[$0-1]});break;case 154:this.$=new yy.GroupExpression({type:"CUBE",group:$$[$0-1]});break;case 157:this.$={having:$$[$0]};break;case 159:this.$={union:$$[$0]};break;case 160:this.$={unionall:$$[$0]};break;case 161:this.$={except:$$[$0]};break;case 162:this.$={intersect:$$[$0]};break;case 163:this.$={union:$$[$0-1],corresponding:true};break;case 164:this.$={unionall:$$[$0-1],corresponding:true};break;case 165:this.$={except:$$[$0-1],corresponding:true};break;case 166:this.$={intersect:$$[$0-1],corresponding:true};break;case 168:this.$={order:$$[$0]};break;case 170:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 171:this.$=new yy.Expression({expression:$$[$0],direction:"ASC"});break;case 172:this.$=new yy.Expression({expression:$$[$0-1],direction:$$[$0].toUpperCase()});break;case 173:this.$=new yy.Expression({expression:$$[$0-2],direction:"ASC",nocase:true});break;case 174:this.$=new yy.Expression({expression:$$[$0-3],direction:$$[$0].toUpperCase(),nocase:true});break;case 176:this.$={limit:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 178:this.$={offset:$$[$0]};break;case 179:yy.extend($$[$0-1],$$[$0]);$$[$0-3].push($$[$0-1]);this.$=$$[$0-3];break;case 180:yy.extend($$[$0-1],$$[$0]);this.$=[$$[$0-1]];break;case 181:this.$=undefined;break;case 182:this.$={td:$$[$0]};break;case 183:this.$={th:$$[$0]};break;case 184:this.$={th:$$[$0-2],td:$$[$0]};break;case 185:case 187:case 189:$$[$0-2].as=$$[$0];this.$=$$[$0-2];break;case 186:case 188:case 190:$$[$0-1].as=$$[$0];this.$=$$[$0-1];break;case 192:this.$=new yy.Column({columid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 193:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 194:this.$=new yy.Column({columnid:$$[$0]});break;case 195:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 196:case 197:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 198:this.$=new yy.Column({columnid:$$[$0]});break;case 213:this.$=new yy.Json({value:$$[$0]});break;case 215:if(!yy.queries)yy.queries=[];yy.queries.push($$[$0-1]);$$[$0-1].queriesidx=yy.queries.length;this.$=$$[$0-1];break;case 216:this.$=$$[$0];break;case 217:this.$=new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)});break;case 218:this.$=new yy.FuncValue({funcid:$$[$0],newid:true});break;case 219:this.$=$$[$0];yy.extend(this.$,{newid:true});break;case 220:this.$=new yy.Convert({expression:$$[$0-3]});yy.extend(this.$,$$[$0-1]);break;case 221:this.$=new yy.Convert({expression:$$[$0-5],style:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 222:this.$=new yy.Convert({expression:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 223:this.$=new yy.Convert({expression:$$[$0-3],style:$$[$0-1]});yy.extend(this.$,$$[$0-5]);break;case 231:this.$=new yy.AggrValue({aggregatorid:$$[$0-4].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 232:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],distinct:true,over:$$[$0]});break;case 233:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 235:case 236:this.$=new yy.Over;yy.extend(this.$,$$[$0-1]);break;case 237:this.$=new yy.Over;yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 238:this.$={partition:$$[$0]};break;case 239:this.$={order:$$[$0]};break;case 240:this.$="SUM";break;case 241:this.$="COUNT";break;case 242:this.$="MIN";break;case 243:this.$="MAX";break;case 244:this.$="AVG";break;case 245:this.$="FIRST";break;case 246:this.$="LAST";break;case 247:this.$="AGGR";break;case 248:this.$="ARRAY";break;case 249:if(alasql.aggr[$$[$0-3]]){this.$=new yy.AggrValue({aggregatorid:"REDUCE",funcid:$$[$0-3],expression:$$[$0-1].pop()})}else{this.$=new yy.FuncValue({funcid:$$[$0-3],args:$$[$0-1]})};break;case 250:this.$=new yy.FuncValue({funcid:$$[$0-2]});break;case 252:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 253:this.$=new yy.NumValue({value:+$$[$0]});break;case 254:this.$=new yy.LogicValue({value:true});break;case 255:this.$=new yy.LogicValue({value:false});break;case 256:this.$=new yy.StringValue({value:$$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 257:this.$=new yy.StringValue({value:$$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 258:this.$=new yy.NullValue({value:undefined});break;case 259:this.$=new yy.VarValue({variable:$$[$0]});break;case 260:if(!yy.exists)yy.exists=[];this.$=new yy.ExistsValue({value:$$[$0-1],existsidx:yy.exists.length});yy.exists.push($$[$0-1]);break;case 261:case 262:this.$=new yy.ParamValue({param:$$[$0]}); +break;case 263:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++});break;case 264:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++,array:true});break;case 265:this.$=new yy.CaseValue({expression:$$[$0-3],whens:$$[$0-2],elses:$$[$0-1]});break;case 266:this.$=new yy.CaseValue({whens:$$[$0-2],elses:$$[$0-1]});break;case 267:case 541:case 542:this.$=$$[$0-1];this.$.push($$[$0]);break;case 269:this.$={when:$$[$0-2],then:$$[$0]};break;case 272:this.$=new yy.Op({left:$$[$0-2],op:"LIKE",right:$$[$0]});break;case 273:this.$=new yy.Op({left:$$[$0-2],op:"NOT LIKE",right:$$[$0]});break;case 274:this.$=new yy.Op({left:$$[$0-2],op:"+",right:$$[$0]});break;case 275:this.$=new yy.Op({left:$$[$0-2],op:"-",right:$$[$0]});break;case 276:this.$=new yy.Op({left:$$[$0-2],op:"*",right:$$[$0]});break;case 277:this.$=new yy.Op({left:$$[$0-2],op:"/",right:$$[$0]});break;case 278:this.$=new yy.Op({left:$$[$0-2],op:"%",right:$$[$0]});break;case 279:this.$=new yy.Op({left:$$[$0-2],op:"^",right:$$[$0]});break;case 280:case 281:case 283:this.$=new yy.Op({left:$$[$0-2],op:"->",right:$$[$0]});break;case 282:this.$=new yy.Op({left:$$[$0-4],op:"->",right:$$[$0-1]});break;case 284:this.$=new yy.Op({left:$$[$0-2],op:">",right:$$[$0]});break;case 285:this.$=new yy.Op({left:$$[$0-2],op:">=",right:$$[$0]});break;case 286:this.$=new yy.Op({left:$$[$0-2],op:"<",right:$$[$0]});break;case 287:this.$=new yy.Op({left:$$[$0-2],op:"<=",right:$$[$0]});break;case 288:this.$=new yy.Op({left:$$[$0-2],op:"=",right:$$[$0]});break;case 289:this.$=new yy.Op({left:$$[$0-2],op:"==",right:$$[$0]});break;case 290:this.$=new yy.Op({left:$$[$0-2],op:"===",right:$$[$0]});break;case 291:this.$=new yy.Op({left:$$[$0-2],op:"!=",right:$$[$0]});break;case 292:this.$=new yy.Op({left:$$[$0-2],op:"!==",right:$$[$0]});break;case 293:this.$=new yy.Op({left:$$[$0-2],op:"!===",right:$$[$0]});break;case 294:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 295:this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1]});break;case 296:this.$=new yy.Op({left:$$[$0-2],op:"AND",right:$$[$0]});break;case 297:this.$=new yy.Op({left:$$[$0-2],op:"OR",right:$$[$0]});break;case 298:this.$=new yy.UniOp({op:"NOT",right:$$[$0]});break;case 299:this.$=new yy.UniOp({op:"-",right:$$[$0]});break;case 300:this.$=new yy.UniOp({op:"+",right:$$[$0]});break;case 301:this.$=new yy.UniOp({right:$$[$0-1]});break;case 302:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 303:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 304:this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1]});break;case 305:this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1]});break;case 306:this.$=new yy.Op({left:$$[$0-3],op:"IN",right:[]});break;case 307:this.$=new yy.Op({left:$$[$0-4],op:"NOT IN",right:[]});break;case 308:this.$=new yy.Op({left:$$[$0-2],op:"IN",right:$$[$0]});break;case 309:this.$=new yy.Op({left:$$[$0-3],op:"NOT IN",right:$$[$0]});break;case 310:this.$=new yy.Op({left:$$[$0-2],op:"BETWEEN",right:$$[$0]});break;case 311:this.$=new yy.Op({left:$$[$0-2],op:"NOT BETWEEN",right:$$[$0]});break;case 312:this.$=new yy.Op({op:"IS",left:$$[$0-2],right:$$[$0]});break;case 313:this.$=new yy.Convert({expression:$$[$0-2]});yy.extend(this.$,$$[$0]);break;case 314:case 315:this.$=$$[$0];break;case 316:this.$=$$[$0-1];break;case 323:this.$="ALL";break;case 324:this.$="SOME";break;case 325:this.$="ANY";break;case 326:this.$=new yy.Update({table:$$[$0-4],columns:$$[$0-2],where:$$[$0]});break;case 327:this.$=new yy.Update({table:$$[$0-2],columns:$$[$0]});break;case 330:this.$=new yy.SetColumn({columnid:$$[$0-2],expression:$$[$0]});break;case 331:this.$=new yy.Delete({table:$$[$0-2],where:$$[$0]});break;case 332:this.$=new yy.Delete({table:$$[$0]});break;case 333:this.$=new yy.Insert({into:$$[$0-2],values:$$[$0]});break;case 334:this.$=new yy.Insert({into:$$[$0-2],"default":true});break;case 335:this.$=new yy.Insert({into:$$[$0-5],columns:$$[$0-3],values:$$[$0]});break;case 336:this.$=new yy.Insert({into:$$[$0-1],select:$$[$0]});break;case 337:this.$=new yy.Insert({into:$$[$0-4],columns:$$[$0-2],select:$$[$0]});break;case 340:this.$=[$$[$0-1]];break;case 343:this.$=$$[$0-4];$$[$0-4].push($$[$0-1]);break;case 344:case 345:case 347:case 355:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 356:this.$=new yy.CreateTable({table:$$[$0-4]});yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0]);break;case 357:this.$=new yy.CreateTable({table:$$[$0]});yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 367:case 368:this.$={temporary:true};break;case 370:this.$={ifnotexists:true};break;case 371:this.$={columns:$$[$0-2],constraints:$$[$0]};break;case 372:this.$={columns:$$[$0]};break;case 373:this.$={as:$$[$0]};break;case 374:case 397:this.$=[$$[$0]];break;case 375:case 398:case 501:case 506:case 526:case 530:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 376:case 377:case 378:case 379:case 380:$$[$0].constraintid=$$[$0-1];this.$=$$[$0];break;case 383:this.$={type:"CHECK",expression:$$[$0-1]};break;case 384:this.$={type:"PRIMARY KEY",columns:$$[$0-1]};break;case 385:this.$={type:"FOREIGN KEY",columns:$$[$0-7],fktableid:$$[$0-4],fkcolumns:$$[$0-2]};break;case 399:this.$=new yy.ColumnDef({columnid:$$[$0-2]});yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 400:this.$=new yy.ColumnDef({columnid:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 401:this.$=new yy.ColumnDef({columnid:$$[$0],dbtypeid:""});break;case 402:this.$={dbtypeid:$$[$0-5],dbsize:+$$[$0-3],dbprecision:+$$[$0-1]};break;case 403:this.$={dbtypeid:$$[$0-3],dbsize:+$$[$0-1]};break;case 404:this.$={dbtypeid:$$[$0]};break;case 405:this.$={dbtypeid:"ENUM",enumvalues:$$[$0-1]};break;case 406:this.$=undefined;break;case 408:yy.extend($$[$0-1],$$[$0]);this.$=$$[$0-1];break;case 410:this.$={primarykey:true};break;case 411:case 412:this.$={foreignkey:{tableid:$$[$0-3],columnid:$$[$0-1]}};break;case 413:this.$={auto_increment:true};break;case 414:this.$={identity:[$$[$0-3],$$[$0-1]]};break;case 415:this.$={identity:[1,1]};break;case 416:this.$={"default":$$[$0]};break;case 417:this.$={"null":true};break;case 418:this.$={notnull:true};break;case 419:this.$=$$[$0];break;case 420:this.$=new yy.DropTable({table:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 422:this.$={ifexists:true};break;case 423:this.$=new yy.AlterTable({table:$$[$0-3],renameto:$$[$0]});break;case 424:this.$=new yy.AlterTable({table:$$[$0-3],addcolumn:$$[$0]});break;case 425:this.$=new yy.AlterTable({table:$$[$0-3],modifycolumn:$$[$0]});break;case 426:this.$=new yy.AlterTable({table:$$[$0-5],renamecolumn:$$[$0-2],to:$$[$0]});break;case 427:this.$=new yy.AlterTable({table:$$[$0-3],dropcolumn:$$[$0]});break;case 428:this.$=new yy.AlterTable({table:$$[$0-2],renameto:$$[$0]});break;case 429:this.$=new yy.AttachDatabase({databaseid:$$[$0],engineid:$$[$0-2].toUpperCase()});break;case 430:this.$=new yy.AttachDatabase({databaseid:$$[$0-3],engineid:$$[$0-5].toUpperCase(),args:$$[$0-1]});break;case 431:this.$=new yy.AttachDatabase({databaseid:$$[$0-2],engineid:$$[$0-4].toUpperCase(),as:$$[$0]});break;case 432:this.$=new yy.AttachDatabase({databaseid:$$[$0-5],engineid:$$[$0-7].toUpperCase(),as:$$[$0],args:$$[$0-3]});break;case 433:this.$=new yy.DetachDatabase({databaseid:$$[$0]});break;case 434:this.$=new yy.CreateDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0]);break;case 435:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),databaseid:$$[$0-1],as:$$[$0]});yy.extend(this.$,$$[$0-2]);break;case 436:this.$=new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(),databaseid:$$[$0-4],args:$$[$0-2],as:$$[$0]});yy.extend(this.$,$$[$0-5]);break;case 437:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),as:$$[$0],args:[$$[$0-1]]});yy.extend(this.$,$$[$0-2]);break;case 438:this.$=undefined;break;case 439:case 472:case 490:case 493:case 510:this.$=$$[$0-1];break;case 440:case 441:this.$=new yy.UseDatabase({databaseid:$$[$0]});break;case 442:this.$=new yy.DropDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 443:case 444:this.$=new yy.DropDatabase({databaseid:$$[$0],engineid:$$[$0-3].toUpperCase()});yy.extend(this.$,$$[$0-1]);break;case 445:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1]});break;case 446:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1],unique:true});break;case 447:this.$=new yy.DropIndex({indexid:$$[$0]});break;case 448:this.$=new yy.ShowDatabases;break;case 449:this.$=new yy.ShowDatabases({like:$$[$0]});break;case 450:this.$=new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase()});break;case 451:this.$=new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase(),like:$$[$0]});break;case 452:this.$=new yy.ShowTables;break;case 453:this.$=new yy.ShowTables({like:$$[$0]});break;case 454:this.$=new yy.ShowTables({databaseid:$$[$0]});break;case 455:this.$=new yy.ShowTables({like:$$[$0],databaseid:$$[$0-2]});break;case 456:this.$=new yy.ShowColumns({table:$$[$0]});break;case 457:this.$=new yy.ShowColumns({table:$$[$0-2],databaseid:$$[$0]});break;case 458:this.$=new yy.ShowIndex({table:$$[$0]});break;case 459:this.$=new yy.ShowIndex({table:$$[$0-2],databaseid:$$[$0]});break;case 460:this.$=new yy.ShowCreateTable({table:$$[$0]});break;case 461:this.$=new yy.ShowCreateTable({table:$$[$0-2],databaseid:$$[$0]});break;case 462:this.$=new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]});yy.extend(this.$,$$[$0-8]);yy.extend(this.$,$$[$0-6]);break;case 463:this.$=new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]});yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-3]);break;case 464:this.$=new yy.DropTable({table:$$[$0],view:true});yy.extend(this.$,$$[$0-1]);break;case 465:this.$=new yy.Help({subject:$$[$0].value.toUpperCase()});break;case 466:this.$=new yy.Help;break;case 467:this.$=new yy.ExpressionStatement({expression:$$[$0]});break;case 468:this.$=new yy.Source({url:$$[$0].value});break;case 469:this.$=new yy.Assert({value:$$[$0]});break;case 470:this.$=new yy.Assert({value:$$[$0].value});break;case 471:this.$=new yy.Assert({value:$$[$0],message:$$[$0-2]});break;case 473:case 484:case 486:this.$=$$[$0].value;break;case 474:case 482:this.$=+$$[$0].value;break;case 475:this.$=!!$$[$0].value;break;case 483:this.$=""+$$[$0].value;break;case 489:this.$=$$[$0-1];break;case 491:case 494:this.$=$$[$0-2];break;case 492:this.$={};break;case 495:this.$=[];break;case 496:yy.extend($$[$0-2],$$[$0]);this.$=$$[$0-2];break;case 498:this.$={};this.$[$$[$0-2].substr(1,$$[$0-2].length-2)]=$$[$0];break;case 499:case 500:this.$={};this.$[$$[$0-2]]=$$[$0];break;case 503:this.$=new yy.SetVariable({variable:$$[$0-1].toLowerCase(),value:$$[$0]});break;case 504:this.$=new yy.SetVariable({variable:$$[$0-2],expression:$$[$0]});break;case 505:this.$=new yy.SetVariable({variable:$$[$0-3],props:$$[$0-2],expression:$$[$0]});break;case 511:this.$=true;break;case 512:this.$=false;break;case 513:this.$=new yy.CommitTransaction;break;case 514:this.$=new yy.RollbackTransaction;break;case 515:this.$=new yy.BeginTransaction;break;case 516:this.$=new yy.If({expression:$$[$0-2],thenstat:$$[$0-1],elsestat:$$[$0]});if($$[$0-1].exists)this.$.exists=$$[$0-1].exists;if($$[$0-1].queries)this.$.queries=$$[$0-1].queries;break;case 517:this.$=new yy.If({expression:$$[$0-1],thenstat:$$[$0]});if($$[$0].exists)this.$.exists=$$[$0].exists;if($$[$0].queries)this.$.queries=$$[$0].queries;break;case 518:this.$=$$[$0];break;case 519:this.$=new yy.While({expression:$$[$0-1],loopstat:$$[$0]});if($$[$0].exists)this.$.exists=$$[$0].exists;if($$[$0].queries)this.$.queries=$$[$0].queries;break;case 520:this.$=new yy.Continue;break;case 521:this.$=new yy.Break;break;case 522:this.$=new yy.BeginEnd({statements:$$[$0-1]});break;case 523:case 524:this.$=new yy.Print({statement:$$[$0]});break;case 525:this.$=new yy.Require({paths:$$[$0]});break;case 528:this.$=new yy.Declare({declares:$$[$0]});break;case 531:this.$={variable:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 532:this.$={variable:$$[$0-2]};yy.extend(this.$,$$[$0]);break;case 533:this.$={variable:$$[$0-3],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 534:this.$={variable:$$[$0-4],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 535:this.$=new yy.TruncateTable({table:$$[$0]});break;case 536:this.$=new yy.Merge;yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 537:case 538:this.$={into:$$[$0]};break;case 540:this.$={on:$$[$0]};break;case 545:this.$={matched:true,action:$$[$0]};break;case 546:this.$={matched:true,expr:$$[$0-2],action:$$[$0]};break;case 547:this.$={"delete":true};break;case 548:this.$={update:$$[$0]};break;case 549:case 550:this.$={matched:false,bytarget:true,action:$$[$0]};break;case 551:case 552:this.$={matched:false,bytarget:true,expr:$$[$0-2],action:$$[$0]};break;case 553:this.$={matched:false,bysource:true,action:$$[$0]};break;case 554:this.$={matched:false,bysource:true,expr:$$[$0-2],action:$$[$0]};break;case 555:this.$={insert:true,values:$$[$0]};break;case 556:this.$={insert:true,values:$$[$0],columns:$$[$0-3]};break;case 557:this.$={insert:true,defaultvalues:true};break;case 558:this.$={insert:true,defaultvalues:true,columns:$$[$0-3]};break;case 560:this.$={output:{columns:$$[$0]}};break;case 561:this.$={output:{columns:$$[$0-3],intovar:$$[$0]}};break;case 562:this.$={output:{columns:$$[$0-2],intotable:$$[$0]}};break;case 563:this.$={output:{columns:$$[$0-5],intotable:$$[$0-3],intocolumns:$$[$0-1]}};break}},table:[o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{253:[1,141]},{3:142,4:$VB,5:$VC},o($V71,[2,366],{3:144,252:147,4:$VB,5:$VC,78:[1,146],86:[1,145],262:[1,148],263:[1,149],301:[1,143]}),{193:$V81,341:150,342:151},{97:[1,153]},{301:[1,154]},{3:156,4:$VB,5:$VC,86:[1,157],253:[1,158],301:[1,155],309:[1,159]},o($V91,[2,338],{244:160,91:[1,161]}),{253:[1,162]},o($Va1,[2,75],{67:163,91:[1,164]}),{3:174,4:$VB,5:$VC,64:$Vb1,91:[1,167],92:169,93:171,94:170,95:172,96:$Vc1,104:166,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01,345:165},{3:179,4:$VB,5:$VC,60:177,62:178},{3:183,4:$VB,5:$VC,86:[1,184],251:[1,180],306:[1,182],307:[1,185],308:[1,181]},{253:[1,186]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:188,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,187],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,189]},{330:[1,190]},{3:192,4:$VB,5:$VC,301:[1,191]},{3:194,4:$VB,5:$VC,92:193},o($VA,[2,466],{153:195,96:$VE,191:$VV}),o($Ve1,[2,217]),{96:$VE,153:196,191:$VV},{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:[1,199],152:$VF,153:202,159:203,160:204,164:197,171:198,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:209,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,520]),o($VA,[2,521]),{3:106,4:$VB,5:$VC,33:210,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:212,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:211,314:126,315:$V51,319:$V61},{96:$VE,153:214,191:$VV,339:213},{3:215,4:$VB,5:$VC,193:[1,216]},o($Vh1,$Vi1,{76:220,75:[1,217],78:[1,218],79:[1,219],88:$Vj1}),o($Vk1,[2,63],{81:[1,222],82:[1,223],83:[1,224],84:[1,225],85:[1,226],86:[1,227],87:[1,228]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:230,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,231]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:232,225:252,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Ve1,[2,199]),o($Ve1,[2,200]),o($Ve1,[2,201]),o($Ve1,[2,202]),o($Ve1,[2,203]),o($Ve1,[2,204]),o($Ve1,[2,205]),o($Ve1,[2,206]),o($Ve1,[2,207]),o($Ve1,[2,208]),o($Ve1,[2,209]),o($Ve1,[2,210]),o($Ve1,[2,211]),o($Ve1,[2,212]),o($Ve1,[2,213]),o($Ve1,[2,214]),{3:106,4:$VB,5:$VC,33:261,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:262,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,216]),{64:[1,263]},o($Ve1,$VM1,{64:$VN1,106:[1,265]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:268,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,194]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,260,261,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,253]),o($VO1,[2,254]),o($VO1,[2,255]),o($VO1,$VP1),o($VO1,[2,257]),o($VO1,[2,258]),{3:269,4:$VB,5:$VC},{3:270,4:$VB,5:$VC},o($VQ1,[2,263]),o($VQ1,[2,264]),{3:271,4:$VB,5:$VC,64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},{64:[1,278]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:279,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:280,203:281,204:$VS1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,283]},{64:[1,284]},o($VT1,[2,477]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:285,317:288,318:290,319:$V61,322:286,323:[1,287]},{3:300,4:$VB,5:$VC,93:301},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},{64:[2,248]},o($VV1,[2,1]),o($VV1,[2,2]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,320:302,321:[1,303],324:304},{3:194,4:$VB,5:$VC,92:308},{301:[1,309]},o($V91,$VY1,{254:310,264:$VZ1}),{301:[1,312]},{3:313,4:$VB,5:$VC},{86:[1,314]},{253:[1,315],309:[1,316]},o($V71,[2,367]),o($V71,[2,368]),o($VA,[2,528],{61:[1,317]}),o($V_1,[2,529]),{3:318,4:$VB,5:$VC},{3:194,4:$VB,5:$VC,92:319},{3:320,4:$VB,5:$VC},o($V91,$V$1,{294:321,264:$V02}),{301:[1,323]},{3:324,4:$VB,5:$VC},o($V91,$V$1,{294:325,264:$V02}),o($V91,$V$1,{294:326,264:$V02}),{3:194,4:$VB,5:$VC,92:327},o($V91,[2,339]),{3:194,4:$VB,5:$VC,92:328},o($V12,[2,84],{68:329,97:[1,330]}),{3:174,4:$VB,5:$VC,92:331,93:332,94:333,95:334,96:[1,335],193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,337],346:336},{122:[2,537]},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:338,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:339,66:59,74:79,80:$V4},o($V22,[2,96],{3:340,4:$VB,5:$VC,63:[1,341]}),o($V22,[2,99],{3:342,4:$VB,5:$VC,63:[1,343]}),o($V22,[2,100],{3:344,4:$VB,5:$VC,63:[1,345]}),o($V22,[2,103],{3:346,4:$VB,5:$VC,63:[1,347]}),o($V22,[2,106],{3:348,4:$VB,5:$VC,63:[1,349]}),o([4,5,8,9,11,61,63,65,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32,{64:$VN1,106:$V42}),{3:271,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,109]),{33:351,61:[1,352],66:59,74:79,80:$V4},o($V52,[2,56]),{63:[1,353]},{253:[1,354]},{97:[1,355]},o($VA,[2,448],{207:[1,356]}),{306:[1,357]},{97:[1,358]},o($VA,[2,452],{97:[1,360],207:[1,359]}),{3:194,4:$VB,5:$VC,92:361},o($VA,[2,515]),{9:$Vx,11:$Vy,202:[1,362]},o($VA,[2,513]),o($VA,[2,514]),{3:363,4:$VB,5:$VC},o($VA,[2,441]),{239:[1,364]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V32,{106:$V42}),o($VA,[2,465]),o($VA,[2,468]),o($VA,[2,469]),o($VA,[2,470]),o($VA,$VP1,{61:[1,365]}),{64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},o($V62,[2,224]),o($V62,[2,225]),o($V62,[2,226]),o($V62,[2,227]),o($V62,[2,228]),o($V62,[2,229]),o($V62,[2,230]),{64:$VN1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:252,10:366,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,523]),o($VA,[2,524]),o($VA,[2,467],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,525],{61:[1,367]}),o($V_1,[2,527]),{120:[1,369],325:368,328:[1,370]},{3:371,4:$VB,5:$VC},o($Vh1,$Vi1,{76:372,88:$Vj1}),o($Vh1,$Vi1,{76:373,88:$Vj1}),o($Vh1,$Vi1,{76:374,88:$Vj1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:375,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,379],89:378,152:$VF},o($Vk1,[2,64]),o($Vk1,[2,65]),o($Vk1,[2,66]),o($Vk1,[2,67]),o($Vk1,[2,68]),o($Vk1,[2,69]),o($Vk1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:380,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,517],{333:381,206:[1,382]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:390,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:391,4:$VB,5:$VC,64:[1,393],89:392,93:394,152:$VF},o($V72,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:399,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:401,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V72,[2,322],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:402,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:404,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,406],226:405,236:[1,407],237:[1,408]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:410,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:299,4:$VB,5:$VC,64:[1,411],93:414,156:413,193:$V82,231:412},{230:[1,416]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:419,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:420,289:$Va2},{65:[1,423]},{65:[1,424],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,426],79:[1,427],89:92,93:88,94:96,95:97,96:$VE,121:425,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,429],89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:428,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:431,4:$VB,5:$VC,81:$Vb2,155:[1,433]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,298],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,234:$VK1}),o($Vc2,[2,299],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,300],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($VQ1,[2,261]),o($VQ1,[2,262]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,259]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:434,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,473]),o($VT1,[2,474]),o($VT1,[2,475]),o($VT1,[2,476]),o($VT1,[2,478]),{33:435,66:59,74:79,80:$V4},{155:$Vl1,200:436,203:281,204:$VS1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{201:437,202:$Vd2,203:438,204:$VS1,206:$Ve2},o($Vf2,[2,268]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:441,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:442,289:$Va2},o($VT1,[2,479]),{61:[1,444],323:[1,443]},o($VT1,[2,495]),o($Vg2,[2,502]),o($Vh2,[2,480]),o($Vh2,[2,481]),o($Vh2,[2,482]),o($Vh2,[2,483]),o($Vh2,[2,484]),o($Vh2,[2,485]),o($Vh2,[2,486]),o($Vh2,[2,487]),o($Vh2,[2,488]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:445,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,$VM1,{64:$VN1,106:$Vi2}),o($Ve1,[2,218],{64:$VN1}),o($Ve1,[2,219]),{61:[1,448],321:[1,447]},o($VT1,[2,492]),o($Vj2,[2,497]),{196:[1,449]},{196:[1,450]},{196:[1,451]},{293:[1,455],296:[1,452],298:[1,453],299:[1,454]},{3:456,4:$VB,5:$VC},{3:457,4:$VB,5:$VC},{229:[1,458]},o($Vk2,$VY1,{254:459,264:$VZ1}),{120:[1,460]},{3:461,4:$VB,5:$VC},o($V91,$VY1,{254:462,264:$VZ1}),o($V91,$VY1,{254:463,264:$VZ1}),{193:$V81,342:464},{4:$V92,63:[1,466],169:465,289:$Va2},o($VA,[2,332],{124:[1,467]}),o($VA,[2,433]),{3:468,4:$VB,5:$VC},{194:[1,469]},o($Vk2,$V$1,{294:470,264:$V02}),o($VA,[2,447]),{3:194,4:$VB,5:$VC,92:471},{3:194,4:$VB,5:$VC,92:472},{33:476,64:[1,475],66:59,74:79,80:$V4,245:[1,473],247:[1,474]},{297:[1,477]},o($Vl2,[2,146],{69:478,124:[1,479]}),{3:174,4:$VB,5:$VC,64:[1,481],92:169,93:171,94:170,95:172,96:$Vc1,98:480,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($Va1,[2,76]),o($Va1,[2,77]),o($Va1,[2,78]),o($Va1,[2,79]),o($Va1,[2,80]),{120:[1,484],347:483},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:485,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,538]},{65:[1,486]},o($V22,[2,94]),{3:487,4:$VB,5:$VC},o($V22,[2,97]),{3:488,4:$VB,5:$VC},o($V22,[2,101]),{3:489,4:$VB,5:$VC},o($V22,[2,104]),{3:490,4:$VB,5:$VC},o($V22,[2,107]),{3:491,4:$VB,5:$VC},{3:492,4:$VB,5:$VC},o($VA,[2,54]),{3:179,4:$VB,5:$VC,62:493},{64:[1,494]},{3:194,4:$VB,5:$VC,92:495},{3:194,4:$VB,5:$VC,92:496},{96:$VE,153:497,191:$VV},o($VA,[2,450],{207:[1,498]}),{3:194,4:$VB,5:$VC,92:499},{96:$VE,153:500,191:$VV},{3:501,4:$VB,5:$VC},o($VA,[2,535]),o($VA,[2,522]),o($VA,[2,440]),{3:505,4:$VB,5:$VC,156:504,240:502,241:503},{164:506,193:$Vg1,314:126,315:$V51,319:$V61},o($VA,[2,519]),{96:$VE,153:507,191:$VV},o($VA,[2,503]),o($VA,[2,511]),o($VA,[2,512]),{214:[1,510],219:[1,508],326:509},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:512,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:513,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vm2,[2,62],{61:$Vn2}),o($Vo2,$Vp2,{149:515,150:$Vq2,151:$Vr2}),o($Vs2,[2,191],{225:252,3:519,153:521,4:$VB,5:$VC,63:[1,518],96:$VE,152:[1,520],155:$Vl1,191:$VV,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vh1,[2,71],{90:[1,522]}),{89:523,152:$VF},o($Vz,[2,9]),o($VA,[2,516]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:524,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vt2,[2,272],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vt2,[2,273],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,274],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,275],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vu2,[2,276],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,277],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,278],{225:252,213:$Vs1,214:$Vt1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,279],{225:252,214:$Vt1}),o($Ve1,[2,280],{64:$VN1}),o($Ve1,[2,281]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:525,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,283]),o($Vv2,[2,284],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,285],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,286],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,287],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,288],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,289],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,290],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,291],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,292],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,293],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),{64:[1,526]},{64:[2,323]},{64:[2,324]},{64:[2,325]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1}),{3:106,4:$VB,5:$VC,33:527,49:104,64:$VD,65:[1,529],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:528,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,308]),o($Ve1,[2,314]),o($Ve1,[2,315]),{64:[1,530]},{3:299,4:$VB,5:$VC,64:[1,531],93:414,156:413,193:$V82,231:532},o($Vw2,[2,310],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o($Vw2,[2,311],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,312],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Ve1,[2,313]),o($Vx2,[2,404],{64:[1,533]}),{64:[1,534]},o($Ve1,[2,215]),o($Ve1,[2,301]),{65:[1,535],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:536,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:537,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vy2,65:[1,538]},o($VQ1,[2,250]),o($Vz2,[2,251],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,$VA2,{106:[1,540]}),o($VT1,[2,197]),o($Ve1,[2,193]),{65:[1,541],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,542]},{201:543,202:$Vd2,203:438,204:$VS1,206:$Ve2},{202:[1,544]},o($Vf2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:545,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vl1,205:[1,546],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{63:[1,547],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{61:[1,548]},o($VT1,[2,493]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:550,318:290,319:$V61,323:[1,549]},{65:[1,551],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:552,4:$VB,5:$VC,81:$Vb2},o($VT1,[2,490]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,321:[1,553],324:554},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:556,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:557,318:290,319:$V61},{83:[1,559],297:[1,558]},{83:[1,560]},{83:[1,561]},{83:[1,562]},o($VA,[2,429],{63:[1,564],64:[1,563]}),o($VA,[2,434]),{194:[1,565]},{3:566,4:$VB,5:$VC,96:$VE,153:567,191:$VV},{3:194,4:$VB,5:$VC,92:568},{120:[1,569]},{3:194,4:$VB,5:$VC,92:570},{3:194,4:$VB,5:$VC,92:571},o($V_1,[2,530]),o($V_1,[2,531],{219:[1,572]}),{4:$V92,169:573,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:574,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,442]),o($Vk2,[2,422]),{3:575,4:$VB,5:$VC,96:$VE,153:576,191:$VV},o($VA,[2,420]),o($VA,[2,464]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:577,314:126,315:$V51,319:$V61},{245:[1,581]},{3:505,4:$VB,5:$VC,123:582,156:583},o($VA,[2,336]),{3:584,4:$VB,5:$VC},o($VC2,[2,148],{70:585,125:[1,586]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:587,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V12,[2,81],{99:588,107:590,100:591,108:592,111:595,61:$VD2,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,33:339,64:$Vb1,66:59,74:79,80:$V4,92:169,93:171,94:170,95:172,96:$Vc1,98:604,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($VO2,[2,89]),{204:$VP2,348:605,350:606,351:607},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:609,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,539]},o($V22,[2,93],{3:610,4:$VB,5:$VC,63:[1,611]}),o($V22,[2,95]),o($V22,[2,98]),o($V22,[2,102]),o($V22,[2,105]),o($V22,[2,108]),o([4,5,8,9,11,61,63,64,65,80,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,110]),o($V52,[2,55]),{33:612,66:59,74:79,80:$V4},o($VA,[2,460],{97:[1,613]}),o($VA,[2,456],{97:[1,614]}),o($VA,[2,449]),{96:$VE,153:615,191:$VV},o($VA,[2,458],{97:[1,616]}),o($VA,[2,453]),o($VA,[2,454],{207:[1,617]}),o($VA,[2,327],{61:$VQ2,124:[1,618]}),o($VR2,[2,328]),{219:[1,620]},o([8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VM1,{106:$Vi2}),o($VA,[2,471]),o($V_1,[2,526]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:621,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,623],219:[1,622]},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:624},o($Vm2,[2,59],{61:$Vn2}),o($Vm2,[2,60],{61:$Vn2}),o($Vm2,[2,61],{61:$Vn2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:377,148:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,[2,180]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:629,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:630,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:631,4:$VB,5:$VC,96:$VE,152:[1,632],153:633,191:$VV},o($Vs2,[2,186]),o($Vs2,[2,188]),o($Vs2,[2,190]),o($Vh1,[2,73]),{65:[1,634]},o($VA,[2,518]),{65:[1,635],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,33:636,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:637,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,638]},{61:$Vy2,65:[1,639]},o($Ve1,[2,306]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:640,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:641,49:104,64:$VD,65:[1,643],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:642,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,309]),{152:[1,644]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:645,314:126,315:$V51,319:$V61},o($Ve1,$VU2,{174:647,175:$VV2}),{65:[1,649],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,650],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($VQ1,[2,249]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:651,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:652,4:$VB,5:$VC,155:[1,653]},o($VT1,[2,472]),o($Ve1,[2,260]),{202:[1,654]},o($Ve1,[2,266]),{155:$Vl1,202:[2,270],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:656,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:657,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,494]),o($Vg2,[2,501]),o($Vh2,[2,489]),o($VT1,$VA2,{106:[1,658]}),o($VT1,[2,491]),o($Vj2,[2,496]),o($Vj2,[2,498]),o($Vj2,[2,499]),o($Vj2,[2,500]),{3:659,4:$VB,5:$VC},{3:660,4:$VB,5:$VC},{3:662,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC,286:663},{3:664,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:665,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:666,4:$VB,5:$VC},o($Vk2,[2,370]),o($VA,$VW2,{303:667,63:$VX2,64:[1,668]}),o($VA,$VW2,{303:670,63:$VX2}),{64:[1,671]},{3:194,4:$VB,5:$VC,92:672},o($VA,[2,357],{64:[1,673]}),{63:[1,675],64:[1,674]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:676,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V_1,[2,532],{219:[1,677]}),o($VA,[2,331],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,443]),o($VA,[2,444]),o($VA,[2,333],{61:$VY2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:679,314:126,315:$V51,319:$V61},o($VZ2,[2,341]),o($VZ2,[2,342]),o($VA,[2,334]),{61:$V_2,65:[1,680]},o($VO2,[2,354]),o($VA,[2,428]),o($V$2,[2,167],{71:682,139:[1,683]}),{126:[1,684]},o($Vl2,[2,147],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V12,[2,82],{108:592,111:595,107:685,100:686,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:687,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V03,[2,114]),o($V03,[2,115]),{3:174,4:$VB,5:$VC,64:[1,691],92:689,93:692,94:690,95:693,109:688,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{102:[1,694],113:$V13},{102:[1,696],113:$V23},o($V33,[2,130]),{101:[1,700],103:[1,699],111:698,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($V33,[2,132]),{113:[1,701]},{103:[1,703],113:[1,702]},{103:[1,705],113:[1,704]},{103:[1,706]},{113:[1,707]},{113:[1,708]},{61:$VD2,99:709,100:591,101:$VE2,103:$VF2,107:590,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,559],{349:710,350:711,351:712,204:$VP2,356:[1,713]}),o($V43,[2,543]),o($V43,[2,544]),{229:[1,715],352:[1,714]},{155:$Vl1,204:[2,540],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V22,[2,91]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,451]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,156:504,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,504],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:726},o($V53,[2,507]),o($V53,[2,508]),o($V53,[2,509]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,$Vp2,{149:728,150:$Vq2,151:$Vr2}),o($Vo2,[2,182],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vo2,[2,183],{225:252,150:[1,729],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vs2,[2,185]),o($Vs2,[2,187]),o($Vs2,[2,189]),o($Vh1,[2,72]),o($Ve1,[2,282]),{65:[1,730]},{61:$Vy2,65:[1,731]},o($Ve1,[2,302]),o($Ve1,[2,304]),{65:[1,732],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,733]},{61:$Vy2,65:[1,734]},o($Ve1,[2,307]),{61:[1,735],65:[1,736]},{61:$V63,65:[1,737]},o($Vz2,[2,346],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,[2,231]),{64:[1,739]},o($Ve1,$VU2,{174:740,175:$VV2}),o($Ve1,$VU2,{174:741,175:$VV2}),o($Vz2,[2,252],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VT1,[2,195]),o($Ve1,[2,192]),o($Ve1,[2,265]),o($Vf2,[2,269],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:652,4:$VB,5:$VC},o($VA,[2,423]),{297:[1,746]},o($VA,[2,424]),o($V73,[2,401],{169:747,4:$V92,288:[1,748],289:$Va2}),o($VA,[2,425]),o($VA,[2,427]),{61:$Vy2,65:[1,749]},o($VA,[2,431]),o($VA,[2,435]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,437]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:752,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,755]},{3:662,4:$VB,5:$VC,63:[1,758],255:756,265:757,286:759},{3:505,4:$VB,5:$VC,123:760,156:583},{33:761,66:59,74:79,80:$V4},o($V_1,[2,533],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:762,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,763],94:765,164:764,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V63,65:[1,766]},{33:768,66:59,74:79,80:$V4,245:[1,767]},{3:505,4:$VB,5:$VC,156:769},o($V83,[2,175],{72:770,145:[1,771]}),{126:[1,772]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:773,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,112]),o($V03,[2,113]),o($VO2,[2,90]),o($V03,[2,145],{110:779,120:[1,780],122:[1,781]}),o($Vc3,[2,117],{3:782,4:$VB,5:$VC,63:[1,783]}),{3:784,4:$VB,5:$VC,63:[1,785]},{33:786,66:59,74:79,80:$V4},o($Vc3,[2,124],{3:787,4:$VB,5:$VC,63:[1,788]}),o($Vc3,[2,127],{3:789,4:$VB,5:$VC,63:[1,790]}),{64:[1,791]},o($V33,[2,142]),{64:[1,792]},o($V33,[2,138]),o($V33,[2,131]),{113:$V23},{113:$V13},o($V33,[2,133]),o($V33,[2,134]),{113:[1,793]},o($V33,[2,136]),{113:[1,794]},{113:[1,795]},o($V33,[2,140]),o($V33,[2,141]),{65:[1,796],100:686,101:$VE2,103:$VF2,107:685,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,536]),o($V43,[2,541]),o($V43,[2,542]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:797,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,798],227:[1,799]},{352:[1,800]},o($V22,[2,92]),o($V52,[2,57]),o($VA,[2,461]),o($VA,[2,457]),o($VA,[2,459]),o($VA,[2,455]),o($VA,[2,326],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VR2,[2,329]),o($VR2,[2,330],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,505],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V53,[2,506]),{65:[1,801],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:802,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,294]),o($Ve1,[2,295]),o($Ve1,[2,316]),o($Ve1,[2,303]),o($Ve1,[2,305]),{152:[1,803]},o($Vx2,[2,403]),o($Vx2,[2,405]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:804,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:805,177:806,178:[1,807]},o($Ve1,[2,232]),o($Ve1,[2,233]),o($Ve1,[2,220]),{152:[1,809]},o($Ve1,[2,222]),{152:[1,810]},{3:811,4:$VB,5:$VC},o($V73,[2,406],{287:812,290:813,291:814,273:823,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V73,[2,400]),o($VA,[2,430],{63:[1,825]}),{61:$Vy2,65:[1,826]},o($VA,[2,439]),{61:$Vn3,65:[1,827]},o($Vo3,[2,169]),o($Vo3,[2,171],{225:252,142:[1,829],143:[1,830],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:831,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,832]},{61:[1,833],65:[2,372]},{33:834,66:59,74:79,80:$V4},o($Vz2,[2,397]),{61:$V_2,65:[1,835]},o($VA,[2,463]),o($V_1,[2,534],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:836,314:126,315:$V51,319:$V61},o($VZ2,[2,344]),o($VZ2,[2,345]),o($VZ2,[2,340]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:837,314:126,315:$V51,319:$V61},o($VA,[2,337]),o($VO2,[2,355]),o($Vp3,[2,158],{73:838,135:[1,839],136:[1,840],137:[1,841]}),{89:842,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:843,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,156],{128:844,61:$Vq3,134:[1,846]}),o($Vr3,[2,150]),{131:[1,847]},{64:[1,848]},{64:[1,849]},o($Vr3,[2,155],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,116]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:850,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:851,156:583},o($Vc3,[2,118]),{3:852,4:$VB,5:$VC},o($Vc3,[2,120]),{3:853,4:$VB,5:$VC},{65:[1,854]},o($Vc3,[2,125]),{3:855,4:$VB,5:$VC},o($Vc3,[2,128]),{3:856,4:$VB,5:$VC},{33:857,66:59,74:79,80:$V4},{33:858,66:59,74:79,80:$V4},o($V33,[2,135]),o($V33,[2,137]),o($V33,[2,139]),o($V12,[2,83]),o($VA,[2,560],{61:$Vn2,91:[1,859]}),{238:$Vs3,242:$Vt3,353:860},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:863,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,865],205:[1,864],227:[1,866]},o($V53,[2,510]),o($Vo2,[2,184],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,867]},o($Vz2,[2,347],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,868],139:$Vd3,177:869},{65:[1,870]},{126:[1,871]},{126:[1,872]},{65:[1,873]},{65:[1,874]},o($VA,[2,426]),o($V73,[2,399]),o($V73,[2,407],{273:823,291:875,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V62,[2,409]),{277:[1,876]},{277:[1,877]},{3:878,4:$VB,5:$VC},o($V62,[2,413]),o($V62,[2,415],{64:[1,879]}),{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:$VE,152:$VF,153:202,159:203,160:204,171:880,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V62,[2,417]),{192:[1,881]},o($V62,[2,419]),{64:[1,882]},{3:883,4:$VB,5:$VC},o($VA,$VW2,{303:884,63:$VX2}),o($VA,[2,445]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,141:885,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo3,[2,172]),{144:[1,886]},{61:$Vn3,65:[1,887]},o($VA,[2,358],{256:888,257:889,258:890,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($Vy3,$Vz3,{3:662,266:895,286:896,267:897,268:898,4:$VB,5:$VC,274:$VA3}),{65:[2,373]},{63:[1,900]},{61:$V63,65:[1,901]},o($VA,[2,335],{61:$VY2}),o($Vp3,[2,58]),{33:902,66:59,74:79,79:[1,903],80:$V4,138:[1,904]},{33:905,66:59,74:79,80:$V4,138:[1,906]},{33:907,66:59,74:79,80:$V4,138:[1,908]},o($V83,[2,177],{146:909,147:[1,910]}),o($V$2,[2,168],{61:$Vn3}),o($VC2,[2,149]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,129:911,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:912,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,913]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:914,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:915,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,143],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,144],{61:$V_2}),o($Vc3,[2,119]),o($Vc3,[2,121]),{3:916,4:$VB,5:$VC,63:[1,917]},o($Vc3,[2,126]),o($Vc3,[2,129]),{65:[1,918]},{65:[1,919]},{3:194,4:$VB,5:$VC,92:921,193:[1,920]},o($V43,[2,545]),o($V43,[2,547]),{239:[1,922]},{155:$Vl1,205:[1,923],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{243:$VB3,354:924},{312:[1,927],355:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:928,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vx2,[2,402]),o($Ve1,[2,235]),{65:[1,929]},o($Ve1,[2,236]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:930,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:931,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,221]),o($Ve1,[2,223]),o($V62,[2,408]),o($V62,[2,410]),{280:[1,932]},{64:[1,933]},{89:934,152:$VF},o($V62,[2,416]),o($V62,[2,418]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:935,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,432]),o($VA,[2,436]),o($Vo3,[2,170]),o($Vo3,[2,173],{142:[1,936]}),o($VA,[2,446]),o($VA,[2,356]),o($VA,[2,359],{258:937,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($VC3,[2,361]),o($VC3,[2,362]),{219:[1,938]},{219:[1,939]},{219:[1,940]},{61:[1,941],65:[2,371]},o($Vz2,[2,398]),o($Vz2,[2,374]),{78:[1,949],86:[1,950],269:942,270:943,271:944,272:945,273:946,275:$Vi3,276:[1,947],277:[1,951],279:[1,948]},{3:952,4:$VB,5:$VC},{33:953,66:59,74:79,80:$V4},o($VZ2,[2,343]),o($Vp3,[2,159]),{33:954,66:59,74:79,80:$V4,138:[1,955]},{33:956,66:59,74:79,80:$V4},o($Vp3,[2,161]),{33:957,66:59,74:79,80:$V4},o($Vp3,[2,162]),{33:958,66:59,74:79,80:$V4},o($V83,[2,176]),{89:959,152:$VF},o($Vr3,[2,151]),o($VC2,[2,157],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:960,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vq3,65:[1,961]},{61:$Vq3,65:[1,962]},o($Vc3,[2,122]),{3:963,4:$VB,5:$VC},{3:964,4:$VB,5:$VC,63:[1,965]},{3:966,4:$VB,5:$VC,63:[1,967]},{3:968,4:$VB,5:$VC},o($VA,[2,562],{64:[1,969]}),{3:505,4:$VB,5:$VC,156:504,240:970,241:503},{238:$Vs3,242:$Vt3,353:971},o($V43,[2,549]),{64:[1,973],245:[1,972],247:[1,974]},{205:[1,975],227:[1,976]},{205:[1,977],227:[1,978]},{155:$Vl1,205:[1,979],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Ve1,[2,237]),o([65,139],[2,238],{61:$Vq3}),{61:$Vn3,65:[2,239]},{3:980,4:$VB,5:$VC},{3:981,4:$VB,5:$VC},{61:[1,982]},{65:[1,983],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo3,[2,174]),o($VC3,[2,360]),{3:984,4:$VB,5:$VC},{89:985,152:$VF},{3:986,4:$VB,5:$VC},o($Vy3,$Vz3,{268:898,267:987,274:$VA3}),o($Vz2,[2,376]),o($Vz2,[2,377]),o($Vz2,[2,378]),o($Vz2,[2,379]),o($Vz2,[2,380]),{277:[1,988]},{277:[1,989]},o($Vz2,[2,390]),{3:990,4:$VB,5:$VC},{3:991,4:$VB,5:$VC},o($Vy3,[2,382]),o($VA,[2,462]),o($Vp3,[2,160]),{33:992,66:59,74:79,80:$V4},o($Vp3,[2,163]),o($Vp3,[2,165]),o($Vp3,[2,166]),o($V83,[2,178]),{61:$Vq3,65:[1,993]},o($Vr3,[2,153]),o($Vr3,[2,154]),o($Vc3,[2,123]),o($V03,[2,85]),{3:994,4:$VB,5:$VC},o($V03,[2,87]),{3:995,4:$VB,5:$VC},o($VA,[2,561]),{3:505,4:$VB,5:$VC,123:996,156:583},o($V43,[2,548],{61:$VQ2}),o($V43,[2,546]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:997,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:998,156:583},{245:[1,999]},{243:$VB3,354:1e3},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1001,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1004},{64:[1,1005]},{65:[1,1006]},{89:1007,152:$VF},o($V62,[2,383]),o($VC3,[2,363]),o($VC3,[2,364]),o($VC3,[2,365]),o($Vz2,[2,375]),{64:[1,1008]},{64:[1,1009]},{64:[1,1010]},{64:[1,1011]},o($Vp3,[2,164]),o($Vr3,[2,152]),o($V03,[2,86]),o($V03,[2,88]),{61:$V_2,65:[1,1012]},o($V43,[2,555],{61:$VY2}),{61:$V_2,65:[1,1013]},o($V43,[2,557]),o($V43,[2,550]),{155:$Vl1,205:[1,1014],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,553]),{155:$Vl1,205:[1,1015],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,551]),{3:1016,4:$VB,5:$VC},o($V62,[2,412]),{65:[1,1017]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1018},{3:1019,4:$VB,5:$VC,96:$VD3,278:1021},{3:505,4:$VB,5:$VC,123:1022,156:583},{3:505,4:$VB,5:$VC,123:1023,156:583},o($VA,[2,563]),{245:[1,1024],247:[1,1025]},{243:$VB3,354:1026},{238:$Vs3,242:$Vt3,353:1027},{65:[1,1028]},o($V62,[2,414]),{61:$VE3,65:[1,1029]},o($Vz2,[2,393]),o($Vz2,[2,394]),{61:$VE3,65:[1,1031]},{61:$V_2,65:[1,1032]},{61:$V_2,65:[1,1033]},{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1034,314:126,315:$V51,319:$V61},{245:[1,1035]},o($V43,[2,552]),o($V43,[2,554]),o($V62,[2,411]),o($Vz2,[2,384]),{3:1036,4:$VB,5:$VC,96:[1,1037]},{280:[1,1038]},o($Vz2,[2,391]),o($Vz2,[2,392]),o($V43,[2,556],{61:$VY2}),o($V43,[2,558]),o($Vz2,[2,395]),o($Vz2,[2,396]),{3:1039,4:$VB,5:$VC},{64:[1,1040]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1041},{61:$VE3,65:[1,1042]},o($Vz2,[2,386],{281:1043,282:1044,120:[1,1045]}),o($Vz2,[2,385]),{120:[1,1047],283:1046},{242:[1,1048]},o($Vz2,[2,387]),{238:[1,1049]},{284:[1,1050]},{284:[1,1051]},{285:[1,1052]},{285:[1,1053]},{120:[2,388]},o($Vz2,[2,389])],defaultActions:{81:[2,3],129:[2,240],130:[2,241],131:[2,242],132:[2,243],133:[2,244],134:[2,245],135:[2,246],136:[2,247],137:[2,248],166:[2,537],338:[2,538],406:[2,323],407:[2,324],408:[2,325],485:[2,539],834:[2,373],1052:[2,388]},parseError:function parseError(str,hash){if(hash.recoverable){this.trace(str) +}else{throw new Error(str)}},parse:function parse(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1;var args=lstack.slice.call(arguments,1);var lexer=Object.create(this.lexer);var sharedState={yy:{}};for(var k in this.yy){if(Object.prototype.hasOwnProperty.call(this.yy,k)){sharedState.yy[k]=this.yy[k]}}lexer.setInput(input,sharedState.yy);sharedState.yy.lexer=lexer;sharedState.yy.parser=this;if(typeof lexer.yylloc=="undefined"){lexer.yylloc={}}var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;if(typeof sharedState.yy.parseError==="function"){this.parseError=sharedState.yy.parseError}else{this.parseError=Object.getPrototypeOf(this).parseError}function popStack(n){stack.length=stack.length-2*n;vstack.length=vstack.length-n;lstack.length=lstack.length-n}_token_stack:function lex(){var token;token=lexer.lex()||EOF;if(typeof token!=="number"){token=self.symbols_[token]||token}return token}var symbol,preErrorSymbol,state,action,a,r,yyval={},p,len,newState,expected;while(true){state=stack[stack.length-1];if(this.defaultActions[state]){action=this.defaultActions[state]}else{if(symbol===null||typeof symbol=="undefined"){symbol=lex()}action=table[state]&&table[state][symbol]}if(typeof action==="undefined"||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state]){if(this.terminals_[p]&&p>TERROR){expected.push("'"+this.terminals_[p]+"'")}}if(lexer.showPosition){errStr="Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'"}else{errStr="Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'")}this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1){throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol)}switch(action[0]){case 1:stack.push(symbol);vstack.push(lexer.yytext);lstack.push(lexer.yylloc);stack.push(action[1]);symbol=null;if(!preErrorSymbol){yyleng=lexer.yyleng;yytext=lexer.yytext;yylineno=lexer.yylineno;yyloc=lexer.yylloc;if(recovering>0){recovering--}}else{symbol=preErrorSymbol;preErrorSymbol=null}break;case 2:len=this.productions_[action[1]][1];yyval.$=vstack[vstack.length-len];yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column};if(ranges){yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]}r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args));if(typeof r!=="undefined"){return r}if(len){stack=stack.slice(0,-1*len*2);vstack=vstack.slice(0,-1*len);lstack=lstack.slice(0,-1*len)}stack.push(this.productions_[action[1]][0]);vstack.push(yyval.$);lstack.push(yyval._$);newState=table[stack[stack.length-2]][stack[stack.length-1]];stack.push(newState);break;case 3:return true}}return true}};var lexer=function(){var lexer={EOF:1,parseError:function parseError(str,hash){if(this.yy.parser){this.yy.parser.parseError(str,hash)}else{throw new Error(str)}},setInput:function(input,yy){this.yy=yy||this.yy||{};this._input=input;this._more=this._backtrack=this.done=false;this.yylineno=this.yyleng=0;this.yytext=this.matched=this.match="";this.conditionStack=["INITIAL"];this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0};if(this.options.ranges){this.yylloc.range=[0,0]}this.offset=0;return this},input:function(){var ch=this._input[0];this.yytext+=ch;this.yyleng++;this.offset++;this.match+=ch;this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno++;this.yylloc.last_line++}else{this.yylloc.last_column++}if(this.options.ranges){this.yylloc.range[1]++}this._input=this._input.slice(1);return ch},unput:function(ch){var len=ch.length;var lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input;this.yytext=this.yytext.substr(0,this.yytext.length-len);this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1);this.matched=this.matched.substr(0,this.matched.length-1);if(lines.length-1){this.yylineno-=lines.length-1}var r=this.yylloc.range;this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len};if(this.options.ranges){this.yylloc.range=[r[0],r[0]+this.yyleng-len]}this.yyleng=this.yytext.length;return this},more:function(){this._more=true;return this},reject:function(){if(this.options.backtrack_lexer){this._backtrack=true}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;if(next.length<20){next+=this._input.substr(0,20-next.length)}return(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput();var c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer){backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done};if(this.options.ranges){backup.yylloc.range=this.yylloc.range.slice(0)}}lines=match[0].match(/(?:\r\n?|\n).*/g);if(lines){this.yylineno+=lines.length}this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length};this.yytext+=match[0];this.match+=match[0];this.matches=match;this.yyleng=this.yytext.length;if(this.options.ranges){this.yylloc.range=[this.offset,this.offset+=this.yyleng]}this._more=false;this._backtrack=false;this._input=this._input.slice(match[0].length);this.matched+=match[0];token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]);if(this.done&&this._input){this.done=false}if(token){return token}else if(this._backtrack){for(var k in backup){this[k]=backup[k]}return false}return false},next:function(){if(this.done){return this.EOF}if(!this._input){this.done=true}var token,match,tempMatch,index;if(!this._more){this.yytext="";this.match=""}var rules=this._currentRules();for(var i=0;imatch[0].length)){match=tempMatch;index=i;if(this.options.backtrack_lexer){token=this.test_match(tempMatch,rules[i]);if(token!==false){return token}else if(this._backtrack){match=false;continue}else{return false}}else if(!this.options.flex){break}}}if(match){token=this.test_match(match,rules[index]);if(token!==false){return token}return false}if(this._input===""){return this.EOF}else{return this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}},lex:function lex(){var r=this.next();if(r){return r}else{return this.lex()}},begin:function begin(condition){this.conditionStack.push(condition)},popState:function popState(){var n=this.conditionStack.length-1;if(n>0){return this.conditionStack.pop()}else{return this.conditionStack[0]}},_currentRules:function _currentRules(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules}else{return this.conditions["INITIAL"].rules}},topState:function topState(n){n=this.conditionStack.length-1-Math.abs(n||0);if(n>=0){return this.conditionStack[n]}else{return"INITIAL"}},pushState:function pushState(condition){this.begin(condition)},stateStackSize:function stateStackSize(){return this.conditionStack.length},options:{"case-insensitive":true},performAction:function anonymous(yy,yy_,$avoiding_name_collisions,YY_START){var YYSTATE=YY_START;switch($avoiding_name_collisions){case 0:return 166;break;case 1:return 198;break;case 2:return 315;break;case 3:return 5;break;case 4:return 5;break;case 5:return 191;break;case 6:return 191;break;case 7:return 96;break;case 8:return 96;break;case 9:return;break;case 10:return;break;case 11:break;case 12:return 228;break;case 13:return 227;break;case 14:return"ABSOLUTE";break;case 15:return 285;break;case 16:return 298;break;case 17:return 186;break;case 18:return 79;break;case 19:return 295;break;case 20:return 227;break;case 21:return 119;break;case 22:return 237;break;case 23:return 102;break;case 24:return 187;break;case 25:return 63;break;case 26:return 313;break;case 27:return 142;break;case 28:return 300;break;case 29:return 260;break;case 30:return 260;break;case 31:return 183;break;case 32:return 332;break;case 33:return 232;break;case 34:return 336;break;case 35:return 233;break;case 36:return 208;break;case 37:return 126;break;case 38:return 199;break;case 39:return 168;break;case 40:return 261;break;case 41:return 275;break;case 42:return"CLOSE";break;case 43:return 143;break;case 44:return"COLUMN";break;case 45:return"COLUMNS";break;case 46:return"COMMIT";break;case 47:return"CONSTRAINT";break;case 48:return"CONTINUE";break;case 49:return"CONVERT";break;case 50:return"CORRESPONDING";break;case 51:return"COUNT";break;case 52:return 251;break;case 53:return"CROSS";break;case 54:return 133;break;case 55:return"CURRENT_TIMESTAMP";break;case 56:return"CURSOR";break;case 57:return 301;break;case 58:return 306;break;case 59:return 340;break;case 60:return 247;break;case 61:return 242;break;case 62:return"DELETED";break;case 63:return 142;break;case 64:return 302;break;case 65:return 75;break;case 66:return 293;break;case 67:return 202;break;case 68:return 259;break;case 69:return 289;break;case 70:return 206;break;case 71:return 136;break;case 72:return 194;break;case 73:return 13;break;case 74:return 190;break;case 75:return"FETCH";break;case 76:return 184;break;case 77:return 279;break;case 78:return 97;break;case 79:return 11;break;case 80:return 125;break;case 81:return 130;break;case 82:return 134;break;case 83:return 310;break;case 84:return 264;break;case 85:return 292;break;case 86:return 234;break;case 87:return 230;break;case 88:return 86;break;case 89:return 114;break;case 90:return 243;break;case 91:return"INSERTED";break;case 92:return 137;break;case 93:return 91;break;case 94:return 113;break;case 95:return 277;break;case 96:return 185;break;case 97:return 115;break;case 98:return 207;break;case 99:return 145;break;case 100:return 312;break;case 101:return"MATCHED";break;case 102:return 84;break;case 103:return"MAX";break;case 104:return"MERGE";break;case 105:return"MIN";break;case 106:return"EXCEPT";break;case 107:return"MODIFY";break;case 108:return 112;break;case 109:return"NEXT";break;case 110:return 167;break;case 111:return 144;break;case 112:return 284;break;case 113:return 229;break;case 114:return 192;break;case 115:return 328;break;case 116:return 120;break;case 117:return 147;break;case 118:return"OPEN";break;case 119:return 228;break;case 120:return 139;break;case 121:return 103;break;case 122:return 175;break;case 123:return 178;break;case 124:return 90;break;case 125:return 15;break;case 126:return 276;break;case 127:return 337;break;case 128:return"PRIOR";break;case 129:return 14;break;case 130:return 87;break;case 131:return"REDUCE";break;case 132:return 280;break;case 133:return"RELATIVE";break;case 134:return 296;break;case 135:return 338;break;case 136:return"RESTORE";break;case 137:return 116;break;case 138:return 331;break;case 139:return 132;break;case 140:return 82;break;case 141:return 301;break;case 142:return 306;break;case 143:return 80;break;case 144:return 118;break;case 145:return 239;break;case 146:return 131;break;case 147:return 305;break;case 148:return 236;break;case 149:return"STORE";break;case 150:return"SUM";break;case 151:return 253;break;case 152:return 307;break;case 153:return 355;break;case 154:return 150;break;case 155:return 263;break;case 156:return 262;break;case 157:return 85;break;case 158:return 151;break;case 159:return 205;break;case 160:return 297;break;case 161:return 88;break;case 162:return"TRAN";break;case 163:return 330;break;case 164:return 189;break;case 165:return 343;break;case 166:return 135;break;case 167:return 78;break;case 168:return 238;break;case 169:return 304;break;case 170:return 122;break;case 171:return 81;break;case 172:return 245;break;case 173:return 309;break;case 174:return 204;break;case 175:return 124;break;case 176:return 334;break;case 177:return 59;break;case 178:return 330;break;case 179:return 152;break;case 180:return 152;break;case 181:return 214;break;case 182:return 209;break;case 183:return 210;break;case 184:return 155;break;case 185:return 211;break;case 186:return 212;break;case 187:return 224;break;case 188:return 221;break;case 189:return 223;break;case 190:return 220;break;case 191:return 216;break;case 192:return 215;break;case 193:return 218;break;case 194:return 222;break;case 195:return 217;break;case 196:return 219;break;case 197:return 222;break;case 198:return 64;break;case 199:return 65;break;case 200:return 193;break;case 201:return 319;break;case 202:return 321;break;case 203:return 323;break;case 204:return 106;break;case 205:return 61;break;case 206:return 235;break;case 207:return 196;break;case 208:return 9;break;case 209:return 195;break;case 210:return 197;break;case 211:return 213;break;case 212:return 4;break;case 213:return 8;break;case 214:return"INVALID";break}},rules:[/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEMP\b)/i,/^(?:TEMPORARY\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],inclusive:true}}};return lexer}();parser.lexer=lexer;function Parser(){this.yy={}}Parser.prototype=parser;parser.Parser=Parser;return new Parser}();if(typeof require!=="undefined"&&typeof exports!=="undefined"){exports.parser=parser;exports.Parser=parser.Parser;exports.parse=function(){return parser.parse.apply(parser,arguments)};exports.main=function commonjsMain(args){if(!args[1]){console.log("Usage: "+args[0]+" FILE");process.exit(1)}var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)};if(typeof module!=="undefined"&&require.main===module){exports.main(process.argv.slice(1))}}alasql.prettyflag=false;alasql.pretty=function(sql,flag){var pf=alasql.prettyflag;alasql.prettyflag=!flag;var s=alasql.parse(sql).toString();alasql.prettyflag=pf;return s};function K(s){if(alasql.prettyflag){return''+s.toUpperCase()+""}else{return s}}function P(s){if(alasql.prettyflag){return''+s+""}else{return s}}function L(s){if(alasql.prettyflag){return''+s+""}else{return s}}function N(s){if(alasql.prettyflag){return''+s+""}else{return s}}function S(s){if(alasql.prettyflag){return''+s+""}else{return s}}function NL(){if(alasql.prettyflag){return"
"}else{return" "}}function ID(){if(alasql.prettyflag){return"     "}else{return""}}var utils=alasql.utils={};function returnTrue(){return true}function returnUndefined(){}var escapeq=utils.escapeq=function(s){return s.replace(/\'/g,"\\'")};var escapeqq=utils.undoubleq=function(s){return s.replace(/(\')/g,"''")};var doubleq=utils.doubleq=function(s){return s.replace(/(\'\')/g,"\\'")};var doubleqq=utils.doubleqq=function(s){return s.replace(/\'/g,"'")};var cutbom=function(s){if(s[0]==String.fromCharCode(65279))s=s.substr(1);return s};var loadFile=utils.loadFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(!path){var buff="";process.stdin.setEncoding("utf8");process.stdin.on("readable",function(){var chunk=process.stdin.read();if(chunk!==null){buff+=chunk.toString()}});process.stdin.on("end",function(){success(cutbom(buff))})}else{if(asy){fs.readFile(path,function(err,data){if(err){throw err}success(cutbom(data.toString()))})}else{var data=fs.readFileSync(path);success(cutbom(data.toString()))}}}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.file(function(file){var fileReader=new FileReader;fileReader.onloadend=function(e){success(cutbom(this.result))};fileReader.readAsText(file)})})})}else{if(typeof path=="string"){if(path.substr(0,1)=="#"&&typeof document!="undefined"){var data=document.querySelector(path).textContent;success(data)}else{var xhr=new XMLHttpRequest;xhr.onreadystatechange=function(){if(xhr.readyState===XMLHttpRequest.DONE){if(xhr.status===200){if(success)success(cutbom(xhr.responseText))}else{if(error)error(xhr)}}};xhr.open("GET",path,asy);xhr.send()}}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(cutbom(data))};reader.readAsText(files[0])}}};var loadBinaryFile=utils.loadBinaryFile=function(path,asy,success,error){if(typeof exports=="object"){var fs=require("fs");if(asy){fs.readFile(path,function(err,data){if(err){throw err}var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))})}else{var data=fs.readFileSync(path);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))}}else{if(typeof path=="string"){var xhr=new XMLHttpRequest;xhr.open("GET",path,asy);xhr.responseType="arraybuffer";xhr.onload=function(){var data=new Uint8Array(xhr.response);var arr=new Array;for(var i=0;i!=data.length;++i)arr[i]=String.fromCharCode(data[i]);success(arr.join(""))};xhr.send()}else if(path instanceof Event){var files=path.target.files;var reader=new FileReader;var name=files[0].name;reader.onload=function(e){var data=e.target.result;success(data)};reader.readAsBinaryString(files[0])}}};var removeFile=utils.removeFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.remove(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){fileEntry.remove(cb);if(cb)cb()},function(){if(cb)cb()})})}else{throw new Error("You can remove files only in Node.js and Apache Cordova")}};var deleteFile=utils.deleteFile=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.unlink(path,cb)}};var fileExists=utils.fileExists=function(path,cb){if(typeof exports=="object"){var fs=require("fs");fs.exists(path,cb)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:false},function(fileEntry){cb(true)},function(){cb(false)})})}else{throw new Error("You can use exists() only in Node.js or Apach Cordova")}};var saveFile=utils.saveFile=function(path,data,cb){var res=1;if(typeof path=="undefined"){res=data;if(cb)res=cb(res)}else{if(typeof exports=="object"){var fs=require("fs");var data=fs.writeFileSync(path,data);if(cb)res=cb(res)}else if(typeof cordova=="object"){window.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem){fileSystem.root.getFile(path,{create:true},function(fileEntry){fileEntry.createWriter(function(fileWriter){fileWriter.onwriteend=function(){if(cb)res=cb(res)};fileWriter.write(data)})})})}else{var blob=new Blob([data],{type:"text/plain;charset=utf-8"});saveAs(blob,path);if(cb)res=cb(res)}}return res};var hash=utils.hash=function hash(str){var h=0;if(str.length==0)return h;for(var i=0;i=26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr;if(i>26){i=(i/26|0)-1;addr=String.fromCharCode(65+i%26)+addr}}return addr};var xlscn=utils.xlscn=function(s){var n=s.charCodeAt(0)-65;if(s.length>1){n=(n+1)*26+s.charCodeAt(1)-65;if(s.length>2){n=(n+1)*26+s.charCodeAt(2)-65}}return n};var domEmptyChildren=utils.domEmptyChildren=function(container){var len=container.childNodes.length;while(len--){container.removeChild(container.lastChild)}};alasql.utils.uncomment=function uncomment(str){str=("__"+str+"__").split("");var quote=false,quoteSign,blockComment=false,lineComment=false;for(var i=0,l=str.length;ialasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement}var res=alasql.res=statement(params,cb,scope);return res}else{alasql.precompile(ast.statements[0],alasql.useid,params);var res=alasql.res=ast.statements[0].execute(databaseid,params,cb,scope);return res}}else{if(cb){alasql.adrun(databaseid,ast,params,cb,scope)}else{return alasql.drun(databaseid,ast,params,cb,scope)}}};alasql.drun=function(databaseid,ast,params,cb,scope){var useid=alasql.useid;if(useid!=databaseid)alasql.use(databaseid);var res=[];for(var i=0,ilen=ast.statements.length;i=0){var source=query.sources[idx];source.data=data;if(typeof source.data=="function"){source.getfn=source.data;source.dontcache=source.getfn.dontcache;if(source.joinmode=="OUTER"||source.joinmode=="RIGHT"||source.joinmode=="ANTI"){source.dontcache=false}source.data={}}}else{query.queriesdata[-idx-1]=flatArray(data)}query.sourceslen--;if(query.sourceslen>0)return;return queryfn3(query)}function queryfn3(query){var scope=query.scope;preIndex(query);query.data=[];query.xgroups={};query.groups=[];var h=0;doJoin(query,scope,h);if(query.groupfn){query.data=[];if(query.groups.length==0){var g={};if(query.selectGroup.length>0){query.selectGroup.forEach(function(sg){if(sg.aggregatorid=="COUNT"||sg.aggregatorid=="SUM"){g[sg.nick]=0}else{g[sg.nick]=undefined}})}query.groups=[g]}for(var i=0,ilen=query.groups.length;i0){for(var i=0,ilen=query.data.length;i0&&source.optimization=="ix"&&source.onleftfn&&source.onrightfn){if(source.databaseid&&alasql.databases[source.databaseid].tables[source.tableid]){if(!alasql.databases[source.databaseid].tables[source.tableid].indices)query.database.tables[source.tableid].indices={};var ixx=alasql.databases[source.databaseid].tables[source.tableid].indices[hash(source.onrightfns+"`"+source.srcwherefns)];if(!alasql.databases[source.databaseid].tables[source.tableid].dirty&&ixx){source.ix=ixx}}if(!source.ix){source.ix={};var scope={};var i=0;var ilen=source.data.length;var dataw;while((dataw=source.data[i])||source.getfn&&(dataw=source.getfn(i))||i=query.sources.length){if(query.wherefn(scope,query.params,alasql)){if(query.groupfn){query.groupfn(scope,query.params,query.alasql)}else{query.data.push(query.selectfn(scope,query.params,alasql))}}}else if(query.sources[h].applyselect){var source=query.sources[h];source.applyselect(query.params,function(data){if(data.length>0){for(var i=0;i0){s+=NL()+ID()+K("GROUP BY")+" "+this.group.map(function(grp){return grp.toString()}).join(", ")}if(this.having)s+=NL()+ID()+K("HAVING")+" "+this.having.toString();if(this.order&&this.order.length>0){s+=NL()+ID()+K("ORDER BY")+" "+this.order.map(function(ord){return ord.toString()}).join(", ")}if(this.limit)s+=NL()+ID()+K("LIMIT")+" "+this.limit.value;if(this.offset)s+=NL()+ID()+K("OFFSET")+" "+this.offset.value;if(this.union)s+=NL()+K("UNION")+NL()+this.union.toString();if(this.unionall)s+=NL()+K("UNION ALL")+NL()+this.unionall.toString();if(this.except)s+=NL()+K("EXCEPT")+NL()+this.except.toString();if(this.intersect)s+=NL()+K("INTERSECT")+NL()+this.intersect.toString();return s};yy.Select.prototype.toJavaScript=function(context,tableid,defcols){var s="alasql.utils.flatArray(this.queriesfn["+(this.queriesidx-1)+"](this.params,null,"+context+"))[0]";return s};yy.Select.prototype.compile=function(databaseid){var db=alasql.databases[databaseid];var query=new Query;query.removeKeys=[];query.explain=this.explain;query.explaination=[];query.explid=1;query.modifier=this.modifier;query.database=db;this.compileWhereExists(query);this.compileQueries(query);query.defcols=this.compileDefCols(query,databaseid);query.fromfn=this.compileFrom(query);if(this.joins)this.compileJoins(query);this.compileSelectGroup0(query);if(this.group||query.selectGroup.length>0){query.selectgfns=this.compileSelectGroup1(query)}else{query.selectfns=this.compileSelect1(query)}if(this.where)this.compileWhereJoins(query);query.wherefn=this.compileWhere(query);if(this.group||query.selectGroup.length>0)query.groupfn=this.compileGroup(query);if(this.having)query.havingfn=this.compileHaving(query);if(this.group||query.selectGroup.length>0){query.selectgfn=this.compileSelectGroup2(query)}else{query.selectfn=this.compileSelect2(query)}query.distinct=this.distinct;if(this.order)query.orderfn=this.compileOrder(query);if(this.top){query.limit=this.top.value}else if(this.limit){query.limit=this.limit.value;if(this.offset){query.offset=this.offset.value}}query.percent=this.percent;if(this.union){query.unionfn=this.union.compile(databaseid);if(this.union.order){query.orderfn=this.union.compileOrder(query)}else{query.orderfn=null}}else if(this.unionall){query.unionallfn=this.unionall.compile(databaseid);if(this.unionall.order){query.orderfn=this.unionall.compileOrder(query)}else{query.orderfn=null}}else if(this.except){query.exceptfn=this.except.compile(databaseid);if(this.except.order){query.orderfn=this.except.compileOrder(query)}else{query.orderfn=null}}else if(this.intersect){query.intersectfn=this.intersect.compile(databaseid);if(this.intersect.order){query.intersectfn=this.intersect.compileOrder(query)}else{query.orderfn=null}}if(this.into){if(this.into instanceof yy.Table){if(alasql.options.autocommit&&alasql.databases[this.into.databaseid||databaseid].engineid){query.intoallfns='return alasql.engines["'+alasql.databases[this.into.databaseid||databaseid].engineid+'"]'+'.intoTable("'+(this.into.databaseid||databaseid)+'","'+this.into.tableid+'",this.data, columns, cb);'}else{query.intofns="alasql.databases['"+(this.into.databaseid||databaseid)+"'].tables"+"['"+this.into.tableid+"'].data.push(r);"}}else if(this.into instanceof yy.VarValue){query.intoallfns='alasql.vars["'+this.into.variable+'"]=this.data;res=this.data.length;if(cb)res=cb(res);return res;'}else if(this.into instanceof yy.FuncValue){var qs="return alasql.into['"+this.into.funcid.toUpperCase()+"'](";if(this.into.args&&this.into.args.length>0){qs+=this.into.args[0].toJavaScript()+",";if(this.into.args.length>1){qs+=this.into.args[1].toJavaScript()+","}else{qs+="undefined,"}}else{qs+="undefined, undefined,"}query.intoallfns=qs+"this.data,columns,cb)"}else if(this.into instanceof yy.ParamValue){query.intofns="params['"+this.into.param+"'].push(r)"}if(query.intofns){query.intofn=new Function("r,i,params,alasql",query.intofns)}else if(query.intoallfns){query.intoallfn=new Function("columns,cb,params,alasql",query.intoallfns)}}var statement=function(params,cb,oldscope){query.params=params;var res1=queryfn(query,oldscope,function(res){var res2=modify(query,res);if(cb)cb(res2);return res2});return res1};statement.query=query;return statement};function modify(query,res){if(query.modifier=="VALUE"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];res=res[0][key]}else{res=undefined}}if(query.modifier=="ROW"){if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var a=[];for(var key in res[0]){a.push(res[0][key])}res=a}else{res=undefined}}if(query.modifier=="COLUMN"){var ar=[];if(res.length>0){var key;if(query.columns&&query.columns.length>0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];for(var i=0,ilen=res.length;i0){key=query.columns[0].columnid;val=query.columns[1].columnid}else{var okeys=Object.keys(res[0]);key=okeys[0];val=okeys[1]}for(var i=0,ilen=res.length;i0)key=query.columns[0].columnid;else key=Object.keys(res[0])[0];var s="";for(var i=0,ilen=res.length;i0){if(tq.args[0]){s+=tq.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(tq.args[1]){s+=tq.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s)}else if(tq instanceof yy.FromData){source.datafn=function(query,params,cb,idx,alasql){var res=tq.data;if(cb)res=cb(res,idx,query);return res}}else{throw new Error("Wrong table at FROM")}query.sources.push(source)});query.defaultTableid=query.sources[0].alias};alasql.prepareFromData=function(data,array){var res=data;if(typeof data=="string"){res=data.split(/\r?\n/);if(array){for(var i=0,ilen=res.length;i0){if(jn.args[0]){s+=jn.args[0].toJavaScript("query.oldscope")+","}else{s+="null,"}if(jn.args[1]){s+=jn.args[1].toJavaScript("query.oldscope")+","}else{s+="null,"}}else{s+="null,null,"}s+="cb,idx,query";s+=");/*if(cb)res=cb(res,idx,query);*/return res";source.datafn=new Function("query, params, cb, idx, alasql",s);query.aliases[source.alias]={type:"funcvalue"}}var alias=source.alias;if(jn.natural){if(jn.using||jn.on){throw new Error("NATURAL JOIN cannot have USING or ON clauses")}else{if(query.sources.length>0){var prevSource=query.sources[query.sources.length-1];var prevTable=alasql.databases[prevSource.databaseid].tables[prevSource.tableid];var table=alasql.databases[source.databaseid].tables[source.tableid];if(prevTable&&table){var c1=prevTable.columns.map(function(col){return col.columnid});var c2=table.columns.map(function(col){return col.columnid});jn.using=arrayIntersect(c1,c2).map(function(colid){return{columnid:colid}})}else{throw new Error("In this version of Alasql NATURAL JOIN "+"works for tables with predefined columns only")}}}}if(jn.using){var prevSource=query.sources[query.sources.length-1];source.onleftfns=jn.using.map(function(col){return"p['"+(prevSource.alias||prevSource.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfns=jn.using.map(function(col){return"p['"+(source.alias||source.tableid)+"']['"+col.columnid+"']"}).join('+"`"+');source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.optimization="ix"}else if(jn.on){if(jn.on instanceof yy.Op&&jn.on.op=="="&&!jn.on.allsome){source.optimization="ix";var lefts="";var rights="";var middles="";var middlef=false;var ls=jn.on.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=jn.on.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+alias+"']")>-1&&!(rs.indexOf("p['"+alias+"']")>-1)){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=ls}else{middlef=true}}else if(!(ls.indexOf("p['"+alias+"']")>-1)&&rs.indexOf("p['"+alias+"']")>-1){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=ls}else{middlef=true}}else{middlef=true}if(rs.indexOf("p['"+alias+"']")>-1&&!(ls.indexOf("p['"+alias+"']")>-1)){if((rs.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){rights=rs}else{middlef=true}}else if(!(rs.indexOf("p['"+alias+"']")>-1)&&ls.indexOf("p['"+alias+"']")>-1){if((ls.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+alias+"']"})){lefts=rs}else{middlef=true}}else{middlef=true}if(middlef){rights="";lefts="";middles=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.optimization="no"}source.onleftfns=lefts;source.onrightfns=rights;source.onmiddlefns=middles||"true";source.onleftfn=new Function("p,params,alasql","return "+source.onleftfns);source.onrightfn=new Function("p,params,alasql","return "+source.onrightfns);source.onmiddlefn=new Function("p,params,alasql","return "+source.onmiddlefns)}else{source.optimization="no";source.onmiddlefns=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.onmiddlefn=new Function("p,params,alasql","return "+jn.on.toJavaScript("p",query.defaultTableid,query.defcols))}}query.sources.push(source)}})};yy.Select.prototype.compileWhere=function(query){if(this.where){if(typeof this.where=="function"){return this.where}else{s=this.where.toJavaScript("p",query.defaultTableid,query.defcols);query.wherefns=s;return new Function("p,params,alasql","return "+s)}}else return function(){return true}};yy.Select.prototype.compileWhereJoins=function(query){return;optimizeWhereJoin(query,this.where.expression);query.sources.forEach(function(source){if(source.srcwherefns){source.srcwherefn=new Function("p,params,alasql","return "+source.srcwherefns)}if(source.wxleftfns){source.wxleftfn=new Function("p,params,alasql","return "+source.wxleftfns)}if(source.wxrightfns){source.wxrightfn=new Function("p,params,alasql","return "+source.wxrightfns)}})};function optimizeWhereJoin(query,ast){if(!ast)return false;if(!(ast instanceof yy.Op))return;if(ast.op!="="&&ast.op!="AND")return;if(ast.allsome)return;var s=ast.toJavaScript("p",query.defaultTableid,query.defcols);var fsrc=[];query.sources.forEach(function(source,idx){if(source.tableid){if(s.indexOf("p['"+source.alias+"']")>-1)fsrc.push(source)}});if(fsrc.length==0){return}else if(fsrc.length==1){if(!(s.match(/p\[\'.*?\'\]/g)||[]).every(function(s){return s=="p['"+fsrc[0].alias+"']"})){return}var src=fsrc[0];src.srcwherefns=src.srcwherefns?src.srcwherefns+"&&"+s:s;if(ast instanceof yy.Op&&(ast.op=="="&&!ast.allsome)){if(ast.left instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(rs.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=ls;fsrc[0].wxrightfns=rs}}if(ast.right instanceof yy.Column){var ls=ast.left.toJavaScript("p",query.defaultTableid,query.defcols);var rs=ast.right.toJavaScript("p",query.defaultTableid,query.defcols);if(ls.indexOf("p['"+fsrc[0].alias+"']")==-1){fsrc[0].wxleftfns=rs; +fsrc[0].wxrightfns=ls}}}ast.reduced=true;return}else{if(ast.op="AND"){optimizeWhereJoin(query,ast.left);optimizeWhereJoin(query,ast.right)}}}yy.Select.prototype.compileGroup=function(query){var self=this;if(query.sources.length>0){var tableid=query.sources[0].alias}else{var tableid=""}var defcols=query.defcols;var allgroup=[[]];if(this.group){allgroup=decartes(this.group,query)}var allgroups=[];allgroup.forEach(function(a){allgroups=arrayUnion(allgroups,a)});query.allgroups=allgroups;if(false){allgroups.forEach(function(col2){if(query.selectColumns[colid]){}else{var tmpid="default";if(query.sources.length>0)tmpid=query.sources[0].alias;if(Object.keys(query.selectColumns).length!=0)query.removeKeys.push(colid);query.selectfns+="r['"+escapeq(colid)+"']="+new yy.Column({columnid:colid}).toJavaScript("p",tmpid)+";"}})}var s="";allgroup.forEach(function(agroup){s+="var g=this.xgroups[";var rg=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"1";else return coljs});if(rg.length==0)rg=["''"];s+=rg.join('+"`"+');s+="];if(!g) {this.groups.push((g=this.xgroups[";s+=rg.join('+"`"+');s+="] = {";s+=agroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];if(columnid=="")return"";else return"'"+columnid+"':"+coljs+","}).join("");var neggroup=arrayDiff(allgroups,agroup);s+=neggroup.map(function(col2){var columnid=col2.split(" ")[0];var coljs=col2.split(" ")[1];return"'"+columnid+"':null,"}).join("");var aft="";s+=query.selectGroup.map(function(col,idx){var colexp=col.expression.toJavaScript("p",tableid,defcols);var colas=col.nick;if(col instanceof yy.AggrValue){if(col.distinct){aft+=",g['$$_VALUES_"+colas+"']={},g['$$_VALUES_"+colas+"']["+colexp+"]=true"}if(col.aggregatorid=="SUM"||col.aggregatorid=="MIN"||col.aggregatorid=="MAX"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"){return"'"+colas+"':"+colexp+","}else if(col.aggregatorid=="ARRAY"){return"'"+colas+"':["+colexp+"],"}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*"){return"'"+colas+"':1,"}else{return"'"+colas+"':(typeof "+colexp+' != "undefined")?1:0,'}}else if(col.aggregatorid=="AVG"){query.removeKeys.push("_SUM_"+colas);query.removeKeys.push("_COUNT_"+colas);return"'"+colas+"':"+colexp+",'_SUM_"+colas+"':"+colexp+",'_COUNT_"+colas+"':1,"}else if(col.aggregatorid=="AGGR"){aft+=",g['"+colas+"']="+col.expression.toJavaScript("g",-1);return""}else if(col.aggregatorid=="REDUCE"){return"'"+colas+"':alasql.aggr['"+col.funcid+"']("+colexp+"),"}return""}else return""}).join("");s+="}"+aft+",g));} else {";s+=query.selectGroup.map(function(col,idx){var colas=col.nick;var colexp=col.expression.toJavaScript("p",tableid,defcols);if(col instanceof yy.AggrValue){if(col.distinct){var pre="if(typeof "+colexp+'!="undefined" && (!g[\'$$_VALUES_'+colas+"']["+colexp+"])) {";var post="g['$$_VALUES_"+colas+"']["+colexp+"]=true;}"}else{var pre="",post=""}if(col.aggregatorid=="SUM"){return pre+"g['"+colas+"']+="+colexp+";"+post}else if(col.aggregatorid=="COUNT"){if(col.expression.columnid=="*")return pre+"g['"+colas+"']++;"+post;else{return pre+"if(typeof "+colexp+'!="undefined") g[\''+colas+"']++;"+post}}else if(col.aggregatorid=="ARRAY"){return pre+"g['"+colas+"'].push("+colexp+");"+post}else if(col.aggregatorid=="MIN"){return pre+"g['"+colas+"']=Math.min(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="MAX"){return pre+"g['"+colas+"']=Math.max(g['"+colas+"'],"+colexp+");"+post}else if(col.aggregatorid=="FIRST"){return""}else if(col.aggregatorid=="LAST"){return pre+"g['"+colas+"']="+colexp+";"+post}else if(col.aggregatorid=="AVG"){return pre+"g['_SUM_"+colas+"']+="+colexp+";"+"g['_COUNT_"+colas+"']++;"+"g['"+colas+"']=g['_SUM_"+colas+"']/g['_COUNT_"+colas+"'];"+post}else if(col.aggregatorid=="AGGR"){return pre+"g['"+colas+"']="+col.expression.toJavaScript("g",-1)+";"+post}else if(col.aggregatorid=="REDUCE"){return pre+"g['"+colas+"']=alasql.aggr."+col.funcid+"("+colexp+",g['"+colas+"']);"+post}return""}else return""}).join("");s+="}"});return new Function("p,params,alasql",s)};function compileSelectStar(query,alias){var s="",sp="",ss=[];if(query.aliases[alias].tableid){var columns=alasql.databases[query.aliases[alias].databaseid].tables[query.aliases[alias].tableid].columns}if(columns&&columns.length>0){columns.forEach(function(tcol){ss.push("'"+tcol.columnid+"':p['"+alias+"']['"+tcol.columnid+"']");query.selectColumns[escapeq(tcol.columnid)]=true;var coldef={columnid:tcol.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbprecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef})}else{sp+='var w=p["'+alias+'"];for(var k in w){r[k]=w[k]};';query.dirtyColumns=true}return{s:ss.join(","),sp:sp}}yy.Select.prototype.compileSelect1=function(query){var self=this;query.columns=[];query.xcolumns={};query.selectColumns={};query.dirtyColumns=false;var s="var r={";var sp="";var ss=[];this.columns.forEach(function(col){if(col instanceof yy.Column){if(col.columnid=="*"){if(col.func){sp+="r=params['"+col.param+"'](p['"+query.sources[0].alias+"'],p,params,alasql);"}else if(col.tableid){var ret=compileSelectStar(query,col.tableid);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}else{for(var alias in query.aliases){var ret=compileSelectStar(query,alias);if(ret.s)ss=ss.concat(ret.s);sp+=ret.sp}}}else{var tbid=col.tableid;var dbid=col.databaseid||query.sources[0].databaseid||query.database.databaseid;if(!tbid)tbid=query.defcols[col.columnid];if(!tbid)tbid=query.defaultTableid;if(col.columnid!="_"){ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']['"+col.columnid+"']")}else{ss.push("'"+escapeq(col.as||col.columnid)+"':p['"+tbid+"']")}query.selectColumns[escapeq(col.as||col.columnid)]=true;if(query.aliases[tbid]&&query.aliases[tbid].type=="table"){if(!alasql.databases[dbid].tables[query.aliases[tbid].tableid]){throw new Error("Table '"+tbid+"' does not exists in database")}var columns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].columns;var xcolumns=alasql.databases[dbid].tables[query.aliases[tbid].tableid].xcolumns;if(xcolumns&&columns.length>0){var tcol=xcolumns[col.columnid];var coldef={columnid:col.as||col.columnid,dbtypeid:tcol.dbtypeid,dbsize:tcol.dbsize,dbpecision:tcol.dbprecision,dbenum:tcol.dbenum};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}else{query.dirtyColumns=true}}else{}}}else if(col instanceof yy.AggrValue){if(!self.group){self.group=[""]}if(!col.as)col.as=escapeq(col.toString());if(col.aggregatorid=="SUM"||col.aggregatorid=="MAX"||col.aggregatorid=="MIN"||col.aggregatorid=="FIRST"||col.aggregatorid=="LAST"||col.aggregatorid=="AVG"||col.aggregatorid=="ARRAY"||col.aggregatorid=="REDUCE"){ss.push("'"+escapeq(col.as)+"':"+col.expression.toJavaScript("p",query.defaultTableid,query.defcols))}else if(col.aggregatorid=="COUNT"){ss.push("'"+escapeq(col.as)+"':1")}query.selectColumns[col.aggregatorid+"("+escapeq(col.expression.toString())+")"]=thtd}else{ss.push("'"+escapeq(col.as||col.columnid||col.toString())+"':"+col.toJavaScript("p",query.defaultTableid,query.defcols));query.selectColumns[escapeq(col.as||col.columnid||col.toString())]=true}});s+=ss.join(",")+"};"+sp;return s};yy.Select.prototype.compileSelect2=function(query){var s=query.selectfns;return new Function("p,params,alasql",s+"return r")};yy.Select.prototype.compileSelectGroup0=function(query){var self=this;self.columns.forEach(function(col,idx){if(col instanceof yy.Column&&col.columnid=="*"){}else{var colas;if(col instanceof yy.Column){colas=escapeq(col.columnid)}else{colas=escapeq(col.toString())}for(var i=0;irb)return 1;if(ra==rb)return 0;return-1}}var s="";var sk="";this.order.forEach(function(ord,idx){var dg="";if(ord.expression instanceof yy.NumValue){ord.expression=self.columns[ord.expression.value-1]}if(ord.expression instanceof yy.Column){var columnid=ord.expression.columnid;if(query.xcolumns[columnid]){var dbtypeid=query.xcolumns[columnid].dbtypeid;if(dbtypeid=="DATE"||dbtypeid=="DATETIME")dg=".valueOf()"}else{if(alasql.options.valueof)dg=".valueOf()"}if(ord.nocase)dg+=".toUpperCase()";s+="if(a['"+columnid+"']"+dg+(ord.direction=="ASC"?">":"<")+"b['"+columnid+"']"+dg+")return 1;";s+="if(a['"+columnid+"']"+dg+"==b['"+columnid+"']"+dg+"){"}else{dg=".valueOf()";if(ord.nocase)dg+=".toUpperCase()";s+="if("+ord.toJavaScript("a","")+dg+(ord.direction=="ASC"?">":"<")+ord.toJavaScript("b","")+dg+")return 1;";s+="if("+ord.toJavaScript("a","")+dg+"=="+ord.toJavaScript("b","")+dg+"){"}sk+="}"});s+="return 0;";s+=sk+"return -1";query.orderfns=s;return new Function("a,b",s)}};var rollup=function(a,query){var rr=[];var mask=0;var glen=a.length;for(var g=0;g"){var s=this.left.toString()+"->";if(typeof this.right!="string"&&typeof this.right!="number")s+="(";s+=this.right.toString();if(typeof this.right!="string"&&typeof this.right!="number")s+=")";return s}return this.left.toString()+" "+P(this.op)+" "+(this.allsome?this.allsome+" ":"")+this.right.toString()};yy.Op.prototype.findAggregator=function(query){if(this.left&&this.left.findAggregator)this.left.findAggregator(query);if(this.right&&this.right.findAggregator&&!this.allsome){this.right.findAggregator(query)}};yy.Op.prototype.toType=function(tableid){if(["-","*","/","%","^"].indexOf(this.op)>-1)return"number";if(this.op=="+"){if(this.left.toType(tableid)=="string"||this.right.toType(tableid)=="string")return"string";if(this.left.toType(tableid)=="number"||this.right.toType(tableid)=="number")return"number"}if(["AND","OR","NOT","=","==","===","!=","!==","!===",">",">=","<","<=","IN","NOT IN","LIKE","NOT LIKE"].indexOf(this.op)>-1)return"boolean";if(this.op=="BETWEEN"||this.op=="NOT BETWEEN"||this.op=="IS NULL"||this.op=="IS NOT NULL")return"boolean";if(this.allsome)return"boolean";if(!this.op)return this.left.toType();return"unknown"};yy.Op.prototype.toJavaScript=function(context,tableid,defcols){var op=this.op;if(this.op=="=")op="===";else if(this.op=="<>")op="!=";else if(this.op=="OR")op="||";if(this.op=="->"){if(typeof this.right=="string"){return this.left.toJavaScript(context,tableid,defcols)+'["'+this.right+'"]'}else if(typeof this.right=="number"){return this.left.toJavaScript(context,tableid,defcols)+"["+this.right+"]"}else if(this.right instanceof yy.FuncValue){ss=[];if(!this.right.args||this.right.args.length==0){}else{var ss=this.right.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)})}return this.left.toJavaScript(context,tableid,defcols)+"['"+this.right.funcid+"']("+ss.join(",")+")"}else{return this.left.toJavaScript(context,tableid,defcols)+"["+this.right.toJavaScript(context,tableid,defcols)+"]"}}if(this.op=="IS"){return"((typeof "+this.left.toJavaScript(context,tableid,defcols)+"=='undefined') == "+"(typeof "+this.right.toJavaScript(context,tableid,defcols)+"=='undefined'))"}if(this.op=="=="){return"alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}if(this.op=="==="){return"(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!==="){return"!(("+this.left.toJavaScript(context,tableid,defcols)+").valueOf()===("+this.right.toJavaScript(context,tableid,defcols)+".valueOf()))"}if(this.op=="!=="){return"(!alasql.utils.deepEqual("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+"))"}if(this.op=="LIKE"){var s="("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g'))";return s}if(this.op=="NOT LIKE"){var s="!(("+this.left.toJavaScript(context,tableid,defcols)+"+'')"+".toUpperCase().match(new RegExp('^'+("+this.right.toJavaScript(context,tableid,defcols)+").replace(/\\%/g,'.*').toUpperCase()+'$','g')))";return s}if(this.op=="BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong BETWEEN operator without AND part")}}if(this.op=="NOT BETWEEN"){if(this.right instanceof yy.Op&&this.right.op=="AND"){return"!(("+this.right.left.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right.right.toJavaScript(context,tableid,defcols)+"))"}else{throw new Error("Wrong NOT BETWEEN operator without AND part")}}if(this.op=="IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}else{var s="("+this.right.toJavaScript(context,tableid,defcols)+".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")>-1)";return s}}if(this.op=="NOT IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else if(this.right instanceof Array){var s="(["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")<0)";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="ALL"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].every(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.allsome=="SOME"||this.allsome=="ANY"){if(this.right instanceof yy.Select){var s="alasql.utils.flatArray(this.query.queriesfn["+this.queriesidx+"](params,null,p))";s+=".some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else if(this.right instanceof Array){var s="["+this.right.map(function(a){return a.toJavaScript(context,tableid,defcols)}).join(",")+"].some(function(b){return (";s+=this.left.toJavaScript(context,tableid,defcols)+")"+op+"b})";return s}else{throw new Error("Wrong NOT IN operator without SELECT part")}}if(this.op=="AND"){if(this.left.reduced){if(this.right.reduced){return"true"}else{return this.right.toJavaScript(context,tableid,defcols)}}else if(this.right.reduced){return this.left.toJavaScript(context,tableid,defcols)}op="&&"}if(this.op=="^"){return"Math.pow("+this.left.toJavaScript(context,tableid,defcols)+","+this.right.toJavaScript(context,tableid,defcols)+")"}return"("+this.left.toJavaScript(context,tableid,defcols)+op+this.right.toJavaScript(context,tableid,defcols)+")"};yy.VarValue=function(params){return yy.extend(this,params)};yy.VarValue.prototype.toString=function(){return"@"+L(this.variable)};yy.VarValue.prototype.toType=function(){return"unknown"};yy.VarValue.prototype.toJavaScript=function(){return"alasql.vars['"+this.variable+"']"};yy.NumValue=function(params){return yy.extend(this,params)};yy.NumValue.prototype.toString=function(){return N(this.value.toString())};yy.NumValue.prototype.toType=function(){return"number"};yy.NumValue.prototype.toJavaScript=function(){return""+this.value};yy.StringValue=function(params){return yy.extend(this,params)};yy.StringValue.prototype.toString=function(){return"'"+S(this.value.toString())+"'"};yy.StringValue.prototype.toType=function(){return"string"};yy.StringValue.prototype.toJavaScript=function(){return"'"+escapeq(this.value)+"'"};yy.LogicValue=function(params){return yy.extend(this,params)};yy.LogicValue.prototype.toString=function(){return this.value?"TRUE":"FALSE"};yy.LogicValue.prototype.toType=function(){return"boolean"};yy.LogicValue.prototype.toJavaScript=function(){return this.value?"true":"false"};yy.NullValue=function(params){return yy.extend(this,params)};yy.NullValue.prototype.toString=function(){return"NULL"};yy.NullValue.prototype.toJavaScript=function(){return"undefined"};yy.ParamValue=function(params){return yy.extend(this,params)};yy.ParamValue.prototype.toString=function(){return"$"+this.param};yy.ParamValue.prototype.toJavaScript=function(){if(typeof this.param=="string")return"params['"+this.param+"']";else return"params["+this.param+"]"};yy.UniOp=function(params){return yy.extend(this,params)};yy.UniOp.prototype.toString=function(){if(this.op=="-")return this.op+this.right.toString();if(this.op=="+")return this.op+this.right.toString();if(this.op=="NOT")return this.op+"("+this.right.toString()+")";else if(this.op==null)return"("+this.right.toString()+")"};yy.UniOp.prototype.findAggregator=function(query){if(this.right.findAggregator)this.right.findAggregator(query)};yy.UniOp.prototype.toType=function(tableid){if(this.op=="-")return"number";if(this.op=="+")return"number";if(this.op=="NOT")return"boolean"};yy.UniOp.prototype.toJavaScript=function(context,tableid,defcols){if(this.op=="-")return"(-("+this.right.toJavaScript(context,tableid,defcols)+"))";if(this.op=="+")return"("+this.right.toJavaScript(context,tableid,defcols)+")";if(this.op=="NOT")return"!("+this.right.toJavaScript(context,tableid,defcols)+")";else if(this.op==null)return"("+this.right.toJavaScript(context,tableid,defcols)+")"};yy.Column=function(params){return yy.extend(this,params)};yy.Column.prototype.toString=function(){var s;if(this.columnid==+this.columnid){s="["+this.columnid+"]"}else{s=this.columnid}if(this.tableid){if(+this.columnid==this.columnid){s=this.tableid+s}else{s=this.tableid+"."+s}if(this.databaseid){s=this.databaseid+"."+s}}return s};yy.Column.prototype.toJavaScript=function(context,tableid,defcols){var s="";if(!this.tableid&&tableid==""&&!defcols){if(this.columnid!="_"){s=context+"['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context}}}else{if(context=="g"){s="g['"+this.nick+"']"}else if(this.tableid){if(this.columnid!="_"){s=context+"['"+this.tableid+"']['"+this.columnid+"']"}else{if(context=="g"){s="g['_']"}else{s=context+"['"+this.tableid+"']"}}}else if(defcols){var tbid=defcols[this.columnid];if(tbid=="-"){throw new Error('Cannot resolve column "'+this.columnid+'" because it exists in two source tables')}else if(tbid){if(this.columnid!="_"){s=context+"['"+tbid+"']['"+this.columnid+"']"}else{s=context+"['"+tbid+"']"}}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}else if(tableid==-1){s=context+"['"+this.columnid+"']"}else{if(this.columnid!="_"){s=context+"['"+(this.tableid||tableid)+"']['"+this.columnid+"']"}else{s=context+"['"+(this.tableid||tableid)+"']"}}}return s};yy.AggrValue=function(params){return yy.extend(this,params)};yy.AggrValue.prototype.toString=function(){var s="";if(this.aggregatorid=="REDUCE")s+=L(this.funcid)+"(";else s+=this.aggregatorid+"(";if(this.distinct)s+=K("DISTINCT")+" ";if(this.expression)s+=this.expression.toString();s+=")";if(this.over)s+=" "+this.over.toString();return s};yy.AggrValue.prototype.findAggregator=function(query){var colas=escapeq(this.toString())+":"+query.selectGroup.length;var found=false;if(!found){if(!this.nick){this.nick=colas;var found=false;for(var i=0;i-1)return"number";if(["ARRAY"].indexOf(this.aggregatorid)>-1)return"array";if(["FIRST","LAST"].indexOf(this.aggregatorid)>-1)return this.expression.toType()};yy.AggrValue.prototype.toJavaScript=function(context,tableid,defcols){var colas=this.nick;if(typeof colas=="undefined")colas=this.toString();return"g['"+colas+"']"};yy.OrderExpression=function(params){return yy.extend(this,params)};yy.OrderExpression.prototype.toString=function(){var s=this.expression.toString();if(this.order)s+=" "+this.order.toString();if(this.nocase)s+=" "+K("COLLATE")+" "+K("NOCASE");return s};yy.GroupExpression=function(params){return yy.extend(this,params)};yy.GroupExpression.prototype.toString=function(){return this.type+"("+this.group.toString()+")"};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.FromData=function(params){return yy.extend(this,params)};yy.FromData.prototype.toString=function(){if(this.data)return K("DATA")+"("+(Math.random()*1e16|0)+")";else return"?"};yy.FromData.prototype.toJavaScript=function(){};yy.Select.prototype.exec=function(params,cb){if(this.preparams)params=this.preparams.concat(params);var databaseid=alasql.useid;db=alasql.databases[databaseid];var sql=this.toString();var hh=hash(sql);var statement=this.compile(databaseid);if(!statement)return;statement.sql=sql;statement.dbversion=db.dbversion;if(db.sqlCacheSize>alasql.MAXSQLCACHESIZE){db.resetSqlCache()}db.sqlCacheSize++;db.sqlCache[hh]=statement;var res=alasql.res=statement(params,cb);return res};yy.Select.prototype.Select=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.columns=[];args.forEach(function(arg){if(typeof arg=="string"){self.columns.push(new yy.Column({columnid:arg}))}else if(typeof arg=="function"){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(arg);self.columns.push(new yy.Column({columnid:"*",func:arg,param:pari}))}else{}});return self};yy.Select.prototype.From=function(tableid){var self=this;if(!self.from)self.from=[];if(tableid instanceof Array){var pari=0;if(self.preparams){pari=self.preparams.length}else{self.preparams=[]}self.preparams.push(tableid);self.from.push(new yy.ParamValue({param:pari}))}else if(typeof tableid=="string"){self.from.push(new yy.Table({tableid:tableid}))}else{throw new Error("Unknown arguments in From() function")}return self};yy.Select.prototype.OrderBy=function(){var self=this;var agrs=[];self.order=[];if(arguments.length==0){args=["_"]}else if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}if(args.length>0){args.forEach(function(arg){var expr=new yy.Column({columnid:arg});if(typeof arg=="function"){expr=arg +}self.order.push(new yy.OrderExpression({expression:expr,direction:"ASC"}))})}return self};yy.Select.prototype.Top=function(topnum){var self=this;self.top=new yy.NumValue({value:topnum});return self};yy.Select.prototype.GroupBy=function(){var self=this;var agrs=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments)}else if(arguments.length==1){if(arguments[0]instanceof Array){args=arguments[0]}else{args=[arguments[0]]}}else{throw new Error("Wrong number of arguments of Select() function")}self.group=[];args.forEach(function(arg){var expr=new yy.Column({columnid:arg});self.group.push(expr)});return self};yy.Select.prototype.Where=function(expr){var self=this;if(typeof expr=="function"){self.where=expr}return self};yy.FuncValue=function(params){return yy.extend(this,params)};yy.FuncValue.prototype.toString=function(){var s="";if(alasql.fn[this.funcid])s+=this.funcid;else if(alasql.aggr[this.funcid])s+=this.funcid;else if(alasql.stdlib[this.funcid.toUpperCase()]||alasql.stdfn[this.funcid.toUpperCase()])s+=this.funcid.toUpperCase();s+="(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toString()}).join(",")}s+=")";if(this.as)s+=" AS "+this.as.toString();return s};yy.FuncValue.prototype.findAggregator=function(query){if(this.args&&this.args.length>0){this.args.forEach(function(arg){if(arg.findAggregator)arg.findAggregator(query)})}};yy.FuncValue.prototype.toJavaScript=function(context,tableid,defcols){var s="";var funcid=this.funcid;if(alasql.fn[funcid]){if(this.newid)s+="new ";s+="alasql.fn."+this.funcid+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else if(alasql.stdlib[funcid.toUpperCase()]){if(this.args&&this.args.length>0){s+=alasql.stdlib[funcid.toUpperCase()].apply(this,this.args.map(function(arg){return arg.toJavaScript(context,tableid)}))}else{s+=alasql.stdlib[funcid.toUpperCase()]()}}else if(alasql.stdfn[funcid.toUpperCase()]){if(this.newid)s+="new ";s+="alasql.stdfn."+this.funcid.toUpperCase()+"(";if(this.args&&this.args.length>0){s+=this.args.map(function(arg){return arg.toJavaScript(context,tableid,defcols)}).join(",")}s+=")"}else{}return s};var stdlib=alasql.stdlib={};var stdfn=alasql.stdfn={};stdlib.ABS=function(a){return"Math.abs("+a+")"};stdlib.CLONEDEEP=function(a){return"alasql.utils.cloneDeep("+a+")"};stdlib.IIF=function(a,b,c){if(arguments.length==3){return"(("+a+")?("+b+"):("+c+"))"}else{throw new Error("Number of arguments of IFF is not equals to 3")}};stdlib.IFNULL=function(a,b){return"("+a+"||"+b+")"};stdlib.INSTR=function(s,p){return"(("+s+").indexOf("+p+")+1)"};stdlib.LEN=stdlib.LENGTH=function(s){return"("+s+'+"").length'};stdlib.LOWER=stdlib.LCASE=function(s){return"("+s+").toLowerCase()"};stdlib.GREATEST=function(){return"Math.max("+Array.prototype.join.call(arguments,",")+")"};stdlib.LEAST=function(){return"Math.min("+Array.prototype.join.call(arguments,",")+")"};stdlib.MID=function(a,b,c){if(arguments.length==2)return"("+a+").substr("+b+"-1)";else if(arguments.length==3)return"("+a+").substr("+b+"-1,"+c+")"};stdlib.NULLIF=function(a,b){return"("+a+"=="+b+"?undefined:"+a+")"};stdlib.POWER=function(a,b){return"Math.pow("+a+","+b+")"};stdlib.RANDOM=function(r){if(arguments.length==0){return"Math.random()"}else{return"(Math.random()*("+r+")|0)"}};stdlib.ROUND=function(s,d){if(arguments.length==2){return"Math.round("+s+"*Math.pow(10,"+d+"))/Math.pow(10,"+d+")"}else{return"Math.round("+s+")"}};stdlib.SQRT=function(s){return"Math.sqrt("+s+")"};stdlib.TRIM=function(s){return s+".trim()"};stdlib.UPPER=stdlib.UCASE=function(s){return"("+s+").toUpperCase()"};alasql.aggr.GROUP_CONCAT=function(v,s){if(typeof s=="undefined")return v;else return s+","+v};yy.CaseValue=function(params){return yy.extend(this,params)};yy.CaseValue.prototype.toString=function(){var s="CASE ";if(this.expression)s+=this.expression.toString();if(this.whens){s+=this.whens.map(function(w){return" WHEN "+w.when.toString()+" THEN "+w.then.toString()}).join()}s+=" END";return s};yy.CaseValue.prototype.findAggregator=function(query){if(this.expression&&this.expression.findAggregator)this.expression.findAggregator(query);if(this.whens&&this.whens.length>0){this.whens.forEach(function(w){if(w.when.findAggregator)w.when.findAggregator(query);if(w.then.findAggregator)w.then.findAggregator(query)})}if(this.elses&&this.elses.findAggregator)this.elses.findAggregator(query)};yy.CaseValue.prototype.toJavaScript=function(context,tableid,defcols){var s="((function("+context+",params,alasql){var r;";if(this.expression){s+="v="+this.expression.toJavaScript(context,tableid,defcols)+";";s+=(this.whens||[]).map(function(w){return" if(v=="+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}else{s+=(this.whens||[]).map(function(w){return" if("+w.when.toJavaScript(context,tableid,defcols)+") {r="+w.then.toJavaScript(context,tableid,defcols)+"}"}).join(" else ");if(this.elses)s+=" else {r="+this.elses.toJavaScript(context,tableid,defcols)+"}"}s+=";return r;}).bind(this))("+context+",params,alasql)";return s};yy.Json=function(params){return yy.extend(this,params)};yy.Json.prototype.toString=function(){var s="@";s+=JSONtoString(this.value);s+="";return s};var JSONtoString=alasql.utils.JSONtoString=function(obj){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s=obj;else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoString(b)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoString(obj[k]);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toString){s=obj.toString()}else{throw new Error("1Can not show JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not show JSON object "+JSON.stringify(obj))}return s};function JSONtoJavaScript(obj,context,tableid,defcols){var s="";if(typeof obj=="string")s='"'+obj+'"';else if(typeof obj=="number")s="("+obj+")";else if(typeof obj=="boolean")s=obj;else if(typeof obj=="object"){if(obj instanceof Array){s+="["+obj.map(function(b){return JSONtoJavaScript(b,context,tableid,defcols)}).join(",")+"]"}else if(!obj.toJavaScript||obj instanceof yy.Json){s="{";var ss=[];for(var k in obj){var s1="";if(typeof k=="string")s1+='"'+k+'"';else if(typeof k=="number")s1+=k;else if(typeof k=="boolean")s1+=k;else{throw new Error("THis is not ES6... no expressions on left side yet")}s1+=":"+JSONtoJavaScript(obj[k],context,tableid,defcols);ss.push(s1)}s+=ss.join(",")+"}"}else if(obj.toJavaScript){s=obj.toJavaScript(context,tableid,defcols)}else{throw new Error("1Can not parse JSON object "+JSON.stringify(obj))}}else{throw new Error("2Can not parse JSON object "+JSON.stringify(obj))}return s}yy.Json.prototype.toJavaScript=function(context,tableid,defcols){return JSONtoJavaScript(this.value,context,tableid,defcols)};yy.Convert=function(params){return yy.extend(this,params)};yy.Convert.prototype.toString=function(){var s="CONVERT(";s+=this.dbtypeid;if(typeof this.dbsize!="undefined"){s+="("+this.dbsize;if(this.dbprecision)s+=","+dbprecision;s+=")"}s+=","+this.expression.toString();if(this.style)s+=","+this.style;s+=")";return s};yy.Convert.prototype.toJavaScript=function(context,tableid,defcols){return"alasql.stdfn.CONVERT("+this.expression.toJavaScript(context,tableid,defcols)+',{dbtypeid:"'+this.dbtypeid+'",dbsize:'+this.dbsize+",style:"+this.style+"})";throw new Error("There is not such type conversion for "+this.toString())};alasql.stdfn.CONVERT=function(value,args){var val=value;if(args.style){var t;if(/\d{8}/.test(val))t=new Date(+val.substr(0,4),+val.substr(4,2)-1,+val.substr(6,2));else t=new Date(val);if(args.style==1){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==2){val=("0"+t.getYear()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==3){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getYear()).substr(-2)}else if(args.style==4){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getYear()).substr(-2)}else if(args.style==5){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==6){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+("0"+t.getYear()).substr(-2)}else if(args.style==7){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+("0"+t.getYear()).substr(-2)}else if(args.style==8){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==10){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+("0"+t.getYear()).substr(-2)}else if(args.style==11){val=("0"+t.getYear()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==12){val=("0"+t.getYear()).substr(-2)+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else if(args.style==101){val=("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)+"/"+t.getFullYear()}else if(args.style==102){val=t.getFullYear()+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+("0"+t.getDate()).substr(-2)}else if(args.style==103){val=("0"+t.getDate()).substr(-2)+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+t.getFullYear()}else if(args.style==104){val=("0"+t.getDate()).substr(-2)+"."+("0"+(t.getMonth()+1)).substr(-2)+"."+t.getFullYear()}else if(args.style==105){val=("0"+t.getDate()).substr(-2)+"-"+("0"+(t.getMonth()+1)).substr(-2)+"-"+t.getFullYear()}else if(args.style==106){val=("0"+t.getDate()).substr(-2)+" "+t.toString().substr(4,3).toLowerCase()+" "+t.getFullYear()}else if(args.style==107){val=t.toString().substr(4,3)+" "+("0"+t.getDate()).substr(-2)+","+t.getFullYear()}else if(args.style==108){val=("0"+t.getHours()).substr(-2)+":"+("0"+(t.getMinutes()+1)).substr(-2)+":"+("0"+t.getSeconds()).substr(-2)}else if(args.style==110){val=("0"+(t.getMonth()+1)).substr(-2)+"-"+("0"+t.getDate()).substr(-2)+"-"+t.getFullYear()}else if(args.style==111){val=t.getFullYear()+"/"+("0"+(t.getMonth()+1)).substr(-2)+"/"+("0"+t.getDate()).substr(-2)}else if(args.style==112){val=t.getFullYear()+("0"+(t.getMonth()+1)).substr(-2)+("0"+t.getDate()).substr(-2)}else{throw new Error("The CONVERT style "+args.style+" is not realized yet.")}}if(args.dbtypeid=="Date"){return new Date(val)}else if(args.dbtypeid.toUpperCase()=="DATE"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);return s}else if(args.dbtypeid=="DATETIME"){var d=new Date(val);var s=d.getFullYear()+"."+("0"+(d.getMonth()+1)).substr(-2)+"."+("0"+d.getDate()).substr(-2);s+=" "+("0"+d.getHours()).substr(-2)+":"+("0"+d.getMinutes()).substr(-2)+":"+("0"+d.getSeconds()).substr(-2);s+="."+("00"+d.getMilliseconds()).substr(-3);return s}else if(args.dbtypeid.toUpperCase()=="STRING"){return""+val}else if(args.dbtypeid.toUpperCase()=="NUMBER"||args.dbtypeid=="FLOAT"){return+val}else if(args.dbtypeid.toUpperCase()=="MONEY"){var m=+val;return(m|0)+m*100%100/100}else if(args.dbtypeid.toUpperCase()=="BOOLEAN"){return!!val}else if(args.dbtypeid.toUpperCase()=="INT"){return val|0}else if(args.dbtypeid.toUpperCase()=="VARCHAR"||args.dbtypeid=="NVARCHAR"){if(args.dbsize)return(""+val).substr(0,args.dbsize);else return""+val}else if(args.dbtypeid.toUpperCase()=="CHAR"||args.dbtypeid=="NCHAR"){return(val+new Array(args.dbsize+1).join(" ")).substr(0,args.dbsize)}};yy.ColumnDef=function(params){return yy.extend(this,params)};yy.ColumnDef.prototype.toString=function(){var s=this.columnid;if(this.dbtypeid)s+=" "+this.dbtypeid;if(this.dbsize){s+="("+this.dbsize;if(this.dbprecision)s+=","+this.dbprecision;s+=")"}if(this.primarykey)s+=" PRIMARY KEY";if(this.notnull)s+=" NOT NULL";return s};yy.CreateTable=function(params){return yy.extend(this,params)};yy.CreateTable.prototype.toString=function(){var s=K("CREATE");if(this.temporary)s+=" "+K("TEMPORARY");if(this.view)s+=" "+K("VIEW");else s+=" "+K("TABLE");if(this.ifnotexists)s+=" "+K("IF")+" "+K("NOT")+" "+K("EXISTS");s+=" "+this.table.toString();if(this.viewcolumns){s+="("+this.viewcolumns.map(function(vcol){return vcol.toString()}).join(",")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);else{var ss=this.columns.map(function(col){return col.toString()});s+=" ("+NL()+ID()+ss.join(","+NL()+ID())+")"}if(this.view&&this.select){s+=" AS "+this.select.toString()}return s};yy.CreateTable.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.table.databaseid||databaseid];var tableid=this.table.tableid;if(!tableid){throw new Error("Table name is not defined")}var columns=this.columns;var constraints=this.constraints||[];if(this.ifnotexists&&db.tables[tableid])return 0;if(db.tables[tableid]){throw new Error("Can not create table '"+tableid+"', because it already exists in the database '"+db.databaseid+"'")}var table=db.tables[tableid]=new alasql.Table;var ss=[];if(this.columns){this.columns.forEach(function(col){var dbtypeid=col.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();var newcol={columnid:col.columnid,dbtypeid:dbtypeid};if(col.default){ss.push("'"+col.columnid+"':"+col.default.toJavaScript())}table.columns.push(newcol);table.xcolumns[newcol.columnid]=newcol;if(col.primarykey){var pk=table.pk={};pk.columns=[col.columnid];pk.onrightfns="r['"+col.columnid+"']";pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}})}table.defaultfns=ss.join(",");constraints.forEach(function(con){if(con.type=="PRIMARY KEY"){if(table.pk){throw new Error("Primary key already exists")}var pk=table.pk={};pk.columns=con.columns;pk.onrightfns=pk.columns.map(function(columnid){return"r['"+columnid+"']"}).join("+'`'+");pk.onrightfn=new Function("r","return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.indices[pk.hh]={}}});if(this.view&&this.viewcolumns){var self=this;this.viewcolumns.forEach(function(vcol,idx){self.select.columns[idx].as=vcol.columnid})}if(db.engineid){return alasql.engines[db.engineid].createTable(this.table.databaseid||databaseid,tableid,this.ifnotexists,cb)}table.insert=function(r){if(this.pk){var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]!="undefined"){throw new Error("Cannot insert record, because it already exists in primary key")}else{table.data.push(r);this.indices[pk.hh][addr]=r}}else{table.data.push(r)}};table.delete=function(i){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined}}};table.deleteall=function(){this.data.length=0;if(this.pk){this.indices[this.pk.hh]={}}};table.update=function(assignfn,i,params){if(this.pk){var r=this.data[i];var pk=this.pk;var addr=pk.onrightfn(r,params);if(typeof this.indices[pk.hh][addr]=="undefined"){throw new Error("Something wrong with index on table")}else{this.indices[pk.hh][addr]=undefined;assignfn(r,params,alasql);var newaddr=pk.onrightfn(r);if(typeof this.indices[pk.hh][newaddr]!="undefined"){throw new Error("Record already exists")}else{this.indices[pk.hh][newaddr]=r}}}else{assignfn(this.data[i],params,alasql)}};if(this.view&&this.select){table.view=true;table.select=this.select.compile(this.table.databaseid||databaseid)}if(cb)cb(1);return 1};alasql.fn.Date=Object;alasql.fn.Date=Date;alasql.fn.Number=Number;alasql.fn.String=String;alasql.fn.Boolean=Boolean;stdfn.EXTEND=alasql.utils.extend;stdfn.CHAR=String.fromCharCode.bind(String);stdfn.ASCII=function(a){return a.charCodeAt(0)};stdfn.COALESCE=function(){for(var i=0;i0){for(var i=0,ilen=table.data.length;i0){for(var i=0,ilen=table.data.length;i=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[table.xcolumns[col.columnid].dbtypeid]){q+="(new "+table.xcolumns[col.columnid].dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{if(values instanceof Array&&table.columns&&table.columns.length>0){table.columns.forEach(function(col,idx){var q="'"+col.columnid+"':";if(["INT","FLOAT","NUMBER","MONEY"].indexOf(col.dbtypeid)>=0){q+="+"+values[idx].toJavaScript()}else if(alasql.fn[col.dbtypeid]){q+="(new "+col.dbtypeid+"(";q+=values[idx].toJavaScript();q+="))"}else{q+=values[idx].toJavaScript()}ss.push(q)})}else{sw=JSONtoJavaScript(values)}}if(db.tables[tableid].defaultfns)ss.unshift(db.tables[tableid].defaultfns);if(sw){s+="a="+sw+";"}else{s+="a={"+ss.join(",")+"};"}if(db.tables[tableid].insert){s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].insert(a);"}else{s+="aa.push(a);"}});s33=s3+s;if(db.tables[tableid].insert){}else{s+="alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data="+"alasql.databases['"+databaseid+"'].tables['"+tableid+"'].data.concat(aa);"}s+="return "+self.values.length;var insertfn=new Function("db, params, alasql",s3+s)}else if(this.select){selectfn=this.select.compile(databaseid);if(db.engineid&&alasql.engines[db.engineid].intoTable){var statement=function(params,cb){var aa=selectfn(params);var res=alasql.engines[db.engineid].intoTable(db.databaseid,tableid,aa,null,cb);return res};return statement}else{var insertfn=function(db,params,alasql){var res=selectfn(params);if(db.tables[tableid].insert){for(var i=0,ilen=res.length;i0){s+="("+this.args.map(function(arg){return arg.toString()}).join(", ")+")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.CreateDatabase.prototype.execute=function(databaseid,params,cb){var args;if(this.args&&this.args.length>0){args=this.args.map(function(arg){return new Function("params","return "+arg.toJavaScript())(params)})}if(this.engineid){var res=alasql.engines[this.engineid].createDatabase(this.databaseid,this.args,this.ifnotexists,this.as,cb);return res}else{var dbid=this.databaseid;if(alasql.databases[dbid]){throw new Error("Database '"+dbid+"' already exists")}var a=new alasql.Database(dbid);var res=1;if(cb)return cb(res);return res}};yy.AttachDatabase=function(params){return yy.extend(this,params)};yy.AttachDatabase.prototype.toString=function(){var s=K("ATTACH");if(this.engineid)s+=" "+L(this.engineid);s+=" "+K("DATABASE")+" "+L(this.databaseid);if(args){s+="(";if(args.length>0){s+=args.map(function(arg){return arg.toString()}).join(", ")}s+=")"}if(this.as)s+=" "+K("AS")+" "+L(this.as);return s};yy.AttachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.engines[this.engineid]){throw new Error('Engine "'+this.engineid+'" is not defined.')}var res=alasql.engines[this.engineid].attachDatabase(this.databaseid,this.as,this.args,params,cb);return res};yy.DetachDatabase=function(params){return yy.extend(this,params)};yy.DetachDatabase.prototype.toString=function(){var s=K("DETACH");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DetachDatabase.prototype.execute=function(databaseid,params,cb){if(!alasql.databases[this.databaseid].engineid){throw new Error('Cannot detach database "'+this.engineid+'", because it was not attached.')}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.UseDatabase=function(params){return yy.extend(this,params)};yy.UseDatabase.prototype.toString=function(){return K("USE")+" "+K("DATABASE")+" "+L(this.databaseid)};yy.UseDatabase.prototype.execute=function(databaseid,params,cb){var dbid=this.databaseid;if(!alasql.databases[dbid]){throw new Error("Database '"+dbid+"' does not exist")}alasql.use(dbid);var res=1;if(cb)cb(res);return res};yy.DropDatabase=function(params){return yy.extend(this,params)};yy.DropDatabase.prototype.toString=function(){var s=K("DROP");if(this.ifexists)s+=" "+K("IF")+" "+K("EXISTS");s+=" "+K("DATABASE")+" "+L(this.databaseid);return s};yy.DropDatabase.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].dropDatabase(this.databaseid,this.ifexists,cb)}var res;var dbid=this.databaseid;if(dbid==alasql.DEFAULTDATABASEID){throw new Error("Drop of default database is prohibited")}if(!alasql.databases[dbid]){if(!this.ifexists){throw new Error("Database '"+dbid+"' does not exist")}else{res=0}}else{if(alasql.databases[dbid].engineid){throw new Error("Cannot drop database '"+dbid+"', because it is attached. Detach it.")}delete alasql.databases[dbid];if(dbid==alasql.useid){alasql.use()}res=1}if(cb)cb(res);return res};yy.Declare=function(params){return yy.extend(this,params)};yy.Declare.prototype.toString=function(){var s=K("DECLARE")+" ";if(this.declares&&this.declares.length>0){s=this.declares.map(function(declare){var s="";s+="@"+L(declare.variable)+" ";s+=declare.dbtypeid;if(this.dbsize)s+="("+N(this.dbsize);if(this.dbprecision)s+=","+N(this.dbprecision);s+=")";if(declare.expression)s+=" = "+declare.expression.toString();return s}).join(",")}return s};yy.Declare.prototype.execute=function(databaseid,params,cb){var res=1;if(this.declares&&this.declares.length>0){this.declares.map(function(declare){var dbtypeid=declare.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();alasql.declares[declare.variable]={dbtypeid:dbtypeid,dbsize:declare.dbsize,dbprecision:declare.dbprecision};if(declare.expression){alasql.vars[declare.variable]=new Function("params,alasql","return "+declare.expression.toJavaScript("({})","",null))(params,alasql);if(alasql.declares[declare.variable]){alasql.vars[declare.variable]=alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable])}}})}if(cb)res=cb(res);return res};yy.ShowDatabases=function(params){return yy.extend(this,params)};yy.ShowDatabases.prototype.toString=function(){var s=K("SHOW")+" "+K("DATABASES");if(this.like)s+="LIKE "+this.like.toString();return s};yy.ShowDatabases.prototype.execute=function(databaseid,params,cb){if(this.engineid){return alasql.engines[this.engineid].showDatabases(this.like,cb)}else{var self=this;var res=[];for(dbid in alasql.databases){res.push({databaseid:dbid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.databaseid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res}};yy.ShowTables=function(params){return yy.extend(this,params)};yy.ShowTables.prototype.toString=function(){var s=K("SHOW")+" "+K("TABLES");if(this.databaseid)s+=" FROM "+this.databaseid;if(this.like)s+=" "+K("LIKE")+" "+this.like.toString();return s};yy.ShowTables.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[this.databaseid||databaseid];var self=this;var res=[];for(tableid in db.tables){res.push({tableid:tableid})}if(self.like&&res&&res.length>0){res=res.filter(function(d){return d.tableid.match(new RegExp(self.like.value.replace(/\%/g,".*"),"g"))})}if(cb)cb(res);return res};yy.ShowColumns=function(params){return yy.extend(this,params)};yy.ShowColumns.prototype.toString=function(){var s=K("SHOW")+" "+K("COLUMNS");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowColumns.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table&&table.columns){var res=table.columns.map(function(col){return{columnid:col.columnid,dbtypeid:col.dbtypeid,dbsize:col.dbsize}});return res}else{return[]}};yy.ShowIndex=function(params){return yy.extend(this,params)};yy.ShowIndex.prototype.toString=function(){var s=K("SHOW")+" "+K("INDEX");if(this.table.tableid)s+=" "+K("FROM")+" "+this.table.tableid;if(this.databaseid)s+=" "+K("FROM")+" "+this.databaseid;return s};yy.ShowIndex.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;var res=[];if(table&&table.indices){for(var ind in table.indices){res.push({hh:ind,len:Object.keys(table.indices[ind]).length})}}return res};yy.ShowCreateTable=function(params){return yy.extend(this,params)};yy.ShowCreateTable.prototype.toString=function(){var s=K("SHOW")+" "+K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid);if(this.databaseid)s+=" "+K("FROM")+" "+L(this.databaseid);return s};yy.ShowCreateTable.prototype.execute=function(databaseid){var db=alasql.databases[this.databaseid||databaseid];var table=db.tables[this.table.tableid];var self=this;if(table){var s=K("CREATE")+" "+K("TABLE")+" "+L(this.table.tableid)+" (";var ss=[];if(table.columns){table.columns.forEach(function(col){var a=L(col.columnid)+" "+K(col.dbtypeid);if(col.dbsize)a+="("+N(col.dbsize)+")";if(col.primarykey)a+=" "+K("PRIMARY")+" "+K("KEY");ss.push(a)});s+=ss.join(", ")}s+=")";return s}else{throw new Error('There is no such table "'+this.table.tableid+'"')}};yy.SetVariable=function(params){return yy.extend(this,params)};yy.SetVariable.prototype.toString=function(){var s=K("SET")+" ";if(typeof this.value!="undefined")s+=K(this.variable.toUpperCase())+" "+(this.value?"ON":"OFF");if(this.expression)s+="@"+L(this.variable)+" = "+this.expression.toString();return s};yy.SetVariable.prototype.execute=function(databaseid,params,cb){if(typeof this.value!="undefined"){var val=this.value;if(val=="ON")val=true;else if(val=="OFF")val=false;alasql.options[this.variable]=val}else if(this.expression){var res=new Function("params,alasql","return "+this.expression.toJavaScript("({})","",null))(params,alasql);if(alasql.declares[this.variable]){res=alasql.stdfn.CONVERT(res,alasql.declares[this.variable])}if(this.props&&this.props.length>0){var fs="alasql.vars['"+this.variable+"']";fs+=this.props.map(function(prop){if(typeof prop=="string"){return"['"+prop+"']"}else if(typeof prop=="number"){return"["+prop+"]"}else{return"["+prop.toJavaScript()+"]"}}).join();new Function("value,alasql",fs+"=value")(res,alasql)}else{alasql.vars[this.variable]=res}}var res=1;if(cb)res=cb(res);return res};alasql.test=function(name,times,fn){if(arguments.length==0){alasql.log(alasql.con.results);return}else if(arguments.length==1){var tm=Date.now();fn();alasql.con.log(Date.now()-tm);return}if(arguments.length==2){fn=times;times=1}var tm=Date.now();for(var i=0;i",sql);if(res instanceof Array){if(console.table){console.table(res)}else{console.log(JSONtoString(res))}}else{console.log(JSONtoString(res))}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}var s="";if(typeof sql=="string"&&alasql.options.logprompt){s+="

"+alasql.pretty(sql)+"
"}if(res instanceof Array){if(res.length==0){s+="

[ ]

"}else if(typeof res[0]!="object"||res[0]instanceof Array){for(var i=0,ilen=res.length;i"+loghtml(res[i])+"

"}}else{s+=loghtml(res)}}else{s+=loghtml(res)}el.innerHTML+=s}};alasql.clear=function(){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.clear){console.clear()}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML=""}};alasql.write=function(s){var target=alasql.options.logtarget;if(typeof exports=="object"){target="console"}if(target=="console"||typeof exports=="object"){if(console.log){console.log(s)}else{}}else{var el;if(target=="output"){el=document.getElementsByTagName("output")[0]}else{if(typeof target=="string"){el=document.getElementById(target)}else{el=target}}el.innerHTML+=s}};function loghtml(res){var s="";if(typeof res=="undefined"){s+="undefined"}else if(res instanceof Array){s+="";s+="";var cols=[];for(colid in res[0]){cols.push(colid)}s+="
#";cols.forEach(function(colid){s+=""+colid});for(var i=0,ilen=res.length;i"+(i+1);cols.forEach(function(colid){s+=" ";if(+res[i][colid]==+res[i][colid]){s+='
';if(typeof res[i][colid]=="undefined")s+="NULL";else s+=res[i][colid];s+="
"}else{if(typeof res[i][colid]=="undefined"){s+="NULL"}else if(typeof res[i][colid]=="string"){s+=res[i][colid]}else s+=JSONtoString(res[i][colid])}})}s+="
"}else{s+="

"+JSONtoString(res)+"

"}return s}function scrollTo(element,to,duration){if(duration<=0)return;var difference=to-element.scrollTop;var perTick=difference/duration*10;setTimeout(function(){if(element.scrollTop==to)return;element.scrollTop=element.scrollTop+perTick;scrollTo(element,to,duration-10)},10)}alasql.prompt=function(el,useidel,firstsql){if(typeof exports=="object"){throw new Error("The functionality of prompt is not realized for Node.js")}var prompti=0;if(typeof el=="string")el=document.getElementById(el);if(typeof useidel=="string")useidel=document.getElementById(useidel);useidel.textContent=alasql.useid;if(firstsql){alasql.prompthistory.push(firstsql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(firstsql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+sql+"

");alasql.write('

'+err+"

")}}var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500);el.onkeydown=function(event){if(event.which==13){var sql=el.value;var olduseid=alasql.useid;el.value="";alasql.prompthistory.push(sql);prompti=alasql.prompthistory.length;try{var tm=Date.now();alasql.log(sql);alasql.write('

'+(Date.now()-tm)+" ms

")}catch(err){alasql.write("

"+olduseid+"> "+alasql.pretty(sql,false)+"

");alasql.write('

'+err+"

")}el.focus();useidel.textContent=alasql.useid;var y=el.getBoundingClientRect().top+document.getElementsByTagName("body")[0].scrollTop;scrollTo(document.getElementsByTagName("body")[0],y,500)}else if(event.which==38){prompti--;if(prompti<0)prompti=0;if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}else if(event.which==40){prompti++;if(prompti>=alasql.prompthistory.length){prompti=alasql.prompthistory.length;el.value=""}else if(alasql.prompthistory[prompti]){el.value=alasql.prompthistory[prompti];event.preventDefault()}}}};yy.BeginTransaction=function(params){return yy.extend(this,params)};yy.BeginTransaction.prototype.toString=function(){return K("BEGIN")+" "+K("TRANSACTION")};yy.BeginTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].begin(databaseid,cb)}else{}if(cb)cb(res);return res};yy.CommitTransaction=function(params){return yy.extend(this,params)};yy.CommitTransaction.prototype.toString=function(){return K("COMMIT")+" "+K("TRANSACTION")};yy.CommitTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[alasql.useid].engineid].commit(databaseid,cb)}else{}if(cb)cb(res);return res};yy.RollbackTransaction=function(params){return yy.extend(this,params)};yy.RollbackTransaction.prototype.toString=function(){return K("ROLLBACK")+" "+K("TRANSACTION")};yy.RollbackTransaction.prototype.execute=function(databaseid,params,cb){var res=1;if(alasql.databases[databaseid].engineid){return alasql.engines[alasql.databases[databaseid].engineid].rollback(databaseid,cb)}else{}if(cb)cb(res);return res};alasql.into.SQL=function(filename,opts,data,columns,cb){var res;if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};alasql.utils.extend(opt,opts);if(typeof opt.tableid=="undefined"){throw new Error("Table for INSERT TO is not defined.")}var s="";if(columns.length==0){if(typeof data[0]=="object"){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}else{}}for(var i=0,ilen=data.length;i0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var res=data.length;var s="";if(data.length>0){var key=columns[0].columnid;s+=data.map(function(d){return d[key]}).join("\n")}res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.TAB=alasql.into.TSV=function(filename,opts,data,columns,cb){var opt={};alasql.utils.extend(opt,opts);opt.separator=" ";return alasql.into.CSV(filename,opt,data,columns,cb)};alasql.into.CSV=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={};opt.separator=",";opt.quote='"';alasql.utils.extend(opt,opts);var res=data.length;var s="";if(opt.headers){s+=columns.map(function(col){return col.columnid}).join(opt.separator)+"\n"}data.forEach(function(d,idx){s+=columns.map(function(col){var s=d[col.columnid];s=(s+"").replace(new RegExp("\\"+opt.quote,"g"),'""');if((s+"").indexOf(opt.separator)>-1||(s+"").indexOf(opt.quote)>-1)s=opt.quote+s+opt.quote;return s}).join(opt.separator)+"\n"});res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res};alasql.into.XLSX=function(filename,opts,data,columns,cb){if(columns.length==0&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}if(typeof exports=="object"){var XLSX=require("xlsx")}else{var XLSX=window.XLSX}if(typeof filename=="object"){opts=filename;filename=undefined}var opt={sheetid:"Sheet1",headers:true};alasql.utils.extend(opt,opts);var res=1;var wb={SheetNames:[],Sheets:{}};if(opt.sourcefilename){alasql.utils.loadBinaryFile(opt.sourcefilename,!!cb,function(data){wb=XLSX.read(data,{type:"binary"});res=doExport()})}else{res=doExport()}function doExport(){var cells={};if(wb.SheetNames.indexOf(opt.sheetid)>-1){cells=wb.Sheets[opt.sheetid]}else{wb.SheetNames.push(opt.sheetid);wb.Sheets[opt.sheetid]={};cells=wb.Sheets[opt.sheetid]}var range="A1";if(opt.range)range=opt.range;var col0=alasql.utils.xlscn(range.match(/[A-Z]+/)[0]);var row0=+range.match(/[0-9]+/)[0]-1;if(wb.Sheets[opt.sheetid]["!ref"]){var rangem=wb.Sheets[opt.sheetid]["!ref"];var colm=alasql.utils.xlscn(rangem.match(/[A-Z]+/)[0]);var rowm=+rangem.match(/[0-9]+/)[0]-1}else{var colm=1,rowm=1}var colmax=Math.max(col0+columns.length,colm);var rowmax=Math.max(row0+data.length+2,rowm);var i=row0+1;wb.Sheets[opt.sheetid]["!ref"]="A1:"+alasql.utils.xlsnc(colmax)+rowmax;if(opt.headers){columns.forEach(function(col,idx){cells[alasql.utils.xlsnc(col0+idx)+""+i]={v:col.columnid}});i++}for(var j=0;j ";s+="";s+="";s+="";if(typeof sheet.caption!="undefined"){var caption=sheet.caption;if(typeof caption=="string"){caption={title:caption}}s+=""}if(typeof sheet.columns!="undefined"){columns=sheet.columns}else{if(columns.length==0&&data.length>0){if(typeof data[0]=="object"){if(data[0]instanceof Array){columns=data[0].map(function(d,columnidx){return{columnid:columnidx}})}else{columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}}}}columns.forEach(function(column,columnidx){if(typeof sheet.column!="undefined"){extend(column,sheet.column)}if(typeof column.width=="undefined"){if(sheet.column&&sheet.column.width!="undefined"){column.width=sheet.column.width}else{column.width="120px"}}if(typeof column.width=="number")column.width=column.width+"px";if(typeof column.columnid=="undefined")column.columnid=columnidx;if(typeof column.title=="undefined")column.title=""+column.columnid;if(sheet.headers&&sheet.headers instanceof Array)column.title=sheet.headers[idx]});s+="";columns.forEach(function(column){s+=''});s+="";if(sheet.headers){s+="";s+="";columns.forEach(function(column,columnidx){s+="";s+=""}s+="";if(data&&data.length>0){data.forEach(function(row,rowidx){if(rowidx>sheet.limit)return;s+=""});s+=""})}s+="";s+="
"});s+="
";s+="";s+="";var res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res;function style(a){var s=' style="';if(a&&typeof a.style!="undefined"){s+=a.style+";"}s+='" ';return s}};alasql.from.TABLETOP=function(key,opts,cb,idx,query){var res=[];var opt={headers:true,simpleSheet:true,key:key};alasql.utils.extend(opt,opts);opt.callback=function(data){res=data;if(cb)res=cb(res,idx,query)};Tabletop.init(opt);return res};alasql.from.HTML=function(selector,opts,cb,idx,query){var opt={};alasql.utils.extend(opt,opts);var sel=document.querySelector(selector);if(!sel&&sel.tagName!="TABLE"){throw new Error("Selected HTML element is not a TABLE")}var res=[];var headers=opt.headers;if(headers&&!(headers instanceof Array)){headers=[];var ths=sel.querySelector("thead tr").children;for(var i=0;i=N)return EOF;if(eol)return eol=false,EOL;var j=I;if(text.charCodeAt(j)===quoteCode){var i=j;while(i++http://github/agershun/alasq for more information'}];yy.Help.prototype.execute=function(databaseid,params,cb){var ss=[];if(!this.subject){ss=helpdocs}else{ss.push('See also http://github/agershun/alasq for more information')}if(cb)ss=cb(ss);return ss};yy.Print=function(params){return yy.extend(this,params)};yy.Print.prototype.toString=function(){var s=K("PRINT");if(this.statement)s+=" "+this.statement.toString();return s};yy.Print.prototype.execute=function(databaseid,params,cb){var res,s;if(this.statement){s=this.statement.execute(databaseid,params)}else{s=""}s=JSONtoString(s);console.log(s);if(cb)res=cb(res);return res};yy.Source=function(params){return yy.extend(this,params)};yy.Source.prototype.toString=function(){var s=K("SOURCE");if(this.url)s+=" "+S("'"+this.url+"'");return s};yy.Source.prototype.execute=function(databaseid,params,cb){var res;loadFile(this.url,!!cb,function(data){res=alasql(data);if(cb)res=cb(res);return res},function(err){throw err});return res};yy.Require=function(params){return yy.extend(this,params)};yy.Require.prototype.toString=function(){var s=K("REQUIRE");if(this.paths&&this.paths.length>0){s+=this.paths.map(function(path){return path.toString()}).join(",")}return s};yy.Require.prototype.execute=function(databaseid,params,cb){var self=this;var res=0;var ss="";if(this.paths.length>0){this.paths.forEach(function(path){loadFile(path.value,!!cb,function(data){res++;ss+=data;if(res0){res=res.filter(function(d){return d.databaseid.match(relike)})}}if(cb)cb(res);return res};LS.createTable=function(databaseid,tableid,ifnotexists,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var tb=LS.get(lsdbid+"."+tableid);var res=1;if(tb&&!ifnotexists){throw new Error('Table "'+tableid+'" alsready exists in localStorage database "'+lsdbid+'"')}var lsdb=LS.get(lsdbid);var table=alasql.databases[databaseid].tables[tableid];lsdb.tables[tableid]={columns:table.columns};LS.set(lsdbid,lsdb);LS.set(lsdbid+"."+tableid,[]);if(cb)cb(res);return res};LS.dropTable=function(databaseid,tableid,ifexists,cb){var res=1;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(!ifexists&&!lsdb.tables[tableid]){throw new Error('Cannot drop table "'+tableid+'" in localStorage, because it does not exist')}delete lsdb.tables[tableid];LS.set(lsdbid,lsdb);localStorage.removeItem(lsdbid+"."+tableid);if(cb)cb(res);return res};LS.fromTable=function(databaseid,tableid,cb,idx,query){var lsdbid=alasql.databases[databaseid].lsdbid;var res=LS.get(lsdbid+"."+tableid);if(cb)res=cb(res,idx,query);return res};LS.intoTable=function(databaseid,tableid,value,columns,cb){var lsdbid=alasql.databases[databaseid].lsdbid;var res=value.length;var tb=LS.get(lsdbid+"."+tableid);if(!tb)tb=[];tb=tb.concat(value);LS.set(lsdbid+"."+tableid,tb);if(cb)cb(res);return res};LS.loadTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;db.tables[tableid].data=LS.get(lsdbid+"."+tableid)};LS.saveTableData=function(databaseid,tableid){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;LS.set(lsdbid+"."+tableid,db.tables[tableid].data);db.tables[tableid].data=null};LS.commit=function(databaseid,cb){var db=alasql.databases[databaseid];var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb={databaseid:lsdbid,tables:{}};if(db.tables){for(var tbid in db.tables){lsdb.tables[tbid]={columns:db.tables[tbid].columns};LS.set(lsdbid+"."+tbid,db.tables[tbid].data)}}LS.set(lsdbid,lsdb);return 1};LS.begin=LS.commit;LS.rollback=function(databaseid,cb){var db=alasql.databases[databaseid];db.dbversion++;var lsdbid=alasql.databases[databaseid].lsdbid;var lsdb=LS.get(lsdbid);if(lsdb.tables){for(var tbid in lsdb.tables){var tb=new alasql.Table({columns:db.tables[tbid].columns});extend(tb,lsdb.tables[tbid]);lsdb.tables[tbid]=tb;if(!alasql.options.autocommit){lsdb.tables[tbid].data=LS.get(db.lsdbid+"."+tbid)}lsdb.tables[tbid].indexColumns()}}delete alasql.databases[databaseid];alasql.databases[databaseid]=new alasql.Database(databaseid);extend(alasql.databases[databaseid],lsdb);alasql.databases[databaseid].databaseid=databaseid;alasql.databases[databaseid].engineid="LOCALSTORAGE"};var SQLITE=alasql.engines.SQLITE=function(){};SQLITE.createDatabase=function(wdbid,args,ifnotexists,dbid,cb){throw new Error("Connot create SQLITE database in memory. Attach it.")};SQLITE.dropDatabase=function(databaseid){throw new Error("This is impossible to drop SQLite database. Detach it.")};SQLITE.attachDatabase=function(sqldbid,dbid,args,params,cb){var res=1;if(alasql.databases[dbid]){throw new Error('Unable to attach database as "'+dbid+'" because it already exists')}if(args[0]&&args[0]instanceof yy.StringValue||args[0]instanceof yy.ParamValue){if(args[0]instanceof yy.StringValue){var value=args[0].value}else if(args[0]instanceof yy.ParamValue){var value=params[args[0].param]}alasql.utils.loadBinaryFile(value,true,function(data){var db=new alasql.Database(dbid||sqldbid);db.engineid="SQLITE";db.sqldbid=sqldbid;var sqldb=db.sqldb=new SQL.Database(data);db.tables=[];var tables=sqldb.exec("SELECT * FROM sqlite_master WHERE type='table'")[0].values;tables.forEach(function(tbl){db.tables[tbl[1]]={};var columns=db.tables[tbl[1]].columns=[];var ast=alasql.parse(tbl[4]);var coldefs=ast.statements[0].columns;if(coldefs&&coldefs.length>0){coldefs.forEach(function(cd){columns.push(cd)})}});cb(1)},function(err){throw new Error('Cannot open SQLite database file "'+args[0].value+'"')});return res}else{throw new Error("Cannot attach SQLite database without a file")}return res};SQLITE.fromTable=function(databaseid,tableid,cb,idx,query){var data=alasql.databases[databaseid].sqldb.exec("SELECT * FROM "+tableid);var columns=query.sources[idx].columns=[];if(data[0].columns.length>0){data[0].columns.forEach(function(columnid){columns.push({columnid:columnid})})}var res=[];if(data[0].values.length>0){data[0].values.forEach(function(d){var r={};columns.forEach(function(col,idx){r[col.columnid]=d[idx]});res.push(r)})}if(cb)cb(res,idx,query)};SQLITE.intoTable=function(databaseid,tableid,value,columns,cb){var sqldb=alasql.databases[databaseid].sqldb;for(var i=0,ilen=value.length;i1){var sql="REQUIRE "+paths.map(function(p){return'"'+p+'"'}).join(",");alasql(sql,[],cb)}}else if(path===false){delete alasql.webworker;return}}} \ No newline at end of file diff --git a/package.json b/package.json index 23c6c8740e..589335a142 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "alasql", "description": "AlaSQL - JavaScript SQL database and data manipulation library", - "version": "0.0.47", + "version": "0.0.48", "author": "Andrey Gershun ", "directories": { "example": "examples", diff --git a/src/05copyright.js b/src/05copyright.js index 704f4e6c89..e66a166491 100644 --- a/src/05copyright.js +++ b/src/05copyright.js @@ -1,8 +1,8 @@ // // alasql.js // AlaSQL - JavaScript SQL database -// Date: 16.04.2015 -// Version: 0.0.47 +// Date: 19.04.2015 +// Version: 0.0.48 // (ñ) 2014-2015, Andrey Gershun // diff --git a/src/10start.js b/src/10start.js index dc90cb9301..29afc15dbe 100644 --- a/src/10start.js +++ b/src/10start.js @@ -78,5 +78,5 @@ var alasql = function(sql, params, cb, scope) { }; /** Current version of alasql */ -alasql.version = "0.0.47"; +alasql.version = "0.0.48"; diff --git a/src/38query.js b/src/38query.js index 69e136838f..43d47b29f6 100644 --- a/src/38query.js +++ b/src/38query.js @@ -1,5 +1,8 @@ // Main query procedure function queryfn(query,oldscope,cb, A,B) { + +// console.log(query.queriesfn); + var ms; query.sourceslen = query.sources.length; var slen = query.sourceslen; diff --git a/src/39dojoin.js b/src/39dojoin.js index 782f432b44..91c0fd4379 100644 --- a/src/39dojoin.js +++ b/src/39dojoin.js @@ -20,6 +20,8 @@ function doJoin (query, scope, h) { if(query.groupfn) { query.groupfn(scope, query.params, query.alasql) } else { +// query.qwerty = 999; +//console.log(query.qwerty, query.queriesfn && query.queriesfn.length,2); query.data.push(query.selectfn(scope, query.params, alasql)); } } diff --git a/src/40select.js b/src/40select.js index 63dfe57437..816f1317af 100644 --- a/src/40select.js +++ b/src/40select.js @@ -84,7 +84,7 @@ yy.Select.prototype.toJavaScript = function(context, tableid, defcols) { // return this.expression.toJavaScript(context, tableid, defcols); // console.log('Select.toJS', 81, this.queriesidx); // var s = 'this.queriesdata['+(this.queriesidx-1)+'][0]'; -//console.log(this); + var s = 'alasql.utils.flatArray(this.queriesfn['+(this.queriesidx-1)+'](this.params,null,'+context+'))[0]'; // s = '(console.log(this.queriesfn[0]),'+s+')'; diff --git a/src/41exists.js b/src/41exists.js index b5a322a18d..2250ae108f 100644 --- a/src/41exists.js +++ b/src/41exists.js @@ -34,6 +34,9 @@ yy.Select.prototype.compileQueries = function(query) { }); }; +// +// Prepare subqueries and exists +// alasql.precompile = function(statement,databaseid,params){ // console.log(statement); if(!statement) return; @@ -48,6 +51,4 @@ alasql.precompile = function(statement,databaseid,params){ return ex.compile(databaseid || statement.database.databaseid); }); }; - - } \ No newline at end of file diff --git a/src/423groupby.js b/src/423groupby.js index e76b209b45..82c1c72b9e 100644 --- a/src/423groupby.js +++ b/src/423groupby.js @@ -12,7 +12,12 @@ yy.Select.prototype.compileGroup = function(query) { // console.log(this.group); var self = this; - var tableid = query.sources[0].alias; + if(query.sources.length > 0) { + var tableid = query.sources[0].alias; + } else { + // If SELECT contains group aggregators without source tables + var tableid = ''; + } var defcols = query.defcols; // console.log(16,tableid, defcols); diff --git a/src/424select.js b/src/424select.js index 74f5dbfca4..56f70b0493 100644 --- a/src/424select.js +++ b/src/424select.js @@ -171,7 +171,7 @@ yy.Select.prototype.compileSelect1 = function(query) { } yy.Select.prototype.compileSelect2 = function(query) { - var s = query.selectfns ; + var s = query.selectfns; // console.log(s); return new Function('p,params,alasql',s+'return r'); }; diff --git a/src/50expression.js b/src/50expression.js index c253cb42ce..2eff3d0d87 100644 --- a/src/50expression.js +++ b/src/50expression.js @@ -15,7 +15,7 @@ yy.ExpressionStatement.prototype.execute = function (databaseid, params, cb) { if(this.expression) { // console.log(this.expression.toJavaScript('','', null)); // console.log(this.expression.toJavaScript('','', null)); - var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('','', null)); + var expr = new Function("params,alasql,p",'return '+this.expression.toJavaScript('({})','', null)); var res = expr(params,alasql); if(cb) res = cb(res); return res; diff --git a/src/55functions.js b/src/55functions.js index b369be37ce..bfb9772f1e 100644 --- a/src/55functions.js +++ b/src/55functions.js @@ -132,7 +132,8 @@ stdlib.MID = function(a,b,c){ else if(arguments.length == 3) return '('+a+').substr('+b+'-1,'+c+')'; }; -stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?null:'+a+')'}; +// Here we uses undefined instead of null +stdlib.NULLIF = function(a,b){return '('+a+'=='+b+'?undefined:'+a+')'}; stdlib.POWER = function(a,b) {return 'Math.pow('+a+','+b+')'}; diff --git a/src/57case.js b/src/57case.js index a291d85ce1..6efaa677f9 100644 --- a/src/57case.js +++ b/src/57case.js @@ -26,12 +26,13 @@ yy.CaseValue.prototype.findAggregator = function (query){ if(w.when.findAggregator) w.when.findAggregator(query); if(w.then.findAggregator) w.then.findAggregator(query); }); - } + }; + if(this.elses && this.elses.findAggregator) this.elses.findAggregator(query); }; yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { - var s = '(function('+context+',params,alasql){var r;'; + var s = '((function('+context+',params,alasql){var r;'; if(this.expression) { // this.expression.toJavaScript(context, tableid) s += 'v='+this.expression.toJavaScript(context, tableid, defcols)+';'; @@ -43,7 +44,8 @@ yy.CaseValue.prototype.toJavaScript = function(context, tableid, defcols) { +') {r='+w.then.toJavaScript(context,tableid, defcols)+'}'; }).join(' else '); if(this.elses) s += ' else {r='+this.elses.toJavaScript(context,tableid,defcols)+'}'; } - s += 'return r;})('+context+',params,alasql)'; + // TODO remove bind from CASE + s += ';return r;}).bind(this))('+context+',params,alasql)'; return s; }; \ No newline at end of file diff --git a/src/65createindex.js b/src/65createindex.js index 13d52a96a5..871540f990 100644 --- a/src/65createindex.js +++ b/src/65createindex.js @@ -16,7 +16,7 @@ yy.CreateIndex.prototype.toString = function() { } // CREATE TABLE -yy.CreateIndex.prototype.execute = function (databaseid) { +yy.CreateIndex.prototype.execute = function (databaseid,params,cb) { // var self = this; var db = alasql.databases[databaseid]; var tableid = this.table.tableid; @@ -55,7 +55,9 @@ yy.CreateIndex.prototype.execute = function (databaseid) { } } }; - + var res = 1; + if(cb) res = cb(res); + return res; }; diff --git a/src/68if.js b/src/68if.js index f757d37445..01e2ed6bfb 100644 --- a/src/68if.js +++ b/src/68if.js @@ -20,8 +20,10 @@ yy.If.prototype.toString = function() { yy.If.prototype.execute = function (databaseid,params,cb){ var res; // console.log(this); -// console.log(this.expression.toJavaScript()); - var fn = new Function('params,alasql,p','return '+this.expression.toJavaScript()).bind(this); +// console.log(this.expression.toJavaScript('{}','',null)); +// console.log(); + var fn = new Function('params,alasql,p','return '+this.expression.toJavaScript('({})','',null)).bind(this); +// var fn = new Function('params,alasql,p','console.log(this.thenstat);return '+this.expression.toJavaScript('({})','',null)).bind(this); if(fn(params,alasql)) res = this.thenstat.execute(databaseid,params,cb); else { if(this.elsestat) res = this.elsestat.execute(databaseid,params,cb); diff --git a/src/77declare.js b/src/77declare.js index 22ace81fb8..55dbc7f614 100644 --- a/src/77declare.js +++ b/src/77declare.js @@ -38,7 +38,7 @@ yy.Declare.prototype.execute = function (databaseid,params,cb) { if(declare.expression) { // console.log(this.expression.toJavaScript('','', null)); alasql.vars[declare.variable] = new Function("params,alasql","return " - +declare.expression.toJavaScript('','', null))(params,alasql); + +declare.expression.toJavaScript('({})','', null))(params,alasql); if(alasql.declares[declare.variable]) { alasql.vars[declare.variable] = alasql.stdfn.CONVERT(alasql.vars[declare.variable],alasql.declares[declare.variable]); } diff --git a/src/79set.js b/src/79set.js index 163e21fd20..6f0e7c5d71 100644 --- a/src/79set.js +++ b/src/79set.js @@ -24,7 +24,7 @@ yy.SetVariable.prototype.execute = function (databaseid,params,cb) { } else if(this.expression) { // console.log(this.expression.toJavaScript('','', null)); var res = new Function("params,alasql","return " - +this.expression.toJavaScript('','', null))(params,alasql); + +this.expression.toJavaScript('({})','', null))(params,alasql); if(alasql.declares[this.variable]) { res = alasql.stdfn.CONVERT(res,alasql.declares[this.variable]); } diff --git a/src/alasqlparser.jison b/src/alasqlparser.jison index 6cb157d039..48f3fa1978 100644 --- a/src/alasqlparser.jison +++ b/src/alasqlparser.jison @@ -201,6 +201,8 @@ NOT\s+LIKE return 'NOT_LIKE' 'TABLES' return 'TABLES' 'TARGET' return 'TARGET' 'TD' return 'TD' +'TEMP' return 'TEMP' +'TEMPORARY' return 'TEMPORARY' 'TEXTSTRING' return 'TEXTSTRING' 'TH' return 'TH' 'THEN' return 'THEN' @@ -532,8 +534,14 @@ IntoClause FromClause : FROM FromTablesList { $$ = { from: $2 }; } - | FROM FromTable JoinTablesList +/* | FROM FromTable JoinTablesList { $$ = { from: [$2], joins: $3 }; } +*/ | FROM FromTablesList JoinTablesList + { $$ = { from: $2, joins: $3 }; } +/* | FROM LPAR FromTable JoinTablesList RPAR + { $$ = { from: [$3], joins: $4 }; } +*/ | FROM LPAR FromTablesList JoinTablesList RPAR + { $$ = { from: $3, joins: $4 }; } | { $$ = undefined; } ; @@ -1370,26 +1378,21 @@ ColumnsList /* CREATE TABLE */ CreateTable -/* : CREATE TemporaryClause TABLE IfNotExists Table LPAR CreateTableDefClause RPAR CreateTableOptionsClause - -*/ - : CREATE TABLE IfNotExists Table LPAR CreateTableDefClause RPAR CreateTableOptionsClause { - $$ = new yy.CreateTable({table:$4}); - //yy.extend($$,$2); - yy.extend($$,$3); - yy.extend($$,$6); + $$ = new yy.CreateTable({table:$5}); + yy.extend($$,$2); + yy.extend($$,$4); + yy.extend($$,$7); + yy.extend($$,$9); } - | CREATE TABLE IfNotExists Table - { - $$ = new yy.CreateTable({table:$4}); - } -/* | CREATE TABLE IfNotExists Literal DOT Literal + | CREATE TemporaryClause TABLE IfNotExists Table { - $$ = new yy.CreateTable({table:new yy.Table({tableid:$6, databaseid:$4})}); + $$ = new yy.CreateTable({table:$5}); + yy.extend($$,$2); + yy.extend($$,$4); } -*/ ; +; CreateTableOptionsClause : @@ -1508,6 +1511,18 @@ ColsList { $$ = $1; $1.push($3); } ; +/* +OrderedColsList + : Literal + { $$ = [$1]; } + | STRING + { $$ = [$1]; } + | OrderedColsList COMMA Literal + { $$ = $1; $1.push($3); } + | OrderedColsList COMMA STRING + { $$ = $1; $1.push($3); } + ; +*/ ColumnDefsList : ColumnDef { $$ = [$1];} @@ -1664,9 +1679,9 @@ DropDatabase /* INDEXES */ CreateIndex - : CREATE INDEX Literal ON Table LPAR ColsList RPAR + : CREATE INDEX Literal ON Table LPAR OrderExpressionsList RPAR { $$ = new yy.CreateIndex({indexid:$3, table:$5, columns:$7})} - | CREATE UNIQUE INDEX Literal ON Table LPAR ColsList RPAR + | CREATE UNIQUE INDEX Literal ON Table LPAR OrderExpressionsList RPAR { $$ = new yy.CreateIndex({indexid:$4, table:$6, columns:$8, unique:true})} ; @@ -1721,48 +1736,25 @@ ShowCreateTable ; CreateView - - : CREATE VIEW IfNotExists Table LPAR ColumnsList RPAR AS Select - { - $$ = new yy.CreateTable({table:$4,view:true,select:$9,viewcolumns:$6}); - yy.extend($$,$3); + : CREATE TemporaryClause VIEW IfNotExists Table LPAR ColumnsList RPAR AS Select + { + $$ = new yy.CreateTable({table:$5,view:true,select:$10,viewcolumns:$7}); + yy.extend($$,$2); + yy.extend($$,$4); } - | CREATE VIEW IfNotExists Table AS Select + | CREATE TemporaryClause VIEW IfNotExists Table AS Select { - $$ = new yy.CreateTable({table:$4,view:true,select:$6}); + $$ = new yy.CreateTable({table:$5,view:true,select:$7}); + yy.extend($$,$2); + yy.extend($$,$4); } ; -/* - : CREATE VIEW IfNotExists View AS Select - { $$ = new yy.CreateTable({table:new yy.Table({tableid:$4}), view:true, select: $5}); } - | CREATE VIEW View LPAR ColsList RPAR AS Select - { $$ = new yy.CreateTable({table:new yy.Table({tableid:$4}),view:true, select: $5}); } - ; - - | CREATE TABLE IfNotExists Literal - { - $$ = new yy.CreateTable({table:new yy.Table({tableid:$4})}); - } - | CREATE TABLE IfNotExists Literal DOT Literal - { - $$ = new yy.CreateTable({table:new yy.Table({tableid:$6, databaseid:$4})}); - } - ; -*/ DropView : DROP VIEW IfExists Table { $$ = new yy.DropTable({table:$4, view:true}); yy.extend($$, $3); } ; /* -View - : Literal - { $$ = new yy.View({viewid: $1}); } - | Literal DOT Literal - { $$ = new yy.View({databaseid:$1, viewid: $3}); } - ; -*/ -/* DeclareCursor : DECLARE Literal CURSOR FOR Select { $$ = new yy.DeclareCursor({cursorid:$2, select:$5}); } @@ -1998,7 +1990,11 @@ If } | IF Expression AStatement - { $$ = new yy.If({expression:$2,thenstat:$3}); } + { + $$ = new yy.If({expression:$2,thenstat:$3}); + if($3.exists) $$.exists = $3.exists; + if($3.queries) $$.queries = $3.queries; + } ; ElseStatement diff --git a/src/alasqlparser.js b/src/alasqlparser.js index 15109fe7d7..a269644390 100644 --- a/src/alasqlparser.js +++ b/src/alasqlparser.js @@ -72,12 +72,12 @@ } */ var parser = (function(){ -var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[1,151],$V81=[4,5],$V91=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Va1=[1,167],$Vb1=[1,175],$Vc1=[1,174],$Vd1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Ve1=[1,206],$Vf1=[1,199],$Vg1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vh1=[2,74],$Vi1=[1,220],$Vj1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vk1=[1,236],$Vl1=[1,232],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,237],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,252],$VE1=[1,253],$VF1=[1,255],$VG1=[1,254],$VH1=[1,256],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[2,197],$VM1=[1,263],$VN1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VO1=[2,255],$VP1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VQ1=[1,271],$VR1=[1,281],$VS1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VT1=[1,297],$VU1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,102,104,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,258,259,260,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VV1=[1,304],$VW1=[1,305],$VX1=[2,368],$VY1=[1,310],$VZ1=[8,9,11,61,202,206],$V_1=[2,420],$V$1=[1,321],$V02=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V12=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22=[2,110],$V32=[1,349],$V42=[61,80],$V52=[8,9,11,61,65,192,202,206,229,247,259,275,276,279,280,292],$V62=[79,236,237],$V72=[1,414],$V82=[1,420],$V92=[1,421],$Va2=[1,431],$Vb2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vc2=[2,270],$Vd2=[1,438],$Ve2=[202,204,206],$Vf2=[61,323],$Vg2=[61,321,323],$Vh2=[1,445],$Vi2=[61,321],$Vj2=[4,5,96,191],$Vk2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vl2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vm2=[1,512],$Vn2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vo2=[2,180],$Vp2=[1,514],$Vq2=[1,515],$Vr2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vs2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[1,537],$Vy2=[61,65],$Vz2=[2,195],$VA2=[1,577],$VB2=[8,9,11,65,135,136,137,139,145,202,206],$VC2=[8,9,11,61,65,124,125,135,136,137,139,145,202,206],$VD2=[1,592],$VE2=[1,593],$VF2=[1,595],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,606],$VO2=[1,617],$VP2=[8,9,11,61,124,202,204,206,356],$VQ2=[1,625],$VR2=[1,624],$VS2=[2,233],$VT2=[1,646],$VU2=[2,437],$VV2=[1,667],$VW2=[1,679],$VX2=[8,9,11,61,202,204,206,356],$VY2=[1,682],$VZ2=[8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V_2=[8,9,11,65,135,136,137,145,202,206],$V$2=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V03=[1,696],$V13=[1,698],$V23=[4,5,64,193,195,196,197,198],$V33=[8,9,11,202,204,206,356],$V43=[214,219],$V53=[1,738],$V63=[8,9,11,61,65,202,206],$V73=[1,754],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,773],$Va3=[1,774],$Vb3=[1,775],$Vc3=[8,9,11,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,805],$Ve3=[1,818],$Vf3=[1,819],$Vg3=[1,817],$Vh3=[1,815],$Vi3=[1,821],$Vj3=[1,812],$Vk3=[1,813],$Vl3=[1,814],$Vm3=[1,816],$Vn3=[1,825],$Vo3=[1,830],$Vp3=[1,831],$Vq3=[1,832],$Vr3=[1,833],$Vs3=[78,86,275,276,277,279],$Vt3=[2,380],$Vu3=[1,838],$Vv3=[8,9,11,65,202,206],$Vw3=[1,851],$Vx3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vy3=[1,868],$Vz3=[1,867],$VA3=[8,9,11,202,206,247,258,259,260],$VB3=[1,921],$VC3=[8,9,11,61,65,135,136,137,145,202,206],$VD3=[1,938]; +var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,35],$V3=[1,61],$V4=[1,80],$V5=[1,70],$V6=[1,68],$V7=[1,78],$V8=[1,54],$V9=[1,57],$Va=[1,52],$Vb=[1,49],$Vc=[1,56],$Vd=[1,50],$Ve=[1,58],$Vf=[1,51],$Vg=[1,55],$Vh=[1,67],$Vi=[1,62],$Vj=[1,69],$Vk=[1,71],$Vl=[1,72],$Vm=[1,65],$Vn=[1,66],$Vo=[1,64],$Vp=[1,73],$Vq=[1,74],$Vr=[1,75],$Vs=[1,76],$Vt=[1,77],$Vu=[1,53],$Vv=[1,63],$Vw=[1,60],$Vx=[1,82],$Vy=[1,83],$Vz=[8,9,11,202],$VA=[8,9,11,202,206],$VB=[1,138],$VC=[1,139],$VD=[1,103],$VE=[1,114],$VF=[1,111],$VG=[1,110],$VH=[1,128],$VI=[1,124],$VJ=[1,125],$VK=[1,129],$VL=[1,130],$VM=[1,131],$VN=[1,132],$VO=[1,133],$VP=[1,134],$VQ=[1,135],$VR=[1,136],$VS=[1,137],$VT=[1,112],$VU=[1,113],$VV=[1,115],$VW=[1,116],$VX=[1,121],$VY=[1,122],$VZ=[1,117],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,123],$V21=[1,109],$V31=[1,108],$V41=[1,107],$V51=[1,127],$V61=[1,140],$V71=[253,309],$V81=[1,152],$V91=[4,5],$Va1=[8,9,11,65,97,124,125,135,136,137,139,145,202,206],$Vb1=[1,168],$Vc1=[1,176],$Vd1=[1,175],$Ve1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vf1=[1,207],$Vg1=[1,200],$Vh1=[4,5,64,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vi1=[2,74],$Vj1=[1,221],$Vk1=[4,5,64,75,78,79,88,96,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,209,210,229,315,319],$Vl1=[1,237],$Vm1=[1,233],$Vn1=[1,234],$Vo1=[1,235],$Vp1=[1,236],$Vq1=[1,238],$Vr1=[1,239],$Vs1=[1,240],$Vt1=[1,241],$Vu1=[1,242],$Vv1=[1,243],$Vw1=[1,244],$Vx1=[1,245],$Vy1=[1,246],$Vz1=[1,247],$VA1=[1,248],$VB1=[1,249],$VC1=[1,250],$VD1=[1,251],$VE1=[1,253],$VF1=[1,254],$VG1=[1,256],$VH1=[1,255],$VI1=[1,257],$VJ1=[1,258],$VK1=[1,259],$VL1=[1,260],$VM1=[2,198],$VN1=[1,264],$VO1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VP1=[2,256],$VQ1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VR1=[1,272],$VS1=[1,282],$VT1=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,321,323,329,331,332,334,335,336,337,338,340,343,344,356],$VU1=[1,298],$VV1=[4,5,8,9,11,45,59,61,63,64,65,78,80,86,91,96,97,101,103,106,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,196,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,245,247,251,259,260,261,264,275,276,277,279,280,288,289,292,293,295,296,297,298,299,300,301,302,304,305,306,310,312,313,321,323,328,329,331,332,334,335,336,337,338,340,343,344,356],$VW1=[1,305],$VX1=[1,306],$VY1=[2,369],$VZ1=[1,311],$V_1=[8,9,11,61,202,206],$V$1=[2,421],$V02=[1,322],$V12=[8,9,11,65,124,125,135,136,137,139,145,202,206],$V22=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32=[2,111],$V42=[1,350],$V52=[61,80],$V62=[8,9,11,61,65,192,202,206,229,247,260,275,276,279,280,292],$V72=[79,236,237],$V82=[1,415],$V92=[1,421],$Va2=[1,422],$Vb2=[1,432],$Vc2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,209,210,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vd2=[2,271],$Ve2=[1,439],$Vf2=[202,204,206],$Vg2=[61,323],$Vh2=[61,321,323],$Vi2=[1,446],$Vj2=[61,321],$Vk2=[4,5,96,191],$Vl2=[8,9,11,65,125,135,136,137,139,145,202,206],$Vm2=[8,9,11,65,91,97,124,125,135,136,137,139,145,202,206],$Vn2=[1,514],$Vo2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,202,206],$Vp2=[2,181],$Vq2=[1,516],$Vr2=[1,517],$Vs2=[8,9,11,61,65,91,97,124,125,135,136,137,139,145,150,151,202,206],$Vt2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,207,208,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vu2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vv2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vw2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vx2=[4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,192,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],$Vy2=[1,539],$Vz2=[61,65],$VA2=[2,196],$VB2=[1,578],$VC2=[8,9,11,65,135,136,137,139,145,202,206],$VD2=[1,589],$VE2=[1,593],$VF2=[1,594],$VG2=[1,596],$VH2=[1,597],$VI2=[1,598],$VJ2=[1,599],$VK2=[1,600],$VL2=[1,601],$VM2=[1,602],$VN2=[1,603],$VO2=[8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$VP2=[1,608],$VQ2=[1,619],$VR2=[8,9,11,61,124,202,204,206,356],$VS2=[1,627],$VT2=[1,626],$VU2=[2,234],$VV2=[1,648],$VW2=[2,438],$VX2=[1,669],$VY2=[1,678],$VZ2=[8,9,11,61,202,204,206,356],$V_2=[1,681],$V$2=[8,9,11,65,135,136,137,145,202,206],$V03=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206],$V13=[1,695],$V23=[1,697],$V33=[4,5,64,193,195,196,197,198],$V43=[8,9,11,202,204,206,356],$V53=[214,219],$V63=[1,738],$V73=[8,9,11,61,65,202,206],$V83=[8,9,11,65,135,136,137,202,206],$V93=[1,775],$Va3=[1,776],$Vb3=[1,777],$Vc3=[8,9,11,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$Vd3=[1,808],$Ve3=[1,821],$Vf3=[1,822],$Vg3=[1,820],$Vh3=[1,818],$Vi3=[1,824],$Vj3=[1,815],$Vk3=[1,816],$Vl3=[1,817],$Vm3=[1,819],$Vn3=[1,828],$Vo3=[8,9,11,61,65,135,136,137,145,202,206],$Vp3=[8,9,11,65,202,206],$Vq3=[1,845],$Vr3=[8,9,11,61,65,134,135,136,137,139,145,202,206],$Vs3=[1,862],$Vt3=[1,861],$Vu3=[1,891],$Vv3=[1,892],$Vw3=[1,893],$Vx3=[1,894],$Vy3=[78,86,275,276,277,279],$Vz3=[2,381],$VA3=[1,899],$VB3=[1,925],$VC3=[8,9,11,202,206,247,259,260,261],$VD3=[1,1020],$VE3=[1,1030]; var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"Literal":3,"LITERAL":4,"BRALITERAL":5,"main":6,"Statements":7,"EOF":8,"SEMICOLON":9,"AStatement":10,"GO":11,"ExplainStatement":12,"EXPLAIN":13,"QUERY":14,"PLAN":15,"Statement":16,"If":17,"AlterTable":18,"AttachDatabase":19,"CreateDatabase":20,"CreateIndex":21,"CreateTable":22,"CreateView":23,"Declare":24,"Delete":25,"DetachDatabase":26,"DropDatabase":27,"DropIndex":28,"DropTable":29,"DropView":30,"Insert":31,"RenameTable":32,"Select":33,"Merge":34,"WithSelect":35,"ShowCreateTable":36,"ShowColumns":37,"ShowDatabases":38,"ShowIndex":39,"ShowTables":40,"TruncateTable":41,"BeginTransaction":42,"CommitTransaction":43,"RollbackTransaction":44,"EndTransaction":45,"UseDatabase":46,"Update":47,"Help":48,"JavaScript":49,"Source":50,"Assert":51,"While":52,"Continue":53,"Break":54,"BeginEnd":55,"Print":56,"Require":57,"SetVariable":58,"WITH":59,"WithTablesList":60,"COMMA":61,"WithTable":62,"AS":63,"LPAR":64,"RPAR":65,"SelectClause":66,"IntoClause":67,"FromClause":68,"WhereClause":69,"GroupClause":70,"OrderClause":71,"LimitClause":72,"UnionClause":73,"SelectModifier":74,"DISTINCT":75,"TopClause":76,"ResultColumns":77,"UNIQUE":78,"ALL":79,"SELECT":80,"VALUE":81,"ROW":82,"COLUMN":83,"MATRIX":84,"TEXTSTRING":85,"INDEX":86,"RECORDSET":87,"TOP":88,"NumValue":89,"PERCENT":90,"INTO":91,"Table":92,"FuncValue":93,"ParamValue":94,"VarValue":95,"STRING":96,"FROM":97,"FromTablesList":98,"FromTable":99,"JoinTablesList":100,"ApplyClause":101,"CROSS":102,"APPLY":103,"OUTER":104,"FromString":105,"DOT":106,"JoinTable":107,"JoinMode":108,"JoinTableAs":109,"OnClause":110,"JoinModeMode":111,"NATURAL":112,"JOIN":113,"INNER":114,"LEFT":115,"RIGHT":116,"FULL":117,"SEMI":118,"ANTI":119,"ON":120,"Expression":121,"USING":122,"ColumnsList":123,"WHERE":124,"GROUP":125,"BY":126,"GroupExpressionsList":127,"HavingClause":128,"GroupExpression":129,"GROUPING":130,"SETS":131,"ROLLUP":132,"CUBE":133,"HAVING":134,"UNION":135,"EXCEPT":136,"INTERSECT":137,"CORRESPONDING":138,"ORDER":139,"OrderExpressionsList":140,"OrderExpression":141,"DIRECTION":142,"COLLATE":143,"NOCASE":144,"LIMIT":145,"OffsetClause":146,"OFFSET":147,"ResultColumn":148,"TDTH":149,"TD":150,"TH":151,"NUMBER":152,"StringValue":153,"Star":154,"STAR":155,"Column":156,"AggrValue":157,"Op":158,"LogicValue":159,"NullValue":160,"ExistsValue":161,"CaseValue":162,"CastClause":163,"Json":164,"NewClause":165,"JAVASCRIPT":166,"NEW":167,"CAST":168,"ColumnType":169,"CONVERT":170,"PrimitiveValue":171,"CURRENT_TIMESTAMP":172,"Aggregator":173,"OverClause":174,"OVER":175,"OverPartitionClause":176,"OverOrderByClause":177,"PARTITION":178,"SUM":179,"COUNT":180,"MIN":181,"MAX":182,"AVG":183,"FIRST":184,"LAST":185,"AGGR":186,"ARRAY":187,"ExprList":188,"TRUE":189,"FALSE":190,"NSTRING":191,"NULL":192,"AT":193,"EXISTS":194,"DOLLAR":195,"COLON":196,"QUESTION":197,"BRAQUESTION":198,"CASE":199,"WhensList":200,"ElseClause":201,"END":202,"When":203,"WHEN":204,"THEN":205,"ELSE":206,"LIKE":207,"NOT_LIKE":208,"PLUS":209,"MINUS":210,"SLASH":211,"MODULO":212,"CARET":213,"ARROW":214,"GT":215,"GE":216,"LT":217,"LE":218,"EQ":219,"EQEQ":220,"EQEQEQ":221,"NE":222,"NEEQEQ":223,"NEEQEQEQ":224,"CondOp":225,"AllSome":226,"AND":227,"OR":228,"NOT":229,"IN":230,"ColFunc":231,"BETWEEN":232,"NOT_BETWEEN":233,"IS":234,"DOUBLECOLON":235,"SOME":236,"ANY":237,"UPDATE":238,"SET":239,"SetColumnsList":240,"SetColumn":241,"DELETE":242,"INSERT":243,"Into":244,"VALUES":245,"ValuesListsList":246,"DEFAULT":247,"ValuesList":248,"Value":249,"DateValue":250,"CREATE":251,"TABLE":252,"IfNotExists":253,"CreateTableDefClause":254,"CreateTableOptionsClause":255,"CreateTableOptions":256,"CreateTableOption":257,"ENGINE":258,"AUTO_INCREMENT":259,"CHARSET":260,"TemporaryClause":261,"TEMPORARY":262,"TEMP":263,"IF":264,"ColumnDefsList":265,"ConstraintsList":266,"Constraint":267,"ConstraintName":268,"PrimaryKey":269,"ForeignKey":270,"UniqueKey":271,"IndexKey":272,"Check":273,"CONSTRAINT":274,"CHECK":275,"PRIMARY":276,"KEY":277,"ColsList":278,"FOREIGN":279,"REFERENCES":280,"OnForeignKeyClause":281,"OnDeleteClause":282,"OnUpdateClause":283,"NO":284,"ACTION":285,"ColumnDef":286,"ColumnConstraintsClause":287,"ColumnConstraints":288,"ENUM":289,"ColumnConstraintsList":290,"ColumnConstraint":291,"IDENTITY":292,"DROP":293,"IfExists":294,"ALTER":295,"RENAME":296,"TO":297,"ADD":298,"MODIFY":299,"ATTACH":300,"DATABASE":301,"DETACH":302,"AsClause":303,"USE":304,"SHOW":305,"DATABASES":306,"TABLES":307,"COLUMNS":308,"VIEW":309,"HELP":310,"ExpressionStatement":311,"SOURCE":312,"ASSERT":313,"JsonObject":314,"ATLBRA":315,"JsonArray":316,"JsonValue":317,"JsonPrimitiveValue":318,"LCUR":319,"JsonPropertiesList":320,"RCUR":321,"JsonElementsList":322,"RBRA":323,"JsonProperty":324,"OnOff":325,"SetPropsList":326,"SetProp":327,"OFF":328,"COMMIT":329,"TRANSACTION":330,"ROLLBACK":331,"BEGIN":332,"ElseStatement":333,"WHILE":334,"CONTINUE":335,"BREAK":336,"PRINT":337,"REQUIRE":338,"StringValuesList":339,"DECLARE":340,"DeclaresList":341,"DeclareItem":342,"TRUNCATE":343,"MERGE":344,"MergeInto":345,"MergeUsing":346,"MergeOn":347,"MergeMatchedList":348,"OutputClause":349,"MergeMatched":350,"MergeNotMatched":351,"MATCHED":352,"MergeMatchedAction":353,"MergeNotMatchedAction":354,"TARGET":355,"OUTPUT":356,"$accept":0,"$end":1}, -terminals_: {2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",102:"CROSS",103:"APPLY",104:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",252:"TABLE",258:"ENGINE",259:"AUTO_INCREMENT",260:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"}, -productions_: [0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,0],[101,6],[101,7],[101,6],[101,7],[98,1],[98,3],[99,4],[99,5],[99,3],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[99,1],[99,2],[99,3],[105,1],[92,3],[92,1],[100,2],[100,2],[100,1],[100,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,8],[22,4],[255,0],[255,1],[256,2],[256,1],[257,1],[257,3],[257,3],[257,3],[261,0],[261,1],[261,1],[253,0],[253,3],[254,3],[254,1],[254,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,9],[23,6],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]], +symbols_: {"error":2,"Literal":3,"LITERAL":4,"BRALITERAL":5,"main":6,"Statements":7,"EOF":8,"SEMICOLON":9,"AStatement":10,"GO":11,"ExplainStatement":12,"EXPLAIN":13,"QUERY":14,"PLAN":15,"Statement":16,"If":17,"AlterTable":18,"AttachDatabase":19,"CreateDatabase":20,"CreateIndex":21,"CreateTable":22,"CreateView":23,"Declare":24,"Delete":25,"DetachDatabase":26,"DropDatabase":27,"DropIndex":28,"DropTable":29,"DropView":30,"Insert":31,"RenameTable":32,"Select":33,"Merge":34,"WithSelect":35,"ShowCreateTable":36,"ShowColumns":37,"ShowDatabases":38,"ShowIndex":39,"ShowTables":40,"TruncateTable":41,"BeginTransaction":42,"CommitTransaction":43,"RollbackTransaction":44,"EndTransaction":45,"UseDatabase":46,"Update":47,"Help":48,"JavaScript":49,"Source":50,"Assert":51,"While":52,"Continue":53,"Break":54,"BeginEnd":55,"Print":56,"Require":57,"SetVariable":58,"WITH":59,"WithTablesList":60,"COMMA":61,"WithTable":62,"AS":63,"LPAR":64,"RPAR":65,"SelectClause":66,"IntoClause":67,"FromClause":68,"WhereClause":69,"GroupClause":70,"OrderClause":71,"LimitClause":72,"UnionClause":73,"SelectModifier":74,"DISTINCT":75,"TopClause":76,"ResultColumns":77,"UNIQUE":78,"ALL":79,"SELECT":80,"VALUE":81,"ROW":82,"COLUMN":83,"MATRIX":84,"TEXTSTRING":85,"INDEX":86,"RECORDSET":87,"TOP":88,"NumValue":89,"PERCENT":90,"INTO":91,"Table":92,"FuncValue":93,"ParamValue":94,"VarValue":95,"STRING":96,"FROM":97,"FromTablesList":98,"JoinTablesList":99,"ApplyClause":100,"CROSS":101,"APPLY":102,"OUTER":103,"FromTable":104,"FromString":105,"DOT":106,"JoinTable":107,"JoinMode":108,"JoinTableAs":109,"OnClause":110,"JoinModeMode":111,"NATURAL":112,"JOIN":113,"INNER":114,"LEFT":115,"RIGHT":116,"FULL":117,"SEMI":118,"ANTI":119,"ON":120,"Expression":121,"USING":122,"ColumnsList":123,"WHERE":124,"GROUP":125,"BY":126,"GroupExpressionsList":127,"HavingClause":128,"GroupExpression":129,"GROUPING":130,"SETS":131,"ROLLUP":132,"CUBE":133,"HAVING":134,"UNION":135,"EXCEPT":136,"INTERSECT":137,"CORRESPONDING":138,"ORDER":139,"OrderExpressionsList":140,"OrderExpression":141,"DIRECTION":142,"COLLATE":143,"NOCASE":144,"LIMIT":145,"OffsetClause":146,"OFFSET":147,"ResultColumn":148,"TDTH":149,"TD":150,"TH":151,"NUMBER":152,"StringValue":153,"Star":154,"STAR":155,"Column":156,"AggrValue":157,"Op":158,"LogicValue":159,"NullValue":160,"ExistsValue":161,"CaseValue":162,"CastClause":163,"Json":164,"NewClause":165,"JAVASCRIPT":166,"NEW":167,"CAST":168,"ColumnType":169,"CONVERT":170,"PrimitiveValue":171,"CURRENT_TIMESTAMP":172,"Aggregator":173,"OverClause":174,"OVER":175,"OverPartitionClause":176,"OverOrderByClause":177,"PARTITION":178,"SUM":179,"COUNT":180,"MIN":181,"MAX":182,"AVG":183,"FIRST":184,"LAST":185,"AGGR":186,"ARRAY":187,"ExprList":188,"TRUE":189,"FALSE":190,"NSTRING":191,"NULL":192,"AT":193,"EXISTS":194,"DOLLAR":195,"COLON":196,"QUESTION":197,"BRAQUESTION":198,"CASE":199,"WhensList":200,"ElseClause":201,"END":202,"When":203,"WHEN":204,"THEN":205,"ELSE":206,"LIKE":207,"NOT_LIKE":208,"PLUS":209,"MINUS":210,"SLASH":211,"MODULO":212,"CARET":213,"ARROW":214,"GT":215,"GE":216,"LT":217,"LE":218,"EQ":219,"EQEQ":220,"EQEQEQ":221,"NE":222,"NEEQEQ":223,"NEEQEQEQ":224,"CondOp":225,"AllSome":226,"AND":227,"OR":228,"NOT":229,"IN":230,"ColFunc":231,"BETWEEN":232,"NOT_BETWEEN":233,"IS":234,"DOUBLECOLON":235,"SOME":236,"ANY":237,"UPDATE":238,"SET":239,"SetColumnsList":240,"SetColumn":241,"DELETE":242,"INSERT":243,"Into":244,"VALUES":245,"ValuesListsList":246,"DEFAULT":247,"ValuesList":248,"Value":249,"DateValue":250,"CREATE":251,"TemporaryClause":252,"TABLE":253,"IfNotExists":254,"CreateTableDefClause":255,"CreateTableOptionsClause":256,"CreateTableOptions":257,"CreateTableOption":258,"ENGINE":259,"AUTO_INCREMENT":260,"CHARSET":261,"TEMPORARY":262,"TEMP":263,"IF":264,"ColumnDefsList":265,"ConstraintsList":266,"Constraint":267,"ConstraintName":268,"PrimaryKey":269,"ForeignKey":270,"UniqueKey":271,"IndexKey":272,"Check":273,"CONSTRAINT":274,"CHECK":275,"PRIMARY":276,"KEY":277,"ColsList":278,"FOREIGN":279,"REFERENCES":280,"OnForeignKeyClause":281,"OnDeleteClause":282,"OnUpdateClause":283,"NO":284,"ACTION":285,"ColumnDef":286,"ColumnConstraintsClause":287,"ColumnConstraints":288,"ENUM":289,"ColumnConstraintsList":290,"ColumnConstraint":291,"IDENTITY":292,"DROP":293,"IfExists":294,"ALTER":295,"RENAME":296,"TO":297,"ADD":298,"MODIFY":299,"ATTACH":300,"DATABASE":301,"DETACH":302,"AsClause":303,"USE":304,"SHOW":305,"DATABASES":306,"TABLES":307,"COLUMNS":308,"VIEW":309,"HELP":310,"ExpressionStatement":311,"SOURCE":312,"ASSERT":313,"JsonObject":314,"ATLBRA":315,"JsonArray":316,"JsonValue":317,"JsonPrimitiveValue":318,"LCUR":319,"JsonPropertiesList":320,"RCUR":321,"JsonElementsList":322,"RBRA":323,"JsonProperty":324,"OnOff":325,"SetPropsList":326,"SetProp":327,"OFF":328,"COMMIT":329,"TRANSACTION":330,"ROLLBACK":331,"BEGIN":332,"ElseStatement":333,"WHILE":334,"CONTINUE":335,"BREAK":336,"PRINT":337,"REQUIRE":338,"StringValuesList":339,"DECLARE":340,"DeclaresList":341,"DeclareItem":342,"TRUNCATE":343,"MERGE":344,"MergeInto":345,"MergeUsing":346,"MergeOn":347,"MergeMatchedList":348,"OutputClause":349,"MergeMatched":350,"MergeNotMatched":351,"MATCHED":352,"MergeMatchedAction":353,"MergeNotMatchedAction":354,"TARGET":355,"OUTPUT":356,"$accept":0,"$end":1}, +terminals_: {2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",45:"EndTransaction",59:"WITH",61:"COMMA",63:"AS",64:"LPAR",65:"RPAR",75:"DISTINCT",78:"UNIQUE",79:"ALL",80:"SELECT",81:"VALUE",82:"ROW",83:"COLUMN",84:"MATRIX",85:"TEXTSTRING",86:"INDEX",87:"RECORDSET",88:"TOP",90:"PERCENT",91:"INTO",96:"STRING",97:"FROM",101:"CROSS",102:"APPLY",103:"OUTER",106:"DOT",112:"NATURAL",113:"JOIN",114:"INNER",115:"LEFT",116:"RIGHT",117:"FULL",118:"SEMI",119:"ANTI",120:"ON",122:"USING",124:"WHERE",125:"GROUP",126:"BY",130:"GROUPING",131:"SETS",132:"ROLLUP",133:"CUBE",134:"HAVING",135:"UNION",136:"EXCEPT",137:"INTERSECT",138:"CORRESPONDING",139:"ORDER",142:"DIRECTION",143:"COLLATE",144:"NOCASE",145:"LIMIT",147:"OFFSET",150:"TD",151:"TH",152:"NUMBER",155:"STAR",166:"JAVASCRIPT",167:"NEW",168:"CAST",170:"CONVERT",172:"CURRENT_TIMESTAMP",175:"OVER",178:"PARTITION",179:"SUM",180:"COUNT",181:"MIN",182:"MAX",183:"AVG",184:"FIRST",185:"LAST",186:"AGGR",187:"ARRAY",189:"TRUE",190:"FALSE",191:"NSTRING",192:"NULL",193:"AT",194:"EXISTS",195:"DOLLAR",196:"COLON",197:"QUESTION",198:"BRAQUESTION",199:"CASE",202:"END",204:"WHEN",205:"THEN",206:"ELSE",207:"LIKE",208:"NOT_LIKE",209:"PLUS",210:"MINUS",211:"SLASH",212:"MODULO",213:"CARET",214:"ARROW",215:"GT",216:"GE",217:"LT",218:"LE",219:"EQ",220:"EQEQ",221:"EQEQEQ",222:"NE",223:"NEEQEQ",224:"NEEQEQEQ",227:"AND",228:"OR",229:"NOT",230:"IN",232:"BETWEEN",233:"NOT_BETWEEN",234:"IS",235:"DOUBLECOLON",236:"SOME",237:"ANY",238:"UPDATE",239:"SET",242:"DELETE",243:"INSERT",245:"VALUES",247:"DEFAULT",250:"DateValue",251:"CREATE",253:"TABLE",259:"ENGINE",260:"AUTO_INCREMENT",261:"CHARSET",262:"TEMPORARY",263:"TEMP",264:"IF",274:"CONSTRAINT",275:"CHECK",276:"PRIMARY",277:"KEY",279:"FOREIGN",280:"REFERENCES",284:"NO",285:"ACTION",288:"ColumnConstraints",289:"ENUM",292:"IDENTITY",293:"DROP",295:"ALTER",296:"RENAME",297:"TO",298:"ADD",299:"MODIFY",300:"ATTACH",301:"DATABASE",302:"DETACH",304:"USE",305:"SHOW",306:"DATABASES",307:"TABLES",308:"COLUMNS",309:"VIEW",310:"HELP",312:"SOURCE",313:"ASSERT",315:"ATLBRA",319:"LCUR",321:"RCUR",323:"RBRA",328:"OFF",329:"COMMIT",330:"TRANSACTION",331:"ROLLBACK",332:"BEGIN",334:"WHILE",335:"CONTINUE",336:"BREAK",337:"PRINT",338:"REQUIRE",340:"DECLARE",343:"TRUNCATE",344:"MERGE",352:"MATCHED",355:"TARGET",356:"OUTPUT"}, +productions_: [0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[35,3],[60,3],[60,1],[62,5],[33,8],[66,4],[66,4],[66,4],[66,3],[74,1],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[74,2],[76,2],[76,4],[76,3],[76,0],[67,0],[67,2],[67,2],[67,2],[67,2],[67,2],[68,2],[68,3],[68,5],[68,0],[100,6],[100,7],[100,6],[100,7],[98,1],[98,3],[104,4],[104,5],[104,3],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[104,1],[104,2],[104,3],[105,1],[92,3],[92,1],[99,2],[99,2],[99,1],[99,1],[107,3],[109,1],[109,2],[109,3],[109,2],[109,3],[109,4],[109,5],[109,1],[109,2],[109,3],[109,1],[109,2],[109,3],[108,1],[108,2],[111,1],[111,2],[111,2],[111,3],[111,2],[111,3],[111,2],[111,3],[111,2],[111,2],[111,2],[110,2],[110,2],[110,0],[69,0],[69,2],[70,0],[70,4],[127,1],[127,3],[129,5],[129,4],[129,4],[129,1],[128,0],[128,2],[73,0],[73,2],[73,3],[73,2],[73,2],[73,3],[73,4],[73,3],[73,3],[71,0],[71,3],[140,1],[140,3],[141,1],[141,2],[141,3],[141,4],[72,0],[72,3],[146,0],[146,2],[77,4],[77,2],[149,0],[149,2],[149,2],[149,4],[148,3],[148,2],[148,3],[148,2],[148,3],[148,2],[148,1],[154,5],[154,3],[154,1],[156,5],[156,3],[156,3],[156,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,3],[121,1],[49,1],[165,2],[165,2],[163,6],[163,8],[163,6],[163,8],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[171,1],[157,5],[157,6],[157,6],[174,0],[174,4],[174,4],[174,5],[176,3],[177,3],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[173,1],[93,4],[93,3],[188,1],[188,3],[89,1],[159,1],[159,1],[153,1],[153,1],[160,1],[95,2],[161,4],[94,2],[94,2],[94,1],[94,1],[162,5],[162,4],[200,2],[200,1],[203,4],[201,2],[201,0],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,5],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,3],[158,6],[158,6],[158,3],[158,3],[158,2],[158,2],[158,2],[158,3],[158,5],[158,6],[158,5],[158,6],[158,4],[158,5],[158,3],[158,4],[158,3],[158,3],[158,3],[158,3],[231,1],[231,1],[231,4],[225,1],[225,1],[225,1],[225,1],[225,1],[225,1],[226,1],[226,1],[226,1],[47,6],[47,4],[240,1],[240,3],[241,3],[25,5],[25,3],[31,5],[31,5],[31,8],[31,4],[31,7],[244,0],[244,1],[246,3],[246,1],[246,1],[246,5],[246,3],[246,3],[248,1],[248,3],[249,1],[249,1],[249,1],[249,1],[249,1],[249,1],[123,1],[123,3],[22,9],[22,5],[256,0],[256,1],[257,2],[257,1],[258,1],[258,3],[258,3],[258,3],[252,0],[252,1],[252,1],[254,0],[254,3],[255,3],[255,1],[255,2],[266,1],[266,3],[267,2],[267,2],[267,2],[267,2],[267,2],[268,0],[268,2],[273,4],[269,5],[270,11],[281,0],[281,2],[282,4],[283,4],[271,1],[272,5],[272,5],[278,1],[278,1],[278,3],[278,3],[265,1],[265,3],[286,3],[286,2],[286,1],[169,6],[169,4],[169,1],[169,4],[287,0],[287,1],[290,2],[290,1],[291,2],[291,7],[291,5],[291,1],[291,6],[291,1],[291,2],[291,1],[291,2],[291,1],[29,4],[294,0],[294,2],[18,6],[18,6],[18,6],[18,8],[18,6],[32,5],[19,4],[19,7],[19,6],[19,9],[26,3],[20,4],[20,6],[20,9],[20,6],[303,0],[303,2],[46,3],[46,2],[27,4],[27,5],[27,5],[21,8],[21,9],[28,3],[38,2],[38,4],[38,3],[38,5],[40,2],[40,4],[40,4],[40,6],[37,4],[37,6],[39,4],[39,6],[36,4],[36,6],[23,10],[23,7],[30,4],[48,2],[48,1],[311,1],[50,2],[51,2],[51,2],[51,4],[164,4],[164,2],[164,2],[164,2],[164,2],[164,1],[164,2],[164,2],[317,1],[317,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,1],[318,3],[314,3],[314,4],[314,2],[316,2],[316,3],[316,1],[320,3],[320,1],[324,3],[324,3],[324,3],[322,3],[322,1],[58,3],[58,5],[58,6],[326,3],[326,2],[327,1],[327,1],[327,3],[325,1],[325,1],[43,2],[44,2],[42,2],[17,4],[17,3],[333,2],[52,3],[53,1],[54,1],[55,3],[56,2],[56,2],[57,2],[339,3],[339,1],[24,2],[341,1],[341,3],[342,3],[342,4],[342,5],[342,6],[41,3],[34,6],[345,1],[345,2],[346,2],[347,2],[348,2],[348,2],[348,1],[348,1],[350,4],[350,6],[353,1],[353,3],[351,5],[351,7],[351,7],[351,9],[351,7],[351,9],[354,3],[354,6],[354,3],[354,6],[349,0],[349,2],[349,5],[349,4],[349,7]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ @@ -98,7 +98,7 @@ break; case 4: case 5: this.$ = $$[$0-2]; if($$[$0]) $$[$0-2].push($$[$0]); break; -case 6: case 7: case 56: case 88: case 113: case 114: case 149: case 168: case 250: case 267: case 327: case 340: case 341: case 345: case 353: case 392: case 393: case 501: case 506: case 526: case 528: case 542: case 543: +case 6: case 7: case 56: case 89: case 114: case 115: case 150: case 169: case 251: case 268: case 328: case 341: case 342: case 346: case 354: case 393: case 394: case 502: case 507: case 527: case 529: case 543: case 544: this.$ = [$$[$0]]; break; case 8: @@ -116,7 +116,7 @@ case 10: delete yy.queries; break; -case 11: case 63: case 74: case 83: case 144: case 145: case 147: case 155: case 157: case 166: case 174: case 176: case 229: case 270: case 365: case 368: case 380: case 385: case 386: case 420: +case 11: case 63: case 74: case 84: case 145: case 146: case 148: case 156: case 158: case 167: case 175: case 177: case 230: case 271: case 366: case 369: case 381: case 386: case 387: case 421: this.$ = undefined; break; case 54: @@ -181,7 +181,7 @@ break; case 73: this.$ = {top: $$[$0-1], percent:true}; break; -case 75: case 233: case 387: case 388: +case 75: case 234: case 388: case 389: this.$ = undefined; break; case 76: case 77: case 78: case 79: @@ -206,51 +206,54 @@ case 81: this.$ = { from: $$[$0] }; break; case 82: - this.$ = { from: [$$[$0-1]], joins: $$[$0] }; + this.$ = { from: $$[$0-1], joins: $$[$0] }; break; -case 84: - this.$ = new yy.Apply({select: $$[$0-2], applymode:'CROSS', as:$$[$0]}); +case 83: + this.$ = { from: $$[$0-2], joins: $$[$0-1] }; break; case 85: - this.$ = new yy.Apply({select: $$[$0-3], applymode:'CROSS', as:$$[$0]}); + this.$ = new yy.Apply({select: $$[$0-2], applymode:'CROSS', as:$$[$0]}); break; case 86: - this.$ = new yy.Apply({select: $$[$0-2], applymode:'OUTER', as:$$[$0]}); + this.$ = new yy.Apply({select: $$[$0-3], applymode:'CROSS', as:$$[$0]}); break; case 87: + this.$ = new yy.Apply({select: $$[$0-2], applymode:'OUTER', as:$$[$0]}); +break; +case 88: this.$ = new yy.Apply({select: $$[$0-3], applymode:'OUTER', as:$$[$0]}); break; -case 89: case 150: case 328: case 394: case 395: +case 90: case 151: case 329: case 395: case 396: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]); break; -case 90: +case 91: this.$ = $$[$0-2]; this.$.as = $$[$0] break; -case 91: +case 92: this.$ = $$[$0-3]; this.$.as = $$[$0] break; -case 92: +case 93: this.$ = $$[$0-1]; this.$.as = 'default' break; -case 93: +case 94: this.$ = $$[$0-1]; $$[$0-1].as = $$[$0] break; -case 94: +case 95: this.$ = $$[$0-2]; $$[$0-2].as = $$[$0] break; -case 95: case 154: case 190: case 198: case 199: case 200: case 201: case 202: case 203: case 204: case 205: case 206: case 207: case 208: case 209: case 210: case 211: case 213: case 223: case 224: case 225: case 226: case 227: case 228: case 269: case 316: case 317: case 318: case 319: case 320: case 321: case 381: case 406: case 408: case 475: case 476: case 477: case 478: case 479: case 480: case 484: case 486: case 487: case 496: case 507: case 508: +case 96: case 155: case 191: case 199: case 200: case 201: case 202: case 203: case 204: case 205: case 206: case 207: case 208: case 209: case 210: case 211: case 212: case 214: case 224: case 225: case 226: case 227: case 228: case 229: case 270: case 317: case 318: case 319: case 320: case 321: case 322: case 382: case 407: case 409: case 476: case 477: case 478: case 479: case 480: case 481: case 485: case 487: case 488: case 497: case 508: case 509: this.$ = $$[$0]; break; -case 96: case 100: case 103: case 106: +case 97: case 101: case 104: case 107: this.$ = $$[$0-1]; $$[$0-1].as = $$[$0]; break; -case 97: case 101: case 104: case 107: +case 98: case 102: case 105: case 108: this.$ = $$[$0-2]; $$[$0-2].as = $$[$0]; break; -case 98: case 99: case 102: case 105: +case 99: case 100: case 103: case 106: this.$ = $$[$0]; $$[$0].as = 'default'; break; -case 108: +case 109: var s = $$[$0]; s = s.substr(1,s.length-2); @@ -269,202 +272,202 @@ case 108: this.$ = r; break; -case 109: +case 110: this.$ = new yy.Table({databaseid: $$[$0-2], tableid:$$[$0]}); break; -case 110: +case 111: this.$ = new yy.Table({tableid: $$[$0]}); break; -case 111: case 112: +case 112: case 113: this.$ = $$[$0-1]; $$[$0-1].push($$[$0]); break; -case 115: +case 116: this.$ = new yy.Join($$[$0-2]); yy.extend(this.$, $$[$0-1]); yy.extend(this.$, $$[$0]); break; -case 116: +case 117: this.$ = {table: $$[$0]}; break; -case 117: +case 118: this.$ = {table: $$[$0-1], as: $$[$0] } ; break; -case 118: +case 119: this.$ = {table: $$[$0-2], as: $$[$0] } ; break; -case 119: +case 120: this.$ = {param: $$[$0-1], as: $$[$0] } ; break; -case 120: +case 121: this.$ = {param: $$[$0-2], as: $$[$0] } ; break; -case 121: +case 122: this.$ = {select: $$[$0-3], as: $$[$0]} ; break; -case 122: +case 123: this.$ = {select: $$[$0-4], as: $$[$0] } ; break; -case 123: +case 124: this.$ = {funcid:$$[$0], as:'default'}; break; -case 124: +case 125: this.$ = {funcid:$$[$0-1], as: $$[$0]}; break; -case 125: +case 126: this.$ = {funcid:$$[$0-2], as: $$[$0]}; break; -case 126: +case 127: this.$ = {variable:$$[$0],as:'default'}; break; -case 127: +case 128: this.$ = {variable:$$[$0-1],as:$$[$0]}; break; -case 128: +case 129: this.$ = {variable:$$[$0-2],as:$$[$0]} break; -case 129: +case 130: this.$ = { joinmode: $$[$0] } ; break; -case 130: +case 131: this.$ = {joinmode: $$[$0-1], natural:true} ; break; -case 131: case 132: +case 132: case 133: this.$ = "INNER"; break; -case 133: case 134: +case 134: case 135: this.$ = "LEFT"; break; -case 135: case 136: +case 136: case 137: this.$ = "RIGHT"; break; -case 137: case 138: +case 138: case 139: this.$ = "OUTER"; break; -case 139: +case 140: this.$ = "SEMI"; break; -case 140: +case 141: this.$ = "ANTI"; break; -case 141: +case 142: this.$ = "CROSS"; break; -case 142: +case 143: this.$ = {on: $$[$0]}; break; -case 143: case 538: +case 144: case 539: this.$ = {using: $$[$0]}; break; -case 146: +case 147: this.$ = {where: new yy.Expression({expression:$$[$0]})}; break; -case 148: +case 149: this.$ = {group:$$[$0-1]}; yy.extend(this.$,$$[$0]); break; -case 151: +case 152: this.$ = new yy.GroupExpression({type:'GROUPING SETS', group: $$[$0-1]}); break; -case 152: +case 153: this.$ = new yy.GroupExpression({type:'ROLLUP', group: $$[$0-1]}); break; -case 153: +case 154: this.$ = new yy.GroupExpression({type:'CUBE', group: $$[$0-1]}); break; -case 156: +case 157: this.$ = {having:$$[$0]} break; -case 158: +case 159: this.$ = {union: $$[$0]} ; break; -case 159: +case 160: this.$ = {unionall: $$[$0]} ; break; -case 160: +case 161: this.$ = {except: $$[$0]} ; break; -case 161: +case 162: this.$ = {intersect: $$[$0]} ; break; -case 162: +case 163: this.$ = {union: $$[$0-1], corresponding:true} ; break; -case 163: +case 164: this.$ = {unionall: $$[$0-1], corresponding:true} ; break; -case 164: +case 165: this.$ = {except: $$[$0-1], corresponding:true} ; break; -case 165: +case 166: this.$ = {intersect: $$[$0-1], corresponding:true} ; break; -case 167: +case 168: this.$ = {order:$$[$0]} break; -case 169: +case 170: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; -case 170: +case 171: this.$ = new yy.Expression({expression: $$[$0], direction:'ASC'}) break; -case 171: +case 172: this.$ = new yy.Expression({expression: $$[$0-1], direction:$$[$0].toUpperCase()}) break; -case 172: +case 173: this.$ = new yy.Expression({expression: $$[$0-2], direction:'ASC', nocase:true}) break; -case 173: +case 174: this.$ = new yy.Expression({expression: $$[$0-3], direction:$$[$0].toUpperCase(), nocase:true}) break; -case 175: +case 176: this.$ = {limit:$$[$0-1]}; yy.extend(this.$, $$[$0]) break; -case 177: +case 178: this.$ = {offset:$$[$0]} break; -case 178: +case 179: yy.extend($$[$0-1],$$[$0]); $$[$0-3].push($$[$0-1]); this.$ = $$[$0-3]; break; -case 179: +case 180: yy.extend($$[$0-1],$$[$0]); this.$ = [$$[$0-1]]; break; -case 180: +case 181: this.$ = undefined break; -case 181: +case 182: this.$ = {td:$$[$0]}; break; -case 182: +case 183: this.$ = {th:$$[$0]}; break; -case 183: +case 184: this.$ = {th:$$[$0-2],td:$$[$0]}; break; -case 184: case 186: case 188: +case 185: case 187: case 189: $$[$0-2].as = $$[$0]; this.$ = $$[$0-2]; break; -case 185: case 187: case 189: +case 186: case 188: case 190: $$[$0-1].as = $$[$0]; this.$ = $$[$0-1]; break; -case 191: +case 192: this.$ = new yy.Column({columid: $$[$0], tableid: $$[$0-2], databaseid:$$[$0-4]}); break; -case 192: +case 193: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2]}); break; -case 193: +case 194: this.$ = new yy.Column({columnid:$$[$0]}); break; -case 194: +case 195: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2], databaseid:$$[$0-4]}); break; -case 195: case 196: +case 196: case 197: this.$ = new yy.Column({columnid: $$[$0], tableid: $$[$0-2]}); break; -case 197: +case 198: this.$ = new yy.Column({columnid: $$[$0]}); break; -case 212: +case 213: this.$ = new yy.Json({value:$$[$0]}); break; -case 214: +case 215: if(!yy.queries) yy.queries = []; yy.queries.push($$[$0-1]); @@ -472,80 +475,80 @@ case 214: this.$ = $$[$0-1]; break; -case 215: +case 216: this.$ = $$[$0] break; -case 216: +case 217: this.$ = new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)}); break; -case 217: +case 218: this.$ = new yy.FuncValue({funcid:$$[$0], newid:true}); break; -case 218: +case 219: this.$ = $$[$0]; yy.extend(this.$,{newid:true}); break; -case 219: +case 220: this.$ = new yy.Convert({expression:$$[$0-3]}) ; yy.extend(this.$,$$[$0-1]) ; break; -case 220: +case 221: this.$ = new yy.Convert({expression:$$[$0-5], style:$$[$0-1]}) ; yy.extend(this.$,$$[$0-3]) ; break; -case 221: +case 222: this.$ = new yy.Convert({expression:$$[$0-1]}) ; yy.extend(this.$,$$[$0-3]) ; break; -case 222: +case 223: this.$ = new yy.Convert({expression:$$[$0-3], style:$$[$0-1]}) ; yy.extend(this.$,$$[$0-5]) ; break; -case 230: +case 231: this.$ = new yy.AggrValue({aggregatorid: $$[$0-4].toUpperCase(), expression: $$[$0-2], over:$$[$0]}); break; -case 231: +case 232: this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], distinct:true, over:$$[$0]}); break; -case 232: +case 233: this.$ = new yy.AggrValue({aggregatorid: $$[$0-5].toUpperCase(), expression: $$[$0-2], over:$$[$0]}); break; -case 234: case 235: +case 235: case 236: this.$ = new yy.Over(); yy.extend(this.$,$$[$0-1]); break; -case 236: +case 237: this.$ = new yy.Over(); yy.extend(this.$,$$[$0-2]); yy.extend(this.$,$$[$0-1]); break; -case 237: +case 238: this.$ = {partition:$$[$0]}; break; -case 238: +case 239: this.$ = {order:$$[$0]}; break; -case 239: +case 240: this.$ = "SUM"; break; -case 240: +case 241: this.$ = "COUNT"; break; -case 241: +case 242: this.$ = "MIN"; break; -case 242: +case 243: this.$ = "MAX"; break; -case 243: +case 244: this.$ = "AVG"; break; -case 244: +case 245: this.$ = "FIRST"; break; -case 245: +case 246: this.$ = "LAST"; break; -case 246: +case 247: this.$ = "AGGR"; break; -case 247: +case 248: this.$ = "ARRAY"; break; -case 248: +case 249: if(alasql.aggr[$$[$0-3]]) { this.$ = new yy.AggrValue({aggregatorid: 'REDUCE', @@ -555,683 +558,693 @@ case 248: }; break; -case 249: +case 250: this.$ = new yy.FuncValue({ funcid: $$[$0-2] }) break; -case 251: +case 252: $$[$0-2].push($$[$0]); this.$ = $$[$0-2] break; -case 252: +case 253: this.$ = new yy.NumValue({value:+$$[$0]}); break; -case 253: +case 254: this.$ = new yy.LogicValue({value:true}); break; -case 254: +case 255: this.$ = new yy.LogicValue({value:false}); break; -case 255: +case 256: this.$ = new yy.StringValue({value: $$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")}); break; -case 256: +case 257: this.$ = new yy.StringValue({value: $$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")}); break; -case 257: +case 258: this.$ = new yy.NullValue({value:undefined}); break; -case 258: +case 259: this.$ = new yy.VarValue({variable:$$[$0]}); break; -case 259: +case 260: if(!yy.exists) yy.exists = []; this.$ = new yy.ExistsValue({value:$$[$0-1], existsidx:yy.exists.length}); yy.exists.push($$[$0-1]); break; -case 260: case 261: +case 261: case 262: this.$ = new yy.ParamValue({param: $$[$0]}); break; -case 262: +case 263: if(typeof yy.question == 'undefined') yy.question = 0; this.$ = new yy.ParamValue({param: yy.question++}); break; -case 263: +case 264: if(typeof yy.question == 'undefined') yy.question = 0; this.$ = new yy.ParamValue({param: yy.question++, array:true}); break; -case 264: +case 265: this.$ = new yy.CaseValue({expression:$$[$0-3], whens: $$[$0-2], elses: $$[$0-1]}); break; -case 265: +case 266: this.$ = new yy.CaseValue({whens: $$[$0-2], elses: $$[$0-1]}); break; -case 266: case 540: case 541: +case 267: case 541: case 542: this.$ = $$[$0-1]; this.$.push($$[$0]); break; -case 268: +case 269: this.$ = {when: $$[$0-2], then: $$[$0] }; break; -case 271: +case 272: this.$ = new yy.Op({left:$$[$0-2], op:'LIKE', right:$$[$0]}); break; -case 272: +case 273: this.$ = new yy.Op({left:$$[$0-2], op:'NOT LIKE', right:$$[$0] }); break; -case 273: +case 274: this.$ = new yy.Op({left:$$[$0-2], op:'+', right:$$[$0]}); break; -case 274: +case 275: this.$ = new yy.Op({left:$$[$0-2], op:'-', right:$$[$0]}); break; -case 275: +case 276: this.$ = new yy.Op({left:$$[$0-2], op:'*', right:$$[$0]}); break; -case 276: +case 277: this.$ = new yy.Op({left:$$[$0-2], op:'/', right:$$[$0]}); break; -case 277: +case 278: this.$ = new yy.Op({left:$$[$0-2], op:'%', right:$$[$0]}); break; -case 278: +case 279: this.$ = new yy.Op({left:$$[$0-2], op:'^', right:$$[$0]}); break; -case 279: case 280: case 282: +case 280: case 281: case 283: this.$ = new yy.Op({left:$$[$0-2], op:'->' , right:$$[$0]}); break; -case 281: +case 282: this.$ = new yy.Op({left:$$[$0-4], op:'->' , right:$$[$0-1]}); break; -case 283: +case 284: this.$ = new yy.Op({left:$$[$0-2], op:'>' , right:$$[$0]}); break; -case 284: +case 285: this.$ = new yy.Op({left:$$[$0-2], op:'>=' , right:$$[$0]}); break; -case 285: +case 286: this.$ = new yy.Op({left:$$[$0-2], op:'<' , right:$$[$0]}); break; -case 286: +case 287: this.$ = new yy.Op({left:$$[$0-2], op:'<=' , right:$$[$0]}); break; -case 287: +case 288: this.$ = new yy.Op({left:$$[$0-2], op:'=' , right:$$[$0]}); break; -case 288: +case 289: this.$ = new yy.Op({left:$$[$0-2], op:'==' , right:$$[$0]}); break; -case 289: +case 290: this.$ = new yy.Op({left:$$[$0-2], op:'===' , right:$$[$0]}); break; -case 290: +case 291: this.$ = new yy.Op({left:$$[$0-2], op:'!=' , right:$$[$0]}); break; -case 291: +case 292: this.$ = new yy.Op({left:$$[$0-2], op:'!==' , right:$$[$0]}); break; -case 292: +case 293: this.$ = new yy.Op({left:$$[$0-2], op:'!===' , right:$$[$0]}); break; -case 293: +case 294: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); break; -case 294: +case 295: this.$ = new yy.Op({left:$$[$0-5], op:$$[$0-4] , allsome:$$[$0-3], right:$$[$0-1]}); break; -case 295: +case 296: this.$ = new yy.Op({left:$$[$0-2], op:'AND' , right:$$[$0]}); break; -case 296: +case 297: this.$ = new yy.Op({left:$$[$0-2], op:'OR' , right:$$[$0]}); break; -case 297: +case 298: this.$ = new yy.UniOp({op:'NOT' , right:$$[$0]}); break; -case 298: +case 299: this.$ = new yy.UniOp({op:'-' , right:$$[$0]}); break; -case 299: +case 300: this.$ = new yy.UniOp({op:'+' , right:$$[$0]}); break; -case 300: +case 301: this.$ = new yy.UniOp({right: $$[$0-1]}); break; -case 301: +case 302: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); break; -case 302: +case 303: if(!yy.queries) yy.queries = []; this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1], queriesidx: yy.queries.length}); yy.queries.push($$[$0-1]); break; -case 303: +case 304: this.$ = new yy.Op({left: $$[$0-4], op:'IN', right:$$[$0-1]}); break; -case 304: +case 305: this.$ = new yy.Op({left: $$[$0-5], op:'NOT IN', right:$$[$0-1]}); break; -case 305: +case 306: this.$ = new yy.Op({left: $$[$0-3], op:'IN', right:[]}); break; -case 306: +case 307: this.$ = new yy.Op({left: $$[$0-4], op:'NOT IN', right:[]}); break; -case 307: +case 308: this.$ = new yy.Op({left: $$[$0-2], op:'IN', right:$$[$0]}); break; -case 308: +case 309: this.$ = new yy.Op({left: $$[$0-3], op:'NOT IN', right:$$[$0]}); break; -case 309: +case 310: this.$ = new yy.Op({left:$$[$0-2], op:'BETWEEN', right:$$[$0] }); break; -case 310: +case 311: this.$ = new yy.Op({left:$$[$0-2], op:'NOT BETWEEN', right:$$[$0] }); break; -case 311: +case 312: this.$ = new yy.Op({op:'IS' , left:$$[$0-2], right:$$[$0]}); break; -case 312: +case 313: this.$ = new yy.Convert({expression:$$[$0-2]}) ; yy.extend(this.$,$$[$0]) ; break; -case 313: case 314: +case 314: case 315: this.$ = $$[$0]; break; -case 315: +case 316: this.$ = $$[$0-1]; break; -case 322: +case 323: this.$ = 'ALL'; break; -case 323: +case 324: this.$ = 'SOME'; break; -case 324: +case 325: this.$ = 'ANY'; break; -case 325: +case 326: this.$ = new yy.Update({table:$$[$0-4], columns:$$[$0-2], where:$$[$0]}); break; -case 326: +case 327: this.$ = new yy.Update({table:$$[$0-2], columns:$$[$0]}); break; -case 329: +case 330: this.$ = new yy.SetColumn({columnid:$$[$0-2], expression:$$[$0]}) break; -case 330: +case 331: this.$ = new yy.Delete({table:$$[$0-2], where:$$[$0]}); break; -case 331: +case 332: this.$ = new yy.Delete({table:$$[$0]}); break; -case 332: +case 333: this.$ = new yy.Insert({into:$$[$0-2], values: $$[$0]}); break; -case 333: +case 334: this.$ = new yy.Insert({into:$$[$0-2], default: true}) ; break; -case 334: +case 335: this.$ = new yy.Insert({into:$$[$0-5], columns: $$[$0-3], values: $$[$0]}); break; -case 335: +case 336: this.$ = new yy.Insert({into:$$[$0-1], select: $$[$0]}); break; -case 336: +case 337: this.$ = new yy.Insert({into:$$[$0-4], columns: $$[$0-2], select: $$[$0]}); break; -case 339: +case 340: this.$ = [$$[$0-1]]; break; -case 342: +case 343: this.$ = $$[$0-4]; $$[$0-4].push($$[$0-1]) break; -case 343: case 344: case 346: case 354: +case 344: case 345: case 347: case 355: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; -case 355: +case 356: this.$ = new yy.CreateTable({table:$$[$0-4]}); - //yy.extend(this.$,$$[$0-6]); + yy.extend(this.$,$$[$0-7]); yy.extend(this.$,$$[$0-5]); yy.extend(this.$,$$[$0-2]); + yy.extend(this.$,$$[$0]); break; -case 356: +case 357: this.$ = new yy.CreateTable({table:$$[$0]}); + yy.extend(this.$,$$[$0-3]); + yy.extend(this.$,$$[$0-1]); break; -case 366: case 367: +case 367: case 368: this.$ = {temporary:true}; break; -case 369: +case 370: this.$ = {ifnotexists: true}; break; -case 370: +case 371: this.$ = {columns: $$[$0-2], constraints: $$[$0]}; break; -case 371: +case 372: this.$ = {columns: $$[$0]}; break; -case 372: +case 373: this.$ = {as: $$[$0]} break; -case 373: case 396: +case 374: case 397: this.$ = [$$[$0]]; break; -case 374: case 397: case 500: case 505: case 525: case 529: +case 375: case 398: case 501: case 506: case 526: case 530: $$[$0-2].push($$[$0]); this.$ = $$[$0-2]; break; -case 375: case 376: case 377: case 378: case 379: +case 376: case 377: case 378: case 379: case 380: $$[$0].constraintid = $$[$0-1]; this.$ = $$[$0]; break; -case 382: +case 383: this.$ = {type: 'CHECK', expression: $$[$0-1]}; break; -case 383: +case 384: this.$ = {type: 'PRIMARY KEY', columns: $$[$0-1]}; break; -case 384: +case 385: this.$ = {type: 'FOREIGN KEY', columns: $$[$0-7], fktableid: $$[$0-4], fkcolumns: $$[$0-2]}; break; -case 398: +case 399: this.$ = new yy.ColumnDef({columnid:$$[$0-2]}); yy.extend(this.$,$$[$0-1]); yy.extend(this.$,$$[$0]); break; -case 399: +case 400: this.$ = new yy.ColumnDef({columnid:$$[$0-1]}); yy.extend(this.$,$$[$0]); break; -case 400: +case 401: this.$ = new yy.ColumnDef({columnid:$$[$0], dbtypeid: ''}); break; -case 401: +case 402: this.$ = {dbtypeid: $$[$0-5], dbsize: +$$[$0-3], dbprecision: +$$[$0-1]} break; -case 402: +case 403: this.$ = {dbtypeid: $$[$0-3], dbsize: +$$[$0-1]} break; -case 403: +case 404: this.$ = {dbtypeid: $$[$0]} break; -case 404: +case 405: this.$ = {dbtypeid: 'ENUM', enumvalues: $$[$0-1]} break; -case 405: +case 406: this.$ = undefined break; -case 407: +case 408: yy.extend($$[$0-1],$$[$0]); this.$ = $$[$0-1]; break; -case 409: +case 410: this.$ = {primarykey:true}; break; -case 410: case 411: +case 411: case 412: this.$ = {foreignkey:{tableid:$$[$0-3], columnid: $$[$0-1]}}; break; -case 412: +case 413: this.$ = {auto_increment:true}; break; -case 413: +case 414: this.$ = {identity: [$$[$0-3],$$[$0-1]]} break; -case 414: +case 415: this.$ = {identity: [1,1]} break; -case 415: +case 416: this.$ = {default:$$[$0]}; break; -case 416: +case 417: this.$ = {null:true}; break; -case 417: +case 418: this.$ = {notnull:true}; break; -case 418: +case 419: this.$ = $$[$0]; break; -case 419: +case 420: this.$ = new yy.DropTable({table:$$[$0]}); yy.extend(this.$, $$[$0-1]); break; -case 421: +case 422: this.$ = {ifexists: true}; break; -case 422: +case 423: this.$ = new yy.AlterTable({table:$$[$0-3], renameto: $$[$0]}); break; -case 423: +case 424: this.$ = new yy.AlterTable({table:$$[$0-3], addcolumn: $$[$0]}); break; -case 424: +case 425: this.$ = new yy.AlterTable({table:$$[$0-3], modifycolumn: $$[$0]}); break; -case 425: +case 426: this.$ = new yy.AlterTable({table:$$[$0-5], renamecolumn: $$[$0-2], to: $$[$0]}); break; -case 426: +case 427: this.$ = new yy.AlterTable({table:$$[$0-3], dropcolumn: $$[$0]}); break; -case 427: +case 428: this.$ = new yy.AlterTable({table:$$[$0-2], renameto: $$[$0]}); break; -case 428: +case 429: this.$ = new yy.AttachDatabase({databaseid:$$[$0], engineid:$$[$0-2].toUpperCase() }); break; -case 429: +case 430: this.$ = new yy.AttachDatabase({databaseid:$$[$0-3], engineid:$$[$0-5].toUpperCase(), args:$$[$0-1] }); break; -case 430: +case 431: this.$ = new yy.AttachDatabase({databaseid:$$[$0-2], engineid:$$[$0-4].toUpperCase(), as:$$[$0] }); break; -case 431: +case 432: this.$ = new yy.AttachDatabase({databaseid:$$[$0-5], engineid:$$[$0-7].toUpperCase(), as:$$[$0], args:$$[$0-3]}); break; -case 432: +case 433: this.$ = new yy.DetachDatabase({databaseid:$$[$0]}); break; -case 433: +case 434: this.$ = new yy.CreateDatabase({databaseid:$$[$0] }); yy.extend(this.$,$$[$0]); break; -case 434: +case 435: this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), databaseid:$$[$0-1], as:$$[$0] }); yy.extend(this.$,$$[$0-2]); break; -case 435: +case 436: this.$ = new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(), databaseid:$$[$0-4], args:$$[$0-2], as:$$[$0] }); yy.extend(this.$,$$[$0-5]); break; -case 436: +case 437: this.$ = new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(), as:$$[$0], args:[$$[$0-1]] }); yy.extend(this.$,$$[$0-2]); break; -case 437: +case 438: this.$ = undefined; break; -case 438: case 471: case 489: case 492: case 509: +case 439: case 472: case 490: case 493: case 510: this.$ = $$[$0-1]; break; -case 439: case 440: +case 440: case 441: this.$ = new yy.UseDatabase({databaseid: $$[$0] }); break; -case 441: +case 442: this.$ = new yy.DropDatabase({databaseid: $$[$0] }); yy.extend(this.$,$$[$0-1]); break; -case 442: case 443: +case 443: case 444: this.$ = new yy.DropDatabase({databaseid: $$[$0], engineid:$$[$0-3].toUpperCase() }); yy.extend(this.$,$$[$0-1]); break; -case 444: +case 445: this.$ = new yy.CreateIndex({indexid:$$[$0-5], table:$$[$0-3], columns:$$[$0-1]}) break; -case 445: +case 446: this.$ = new yy.CreateIndex({indexid:$$[$0-5], table:$$[$0-3], columns:$$[$0-1], unique:true}) break; -case 446: +case 447: this.$ = new yy.DropIndex({indexid:$$[$0]}); break; -case 447: +case 448: this.$ = new yy.ShowDatabases(); break; -case 448: +case 449: this.$ = new yy.ShowDatabases({like:$$[$0]}); break; -case 449: +case 450: this.$ = new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase() }); break; -case 450: +case 451: this.$ = new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase() , like:$$[$0]}); break; -case 451: +case 452: this.$ = new yy.ShowTables(); break; -case 452: +case 453: this.$ = new yy.ShowTables({like:$$[$0]}); break; -case 453: +case 454: this.$ = new yy.ShowTables({databaseid: $$[$0]}); break; -case 454: +case 455: this.$ = new yy.ShowTables({like:$$[$0], databaseid: $$[$0-2]}); break; -case 455: +case 456: this.$ = new yy.ShowColumns({table: $$[$0]}); break; -case 456: +case 457: this.$ = new yy.ShowColumns({table: $$[$0-2], databaseid:$$[$0]}); break; -case 457: +case 458: this.$ = new yy.ShowIndex({table: $$[$0]}); break; -case 458: +case 459: this.$ = new yy.ShowIndex({table: $$[$0-2], databaseid: $$[$0]}); break; -case 459: +case 460: this.$ = new yy.ShowCreateTable({table: $$[$0]}); break; -case 460: +case 461: this.$ = new yy.ShowCreateTable({table: $$[$0-2], databaseid:$$[$0]}); break; -case 461: - +case 462: + this.$ = new yy.CreateTable({table:$$[$0-5],view:true,select:$$[$0],viewcolumns:$$[$0-3]}); + yy.extend(this.$,$$[$0-8]); yy.extend(this.$,$$[$0-6]); break; -case 462: +case 463: this.$ = new yy.CreateTable({table:$$[$0-2],view:true,select:$$[$0]}); + yy.extend(this.$,$$[$0-5]); + yy.extend(this.$,$$[$0-3]); break; -case 463: +case 464: this.$ = new yy.DropTable({table:$$[$0], view:true}); yy.extend(this.$, $$[$0-1]); break; -case 464: +case 465: this.$ = new yy.Help({subject:$$[$0].value.toUpperCase()} ) ; break; -case 465: +case 466: this.$ = new yy.Help() ; break; -case 466: +case 467: this.$ = new yy.ExpressionStatement({expression:$$[$0]}); break; -case 467: +case 468: this.$ = new yy.Source({url:$$[$0].value}); break; -case 468: +case 469: this.$ = new yy.Assert({value:$$[$0]}); break; -case 469: +case 470: this.$ = new yy.Assert({value:$$[$0].value}); break; -case 470: +case 471: this.$ = new yy.Assert({value:$$[$0], message:$$[$0-2]}); break; -case 472: case 483: case 485: +case 473: case 484: case 486: this.$ = $$[$0].value; break; -case 473: case 481: +case 474: case 482: this.$ = +$$[$0].value; break; -case 474: +case 475: this.$ = (!!$$[$0].value); break; -case 482: +case 483: this.$ = ""+$$[$0].value; break; -case 488: +case 489: this.$ = $$[$0-1] break; -case 490: case 493: +case 491: case 494: this.$ = $$[$0-2]; break; -case 491: +case 492: this.$ = {}; break; -case 494: +case 495: this.$ = []; break; -case 495: +case 496: yy.extend($$[$0-2],$$[$0]); this.$ = $$[$0-2]; break; -case 497: +case 498: this.$ = {}; this.$[$$[$0-2].substr(1,$$[$0-2].length-2)] = $$[$0]; break; -case 498: case 499: +case 499: case 500: this.$ = {}; this.$[$$[$0-2]] = $$[$0]; break; -case 502: +case 503: this.$ = new yy.SetVariable({variable:$$[$0-1].toLowerCase(), value:$$[$0]}); break; -case 503: +case 504: this.$ = new yy.SetVariable({variable:$$[$0-2], expression:$$[$0]}); break; -case 504: +case 505: this.$ = new yy.SetVariable({variable:$$[$0-3], props: $$[$0-2], expression:$$[$0]}); break; -case 510: +case 511: this.$ = true; break; -case 511: +case 512: this.$ = false; break; -case 512: +case 513: this.$ = new yy.CommitTransaction(); break; -case 513: +case 514: this.$ = new yy.RollbackTransaction(); break; -case 514: +case 515: this.$ = new yy.BeginTransaction(); break; -case 515: +case 516: this.$ = new yy.If({expression:$$[$0-2],thenstat:$$[$0-1], elsestat:$$[$0]}); if($$[$0-1].exists) this.$.exists = $$[$0-1].exists; if($$[$0-1].queries) this.$.queries = $$[$0-1].queries; break; -case 516: - this.$ = new yy.If({expression:$$[$0-1],thenstat:$$[$0]}); -break; case 517: -this.$ = $$[$0]; + + this.$ = new yy.If({expression:$$[$0-1],thenstat:$$[$0]}); + if($$[$0].exists) this.$.exists = $$[$0].exists; + if($$[$0].queries) this.$.queries = $$[$0].queries; + break; case 518: +this.$ = $$[$0]; +break; +case 519: this.$ = new yy.While({expression:$$[$0-1],loopstat:$$[$0]}); if($$[$0].exists) this.$.exists = $$[$0].exists; if($$[$0].queries) this.$.queries = $$[$0].queries; break; -case 519: +case 520: this.$ = new yy.Continue(); break; -case 520: +case 521: this.$ = new yy.Break(); break; -case 521: +case 522: this.$ = new yy.BeginEnd({statements:$$[$0-1]}); break; -case 522: case 523: +case 523: case 524: this.$ = new yy.Print({statement:$$[$0]}); break; -case 524: +case 525: this.$ = new yy.Require({paths:$$[$0]}); break; -case 527: +case 528: this.$ = new yy.Declare({declares:$$[$0]}); break; -case 530: +case 531: this.$ = {variable: $$[$0-1]}; yy.extend(this.$,$$[$0]); break; -case 531: +case 532: this.$ = {variable: $$[$0-2]}; yy.extend(this.$,$$[$0]); break; -case 532: +case 533: this.$ = {variable: $$[$0-3], expression:$$[$0]}; yy.extend(this.$,$$[$0-2]); break; -case 533: +case 534: this.$ = {variable: $$[$0-4], expression:$$[$0]}; yy.extend(this.$,$$[$0-2]); break; -case 534: +case 535: this.$ = new yy.TruncateTable({table:$$[$0]}); break; -case 535: +case 536: this.$ = new yy.Merge(); yy.extend(this.$,$$[$0-4]); yy.extend(this.$,$$[$0-3]); yy.extend(this.$,$$[$0-2]); yy.extend(this.$,{matches:$$[$0-1]});yy.extend(this.$,$$[$0]); break; -case 536: case 537: +case 537: case 538: this.$ = {into: $$[$0]}; break; -case 539: +case 540: this.$ = {on:$$[$0]}; break; -case 544: +case 545: this.$ = {matched:true, action:$$[$0]} break; -case 545: +case 546: this.$ = {matched:true, expr: $$[$0-2], action:$$[$0]} break; -case 546: +case 547: this.$ = {delete:true}; break; -case 547: +case 548: this.$ = {update:$$[$0]}; break; -case 548: case 549: +case 549: case 550: this.$ = {matched:false, bytarget: true, action:$$[$0]} break; -case 550: case 551: +case 551: case 552: this.$ = {matched:false, bytarget: true, expr:$$[$0-2], action:$$[$0]} break; -case 552: +case 553: this.$ = {matched:false, bysource: true, action:$$[$0]} break; -case 553: +case 554: this.$ = {matched:false, bysource: true, expr:$$[$0-2], action:$$[$0]} break; -case 554: +case 555: this.$ = {insert:true, values:$$[$0]}; break; -case 555: +case 556: this.$ = {insert:true, values:$$[$0], columns:$$[$0-3]}; break; -case 556: +case 557: this.$ = {insert:true, defaultvalues:true}; break; -case 557: +case 558: this.$ = {insert:true, defaultvalues:true, columns:$$[$0-3]}; break; -case 559: +case 560: this.$ = {output:{columns:$$[$0]}} break; -case 560: +case 561: this.$ = {output:{columns:$$[$0-3], intovar: $$[$0]}} break; -case 561: +case 562: this.$ = {output:{columns:$$[$0-2], intotable: $$[$0]}} break; -case 562: +case 563: this.$ = {output:{columns:$$[$0-5], intotable: $$[$0-3], intocolumns:$$[$0-1]}} break; } }, -table: [o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{252:[1,141]},{3:142,4:$VB,5:$VC},{3:144,4:$VB,5:$VC,78:[1,146],86:[1,145],252:[1,147],301:[1,143],309:[1,148]},{193:$V71,341:149,342:150},{97:[1,152]},{301:[1,153]},{3:155,4:$VB,5:$VC,86:[1,156],252:[1,157],301:[1,154],309:[1,158]},o($V81,[2,337],{244:159,91:[1,160]}),{252:[1,161]},o($V91,[2,75],{67:162,91:[1,163]}),{3:173,4:$VB,5:$VC,64:$Va1,91:[1,166],92:168,93:170,94:169,95:171,96:$Vb1,99:165,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01,345:164},{3:178,4:$VB,5:$VC,60:176,62:177},{3:182,4:$VB,5:$VC,86:[1,183],251:[1,179],306:[1,181],307:[1,184],308:[1,180]},{252:[1,185]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:187,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,186],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,188]},{330:[1,189]},{3:191,4:$VB,5:$VC,301:[1,190]},{3:193,4:$VB,5:$VC,92:192},o($VA,[2,465],{153:194,96:$VE,191:$VV}),o($Vd1,[2,216]),{96:$VE,153:195,191:$VV},{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:[1,198],152:$VF,153:201,159:202,160:203,164:196,171:197,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:208,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,519]),o($VA,[2,520]),{3:106,4:$VB,5:$VC,33:209,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:211,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:210,314:126,315:$V51,319:$V61},{96:$VE,153:213,191:$VV,339:212},{3:214,4:$VB,5:$VC,193:[1,215]},o($Vg1,$Vh1,{76:219,75:[1,216],78:[1,217],79:[1,218],88:$Vi1}),o($Vj1,[2,63],{81:[1,221],82:[1,222],83:[1,223],84:[1,224],85:[1,225],86:[1,226],87:[1,227]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:228,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,230]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:231,225:251,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vd1,[2,198]),o($Vd1,[2,199]),o($Vd1,[2,200]),o($Vd1,[2,201]),o($Vd1,[2,202]),o($Vd1,[2,203]),o($Vd1,[2,204]),o($Vd1,[2,205]),o($Vd1,[2,206]),o($Vd1,[2,207]),o($Vd1,[2,208]),o($Vd1,[2,209]),o($Vd1,[2,210]),o($Vd1,[2,211]),o($Vd1,[2,212]),o($Vd1,[2,213]),{3:106,4:$VB,5:$VC,33:260,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:261,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,215]),{64:[1,262]},o($Vd1,$VL1,{64:$VM1,106:[1,264]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:265,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,193]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,258,259,260,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,252]),o($VN1,[2,253]),o($VN1,[2,254]),o($VN1,$VO1),o($VN1,[2,256]),o($VN1,[2,257]),{3:268,4:$VB,5:$VC},{3:269,4:$VB,5:$VC},o($VP1,[2,262]),o($VP1,[2,263]),{3:270,4:$VB,5:$VC,64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},{64:[1,277]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:278,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:279,203:280,204:$VR1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,282]},{64:[1,283]},o($VS1,[2,476]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:284,317:287,318:289,319:$V61,322:285,323:[1,286]},{3:299,4:$VB,5:$VC,93:300},{64:[2,239]},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},o($VU1,[2,1]),o($VU1,[2,2]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,320:301,321:[1,302],324:303},{3:193,4:$VB,5:$VC,92:307},{301:[1,308]},o($V81,$VX1,{253:309,264:$VY1}),{301:[1,311]},{3:312,4:$VB,5:$VC},{86:[1,313]},o($V81,$VX1,{253:314,264:$VY1}),o($V81,$VX1,{253:315,264:$VY1}),o($VA,[2,527],{61:[1,316]}),o($VZ1,[2,528]),{3:317,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:318},{3:319,4:$VB,5:$VC},o($V81,$V_1,{294:320,264:$V$1}),{301:[1,322]},{3:323,4:$VB,5:$VC},o($V81,$V_1,{294:324,264:$V$1}),o($V81,$V_1,{294:325,264:$V$1}),{3:193,4:$VB,5:$VC,92:326},o($V81,[2,338]),{3:193,4:$VB,5:$VC,92:327},o($V02,[2,83],{68:328,97:[1,329]}),{3:173,4:$VB,5:$VC,92:330,93:331,94:332,95:333,96:[1,334],193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,336],346:335},{122:[2,536]},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:337,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:338,66:59,74:79,80:$V4},o($V12,[2,95],{3:339,4:$VB,5:$VC,63:[1,340]}),o($V12,[2,98],{3:341,4:$VB,5:$VC,63:[1,342]}),o($V12,[2,99],{3:343,4:$VB,5:$VC,63:[1,344]}),o($V12,[2,102],{3:345,4:$VB,5:$VC,63:[1,346]}),o($V12,[2,105],{3:347,4:$VB,5:$VC,63:[1,348]}),o([4,5,8,9,11,61,63,65,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V22,{64:$VM1,106:$V32}),{3:270,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,108]),{33:350,61:[1,351],66:59,74:79,80:$V4},o($V42,[2,56]),{63:[1,352]},{252:[1,353]},{97:[1,354]},o($VA,[2,447],{207:[1,355]}),{306:[1,356]},{97:[1,357]},o($VA,[2,451],{97:[1,359],207:[1,358]}),{3:193,4:$VB,5:$VC,92:360},o($VA,[2,514]),{9:$Vx,11:$Vy,202:[1,361]},o($VA,[2,512]),o($VA,[2,513]),{3:362,4:$VB,5:$VC},o($VA,[2,440]),{239:[1,363]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V22,{106:$V32}),o($VA,[2,464]),o($VA,[2,467]),o($VA,[2,468]),o($VA,[2,469]),o($VA,$VO1,{61:[1,364]}),{64:$VQ1,89:273,94:275,96:$VE,152:$VF,153:272,159:274,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:276,319:$V61},o($V52,[2,223]),o($V52,[2,224]),o($V52,[2,225]),o($V52,[2,226]),o($V52,[2,227]),o($V52,[2,228]),o($V52,[2,229]),{64:$VM1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:251,10:365,45:$V2,59:$V3,80:$V4,155:$Vk1,166:$V5,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,522]),o($VA,[2,523]),o($VA,[2,466],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,524],{61:[1,366]}),o($VZ1,[2,526]),{120:[1,368],325:367,328:[1,369]},{3:370,4:$VB,5:$VC},o($Vg1,$Vh1,{76:371,88:$Vi1}),o($Vg1,$Vh1,{76:372,88:$Vi1}),o($Vg1,$Vh1,{76:373,88:$Vi1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:374,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,378],89:377,152:$VF},o($Vj1,[2,64]),o($Vj1,[2,65]),o($Vj1,[2,66]),o($Vj1,[2,67]),o($Vj1,[2,68]),o($Vj1,[2,69]),o($Vj1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:379,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,516],{333:380,206:[1,381]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:382,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:390,4:$VB,5:$VC,64:[1,392],89:391,93:393,152:$VF},o($V62,[2,316],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:394,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V62,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:399,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V62,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:401,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:402,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,405],226:404,236:[1,406],237:[1,407]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:408,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:298,4:$VB,5:$VC,64:[1,410],93:413,156:412,193:$V72,231:411},{230:[1,415]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:416,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:419,289:$V92},{65:[1,422]},{65:[1,423],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,425],79:[1,426],89:92,93:88,94:96,95:97,96:$VE,121:424,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,428],89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:427,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:430,4:$VB,5:$VC,81:$Va2,155:[1,432]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,234:$VJ1}),o($Vb2,[2,298],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,299],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($VP1,[2,260]),o($VP1,[2,261]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,258]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:433,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,472]),o($VS1,[2,473]),o($VS1,[2,474]),o($VS1,[2,475]),o($VS1,[2,477]),{33:434,66:59,74:79,80:$V4},{155:$Vk1,200:435,203:280,204:$VR1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{201:436,202:$Vc2,203:437,204:$VR1,206:$Vd2},o($Ve2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:439,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:441,289:$V92},o($VS1,[2,478]),{61:[1,443],323:[1,442]},o($VS1,[2,494]),o($Vf2,[2,501]),o($Vg2,[2,479]),o($Vg2,[2,480]),o($Vg2,[2,481]),o($Vg2,[2,482]),o($Vg2,[2,483]),o($Vg2,[2,484]),o($Vg2,[2,485]),o($Vg2,[2,486]),o($Vg2,[2,487]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:444,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,$VL1,{64:$VM1,106:$Vh2}),o($Vd1,[2,217],{64:$VM1}),o($Vd1,[2,218]),{61:[1,447],321:[1,446]},o($VS1,[2,491]),o($Vi2,[2,496]),{196:[1,448]},{196:[1,449]},{196:[1,450]},{293:[1,454],296:[1,451],298:[1,452],299:[1,453]},{3:455,4:$VB,5:$VC},{3:456,4:$VB,5:$VC},{229:[1,457]},o($Vj2,$VX1,{253:458,264:$VY1}),{120:[1,459]},{3:460,4:$VB,5:$VC},{3:193,4:$VB,5:$VC,92:461},{3:193,4:$VB,5:$VC,92:462},{193:$V71,342:463},{4:$V82,63:[1,465],169:464,289:$V92},o($VA,[2,331],{124:[1,466]}),o($VA,[2,432]),{3:467,4:$VB,5:$VC},{194:[1,468]},o($Vj2,$V_1,{294:469,264:$V$1}),o($VA,[2,446]),{3:193,4:$VB,5:$VC,92:470},{3:193,4:$VB,5:$VC,92:471},{33:475,64:[1,474],66:59,74:79,80:$V4,245:[1,472],247:[1,473]},{297:[1,476]},o($Vk2,[2,145],{69:477,124:[1,478]}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,98:479,99:480,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V91,[2,76]),o($V91,[2,77]),o($V91,[2,78]),o($V91,[2,79]),o($V91,[2,80]),{120:[1,482],347:481},{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:483,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,537]},{65:[1,484]},o($V12,[2,93]),{3:485,4:$VB,5:$VC},o($V12,[2,96]),{3:486,4:$VB,5:$VC},o($V12,[2,100]),{3:487,4:$VB,5:$VC},o($V12,[2,103]),{3:488,4:$VB,5:$VC},o($V12,[2,106]),{3:489,4:$VB,5:$VC},{3:490,4:$VB,5:$VC},o($VA,[2,54]),{3:178,4:$VB,5:$VC,62:491},{64:[1,492]},{3:193,4:$VB,5:$VC,92:493},{3:193,4:$VB,5:$VC,92:494},{96:$VE,153:495,191:$VV},o($VA,[2,449],{207:[1,496]}),{3:193,4:$VB,5:$VC,92:497},{96:$VE,153:498,191:$VV},{3:499,4:$VB,5:$VC},o($VA,[2,534]),o($VA,[2,521]),o($VA,[2,439]),{3:503,4:$VB,5:$VC,156:502,240:500,241:501},{164:504,193:$Vf1,314:126,315:$V51,319:$V61},o($VA,[2,518]),{96:$VE,153:505,191:$VV},o($VA,[2,502]),o($VA,[2,510]),o($VA,[2,511]),{214:[1,508],219:[1,506],326:507},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:509,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:510,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vl2,[2,62],{61:$Vm2}),o($Vn2,$Vo2,{149:513,150:$Vp2,151:$Vq2}),o($Vr2,[2,190],{225:251,3:517,153:519,4:$VB,5:$VC,63:[1,516],96:$VE,152:[1,518],155:$Vk1,191:$VV,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vg1,[2,71],{90:[1,520]}),{89:521,152:$VF},o($Vz,[2,9]),o($VA,[2,515]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:522,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vs2,[2,271],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vs2,[2,272],{225:251,155:$Vk1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,273],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vb2,[2,274],{225:251,155:$Vk1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vt2,[2,275],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,276],{225:251,213:$Vr1,214:$Vs1}),o($Vt2,[2,277],{225:251,213:$Vr1,214:$Vs1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,278],{225:251,214:$Vs1}),o($Vd1,[2,279],{64:$VM1}),o($Vd1,[2,280]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:523,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,282]),o($Vu2,[2,283],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,284],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,285],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,286],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,287],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,288],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,289],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,290],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,291],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),o($Vu2,[2,292],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,229:$VF1,230:$VG1,234:$VJ1}),{64:[1,524]},{64:[2,322]},{64:[2,323]},{64:[2,324]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,295],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1}),{3:106,4:$VB,5:$VC,33:525,49:104,64:$VD,65:[1,527],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:526,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,307]),o($Vd1,[2,313]),o($Vd1,[2,314]),{64:[1,528]},{3:298,4:$VB,5:$VC,64:[1,529],93:413,156:412,193:$V72,231:530},o($Vv2,[2,309],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o($Vv2,[2,310],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,229:$VF1,230:$VG1,234:$VJ1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,102,104,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,311],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1}),o($Vd1,[2,312]),o($Vw2,[2,403],{64:[1,531]}),{64:[1,532]},o($Vd1,[2,214]),o($Vd1,[2,300]),{65:[1,533],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:534,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:535,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vx2,65:[1,536]},o($VP1,[2,249]),o($Vy2,[2,250],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,$Vz2,{106:[1,538]}),o($VS1,[2,196]),o($Vd1,[2,192]),{65:[1,539],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,540]},{201:541,202:$Vc2,203:437,204:$VR1,206:$Vd2},{202:[1,542]},o($Ve2,[2,266]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:543,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vk1,205:[1,544],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{63:[1,545],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{61:[1,546]},o($VS1,[2,492]),{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:548,318:289,319:$V61,323:[1,547]},{65:[1,549],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:550,4:$VB,5:$VC,81:$Va2},o($VS1,[2,489]),{3:306,4:$VB,5:$VC,96:$VV1,152:$VW1,321:[1,551],324:552},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:553,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:554,318:289,319:$V61},{3:298,4:$VB,5:$VC,64:$VT1,89:290,93:296,94:295,96:$VE,152:$VF,153:291,156:293,159:292,160:294,164:288,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:289,319:$V61},{83:[1,557],297:[1,556]},{83:[1,558]},{83:[1,559]},{83:[1,560]},o($VA,[2,428],{63:[1,562],64:[1,561]}),o($VA,[2,433]),{194:[1,563]},{3:564,4:$VB,5:$VC,96:$VE,153:565,191:$VV},{3:193,4:$VB,5:$VC,92:566},{120:[1,567]},o($VA,[2,356],{64:[1,568]}),{63:[1,570],64:[1,569]},o($VZ1,[2,529]),o($VZ1,[2,530],{219:[1,571]}),{4:$V82,169:572,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:573,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,441]),o($Vj2,[2,421]),{3:574,4:$VB,5:$VC,96:$VE,153:575,191:$VV},o($VA,[2,419]),o($VA,[2,463]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:576,314:126,315:$V51,319:$V61},{245:[1,580]},{3:503,4:$VB,5:$VC,123:581,156:582},o($VA,[2,335]),{3:583,4:$VB,5:$VC},o($VB2,[2,147],{70:584,125:[1,585]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:586,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V02,[2,81],{61:[1,587]}),o($VC2,[2,88],{100:588,107:589,101:590,108:591,111:594,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),{204:$VN2,348:603,350:604,351:605},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:607,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,538]},o($V12,[2,92],{3:608,4:$VB,5:$VC,63:[1,609]}),o($V12,[2,94]),o($V12,[2,97]),o($V12,[2,101]),o($V12,[2,104]),o($V12,[2,107]),o([4,5,8,9,11,61,63,64,65,80,97,102,104,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,109]),o($V42,[2,55]),{33:610,66:59,74:79,80:$V4},o($VA,[2,459],{97:[1,611]}),o($VA,[2,455],{97:[1,612]}),o($VA,[2,448]),{96:$VE,153:613,191:$VV},o($VA,[2,457],{97:[1,614]}),o($VA,[2,452]),o($VA,[2,453],{207:[1,615]}),o($VA,[2,326],{61:$VO2,124:[1,616]}),o($VP2,[2,327]),{219:[1,618]},o([8,9,11,61,65,102,104,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VL1,{106:$Vh2}),o($VA,[2,470]),o($VZ1,[2,525]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:619,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,621],219:[1,620]},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:622},o($Vl2,[2,59],{61:$Vm2}),o($Vl2,[2,60],{61:$Vm2}),o($Vl2,[2,61],{61:$Vm2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:376,148:626,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:627,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:629,4:$VB,5:$VC,96:$VE,152:[1,630],153:631,191:$VV},o($Vr2,[2,185]),o($Vr2,[2,187]),o($Vr2,[2,189]),o($Vg1,[2,73]),{65:[1,632]},o($VA,[2,517]),{65:[1,633],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,33:634,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:635,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,636]},{61:$Vx2,65:[1,637]},o($Vd1,[2,305]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:638,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:639,49:104,64:$VD,65:[1,641],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:640,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,308]),{152:[1,642]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:643,314:126,315:$V51,319:$V61},o($Vd1,$VS2,{174:645,175:$VT2}),{65:[1,647],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,648],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VP1,[2,248]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:649,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:650,4:$VB,5:$VC,155:[1,651]},o($VS1,[2,471]),o($Vd1,[2,259]),{202:[1,652]},o($Vd1,[2,265]),{155:$Vk1,202:[2,269],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:653,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V82,169:654,289:$V92},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VS1,[2,493]),o($Vf2,[2,500]),o($Vg2,[2,488]),o($VS1,$Vz2,{106:[1,656]}),o($VS1,[2,490]),o($Vi2,[2,495]),o($Vi2,[2,497]),o($Vi2,[2,498]),o($Vi2,[2,499]),{3:657,4:$VB,5:$VC},{3:658,4:$VB,5:$VC},{3:660,4:$VB,5:$VC,286:659},{3:660,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:663,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:664,4:$VB,5:$VC},o($Vj2,[2,369]),o($VA,$VU2,{303:665,63:$VV2,64:[1,666]}),o($VA,$VU2,{303:668,63:$VV2}),{64:[1,669]},{3:193,4:$VB,5:$VC,92:670},{3:660,4:$VB,5:$VC,63:[1,673],254:671,265:672,286:674},{3:503,4:$VB,5:$VC,123:675,156:582},{33:676,66:59,74:79,80:$V4},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:677,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VZ1,[2,531],{219:[1,678]}),o($VA,[2,330],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,442]),o($VA,[2,443]),o($VA,[2,332],{61:$VW2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:680,314:126,315:$V51,319:$V61},o($VX2,[2,340]),o($VX2,[2,341]),o($VA,[2,333]),{61:$VY2,65:[1,681]},o($VZ2,[2,353]),o($VA,[2,427]),o($V_2,[2,166],{71:683,139:[1,684]}),{126:[1,685]},o($Vk2,[2,146],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:173,4:$VB,5:$VC,64:$Va1,92:168,93:170,94:169,95:171,96:$Vb1,99:686,105:172,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V02,[2,82],{108:591,111:594,107:687,101:688,102:$VD2,104:$VE2,112:$VF2,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2}),o($V$2,[2,113]),o($V$2,[2,114]),{3:173,4:$VB,5:$VC,64:[1,692],92:690,93:693,94:691,95:694,109:689,193:$Vc1,195:$VZ,196:$V_,197:$V$,198:$V01},{103:[1,695],113:$V03},{103:[1,697],113:$V13},o($V23,[2,129]),{102:[1,701],104:[1,700],111:699,113:$VG2,114:$VH2,115:$VI2,116:$VJ2,117:$VK2,118:$VL2,119:$VM2},o($V23,[2,131]),{113:[1,702]},{104:[1,704],113:[1,703]},{104:[1,706],113:[1,705]},{104:[1,707]},{113:[1,708]},{113:[1,709]},o($VA,[2,558],{349:710,350:711,351:712,204:$VN2,356:[1,713]}),o($V33,[2,542]),o($V33,[2,543]),{229:[1,715],352:[1,714]},{155:$Vk1,204:[2,539],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V12,[2,90]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,450]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,156:502,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,503],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:623,4:$VB,5:$VC,64:$VQ2,152:$VR2,327:726},o($V43,[2,506]),o($V43,[2,507]),o($V43,[2,508]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vn2,$Vo2,{149:728,150:$Vp2,151:$Vq2}),o($Vn2,[2,181],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vn2,[2,182],{225:251,150:[1,729],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vr2,[2,184]),o($Vr2,[2,186]),o($Vr2,[2,188]),o($Vg1,[2,72]),o($Vd1,[2,281]),{65:[1,730]},{61:$Vx2,65:[1,731]},o($Vd1,[2,301]),o($Vd1,[2,303]),{65:[1,732],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{65:[1,733]},{61:$Vx2,65:[1,734]},o($Vd1,[2,306]),{61:[1,735],65:[1,736]},{61:$V53,65:[1,737]},o($Vy2,[2,345],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($Vd1,[2,230]),{64:[1,739]},o($Vd1,$VS2,{174:740,175:$VT2}),o($Vd1,$VS2,{174:741,175:$VT2}),o($Vy2,[2,251],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VS1,[2,194]),o($Vd1,[2,191]),o($Vd1,[2,264]),o($Ve2,[2,268],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{3:650,4:$VB,5:$VC},o($VA,[2,422]),{297:[1,746]},o($VA,[2,423]),o($V63,[2,400],{169:747,4:$V82,288:[1,748],289:$V92}),o($VA,[2,424]),o($VA,[2,426]),{61:$Vx2,65:[1,749]},o($VA,[2,430]),o($VA,[2,434]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:429,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,436]),{3:753,4:$VB,5:$VC,96:$V73,278:752},{64:[1,755]},{65:[1,756]},{61:[1,757],65:[2,371]},{33:758,66:59,74:79,80:$V4},o($Vy2,[2,396]),{61:$VY2,65:[1,759]},o($VA,[2,462]),o($VZ1,[2,532],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:760,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,761],94:763,164:762,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V53,65:[1,764]},{33:766,66:59,74:79,80:$V4,245:[1,765]},{3:503,4:$VB,5:$VC,156:767},o($V83,[2,174],{72:768,145:[1,769]}),{126:[1,770]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:771,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,89]),o($V$2,[2,111]),o($V$2,[2,112]),o($V$2,[2,144],{110:777,120:[1,778],122:[1,779]}),o($Vc3,[2,116],{3:780,4:$VB,5:$VC,63:[1,781]}),{3:782,4:$VB,5:$VC,63:[1,783]},{33:784,66:59,74:79,80:$V4},o($Vc3,[2,123],{3:785,4:$VB,5:$VC,63:[1,786]}),o($Vc3,[2,126],{3:787,4:$VB,5:$VC,63:[1,788]}),{64:[1,789]},o($V23,[2,141]),{64:[1,790]},o($V23,[2,137]),o($V23,[2,130]),{113:$V13},{113:$V03},o($V23,[2,132]),o($V23,[2,133]),{113:[1,791]},o($V23,[2,135]),{113:[1,792]},{113:[1,793]},o($V23,[2,139]),o($V23,[2,140]),o($VA,[2,535]),o($V33,[2,540]),o($V33,[2,541]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:794,89:92,93:88,94:96,95:97,96:$VE,121:376,148:375,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,795],227:[1,796]},{352:[1,797]},o($V12,[2,91]),o($V42,[2,57]),o($VA,[2,460]),o($VA,[2,456]),o($VA,[2,458]),o($VA,[2,454]),o($VA,[2,325],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VP2,[2,328]),o($VP2,[2,329],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VA,[2,504],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V43,[2,505]),{65:[1,798],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vn2,[2,178]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:799,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,293]),o($Vd1,[2,294]),o($Vd1,[2,315]),o($Vd1,[2,302]),o($Vd1,[2,304]),{152:[1,800]},o($Vw2,[2,402]),o($Vw2,[2,404]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:801,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:802,177:803,178:[1,804]},o($Vd1,[2,231]),o($Vd1,[2,232]),o($Vd1,[2,219]),{152:[1,806]},o($Vd1,[2,221]),{152:[1,807]},{3:808,4:$VB,5:$VC},o($V63,[2,405],{287:809,290:810,291:811,273:820,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V63,[2,399]),o($VA,[2,429],{63:[1,822]}),{61:$Vx2,65:[1,823]},o($VA,[2,438]),{61:$Vn3,65:[1,824]},o($Vy2,[2,392]),o($Vy2,[2,393]),{3:753,4:$VB,5:$VC,96:$V73,278:826},o($VA,[2,357],{255:827,256:828,257:829,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($Vs3,$Vt3,{3:660,266:834,286:835,267:836,268:837,4:$VB,5:$VC,274:$Vu3}),{65:[2,372]},{63:[1,839]},o($VZ1,[2,533],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:644,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:840,314:126,315:$V51,319:$V61},o($VX2,[2,343]),o($VX2,[2,344]),o($VX2,[2,339]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:841,314:126,315:$V51,319:$V61},o($VA,[2,336]),o($VZ2,[2,354]),o($Vv3,[2,157],{73:842,135:[1,843],136:[1,844],137:[1,845]}),{89:846,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:847,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VB2,[2,155],{128:850,61:$Vw3,134:[1,852]}),o($Vx3,[2,149]),{131:[1,853]},{64:[1,854]},{64:[1,855]},o($Vx3,[2,154],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,115]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:856,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:857,156:582},o($Vc3,[2,117]),{3:858,4:$VB,5:$VC},o($Vc3,[2,119]),{3:859,4:$VB,5:$VC},{65:[1,860]},o($Vc3,[2,124]),{3:861,4:$VB,5:$VC},o($Vc3,[2,127]),{3:862,4:$VB,5:$VC},{33:863,66:59,74:79,80:$V4},{33:864,66:59,74:79,80:$V4},o($V23,[2,134]),o($V23,[2,136]),o($V23,[2,138]),o($VA,[2,559],{61:$Vm2,91:[1,865]}),{238:$Vy3,242:$Vz3,353:866},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:869,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,871],205:[1,870],227:[1,872]},o($V43,[2,509]),o($Vn2,[2,183],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,873]},o($Vy2,[2,346],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{65:[1,874],139:$Vd3,177:875},{65:[1,876]},{126:[1,877]},{126:[1,878]},{65:[1,879]},{65:[1,880]},o($VA,[2,425]),o($V63,[2,398]),o($V63,[2,406],{273:820,291:881,192:$Ve3,229:$Vf3,247:$Vg3,259:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V52,[2,408]),{277:[1,882]},{277:[1,883]},{3:884,4:$VB,5:$VC},o($V52,[2,412]),o($V52,[2,414],{64:[1,885]}),{3:207,4:$VB,5:$VC,89:200,93:205,94:204,96:$VE,152:$VF,153:201,159:202,160:203,171:886,172:$Ve1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V52,[2,416]),{192:[1,887]},o($V52,[2,418]),{64:[1,888]},{3:889,4:$VB,5:$VC},o($VA,$VU2,{303:890,63:$VV2}),o($VA,[2,444]),{3:891,4:$VB,5:$VC,96:[1,892]},{61:$Vn3,65:[1,893]},o($VA,[2,355]),o($VA,[2,358],{257:894,247:$Vo3,258:$Vp3,259:$Vq3,260:$Vr3}),o($VA3,[2,360]),o($VA3,[2,361]),{219:[1,895]},{219:[1,896]},{219:[1,897]},{61:[1,898],65:[2,370]},o($Vy2,[2,397]),o($Vy2,[2,373]),{78:[1,906],86:[1,907],269:899,270:900,271:901,272:902,273:903,275:$Vi3,276:[1,904],277:[1,908],279:[1,905]},{3:909,4:$VB,5:$VC},{33:910,66:59,74:79,80:$V4},{61:$V53,65:[1,911]},o($VA,[2,334],{61:$VW2}),o($Vv3,[2,58]),{33:912,66:59,74:79,79:[1,913],80:$V4,138:[1,914]},{33:915,66:59,74:79,80:$V4,138:[1,916]},{33:917,66:59,74:79,80:$V4,138:[1,918]},o($V83,[2,176],{146:919,147:[1,920]}),o($V_2,[2,167],{61:$VB3}),o($VC3,[2,168]),o($VC3,[2,170],{225:251,142:[1,922],143:[1,923],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($VB2,[2,148]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,129:924,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:925,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:927,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:928,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V$2,[2,142],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),o($V$2,[2,143],{61:$VY2}),o($Vc3,[2,118]),o($Vc3,[2,120]),{3:929,4:$VB,5:$VC,63:[1,930]},o($Vc3,[2,125]),o($Vc3,[2,128]),{65:[1,931]},{65:[1,932]},{3:193,4:$VB,5:$VC,92:934,193:[1,933]},o($V33,[2,544]),o($V33,[2,546]),{239:[1,935]},{155:$Vk1,205:[1,936],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},{243:$VD3,354:937},{312:[1,940],355:[1,939]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:941,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vw2,[2,401]),o($Vd1,[2,234]),{65:[1,942]},o($Vd1,[2,235]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:943,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,140:944,141:848,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vd1,[2,220]),o($Vd1,[2,222]),o($V52,[2,407]),o($V52,[2,409]),{280:[1,945]},{64:[1,946]},{89:947,152:$VF},o($V52,[2,415]),o($V52,[2,417]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:948,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,431]),o($VA,[2,435]),o($Vy2,[2,394]),o($Vy2,[2,395]),o($VA,[2,445]),o($VA3,[2,359]),{3:949,4:$VB,5:$VC},{89:950,152:$VF},{3:951,4:$VB,5:$VC},o($Vs3,$Vt3,{268:837,267:952,274:$Vu3}),o($Vy2,[2,375]),o($Vy2,[2,376]),o($Vy2,[2,377]),o($Vy2,[2,378]),o($Vy2,[2,379]),{277:[1,953]},{277:[1,954]},o($Vy2,[2,389]),{3:955,4:$VB,5:$VC},{3:956,4:$VB,5:$VC},o($Vs3,[2,381]),o($VA,[2,461]),o($VX2,[2,342]),o($Vv3,[2,158]),{33:957,66:59,74:79,80:$V4,138:[1,958]},{33:959,66:59,74:79,80:$V4},o($Vv3,[2,160]),{33:960,66:59,74:79,80:$V4},o($Vv3,[2,161]),{33:961,66:59,74:79,80:$V4},o($V83,[2,175]),{89:962,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:849,141:963,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC3,[2,171]),{144:[1,964]},o($Vx3,[2,150]),o($VB2,[2,156],{225:251,155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:776,127:965,129:772,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vw3,65:[1,966]},{61:$Vw3,65:[1,967]},o($Vc3,[2,121]),{3:968,4:$VB,5:$VC},{3:969,4:$VB,5:$VC,63:[1,970]},{3:971,4:$VB,5:$VC,63:[1,972]},{3:973,4:$VB,5:$VC},o($VA,[2,561],{64:[1,974]}),{3:503,4:$VB,5:$VC,156:502,240:975,241:501},{238:$Vy3,242:$Vz3,353:976},o($V33,[2,548]),{64:[1,978],245:[1,977],247:[1,979]},{205:[1,980],227:[1,981]},{205:[1,982],227:[1,983]},{155:$Vk1,205:[1,984],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($Vd1,[2,236]),o([65,139],[2,237],{61:$Vw3}),{61:$VB3,65:[2,238]},{3:985,4:$VB,5:$VC},{3:986,4:$VB,5:$VC},{61:[1,987]},{65:[1,988],155:$Vk1,207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($VA3,[2,362]),o($VA3,[2,363]),o($VA3,[2,364]),o($Vy2,[2,374]),{64:[1,989]},{64:[1,990]},{64:[1,991]},{64:[1,992]},o($Vv3,[2,159]),{33:993,66:59,74:79,80:$V4},o($Vv3,[2,162]),o($Vv3,[2,164]),o($Vv3,[2,165]),o($V83,[2,177]),o($VC3,[2,169]),o($VC3,[2,172],{142:[1,994]}),{61:$Vw3,65:[1,995]},o($Vx3,[2,152]),o($Vx3,[2,153]),o($Vc3,[2,122]),o($V$2,[2,84]),{3:996,4:$VB,5:$VC},o($V$2,[2,86]),{3:997,4:$VB,5:$VC},o($VA,[2,560]),{3:503,4:$VB,5:$VC,123:998,156:582},o($V33,[2,547],{61:$VO2}),o($V33,[2,545]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:999,314:126,315:$V51,319:$V61},{3:503,4:$VB,5:$VC,123:1000,156:582},{245:[1,1001]},{243:$VD3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1004},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1005,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VD3,354:1006},{64:[1,1007]},{65:[1,1008]},{89:1009,152:$VF},o($V52,[2,382]),{3:753,4:$VB,5:$VC,96:$V73,278:1010},{3:753,4:$VB,5:$VC,96:$V73,278:1011},{3:503,4:$VB,5:$VC,123:1012,156:582},{3:503,4:$VB,5:$VC,123:1013,156:582},o($Vv3,[2,163]),o($VC3,[2,173]),o($Vx3,[2,151]),o($V$2,[2,85]),o($V$2,[2,87]),{61:$VY2,65:[1,1014]},o($V33,[2,554],{61:$VW2}),{61:$VY2,65:[1,1015]},o($V33,[2,556]),o($V33,[2,549]),{155:$Vk1,205:[1,1016],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,552]),{155:$Vk1,205:[1,1017],207:$Vl1,208:$Vm1,209:$Vn1,210:$Vo1,211:$Vp1,212:$Vq1,213:$Vr1,214:$Vs1,215:$Vt1,216:$Vu1,217:$Vv1,218:$Vw1,219:$Vx1,220:$Vy1,221:$Vz1,222:$VA1,223:$VB1,224:$VC1,225:251,227:$VD1,228:$VE1,229:$VF1,230:$VG1,232:$VH1,233:$VI1,234:$VJ1,235:$VK1},o($V33,[2,550]),{3:1018,4:$VB,5:$VC},o($V52,[2,411]),{65:[1,1019]},{61:$Vn3,65:[1,1020]},{61:$Vn3,65:[1,1021]},{61:$VY2,65:[1,1022]},{61:$VY2,65:[1,1023]},o($VA,[2,562]),{245:[1,1024],247:[1,1025]},{243:$VD3,354:1026},{238:$Vy3,242:$Vz3,353:1027},{65:[1,1028]},o($V52,[2,413]),o($Vy2,[2,383]),{280:[1,1029]},o($Vy2,[2,390]),o($Vy2,[2,391]),{64:$VA2,94:579,164:578,193:$Vf1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1030,314:126,315:$V51,319:$V61},{245:[1,1031]},o($V33,[2,551]),o($V33,[2,553]),o($V52,[2,410]),{3:1032,4:$VB,5:$VC},o($V33,[2,555],{61:$VW2}),o($V33,[2,557]),{64:[1,1033]},{3:753,4:$VB,5:$VC,96:$V73,278:1034},{61:$Vn3,65:[1,1035]},o($Vy2,[2,385],{281:1036,282:1037,120:[1,1038]}),o($Vy2,[2,384]),{120:[1,1040],283:1039},{242:[1,1041]},o($Vy2,[2,386]),{238:[1,1042]},{284:[1,1043]},{284:[1,1044]},{285:[1,1045]},{285:[1,1046]},{120:[2,387]},o($Vy2,[2,388])], -defaultActions: {81:[2,3],129:[2,239],130:[2,240],131:[2,241],132:[2,242],133:[2,243],134:[2,244],135:[2,245],136:[2,246],137:[2,247],165:[2,536],337:[2,537],405:[2,322],406:[2,323],407:[2,324],483:[2,538],758:[2,372],1045:[2,387]}, +table: [o([8,9,11],$V0,{6:1,7:2,10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{1:[3]},{8:[1,81],9:$Vx,11:$Vy},o($Vz,[2,6]),o($Vz,[2,7]),o($VA,[2,10]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:84,14:[1,85],45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,12]),o($VA,[2,13]),o($VA,[2,14]),o($VA,[2,15]),o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),o($VA,[2,19]),o($VA,[2,20]),o($VA,[2,21]),o($VA,[2,22]),o($VA,[2,23]),o($VA,[2,24]),o($VA,[2,25]),o($VA,[2,26]),o($VA,[2,27]),o($VA,[2,28]),o($VA,[2,29]),o($VA,[2,30]),o($VA,[2,31]),o($VA,[2,32]),o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VA,[2,39]),o($VA,[2,40]),o($VA,[2,41]),o($VA,[2,42]),o($VA,[2,43]),o($VA,[2,44]),o($VA,[2,45]),o($VA,[2,46]),o($VA,[2,47]),o($VA,[2,48]),o($VA,[2,49]),o($VA,[2,50]),o($VA,[2,51]),o($VA,[2,52]),o($VA,[2,53]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:86,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{253:[1,141]},{3:142,4:$VB,5:$VC},o($V71,[2,366],{3:144,252:147,4:$VB,5:$VC,78:[1,146],86:[1,145],262:[1,148],263:[1,149],301:[1,143]}),{193:$V81,341:150,342:151},{97:[1,153]},{301:[1,154]},{3:156,4:$VB,5:$VC,86:[1,157],253:[1,158],301:[1,155],309:[1,159]},o($V91,[2,338],{244:160,91:[1,161]}),{253:[1,162]},o($Va1,[2,75],{67:163,91:[1,164]}),{3:174,4:$VB,5:$VC,64:$Vb1,91:[1,167],92:169,93:171,94:170,95:172,96:$Vc1,104:166,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01,345:165},{3:179,4:$VB,5:$VC,60:177,62:178},{3:183,4:$VB,5:$VC,86:[1,184],251:[1,180],306:[1,182],307:[1,185],308:[1,181]},{253:[1,186]},o([9,11,202],$V0,{10:3,12:4,16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,7:188,13:$V1,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,330:[1,187],331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),{330:[1,189]},{330:[1,190]},{3:192,4:$VB,5:$VC,301:[1,191]},{3:194,4:$VB,5:$VC,92:193},o($VA,[2,466],{153:195,96:$VE,191:$VV}),o($Ve1,[2,217]),{96:$VE,153:196,191:$VV},{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:[1,199],152:$VF,153:202,159:203,160:204,164:197,171:198,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:209,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,520]),o($VA,[2,521]),{3:106,4:$VB,5:$VC,33:210,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:212,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,311:211,314:126,315:$V51,319:$V61},{96:$VE,153:214,191:$VV,339:213},{3:215,4:$VB,5:$VC,193:[1,216]},o($Vh1,$Vi1,{76:220,75:[1,217],78:[1,218],79:[1,219],88:$Vj1}),o($Vk1,[2,63],{81:[1,222],82:[1,223],83:[1,224],84:[1,225],85:[1,226],86:[1,227],87:[1,228]}),{1:[2,3]},o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:229,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:230,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,8]),{15:[1,231]},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:232,225:252,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Ve1,[2,199]),o($Ve1,[2,200]),o($Ve1,[2,201]),o($Ve1,[2,202]),o($Ve1,[2,203]),o($Ve1,[2,204]),o($Ve1,[2,205]),o($Ve1,[2,206]),o($Ve1,[2,207]),o($Ve1,[2,208]),o($Ve1,[2,209]),o($Ve1,[2,210]),o($Ve1,[2,211]),o($Ve1,[2,212]),o($Ve1,[2,213]),o($Ve1,[2,214]),{3:106,4:$VB,5:$VC,33:261,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:262,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,216]),{64:[1,263]},o($Ve1,$VM1,{64:$VN1,106:[1,265]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:266,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:267,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:268,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,194]),o([4,5,8,9,11,45,59,61,63,64,65,80,90,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,147,150,151,152,155,166,167,168,170,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,247,251,259,260,261,264,275,276,279,280,292,293,295,296,300,302,304,305,310,312,313,315,319,321,323,329,331,332,334,335,336,337,338,340,343,344,356],[2,253]),o($VO1,[2,254]),o($VO1,[2,255]),o($VO1,$VP1),o($VO1,[2,257]),o($VO1,[2,258]),{3:269,4:$VB,5:$VC},{3:270,4:$VB,5:$VC},o($VQ1,[2,263]),o($VQ1,[2,264]),{3:271,4:$VB,5:$VC,64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},{64:[1,278]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:279,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,200:280,203:281,204:$VS1,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,283]},{64:[1,284]},o($VT1,[2,477]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,316:285,317:288,318:290,319:$V61,322:286,323:[1,287]},{3:300,4:$VB,5:$VC,93:301},{64:[2,240]},{64:[2,241]},{64:[2,242]},{64:[2,243]},{64:[2,244]},{64:[2,245]},{64:[2,246]},{64:[2,247]},{64:[2,248]},o($VV1,[2,1]),o($VV1,[2,2]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,320:302,321:[1,303],324:304},{3:194,4:$VB,5:$VC,92:308},{301:[1,309]},o($V91,$VY1,{254:310,264:$VZ1}),{301:[1,312]},{3:313,4:$VB,5:$VC},{86:[1,314]},{253:[1,315],309:[1,316]},o($V71,[2,367]),o($V71,[2,368]),o($VA,[2,528],{61:[1,317]}),o($V_1,[2,529]),{3:318,4:$VB,5:$VC},{3:194,4:$VB,5:$VC,92:319},{3:320,4:$VB,5:$VC},o($V91,$V$1,{294:321,264:$V02}),{301:[1,323]},{3:324,4:$VB,5:$VC},o($V91,$V$1,{294:325,264:$V02}),o($V91,$V$1,{294:326,264:$V02}),{3:194,4:$VB,5:$VC,92:327},o($V91,[2,339]),{3:194,4:$VB,5:$VC,92:328},o($V12,[2,84],{68:329,97:[1,330]}),{3:174,4:$VB,5:$VC,92:331,93:332,94:333,95:334,96:[1,335],193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[1,337],346:336},{122:[2,537]},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:338,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{33:339,66:59,74:79,80:$V4},o($V22,[2,96],{3:340,4:$VB,5:$VC,63:[1,341]}),o($V22,[2,99],{3:342,4:$VB,5:$VC,63:[1,343]}),o($V22,[2,100],{3:344,4:$VB,5:$VC,63:[1,345]}),o($V22,[2,103],{3:346,4:$VB,5:$VC,63:[1,347]}),o($V22,[2,106],{3:348,4:$VB,5:$VC,63:[1,349]}),o([4,5,8,9,11,61,63,65,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],$V32,{64:$VN1,106:$V42}),{3:271,4:$VB,5:$VC},o([4,5,8,9,11,61,63,65,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206],[2,109]),{33:351,61:[1,352],66:59,74:79,80:$V4},o($V52,[2,56]),{63:[1,353]},{253:[1,354]},{97:[1,355]},o($VA,[2,448],{207:[1,356]}),{306:[1,357]},{97:[1,358]},o($VA,[2,452],{97:[1,360],207:[1,359]}),{3:194,4:$VB,5:$VC,92:361},o($VA,[2,515]),{9:$Vx,11:$Vy,202:[1,362]},o($VA,[2,513]),o($VA,[2,514]),{3:363,4:$VB,5:$VC},o($VA,[2,441]),{239:[1,364]},o([8,9,11,63,64,80,97,124,202,206,239,245,247,293,296,297,298,299],$V32,{106:$V42}),o($VA,[2,465]),o($VA,[2,468]),o($VA,[2,469]),o($VA,[2,470]),o($VA,$VP1,{61:[1,365]}),{64:$VR1,89:274,94:276,96:$VE,152:$VF,153:273,159:275,189:$VT,190:$VU,191:$VV,195:$VZ,196:$V_,197:$V$,198:$V01,314:277,319:$V61},o($V62,[2,224]),o($V62,[2,225]),o($V62,[2,226]),o($V62,[2,227]),o($V62,[2,228]),o($V62,[2,229]),o($V62,[2,230]),{64:$VN1},o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,225:252,10:366,45:$V2,59:$V3,80:$V4,155:$Vl1,166:$V5,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($VA,[2,523]),o($VA,[2,524]),o($VA,[2,467],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,525],{61:[1,367]}),o($V_1,[2,527]),{120:[1,369],325:368,328:[1,370]},{3:371,4:$VB,5:$VC},o($Vh1,$Vi1,{76:372,88:$Vj1}),o($Vh1,$Vi1,{76:373,88:$Vj1}),o($Vh1,$Vi1,{76:374,88:$Vj1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:375,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,379],89:378,152:$VF},o($Vk1,[2,64]),o($Vk1,[2,65]),o($Vk1,[2,66]),o($Vk1,[2,67]),o($Vk1,[2,68]),o($Vk1,[2,69]),o($Vk1,[2,70]),o($Vz,[2,4]),o($Vz,[2,5]),o($Vz,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:380,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vz,[2,517],{333:381,206:[1,382]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:383,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:384,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:385,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:386,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:387,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:388,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:389,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:390,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:391,4:$VB,5:$VC,64:[1,393],89:392,93:394,152:$VF},o($V72,[2,317],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:395,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,318],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:396,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,319],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:397,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,320],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:398,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),o($V72,[2,321],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:399,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:400,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:401,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V72,[2,322],{157:87,93:88,158:89,156:90,154:91,89:92,159:93,153:94,160:95,94:96,95:97,161:98,162:99,163:100,164:101,165:102,49:104,173:105,3:106,314:126,121:402,4:$VB,5:$VC,64:$VD,96:$VE,152:$VF,155:$VG,166:$V5,167:$VH,168:$VI,170:$VJ,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,315:$V51,319:$V61}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:403,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:404,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{79:[1,406],226:405,236:[1,407],237:[1,408]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:409,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:410,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:299,4:$VB,5:$VC,64:[1,411],93:414,156:413,193:$V82,231:412},{230:[1,416]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:417,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:418,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:419,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:420,289:$Va2},{65:[1,423]},{65:[1,424],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,75:[1,426],79:[1,427],89:92,93:88,94:96,95:97,96:$VE,121:425,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,65:[1,429],89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:428,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:431,4:$VB,5:$VC,81:$Vb2,155:[1,433]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,298],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,234:$VK1}),o($Vc2,[2,299],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,300],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($VQ1,[2,261]),o($VQ1,[2,262]),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,259]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:434,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,473]),o($VT1,[2,474]),o($VT1,[2,475]),o($VT1,[2,476]),o($VT1,[2,478]),{33:435,66:59,74:79,80:$V4},{155:$Vl1,200:436,203:281,204:$VS1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{201:437,202:$Vd2,203:438,204:$VS1,206:$Ve2},o($Vf2,[2,268]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:440,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:441,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:442,289:$Va2},o($VT1,[2,479]),{61:[1,444],323:[1,443]},o($VT1,[2,495]),o($Vg2,[2,502]),o($Vh2,[2,480]),o($Vh2,[2,481]),o($Vh2,[2,482]),o($Vh2,[2,483]),o($Vh2,[2,484]),o($Vh2,[2,485]),o($Vh2,[2,486]),o($Vh2,[2,487]),o($Vh2,[2,488]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:445,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,$VM1,{64:$VN1,106:$Vi2}),o($Ve1,[2,218],{64:$VN1}),o($Ve1,[2,219]),{61:[1,448],321:[1,447]},o($VT1,[2,492]),o($Vj2,[2,497]),{196:[1,449]},{196:[1,450]},{196:[1,451]},{293:[1,455],296:[1,452],298:[1,453],299:[1,454]},{3:456,4:$VB,5:$VC},{3:457,4:$VB,5:$VC},{229:[1,458]},o($Vk2,$VY1,{254:459,264:$VZ1}),{120:[1,460]},{3:461,4:$VB,5:$VC},o($V91,$VY1,{254:462,264:$VZ1}),o($V91,$VY1,{254:463,264:$VZ1}),{193:$V81,342:464},{4:$V92,63:[1,466],169:465,289:$Va2},o($VA,[2,332],{124:[1,467]}),o($VA,[2,433]),{3:468,4:$VB,5:$VC},{194:[1,469]},o($Vk2,$V$1,{294:470,264:$V02}),o($VA,[2,447]),{3:194,4:$VB,5:$VC,92:471},{3:194,4:$VB,5:$VC,92:472},{33:476,64:[1,475],66:59,74:79,80:$V4,245:[1,473],247:[1,474]},{297:[1,477]},o($Vl2,[2,146],{69:478,124:[1,479]}),{3:174,4:$VB,5:$VC,64:[1,481],92:169,93:171,94:170,95:172,96:$Vc1,98:480,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($Va1,[2,76]),o($Va1,[2,77]),o($Va1,[2,78]),o($Va1,[2,79]),o($Va1,[2,80]),{120:[1,484],347:483},{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:485,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{122:[2,538]},{65:[1,486]},o($V22,[2,94]),{3:487,4:$VB,5:$VC},o($V22,[2,97]),{3:488,4:$VB,5:$VC},o($V22,[2,101]),{3:489,4:$VB,5:$VC},o($V22,[2,104]),{3:490,4:$VB,5:$VC},o($V22,[2,107]),{3:491,4:$VB,5:$VC},{3:492,4:$VB,5:$VC},o($VA,[2,54]),{3:179,4:$VB,5:$VC,62:493},{64:[1,494]},{3:194,4:$VB,5:$VC,92:495},{3:194,4:$VB,5:$VC,92:496},{96:$VE,153:497,191:$VV},o($VA,[2,450],{207:[1,498]}),{3:194,4:$VB,5:$VC,92:499},{96:$VE,153:500,191:$VV},{3:501,4:$VB,5:$VC},o($VA,[2,535]),o($VA,[2,522]),o($VA,[2,440]),{3:505,4:$VB,5:$VC,156:504,240:502,241:503},{164:506,193:$Vg1,314:126,315:$V51,319:$V61},o($VA,[2,519]),{96:$VE,153:507,191:$VV},o($VA,[2,503]),o($VA,[2,511]),o($VA,[2,512]),{214:[1,510],219:[1,508],326:509},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:511,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:512,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,77:513,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vm2,[2,62],{61:$Vn2}),o($Vo2,$Vp2,{149:515,150:$Vq2,151:$Vr2}),o($Vs2,[2,191],{225:252,3:519,153:521,4:$VB,5:$VC,63:[1,518],96:$VE,152:[1,520],155:$Vl1,191:$VV,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vh1,[2,71],{90:[1,522]}),{89:523,152:$VF},o($Vz,[2,9]),o($VA,[2,516]),o($VA,$V0,{16:5,17:7,18:8,19:9,20:10,21:11,22:12,23:13,24:14,25:15,26:16,27:17,28:18,29:19,30:20,31:21,32:22,33:23,34:24,35:25,36:26,37:27,38:28,39:29,40:30,41:31,42:32,43:33,44:34,46:36,47:37,48:38,49:39,50:40,51:41,52:42,53:43,54:44,55:45,56:46,57:47,58:48,66:59,74:79,10:524,45:$V2,59:$V3,80:$V4,166:$V5,238:$V6,239:$V7,242:$V8,243:$V9,251:$Va,264:$Vb,293:$Vc,295:$Vd,296:$Ve,300:$Vf,302:$Vg,304:$Vh,305:$Vi,310:$Vj,312:$Vk,313:$Vl,329:$Vm,331:$Vn,332:$Vo,334:$Vp,335:$Vq,336:$Vr,337:$Vs,338:$Vt,340:$Vu,343:$Vv,344:$Vw}),o($Vt2,[2,272],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vt2,[2,273],{225:252,155:$Vl1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,274],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vc2,[2,275],{225:252,155:$Vl1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Vu2,[2,276],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,277],{225:252,213:$Vs1,214:$Vt1}),o($Vu2,[2,278],{225:252,213:$Vs1,214:$Vt1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,155,166,191,202,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,279],{225:252,214:$Vt1}),o($Ve1,[2,280],{64:$VN1}),o($Ve1,[2,281]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:525,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,283]),o($Vv2,[2,284],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,285],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,286],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,287],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,288],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,289],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,290],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,291],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,292],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),o($Vv2,[2,293],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,229:$VG1,230:$VH1,234:$VK1}),{64:[1,526]},{64:[2,323]},{64:[2,324]},{64:[2,325]},o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,227,228,232,233,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,296],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,228,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,297],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1}),{3:106,4:$VB,5:$VC,33:527,49:104,64:$VD,65:[1,529],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:528,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,308]),o($Ve1,[2,314]),o($Ve1,[2,315]),{64:[1,530]},{3:299,4:$VB,5:$VC,64:[1,531],93:414,156:413,193:$V82,231:532},o($Vw2,[2,310],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o($Vw2,[2,311],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,229:$VG1,230:$VH1,234:$VK1}),o([4,5,8,9,11,45,59,61,63,65,80,91,96,97,101,103,112,113,114,115,116,117,118,119,124,125,134,135,136,137,139,142,143,145,150,151,152,166,191,202,204,205,206,215,216,217,218,219,220,221,222,223,224,227,228,229,230,232,233,234,235,238,239,242,243,251,264,293,295,296,300,302,304,305,310,312,313,329,331,332,334,335,336,337,338,340,343,344,356],[2,312],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1}),o($Ve1,[2,313]),o($Vx2,[2,404],{64:[1,533]}),{64:[1,534]},o($Ve1,[2,215]),o($Ve1,[2,301]),{65:[1,535],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:536,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:537,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vy2,65:[1,538]},o($VQ1,[2,250]),o($Vz2,[2,251],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,$VA2,{106:[1,540]}),o($VT1,[2,197]),o($Ve1,[2,193]),{65:[1,541],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,542]},{201:543,202:$Vd2,203:438,204:$VS1,206:$Ve2},{202:[1,544]},o($Vf2,[2,267]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:545,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{155:$Vl1,205:[1,546],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{63:[1,547],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{61:[1,548]},o($VT1,[2,493]),{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:550,318:290,319:$V61,323:[1,549]},{65:[1,551],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:552,4:$VB,5:$VC,81:$Vb2},o($VT1,[2,490]),{3:307,4:$VB,5:$VC,96:$VW1,152:$VX1,321:[1,553],324:554},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:555,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:556,318:290,319:$V61},{3:299,4:$VB,5:$VC,64:$VU1,89:291,93:297,94:296,96:$VE,152:$VF,153:292,156:294,159:293,160:295,164:289,189:$VT,190:$VU,191:$VV,192:$VW,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,317:557,318:290,319:$V61},{83:[1,559],297:[1,558]},{83:[1,560]},{83:[1,561]},{83:[1,562]},o($VA,[2,429],{63:[1,564],64:[1,563]}),o($VA,[2,434]),{194:[1,565]},{3:566,4:$VB,5:$VC,96:$VE,153:567,191:$VV},{3:194,4:$VB,5:$VC,92:568},{120:[1,569]},{3:194,4:$VB,5:$VC,92:570},{3:194,4:$VB,5:$VC,92:571},o($V_1,[2,530]),o($V_1,[2,531],{219:[1,572]}),{4:$V92,169:573,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:574,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,442]),o($Vk2,[2,422]),{3:575,4:$VB,5:$VC,96:$VE,153:576,191:$VV},o($VA,[2,420]),o($VA,[2,464]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:577,314:126,315:$V51,319:$V61},{245:[1,581]},{3:505,4:$VB,5:$VC,123:582,156:583},o($VA,[2,336]),{3:584,4:$VB,5:$VC},o($VC2,[2,148],{70:585,125:[1,586]}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:587,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V12,[2,81],{99:588,107:590,100:591,108:592,111:595,61:$VD2,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,33:339,64:$Vb1,66:59,74:79,80:$V4,92:169,93:171,94:170,95:172,96:$Vc1,98:604,104:482,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($VO2,[2,89]),{204:$VP2,348:605,350:606,351:607},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:609,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{120:[2,539]},o($V22,[2,93],{3:610,4:$VB,5:$VC,63:[1,611]}),o($V22,[2,95]),o($V22,[2,98]),o($V22,[2,102]),o($V22,[2,105]),o($V22,[2,108]),o([4,5,8,9,11,61,63,64,65,80,97,101,103,112,113,114,115,116,117,118,119,120,122,124,125,135,136,137,139,145,202,206,239,245,247,293,296,297,298,299],[2,110]),o($V52,[2,55]),{33:612,66:59,74:79,80:$V4},o($VA,[2,460],{97:[1,613]}),o($VA,[2,456],{97:[1,614]}),o($VA,[2,449]),{96:$VE,153:615,191:$VV},o($VA,[2,458],{97:[1,616]}),o($VA,[2,453]),o($VA,[2,454],{207:[1,617]}),o($VA,[2,327],{61:$VQ2,124:[1,618]}),o($VR2,[2,328]),{219:[1,620]},o([8,9,11,61,65,101,103,112,113,114,115,116,117,118,119,124,125,135,136,137,139,145,202,206,219],$VM1,{106:$Vi2}),o($VA,[2,471]),o($V_1,[2,526]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:621,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{214:[1,623],219:[1,622]},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:624},o($Vm2,[2,59],{61:$Vn2}),o($Vm2,[2,60],{61:$Vn2}),o($Vm2,[2,61],{61:$Vn2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:377,148:628,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,[2,180]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:629,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:630,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:631,4:$VB,5:$VC,96:$VE,152:[1,632],153:633,191:$VV},o($Vs2,[2,186]),o($Vs2,[2,188]),o($Vs2,[2,190]),o($Vh1,[2,73]),{65:[1,634]},o($VA,[2,518]),{65:[1,635],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,33:636,49:104,64:$VD,66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:637,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,638]},{61:$Vy2,65:[1,639]},o($Ve1,[2,306]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:640,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,33:641,49:104,64:$VD,65:[1,643],66:59,74:79,80:$V4,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:642,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,309]),{152:[1,644]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:645,314:126,315:$V51,319:$V61},o($Ve1,$VU2,{174:647,175:$VV2}),{65:[1,649],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,650],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($VQ1,[2,249]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:651,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:652,4:$VB,5:$VC,155:[1,653]},o($VT1,[2,472]),o($Ve1,[2,260]),{202:[1,654]},o($Ve1,[2,266]),{155:$Vl1,202:[2,270],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:655,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{4:$V92,169:656,289:$Va2},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:657,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VT1,[2,494]),o($Vg2,[2,501]),o($Vh2,[2,489]),o($VT1,$VA2,{106:[1,658]}),o($VT1,[2,491]),o($Vj2,[2,496]),o($Vj2,[2,498]),o($Vj2,[2,499]),o($Vj2,[2,500]),{3:659,4:$VB,5:$VC},{3:660,4:$VB,5:$VC},{3:662,4:$VB,5:$VC,286:661},{3:662,4:$VB,5:$VC,286:663},{3:664,4:$VB,5:$VC},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:665,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:666,4:$VB,5:$VC},o($Vk2,[2,370]),o($VA,$VW2,{303:667,63:$VX2,64:[1,668]}),o($VA,$VW2,{303:670,63:$VX2}),{64:[1,671]},{3:194,4:$VB,5:$VC,92:672},o($VA,[2,357],{64:[1,673]}),{63:[1,675],64:[1,674]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:676,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V_1,[2,532],{219:[1,677]}),o($VA,[2,331],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,443]),o($VA,[2,444]),o($VA,[2,333],{61:$VY2}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:679,314:126,315:$V51,319:$V61},o($VZ2,[2,341]),o($VZ2,[2,342]),o($VA,[2,334]),{61:$V_2,65:[1,680]},o($VO2,[2,354]),o($VA,[2,428]),o($V$2,[2,167],{71:682,139:[1,683]}),{126:[1,684]},o($Vl2,[2,147],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V12,[2,82],{108:592,111:595,107:685,100:686,101:$VE2,103:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2}),{3:174,4:$VB,5:$VC,64:$Vb1,92:169,93:171,94:170,95:172,96:$Vc1,104:687,105:173,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},o($V03,[2,114]),o($V03,[2,115]),{3:174,4:$VB,5:$VC,64:[1,691],92:689,93:692,94:690,95:693,109:688,193:$Vd1,195:$VZ,196:$V_,197:$V$,198:$V01},{102:[1,694],113:$V13},{102:[1,696],113:$V23},o($V33,[2,130]),{101:[1,700],103:[1,699],111:698,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($V33,[2,132]),{113:[1,701]},{103:[1,703],113:[1,702]},{103:[1,705],113:[1,704]},{103:[1,706]},{113:[1,707]},{113:[1,708]},{61:$VD2,99:709,100:591,101:$VE2,103:$VF2,107:590,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,559],{349:710,350:711,351:712,204:$VP2,356:[1,713]}),o($V43,[2,543]),o($V43,[2,544]),{229:[1,715],352:[1,714]},{155:$Vl1,204:[2,540],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V22,[2,91]),{3:716,4:$VB,5:$VC},{65:[1,717]},{3:718,4:$VB,5:$VC},{3:719,4:$VB,5:$VC},o($VA,[2,451]),{3:720,4:$VB,5:$VC},{96:$VE,153:721,191:$VV},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:722,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,156:504,241:723},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:724,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,504],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:725,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:625,4:$VB,5:$VC,64:$VS2,152:$VT2,327:726},o($V53,[2,507]),o($V53,[2,508]),o($V53,[2,509]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:727,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo2,$Vp2,{149:728,150:$Vq2,151:$Vr2}),o($Vo2,[2,182],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vo2,[2,183],{225:252,150:[1,729],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Vs2,[2,185]),o($Vs2,[2,187]),o($Vs2,[2,189]),o($Vh1,[2,72]),o($Ve1,[2,282]),{65:[1,730]},{61:$Vy2,65:[1,731]},o($Ve1,[2,302]),o($Ve1,[2,304]),{65:[1,732],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{65:[1,733]},{61:$Vy2,65:[1,734]},o($Ve1,[2,307]),{61:[1,735],65:[1,736]},{61:$V63,65:[1,737]},o($Vz2,[2,346],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($Ve1,[2,231]),{64:[1,739]},o($Ve1,$VU2,{174:740,175:$VV2}),o($Ve1,$VU2,{174:741,175:$VV2}),o($Vz2,[2,252],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VT1,[2,195]),o($Ve1,[2,192]),o($Ve1,[2,265]),o($Vf2,[2,269],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{61:[1,743],65:[1,742]},{61:[1,745],65:[1,744],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{3:652,4:$VB,5:$VC},o($VA,[2,423]),{297:[1,746]},o($VA,[2,424]),o($V73,[2,401],{169:747,4:$V92,288:[1,748],289:$Va2}),o($VA,[2,425]),o($VA,[2,427]),{61:$Vy2,65:[1,749]},o($VA,[2,431]),o($VA,[2,435]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:430,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,188:750,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:751,4:$VB,5:$VC},o($VA,[2,437]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:752,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,755]},{3:662,4:$VB,5:$VC,63:[1,758],255:756,265:757,286:759},{3:505,4:$VB,5:$VC,123:760,156:583},{33:761,66:59,74:79,80:$V4},o($V_1,[2,533],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:762,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,763],94:765,164:764,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,314:126,315:$V51,319:$V61},{61:$V63,65:[1,766]},{33:768,66:59,74:79,80:$V4,245:[1,767]},{3:505,4:$VB,5:$VC,156:769},o($V83,[2,175],{72:770,145:[1,771]}),{126:[1,772]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:773,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,112]),o($V03,[2,113]),o($VO2,[2,90]),o($V03,[2,145],{110:779,120:[1,780],122:[1,781]}),o($Vc3,[2,117],{3:782,4:$VB,5:$VC,63:[1,783]}),{3:784,4:$VB,5:$VC,63:[1,785]},{33:786,66:59,74:79,80:$V4},o($Vc3,[2,124],{3:787,4:$VB,5:$VC,63:[1,788]}),o($Vc3,[2,127],{3:789,4:$VB,5:$VC,63:[1,790]}),{64:[1,791]},o($V33,[2,142]),{64:[1,792]},o($V33,[2,138]),o($V33,[2,131]),{113:$V23},{113:$V13},o($V33,[2,133]),o($V33,[2,134]),{113:[1,793]},o($V33,[2,136]),{113:[1,794]},{113:[1,795]},o($V33,[2,140]),o($V33,[2,141]),{65:[1,796],100:686,101:$VE2,103:$VF2,107:685,108:592,111:595,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:$VM2,119:$VN2},o($VA,[2,536]),o($V43,[2,541]),o($V43,[2,542]),{3:106,4:$VB,5:$VC,49:104,64:$VD,77:797,89:92,93:88,94:96,95:97,96:$VE,121:377,148:376,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{205:[1,798],227:[1,799]},{352:[1,800]},o($V22,[2,92]),o($V52,[2,57]),o($VA,[2,461]),o($VA,[2,457]),o($VA,[2,459]),o($VA,[2,455]),o($VA,[2,326],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VR2,[2,329]),o($VR2,[2,330],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($VA,[2,505],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V53,[2,506]),{65:[1,801],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo2,[2,179]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:802,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,294]),o($Ve1,[2,295]),o($Ve1,[2,316]),o($Ve1,[2,303]),o($Ve1,[2,305]),{152:[1,803]},o($Vx2,[2,403]),o($Vx2,[2,405]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:804,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{139:$Vd3,176:805,177:806,178:[1,807]},o($Ve1,[2,232]),o($Ve1,[2,233]),o($Ve1,[2,220]),{152:[1,809]},o($Ve1,[2,222]),{152:[1,810]},{3:811,4:$VB,5:$VC},o($V73,[2,406],{287:812,290:813,291:814,273:823,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V73,[2,400]),o($VA,[2,430],{63:[1,825]}),{61:$Vy2,65:[1,826]},o($VA,[2,439]),{61:$Vn3,65:[1,827]},o($Vo3,[2,169]),o($Vo3,[2,171],{225:252,142:[1,829],143:[1,830],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:831,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{65:[1,832]},{61:[1,833],65:[2,372]},{33:834,66:59,74:79,80:$V4},o($Vz2,[2,397]),{61:$V_2,65:[1,835]},o($VA,[2,463]),o($V_1,[2,534],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:646,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,248:836,314:126,315:$V51,319:$V61},o($VZ2,[2,344]),o($VZ2,[2,345]),o($VZ2,[2,340]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:837,314:126,315:$V51,319:$V61},o($VA,[2,337]),o($VO2,[2,355]),o($Vp3,[2,158],{73:838,135:[1,839],136:[1,840],137:[1,841]}),{89:842,152:$VF},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:843,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VC2,[2,156],{128:844,61:$Vq3,134:[1,846]}),o($Vr3,[2,150]),{131:[1,847]},{64:[1,848]},{64:[1,849]},o($Vr3,[2,155],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,116]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:850,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:851,156:583},o($Vc3,[2,118]),{3:852,4:$VB,5:$VC},o($Vc3,[2,120]),{3:853,4:$VB,5:$VC},{65:[1,854]},o($Vc3,[2,125]),{3:855,4:$VB,5:$VC},o($Vc3,[2,128]),{3:856,4:$VB,5:$VC},{33:857,66:59,74:79,80:$V4},{33:858,66:59,74:79,80:$V4},o($V33,[2,135]),o($V33,[2,137]),o($V33,[2,139]),o($V12,[2,83]),o($VA,[2,560],{61:$Vn2,91:[1,859]}),{238:$Vs3,242:$Vt3,353:860},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:863,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{126:[1,865],205:[1,864],227:[1,866]},o($V53,[2,510]),o($Vo2,[2,184],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,867]},o($Vz2,[2,347],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{65:[1,868],139:$Vd3,177:869},{65:[1,870]},{126:[1,871]},{126:[1,872]},{65:[1,873]},{65:[1,874]},o($VA,[2,426]),o($V73,[2,399]),o($V73,[2,407],{273:823,291:875,192:$Ve3,229:$Vf3,247:$Vg3,260:$Vh3,275:$Vi3,276:$Vj3,279:$Vk3,280:$Vl3,292:$Vm3}),o($V62,[2,409]),{277:[1,876]},{277:[1,877]},{3:878,4:$VB,5:$VC},o($V62,[2,413]),o($V62,[2,415],{64:[1,879]}),{3:208,4:$VB,5:$VC,89:201,93:206,94:205,96:$VE,152:$VF,153:202,159:203,160:204,171:880,172:$Vf1,189:$VT,190:$VU,191:$VV,192:$VW,195:$VZ,196:$V_,197:$V$,198:$V01},o($V62,[2,417]),{192:[1,881]},o($V62,[2,419]),{64:[1,882]},{3:883,4:$VB,5:$VC},o($VA,$VW2,{303:884,63:$VX2}),o($VA,[2,445]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,141:885,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vo3,[2,172]),{144:[1,886]},{61:$Vn3,65:[1,887]},o($VA,[2,358],{256:888,257:889,258:890,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($Vy3,$Vz3,{3:662,266:895,286:896,267:897,268:898,4:$VB,5:$VC,274:$VA3}),{65:[2,373]},{63:[1,900]},{61:$V63,65:[1,901]},o($VA,[2,335],{61:$VY2}),o($Vp3,[2,58]),{33:902,66:59,74:79,79:[1,903],80:$V4,138:[1,904]},{33:905,66:59,74:79,80:$V4,138:[1,906]},{33:907,66:59,74:79,80:$V4,138:[1,908]},o($V83,[2,177],{146:909,147:[1,910]}),o($V$2,[2,168],{61:$Vn3}),o($VC2,[2,149]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,129:911,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:912,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{64:[1,913]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:914,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:915,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($V03,[2,143],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),o($V03,[2,144],{61:$V_2}),o($Vc3,[2,119]),o($Vc3,[2,121]),{3:916,4:$VB,5:$VC,63:[1,917]},o($Vc3,[2,126]),o($Vc3,[2,129]),{65:[1,918]},{65:[1,919]},{3:194,4:$VB,5:$VC,92:921,193:[1,920]},o($V43,[2,545]),o($V43,[2,547]),{239:[1,922]},{155:$Vl1,205:[1,923],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},{243:$VB3,354:924},{312:[1,927],355:[1,926]},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:928,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Vx2,[2,402]),o($Ve1,[2,235]),{65:[1,929]},o($Ve1,[2,236]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:930,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:754,140:931,141:753,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($Ve1,[2,221]),o($Ve1,[2,223]),o($V62,[2,408]),o($V62,[2,410]),{280:[1,932]},{64:[1,933]},{89:934,152:$VF},o($V62,[2,416]),o($V62,[2,418]),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:935,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},o($VA,[2,432]),o($VA,[2,436]),o($Vo3,[2,170]),o($Vo3,[2,173],{142:[1,936]}),o($VA,[2,446]),o($VA,[2,356]),o($VA,[2,359],{258:937,247:$Vu3,259:$Vv3,260:$Vw3,261:$Vx3}),o($VC3,[2,361]),o($VC3,[2,362]),{219:[1,938]},{219:[1,939]},{219:[1,940]},{61:[1,941],65:[2,371]},o($Vz2,[2,398]),o($Vz2,[2,374]),{78:[1,949],86:[1,950],269:942,270:943,271:944,272:945,273:946,275:$Vi3,276:[1,947],277:[1,951],279:[1,948]},{3:952,4:$VB,5:$VC},{33:953,66:59,74:79,80:$V4},o($VZ2,[2,343]),o($Vp3,[2,159]),{33:954,66:59,74:79,80:$V4,138:[1,955]},{33:956,66:59,74:79,80:$V4},o($Vp3,[2,161]),{33:957,66:59,74:79,80:$V4},o($Vp3,[2,162]),{33:958,66:59,74:79,80:$V4},o($V83,[2,176]),{89:959,152:$VF},o($Vr3,[2,151]),o($VC2,[2,157],{225:252,155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1}),{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:778,127:960,129:774,130:$V93,132:$Va3,133:$Vb3,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{61:$Vq3,65:[1,961]},{61:$Vq3,65:[1,962]},o($Vc3,[2,122]),{3:963,4:$VB,5:$VC},{3:964,4:$VB,5:$VC,63:[1,965]},{3:966,4:$VB,5:$VC,63:[1,967]},{3:968,4:$VB,5:$VC},o($VA,[2,562],{64:[1,969]}),{3:505,4:$VB,5:$VC,156:504,240:970,241:503},{238:$Vs3,242:$Vt3,353:971},o($V43,[2,549]),{64:[1,973],245:[1,972],247:[1,974]},{205:[1,975],227:[1,976]},{205:[1,977],227:[1,978]},{155:$Vl1,205:[1,979],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Ve1,[2,237]),o([65,139],[2,238],{61:$Vq3}),{61:$Vn3,65:[2,239]},{3:980,4:$VB,5:$VC},{3:981,4:$VB,5:$VC},{61:[1,982]},{65:[1,983],155:$Vl1,207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($Vo3,[2,174]),o($VC3,[2,360]),{3:984,4:$VB,5:$VC},{89:985,152:$VF},{3:986,4:$VB,5:$VC},o($Vy3,$Vz3,{268:898,267:987,274:$VA3}),o($Vz2,[2,376]),o($Vz2,[2,377]),o($Vz2,[2,378]),o($Vz2,[2,379]),o($Vz2,[2,380]),{277:[1,988]},{277:[1,989]},o($Vz2,[2,390]),{3:990,4:$VB,5:$VC},{3:991,4:$VB,5:$VC},o($Vy3,[2,382]),o($VA,[2,462]),o($Vp3,[2,160]),{33:992,66:59,74:79,80:$V4},o($Vp3,[2,163]),o($Vp3,[2,165]),o($Vp3,[2,166]),o($V83,[2,178]),{61:$Vq3,65:[1,993]},o($Vr3,[2,153]),o($Vr3,[2,154]),o($Vc3,[2,123]),o($V03,[2,85]),{3:994,4:$VB,5:$VC},o($V03,[2,87]),{3:995,4:$VB,5:$VC},o($VA,[2,561]),{3:505,4:$VB,5:$VC,123:996,156:583},o($V43,[2,548],{61:$VQ2}),o($V43,[2,546]),{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:997,314:126,315:$V51,319:$V61},{3:505,4:$VB,5:$VC,123:998,156:583},{245:[1,999]},{243:$VB3,354:1000},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1001,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1002},{3:106,4:$VB,5:$VC,49:104,64:$VD,89:92,93:88,94:96,95:97,96:$VE,121:1003,152:$VF,153:94,154:91,155:$VG,156:90,157:87,158:89,159:93,160:95,161:98,162:99,163:100,164:101,165:102,166:$V5,167:$VH,168:$VI,170:$VJ,173:105,179:$VK,180:$VL,181:$VM,182:$VN,183:$VO,184:$VP,185:$VQ,186:$VR,187:$VS,189:$VT,190:$VU,191:$VV,192:$VW,193:$VX,194:$VY,195:$VZ,196:$V_,197:$V$,198:$V01,199:$V11,209:$V21,210:$V31,229:$V41,314:126,315:$V51,319:$V61},{243:$VB3,354:1004},{64:[1,1005]},{65:[1,1006]},{89:1007,152:$VF},o($V62,[2,383]),o($VC3,[2,363]),o($VC3,[2,364]),o($VC3,[2,365]),o($Vz2,[2,375]),{64:[1,1008]},{64:[1,1009]},{64:[1,1010]},{64:[1,1011]},o($Vp3,[2,164]),o($Vr3,[2,152]),o($V03,[2,86]),o($V03,[2,88]),{61:$V_2,65:[1,1012]},o($V43,[2,555],{61:$VY2}),{61:$V_2,65:[1,1013]},o($V43,[2,557]),o($V43,[2,550]),{155:$Vl1,205:[1,1014],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,553]),{155:$Vl1,205:[1,1015],207:$Vm1,208:$Vn1,209:$Vo1,210:$Vp1,211:$Vq1,212:$Vr1,213:$Vs1,214:$Vt1,215:$Vu1,216:$Vv1,217:$Vw1,218:$Vx1,219:$Vy1,220:$Vz1,221:$VA1,222:$VB1,223:$VC1,224:$VD1,225:252,227:$VE1,228:$VF1,229:$VG1,230:$VH1,232:$VI1,233:$VJ1,234:$VK1,235:$VL1},o($V43,[2,551]),{3:1016,4:$VB,5:$VC},o($V62,[2,412]),{65:[1,1017]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1018},{3:1019,4:$VB,5:$VC,96:$VD3,278:1021},{3:505,4:$VB,5:$VC,123:1022,156:583},{3:505,4:$VB,5:$VC,123:1023,156:583},o($VA,[2,563]),{245:[1,1024],247:[1,1025]},{243:$VB3,354:1026},{238:$Vs3,242:$Vt3,353:1027},{65:[1,1028]},o($V62,[2,414]),{61:$VE3,65:[1,1029]},o($Vz2,[2,393]),o($Vz2,[2,394]),{61:$VE3,65:[1,1031]},{61:$V_2,65:[1,1032]},{61:$V_2,65:[1,1033]},{64:$VB2,94:580,164:579,193:$Vg1,195:$VZ,196:$V_,197:$V$,198:$V01,246:1034,314:126,315:$V51,319:$V61},{245:[1,1035]},o($V43,[2,552]),o($V43,[2,554]),o($V62,[2,411]),o($Vz2,[2,384]),{3:1036,4:$VB,5:$VC,96:[1,1037]},{280:[1,1038]},o($Vz2,[2,391]),o($Vz2,[2,392]),o($V43,[2,556],{61:$VY2}),o($V43,[2,558]),o($Vz2,[2,395]),o($Vz2,[2,396]),{3:1039,4:$VB,5:$VC},{64:[1,1040]},{3:1019,4:$VB,5:$VC,96:$VD3,278:1041},{61:$VE3,65:[1,1042]},o($Vz2,[2,386],{281:1043,282:1044,120:[1,1045]}),o($Vz2,[2,385]),{120:[1,1047],283:1046},{242:[1,1048]},o($Vz2,[2,387]),{238:[1,1049]},{284:[1,1050]},{284:[1,1051]},{285:[1,1052]},{285:[1,1053]},{120:[2,388]},o($Vz2,[2,389])], +defaultActions: {81:[2,3],129:[2,240],130:[2,241],131:[2,242],132:[2,243],133:[2,244],134:[2,245],135:[2,246],136:[2,247],137:[2,248],166:[2,537],338:[2,538],406:[2,323],407:[2,324],408:[2,325],485:[2,539],834:[2,373],1052:[2,388]}, parseError: function parseError(str, hash) { if (hash.recoverable) { this.trace(str); @@ -1750,7 +1763,7 @@ case 21:return 119 break; case 22:return 237 break; -case 23:return 103 +case 23:return 102 break; case 24:return 187 break; @@ -1762,9 +1775,9 @@ case 27:return 142 break; case 28:return 300 break; -case 29:return 259 +case 29:return 260 break; -case 30:return 259 +case 30:return 260 break; case 31:return 183 break; @@ -1784,7 +1797,7 @@ case 38:return 199 break; case 39:return 168 break; -case 40:return 260 +case 40:return 261 break; case 41:return 275 break; @@ -1840,7 +1853,7 @@ case 66:return 293 break; case 67:return 202 break; -case 68:return 258 +case 68:return 259 break; case 69:return 289 break; @@ -1946,7 +1959,7 @@ case 119:return 228 break; case 120:return 139 break; -case 121:return 104 +case 121:return 103 break; case 122:return 175 break; @@ -2006,7 +2019,7 @@ case 149:return 'STORE' break; case 150:return "SUM" break; -case 151:return 252 +case 151:return 253 break; case 152:return 307 break; @@ -2014,126 +2027,130 @@ case 153:return 355 break; case 154:return 150 break; -case 155:return 85 +case 155:return 263 +break; +case 156:return 262 +break; +case 157:return 85 break; -case 156:return 151 +case 158:return 151 break; -case 157:return 205 +case 159:return 205 break; -case 158:return 297 +case 160:return 297 break; -case 159:return 88 +case 161:return 88 break; -case 160:return 'TRAN' +case 162:return 'TRAN' break; -case 161:return 330 +case 163:return 330 break; -case 162:return 189 +case 164:return 189 break; -case 163:return 343 +case 165:return 343 break; -case 164:return 135 +case 166:return 135 break; -case 165:return 78 +case 167:return 78 break; -case 166:return 238 +case 168:return 238 break; -case 167:return 304 +case 169:return 304 break; -case 168:return 122 +case 170:return 122 break; -case 169:return 81 +case 171:return 81 break; -case 170:return 245 +case 172:return 245 break; -case 171:return 309 +case 173:return 309 break; -case 172:return 204 +case 174:return 204 break; -case 173:return 124 +case 175:return 124 break; -case 174:return 334 +case 176:return 334 break; -case 175:return 59 +case 177:return 59 break; -case 176:return 330 +case 178:return 330 break; -case 177:return 152 +case 179:return 152 break; -case 178:return 152 +case 180:return 152 break; -case 179:return 214 +case 181:return 214 break; -case 180:return 209 +case 182:return 209 break; -case 181:return 210 +case 183:return 210 break; -case 182:return 155 +case 184:return 155 break; -case 183:return 211 +case 185:return 211 break; -case 184:return 212 +case 186:return 212 break; -case 185:return 224 +case 187:return 224 break; -case 186:return 221 +case 188:return 221 break; -case 187:return 223 +case 189:return 223 break; -case 188:return 220 +case 190:return 220 break; -case 189:return 216 +case 191:return 216 break; -case 190:return 215 +case 192:return 215 break; -case 191:return 218 +case 193:return 218 break; -case 192:return 222 +case 194:return 222 break; -case 193:return 217 +case 195:return 217 break; -case 194:return 219 +case 196:return 219 break; -case 195:return 222 +case 197:return 222 break; -case 196:return 64 +case 198:return 64 break; -case 197:return 65 +case 199:return 65 break; -case 198:return 193 +case 200:return 193 break; -case 199:return 319 +case 201:return 319 break; -case 200:return 321 +case 202:return 321 break; -case 201:return 323 +case 203:return 323 break; -case 202:return 106 +case 204:return 106 break; -case 203:return 61 +case 205:return 61 break; -case 204:return 235 +case 206:return 235 break; -case 205:return 196 +case 207:return 196 break; -case 206:return 9 +case 208:return 9 break; -case 207:return 195 +case 209:return 195 break; -case 208:return 197 +case 210:return 197 break; -case 209:return 213 +case 211:return 213 break; -case 210:return 4 +case 212:return 4 break; -case 211:return 8 +case 213:return 8 break; -case 212:return 'INVALID' +case 214:return 'INVALID' break; } }, -rules: [/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i], -conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],"inclusive":true}} +rules: [/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:\/\*(.*?)\*\/)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:ABSOLUTE\b)/i,/^(?:ACTION\b)/i,/^(?:ADD\b)/i,/^(?:AGGR\b)/i,/^(?:ALL\b)/i,/^(?:ALTER\b)/i,/^(?:AND\b)/i,/^(?:ANTI\b)/i,/^(?:ANY\b)/i,/^(?:APPLY\b)/i,/^(?:ARRAY\b)/i,/^(?:AS\b)/i,/^(?:ASSERT\b)/i,/^(?:ASC\b)/i,/^(?:ATTACH\b)/i,/^(?:AUTOINCREMENT\b)/i,/^(?:AUTO_INCREMENT\b)/i,/^(?:AVG\b)/i,/^(?:BEGIN\b)/i,/^(?:BETWEEN\b)/i,/^(?:BREAK\b)/i,/^(?:NOT\s+BETWEEN\b)/i,/^(?:NOT\s+LIKE\b)/i,/^(?:BY\b)/i,/^(?:CASE\b)/i,/^(?:CAST\b)/i,/^(?:CHARSET\b)/i,/^(?:CHECK\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTINUE\b)/i,/^(?:CONVERT\b)/i,/^(?:CORRESPONDING\b)/i,/^(?:COUNT\b)/i,/^(?:CREATE\b)/i,/^(?:CROSS\b)/i,/^(?:CUBE\b)/i,/^(?:CURRENT_TIMESTAMP\b)/i,/^(?:CURSOR\b)/i,/^(?:DATABASE\b)/i,/^(?:DATABASES\b)/i,/^(?:DECLARE\b)/i,/^(?:DEFAULT\b)/i,/^(?:DELETE\b)/i,/^(?:DELETED\b)/i,/^(?:DESC\b)/i,/^(?:DETACH\b)/i,/^(?:DISTINCT\b)/i,/^(?:DROP\b)/i,/^(?:END\b)/i,/^(?:ENGINE\b)/i,/^(?:ENUM\b)/i,/^(?:ELSE\b)/i,/^(?:EXCEPT\b)/i,/^(?:EXISTS\b)/i,/^(?:EXPLAIN\b)/i,/^(?:FALSE\b)/i,/^(?:FETCH\b)/i,/^(?:FIRST\b)/i,/^(?:FOREIGN\b)/i,/^(?:FROM\b)/i,/^(?:GO\b)/i,/^(?:GROUP\b)/i,/^(?:GROUPING\b)/i,/^(?:HAVING\b)/i,/^(?:HELP\b)/i,/^(?:IF\b)/i,/^(?:IDENTITY\b)/i,/^(?:IS\b)/i,/^(?:IN\b)/i,/^(?:INDEX\b)/i,/^(?:INNER\b)/i,/^(?:INSERT\b)/i,/^(?:INSERTED\b)/i,/^(?:INTERSECT\b)/i,/^(?:INTO\b)/i,/^(?:JOIN\b)/i,/^(?:KEY\b)/i,/^(?:LAST\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\b)/i,/^(?:SOURCE\b)/i,/^(?:MATCHED\b)/i,/^(?:MATRIX\b)/i,/^(?:MAX\b)/i,/^(?:MERGE\b)/i,/^(?:MIN\b)/i,/^(?:MINUS\b)/i,/^(?:MODIFY\b)/i,/^(?:NATURAL\b)/i,/^(?:NEXT\b)/i,/^(?:NEW\b)/i,/^(?:NOCASE\b)/i,/^(?:NO\b)/i,/^(?:NOT\b)/i,/^(?:NULL\b)/i,/^(?:OFF\b)/i,/^(?:ON\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:RENAME\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA\b)/i,/^(?:SCHEMAS\b)/i,/^(?:SELECT\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TD\b)/i,/^(?:TEMP\b)/i,/^(?:TEMPORARY\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:TH\b)/i,/^(?:THEN\b)/i,/^(?:TO\b)/i,/^(?:TOP\b)/i,/^(?:TRAN\b)/i,/^(?:TRANSACTION\b)/i,/^(?:TRUE\b)/i,/^(?:TRUNCATE\b)/i,/^(?:UNION\b)/i,/^(?:UNIQUE\b)/i,/^(?:UPDATE\b)/i,/^(?:USE\b)/i,/^(?:USING\b)/i,/^(?:VALUE\b)/i,/^(?:VALUES\b)/i,/^(?:VIEW\b)/i,/^(?:WHEN\b)/i,/^(?:WHERE\b)/i,/^(?:WHILE\b)/i,/^(?:WITH\b)/i,/^(?:WORK\b)/i,/^(?:(\d*[.])?\d+[eE]\d+)/i,/^(?:(\d*[.])?\d+)/i,/^(?:->)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\*)/i,/^(?:\/)/i,/^(?:%)/i,/^(?:!===)/i,/^(?:===)/i,/^(?:!==)/i,/^(?:==)/i,/^(?:>=)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:<>)/i,/^(?:<)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:\()/i,/^(?:\))/i,/^(?:@)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:\])/i,/^(?:\.)/i,/^(?:,)/i,/^(?:::)/i,/^(?::)/i,/^(?:;)/i,/^(?:\$)/i,/^(?:\?)/i,/^(?:\^)/i,/^(?:[a-zA-Z_][a-zA-Z_0-9]*)/i,/^(?:$)/i,/^(?:.)/i], +conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],"inclusive":true}} }); return lexer; })(); diff --git a/test/npm-debug.log b/test/npm-debug.log deleted file mode 100644 index 46bfc943d7..0000000000 --- a/test/npm-debug.log +++ /dev/null @@ -1,26 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ 'node', '/usr/local/bin/npm', 'publish' ] -2 info using npm@2.6.1 -3 info using node@v0.10.29 -4 verbose publish [ '.' ] -5 silly cache add args [ '.', null ] -6 verbose cache add spec . -7 silly cache add parsed spec { raw: '.', -7 silly cache add scope: null, -7 silly cache add name: null, -7 silly cache add rawSpec: '.', -7 silly cache add spec: '/Users/agershun/Dropbox/repo/alasql/test', -7 silly cache add type: 'local' } -8 error addLocal Could not install /Users/agershun/Dropbox/repo/alasql/test -9 verbose stack Error: EISDIR, read -10 verbose cwd /Users/agershun/Dropbox/repo/alasql/test -11 error Darwin 14.1.0 -12 error argv "node" "/usr/local/bin/npm" "publish" -13 error node v0.10.29 -14 error npm v2.6.1 -15 error code EISDIR -16 error errno 28 -17 error EISDIR, read -18 error If you need help, you may report this error at: -18 error -19 verbose exit [ 28, true ] diff --git a/test/test121.js b/test/test121.js index 7b9b1fc6b4..edf52bb61e 100644 --- a/test/test121.js +++ b/test/test121.js @@ -3,23 +3,26 @@ if(typeof exports === 'object') { var alasql = require('..'); }; -if(false) { describe('Test 121 - Views', function() { - it('1. CREATE VIEW', function(done){ + it('0. Create database',function(done){ alasql('create database test121'); alasql('use test121'); + done(); + }); + + it('1. CREATE VIEW', function(done){ alasql('create table one (a int, b int)'); alasql('insert into one values (1,10), (2,20), (3,30)'); alasql('create view two as select a from one'); - assert(!!alasql.databases.test121.views.two); +// assert(!!alasql.databases.test121.tables.two); - var res = alasql.value('select sum(a) from two'); + var res = alasql('select value sum(a) from two'); assert(res == 6); alasql('drop view two'); - assert(!alasql.databases.test121.views.two); +// assert(!alasql.databases.test121.tables.two); done(); }); @@ -30,5 +33,3 @@ describe('Test 121 - Views', function() { }); }); - -} \ No newline at end of file diff --git a/test/test238.js b/test/test238.js index e4ff9b38b3..75b82e02e9 100644 --- a/test/test238.js +++ b/test/test238.js @@ -20,7 +20,7 @@ if(typeof exports == 'object') { }); }); it('2. CSV() and AS', function(done){ - alasql('SELECT 1 AS a, 2 AS b INTO "'+__dirname+'/test238a.csv"',[],function(){ + alasql('SELECT 1 AS a, 2 AS b INTO "'+__dirname+'/restest238a.csv"',[],function(){ alasql('SELECT VALUE test.a FROM "'+__dirname+'/test238a.csv" AS test',[],function(res){ assert(res == 1); done(); @@ -28,7 +28,7 @@ if(typeof exports == 'object') { }); }); it('3. XLSX', function(done){ - alasql('SELECT 1 AS a, 2 AS b INTO "'+__dirname+'/test238b.xlsx"',[],function(){ + alasql('SELECT 1 AS a, 2 AS b INTO "'+__dirname+'/restest238b.xlsx"',[],function(){ alasql('SELECT VALUE test.a FROM "'+__dirname+'/test238b.xlsx" AS test',[],function(res){ assert(res == 1); done(); diff --git a/test/test238b.xlsx b/test/test238b.xlsx index 57191fb26c..9a58d4f592 100644 Binary files a/test/test238b.xlsx and b/test/test238b.xlsx differ diff --git a/test/test254.js b/test/test254.js index 9988306d37..4aaf49832b 100644 --- a/test/test254.js +++ b/test/test254.js @@ -18,6 +18,7 @@ describe('Test 254 UNION of two tables with different columns', function() { INSERT INTO t2 VALUES(1,2); \ INSERT INTO t2 VALUES(1,5); \ '); + done(); }); it('2. UNION',function(done) { @@ -34,6 +35,7 @@ describe('Test 254 UNION of two tables with different columns', function() { it('99. Drop database',function(done){ alasql('DROP DATABASE test254'); + done(); }); }); diff --git a/test/test257.js b/test/test257.js index 46bdedbe85..9f2722f529 100644 --- a/test/test257.js +++ b/test/test257.js @@ -181,7 +181,8 @@ describe('Test 257 INTO XLS()', function() { {x:2, y:5, h:10, headers:true, data:true, totals:'top'}, ] }; - + assert(false); + done(); }); }); diff --git a/test/test258.js b/test/test258.js index ed48dc00d8..5ca6f7f0c5 100644 --- a/test/test258.js +++ b/test/test258.js @@ -7,58 +7,207 @@ if(typeof exports === 'object') { describe('Test 258 SqlLogic Parser Test #1', function() { - it('1. INTO XLS()', function(done) { + it('1. Sqllogic', function(done) { alasql('CREATE DATABASE test258; USE test258'); + done(); + }); + + it('2. Create table', function(done){ var res = alasql('CREATE TABLE t1( x INTEGER, y VARCHAR(8) )'); assert(res == 1); + done(); + }); + + it('3. Create index', function(done){ var res = alasql('CREATE INDEX t1i1 ON t1(x)'); assert(res == 1); // Actaully we just skip it + done(); + }); - var res = alasql('CREATE TEMP VIEW view2 AS SELECT x FROM t1 WHERE x>0'); - assert(res == 1); - -/* - -IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'view_1_tab0_153') DROP VIEW view_1_tab0_153 - - CREATE VIEW view_1_tab0_157 AS SELECT pk, col0 FROM tab0 WHERE (col0 IN (SELECT col3 FROM tab0 WHERE ((col0 IS NULL) OR col3 > 5 OR col3 <= 50 OR col1 < 83.11))) OR col0 > 75 - - DROP VIEW view_1_tab0_157 - - IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'view_1_tab2_381') DROP VIEW view_1_tab2_381 - - IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'view_2_tab4_475') DROP VIEW view_2_tab4_475 - - CREATE VIEW view_2_tab3_1002 AS SELECT pk, col0 FROM tab3 WHERE NOT (((col0 IN (SELECT col3 FROM tab3 WHERE (col0 IS NULL OR (((col3 <= 32)))) OR (col4 > 43.71 AND col4 > 26.46 AND ((((col4 >= 23.8) AND ((col3 >= 47)) OR (col0 >= 79) OR (col3 > 28) OR (((col4 >= 12.10 OR ((col3 IN (SELECT col0 FROM tab3 WHERE col0 >= 30) AND col3 <= 35 OR (col3 > 31) AND ((col0 > 77) AND col0 > 91 AND col0 <= 48) AND col0 > 6 OR (col0 <= 92 AND (((col3 IS NULL))) AND (col0 <= 65) AND col3 > 97 OR col1 > 57.36 AND ((((col1 <= 78.71) OR (((((col1 = 20.70))))) AND ((col3 IN (84))))) AND (col0 < 96)) OR (col3 BETWEEN 7 AND 49) OR (col3 > 64) OR (col1 < 42.5) AND col4 >= 76.60 AND col0 = 76 AND (col0 > 70) OR col0 IS NULL OR (col1 >= 52.53) AND (((((col3 IN (51,64) OR col0 > 63) AND col0 = 84 AND col3 >= 94)))) OR col1 > 51.23 OR col1 BETWEEN 39.92 AND 61.20 AND (col0 >= 0 AND ((col1 IS NULL) OR (col0 < 37 AND col4 <= 41.92 OR (col1 >= 65.14) OR col0 IN (42,56)) OR col1 < 55.30 OR (col0 > 69 AND col0 < 84) AND (col3 < 29) OR col4 < 19.55 AND (col4 >= 47.58) AND ((((col0 >= 73)) OR (col0 BETWEEN 38 AND 47) OR ((col3 <= 98)) AND col3 >= 99 AND col0 > 94 AND (col3 = 59) AND col4 > 49.41 OR col0 < 92 AND col0 BETWEEN 33 AND 76 AND col0 <= 68 OR col4 BETWEEN 72.87 AND 2.49 AND col3 IN (84,91,53,11))))) OR ((col3 BETWEEN 22 AND 10)) AND (col1 < 5.4) OR (col4 >= 44.55) AND ((col3 < 36)))) AND (((col3 IS NULL) OR (col4 IS NULL) OR col1 > 42.97))) OR ((col1 >= 20.41) AND col3 > 42) OR (col0 = 31) AND col3 < 46 AND col0 < 78 OR ((col0 < 4)) AND ((col3 > 90 OR (((col3 <= 29))))) OR col1 > 37.60 AND (col3 < 79) OR col4 < 41.8 OR col0 > 43 OR col4 = 51.29 AND (col3 IN (51,92,26,64))))) OR col4 > 68.98 AND ((col4 < 87.44 AND col1 <= 83.0 AND (col3 > 58) OR col1 > 65.25 AND col0 > 0)) AND (col4 <= 61.33 OR col3 <= 65 AND (col1 < 72.56 AND ((col3 IN (99,54))) AND (((col1 < 60.68 OR col3 > 64)) AND ((col3 > 24 AND (col1 <= 49.56 OR col3 > 96 AND col3 <= 16 AND col4 < 98.0 AND (col0 >= 11 OR col1 = 46.36) AND col0 >= 41))) AND col3 >= 55 AND (col0 > 51 OR (col0 > 16)) OR ((col3 <= 77))) AND ((col0 <= 52) OR ((((((col1 < 60.0) OR (((col3 <= 18) AND col0 = 66 OR ((((((((col3 IS NULL)) OR col4 < 48.79)) OR col0 > 63 OR (col3 >= 57 AND col3 <= 89 AND ((col3 > 47))) AND (col3 > 47))))) OR col0 = 12 OR ((((col3 > 15)) AND col0 < 78 AND col4 > 75.14 AND (col0 < 1) AND col3 IS NULL)) AND col1 IS NULL OR col0 = 15)) AND (col3 > 90)))))))) AND (col4 > 71.15 OR ((col3 IS NULL OR col1 IS NULL OR (((col3 >= 30) AND col0 >= 2 AND col3 >= 45 AND (col0 <= 95))) AND col4 <= 71.78 OR (col4 = 95.76 AND ((col3 > 93)) OR col0 < 41 AND col3 IS NULL AND (col0 >= 61)) AND col0 <= 74)) AND ((col3 >= 94 OR col3 IN (22,94,37)))) AND col0 > 49 AND (col3 >= 95 AND col3 = 28) AND (col0 < 21) AND col1 > 29.84 AND (col0 <= 56) OR (col0 > 2) OR col4 <= 51.84 OR (col0 > 62) AND col3 > 18 AND ((col0 > 8) OR col3 > 55) AND col3 > 18 AND col4 >= 97.99 AND ((col1 BETWEEN 16.69 AND 34.54)) OR col3 IS NULL AND ((col1 < 78.90)) OR col0 < 83 OR ((col3 > 39 OR ((col3 >= 55) AND col0 <= 32)) OR col4 BETWEEN 41.64 AND 92.0 OR col3 > 44) OR col1 = 87.36 AND col0 = 53 AND col0 >= 35) OR col3 < 61 OR col3 >= 19 OR col3 >= 0) AND col0 > 54 AND col4 IN (11.6,7.61,98.26,24.65,81.81,48.50)) AND col1 <= 57.49) OR (col3 > 27))))) AND col0 = 54 AND col0 < 39) - -SELECT - 92 AS col1 FROM ( tab1 AS cor0 CROSS JOIN tab2 AS cor1 ) - -SELECT DISTINCT * FROM tab2 cor0 JOIN tab2 cor1 ON + ( 90 ) IS NOT NULL, tab0 AS cor2 - -SELECT ALL CASE - 18 WHEN + 52 THEN - + 49 * 53 END * - 5 * + AVG ( 12 ) + + + 95 + 34 * - 53 - -SELECT - 3 * 19 * - CASE + 59 WHEN + 5 THEN NULL ELSE - - CASE 41 WHEN 84 * NULLIF ( AVG ( + 76 ), - 4 ) THEN 50 WHEN - 98 * + 32 + - 4 THEN NULL ELSE NULL END END AS col2 + it('4. Create temporary view', function(done){ + var res = alasql('CREATE TEMPORARY VIEW view2 AS SELECT x FROM t1 WHERE x>0'); + assert(res == 1); + done(); + }); -SELECT ALL * FROM tab1 cor0 CROSS JOIN tab1, tab2 AS cor1 + it('5. Create temporary table', function(done){ + var res = alasql('CREATE TEMPORARY TABLE one (x NUMBER, y STRING)'); + assert(res == 1); + alasql('DROP TABLE one'); + done(); + }); -SELECT * FROM tab0, tab2 AS cor0 CROSS JOIN tab0 AS cor1 + it('6. IF EXISTS', function(done){ + // Temporary create + // Should we create it? + alasql('CREATE DATABASE INFORMATION_SCHEMA'); + alasql('CREATE TABLE INFORMATION_SCHEMA.VIEWS'); + // Test operator + alasql("IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS \ + WHERE TABLE_NAME = 'view_1_tab0_153') DROP VIEW view_1_tab0_153"); -SELECT CASE a+1 WHEN b THEN 111 WHEN c THEN 222 WHEN d THEN 333 WHEN e THEN 444 ELSE 555 END FROM t1 ORDER BY 1 + alasql("IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS \ + WHERE TABLE_NAME = 'view_1_tab2_381') DROP VIEW view_1_tab2_381"); -SELECT (SELECT count(*) FROM t1 AS x WHERE x.bb-2 AND ad ORDER BY 1 + alasql("IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS \ + WHERE TABLE_NAME = 'view_2_tab4_475') DROP VIEW view_2_tab4_475"); - CREATE INDEX t8all ON t8(e8, d8 ASC, c8, b8 ASC, a8) + alasql('DROP TABLE INFORMATION_SCHEMA.VIEWS'); + alasql('DROP DATABASE INFORMATION_SCHEMA'); + done(); + }); + it('7. Create and drop temporary view', function(done){ + // Create tables + alasql('CREATE TABLE tab0 (pk, col0, col1, col2, col3)'); -*/ + var res = alasql('CREATE VIEW view_1_tab0_157 AS SELECT pk, col0 FROM tab0 \ + WHERE (col0 IN (SELECT col3 FROM tab0 \ + WHERE ((col0 IS NULL) OR col3 > 5 OR col3 <= 50 OR col1 < 83.11))) \ + OR col0 > 75'); + assert(res == 1); + var res = alasql('DROP VIEW view_1_tab0_157'); + assert(res == 1); + var res = alasql('DROP TABLE tab0'); + assert(res == 1); done(); }); + it('8. Huge view', function(done){ + // Create a table + alasql('CREATE TABLE tab3 (pk, col0, col1, col2, col3, col4)'); + + // Huge view + var res = alasql('CREATE VIEW view_2_tab3_1002 AS \ + SELECT pk, col0 FROM tab3 WHERE NOT (((col0 IN \ + (SELECT col3 FROM tab3 WHERE (col0 IS NULL \ + OR (((col3 <= 32)))) OR (col4 > 43.71 AND col4 > 26.46 \ + AND ((((col4 >= 23.8) AND ((col3 >= 47)) OR (col0 >= 79) \ + OR (col3 > 28) OR (((col4 >= 12.10 OR ((col3 IN \ + (SELECT col0 FROM tab3 WHERE col0 >= 30) AND col3 <= 35 \ + OR (col3 > 31) AND ((col0 > 77) AND col0 > 91 AND col0 <= 48) \ + AND col0 > 6 OR (col0 <= 92 AND (((col3 IS NULL))) \ + AND (col0 <= 65) AND col3 > 97 OR col1 > 57.36 \ + AND ((((col1 <= 78.71) OR (((((col1 = 20.70))))) \ + AND ((col3 IN (84))))) AND (col0 < 96)) OR (col3 BETWEEN 7 AND 49) \ + OR (col3 > 64) OR (col1 < 42.5) AND col4 >= 76.60 \ + AND col0 = 76 AND (col0 > 70) OR col0 IS NULL \ + OR (col1 >= 52.53) AND (((((col3 IN (51,64) OR col0 > 63) \ + AND col0 = 84 AND col3 >= 94)))) OR col1 > 51.23 \ + OR col1 BETWEEN 39.92 AND 61.20 AND (col0 >= 0 \ + AND ((col1 IS NULL) OR (col0 < 37 AND col4 <= 41.92 \ + OR (col1 >= 65.14) OR col0 IN (42,56)) OR col1 < 55.30 \ + OR (col0 > 69 AND col0 < 84) AND (col3 < 29) OR col4 < 19.55 \ + AND (col4 >= 47.58) AND ((((col0 >= 73)) OR (col0 BETWEEN 38 AND 47) \ + OR ((col3 <= 98)) AND col3 >= 99 AND col0 > 94 AND (col3 = 59) \ + AND col4 > 49.41 OR col0 < 92 AND col0 BETWEEN 33 AND 76 \ + AND col0 <= 68 OR col4 BETWEEN 72.87 AND 2.49 AND col3 \ + IN (84,91,53,11))))) OR ((col3 BETWEEN 22 AND 10)) \ + AND (col1 < 5.4) OR (col4 >= 44.55) AND ((col3 < 36)))) \ + AND (((col3 IS NULL) OR (col4 IS NULL) OR col1 > 42.97))) \ + OR ((col1 >= 20.41) AND col3 > 42) OR (col0 = 31) AND col3 < 46 \ + AND col0 < 78 OR ((col0 < 4)) AND ((col3 > 90 OR (((col3 <= 29))))) \ + OR col1 > 37.60 AND (col3 < 79) OR col4 < 41.8 OR col0 > 43 \ + OR col4 = 51.29 AND (col3 IN (51,92,26,64))))) OR col4 > 68.98 \ + AND ((col4 < 87.44 AND col1 <= 83.0 AND (col3 > 58) \ + OR col1 > 65.25 AND col0 > 0)) AND (col4 <= 61.33 OR col3 <= 65 \ + AND (col1 < 72.56 AND ((col3 IN (99,54))) AND (((col1 < 60.68 \ + OR col3 > 64)) AND ((col3 > 24 AND (col1 <= 49.56 OR col3 > 96 \ + AND col3 <= 16 AND col4 < 98.0 AND (col0 >= 11 OR col1 = 46.36) \ + AND col0 >= 41))) AND col3 >= 55 AND (col0 > 51 OR (col0 > 16)) \ + OR ((col3 <= 77))) AND ((col0 <= 52) OR ((((((col1 < 60.0) \ + OR (((col3 <= 18) AND col0 = 66 OR ((((((((col3 IS NULL)) \ + OR col4 < 48.79)) OR col0 > 63 OR (col3 >= 57 AND col3 <= 89 \ + AND ((col3 > 47))) AND (col3 > 47))))) OR col0 = 12 OR ((((col3 > 15)) \ + AND col0 < 78 AND col4 > 75.14 AND (col0 < 1) AND col3 IS NULL)) \ + AND col1 IS NULL OR col0 = 15)) AND (col3 > 90)))))))) \ + AND (col4 > 71.15 OR ((col3 IS NULL OR col1 IS NULL \ + OR (((col3 >= 30) AND col0 >= 2 AND col3 >= 45 AND (col0 <= 95))) \ + AND col4 <= 71.78 OR (col4 = 95.76 AND ((col3 > 93)) OR col0 < 41 \ + AND col3 IS NULL AND (col0 >= 61)) AND col0 <= 74)) AND ((col3 >= 94 \ + OR col3 IN (22,94,37)))) AND col0 > 49 AND (col3 >= 95 AND col3 = 28) \ + AND (col0 < 21) AND col1 > 29.84 AND (col0 <= 56) OR (col0 > 2) \ + OR col4 <= 51.84 OR (col0 > 62) AND col3 > 18 AND ((col0 > 8) \ + OR col3 > 55) AND col3 > 18 AND col4 >= 97.99 \ + AND ((col1 BETWEEN 16.69 AND 34.54)) OR col3 IS NULL \ + AND ((col1 < 78.90)) OR col0 < 83 OR ((col3 > 39 OR ((col3 >= 55) \ + AND col0 <= 32)) OR col4 BETWEEN 41.64 AND 92.0 OR col3 > 44) \ + OR col1 = 87.36 AND col0 = 53 AND col0 >= 35) OR col3 < 61 \ + OR col3 >= 19 OR col3 >= 0) AND col0 > 54 \ + AND col4 IN (11.6,7.61,98.26,24.65,81.81,48.50)) AND col1 <= 57.49) \ + OR (col3 > 27))))) AND col0 = 54 AND col0 < 39)'); + assert(res == 1); + + alasql('DROP TABLE tab3'); + done(); + }); + + it('9. FROM CROSS JOIN ',function(done){ + alasql('CREATE TABLE tab1; CREATE TABLE tab2'); + alasql('SELECT - 92 AS col1 FROM ( tab1 AS cor0 CROSS JOIN tab2 AS cor1 ) '); + alasql('DROP TABLE tab1; DROP TABLE tab2; ') + done(); + }); + + + it('11a. SELECT AVG',function(done){ + var res = alasql('SELECT VALUE AVG(10)'); + assert(res == 10); + done(); + }); + + it('11. SELECT ALL',function(done){ + alasql('SELECT ALL CASE - 18 WHEN + 52 THEN - + 49 * 53 END \ + * - 5 * + AVG ( 12 ) + + + 95 + 34 * - 53'); + done(); + }); + + it('12. SELECT ',function(done){ + alasql('SELECT - 3 * 19 * - CASE + 59 WHEN + 5 THEN NULL \ + ELSE - - CASE 41 WHEN 84 * NULLIF ( AVG ( + 76 ), - 4 ) \ + THEN 50 WHEN - 98 * + 32 + - 4 THEN NULL ELSE NULL END END AS col2'); + done(); + }); + + it('15. SELECT ALL',function(done){ +// alasql('CREATE TABLE t1'); + alasql('SELECT CASE a+1 WHEN b THEN 111 WHEN c THEN 222 WHEN d \ + THEN 333 WHEN e THEN 444 ELSE 555 END FROM t1 ORDER BY 1'); +// alasql('DROP TABLE t1'); + done(); + }); + + it('16. SELECT ALL',function(done){ +// alasql('CREATE TABLE t1'); + alasql('SELECT (SELECT count(*) FROM t1 AS x WHERE x.bb-2 AND ad ORDER BY 1'); +// alasql('DROP TABLE t1'); + done(); + }); + + it('17. SELECT ALL',function(done){ + alasql('CREATE TABLE t8(e8,d8,c8,b8,a8)'); + var res = alasql('CREATE INDEX t8all ON t8(e8, d8 ASC, c8, b8 ASC, a8)'); + assert(res==1); + alasql('DROP TABLE t8'); + done(); + }); + + + it('14. SELECT ALL',function(done){ + alasql('CREATE TABLE tab0;CREATE TABLE tab2'); + alasql('SELECT * FROM tab0, tab2 AS cor0 CROSS JOIN tab0 AS cor1'); + alasql('DROP TABLE tab0;DROP TABLE tab2'); + done(); + }); + + it('99. Drop Database', function(done) { alasql('DROP DATABASE test258'); + done(); }); }); diff --git a/test/test259.js b/test/test259.js new file mode 100644 index 0000000000..9b5c37c66c --- /dev/null +++ b/test/test259.js @@ -0,0 +1,45 @@ +if(typeof exports === 'object') { + var assert = require("assert"); + var alasql = require('..'); +} else { + __dirname = '.'; +}; + +describe('Test 259 SqlLogic Parser Test #2', function() { + + it('1. Sqllogic', function(done) { + alasql('CREATE DATABASE test259; USE test259'); + done(); + }); + + + + it('2. FROM JOIN / CROSS JOIN syntax ',function(done){ + alasql('CREATE TABLE tab0; CREATE TABLE tab2'); + + alasql('SELECT DISTINCT * FROM tab2 cor0 JOIN tab2 cor1 ON + ( 90 ) \ + IS NOT NULL, tab0 AS cor2 '); + +// alasql('SELECT DISTINCT * FROM tab2 cor0 JOIN tab2 cor1 ON + ( 90 ) \ +// IS NOT NULL CROSS JOIN tab0 AS cor2 '); + + alasql('DROP TABLE tab0; DROP TABLE tab2; ') + done(); + }); + + it('3. SELECT ALL',function(done){ + alasql('CREATE TABLE tab1;CREATE TABLE tab2'); + alasql('SELECT ALL * FROM tab1 cor0 CROSS JOIN tab1, tab2 AS cor1'); + alasql('DROP TABLE tab1;DROP TABLE tab2'); + done(); + }); + + + + it('99. Drop Database', function(done) { + alasql('DROP DATABASE test259'); + done(); + }); + +}); + diff --git a/test/test260.js b/test/test260.js new file mode 100644 index 0000000000..ef0d068fc1 --- /dev/null +++ b/test/test260.js @@ -0,0 +1,61 @@ +if(typeof exports === 'object') { + var assert = require("assert"); + var alasql = require('..'); +} else { + __dirname = '.'; +}; + +describe('Test 260 SqlLogic Parser Test #3', function() { + + it('1. Sqllogic', function(done) { + alasql('CREATE DATABASE test260; USE test260'); + done(); + }); + + it('3. SELECT ALL',function(done){ + done(); + }); +/* + + IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'view_1_tab0_153') DROP VIEW view_1_tab0_153 + +Cannot read property 'tables' of undefined + + + + + CREATE VIEW view_1_tab0_157 AS SELECT pk, col0 FROM tab0 WHERE (col0 IN (SELECT col3 FROM tab0 WHERE ((col0 IS NULL) OR col3 > 5 OR col3 <= 50 OR col1 < 83.11))) OR col0 > 75 + +Cannot read property 'columns' of undefined + + + + + DROP VIEW view_1_tab0_157 + +Can not drop table 'view_1_tab0_157', because it does not exist in the database. + + + +SELECT ALL * FROM tab1 cor0 CROSS JOIN tab1, tab2 AS cor1 + +SELECT DISTINCT * FROM tab2 cor0 JOIN tab2 cor1 ON + ( 90 ) IS NOT NULL, tab0 AS cor2 + + +SELECT CASE WHEN c>(SELECT avg(c) FROM t1) THEN a*2 ELSE b*10 END FROM t1 ORDER BY 1 + + +SELECT CASE a+1 WHEN b THEN 111 WHEN c THEN 222 WHEN d THEN 333 WHEN e THEN 444 ELSE 555 END FROM t1 ORDER BY 1 + +SELECT (SELECT count(*) FROM t1 AS x WHERE x.bb-2 AND ad ORDER BY 1 + +*/ + + + it('99. Drop Database', function(done) { + alasql('DROP DATABASE test260'); + done(); + }); + +}); + diff --git a/test/test261.js b/test/test261.js new file mode 100644 index 0000000000..422c735513 --- /dev/null +++ b/test/test261.js @@ -0,0 +1,79 @@ +if(typeof exports === 'object') { + var assert = require("assert"); + var alasql = require('..'); +} else { + __dirname = '.'; +}; + +describe('Test 261 SqlLogic Parser Test #4', function() { + + it('1. Sqllogic', function(done) { + alasql('CREATE DATABASE test261; USE test261'); + done(); + }); + + it('2. CREATE TABLE',function(done){ + var res = alasql('CREATE TABLE t1(a INTEGER, b INTEGER, c INTEGER, d INTEGER, e INTEGER)'); + assert(res == 1); + done(); + }); + + it('3. INSERT',function(done){ + + var res = alasql('INSERT INTO t1(e,d,c,b,a) VALUES(246,248,247,249,245)'); + assert(res == 1); + done(); + }); + + it('4. SELECT CASE',function(done){ + + var res = alasql('SELECT CASE WHEN c>(SELECT avg(c) FROM t1) \ + THEN a*2 ELSE b*10 END FROM t1'); + done(); + }); + + it('5. SELECT',function(done){ + + var res = alasql(' SELECT a+b*2+c*3+d*4+e*5, (a+b+c+d+e)/5 FROM t1'); +// console.log(res); + done(); + }); + + it('6. SELECT',function(done){ + + var res = alasql(function(){/* + SELECT a+b*2+c*3+d*4+e*5, + CASE WHEN ac OR ee + AND EXISTS(SELECT 1 FROM t1 AS x WHERE x.b(SELECT avg(c) FROM t1) THEN a*2 ELSE b*10 END + FROM t1 + WHERE e+d BETWEEN a+b-10 AND c+130 + AND c>d + */}); +// console.log(res); + + done(); + }); + + it('99. Drop Database', function(done) { + alasql('DROP DATABASE test261'); + done(); + }); + +}); +