From 9fd4ca8a724d71c89a8af296550e556b2565e698 Mon Sep 17 00:00:00 2001 From: renato Date: Wed, 1 Jun 2016 15:51:35 +0200 Subject: [PATCH] new data table --- alasql-utility/alasql-utility.js | 3 +++ alasql-utility/alasql.min.js | 10 ++++++++++ bower_components/jsdatachecker/.bower.json | 34 ---------------------------------- bower_components/jsdatachecker/LICENSE | 674 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- bower_components/jsdatachecker/README.md | 5 ----- bower_components/jsdatachecker/bower.json | 25 ------------------------- bower_components/jsdatachecker/build.cmd | 2 -- bower_components/jsdatachecker/jsdatachecker.min.js | 1 - bower_components/jsdatachecker/src/ArrayUtils.js | 85 ------------------------------------------------------------------------------------- bower_components/jsdatachecker/src/DataTypeConverter.js | 376 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- bower_components/jsdatachecker/src/DataTypesUtils.js | 125 ----------------------------------------------------------------------------------------------------------------------------- bower_components/jsdatachecker/src/ODPlatforms/ODSApi.js | 98 -------------------------------------------------------------------------------------------------- bower_components/jsdatachecker/src/ODPlatforms/ckan.js | 79 ------------------------------------------------------------------------------- bower_components/jsdatachecker/src/oldsrc/DataTypeAnalyser.js | 211 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- bower_components/jsdatachecker/src/oldsrc/chartviz.js | 178 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- bower_components/jsdatachecker/src/oldsrc/index.html | 66 ------------------------------------------------------------------ bower_components/jsdatachecker/tooldemo/index.html | 144 ------------------------------------------------------------------------------------------------------------------------------------------------ controllets/data-table-controllet/data-table-controllet.html | 307 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ controllets/providers-utility-controllet/ckan.js | 17 +++++++++++++++++ controllets/providers-utility-controllet/generic.js | 3 +++ controllets/providers-utility-controllet/openDataSoft.js | 8 ++++++++ controllets/providers-utility-controllet/providers-utility-controllet.html | 10 ++++++++++ controllets/select-data-controllet/select-data-controllet_old.html | 206 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ controllets/select-fields-controllet/demo/index.html | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 24 files changed, 643 insertions(+), 2103 deletions(-) create mode 100644 alasql-utility/alasql-utility.js create mode 100755 alasql-utility/alasql.min.js delete mode 100644 bower_components/jsdatachecker/.bower.json delete mode 100644 bower_components/jsdatachecker/LICENSE delete mode 100644 bower_components/jsdatachecker/README.md delete mode 100644 bower_components/jsdatachecker/bower.json delete mode 100644 bower_components/jsdatachecker/build.cmd delete mode 100644 bower_components/jsdatachecker/jsdatachecker.min.js delete mode 100644 bower_components/jsdatachecker/src/ArrayUtils.js delete mode 100644 bower_components/jsdatachecker/src/DataTypeConverter.js delete mode 100644 bower_components/jsdatachecker/src/DataTypesUtils.js delete mode 100644 bower_components/jsdatachecker/src/ODPlatforms/ODSApi.js delete mode 100644 bower_components/jsdatachecker/src/ODPlatforms/ckan.js delete mode 100644 bower_components/jsdatachecker/src/oldsrc/DataTypeAnalyser.js delete mode 100644 bower_components/jsdatachecker/src/oldsrc/chartviz.js delete mode 100644 bower_components/jsdatachecker/src/oldsrc/index.html delete mode 100644 bower_components/jsdatachecker/tooldemo/index.html create mode 100644 controllets/data-table-controllet/data-table-controllet.html create mode 100644 controllets/providers-utility-controllet/ckan.js create mode 100644 controllets/providers-utility-controllet/generic.js create mode 100644 controllets/providers-utility-controllet/openDataSoft.js create mode 100644 controllets/providers-utility-controllet/providers-utility-controllet.html create mode 100755 controllets/select-data-controllet/select-data-controllet_old.html create mode 100755 controllets/select-fields-controllet/demo/index.html diff --git a/alasql-utility/alasql-utility.js b/alasql-utility/alasql-utility.js new file mode 100644 index 0000000..aa71335 --- /dev/null +++ b/alasql-utility/alasql-utility.js @@ -0,0 +1,3 @@ +/** + * Created by renato on 31/05/16. + */ diff --git a/alasql-utility/alasql.min.js b/alasql-utility/alasql.min.js new file mode 100755 index 0000000..a1cc1d1 --- /dev/null +++ b/alasql-utility/alasql.min.js @@ -0,0 +1,10 @@ +(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 alasql(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.1.9";alasql.debug=undefined;getAlaSQLPath();function getAlaSQLPath(){alasql.path="";if(typeof importScripts==="function"){alasql.path=""}else if(typeof exports!="undefined"){alasql.path=__dirname}else if(typeof Meteor=="object"&&Meteor.isClient){alasql.path="/packages/dist/"}else if(typeof Meteor=="object"&&Meteor.isServer){alasql.path="assets/packages/dist/"}else if(typeof document!="undefined"){var sc=document.getElementsByTagName("script");for(var i=0;i1&&($$[$0-4].toUpperCase()=="MAX"||$$[$0-4].toUpperCase()=="MIN")){this.$=new yy.FuncValue({funcid:$$[$0-4],args:$$[$0-2]})}else{this.$=new yy.AggrValue({aggregatorid:$$[$0-4].toUpperCase(),expression:$$[$0-2].pop(),over:$$[$0]})}break;case 299:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],distinct:true,over:$$[$0]});break;case 300:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 302:case 303:this.$=new yy.Over;yy.extend(this.$,$$[$0-1]);break;case 304:this.$=new yy.Over;yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 305:this.$={partition:$$[$0]};break;case 306:this.$={order:$$[$0]};break;case 307:this.$="SUM";break;case 308:this.$="COUNT";break;case 309:this.$="MIN";break;case 310:case 486:this.$="MAX";break;case 311:this.$="AVG";break;case 312:this.$="FIRST";break;case 313:this.$="LAST";break;case 314:this.$="AGGR";break;case 315:this.$="ARRAY";break;case 316:var funcid=$$[$0-4];var exprlist=$$[$0-1];if(exprlist.length>1&&(funcid.toUpperCase()=="MIN"||funcid.toUpperCase()=="MAX")){this.$=new yy.FuncValue({funcid:funcid,args:exprlist})}else if(alasql.aggr[$$[$0-4]]){this.$=new yy.AggrValue({aggregatorid:"REDUCE",funcid:funcid,expression:exprlist.pop(),distinct:$$[$0-2]=="DISTINCT"})}else{this.$=new yy.FuncValue({funcid:funcid,args:exprlist})};break;case 317:this.$=new yy.FuncValue({funcid:$$[$0-2]});break;case 319:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 320:this.$=new yy.NumValue({value:+$$[$0]});break;case 321:this.$=new yy.LogicValue({value:true});break;case 322:this.$=new yy.LogicValue({value:false});break;case 323:this.$=new yy.StringValue({value:$$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 324:this.$=new yy.StringValue({value:$$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 325:this.$=new yy.NullValue({value:undefined});break;case 326:this.$=new yy.VarValue({variable:$$[$0]});break;case 327:if(!yy.exists)yy.exists=[];this.$=new yy.ExistsValue({value:$$[$0-1],existsidx:yy.exists.length});yy.exists.push($$[$0-1]);break;case 328:case 329:this.$=new yy.ParamValue({param:$$[$0]});break;case 330:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++});break;case 331:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++,array:true});break;case 332:this.$=new yy.CaseValue({expression:$$[$0-3],whens:$$[$0-2],elses:$$[$0-1]});break;case 333:this.$=new yy.CaseValue({whens:$$[$0-2],elses:$$[$0-1]});break;case 334:case 635:case 636:this.$=$$[$0-1];this.$.push($$[$0]);break;case 336:this.$={when:$$[$0-2],then:$$[$0]};break;case 339:this.$=new yy.Op({left:$$[$0-2],op:"LIKE",right:$$[$0]});break;case 340:this.$=new yy.Op({left:$$[$0-2],op:"NOT LIKE",right:$$[$0]});break;case 341:this.$=new yy.Op({left:$$[$0-2],op:"+",right:$$[$0]});break;case 342:this.$=new yy.Op({left:$$[$0-2],op:"-",right:$$[$0]});break;case 343:this.$=new yy.Op({left:$$[$0-2],op:"*",right:$$[$0]});break;case 344:this.$=new yy.Op({left:$$[$0-2],op:"/",right:$$[$0]});break;case 345:this.$=new yy.Op({left:$$[$0-2],op:"%",right:$$[$0]});break;case 346:this.$=new yy.Op({left:$$[$0-2],op:"^",right:$$[$0]});break;case 347:case 348:case 350:this.$=new yy.Op({left:$$[$0-2],op:"->",right:$$[$0]});break;case 349:this.$=new yy.Op({left:$$[$0-4],op:"->",right:$$[$0-1]});break;case 351:case 352:case 354:this.$=new yy.Op({left:$$[$0-2],op:"!",right:$$[$0]});break;case 353:this.$=new yy.Op({left:$$[$0-4],op:"!",right:$$[$0-1]});break;case 355:this.$=new yy.Op({left:$$[$0-2],op:">",right:$$[$0]});break;case 356:this.$=new yy.Op({left:$$[$0-2],op:">=",right:$$[$0]});break;case 357:this.$=new yy.Op({left:$$[$0-2],op:"<",right:$$[$0]});break;case 358:this.$=new yy.Op({left:$$[$0-2],op:"<=",right:$$[$0]});break;case 359:this.$=new yy.Op({left:$$[$0-2],op:"=",right:$$[$0]});break;case 360:this.$=new yy.Op({left:$$[$0-2],op:"==",right:$$[$0]});break;case 361:this.$=new yy.Op({left:$$[$0-2],op:"===",right:$$[$0]});break;case 362:this.$=new yy.Op({left:$$[$0-2],op:"!=",right:$$[$0]});break;case 363:this.$=new yy.Op({left:$$[$0-2],op:"!==",right:$$[$0]});break;case 364:this.$=new yy.Op({left:$$[$0-2],op:"!===",right:$$[$0]});break;case 365: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 366:this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1]});break;case 367:if($$[$0-2].op=="BETWEEN1"){if($$[$0-2].left.op=="AND"){this.$=new yy.Op({left:$$[$0-2].left.left,op:"AND",right:new yy.Op({left:$$[$0-2].left.right,op:"BETWEEN",right1:$$[$0-2].right,right2:$$[$0]})})}else{this.$=new yy.Op({left:$$[$0-2].left,op:"BETWEEN",right1:$$[$0-2].right,right2:$$[$0]})}}else if($$[$0-2].op=="NOT BETWEEN1"){if($$[$0-2].left.op=="AND"){this.$=new yy.Op({left:$$[$0-2].left.left,op:"AND",right:new yy.Op({left:$$[$0-2].left.right,op:"NOT BETWEEN",right1:$$[$0-2].right,right2:$$[$0]})})}else{this.$=new yy.Op({left:$$[$0-2].left,op:"NOT BETWEEN",right1:$$[$0-2].right,right2:$$[$0]})}}else{this.$=new yy.Op({left:$$[$0-2],op:"AND",right:$$[$0]})}break;case 368:this.$=new yy.Op({left:$$[$0-2],op:"OR",right:$$[$0]});break;case 369:this.$=new yy.UniOp({op:"NOT",right:$$[$0]});break;case 370:this.$=new yy.UniOp({op:"-",right:$$[$0]});break;case 371:this.$=new yy.UniOp({op:"+",right:$$[$0]});break;case 372:this.$=new yy.UniOp({op:"#",right:$$[$0]});break;case 373:this.$=new yy.UniOp({right:$$[$0-1]});break;case 374: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 375: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 376:this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1]});break;case 377:this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1]});break;case 378:this.$=new yy.Op({left:$$[$0-3],op:"IN",right:[]});break;case 379:this.$=new yy.Op({left:$$[$0-4],op:"NOT IN",right:[]});break;case 380:case 382:this.$=new yy.Op({left:$$[$0-2],op:"IN",right:$$[$0]});break;case 381:case 383:this.$=new yy.Op({left:$$[$0-3],op:"NOT IN",right:$$[$0]});break;case 384:this.$=new yy.Op({left:$$[$0-2],op:"BETWEEN1",right:$$[$0]});break;case 385:this.$=new yy.Op({left:$$[$0-2],op:"NOT BETWEEN1",right:$$[$0]});break;case 386:this.$=new yy.Op({op:"IS",left:$$[$0-2],right:$$[$0]});break;case 387:this.$=new yy.Convert({expression:$$[$0-2]});yy.extend(this.$,$$[$0]);break;case 388:case 389:this.$=$$[$0];break;case 390:this.$=$$[$0-1];break;case 397:this.$="ALL";break;case 398:this.$="SOME";break;case 399:this.$="ANY";break;case 400:this.$=new yy.Update({table:$$[$0-4],columns:$$[$0-2],where:$$[$0]});break;case 401:this.$=new yy.Update({table:$$[$0-2],columns:$$[$0]});break;case 404:this.$=new yy.SetColumn({column:$$[$0-2],expression:$$[$0]});break;case 405:this.$=new yy.SetColumn({variable:$$[$0-2],expression:$$[$0],method:$$[$0-3]});break;case 406:this.$=new yy.Delete({table:$$[$0-2],where:$$[$0]});break;case 407:this.$=new yy.Delete({table:$$[$0]});break;case 408:this.$=new yy.Insert({into:$$[$0-2],values:$$[$0]});break;case 409:this.$=new yy.Insert({into:$$[$0-2],"default":true});break;case 410:this.$=new yy.Insert({into:$$[$0-5],columns:$$[$0-3],values:$$[$0]});break;case 411:this.$=new yy.Insert({into:$$[$0-1],select:$$[$0]});break;case 412:this.$=new yy.Insert({into:$$[$0-4],columns:$$[$0-2],select:$$[$0]});break;case 415:this.$=[$$[$0-1]];break;case 418:this.$=$$[$0-4];$$[$0-4].push($$[$0-1]);break;case 419:case 420:case 422:case 430:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 431:this.$=new yy.CreateTable({table:$$[$0-4]});yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0]);break;case 432:this.$=new yy.CreateTable({table:$$[$0]});yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 434:this.$={"class":true};break;case 443:this.$={temporary:true};break;case 445:this.$={ifnotexists:true};break;case 446:this.$={columns:$$[$0-2],constraints:$$[$0]};break;case 447:this.$={columns:$$[$0]};break;case 448:this.$={as:$$[$0]};break;case 449:case 473:this.$=[$$[$0]];break;case 451:case 452:case 453:case 454:case 455:$$[$0].constraintid=$$[$0-1];this.$=$$[$0];break;case 458:this.$={type:"CHECK",expression:$$[$0-1]};break;case 459:this.$={type:"PRIMARY KEY",columns:$$[$0-1],clustered:($$[$0-3]+"").toUpperCase()};break;case 460:this.$={type:"FOREIGN KEY",columns:$$[$0-5],fktable:$$[$0-2],fkcolumns:$$[$0-1]};break;case 461:case 491:case 522:case 558:case 576:case 579:case 598:this.$=$$[$0-1];break;case 466:this.$={type:"UNIQUE",columns:$$[$0-1],clustered:($$[$0-3]+"").toUpperCase()};break;case 475:this.$=new yy.ColumnDef({columnid:$$[$0-2]});yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 476:this.$=new yy.ColumnDef({columnid:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 477:this.$=new yy.ColumnDef({columnid:$$[$0],dbtypeid:""});break;case 478:this.$={dbtypeid:$$[$0-5],dbsize:$$[$0-3],dbprecision:+$$[$0-1]};break;case 479:this.$={dbtypeid:$$[$0-6]+($$[$0-5]?" "+$$[$0-5]:""),dbsize:$$[$0-3],dbprecision:+$$[$0-1]};break;case 480:this.$={dbtypeid:$$[$0-3],dbsize:$$[$0-1]};break;case 481:this.$={dbtypeid:$$[$0-4]+($$[$0-3]?" "+$$[$0-3]:""),dbsize:$$[$0-1]};break;case 482:this.$={dbtypeid:$$[$0]};break;case 483:this.$={dbtypeid:$$[$0-1]+($$[$0]?" "+$$[$0]:"")};break;case 484:this.$={dbtypeid:"ENUM",enumvalues:$$[$0-1]};break;case 485:case 678:this.$=+$$[$0];break;case 487:this.$=undefined;break;case 489:yy.extend($$[$0-1],$$[$0]);this.$=$$[$0-1];break;case 492:this.$={primarykey:true};break;case 493:case 494:this.$={foreignkey:{table:$$[$0-1],columnid:$$[$0]}};break;case 495:this.$={identity:{value:$$[$0-3],step:$$[$0-1]}};break;case 496:this.$={identity:{value:1,step:1}};break;case 497:this.$={"default":$$[$0]};break;case 498:this.$={"default":$$[$0-1]};break;case 499:this.$={"null":true};break;case 500:this.$={notnull:true};break;case 501:this.$={check:$$[$0]};break;case 502:this.$={unique:true};break;case 503:this.$=new yy.DropTable({table:$$[$0],type:$$[$0-2]});yy.extend(this.$,$$[$0-1]);break;case 505:this.$={ifexists:true};break;case 506:this.$=new yy.AlterTable({table:$$[$0-3],renameto:$$[$0]});break;case 507:this.$=new yy.AlterTable({table:$$[$0-3],addcolumn:$$[$0]});break;case 508:this.$=new yy.AlterTable({table:$$[$0-3],modifycolumn:$$[$0]});break;case 509:this.$=new yy.AlterTable({table:$$[$0-5],renamecolumn:$$[$0-2],to:$$[$0]});break;case 510:this.$=new yy.AlterTable({table:$$[$0-3],dropcolumn:$$[$0]});break;case 511:this.$=new yy.AlterTable({table:$$[$0-2],renameto:$$[$0]});break;case 512:this.$=new yy.AttachDatabase({databaseid:$$[$0],engineid:$$[$0-2].toUpperCase()});break;case 513:this.$=new yy.AttachDatabase({databaseid:$$[$0-3],engineid:$$[$0-5].toUpperCase(),args:$$[$0-1]});break;case 514:this.$=new yy.AttachDatabase({databaseid:$$[$0-2],engineid:$$[$0-4].toUpperCase(),as:$$[$0]});break;case 515:this.$=new yy.AttachDatabase({databaseid:$$[$0-5],engineid:$$[$0-7].toUpperCase(),as:$$[$0],args:$$[$0-3]});break;case 516:this.$=new yy.DetachDatabase({databaseid:$$[$0]});break;case 517:this.$=new yy.CreateDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0]);break;case 518:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),databaseid:$$[$0-1],as:$$[$0]});yy.extend(this.$,$$[$0-2]);break;case 519:this.$=new yy.CreateDatabase({engineid:$$[$0-7].toUpperCase(),databaseid:$$[$0-4],args:$$[$0-2],as:$$[$0]});yy.extend(this.$,$$[$0-5]);break;case 520:this.$=new yy.CreateDatabase({engineid:$$[$0-4].toUpperCase(),as:$$[$0],args:[$$[$0-1]]});yy.extend(this.$,$$[$0-2]);break;case 521:this.$=undefined;break;case 523:case 524:this.$=new yy.UseDatabase({databaseid:$$[$0]});break;case 525:this.$=new yy.DropDatabase({databaseid:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 526:case 527:this.$=new yy.DropDatabase({databaseid:$$[$0],engineid:$$[$0-3].toUpperCase()});yy.extend(this.$,$$[$0-1]);break;case 528:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1]});break;case 529:this.$=new yy.CreateIndex({indexid:$$[$0-5],table:$$[$0-3],columns:$$[$0-1],unique:true});break;case 530:this.$=new yy.DropIndex({indexid:$$[$0]});break;case 531:this.$=new yy.ShowDatabases;break;case 532:this.$=new yy.ShowDatabases({like:$$[$0]});break;case 533:this.$=new yy.ShowDatabases({engineid:$$[$0-1].toUpperCase()});break;case 534:this.$=new yy.ShowDatabases({engineid:$$[$0-3].toUpperCase(),like:$$[$0]});break;case 535:this.$=new yy.ShowTables;break;case 536:this.$=new yy.ShowTables({like:$$[$0]});break;case 537:this.$=new yy.ShowTables({databaseid:$$[$0]});break;case 538:this.$=new yy.ShowTables({like:$$[$0],databaseid:$$[$0-2]});break;case 539:this.$=new yy.ShowColumns({table:$$[$0]});break;case 540:this.$=new yy.ShowColumns({table:$$[$0-2],databaseid:$$[$0]});break;case 541:this.$=new yy.ShowIndex({table:$$[$0]});break;case 542:this.$=new yy.ShowIndex({table:$$[$0-2],databaseid:$$[$0]});break;case 543:this.$=new yy.ShowCreateTable({table:$$[$0]});break;case 544:this.$=new yy.ShowCreateTable({table:$$[$0-2],databaseid:$$[$0]});break;case 545:this.$=new yy.CreateTable({table:$$[$0-6],view:true,select:$$[$0-1],viewcolumns:$$[$0-4]});yy.extend(this.$,$$[$0-9]);yy.extend(this.$,$$[$0-7]);break;case 546:this.$=new yy.CreateTable({table:$$[$0-3],view:true,select:$$[$0-1]});yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-4]);break;case 550:this.$=new yy.DropTable({table:$$[$0],view:true});yy.extend(this.$,$$[$0-1]);break;case 551:this.$=new yy.Help({subject:$$[$0].value.toUpperCase()});break;case 552:this.$=new yy.Help;break;case 553:this.$=new yy.ExpressionStatement({expression:$$[$0]});break;case 554:this.$=new yy.Source({url:$$[$0].value});break;case 555:this.$=new yy.Assert({value:$$[$0]});break;case 556:this.$=new yy.Assert({value:$$[$0].value});break;case 557:this.$=new yy.Assert({value:$$[$0],message:$$[$0-2]});break;case 559:case 570:case 572:this.$=$$[$0].value;break;case 560:case 568:this.$=+$$[$0].value;break;case 561:this.$=!!$$[$0].value;break;case 569:this.$=""+$$[$0].value;break;case 575:this.$=$$[$0-1];break;case 577:case 580:this.$=$$[$0-2];break;case 578:this.$={};break;case 581:this.$=[];break;case 582:yy.extend($$[$0-2],$$[$0]);this.$=$$[$0-2];break;case 584:this.$={};this.$[$$[$0-2].substr(1,$$[$0-2].length-2)]=$$[$0];break;case 585:case 586:this.$={};this.$[$$[$0-2]]=$$[$0];break;case 589:this.$=new yy.SetVariable({variable:$$[$0-1].toLowerCase(),value:$$[$0]});break;case 590:this.$=new yy.SetVariable({variable:$$[$0-2],expression:$$[$0],method:$$[$0-3]});break;case 591:this.$=new yy.SetVariable({variable:$$[$0-3],props:$$[$0-2],expression:$$[$0],method:$$[$0-4]});break;case 592:this.$="@";break;case 593:this.$="$";break;case 599:this.$=true;break;case 600:this.$=false;break;case 601:this.$=new yy.CommitTransaction;break;case 602:this.$=new yy.RollbackTransaction;break;case 603:this.$=new yy.BeginTransaction;break;case 604: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 605: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 606:this.$=$$[$0];break;case 607: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 608:this.$=new yy.Continue;break;case 609:this.$=new yy.Break;break;case 610:this.$=new yy.BeginEnd({statements:$$[$0-1]});break;case 611:this.$=new yy.Print({exprs:$$[$0]});break;case 612:this.$=new yy.Print({select:$$[$0]});break;case 613:this.$=new yy.Require({paths:$$[$0]});break;case 614:this.$=new yy.Require({plugins:$$[$0]});break;case 615:case 616:this.$=$$[$0].toUpperCase();break;case 617:this.$=new yy.Echo({expr:$$[$0]});break;case 622:this.$=new yy.Declare({declares:$$[$0]});break;case 625:this.$={variable:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 626:this.$={variable:$$[$0-2]};yy.extend(this.$,$$[$0]);break;case 627:this.$={variable:$$[$0-3],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 628:this.$={variable:$$[$0-4],expression:$$[$0]};yy.extend(this.$,$$[$0-2]);break;case 629:this.$=new yy.TruncateTable({table:$$[$0]});break;case 630: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 631:case 632:this.$={into:$$[$0]};break;case 634:this.$={on:$$[$0]};break;case 639:this.$={matched:true,action:$$[$0]};break;case 640:this.$={matched:true,expr:$$[$0-2],action:$$[$0]};break;case 641:this.$={"delete":true};break;case 642:this.$={update:$$[$0]};break;case 643:case 644:this.$={matched:false,bytarget:true,action:$$[$0]};break;case 645:case 646:this.$={matched:false,bytarget:true,expr:$$[$0-2],action:$$[$0]};break;case 647:this.$={matched:false,bysource:true,action:$$[$0]};break;case 648:this.$={matched:false,bysource:true,expr:$$[$0-2],action:$$[$0]};break;case 649:this.$={insert:true,values:$$[$0]};break;case 650:this.$={insert:true,values:$$[$0],columns:$$[$0-3]};break;case 651:this.$={insert:true,defaultvalues:true};break;case 652:this.$={insert:true,defaultvalues:true,columns:$$[$0-3]};break;case 654:this.$={output:{columns:$$[$0]}};break;case 655:this.$={output:{columns:$$[$0-3],intovar:$$[$0],method:$$[$0-1]}};break;case 656:this.$={output:{columns:$$[$0-2],intotable:$$[$0]}};break;case 657:this.$={output:{columns:$$[$0-5],intotable:$$[$0-3],intocolumns:$$[$0-1]}};break;case 658:this.$=new yy.CreateVertex({"class":$$[$0-3],sharp:$$[$0-2],name:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 661:this.$={sets:$$[$0]};break;case 662:this.$={content:$$[$0]};break;case 663:this.$={select:$$[$0]};break;case 664:this.$=new yy.CreateEdge({from:$$[$0-3],to:$$[$0-1],name:$$[$0-5]});yy.extend(this.$,$$[$0]);break;case 665:this.$=new yy.CreateGraph({graph:$$[$0]});break;case 666:this.$=new yy.CreateGraph({from:$$[$0]});break;case 669:this.$=$$[$0-2];if($$[$0-1])this.$.json=new yy.Json({value:$$[$0-1]});if($$[$0])this.$.as=$$[$0];break;case 670:this.$={source:$$[$0-6],target:$$[$0]};if($$[$0-3])this.$.json=new yy.Json({value:$$[$0-3]});if($$[$0-2])this.$.as=$$[$0-2];yy.extend(this.$,$$[$0-4]);break;case 672:this.$={vars:$$[$0],method:$$[$0-1]};break;case 675:var s3=$$[$0-1];this.$={prop:$$[$0-3],sharp:$$[$0-2],name:typeof s3=="undefined"?undefined:s3.substr(1,s3.length-2),"class":$$[$0]};break;case 681:this.$=new yy.AddRule({left:$$[$0-2],right:$$[$0]});break;case 682:this.$=new yy.AddRule({right:$$[$0]});break;case 685:this.$=new yy.Term({termid:$$[$0]});break;case 686:this.$=new yy.Term({termid:$$[$0-3],args:$$[$0-1]});break;case 692:case 706:case 708:case 710:case 714:case 716:case 718:case 720:case 722:case 724:this.$=[];break;case 693:case 701:case 703:case 707:case 709:case 711:case 715:case 717:case 719:case 721:case 723:case 725:$$[$0-1].push($$[$0]);break;case 700:case 702:this.$=[$$[$0]];break}},table:[o([8,450,451],$V0,{6:1,7:2,10:3,11:4,15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,4:$V1,5:$V2,12:$V3,47:$V4,65:$V5,81:$V6,99:$V7,120:$V8,130:$V9,163:$Va,233:$Vb,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),{1:[3]},{8:[1,97],9:98,450:$VE,451:$VF},o($VG,[2,5]),o($VG,[2,6]),o($VH,[2,9]),o($VG,$V0,{15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,10:101,4:$V1,5:$V2,13:[1,102],47:$V4,65:$V5,81:$V6,99:$V7,120:$V8,130:$V9,163:$Va,233:$Vb,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),o($VH,[2,11]),o($VH,[2,12]),o($VH,[2,13]),o($VH,[2,14]),o($VH,[2,15]),o($VH,[2,16]),o($VH,[2,17]),o($VH,[2,18]),o($VH,[2,19]),o($VH,[2,20]),o($VH,[2,21]),o($VH,[2,22]),o($VH,[2,23]),o($VH,[2,24]),o($VH,[2,25]),o($VH,[2,26]),o($VH,[2,27]),o($VH,[2,28]),o($VH,[2,29]),o($VH,[2,30]),o($VH,[2,31]),o($VH,[2,32]),o($VH,[2,33]),o($VH,[2,34]),o($VH,[2,35]),o($VH,[2,36]),o($VH,[2,37]),o($VH,[2,38]),o($VH,[2,39]),o($VH,[2,40]),o($VH,[2,41]),o($VH,[2,42]),o($VH,[2,43]),o($VH,[2,44]),o($VH,[2,45]),o($VH,[2,46]),o($VH,[2,47]),o($VH,[2,48]),o($VH,[2,49]),o($VH,[2,50]),o($VH,[2,51]),o($VH,[2,52]),o($VH,[2,53]),o($VH,[2,54]),o($VH,[2,55]),o($VH,[2,56]),o($VH,[2,57]),o($VH,[2,58]),o($VH,[2,59]),{304:[1,103]},{3:104,4:$V1,5:$V2},o($VI,[2,442],{3:106,299:110,4:$V1,5:$V2,109:$VJ,110:$VK,161:[1,108],167:[1,107],308:[1,113],352:[1,105],421:[1,109]}),{119:$VL,398:114,399:115},{157:[1,117]},{352:[1,118]},{3:120,4:$V1,5:$V2,105:[1,125],167:[1,121],304:[1,124],345:122,352:[1,119],357:[1,123]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:126,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vi1,[2,413],{292:181,172:[1,182]}),{3:193,4:$V1,5:$V2,70:$Vj1,107:$Vk1,116:$VQ,118:187,119:$VR,126:$VS,155:$VW,172:[1,185],173:188,174:190,175:189,176:191,183:184,186:192,260:$Vd1,367:168,368:$Vg1,372:$Vh1,402:183},{304:[1,195]},o($Vl1,[2,690],{73:196,84:197,85:[1,198]}),o($Vm1,[2,692],{82:199}),{3:203,4:$V1,5:$V2,164:[1,201],167:[1,204],298:[1,200],304:[1,205],352:[1,202]},{304:[1,206]},{3:209,4:$V1,5:$V2,66:207,68:208},o([264,450,451],$V0,{10:3,11:4,15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,7:211,4:$V1,5:$V2,12:$V3,47:$V4,65:$V5,81:$V6,99:$V7,120:$V8,130:$V9,163:$Va,233:$Vb,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,384:[1,210],385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),{384:[1,212]},{384:[1,213]},{3:215,4:$V1,5:$V2,352:[1,214]},{3:217,4:$V1,5:$V2,173:216},o($VH,[2,552],{91:218,107:$VO,256:$Va1}),o($Vn1,[2,284]),{91:219,107:$VO,256:$Va1},{3:231,4:$V1,5:$V2,91:225,106:$VN,107:[1,222],116:$VQ,118:220,119:$Vo1,126:$VS,155:$VW,170:224,174:229,175:228,225:226,226:227,232:$Vp1,238:221,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:232,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VH,[2,608]),o($VH,[2,609]),{3:147,4:$V1,5:$V2,36:234,51:144,70:$VM,72:67,81:$V6,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:233,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,158:92,163:$Va,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:241,4:$V1,5:$V2,91:238,107:$VO,256:$Va1,393:236,394:237,395:239,396:$Vq1},{3:242,4:$V1,5:$V2,116:$Vr1,119:$Vs1,379:243},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:246,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{447:[1,247]},{3:93,4:$V1,5:$V2,446:249,448:248},{3:231,4:$V1,5:$V2,174:250},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:251,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vt1,$Vu1,{160:255,138:[1,254],159:[1,252],161:[1,253],169:$Vv1}),o($Vw1,[2,685],{70:[1,257]}),o($Vx1,[2,130],{123:[1,258],124:[1,259],164:[1,260],165:[1,261],166:[1,262],167:[1,263],168:[1,264]}),o($Vy1,[2,1]),o($Vy1,[2,2]),{1:[2,3]},o($VG,$V0,{15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,10:265,4:$V1,5:$V2,47:$V4,65:$V5,81:$V6,99:$V7,120:$V8,130:$V9,163:$Va,233:$Vb,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),o($Vz1,[2,688]),o($Vz1,[2,689]),o($VG,[2,7]),{14:[1,266]},{3:217,4:$V1,5:$V2,173:267},{352:[1,268]},o($Vi1,$VA1,{301:269,130:$VB1}),{352:[1,271]},{3:272,4:$V1,5:$V2},{167:[1,273]},o([8,67,69,107,112,114,126,264,268,368,372,450,451],$VC1,{422:274,423:276,424:277,427:278,3:279,434:280,431:281,379:282,4:$V1,5:$V2,116:$Vr1,119:$Vs1,157:[1,275]}),{105:[1,286],300:283,304:[1,285],357:[1,284]},{91:288,107:$VO,157:[2,770],256:$Va1,420:287},o($VD1,[2,764],{414:289,3:290,4:$V1,5:$V2}),o($VI,[2,443]),o($VH,[2,622],{67:[1,291]}),o($VE1,[2,623]),{3:292,4:$V1,5:$V2},{3:217,4:$V1,5:$V2,173:293},{3:294,4:$V1,5:$V2},o($Vi1,$VF1,{346:295,130:$VG1}),{352:[1,297]},{3:298,4:$V1,5:$V2},o($Vi1,$VF1,{346:299,130:$VG1}),o($Vi1,$VF1,{346:300,130:$VG1}),o($VH1,[2,758]),o($VH1,[2,759]),o($VH,$V0,{15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,10:301,278:322,4:$V1,5:$V2,47:$V4,65:$V5,81:$V6,90:$VI1,97:$VJ1,98:$VK1,99:$VL1,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,120:$V8,128:$VR1,130:$V9,144:$VS1,145:$VT1,153:$VU1,154:$VV1,163:$Va,233:$Vb,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),o($Vn1,[2,263]),o($Vn1,[2,264]),o($Vn1,[2,265]),o($Vn1,[2,266]),o($Vn1,[2,267]),o($Vn1,[2,268]),o($Vn1,[2,269]),o($Vn1,[2,270]),o($Vn1,[2,271]),o($Vn1,[2,272]),o($Vn1,[2,273]),o($Vn1,[2,274]),o($Vn1,[2,275]),o($Vn1,[2,276]),o($Vn1,[2,277]),o($Vn1,[2,278]),{3:147,4:$V1,5:$V2,23:336,24:335,33:332,36:331,51:144,70:$VM,72:67,81:$V6,89:130,91:134,100:334,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,158:92,163:$Va,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,231:333,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,291:$Ve,298:[1,337],367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,282]),o($Vn1,[2,283]),{70:[1,338]},o([4,5,8,47,65,67,69,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],$V82,{70:$V92,117:[1,340]}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:341,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:342,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:343,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:344,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,258]),o([4,5,8,47,65,67,69,70,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,202,203,205,212,215,216,218,220,232,233,234,235,237,244,245,246,247,248,249,250,251,252,254,255,256,257,258,260,261,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,294,298,307,319,320,324,325,344,347,348,351,353,355,356,364,365,366,368,372,374,376,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451,452],[2,320]),o($Va2,[2,321]),o($Va2,[2,322]),o($Va2,$Vb2),o($Va2,[2,324]),o([4,5,8,47,65,67,69,70,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,257,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,294,298,307,319,320,324,325,344,347,348,351,353,355,356,364,365,366,368,372,374,376,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,325]),{3:346,4:$V1,5:$V2,106:[1,347],259:345},{3:348,4:$V1,5:$V2},o($Va2,[2,330]),o($Va2,[2,331]),{3:349,4:$V1,5:$V2,70:$Vc2,91:351,106:$VN,107:$VO,116:$VQ,126:$VS,155:$VW,170:352,175:354,225:353,254:$V81,255:$V91,256:$Va1,260:$Vd1,367:355,372:$Vh1},{70:[1,356]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:357,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,262:358,265:359,266:$Vd2,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{70:[1,361]},{70:[1,362]},o($Ve2,[2,563]),{3:377,4:$V1,5:$V2,70:$Vf2,89:372,91:370,106:$VN,107:$VO,116:$VQ,118:367,119:$Vo1,126:$VS,155:$VW,170:369,174:375,175:374,225:371,226:373,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1,367:168,368:$Vg1,369:363,370:366,371:368,372:$Vh1,375:364,376:[1,365]},{3:378,4:$V1,5:$V2,174:379},{70:[2,307]},{70:[2,308]},{70:[2,309]},{70:[2,310]},{70:[2,311]},{70:[2,312]},{70:[2,313]},{70:[2,314]},{70:[2,315]},{3:385,4:$V1,5:$V2,106:$Vg2,107:$Vh2,373:380,374:[1,381],377:382},{3:217,4:$V1,5:$V2,173:386},o($Vi1,[2,414]),{203:[1,388],403:387},{203:[2,631]},{3:193,4:$V1,5:$V2,70:$Vj1,107:$Vk1,116:$VQ,118:187,119:$VR,126:$VS,155:$VW,173:188,174:190,175:189,176:191,183:389,186:192,260:$Vd1,367:168,368:$Vg1,372:$Vh1},{36:390,72:67,81:$V6,158:92,163:$Va},o($Vi2,[2,730],{184:391,69:[1,392]}),o($Vj2,[2,163],{3:393,4:$V1,5:$V2,69:[1,394]}),o($Vj2,[2,166],{3:395,4:$V1,5:$V2,69:[1,396]}),o($Vj2,[2,167],{3:397,4:$V1,5:$V2,69:[1,398]}),o($Vj2,[2,170],{3:399,4:$V1,5:$V2,69:[1,400]}),o($Vj2,[2,173],{3:401,4:$V1,5:$V2,69:[1,402]}),o([4,5,8,65,67,69,71,93,104,136,142,143,157,180,182,194,195,196,197,198,199,200,201,202,203,205,218,264,268,450,451],$Vk2,{70:$V92,117:$Vl2}),o([4,5,8,65,67,69,71,93,104,136,142,143,180,182,194,195,196,197,198,199,200,201,202,203,205,218,264,268,450,451],[2,176]),{3:217,4:$V1,5:$V2,173:404},o($Vm2,$Vn2,{74:405,172:$Vo2}),o($Vl1,[2,691]),o($Vp2,[2,696],{86:407,164:[1,408]}),o([8,71,157,264,268,450,451],$Vn2,{367:168,74:409,92:410,3:411,118:433,132:443,134:444,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,90:$Vt2,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,172:$Vo2,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,368:$Vg1,372:$Vh1}),{304:[1,457]},{157:[1,458]},o($VH,[2,531],{90:[1,459]}),{352:[1,460]},{157:[1,461]},o($VH,[2,535],{90:[1,462],157:[1,463]}),{3:217,4:$V1,5:$V2,173:464},{36:465,67:[1,466],72:67,81:$V6,158:92,163:$Va},o($V43,[2,62]),{69:[1,467]},o($VH,[2,603]),{9:98,264:[1,468],450:$VE,451:$VF},o($VH,[2,601]),o($VH,[2,602]),{3:469,4:$V1,5:$V2},o($VH,[2,524]),{120:[1,470]},o([8,67,69,70,71,81,104,120,122,123,128,157,161,163,202,257,264,268,294,307,319,320,324,325,344,348,349,350,450,451],$Vk2,{117:$Vl2}),o($VH,[2,551]),o($VH,[2,554]),o($VH,[2,555]),o($VH,[2,556]),o($VH,$Vb2,{67:[1,471]}),{70:$Vc2,91:351,106:$VN,107:$VO,116:$VQ,126:$VS,155:$VW,170:352,175:354,225:353,254:$V81,255:$V91,256:$Va1,260:$Vd1,367:355,372:$Vh1},o($V53,[2,291]),o($V53,[2,292]),o($V53,[2,293]),o($V53,[2,294]),o($V53,[2,295]),o($V53,[2,296]),o($V53,[2,297]),{70:$V92},o($VH,$V0,{15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,278:322,10:472,4:$V1,5:$V2,47:$V4,65:$V5,81:$V6,90:$VI1,97:$VJ1,98:$VK1,99:$VL1,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,120:$V8,128:$VR1,130:$V9,144:$VS1,145:$VT1,153:$VU1,154:$VV1,163:$Va,233:$Vb,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),o($VH,[2,611],{67:$V63}),o($VH,[2,612]),o($V73,[2,318],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($VH,[2,613],{67:[1,475]}),o($VH,[2,614],{67:[1,476]}),o($VE1,[2,619]),o($VE1,[2,621]),o($VE1,[2,615]),o($VE1,[2,616]),{202:[1,478],378:477,382:[1,479]},{3:480,4:$V1,5:$V2},o($Vi1,[2,592]),o($Vi1,[2,593]),o($VH,[2,553],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{3:93,4:$V1,5:$V2,446:249,448:481},o($VH,[2,682],{67:$V93}),o($V73,[2,684]),o($VH,[2,687]),o($VH,[2,617],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($Va3,$Vu1,{160:483,169:$Vv1}),o($Va3,$Vu1,{160:484,169:$Vv1}),o($Va3,$Vu1,{160:485,169:$Vv1}),o($Vb3,[2,726],{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,162:486,148:487,221:488,100:489,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),{70:[1,491],106:$VN,170:490},{3:93,4:$V1,5:$V2,446:249,448:492},o($Vx1,[2,131]),o($Vx1,[2,132]),o($Vx1,[2,133]),o($Vx1,[2,134]),o($Vx1,[2,135]),o($Vx1,[2,136]),o($Vx1,[2,137]),o($VG,[2,4]),o($VG,$V0,{15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,10:493,4:$V1,5:$V2,47:$V4,65:$V5,81:$V6,99:$V7,120:$V8,130:$V9,163:$Va,233:$Vb,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),{344:[1,497],348:[1,494],349:[1,495],350:[1,496]},{3:498,4:$V1,5:$V2},{3:499,4:$V1,5:$V2},{128:[1,500]},o($Vc3,$VA1,{301:501,130:$VB1}),{202:[1,502]},{3:503,4:$V1,5:$V2},o($VH,[2,665],{67:$Vd3}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:505,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($V73,[2,668]),o($Ve3,[2,772],{367:168,425:506,118:507,114:[2,776],119:$Vo1,368:$Vg1,372:$Vh1}),{114:[1,508]},o($Vf3,$Vg3,{70:[1,509]}),o($Vh3,[2,786],{435:510,439:511,112:[1,512]}),{114:[2,777]},{3:513,4:$V1,5:$V2},o($Vi1,$VA1,{301:514,130:$VB1}),o($Vi1,$VA1,{301:515,130:$VB1}),o($VH1,[2,433]),o($VH1,[2,434]),{157:[1,516]},{157:[2,771]},o($Vi3,[2,766],{415:517,418:518,112:[1,519]}),o($VD1,[2,765]),{119:$VL,399:520},{4:$Vj3,69:[1,522],236:521,338:$Vk3},o($VH,[2,407],{104:[1,525]}),o($VH,[2,516]),{3:526,4:$V1,5:$V2},{258:[1,527]},o($Vc3,$VF1,{346:528,130:$VG1}),o($VH,[2,530]),{3:217,4:$V1,5:$V2,173:529},{3:217,4:$V1,5:$V2,173:530},o($VG,[2,605],{387:531,268:[1,532]}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:533,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:534,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:535,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:536,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:537,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:538,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:539,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:540,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:541,4:$V1,5:$V2,70:[1,543],106:$VN,170:542,174:544},{3:545,4:$V1,5:$V2,70:[1,547],106:$VN,170:546,174:548},o($Vl3,[2,391],{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:549,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),o($Vl3,[2,392],{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:550,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),o($Vl3,[2,393],{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:551,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),o($Vl3,[2,394],{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:552,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),o($Vl3,$Vm3,{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:553,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:554,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:555,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vl3,[2,396],{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:556,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:557,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:558,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{138:[1,560],140:[1,562],279:559,286:[1,561]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:563,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:564,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:377,4:$V1,5:$V2,70:[1,565],89:568,119:$Vn3,174:569,176:567,281:566},{280:[1,571]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:572,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:573,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:574,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{4:$Vj3,236:575,338:$Vk3},{71:[1,576]},{71:[1,577]},{71:[1,578]},{71:[1,579],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[2,738]},{71:[2,739]},{109:$VJ,110:$VK},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:580,126:$VS,128:$VT,132:146,138:[1,582],153:$VU,154:$VV,155:$VW,159:[1,581],170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Va3,[2,742],{253:583,453:585,71:[1,584],138:[1,587],159:[1,586]}),{3:588,4:$V1,5:$V2,123:$Vo3,154:[1,590]},o([4,5,8,47,65,67,69,70,71,81,85,93,99,104,105,106,107,109,110,112,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,271,272,273,274,275,276,277,280,282,283,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,369],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,284:$V62}),o($Vp3,[2,370],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,154:$VV1}),o($Vp3,[2,371],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,154:$VV1}),o($Vn1,[2,372],{278:322}),o($Va2,[2,328]),o($Va2,[2,744]),o($Va2,[2,745]),o($Va2,[2,329]),o([4,5,8,47,65,67,69,70,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,202,203,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,326]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:591,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Ve2,[2,559]),o($Ve2,[2,560]),o($Ve2,[2,561]),o($Ve2,[2,562]),o($Ve2,[2,564]),{36:592,72:67,81:$V6,158:92,163:$Va},{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,262:593,265:359,266:$Vd2,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{263:594,264:$Vq3,265:595,266:$Vd2,268:$Vr3},o($Vs3,[2,335]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:597,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:598,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{4:$Vj3,236:599,338:$Vk3},o($Ve2,[2,565]),{67:[1,601],376:[1,600]},o($Ve2,[2,581]),o($Vt3,[2,588]),o($Vu3,[2,566]),o($Vu3,[2,567]),o($Vu3,[2,568]),o($Vu3,[2,569]),o($Vu3,[2,570]),o($Vu3,[2,571]),o($Vu3,[2,572]),o($Vu3,[2,573]),o($Vu3,[2,574]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:602,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o([4,5,8,47,65,67,69,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,374,376,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],$V82,{70:$V92,117:$Vv3}),o($Vw3,[2,285],{70:$V92}),o($Vn1,[2,286]),{67:[1,605],374:[1,604]},o($Ve2,[2,578]),o($Vx3,[2,583]),{126:[1,606]},{126:[1,607]},{126:[1,608]},{36:612,70:[1,611],72:67,81:$V6,123:[1,609],158:92,163:$Va,294:[1,610]},{202:[1,614],404:613},{3:193,4:$V1,5:$V2,70:$Vj1,107:$Vk1,116:$VQ,118:187,119:$VR,126:$VS,155:$VW,173:188,174:190,175:189,176:191,183:615,186:192,260:$Vd1,367:168,368:$Vg1,372:$Vh1},{203:[2,632]},{71:[1,616]},o($Vj2,[2,732],{185:617,3:618,4:$V1,5:$V2}),o($Vi2,[2,731]),o($Vj2,[2,161]),{3:619,4:$V1,5:$V2},o($Vj2,[2,164]),{3:620,4:$V1,5:$V2},o($Vj2,[2,168]),{3:621,4:$V1,5:$V2},o($Vj2,[2,171]),{3:622,4:$V1,5:$V2},o($Vj2,[2,174]),{3:623,4:$V1,5:$V2},{3:624,4:$V1,5:$V2},{122:[1,625]},o($Vy3,[2,150],{75:626,157:[1,627]}),{3:193,4:$V1,5:$V2,107:[1,632],116:$VQ,119:[1,633],126:$VS,155:$VW,173:628,174:629,175:630,176:631,260:$Vd1},{3:638,4:$V1,5:$V2,87:634,88:635,89:636,90:$Vz3},o($Vp2,[2,697]),o($VA3,[2,694],{83:639,156:640,157:[1,641]}),o($Vm1,[2,693],{127:642,153:$VB3,154:$VC3,155:$VD3}),o([4,5,8,65,67,69,71,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,172,244,245,246,247,248,249,250,251,252,264,268,368,372,450,451],[2,71],{70:[1,646]}),{94:[1,647]},{3:648,4:$V1,5:$V2},o($VE3,[2,75]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:649,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:650,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,90:$Vt2,92:652,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,101:651,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{70:[1,653]},{70:[1,654]},{70:[1,655]},o($VE3,[2,83]),o($VE3,[2,84]),o($VE3,[2,85]),o($VE3,[2,86]),o($VE3,[2,87]),o($VE3,[2,88]),{3:656,4:$V1,5:$V2},{3:657,4:$V1,5:$V2,108:[1,658]},o($VE3,[2,92]),o($VE3,[2,93]),o($VE3,[2,94]),{117:[1,659]},o($VE3,[2,96]),{3:660,4:$V1,5:$V2,70:$Vc2,91:351,106:$VN,107:$VO,116:$VQ,126:$VS,155:$VW,170:352,175:354,225:353,254:$V81,255:$V91,256:$Va1,260:$Vd1,367:355,372:$Vh1},{119:[1,661]},{70:[1,662]},{119:[1,663]},o($VE3,[2,101]),{70:[1,664]},{3:665,4:$V1,5:$V2},{70:[1,666]},{70:[1,667]},{70:[1,668]},{70:[1,669]},{70:[1,670],138:[1,671]},{70:[1,672]},{70:[1,673]},{70:[1,674]},{70:[1,675]},{70:[1,676]},{70:[1,677]},{70:[1,678]},{70:[1,679]},{70:[1,680]},{70:[2,712]},{70:[2,713]},{3:217,4:$V1,5:$V2,173:681},{3:217,4:$V1,5:$V2,173:682},{91:683,107:$VO,256:$Va1},o($VH,[2,533],{90:[1,684]}),{3:217,4:$V1,5:$V2,173:685},{91:686,107:$VO,256:$Va1},{3:687,4:$V1,5:$V2},o($VH,[2,629]),o($VH,[2,60]),{3:209,4:$V1,5:$V2,68:688},{70:[1,689]},o($VH,[2,610]),o($VH,[2,523]),{3:638,4:$V1,5:$V2,89:692,116:$VF3,119:$VG3,121:690,288:691,289:693},{118:696,119:$Vo1,367:168,368:$Vg1,372:$Vh1},o($VH,[2,607]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:697,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vl3,$Vm3,{223:127,174:128,224:129,89:130,222:131,170:132,225:133,91:134,226:135,175:136,176:137,227:138,228:139,229:140,118:141,230:142,51:144,132:146,3:147,367:168,100:698,4:$V1,5:$V2,70:$VM,106:$VN,107:$VO,112:$VP,116:$VQ,119:$VR,126:$VS,128:$VT,153:$VU,154:$VV,155:$VW,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,368:$Vg1,372:$Vh1}),{91:699,107:$VO,256:$Va1},{3:241,4:$V1,5:$V2,395:700,396:$Vq1},o($VH,[2,589]),o($VH,[2,599]),o($VH,[2,600]),{97:[1,703],99:[1,701],380:702},o($VH,[2,681],{67:$V93}),{3:93,4:$V1,5:$V2,446:704},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:489,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,148:705,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,221:488,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:489,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,148:706,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,221:488,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:489,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,148:707,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,221:488,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vb3,[2,129]),o($Vb3,[2,727],{67:$VH3}),o($VI3,[2,248]),o($VI3,[2,255],{278:322,3:710,91:712,4:$V1,5:$V2,69:[1,709],90:$VI1,97:$VJ1,98:$VK1,99:$V83,106:[1,711],107:$VO,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,256:$Va1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($Vt1,[2,728],{171:713,452:[1,714]}),{106:$VN,170:715},{67:$V93,71:[1,716]},o($VG,[2,8]),{122:[1,717],164:[1,718]},{164:[1,719]},{164:[1,720]},{164:[1,721]},o($VH,[2,512],{69:[1,723],70:[1,722]}),o($VH,[2,517]),{258:[1,724]},{3:725,4:$V1,5:$V2,91:726,107:$VO,256:$Va1},{3:217,4:$V1,5:$V2,173:727},{202:[1,728]},o([8,67,69,71,107,112,114,126,264,268,368,372,450,451],$VC1,{424:277,427:278,3:279,434:280,431:281,379:282,423:729,4:$V1,5:$V2,116:$Vr1,119:$Vs1}),o($VH,[2,666],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($V73,[2,774],{426:730,432:731,69:$VJ3}),o($Ve3,[2,773]),o([69,107,112,114,119,126,368,372],$VC1,{434:280,424:733,3:734,4:$V1,5:$V2}),o([67,69,71,107,112,114,126,368,372],$VC1,{423:276,424:277,427:278,3:279,434:280,431:281,379:282,422:735,4:$V1,5:$V2,116:$Vr1,119:$Vs1}),o($VK3,[2,788],{436:736,107:[1,737]}),o($Vh3,[2,787]),{3:738,4:$V1,5:$V2,106:[1,739]},o($VL3,[2,672]),{3:217,4:$V1,5:$V2,173:740},{3:217,4:$V1,5:$V2,173:741},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:742,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VM3,[2,768],{416:743,91:744,107:$VO,256:$Va1}),o($Vi3,[2,767]),{3:745,4:$V1,5:$V2},o($VE1,[2,624]),o($VE1,[2,625],{99:[1,746]}),{4:$Vj3,236:747,338:$Vk3},o([5,8,47,65,67,69,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,257,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,294,298,307,319,320,324,325,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,482],{4:[1,749],70:[1,748]}),{70:[1,750]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:751,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VH,[2,525]),o($Vc3,[2,505]),{3:752,4:$V1,5:$V2,91:753,107:$VO,256:$Va1},o($VH,[2,503]),o($VH,[2,550]),o($VH,[2,604]),o($VH,$V0,{15:5,16:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:23,33:24,34:25,35:26,36:27,37:28,38:29,39:30,40:31,41:32,42:33,43:34,44:35,45:36,46:37,48:39,49:40,50:41,51:42,52:43,53:44,54:45,55:46,56:47,57:48,58:49,59:50,60:51,61:52,62:53,63:54,64:55,72:67,446:88,158:92,3:93,10:754,4:$V1,5:$V2,47:$V4,65:$V5,81:$V6,99:$V7,120:$V8,130:$V9,163:$Va,233:$Vb,287:$Vc,290:$Vd,291:$Ve,298:$Vf,344:$Vg,347:$Vh,348:$Vi,351:$Vj,353:$Vk,355:$Vl,356:$Vm,364:$Vn,365:$Vo,366:$Vp,383:$Vq,385:$Vr,386:$Vs,388:$Vt,389:$Vu,390:$Vv,391:$Vw,392:$Vx,396:$Vy,397:$Vz,400:$VA,401:$VB,447:$VC,449:$VD}),o($VN3,[2,339],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,153:$VU1,154:$VV1,270:$VX1}),o($VN3,[2,340],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,153:$VU1,154:$VV1,270:$VX1}),o($Vp3,[2,341],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,154:$VV1}),o($Vp3,[2,342],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,154:$VV1}),o($VO3,[2,343],{278:322,97:$VJ1,98:$VK1,111:$VN1}),o($VO3,[2,344],{278:322,97:$VJ1,98:$VK1,111:$VN1}),o($VO3,[2,345],{278:322,97:$VJ1,98:$VK1,111:$VN1}),o([4,5,8,47,65,67,69,70,71,81,85,90,93,98,99,104,105,106,107,108,109,110,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,346],{278:322,97:$VJ1,111:$VN1}),o($Vw3,[2,347],{70:$V92}),o($Vn1,[2,348]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:755,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,350]),o($Vw3,[2,351],{70:$V92}),o($Vn1,[2,352]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:756,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,354]),o($VP3,[2,355],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,356],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,357],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,358],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o([4,5,8,47,65,81,99,114,115,120,130,144,145,163,233,264,268,271,272,273,274,275,276,277,282,283,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,383,385,386,388,389,390,391,392,396,397,400,401,447,449,450,451],$VQ3,{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,360],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,361],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,362],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,363],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VP3,[2,364],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),{70:[1,757]},{70:[2,397]},{70:[2,398]},{70:[2,399]},o($VR3,[2,367],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,284:$V62}),o([4,5,8,47,65,67,69,70,71,81,85,93,104,105,106,107,109,110,112,116,117,119,120,122,123,124,126,130,136,138,140,142,143,145,146,147,149,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,368],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62}),{3:147,4:$V1,5:$V2,36:758,51:144,70:$VM,71:[1,760],72:67,81:$V6,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:759,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,158:92,163:$Va,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,380]),o($Vn1,[2,382]),o($Vn1,[2,388]),o($Vn1,[2,389]),{3:349,4:$V1,5:$V2,70:[1,761]},{3:377,4:$V1,5:$V2,70:[1,762],89:568,119:$Vn3,174:569,176:764,281:763},o($VR3,[2,384],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,284:$V62}),o($VR3,[2,385],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,284:$V62}),o([4,5,8,47,65,67,69,70,71,81,85,93,99,104,105,106,107,109,110,112,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,264,266,267,268,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,298,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,386],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,153:$VU1,154:$VV1,269:$VW1,270:$VX1}),o($Vn1,[2,387]),o($Vn1,[2,279]),o($Vn1,[2,280]),o($Vn1,[2,281]),o($Vn1,[2,373]),{67:$V63,71:[1,765]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:766,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:767,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:768,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Va2,[2,317]),o($Va3,[2,743]),o($Va3,[2,740]),o($Va3,[2,741]),o($Vn1,$VS3),o($VT3,[2,261]),o($Vn1,[2,257]),{71:[1,770],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[1,771]},{263:772,264:$Vq3,265:595,266:$Vd2,268:$Vr3},{264:[1,773]},o($Vs3,[2,334]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:774,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,267:[1,775],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{69:[1,776],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{67:[1,777]},o($Ve2,[2,579]),{3:377,4:$V1,5:$V2,70:$Vf2,89:372,91:370,106:$VN,107:$VO,116:$VQ,118:367,119:$Vo1,126:$VS,155:$VW,170:369,174:375,175:374,225:371,226:373,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1,367:168,368:$Vg1,370:779,371:368,372:$Vh1,376:[1,778]},{71:[1,780],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{3:781,4:$V1,5:$V2,123:$Vo3},o($Ve2,[2,576]),{3:385,4:$V1,5:$V2,106:$Vg2,107:$Vh2,374:[1,782],377:783},{3:377,4:$V1,5:$V2,70:$Vf2,89:372,91:370,106:$VN,107:$VO,116:$VQ,118:367,119:$Vo1,126:$VS,155:$VW,170:369,174:375,175:374,225:371,226:373,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1,367:168,368:$Vg1,370:784,371:368,372:$Vh1},{3:377,4:$V1,5:$V2,70:$Vf2,89:372,91:370,106:$VN,107:$VO,116:$VQ,118:367,119:$Vo1,126:$VS,155:$VW,170:369,174:375,175:374,225:371,226:373,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1,367:168,368:$Vg1,370:785,371:368,372:$Vh1},{3:377,4:$V1,5:$V2,70:$Vf2,89:372,91:370,106:$VN,107:$VO,116:$VQ,118:367,119:$Vo1,126:$VS,155:$VW,170:369,174:375,175:374,225:371,226:373,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1,367:168,368:$Vg1,370:786,371:368,372:$Vh1},{70:$VU3,116:$VQ,118:789,119:$Vo1,126:$VS,155:$VW,175:790,260:$Vd1,293:787,367:168,368:$Vg1,372:$Vh1},{123:[1,791]},{3:638,4:$V1,5:$V2,89:793,204:792},o($VV3,[2,411]),{266:$VW3,405:794,407:795,408:796},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:798,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{202:[2,633]},o($Vj2,[2,159],{3:799,4:$V1,5:$V2,69:[1,800]}),o($Vj2,[2,160]),o($Vj2,[2,733]),o($Vj2,[2,162]),o($Vj2,[2,165]),o($Vj2,[2,169]),o($Vj2,[2,172]),o($Vj2,[2,175]),o([4,5,8,65,67,69,70,71,81,93,104,120,122,123,128,136,142,143,157,161,163,180,182,194,195,196,197,198,199,200,201,202,203,205,218,257,264,268,294,307,319,320,324,325,344,348,349,350,450,451],[2,177]),{3:801,4:$V1,5:$V2},o($VX3,[2,214],{76:802,104:[1,803]}),{3:193,4:$V1,5:$V2,70:[1,805],107:$Vk1,116:$VQ,118:187,119:$VR,126:$VS,155:$VW,173:188,174:190,175:189,176:191,177:804,183:806,186:192,260:$Vd1,367:168,368:$Vg1,372:$Vh1},o($Vm2,[2,142]),o($Vm2,[2,143]),o($Vm2,[2,144]),o($Vm2,[2,145]),o($Vm2,[2,146]),{3:349,4:$V1,5:$V2},o($Vl1,[2,66],{67:[1,807]}),o($VY3,[2,68]),o($VY3,[2,69]),{91:808,107:$VO,256:$Va1},o([8,65,67,71,93,99,104,136,142,143,157,172,180,182,194,195,196,197,198,199,200,201,205,218,264,268,450,451],$V82,{117:$Vv3}),o($VA3,[2,65]),o($VA3,[2,695]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:809,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VE3,[2,104]),o($VE3,[2,122]),o($VE3,[2,123]),o($VE3,[2,124]),{3:147,4:$V1,5:$V2,51:144,70:$VM,71:[2,704],89:130,91:134,100:235,103:810,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:811,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{70:[1,812]},o($VE3,[2,74]),o([4,5,8,65,67,69,70,71,93,99,104,105,106,107,109,110,112,114,115,116,117,119,120,122,123,124,126,130,136,138,140,142,143,144,145,146,147,149,155,157,159,161,172,244,245,246,247,248,249,250,251,252,264,268,368,372,450,451],[2,76],{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o([4,5,8,65,67,69,70,71,90,93,99,104,105,106,107,109,110,112,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,155,157,159,161,172,244,245,246,247,248,249,250,251,252,264,268,368,372,450,451],[2,77],{278:322,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,813],90:$Vt2,92:814,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},o($VZ3,[2,700],{127:642,153:$VB3,154:$VC3,155:$VD3}),{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,90:$Vt2,92:816,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,102:815,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:817,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:818,4:$V1,5:$V2},o($VE3,[2,89]),o($VE3,[2,90]),o($VE3,[2,91]),o($VE3,[2,95]),o($VE3,[2,97]),{3:819,4:$V1,5:$V2},{3:638,4:$V1,5:$V2,89:692,116:$VF3,119:$VG3,121:820,288:691,289:693},{3:821,4:$V1,5:$V2},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:822,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VE3,[2,103]),o($VZ3,[2,706],{129:823}),o($VZ3,[2,708],{131:824}),o($VZ3,[2,710],{133:825}),o($VZ3,[2,714],{135:826}),o($V_3,$V$3,{137:827,152:828}),{70:[1,829]},o($VZ3,[2,716],{139:830}),o($VZ3,[2,718],{141:831}),o($V_3,$V$3,{152:828,137:832}),o($V_3,$V$3,{152:828,137:833}),o($V_3,$V$3,{152:828,137:834}),o($V_3,$V$3,{152:828,137:835}),{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,90:$Vt2,92:836,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:489,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,148:837,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,221:488,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($V04,[2,720],{150:838}),o($VH,[2,543],{157:[1,839]}),o($VH,[2,539],{157:[1,840]}),o($VH,[2,532]),{91:841,107:$VO,256:$Va1},o($VH,[2,541],{157:[1,842]}),o($VH,[2,536]),o($VH,[2,537],{90:[1,843]}),o($V43,[2,61]),{36:844,72:67,81:$V6,158:92,163:$Va},o($VH,[2,401],{67:$V14,104:[1,845]}),o($V24,[2,402]),{99:[1,847]},{3:848,4:$V1,5:$V2},o($Vi1,[2,746]),o($Vi1,[2,747]),o($VH,[2,557]),o($V73,[2,319],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($VP3,$VQ3,{278:322,90:$VI1,97:$VJ1,98:$VK1,108:$VM1,111:$VN1,113:$VO1,128:$VR1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,280:$V32,284:$V62}),o($VE1,[2,618]),o($VE1,[2,620]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:849,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{97:[1,851],99:[1,850]},{3:853,4:$V1,5:$V2,70:$V34,106:$V44,381:852},o($V73,[2,683]),o($Vb3,[2,126],{67:$VH3}),o($Vb3,[2,127],{67:$VH3}),o($Vb3,[2,128],{67:$VH3}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:489,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,221:856,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:857,4:$V1,5:$V2,91:859,106:[1,858],107:$VO,256:$Va1},o($VI3,[2,250]),o($VI3,[2,252]),o($VI3,[2,254]),o($Vt1,[2,138]),o($Vt1,[2,729]),{71:[1,860]},o($Vw1,[2,686]),{3:861,4:$V1,5:$V2},{3:862,4:$V1,5:$V2},{3:864,4:$V1,5:$V2,334:863},{3:864,4:$V1,5:$V2,334:865},{3:866,4:$V1,5:$V2},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:867,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:868,4:$V1,5:$V2},o($Vc3,[2,445]),o($VH,$V54,{354:869,69:$V64,70:[1,870]}),o($VH,$V54,{354:872,69:$V64}),{70:[1,873]},{3:217,4:$V1,5:$V2,173:874},o($V73,[2,667]),o($V73,[2,669]),o($V73,[2,775]),{116:$Vr1,119:$Vs1,379:875},o($V74,[2,778],{367:168,428:876,118:877,119:$Vo1,368:$Vg1,372:$Vh1}),o($Vf3,$Vg3),{67:$Vd3,71:[1,878]},o($V84,[2,790],{437:879,438:880,126:[1,881]}),o($VK3,[2,789]),o($Vh3,[2,677]),o($Vh3,[2,678]),o($VH,[2,432],{70:[1,882]}),{69:[1,884],70:[1,883]},{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,122:[1,885],128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},o($VV3,$V94,{72:67,158:92,417:886,36:889,81:$V6,120:$Va4,163:$Va,419:$Vb4}),o($VM3,[2,769]),o($Vi3,[2,659]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:890,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VE1,[2,626],{99:[1,891]}),{106:$Vc4,247:$Vd4,337:892},o([4,5,8,47,65,67,69,71,81,85,90,93,97,98,99,104,105,106,107,108,109,110,111,112,113,114,115,116,117,119,120,122,123,124,126,128,130,136,138,140,142,143,144,145,146,147,149,153,154,155,157,159,161,163,172,180,182,194,195,196,197,198,199,200,201,205,212,215,216,218,233,244,245,246,247,248,249,250,251,252,256,257,264,266,267,268,269,270,271,272,273,274,275,276,277,280,282,283,284,285,287,290,291,294,298,307,319,320,324,325,344,347,348,351,353,355,356,364,365,366,368,372,383,385,386,388,389,390,391,392,396,397,400,401,413,419,447,449,450,451],[2,483],{70:[1,895]}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:897,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,295:896,367:168,368:$Vg1,372:$Vh1},o($VH,[2,406],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($VH,[2,526]),o($VH,[2,527]),o($VH,[2,606]),{71:[1,898],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[1,899],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{3:147,4:$V1,5:$V2,36:900,51:144,70:$VM,72:67,81:$V6,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:901,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,158:92,163:$Va,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{71:[1,902]},{67:$V63,71:[1,903]},o($Vn1,[2,378]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:904,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,36:905,51:144,70:$VM,71:[1,907],72:67,81:$V6,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:906,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,158:92,163:$Va,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,381]),o($Vn1,[2,383]),o($Vn1,$Ve4,{239:908,240:$Vf4}),{71:[1,910],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[1,911],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{67:$V63,71:[1,912]},{3:913,4:$V1,5:$V2,154:[1,914]},o($Ve2,[2,558]),o($Vn1,[2,327]),{264:[1,915]},o($Vn1,[2,333]),{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,264:[2,337],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:916,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{4:$Vj3,236:917,338:$Vk3},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:918,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Ve2,[2,580]),o($Vt3,[2,587]),o($Vu3,[2,575]),o($VT3,$VS3),o($Ve2,[2,577]),o($Vx3,[2,582]),o($Vx3,[2,584]),o($Vx3,[2,585]),o($Vx3,[2,586]),o($VV3,[2,408],{67:$Vg4}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:897,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,295:921,367:168,368:$Vg1,372:$Vh1},o($Vh4,[2,416]),o($Vh4,[2,417]),o($VV3,[2,409]),{67:$Vi4,71:[1,922]},o($Vj4,[2,429]),o($VH,[2,653],{406:924,407:925,408:926,266:$VW3,413:[1,927]}),o($Vk4,[2,637]),o($Vk4,[2,638]),{128:[1,929],409:[1,928]},{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,266:[2,634],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},o($Vj2,[2,157]),{3:930,4:$V1,5:$V2},o($VH,[2,511]),o($Vl4,[2,216],{77:931,205:[1,932]}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:933,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vy3,[2,147],{178:934,187:936,179:937,188:938,193:941,67:$Vm4,180:$Vn4,182:$Vo4,194:$Vp4,195:$Vq4,196:$Vr4,197:$Vs4,198:$Vt4,199:$Vu4,200:$Vv4,201:$Vw4}),{3:193,4:$V1,5:$V2,36:390,70:$Vj1,72:67,81:$V6,107:$Vk1,116:$VQ,118:187,119:$VR,126:$VS,155:$VW,158:92,163:$Va,173:188,174:190,175:189,176:191,177:950,183:806,186:192,260:$Vd1,367:168,368:$Vg1,372:$Vh1},o($Vj4,[2,155]),{3:638,4:$V1,5:$V2,88:951,89:636,90:$Vz3},o($VY3,[2,70]),o($VA3,[2,125],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{71:[1,952]},{67:$V63,71:[2,705]},{3:147,4:$V1,5:$V2,51:144,70:$VM,71:[2,698],89:130,91:134,95:953,96:954,100:957,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,214:955,215:[1,956],222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VE3,[2,78]),o($VZ3,[2,701],{127:642,153:$VB3,154:$VC3,155:$VD3}),{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,958],90:$Vt2,92:959,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},o($VZ3,[2,702],{127:642,153:$VB3,154:$VC3,155:$VD3}),{71:[1,960],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[1,961]},o($VE3,[2,98]),{67:$V14,71:[1,962]},o($VE3,[2,100]),{67:$V63,71:[1,963]},{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,964],90:$Vt2,92:965,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,966],90:$Vt2,92:967,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,968],90:$Vt2,92:969,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,970],90:$Vt2,92:971,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{67:$Vx4,71:[1,972]},o($Vy4,[2,121],{367:168,3:411,118:433,132:443,134:444,92:974,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,90:$Vt2,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,368:$Vg1,372:$Vh1}),o($V_3,$V$3,{152:828,137:975}),{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,976],90:$Vt2,92:977,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:411,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,71:[1,978],90:$Vt2,92:979,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{67:$Vx4,71:[1,980]},{67:$Vx4,71:[1,981]},{67:$Vx4,71:[1,982]},{67:$Vx4,71:[1,983]},{71:[1,984],127:642,153:$VB3,154:$VC3,155:$VD3},{67:$VH3,71:[1,985]},{3:411,4:$V1,5:$V2,65:$Vq2,67:[1,986],69:$Vr2,70:$Vs2,90:$Vt2,92:987,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,118:433,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,132:443,134:444,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,367:168,368:$Vg1,372:$Vh1},{3:988,4:$V1,5:$V2},{3:989,4:$V1,5:$V2},o($VH,[2,534]),{3:990,4:$V1,5:$V2},{91:991,107:$VO,256:$Va1},{71:[1,992]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:993,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:638,4:$V1,5:$V2,89:692,116:$VF3,119:$VG3,288:994,289:693},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:995,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{99:[1,996]},o($VH,[2,590],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:997,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:853,4:$V1,5:$V2,70:$V34,106:$V44,381:998},o($Vz4,[2,595]),o($Vz4,[2,596]),o($Vz4,[2,597]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:999,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VI3,[2,247]),o($VI3,[2,249]),o($VI3,[2,251]),o($VI3,[2,253]),o($Vt1,[2,139]),o($VH,[2,506]),{122:[1,1e3]},o($VH,[2,507]),o($V73,[2,477],{236:1001,4:$Vj3,336:[1,1002],338:$Vk3}),o($VH,[2,508]),o($VH,[2,510]),{67:$V63,71:[1,1003]},o($VH,[2,514]),o($VH,[2,518]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:1004,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:1005,4:$V1,5:$V2},o($VH,[2,520]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,95:1006,100:957,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,214:955,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{70:[1,1007]},{3:1008,4:$V1,5:$V2},{69:$VJ3,114:[2,780],429:1009,432:1010},o($V74,[2,779]),o($V73,[2,671]),o($V84,[2,675]),o($V84,[2,791]),{3:1011,4:$V1,5:$V2},{3:864,4:$V1,5:$V2,69:[1,1014],302:1012,309:1013,334:1015},{3:638,4:$V1,5:$V2,89:793,204:1016},{36:1017,72:67,81:$V6,158:92,163:$Va},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1018,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VV3,[2,658]),{3:638,4:$V1,5:$V2,89:692,116:$VF3,119:$VG3,121:1019,288:691,289:693},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:1020,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VV3,[2,663]),o($VE1,[2,627],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1021,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{67:[1,1022],71:[1,1023]},o($Vy4,[2,485]),o($Vy4,[2,486]),{106:$Vc4,247:$Vd4,337:1024},{67:$VA4,71:[1,1025]},o($Vy4,[2,421],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($Vn1,[2,349]),o($Vn1,[2,353]),{71:[1,1027]},{67:$V63,71:[1,1028]},o($Vn1,[2,374]),o($Vn1,[2,376]),{71:[1,1029],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[1,1030]},{67:$V63,71:[1,1031]},o($Vn1,[2,379]),o($Vn1,[2,298]),{70:[1,1032]},o($Vn1,$Ve4,{239:1033,240:$Vf4}),o($Vn1,$Ve4,{239:1034,240:$Vf4}),o($Va2,[2,316]),o($VT3,[2,259]),o($Vn1,[2,256]),o($Vn1,[2,332]),o($Vs3,[2,336],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{67:[1,1036],71:[1,1035]},{67:[1,1038],71:[1,1037],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{3:913,4:$V1,5:$V2},{70:[1,1039],116:$VQ,118:1040,119:$Vo1,126:$VS,155:$VW,175:1041,260:$Vd1,367:168,368:$Vg1,372:$Vh1},{67:$VA4,71:[1,1042]},{36:1044,72:67,81:$V6,123:[1,1043],158:92,163:$Va},{3:638,4:$V1,5:$V2,89:1045},o($VH,[2,630]),o($Vk4,[2,635]),o($Vk4,[2,636]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:489,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,148:1046,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,221:488,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{144:[1,1048],267:[1,1047]},{409:[1,1049]},o($Vj2,[2,158]),o($VB4,[2,235],{78:1050,93:[1,1051]}),{94:[1,1052]},o($VX3,[2,215],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($Vy3,[2,148],{188:938,193:941,187:1053,179:1054,180:$Vn4,182:$Vo4,194:$Vp4,195:$Vq4,196:$Vr4,197:$Vs4,198:$Vt4,199:$Vu4,200:$Vv4,201:$Vw4}),{3:193,4:$V1,5:$V2,70:$Vj1,107:$Vk1,116:$VQ,118:187,119:$VR,126:$VS,155:$VW,173:188,174:190,175:189,176:191,183:1055,186:192,260:$Vd1,367:168,368:$Vg1,372:$Vh1},o($VC4,[2,181]),o($VC4,[2,182]),{3:193,4:$V1,5:$V2,70:[1,1060],116:$VQ,118:1058,119:$VR,126:$VS,155:$VW,173:1057,174:1061,175:1059,176:1062,189:1056,260:$Vd1,367:168,368:$Vg1,372:$Vh1},{181:[1,1063],195:$VD4},{181:[1,1065],195:$VE4},o($VF4,[2,198]),{180:[1,1069],182:[1,1068],193:1067,195:$Vq4,196:$Vr4,197:$Vs4,198:$Vt4,199:$Vu4,200:$Vv4,201:$Vw4},o($VF4,[2,200]),{195:[1,1070]},{182:[1,1072],195:[1,1071]},{182:[1,1074],195:[1,1073]},{182:[1,1075]},{195:[1,1076]},{195:[1,1077]},{67:$Vm4,178:1078,179:937,180:$Vn4,182:$Vo4,187:936,188:938,193:941,194:$Vp4,195:$Vq4,196:$Vr4,197:$Vs4,198:$Vt4,199:$Vu4,200:$Vv4,201:$Vw4},o($VY3,[2,67]),o($VE3,[2,80]),{67:$VG4,71:[1,1079]},{71:[1,1081]},o($VH4,[2,237]),{71:[2,699]},o($VH4,[2,239],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,215:[1,1082],216:[1,1083],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($VE3,[2,79]),o($VZ3,[2,703],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,81]),o($VE3,[2,82]),o($VE3,[2,99]),o($VE3,[2,102]),o($VE3,[2,105]),o($VZ3,[2,707],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,106]),o($VZ3,[2,709],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,107]),o($VZ3,[2,711],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,108]),o($VZ3,[2,715],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,109]),o($V_3,[2,722],{151:1084}),o($V_3,[2,725],{127:642,153:$VB3,154:$VC3,155:$VD3}),{67:$Vx4,71:[1,1085]},o($VE3,[2,111]),o($VZ3,[2,717],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,112]),o($VZ3,[2,719],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,113]),o($VE3,[2,114]),o($VE3,[2,115]),o($VE3,[2,116]),o($VE3,[2,117]),o($VE3,[2,118]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:235,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,125:1086,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($V04,[2,721],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VH,[2,544]),o($VH,[2,540]),o($VH,[2,542]),o($VH,[2,538]),o($V43,[2,63]),o($VH,[2,400],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($V24,[2,403]),o($V24,[2,404],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1087,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VH,[2,591],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($Vz4,[2,594]),{71:[1,1088],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{3:1089,4:$V1,5:$V2},o($V73,[2,487],{335:1090,339:1091,340:1092,317:1100,128:$VI4,161:$VJ4,257:$VK4,294:$VL4,307:$VM4,319:$VN4,320:$VO4,324:$VP4,325:$VQ4}),o($V73,[2,476]),o($VH,[2,513],{69:[1,1103]}),{67:$V63,71:[1,1104]},o($VH,[2,522]),{67:$VG4,71:[1,1105]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,95:1106,100:957,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,214:955,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VL3,[2,673]),{114:[1,1107]},{114:[2,781]},o($V84,[2,676]),{71:[1,1108]},{67:[1,1109],71:[2,447]},{36:1110,72:67,81:$V6,158:92,163:$Va},o($Vy4,[2,473]),{67:$Vi4,71:[1,1111]},o($VH,[2,762],{359:1112,360:1113,65:$VR4}),o($VV3,$V94,{72:67,158:92,278:322,36:889,417:1115,81:$V6,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,120:$Va4,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,163:$Va,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72,419:$Vb4}),o($VV3,[2,661],{67:$V14}),o($VV3,[2,662],{67:$V63}),o($VE1,[2,628],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{106:[1,1116]},o($VS4,[2,480]),{67:[1,1117],71:[1,1118]},o($VS4,[2,484]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1119,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,365]),o($Vn1,[2,366]),o($Vn1,[2,390]),o($Vn1,[2,375]),o($Vn1,[2,377]),{93:$VT4,241:1120,242:1121,243:[1,1122]},o($Vn1,[2,299]),o($Vn1,[2,300]),o($Vn1,[2,287]),{106:[1,1124]},o($Vn1,[2,289]),{106:[1,1125]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:897,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,295:1126,367:168,368:$Vg1,372:$Vh1},o($Vh4,[2,419]),o($Vh4,[2,420]),o($Vh4,[2,415]),{70:$VU3,116:$VQ,118:789,119:$Vo1,126:$VS,155:$VW,175:790,260:$Vd1,293:1127,367:168,368:$Vg1,372:$Vh1},o($VV3,[2,412]),o($Vj4,[2,430]),o($VH,[2,654],{67:$VH3,172:[1,1128]}),{287:$VU4,290:$VV4,410:1129},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1132,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{94:[1,1134],144:[1,1135],267:[1,1133]},o($VW4,[2,243],{79:1136,218:[1,1137]}),{94:[1,1138]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1144,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,206:1139,208:1140,209:$VX4,210:$VY4,211:$VZ4,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VC4,[2,179]),o($VC4,[2,180]),o($Vj4,[2,156]),o($VC4,[2,213],{190:1145,202:[1,1146],203:[1,1147]}),o($V_4,[2,184],{3:1148,4:$V1,5:$V2,69:[1,1149]}),o($V$4,[2,734],{191:1150,69:[1,1151]}),{3:1152,4:$V1,5:$V2,69:[1,1153]},{36:1154,72:67,81:$V6,158:92,163:$Va},o($V_4,[2,192],{3:1155,4:$V1,5:$V2,69:[1,1156]}),o($V_4,[2,195],{3:1157,4:$V1,5:$V2,69:[1,1158]}),{70:[1,1159]},o($VF4,[2,210]),{70:[1,1160]},o($VF4,[2,206]),o($VF4,[2,199]),{195:$VE4},{195:$VD4},o($VF4,[2,201]),o($VF4,[2,202]),{195:[1,1161]},o($VF4,[2,204]),{195:[1,1162]},{195:[1,1163]},o($VF4,[2,208]),o($VF4,[2,209]),{71:[1,1164],179:1054,180:$Vn4,182:$Vo4,187:1053,188:938,193:941,194:$Vp4,195:$Vq4,196:$Vr4,197:$Vs4,198:$Vt4,199:$Vu4,200:$Vv4,201:$Vw4},o($VE3,[2,72]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:957,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,214:1165,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VE3,[2,73]),o($VH4,[2,240]),{217:[1,1166]},o($Vy4,[2,120],{367:168,3:411,118:433,132:443,134:444,92:1167,4:$V1,5:$V2,65:$Vq2,69:$Vr2,70:$Vs2,90:$Vt2,93:$Vu2,97:$Vv2,98:$Vw2,99:$Vx2,104:$Vy2,105:$Vz2,106:$VA2,107:$VB2,108:$VC2,109:$VD2,110:$VE2,111:$VF2,112:$VG2,113:$VH2,114:$VI2,115:$VJ2,116:$VK2,117:$VL2,119:$VM2,120:$VN2,122:$VO2,123:$VP2,124:$VQ2,126:$VR2,128:$VS2,130:$VT2,136:$VU2,138:$VV2,140:$VW2,142:$VX2,143:$VY2,144:$VZ2,145:$V_2,146:$V$2,147:$V03,149:$V13,159:$V23,161:$V33,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,368:$Vg1,372:$Vh1}),o($VE3,[2,110]),{67:$V63,71:[1,1168]},o($V24,[2,405],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($Vz4,[2,598]),o($VH,[2,509]),o($V73,[2,475]),o($V73,[2,488],{317:1100,340:1169,128:$VI4,161:$VJ4,257:$VK4,294:$VL4,307:$VM4,319:$VN4,320:$VO4,324:$VP4,325:$VQ4}),o($V53,[2,490]),{321:[1,1170]},{321:[1,1171]},{3:217,4:$V1,5:$V2,173:1172},o($V53,[2,496],{70:[1,1173]}),{3:231,4:$V1,5:$V2,70:[1,1175],91:225,106:$VN,107:$VO,116:$VQ,126:$VS,155:$VW,170:224,174:229,175:228,225:226,226:227,232:$Vp1,238:1174,254:$V81,255:$V91,256:$Va1,257:$Vb1,260:$Vd1},o($V53,[2,499]),{257:[1,1176]},o($V53,[2,501]),o($V53,[2,502]),{70:[1,1177]},{3:1178,4:$V1,5:$V2},o($VH,$V54,{354:1179,69:$V64}),o($VH,[2,528]),{67:$VG4,71:[1,1180]},o([8,67,71,107,112,126,264,268,450,451],$VC1,{434:280,379:282,3:734,430:1181,424:1182,431:1183,4:$V1,5:$V2,116:$Vr1,119:$Vs1}),o($VH,[2,435],{303:1184,305:1185,306:1186,4:$V05,294:$V15,307:$V25}),o($V35,$V45,{3:864,310:1190,334:1191,311:1192,312:1193,4:$V1,5:$V2,318:$V55}),{71:[2,448]},{69:[1,1195]},o($VH,[2,546]),o($VH,[2,763]),{319:[1,1197],361:[1,1196]},o($VV3,[2,664]),{71:[1,1198]},{106:[1,1199]},o($VS4,[2,481]),o($Vy4,[2,422],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{71:[1,1200],93:$VT4,242:1201},{71:[1,1202]},{94:[1,1203]},{94:[1,1204]},{71:[1,1205]},{71:[1,1206]},{67:$VA4,71:[1,1207]},o($VV3,[2,410],{67:$Vg4}),{3:217,4:$V1,5:$V2,116:$Vr1,119:$Vs1,173:1209,379:1208},o($Vk4,[2,639]),o($Vk4,[2,641]),{120:[1,1210]},{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,267:[1,1211],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{291:$V65,411:1212},{365:[1,1215],412:[1,1214]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1216,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VA3,[2,226],{80:1217,136:[1,1218],142:[1,1220],143:[1,1219]}),{106:$VN,170:1221},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,95:1222,100:957,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,214:955,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vl4,[2,224],{207:1223,67:$V75,212:[1,1225]}),o($V85,[2,218]),{120:[1,1226]},{70:[1,1227]},{70:[1,1228]},o($V85,[2,223],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($VC4,[2,183]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1229,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:638,4:$V1,5:$V2,89:793,204:1230},o($V_4,[2,185]),{3:1231,4:$V1,5:$V2},o($V_4,[2,736],{192:1232,3:1233,4:$V1,5:$V2}),o($V$4,[2,735]),o($V_4,[2,188]),{3:1234,4:$V1,5:$V2},{71:[1,1235]},o($V_4,[2,193]),{3:1236,4:$V1,5:$V2},o($V_4,[2,196]),{3:1237,4:$V1,5:$V2},{36:1238,72:67,81:$V6,158:92,163:$Va},{36:1239,72:67,81:$V6,158:92,163:$Va},o($VF4,[2,203]),o($VF4,[2,205]),o($VF4,[2,207]),o($Vy3,[2,149]),o($VH4,[2,238]),o($VH4,[2,241],{215:[1,1240]}),o($V_3,[2,723],{127:642,153:$VB3,154:$VC3,155:$VD3}),o($VE3,[2,119]),o($V53,[2,489]),o($V53,[2,492]),{325:[1,1241]},o($V53,[2,756],{343:1242,341:1243,70:$V95}),{106:$VN,170:1245},o($V53,[2,497]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1246,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($V53,[2,500]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1247,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VH,[2,515]),o($VH,[2,519]),o($VH,[2,529]),o($V73,[2,670]),o($V73,[2,782]),o($V73,[2,783]),o($VH,[2,431]),o($VH,[2,436],{306:1248,4:$V05,294:$V15,307:$V25}),o($Va5,[2,438]),o($Va5,[2,439]),{99:[1,1249]},{99:[1,1250]},{67:[1,1251],71:[2,446]},o($Vy4,[2,474]),o($Vy4,[2,449]),{161:[1,1259],167:[1,1260],313:1252,314:1253,315:1254,316:1255,317:1256,319:$VN4,320:[1,1257],321:[1,1261],324:[1,1258]},{3:1262,4:$V1,5:$V2},{36:1263,72:67,81:$V6,158:92,163:$Va},{362:[1,1264]},{363:[1,1265]},o($VS4,[2,478]),{71:[1,1266]},o($Vn1,[2,302]),{71:[1,1267]},o($Vn1,[2,303]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1144,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,206:1268,208:1140,209:$VX4,210:$VY4,211:$VZ4,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,95:1269,100:957,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,214:955,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($Vn1,[2,288]),o($Vn1,[2,290]),o($Vh4,[2,418]),{3:1270,4:$V1,5:$V2},o($VH,[2,656],{70:[1,1271]}),{3:638,4:$V1,5:$V2,89:692,116:$VF3,119:$VG3,121:1272,288:691,289:693},{287:$VU4,290:$VV4,410:1273},o($Vk4,[2,643]),{70:[1,1275],123:[1,1274],294:[1,1276]},{144:[1,1278],267:[1,1277]},{144:[1,1280],267:[1,1279]},{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,267:[1,1281],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},o($VA3,[2,64]),{36:1282,72:67,81:$V6,138:[1,1283],158:92,163:$Va,213:[1,1284]},{36:1285,72:67,81:$V6,158:92,163:$Va,213:[1,1286]},{36:1287,72:67,81:$V6,158:92,163:$Va,213:[1,1288]},o($VW4,[2,245],{219:1289,220:[1,1290]}),o($VB4,[2,236],{67:$VG4}),o($Vl4,[2,217]),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1144,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,208:1291,209:$VX4,210:$VY4,211:$VZ4,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1292,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{70:[1,1293]},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1144,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,206:1294,208:1140,209:$VX4,210:$VY4,211:$VZ4,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1144,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,206:1295,208:1140,209:$VX4,210:$VY4,211:$VZ4,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},o($VC4,[2,211],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),o($VC4,[2,212],{67:$Vi4}),o($V_4,[2,186]),o($V_4,[2,187]),o($V_4,[2,737]),o($V_4,[2,189]),{3:1296,4:$V1,5:$V2,69:[1,1297]},o($V_4,[2,194]),o($V_4,[2,197]),{71:[1,1298]},{71:[1,1299]},o($VH4,[2,242]),{3:217,4:$V1,5:$V2,173:1300},o($V53,[2,494]),o($V53,[2,757]),{3:1301,4:$V1,5:$V2},{67:[1,1302]},{71:[1,1303],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},{71:[1,1304],90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},o($Va5,[2,437]),{3:1305,4:$V1,5:$V2},{106:$VN,170:1306},o($V35,$V45,{312:1193,311:1307,318:$V55}),o($V73,[2,451]),o($V73,[2,452]),o($V73,[2,453]),o($V73,[2,454]),o($V73,[2,455]),{321:[1,1308]},{321:[1,1309]},{3:1311,4:$V1,5:$V2,70:[2,752],333:1310},{3:1312,4:$V1,5:$V2},{3:1313,4:$V1,5:$V2},o($V35,[2,457]),o($VH,[2,760],{358:1314,360:1315,65:$VR4}),o($VH,[2,547]),o($VH,[2,548],{318:[1,1316]}),o($VS4,[2,479]),o($Vn1,[2,304]),o([71,93],[2,305],{67:$V75}),{67:$VG4,71:[2,306]},o($VH,[2,655]),{3:638,4:$V1,5:$V2,89:793,204:1317},o($Vk4,[2,642],{67:$V14}),o($Vk4,[2,640]),{70:$VU3,116:$VQ,118:789,119:$Vo1,126:$VS,155:$VW,175:790,260:$Vd1,293:1318,367:168,368:$Vg1,372:$Vh1},{3:638,4:$V1,5:$V2,89:793,204:1319},{123:[1,1320]},{291:$V65,411:1321},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1322,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{291:$V65,411:1323},{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1324,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{291:$V65,411:1325},o($VA3,[2,227]),{36:1326,72:67,81:$V6,158:92,163:$Va,213:[1,1327]},{36:1328,72:67,81:$V6,158:92,163:$Va},o($VA3,[2,229]),{36:1329,72:67,81:$V6,158:92,163:$Va},o($VA3,[2,230]),{36:1330,72:67,81:$V6,158:92,163:$Va},o($VW4,[2,244]),{106:$VN,170:1331},o($V85,[2,219]),o($Vl4,[2,225],{278:322,90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72}),{3:147,4:$V1,5:$V2,51:144,70:$VM,89:130,91:134,100:1144,106:$VN,107:$VO,112:$VP,116:$VQ,118:141,119:$VR,126:$VS,128:$VT,132:146,153:$VU,154:$VV,155:$VW,170:132,174:128,175:136,176:137,206:1332,208:1140,209:$VX4,210:$VY4,211:$VZ4,222:131,223:127,224:129,225:133,226:135,227:138,228:139,229:140,230:142,232:$VX,233:$Vb,234:$VY,235:$VZ,237:$V_,244:$V$,245:$V01,246:$V11,247:$V21,248:$V31,249:$V41,250:$V51,251:$V61,252:$V71,254:$V81,255:$V91,256:$Va1,257:$Vb1,258:$Vc1,260:$Vd1,261:$Ve1,270:$Vf1,367:168,368:$Vg1,372:$Vh1},{67:$V75,71:[1,1333]},{67:$V75,71:[1,1334]},o($V_4,[2,190]),{3:1335,4:$V1,5:$V2},{3:1336,4:$V1,5:$V2,69:[1,1337]},{3:1338,4:$V1,5:$V2,69:[1,1339]},o($V53,[2,754],{342:1340,341:1341,70:$V95}),{71:[1,1342]},{106:$VN,170:1343},o($V53,[2,498]),o($V53,[2,458]),o($Va5,[2,440]),o($Va5,[2,441]),o($Vy4,[2,450]),{3:1345,4:$V1,5:$V2,70:[2,748],322:1344},{70:[1,1346]},{70:[1,1347]},{70:[2,753]},{70:[1,1348]},{70:[1,1349]},o($VH,[2,545]),o($VH,[2,761]),o($V35,$V45,{312:1193,311:1350,318:$V55}),{67:$Vi4,71:[1,1351]},o($Vk4,[2,649],{67:$Vg4}),{67:$Vi4,71:[1,1352]},o($Vk4,[2,651]),o($Vk4,[2,644]),{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,267:[1,1353],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},o($Vk4,[2,647]),{90:$VI1,97:$VJ1,98:$VK1,99:$V83,108:$VM1,111:$VN1,113:$VO1,114:$VP1,115:$VQ1,128:$VR1,144:$VS1,145:$VT1,153:$VU1,154:$VV1,267:[1,1354],269:$VW1,270:$VX1,271:$VY1,272:$VZ1,273:$V_1,274:$V$1,275:$V02,276:$V12,277:$V22,278:322,280:$V32,282:$V42,283:$V52,284:$V62,285:$V72},o($Vk4,[2,645]),o($VA3,[2,228]),{36:1355,72:67,81:$V6,158:92,163:$Va},o($VA3,[2,231]),o($VA3,[2,233]),o($VA3,[2,234]),o($VW4,[2,246]),{67:$V75,71:[1,1356]},o($V85,[2,221]),o($V85,[2,222]),o($V_4,[2,191]),o($VC4,[2,151]),{3:1357,4:$V1,5:$V2},o($VC4,[2,153]),{3:1358,4:$V1,5:$V2},o($V53,[2,493]),o($V53,[2,755]),o($V53,[2,491]),{71:[1,1359]},{70:[1,1360]},{70:[2,749]},{3:1362,4:$V1,5:$V2,107:$Vb5,323:1361},{3:638,4:$V1,5:$V2,89:793,204:1364},{3:638,4:$V1,5:$V2,89:793,204:1365},{3:638,4:$V1,5:$V2,89:793,204:1366},o($VH,[2,549]),o($VH,[2,657]),{123:[1,1367],294:[1,1368]},{291:$V65,411:1369},{287:$VU4,290:$VV4,410:1370},o($VA3,[2,232]),o($V85,[2,220]),o($VC4,[2,152]),o($VC4,[2,154]),o($V53,[2,495]),{3:1362,4:$V1,5:$V2,107:$Vb5,323:1371},{67:$Vc5,71:[1,1372]},o($Vy4,[2,469]),o($Vy4,[2,470]),{67:$Vi4,71:[1,1374]},{67:$Vi4,71:[1,1375]},{67:$Vi4,71:[1,1376]},{70:$VU3,116:$VQ,118:789,119:$Vo1,126:$VS,155:$VW,175:790,260:$Vd1,293:1377,367:168,368:$Vg1,372:$Vh1},{123:[1,1378]},o($Vk4,[2,646]),o($Vk4,[2,648]),{67:$Vc5,71:[1,1379]},{325:[1,1380]},{3:1381,4:$V1,5:$V2,107:[1,1382]},o($V73,[2,466]),o($V73,[2,467]),o($V73,[2,468]),o($Vk4,[2,650],{67:$Vg4}),o($Vk4,[2,652]),o($V73,[2,459]),{3:217,4:$V1,5:$V2,173:1383},o($Vy4,[2,471]),o($Vy4,[2,472]),o($Vd5,[2,750],{326:1384,328:1385,70:[1,1386]}),o($V73,[2,462],{327:1387,329:1388,202:[1,1389]}),o($Vd5,[2,751]),{3:1362,4:$V1,5:$V2,107:$Vb5,323:1390},o($V73,[2,460]),{202:[1,1392],330:1391},{290:[1,1393]},{67:$Vc5,71:[1,1394]},o($V73,[2,463]),{287:[1,1395]},{331:[1,1396]},o($Vd5,[2,461]),{331:[1,1397]},{332:[1,1398]},{332:[1,1399]},{202:[2,464]},o($V73,[2,465])],defaultActions:{97:[2,3],171:[2,307],172:[2,308],173:[2,309],174:[2,310],175:[2,311],176:[2,312],177:[2,313],178:[2,314],179:[2,315],184:[2,631],281:[2,777],288:[2,771],335:[2,738],336:[2,739],389:[2,632],455:[2,712],456:[2,713],560:[2,397],561:[2,398],562:[2,399],615:[2,633],956:[2,699],1010:[2,781],1110:[2,448],1311:[2,753],1345:[2,749],1398:[2,464]},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 233;break;case 1:return 260;break;case 2:return 368;break;case 3:return 5;break;case 4:return 5;break;case 5:return 256;break;case 6:return 256;break;case 7:return 107;break;case 8:return 107;break;case 9:return;break;case 10:break;case 11:return 145;break;case 12:return 144;break;case 13:yy_.yytext="VALUE";return 163;break;case 14:yy_.yytext="ROW";return 163;break;case 15:yy_.yytext="COLUMN";return 163;break;case 16:yy_.yytext="MATRIX";return 163;break;case 17:yy_.yytext="INDEX";return 163;break;case 18:yy_.yytext="RECORDSET";return 163;break;case 19:yy_.yytext="TEXT";return 163;break;case 20:yy_.yytext="SELECT";return 163;break;case 21:return"ABSOLUTE";break;case 22:return 332;break;case 23:return 349;break;case 24:return 251;break;case 25:return 138;break;case 26:return 347;break;case 27:return 144;break;case 28:return 201;break;case 29:return 140;break;case 30:return 181;break;case 31:return 252;break;case 32:return 69;break;case 33:return 366;break;case 34:return 215;break;case 35:return 351;break;case 36:return 307;break;case 37:return 248;break;case 38:return 386;break;case 39:return 282;break;case 40:return 390;break;case 41:return 283;break;case 42:return 269;break;case 43:return 94;break;case 44:return 261;break;case 45:return 235;break;case 46:return 319;break;case 47:return 105;break;case 48:return"CLOSE";break;case 49:return 216;break;case 50:return 164;break;case 51:return 164;break;case 52:return 383;break;case 53:return 318;break;case 54:return 419;break;case 55:return 389;break;case 56:return 237;break;case 57:return 213;break;case 58:return 245;break;case 59:return 298;break;case 60:return 180;break;case 61:return 211;break;case 62:return 232;break;case 63:return"CURSOR";break;case 64:return 352;break;case 65:return 397;break;case 66:return 294;break;case 67:return 290;break;case 68:return"DELETED";break;case 69:return 215;break;case 70:return 353;break;case 71:return 159;break;case 72:return 344;break;case 73:return 396;break;case 74:return 110;break;case 75:return 264;break;case 76:return 338;break;case 77:return 268;break;case 78:return 143;break;case 79:return 258;break;case 80:return 12;break;case 81:return 255;break;case 82:return"FETCH";break;case 83:return 249;break;case 84:return 324;break;case 85:return 157;break;case 86:return 451;break;case 87:return 421;break;case 88:return 205;break;case 89:return 209;break;case 90:return 212;break;case 91:return 364;break;case 92:return 130;break;case 93:return 307;break;case 94:return 284;break;case 95:return 280;break;case 96:return 167;break;case 97:return 196;break;case 98:return 291;break;case 99:return"INSERTED";break;case 100:return 142;break;case 101:return 172;break;case 102:return 195;break;case 103:return 321;break;case 104:return 250;break;case 105:return"LET";break;case 106:return 197;break;case 107:return 90;break;case 108:return 218;break;case 109:return 409;break;case 110:return 165;break;case 111:return 247;break;case 112:return 401;break;case 113:return 246;break;case 114:return 143;break;case 115:return 350;break;case 116:return 194;break;case 117:return"NEXT";break;case 118:return 234;break;case 119:return 217;break;case 120:return 331;break;case 121:return 128;break;case 122:return 257;break;case 123:return 382;break;case 124:return 202;break;case 125:return 362;break;case 126:return 220;break;case 127:return"OPEN";break;case 128:return 363;break;case 129:return 145;break;case 130:return 93;break;case 131:return 182;break;case 132:return 240;break;case 133:return 146;break;case 134:return 243;break;case 135:return 452;break;case 136:return 14;break;case 137:return 320;break;case 138:return 391;break;case 139:return"PRIOR";break;case 140:return 13;break;case 141:return 361;break;case 142:return 168;break;case 143:return"REDUCE";break;case 144:return 325;break;case 145:return"RELATIVE";break;case 146:return 85;break;case 147:return 348;break;case 148:return 149;break;case 149:return 392;break;case 150:return"RESTORE";break;case 151:return 147;break;case 152:return 147;break;case 153:return 198;break;case 154:return 385;break;case 155:return 210;break;case 156:return 124;break;case 157:return 352;break;case 158:return 81;break;case 159:return 200;break;case 160:return 120;break;case 161:return 120;break;case 162:return 356;break;case 163:return 286;break;case 164:return 365;break;case 165:return"STRATEGY";break;case 166:return"STORE";break;case 167:return 244;break;case 168:return 304;break;case 169:return 304;break;case 170:return 412;break;case 171:return 308;break;case 172:return 308;break;case 173:return 166;break;case 174:return 267;break;case 175:return"TIMEOUT";break;case 176:return 122;break;case 177:return 169;break;case 178:return 384;break;case 179:return 384;break;case 180:return 254;break;case 181:return 400;break;case 182:return 136;break;case 183:return 161;break;case 184:return 287;break;case 185:return 355;break;case 186:return 203;break;case 187:return 123;break;case 188:return 109;break;case 189:return 357;break;case 190:return 266;break;case 191:return 104;break;case 192:return 388;break;case 193:return 65;break;case 194:return 384;break;case 195:return 106;break;case 196:return 106;break;case 197:return 97;break;case 198:return 112;break;case 199:return 153;break;case 200:return 270;break;case 201:return 154;break;case 202:return 108;break;case 203:return 113;break;case 204:return 277;break;case 205:return 274;break;case 206:return 276;break;case 207:return 273;break;case 208:return 271;break;case 209:return 114;break;case 210:return 272;break;case 211:return 275;break;case 212:return 115;break;case 213:return 99;break;case 214:return 275;break;case 215:return 70;break;case 216:return 71;break;case 217:return 119;break;case 218:return 372;break;case 219:return 374;break;case 220:return 376;break;case 221:return 447;break;case 222:return 449;break;case 223:return 117;break;case 224:return 67;break;case 225:return 285;break;case 226:return 126;break;case 227:return 450;break;case 228:return 116;break;case 229:return 155;break;case 230:return 111;break;case 231:return 98;break;case 232:return 4;break;case 233:return 8;break;case 234:return"INVALID";break}},rules:[/^(?:``([^\`])+``)/i,/^(?:\[\?\])/i,/^(?:@\[)/i,/^(?:\[([^\]])*?\])/i,/^(?:`([^\`])*?`)/i,/^(?:N(['](\\.|[^']|\\')*?['])+)/i,/^(?:X(['](\\.|[^']|\\')*?['])+)/i,/^(?:(['](\\.|[^']|\\')*?['])+)/i,/^(?:(["](\\.|[^"]|\\")*?["])+)/i,/^(?:--(.*?)($|\r\n|\r|\n))/i,/^(?:\s+)/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:VALUE\s+OF\s+SELECT\b)/i,/^(?:ROW\s+OF\s+SELECT\b)/i,/^(?:COLUMN\s+OF\s+SELECT\b)/i,/^(?:MATRIX\s+OF\s+SELECT\b)/i,/^(?:INDEX\s+OF\s+SELECT\b)/i,/^(?:RECORDSET\s+OF\s+SELECT\b)/i,/^(?:TEXT\s+OF\s+SELECT\b)/i,/^(?:SELECT\b)/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,/^(?: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,/^(?:CHECK\b)/i,/^(?:CLASS\b)/i,/^(?:CLOSE\b)/i,/^(?:COLLATE\b)/i,/^(?:COLUMN\b)/i,/^(?:COLUMNS\b)/i,/^(?:COMMIT\b)/i,/^(?:CONSTRAINT\b)/i,/^(?:CONTENT\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(S)?)/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,/^(?:ECHO\b)/i,/^(?:EDGE\b)/i,/^(?:END\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,/^(?:GRAPH\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,/^(?:LET\b)/i,/^(?:LEFT\b)/i,/^(?:LIKE\b)/i,/^(?:LIMIT\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,/^(?:ONLY\b)/i,/^(?:OFFSET\b)/i,/^(?:OPEN\b)/i,/^(?:OPTION\b)/i,/^(?:OR\b)/i,/^(?:ORDER\b)/i,/^(?:OUTER\b)/i,/^(?:OVER\b)/i,/^(?:PATH\b)/i,/^(?:PARTITION\b)/i,/^(?:PERCENT\b)/i,/^(?:PLAN\b)/i,/^(?:PRIMARY\b)/i,/^(?:PRINT\b)/i,/^(?:PRIOR\b)/i,/^(?:QUERY\b)/i,/^(?:READ\b)/i,/^(?:RECORDSET\b)/i,/^(?:REDUCE\b)/i,/^(?:REFERENCES\b)/i,/^(?:RELATIVE\b)/i,/^(?:REMOVE\b)/i,/^(?:RENAME\b)/i,/^(?:REPEAT\b)/i,/^(?:REQUIRE\b)/i,/^(?:RESTORE\b)/i,/^(?:RETURN\b)/i,/^(?:RETURNS\b)/i,/^(?:RIGHT\b)/i,/^(?:ROLLBACK\b)/i,/^(?:ROLLUP\b)/i,/^(?:ROW\b)/i,/^(?:SCHEMA(S)?)/i,/^(?:SEARCH\b)/i,/^(?:SEMI\b)/i,/^(?:SET\b)/i,/^(?:SETS\b)/i,/^(?:SHOW\b)/i,/^(?:SOME\b)/i,/^(?:SOURCE\b)/i,/^(?:STRATEGY\b)/i,/^(?:STORE\b)/i,/^(?:SUM\b)/i,/^(?:TABLE\b)/i,/^(?:TABLES\b)/i,/^(?:TARGET\b)/i,/^(?:TEMP\b)/i,/^(?:TEMPORARY\b)/i,/^(?:TEXTSTRING\b)/i,/^(?:THEN\b)/i,/^(?:TIMEOUT\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(S)?)/i,/^(?:VERTEX\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,/^(?:\$)/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,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234],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 n2u(s){return"(y="+s+",y===y?y:undefined)"}function und(s,r){return"(y="+s+',typeof y=="undefined"?undefined:'+r+")"}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"||typeof Meteor!="undefined"&&Meteor.isServer){if(typeof Meteor!="undefined"){var fs=Npm.require("fs")}else{var fs=require("fs")}if(typeof path=="undefined"){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"||typeof Meteor!="undefined"&&Meteor.isServer){if(typeof Meteor!="undefined"){var fs=Npm.require("fs")}else{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{if(isIE()==9){var ndata=data.replace(/\r\n/g,"&#A;&#D;");ndata=ndata.replace(/\n/g,"&#D;");ndata=ndata.replace(/\t/g," ");var testlink=window.open("about:blank","_blank");testlink.document.write(ndata);testlink.document.close();testlink.document.execCommand("SaveAs",false,path);testlink.close()}else{var blob=new Blob([data],{type:"text/plain;charset=utf-8"});saveAs(blob,path);if(cb)res=cb(res)}}}return res};function isIE(){var myNav=navigator.userAgent.toLowerCase();return myNav.indexOf("msie")!=-1?parseInt(myNav.split("msie")[1]):false}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;i0){if(selectors&&selectors[0]&&selectors[0].srchid=="PROP"&&selectors[0].args&&selectors[0].args[0]){if(selectors[0].args[0].toUpperCase()=="XML"){stope.mode="XML";selectors.shift()}else if(selectors[0].args[0].toUpperCase()=="HTML"){stope.mode="HTML";selectors.shift()}else if(selectors[0].args[0].toUpperCase()=="JSON"){stope.mode="JSON";selectors.shift()}}if(selectors.length>0&&selectors[0].srchid=="VALUE"){stope.value=true;selectors.shift()}}if(this.from instanceof yy.Column){var dbid=this.from.databaseid||databaseid;fromdata=alasql.databases[dbid].tables[this.from.columnid].data}else if(this.from instanceof yy.FuncValue&&alasql.from[this.from.funcid.toUpperCase()]){var args=this.from.args.map(function(arg){var as=arg.toJavaScript();var fn=new Function("params,alasql","var y;return "+as).bind(this);return fn(params,alasql)});fromdata=alasql.from[this.from.funcid.toUpperCase()].apply(this,args)}else if(typeof this.from=="undefined"){fromdata=alasql.databases[databaseid].objects}else{var fromfn=new Function("params,alasql","var y;return "+this.from.toJavaScript());fromdata=fromfn(params,alasql);if(typeof Mongo=="object"&&typeof Mongo.Collection!="object"&&fromdata instanceof Mongo.Collection){fromdata=fromdata.find().fetch()}}if(typeof selectors!="undefined"&&selectors.length>0){if(false){selectors.forEach(function(selector){if(selector.srchid=="TO"){alasql.vars[selector.args[0]]=[]}})}res=processSelector(selectors,0,fromdata)}else{res=fromdata}if(this.into){var a1,a2;if(typeof this.into.args[0]!="undefined"){a1=new Function("params,alasql","var y;return "+this.into.args[0].toJavaScript())(params,alasql)}if(typeof this.into.args[1]!="undefined"){a2=new Function("params,alasql","var y;return "+this.into.args[1].toJavaScript())(params,alasql)}res=alasql.into[this.into.funcid.toUpperCase()](a1,a2,res,[],cb)}else{if(stope.value&&res.length>0)res=res[0];if(cb)res=cb(res)}return res;function processSelector(selectors,sidx,value){var sel=selectors[sidx];var SECURITY_BREAK=1e5;if(sel.selid){if(sel.selid=="PATH"){var queue=[{node:value,stack:[]}];var visited={};var path=[];var objects=alasql.databases[alasql.useid].objects;while(queue.length>0){var q=queue.shift();var node=q.node;var stack=q.stack;var r=processSelector(sel.args,0,node);if(r.length>0){if(sidx+1+1>selectors.length){return stack}else{var rv=[];if(stack&&stack.length>0){stack.forEach(function(stv){rv=rv.concat(processSelector(selectors,sidx+1,stv))})}return rv}}else{if(typeof visited[node.$id]!="undefined"){continue}else{visited[node.$id]=true;if(node.$out&&node.$out.length>0){node.$out.forEach(function(edgeid){var edge=objects[edgeid];var stack2=stack.concat(edge);stack2.push(objects[edge.$out[0]]);queue.push({node:objects[edge.$out[0]],stack:stack2})})}}}}return[]}if(sel.selid=="NOT"){var nest=processSelector(sel.args,0,value);if(nest.length>0){return[]}else{if(sidx+1+1>selectors.length){return[value]}else{return processSelector(selectors,sidx+1,value)}}}else if(sel.selid=="DISTINCT"){if(typeof sel.args=="undefined"||sel.args.length==0){var nest=distinctArray(value)}else{var nest=processSelector(sel.args,0,value)}if(nest.length==0){return[]}else{var res=distinctArray(nest);if(sidx+1+1>selectors.length){return res}else{return processSelector(selectors,sidx+1,res)}}}else if(sel.selid=="AND"){var res=true;sel.args.forEach(function(se){res=res&&processSelector(se,0,value).length>0});if(!res){return[]}else{if(sidx+1+1>selectors.length){return[value]}else{return processSelector(selectors,sidx+1,value)}}}else if(sel.selid=="OR"){var res=false;sel.args.forEach(function(se){res=res||processSelector(se,0,value).length>0});if(!res){return[]}else{if(sidx+1+1>selectors.length){return[value]}else{return processSelector(selectors,sidx+1,value)}}}else if(sel.selid=="ALL"){var nest=processSelector(sel.args[0],0,value);if(nest.length==0){return[]}else{if(sidx+1+1>selectors.length){return nest}else{return processSelector(selectors,sidx+1,nest)}}}else if(sel.selid=="ANY"){var nest=processSelector(sel.args[0],0,value);if(nest.length==0){return[]}else{if(sidx+1+1>selectors.length){return[nest[0]]}else{return processSelector(selectors,sidx+1,[nest[0]])}}}else if(sel.selid=="UNIONALL"){var nest=[];sel.args.forEach(function(se){nest=nest.concat(processSelector(se,0,value))});if(nest.length==0){return[]}else{if(sidx+1+1>selectors.length){return nest}else{return processSelector(selectors,sidx+1,nest)}}}else if(sel.selid=="UNION"){var nest=[];sel.args.forEach(function(se){nest=nest.concat(processSelector(se,0,value))});var nest=distinctArray(nest);if(nest.length==0){return[]}else{if(sidx+1+1>selectors.length){return nest}else{return processSelector(selectors,sidx+1,nest)}}}else if(sel.selid=="IF"){var nest=processSelector(sel.args,0,value);if(nest.length==0){return[]}else{if(sidx+1+1>selectors.length){return[value]}else{return processSelector(selectors,sidx+1,value)}}}else if(sel.selid=="REPEAT"){var lmin=sel.args[0].value;if(!sel.args[1]){var lmax=lmin}else{var lmax=sel.args[1].value}if(sel.args[2]){var lvar=sel.args[2].variable}else{var lvar}var lsel=sel.sels;var retval=[];if(lmin==0){if(sidx+1+1>selectors.length){retval=[value]}else{if(lvar)alasql.vars[lvar]=0;retval=retval.concat(processSelector(selectors,sidx+1,value))}}if(lmax>0){var nests=[{value:value,lvl:1}];var i=0;while(nests.length>0){var nest=nests[0];nests.shift();if(nest.lvl<=lmax){if(lvar)alasql.vars[lvar]=nest.lvl;var nest1=processSelector(sel.sels,0,nest.value);nest1.forEach(function(n){nests.push({value:n,lvl:nest.lvl+1})});if(nest.lvl>=lmin){if(sidx+1+1>selectors.length){retval=retval.concat(nest1)}else{nest1.forEach(function(n){retval=retval.concat(processSelector(selectors,sidx+1,n))})}}}i++;if(i>SECURITY_BREAK){throw new Error("Security brake. Number of iterations = "+i)}}}return retval}else if(sel.selid=="TO"){var oldv=alasql.vars[sel.args[0]];var newv=[];if(typeof oldv!="undefined"){newv=oldv.slice(0)}else{newv=[]}newv.push(value);if(sidx+1+1>selectors.length){return[value]}else{alasql.vars[sel.args[0]]=newv;var r1=processSelector(selectors,sidx+1,value);alasql.vars[sel.args[0]]=oldv;return r1}}else if(sel.selid=="ARRAY"){var nest=processSelector(sel.args,0,value);if(nest.length>0){var val=nest}else{return[]}if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="SUM"){var nest=processSelector(sel.args,0,value);if(nest.length>0){var val=nest.reduce(function(sum,current){return sum+current},0)}else{return[]}if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="AVG"){var nest=processSelector(sel.args,0,value);if(nest.length>0){var val=nest.reduce(function(sum,current){return sum+current},0)/nest.length}else{return[]}if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="COUNT"){var nest=processSelector(sel.args,0,value);if(nest.length>0){var val=nest.length}else{return[]}if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="FIRST"){var nest=processSelector(sel.args,0,value);if(nest.length>0)var val=nest[0];else return[];if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="LAST"){var nest=processSelector(sel.args,0,value);if(nest.length>0)var val=nest[nest.length-1];else return[];if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="MIN"){var nest=processSelector(sel.args,0,value);if(nest.length==0)return[];var val=nest.reduce(function(min,current){return Math.min(min,current)},Infinity);if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="MAX"){var nest=processSelector(sel.args,0,value);if(nest.length==0)return[];var val=nest.reduce(function(max,current){return Math.max(max,current)},-Infinity);if(sidx+1+1>selectors.length){return[val]}else{return processSelector(selectors,sidx+1,val)}}else if(sel.selid=="PLUS"){var retval=[];var nests=processSelector(sel.args,0,value).slice();if(sidx+1+1>selectors.length){retval=retval.concat(nests)}else{nests.forEach(function(n){retval=retval.concat(processSelector(selectors,sidx+1,n))})}var i=0;while(nests.length>0){var nest=nests.shift();nest=processSelector(sel.args,0,nest);nests=nests.concat(nest);if(sidx+1+1>selectors.length){retval=retval.concat(nest)}else{nest.forEach(function(n){var rn=processSelector(selectors,sidx+1,n);retval=retval.concat(rn)})}i++;if(i>SECURITY_BREAK){throw new Error("Security brake. Number of iterations = "+i)}}return retval}else if(sel.selid=="STAR"){var retval=[];retval=processSelector(selectors,sidx+1,value);var nests=processSelector(sel.args,0,value).slice();if(sidx+1+1>selectors.length){retval=retval.concat(nests)}else{nests.forEach(function(n){retval=retval.concat(processSelector(selectors,sidx+1,n))})}var i=0;while(nests.length>0){var nest=nests[0];nests.shift();nest=processSelector(sel.args,0,nest);nests=nests.concat(nest);if(sidx+1+1>selectors.length){}else{nest.forEach(function(n){retval=retval.concat(processSelector(selectors,sidx+1,n))})}i++;if(i>SECURITY_BREAK){throw new Error("Security brake. Number of iterations = "+i)}}return retval}else if(sel.selid=="QUESTION"){var retval=[];retval=retval.concat(processSelector(selectors,sidx+1,value));var nest=processSelector(sel.args,0,value);if(sidx+1+1>selectors.length){}else{nest.forEach(function(n){retval=retval.concat(processSelector(selectors,sidx+1,n))})}return retval}else if(sel.selid=="WITH"){var nest=processSelector(sel.args,0,value);if(nest.length==0){return[]}else{var r={status:1,values:nest}}}else if(sel.selid=="ROOT"){if(sidx+1+1>selectors.length){return[value]}else{return processSelector(selectors,sidx+1,fromdata)}}else{throw new Error("Wrong selector "+sel.selid)}}else if(sel.srchid){var r=alasql.srch[sel.srchid.toUpperCase()](value,sel.args,stope,params)}else{throw new Error("Selector not found")}if(typeof r=="undefined"){r={status:1,values:[value]}}var res=[];if(r.status==1){var arr=r.values;if(sidx+1+1>selectors.length){res=arr}else{for(var i=0;i0){return{status:1,values:arr}}else{return{status:-1,values:[]}}}else{if(typeof val!="object"||val===null||typeof args!="object"||typeof val[args[0]]=="undefined"){return{status:-1,values:[]}}else{return{status:1,values:[val[args[0]]]}}}};alasql.srch.APROP=function(val,args,stope){if(typeof val!="object"||val===null||typeof args!="object"||typeof val[args[0]]=="undefined"){return{status:1,values:[undefined]}}else{return{status:1,values:[val[args[0]]]}}};alasql.srch.ORDERBY=function(val,args,stope){var res=val.sort(compileSearchOrder(args));return{status:1,values:res}};alasql.srch.EQ=function(val,args,stope,params){var exprs=args[0].toJavaScript("x","");var exprfn=new Function("x,alasql,params","return "+exprs);if(val==exprfn(val,alasql,params)){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.LIKE=function(val,args,stope,params){var exprs=args[0].toJavaScript("x","");var exprfn=new Function("x,alasql,params","return "+exprs);if(val.toUpperCase().match(new RegExp("^"+exprfn(val,alasql,params).toUpperCase().replace(/%/g,".*")+"$"),"g")){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.ATTR=function(val,args,stope){if(stope.mode=="XML"){if(typeof args=="undefined"){return{status:1,values:[val.attributes]}}else{if(typeof val=="object"&&typeof val.attributes=="object"&&typeof val.attributes[args[0]]!="undefined"){return{status:1,values:[val.attributes[args[0]]]}}else{return{status:-1,values:[]}}}}else{throw new Error("ATTR is not using in usual mode")}};alasql.srch.CONTENT=function(val,args,stope){if(stope.mode=="XML"){return{status:1,values:[val.content]}}else{throw new Error("ATTR is not using in usual mode")}};alasql.srch.SHARP=function(val,args,stope){var obj=alasql.databases[alasql.useid].objects[args[0]];if(typeof val!="undefined"&&val===obj){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.PARENT=function(val,args,stope){console.log("PARENT");return{status:-1,values:[]}};alasql.srch.CHILD=function(val,args,stope){if(typeof val=="object"){if(val instanceof Array){return{status:1,values:val}}else{if(stope.mode=="XML"){return{status:1,values:Object.keys(val.children).map(function(key){return val.children[key]})}}else{return{status:1,values:Object.keys(val).map(function(key){return val[key]})}}}}else{return{status:1,values:[]}}};alasql.srch.KEYS=function(val,args){if(typeof val=="object"&&val!==null){return{status:1,values:Object.keys(val)}}else{return{status:1,values:[]}}};alasql.srch.WHERE=function(val,args){var exprs=args[0].toJavaScript("x","");var exprfn=new Function("x,alasql","return "+exprs);if(exprfn(val,alasql)){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.NAME=function(val,args){if(val.name==args[0]){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.CLASS=function(val,args){if(val.$class==args){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.VERTEX=function(val,args){if(val.$node=="VERTEX"){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.INSTANCEOF=function(val,args){if(val instanceof alasql.fn[args[0]]){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.EDGE=function(val,args){if(val.$node=="EDGE"){return{status:1,values:[val]}}else{return{status:-1,values:[]}}};alasql.srch.EX=function(val,args,stope,params){var exprs=args[0].toJavaScript("x","");var exprfn=new Function("x,alasql,params","return "+exprs);return{status:1,values:[exprfn(val,alasql,params)]}};alasql.srch.RETURN=function(val,args,stope,params){var res={};if(args&&args.length>0){args.forEach(function(arg){var exprs=arg.toJavaScript("x","");var exprfn=new Function("x,alasql,params","return "+exprs);if(typeof arg.as=="undefined")arg.as=arg.toString();res[arg.as]=exprfn(val,alasql,params)})}return{status:1,values:[res]}};alasql.srch.REF=function(val,args){return{status:1,values:[alasql.databases[alasql.useid].objects[val]]}};alasql.srch.OUT=function(val,args){if(val.$out&&val.$out.length>0){var res=val.$out.map(function(v){return alasql.databases[alasql.useid].objects[v]});return{status:1,values:res}}else{return{status:-1,values:[]}}};alasql.srch.IN=function(val,args){if(val.$in&&val.$in.length>0){var res=val.$in.map(function(v){return alasql.databases[alasql.useid].objects[v]});return{status:1,values:res}}else{return{status:-1,values:[]}}};alasql.srch.AS=function(val,args){alasql.vars[args[0]]=val;return{status:1,values:[val]}};alasql.srch.AT=function(val,args){var v=alasql.vars[args[0]];return{status:1,values:[v]}};alasql.srch.CLONEDEEP=function(val,args){var z=cloneDeep(val);return{status:1,values:[z]}};alasql.srch.SET=function(val,args,stope,params){var s=args.map(function(st){if(st.method=="@"){return"alasql.vars['"+st.variable+"']="+st.expression.toJavaScript("x","")}else if(st.method=="$"){return"params['"+st.variable+"']="+st.expression.toJavaScript("x","")}else{return"x['"+st.column.columnid+"']="+st.expression.toJavaScript("x","")}}).join(";");var setfn=new Function("x,params,alasql",s);setfn(val,params,alasql);return{status:1,values:[val]}};alasql.srch.ROW=function(val,args,stope,params){var s="var y;return [";s+=args.map(function(arg){return arg.toJavaScript("x","")}).join(",");s+="]";var setfn=new Function("x,params,alasql",s);var rv=setfn(val,params,alasql);return{status:1,values:[rv]}};alasql.srch.D3=function(val,args,stope,params){if(val.$node=="VERTEX"){}else if(val.$node=="EDGE"){val.source=val.$in[0];val.target=val.$out[0]}return{status:1,values:[val]}};compileSearchOrder=function(order){if(order){if(order&&order.length==1&&order[0].expression&&typeof order[0].expression=="function"){var func=order[0].expression;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="";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(alasql.options.valueof)dg=".valueOf()";if(ord.nocase)dg+=".toUpperCase()";if(columnid=="_"){s+="if(a"+dg+(ord.direction=="ASC"?">":"<")+"b"+dg+")return 1;";s+="if(a"+dg+"==b"+dg+"){"}else{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";return new Function("a,b",s)}};function queryfn(query,oldscope,cb,A,B){var ms;query.sourceslen=query.sources.length;var slen=query.sourceslen;query.query=query;query.A=A;query.B=B;query.cb=cb;query.oldscope=oldscope;if(query.queriesfn){query.sourceslen+=query.queriesfn.length;slen+=query.queriesfn.length;query.queriesdata=[];query.queriesfn.forEach(function(q,idx){q.query.params=query.params;if(false){queryfn(q.query,query.oldscope,queryfn2,-idx-1,query)}else{queryfn2([],-idx-1,query)}})}var scope;if(!oldscope)scope={};else scope=cloneDeep(oldscope);query.scope=scope;var result;query.sources.forEach(function(source,idx){source.query=query;var rs=source.datafn(query,query.params,queryfn2,idx,alasql);if(typeof rs!=undefined){if((query.intofn||query.intoallfn)&&rs instanceof Array)rs=rs.length;result=rs}source.queriesdata=query.queriesdata});if(slen==0)result=queryfn3(query);return result}function queryfn2(data,idx,query){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;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){var removeKeys=query.removeKeys;var jlen=removeKeys.length;if(jlen>0){for(var i=0,ilen=query.data.length;i0){query.columns=query.columns.filter(function(column){var found=false;removeKeys.forEach(function(key){if(column.columnid==key)found=true});return!found})}}if(typeof query.removeLikeKeys!="undefined"&&query.removeLikeKeys.length>0){var removeLikeKeys=query.removeLikeKeys;for(var i=0,ilen=query.data.length;i0){query.columns=query.columns.filter(function(column){var found=false;removeLikeKeys.forEach(function(key){if(column.columnid.match(key))found=true});return!found})}}if(query.intoallfn){var res=query.intoallfn(query.columns,query.cb,query.params,query.alasql);return res}else if(query.intofn){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,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")+(this.corresponding?" "+K("CORRESPONDING"):"")+NL()+this.union.toString();if(this.unionall)s+=NL()+K("UNION ALL")+(this.corresponding?" "+K("CORRESPONDING"):"")+NL()+this.unionall.toString();if(this.except)s+=NL()+K("EXCEPT")+(this.corresponding?" "+K("CORRESPONDING"):"")+NL()+this.except.toString();if(this.intersect)s+=NL()+K("INTERSECT")+(this.corresponding?" "+K("CORRESPONDING"):"")+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);query.rownums=[];this.compileSelectGroup0(query);if(this.group||query.selectGroup.length>0){query.selectgfns=this.compileSelectGroup1(query)}else{query.selectfns=this.compileSelect1(query)}this.compileRemoveColumns(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;query.corresponding=this.corresponding;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","var y;"+query.intofns)}else if(query.intoallfns){query.intoallfn=new Function("columns,cb,params,alasql","var y;"+query.intoallfns)}}var statement=function(params,cb,oldscope){query.params=params;var res1=queryfn(query,oldscope,function(res){if(query.rownums.length>0){for(var i=0,ilen=res.length;i0){var allcol={};for(var i=0;i0){var key;if(columns&&columns.length>0)key=columns[0].columnid;else key=Object.keys(res[0])[0];res=res[0][key]}else{res=undefined}}if(modifier=="ROW"){if(res.length>0){var key;var a=[];for(var key in res[0]){a.push(res[0][key])}res=a}else{res=undefined}}if(modifier=="COLUMN"){var ar=[];if(res.length>0){var key;if(columns&&columns.length>0)key=columns[0].columnid;else key=Object.keys(res[0])[0];for(var i=0,ilen=res.length;i0){key=columns[0].columnid;val=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=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","var y;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","var y;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","var y;return "+source.onleftfns);source.onrightfn=new Function("p,params,alasql","var y;return "+source.onrightfns);source.onmiddlefn=new Function("p,params,alasql","var y;return "+source.onmiddlefns)}else{source.optimization="no";source.onmiddlefns=jn.on.toJavaScript("p",query.defaultTableid,query.defcols);source.onmiddlefn=new Function("p,params,alasql","var y;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","var y;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","var y;return "+source.srcwherefns)}if(source.wxleftfns){source.wxleftfn=new Function("p,params,alasql","var y;return "+source.wxleftfns)}if(source.wxrightfns){source.wxrightfn=new Function("p,params,alasql","var y;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 acc,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"){return"'"+colas+"':("+colexp+")||0,"}else if(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+")||0,'_COUNT_"+colas+"':(typeof "+colexp+' != "undefined")?1:0,'}else if(col.aggregatorid=="AGGR"){aft+=",g['"+colas+"']="+col.expression.toJavaScript("g",-1);return""}else if(col.aggregatorid=="REDUCE"){query.removeKeys.push("_REDUCE_"+colas);return"'"+colas+"':alasql.aggr['"+col.funcid+"']("+colexp+",undefined,(acc={})),"+"'__REDUCE__"+colas+"':acc,"}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+"||0);"+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+"']+=(y="+colexp+")||0;"+"g['_COUNT_"+colas+'\']+=(typeof y!="undefined")?1:0;'+"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+"'],g['__REDUCE__"+colas+"']);"+post}return""}else return""}).join("");s+="}"});return new Function("p,params,alasql",s)};function compileSelectStar(query,alias){var s="",sp="",ss=[];query.ixsources={};query.sources.forEach(function(source){query.ixsources[source.alias]=source});var columns;if(query.ixsources[alias]){var columns=query.ixsources[alias].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{var coldef={columnid:col.as||col.columnid};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef;query.dirtyColumns=true}}else{var coldef={columnid:col.as||col.columnid};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}}}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)+"':"+n2u(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;var coldef={columnid:col.as||col.columnid||col.toString()};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}else{ss.push("'"+escapeq(col.as||col.columnid||col.toString())+"':"+n2u(col.toJavaScript("p",query.defaultTableid,query.defcols)));query.selectColumns[escapeq(col.as||col.columnid||col.toString())]=true;var coldef={columnid:col.as||col.columnid||col.toString()};query.columns.push(coldef);query.xcolumns[coldef.columnid]=coldef}});s+=ss.join(",")+"};"+sp;return s};yy.Select.prototype.compileSelect2=function(query){var s=query.selectfns;return new Function("p,params,alasql","var y;"+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];ord.expression=new yy.Column({columnid:ord.expression.nick})}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","var y;"+s)}};var rollup=function(a,query){var rr=[];var mask=0;var glen=a.length;for(var g=0;g"||this.op=="!"){var s=this.left.toString()+this.op;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=="!"){if(typeof this.right=="string"){return"alasql.databases[alasql.useid].objects["+this.left.toJavaScript(context,tableid,defcols)+']["'+this.right+'"]'}}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"){return"(("+this.right1.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right2.toJavaScript(context,tableid,defcols)+"))"}if(this.op=="NOT BETWEEN"){return"!(("+this.right1.toJavaScript(context,tableid,defcols)+"<="+this.left.toJavaScript(context,tableid,defcols)+")&&"+"("+this.left.toJavaScript(context,tableid,defcols)+"<="+this.right2.toJavaScript(context,tableid,defcols)+"))"}if(this.op=="IN"){if(this.right instanceof yy.Select){var s="(";s+="alasql.utils.flatArray(this.queriesfn["+this.queriesidx+"](params,null,context))";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.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{var s="("+this.right.toJavaScript(context,tableid,defcols)+".indexOf(";s+=this.left.toJavaScript(context,tableid,defcols)+")==-1)";return s}}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=="#")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)+")";if(this.op=="#"){if(this.right instanceof yy.Column){return"(alasql.databases[alasql.useid].objects['"+this.right.columnid+"'])"}else{return"(alasql.databases[alasql.useid].objects["+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 und(s,"y.length")};stdlib.LOWER=stdlib.LCASE=function(s){return und(s,"y.toLowerCase()")};stdlib.MAX=stdlib.GREATEST=function(){return"Math.max("+Array.prototype.join.call(arguments,",")+")"};stdlib.MIN=stdlib.LEAST=function(){return"Math.min("+Array.prototype.join.call(arguments,",")+")"};stdlib.SUBSTRING=stdlib.MID=function(a,b,c){if(arguments.length==2)return und(a,"y.substr("+b+"-1)");else if(arguments.length==3)return und(a,"y.substr("+b+"-1,"+c+")")};stdlib.ISNULL=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.ROWNUM=function(){return"1"};stdlib.ROW_NUMBER=function(){return"1"};stdlib.SQRT=function(s){return"Math.sqrt("+s+")"};stdlib.TRIM=function(s){return und(s,"y.trim()")};stdlib.UPPER=stdlib.UCASE=function(s){return und(s,"y.toUpperCase()")};alasql.aggr.GROUP_CONCAT=function(v,s){if(typeof s=="undefined")return v;else return s+","+v};alasql.aggr.MEDIAN=function(v,s,acc){if(typeof acc.arr=="undefined"){acc.arr=[v]; +return v}else{acc.arr.push(v);var p=acc.arr.sort();return p[p.length/2|0]}};alasql.aggr.VAR=function(v,s,acc){if(typeof acc.arr=="undefined"){acc.arr=[v];acc.sum=v}else{acc.arr.push(v);acc.sum+=v}var N=acc.arr.length;var avg=acc.sum/N;var std=0;for(var i=0;i0){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.")}}var udbtypeid=args.dbtypeid.toUpperCase();if(args.dbtypeid=="Date"){return new Date(val)}else if(udbtypeid=="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(udbtypeid=="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(["NUMBER","FLOAT"].indexOf(udbtypeid)>-1){return+val}else if(["MONEY"].indexOf(udbtypeid)>-1){var m=+val;return(m|0)+m*100%100/100}else if(["BOOLEAN"].indexOf(udbtypeid)>-1){return!!val}else if(["INT","INTEGER","SMALLINT","BIGINT","SERIAL","SMALLSERIAL","BIGSERIAL"].indexOf(args.dbtypeid.toUpperCase())>-1){return val|0}else if(["STRING","VARCHAR","NVARCHAR","CHARACTER VARIABLE"].indexOf(args.dbtypeid.toUpperCase())>-1){if(args.dbsize)return(""+val).substr(0,args.dbsize);else return""+val}else if(["CHAR","CHARACTER","NCHAR"].indexOf(udbtypeid)>-1){return(val+new Array(args.dbsize+1).join(" ")).substr(0,args.dbsize)}else if(["DECIMAL","NUMERIC"].indexOf(udbtypeid)>-1){var m=+val;var fxd=Math.pow(10,args.dbpecision);return(m|0)+m*fxd%fxd/fxd}else if(["JSON"].indexOf(udbtypeid)>-1){if(typeof val=="object")return val;try{return JSON.parse(val)}catch(err){throw new Error("Cannot convert string to JSON")}}return val};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+=" "+(this.class?K("CLASS"):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;if(this.class){table.isclass=true}table.identities={};table.checkfn=[];var ss=[];if(this.columns){this.columns.forEach(function(col){var dbtypeid=col.dbtypeid;if(!alasql.fn[dbtypeid])dbtypeid=dbtypeid.toUpperCase();if(["SERIAL","SMALLSERIAL","BIGSERIAL"].indexOf(dbtypeid)>-1)col.identity={value:1,step:1};var newcol={columnid:col.columnid,dbtypeid:dbtypeid,dbsize:col.dbsize,dbprecision:col.dbprecision,notnull:col.notnull,identity:col.identity};if(col.identity){table.identities[col.columnid]={value:+col.identity.value,step:+col.identity.step}}if(col.check){table.checkfn.push(new Function("r","var y;return "+col.check.expression.toJavaScript("r","")))}if(col.default){ss.push("'"+col.columnid+"':"+col.default.toJavaScript("r",""))}if(col.primarykey){var pk=table.pk={};pk.columns=[col.columnid];pk.onrightfns="r['"+col.columnid+"']";pk.onrightfn=new Function("r","var y;return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.uniqs[pk.hh]={}}if(col.unique){var uk={};if(typeof table.uk=="undefined")table.uk=[];table.uk.push(uk);uk.columns=[col.columnid];uk.onrightfns="r['"+col.columnid+"']";uk.onrightfn=new Function("r","var y;return "+uk.onrightfns);uk.hh=hash(uk.onrightfns);table.uniqs[uk.hh]={}}if(col.foreignkey){var fk=col.foreignkey.table;var fktable=alasql.databases[fk.databaseid||alasql.useid].tables[fk.tableid];if(typeof fk.columnid=="undefined"){if(fktable.pk.columns&&fktable.pk.columns.length>0){fk.columnid=fktable.pk.columns[0]}else{throw new Error("FOREIGN KEY allowed only to tables with PRIMARY KEYs")}}var fkfn=function(r){var rr={};if(typeof r[col.columnid]=="undefined")return true;rr[fk.columnid]=r[col.columnid];var addr=fktable.pk.onrightfn(rr);if(!fktable.uniqs[fktable.pk.hh][addr]){throw new Error('Foreign key "'+r[col.columnid]+'" is not found in table '+fktable.tableid)}return true};table.checkfn.push(fkfn)}table.columns.push(newcol);table.xcolumns[newcol.columnid]=newcol})}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","var y;return "+pk.onrightfns);pk.hh=hash(pk.onrightfns);table.uniqs[pk.hh]={}}else if(con.type=="CHECK"){table.checkfn.push(new Function("r","var y;return "+con.expression.toJavaScript("r","")))}else if(con.type=="UNIQUE"){var uk={};if(!table.uk)table.uk=[];table.uk.push(uk);uk.columns=con.columns;uk.onrightfns=uk.columns.map(function(columnid){return"r['"+columnid+"']"}).join("+'`'+");uk.onrightfn=new Function("r","var y;return "+uk.onrightfns);uk.hh=hash(uk.onrightfns);table.uniqs[uk.hh]={}}else if(con.type=="FOREIGN KEY"){var col=table.xcolumns[con.columns[0]];var fk=con.fktable;if(con.fkcolumns&&con.fkcolumns.length>0)fk.columnid=con.fkcolumns[0];var fktable=alasql.databases[fk.databaseid||alasql.useid].tables[fk.tableid];if(typeof fk.columnid=="undefined"){fk.columnid=fktable.pk.columns[0]}var fkfn=function(r){var rr={};if(typeof r[col.columnid]=="undefined")return true;rr[fk.columnid]=r[col.columnid];var addr=fktable.pk.onrightfn(rr);if(!fktable.uniqs[fktable.pk.hh][addr]){throw new Error('Foreign key "'+r[col.columnid]+'" is not found in table '+fktable.tableid)}return true};table.checkfn.push(fkfn)}});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){var table=this;for(var columnid in table.identities){var ident=table.identities[columnid];r[columnid]=ident.value}if(table.checkfn&&table.checkfn.length>0){table.checkfn.forEach(function(checkfn){if(!checkfn(r)){throw new Error("Violation of CHECK constraint")}})}table.columns.forEach(function(column){if(column.notnull&&typeof r[column.columnid]=="undefined"){throw new Error("Wrong NULL value in NOT NULL column "+column.columnid)}});if(table.pk){var pk=table.pk;var addr=pk.onrightfn(r);if(typeof table.uniqs[pk.hh][addr]!="undefined"){throw new Error("Cannot insert record, because it already exists in primary key index")}}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){var ukaddr=uk.onrightfn(r);if(typeof table.uniqs[uk.hh][ukaddr]!="undefined"){throw new Error("Cannot insert record, because it already exists in unique index")}})}table.data.push(r);for(var columnid in table.identities){var ident=table.identities[columnid];ident.value+=ident.step}if(table.pk){var pk=table.pk;var addr=pk.onrightfn(r);table.uniqs[pk.hh][addr]=r}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){var ukaddr=uk.onrightfn(r);table.uniqs[uk.hh][ukaddr]=r})}};table.delete=function(i,params,alasql){var table=this;var r=this.data[i];if(this.pk){var pk=this.pk;var addr=pk.onrightfn(r);if(typeof this.uniqs[pk.hh][addr]=="undefined"){throw new Error("Something wrong with primary key index on table")}else{this.uniqs[pk.hh][addr]=undefined}}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){var ukaddr=uk.onrightfn(r);if(typeof table.uniqs[uk.hh][ukaddr]=="undefined"){throw new Error("Something wrong with unique index on table")}table.uniqs[uk.hh][ukaddr]=undefined})}};table.deleteall=function(){this.data.length=0;if(this.pk){this.uniqs[this.pk.hh]={}}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){table.uniqs[uk.hh]={}})}};table.update=function(assignfn,i,params){var r=cloneDeep(this.data[i]);if(this.pk){var pk=this.pk;pk.pkaddr=pk.onrightfn(r,params);if(typeof this.uniqs[pk.hh][pk.pkaddr]=="undefined"){throw new Error("Something wrong with index on table")}else{}}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){uk.ukaddr=uk.onrightfn(r);if(typeof table.uniqs[uk.hh][uk.ukaddr]=="undefined"){throw new Error("Something wrong with unique index on table")}})}assignfn(r,params,alasql);if(table.checkfn&&table.checkfn.length>0){table.checkfn.forEach(function(checkfn){if(!checkfn(r)){throw new Error("Violation of CHECK constraint")}})}table.columns.forEach(function(column){if(column.notnull&&typeof r[column.columnid]=="undefined"){throw new Error("Wrong NULL value in NOT NULL column "+column.columnid)}});if(this.pk){pk.newpkaddr=pk.onrightfn(r);if(typeof this.uniqs[pk.hh][pk.newpkaddr]!="undefined"&&pk.newpkaddr!=pk.pkaddr){throw new Error("Record already exists")}else{}}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){uk.newukaddr=uk.onrightfn(r);if(typeof table.uniqs[uk.hh][uk.newukaddr]!="undefined"&&uk.newukaddr!=uk.ukaddr){throw new Error("Record already exists")}})}if(this.pk){this.uniqs[pk.hh][pk.pkaddr]=undefined;this.uniqs[pk.hh][pk.newpkaddr]=r}if(table.uk&&table.uk.length){table.uk.forEach(function(uk){table.uniqs[uk.hh][uk.ukaddr]=undefined;table.uniqs[uk.hh][uk.newukaddr]=r})}this.data[i]=r};if(this.view&&this.select){table.view=true;table.select=this.select.compile(this.table.databaseid||databaseid)}var res;if(!alasql.options.nocount)res=1;if(cb)res=cb(res);return res};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){var s=this.sets.map(function(st){return"x['"+st.column.columnid+"']="+st.expression.toJavaScript("x","")}).join(";");var setfn=new Function("x,params,alasql",s)}else if(this.content){}else if(this.select){}else{}var statement=function(params,cb){var res;var db=alasql.databases[dbid];if(typeof sharp!="undefined"){var id=sharp}else{var id=db.counter++}var vertex={$id:id,$node:"VERTEX"};db.objects[vertex.$id]=vertex;res=vertex;if(namefn)namefn(vertex);if(setfn)setfn(vertex,params,alasql);if(cb)res=cb(res);return res};return statement};yy.CreateEdge=function(params){return yy.extend(this,params)};yy.CreateEdge.prototype.toString=function(){var s=K("CREATE")+" "+K("EDGE")+" ";if(this.class)s+=L(this.class)+" ";return s};yy.CreateEdge.prototype.toJavaScript=function(context,tableid,defcols){var s="this.queriesfn["+(this.queriesidx-1)+"](this.params,null,"+context+")";return s};yy.CreateEdge.prototype.compile=function(databaseid){var dbid=databaseid;var fromfn=new Function("params,alasql","var y;return "+this.from.toJavaScript());var tofn=new Function("params,alasql","var y;return "+this.to.toJavaScript());if(typeof this.name!="undefined"){var s="x.name="+this.name.toJavaScript();var namefn=new Function("x",s)}if(this.sets&&this.sets.length>0){var s=this.sets.map(function(st){return"x['"+st.column.columnid+"']="+st.expression.toJavaScript("x","")}).join(";");var setfn=new Function("x,params,alasql","var y;"+s)}else if(this.content){}else if(this.select){}else{}var statement=function(params,cb){var res=0;var db=alasql.databases[dbid];var edge={$id:db.counter++,$node:"EDGE"};var v1=fromfn(params,alasql);var v2=tofn(params,alasql);edge.$in=[v1.$id];edge.$out=[v2.$id];if(typeof v1.$out=="undefined")v1.$out=[];v1.$out.push(edge.$id);if(typeof v2.$in=="undefined")v2.$in=[];v2.$in.push(edge.$id);db.objects[edge.$id]=edge;res=edge;if(namefn)namefn(edge);if(setfn)setfn(edge,params,alasql);if(cb)res=cb(res);return res};return statement};yy.CreateGraph=function(params){return yy.extend(this,params)};yy.CreateGraph.prototype.toString=function(){var s=K("CREATE")+" "+K("GRAPH")+" ";if(this.class)s+=L(this.class)+" ";return s};yy.CreateGraph.prototype.execute=function(databaseid,params,cb){var res=[];if(this.from){if(alasql.from[this.from.funcid]){this.graph=alasql.from[this.from.funcid.toUpperCase()](this.from.args[0].value);console.log(this.graph)}}this.graph.forEach(function(g){if(g.source){var e={};if(typeof g.as!="undefined")alasql.vars[g.as]=e;if(typeof g.prop!="undefined"){e.name=g.prop}if(typeof g.sharp!="undefined")e.$id=g.sharp;if(typeof g.name!="undefined")e.name=g.name;if(typeof g.class!="undefined")e.$class=g.class;var db=alasql.databases[databaseid];if(typeof e.$id=="undefined"){e.$id=db.counter++}e.$node="EDGE";if(typeof g.json!="undefined"){extend(e,new Function("params,alasql","var y;return "+g.json.toJavaScript())(params,alasql))}var v1;if(g.source.vars){var vo=alasql.vars[g.source.vars];if(typeof vo=="object")v1=vo;else v1=db.objects[vo]}else{var av1=g.source.sharp;if(typeof av1=="undefined")av1=g.source.prop;v1=alasql.databases[databaseid].objects[av1];if(typeof v1=="undefined"&&alasql.options.autovertex&&(typeof g.source.prop!="undefined"||typeof g.source.name!="undefined")){v1=findVertex(g.source.prop||g.source.name);if(typeof v1=="undefined"){v1=createVertex(g.source)}}}var v2;if(g.source.vars){var vo=alasql.vars[g.target.vars];if(typeof vo=="object")v2=vo;else v2=db.objects[vo]}else{var av2=g.target.sharp;if(typeof av2=="undefined")av2=g.target.prop;v2=alasql.databases[databaseid].objects[av2];if(typeof v2=="undefined"&&alasql.options.autovertex&&(typeof g.target.prop!="undefined"||typeof g.target.name!="undefined")){v2=findVertex(g.target.prop||g.target.name);if(typeof v2=="undefined"){v2=createVertex(g.target)}}}e.$in=[v1.$id];e.$out=[v2.$id];if(typeof v1.$out=="undefined")v1.$out=[];v1.$out.push(e.$id);if(typeof v2.$in=="undefined")v2.$in=[];v2.$in.push(e.$id);db.objects[e.$id]=e;if(typeof e.$class!="undefined"){if(typeof alasql.databases[databaseid].tables[e.$class]=="undefined"){throw new Error("No such class. Pleace use CREATE CLASS")}else{alasql.databases[databaseid].tables[e.$class].data.push(e)}}res.push(e.$id)}else{createVertex(g)}});if(cb)res=cb(res);return res;function findVertex(name){var objects=alasql.databases[alasql.useid].objects;for(var k in objects){if(objects[k].name==name){return objects[k]}}return undefined}function createVertex(g){var v={};if(typeof g.as!="undefined")alasql.vars[g.as]=v;if(typeof g.prop!="undefined"){v.$id=g.prop;v.name=g.prop}if(typeof g.sharp!="undefined")v.$id=g.sharp;if(typeof g.name!="undefined")v.name=g.name;if(typeof g.class!="undefined")v.$class=g.class;var db=alasql.databases[databaseid];if(typeof v.$id=="undefined"){v.$id=db.counter++}v.$node="VERTEX";if(typeof g.json!="undefined"){extend(v,new Function("params,alasql","var y;return "+g.json.toJavaScript())(params,alasql))}db.objects[v.$id]=v;if(typeof v.$class!="undefined"){if(typeof alasql.databases[databaseid].tables[v.$class]=="undefined"){throw new Error("No such class. Pleace use CREATE CLASS")}else{alasql.databases[databaseid].tables[v.$class].data.push(v)}}res.push(v.$id);return v}};yy.CreateGraph.prototype.compile1=function(databaseid){var dbid=databaseid;var fromfn=new Function("params,alasql","var y;return "+this.from.toJavaScript());var tofn=new Function("params,alasql","var y;return "+this.to.toJavaScript());if(typeof this.name!="undefined"){var s="x.name="+this.name.toJavaScript();var namefn=new Function("x",s)}if(this.sets&&this.sets.length>0){var s=this.sets.map(function(st){return"x['"+st.column.columnid+"']="+st.expression.toJavaScript("x","")}).join(";");var setfn=new Function("x,params,alasql","var y;"+s)}else if(this.content){}else if(this.select){}else{}var statement=function(params,cb){var res=0;var db=alasql.databases[dbid];var edge={$id:db.counter++,$node:"EDGE"};var v1=fromfn(params,alasql);var v2=tofn(params,alasql);edge.$in=[v1.$id];edge.$out=[v2.$id];if(typeof v1.$out=="undefined")v1.$out=[];v1.$out.push(edge.$id);if(typeof v2.$in=="undefined")v2.$in=[];v2.$in.push(edge.$id);db.objects[edge.$id]=edge;res=edge;if(namefn)namefn(edge);if(setfn)setfn(edge,params,alasql);if(cb)res=cb(res);return res};return statement};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};yy.AlterTable.prototype.execute=function(databaseid,params,cb){var db=alasql.databases[databaseid];db.dbversion=Date.now();if(this.renameto){var oldtableid=this.table.tableid;var newtableid=this.renameto;var res=1;if(db.tables[newtableid]){throw new Error("Can not rename a table '"+oldtableid+"' to '"+newtableid+"', because the table with this name already exists")}else if(newtableid==oldtableid){throw new Error("Can not rename a table '"+oldtableid+"' to itself")}else{db.tables[newtableid]=db.tables[oldtableid];delete db.tables[oldtableid];res=1}if(cb)cb(res);return res}else if(this.addcolumn){var db=alasql.databases[this.table.databaseid||databaseid];db.dbversion++;var tableid=this.table.tableid;var table=db.tables[tableid];var columnid=this.addcolumn.columnid;if(table.xcolumns[columnid]){throw new Error('Cannot add column "'+columnid+'", because it already exists in the table "'+tableid+'"')}var col={columnid:columnid,dbtypeid:this.dbtypeid,dbsize:this.dbsize,dbprecision:this.dbprecision,dbenum:this.dbenum,defaultfns:null};var defaultfn=function(){};table.columns.push(col);table.xcolumns[columnid]=col;for(var i=0,ilen=table.data.length;i0){for(var i=0,ilen=table.data.length;i0){for(var i=0,ilen=table.data.length;i=0){q+="(x="+values[idx].toJavaScript()+",x==undefined?undefined:+x)"}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].isclass){s+="var db=alasql.databases['"+databaseid+"'];";s+='a.$class="'+tableid+'";';s+="a.$id=db.counter++;";s+="db.objects[a.$id]=a;"}if(db.tables[tableid].insert){s+="var db=alasql.databases['"+databaseid+"'];";s+="db.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);"}if(db.tables[tableid].insert){if(db.tables[tableid].isclass){s+="return a.$id;"}else{s+="return "+self.values.length}}else{s+="return "+self.values.length}var insertfn=new Function("db, params, alasql","var y;"+s3+s).bind(this)}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,alasql","var y;return "+arg.toJavaScript())(params,alasql)})}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+=this.method+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){if(this.exists){this.existsfn=this.exists.map(function(ex){var nq=ex.compile(databaseid);if(nq.query&&!nq.query.modifier)nq.query.modifier="RECORDSET";return nq})}if(this.queries){this.queriesfn=this.queries.map(function(q){var nq=q.compile(databaseid);if(nq.query&&!nq.query.modifier)nq.query.modifier="RECORDSET";return nq})}var res=new Function("params,alasql","return "+this.expression.toJavaScript("({})","",null)).bind(this)(params,alasql);if(alasql.declares[this.variable]){res=alasql.stdfn.CONVERT(res,alasql.declares[this.variable])}if(this.props&&this.props.length>0){if(this.method=="@"){var fs="alasql.vars['"+this.variable+"']"}else{var fs="params['"+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,params,alasql","var y;"+fs+"=value")(res,params,alasql)}else{if(this.method=="@"){alasql.vars[this.variable]=res}else{params[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};if(alasql.options.tsql){alasql.stdfn.OBJECT_ID=function(name,type){if(typeof type=="undefined")type="T";type=type.toUpperCase();var sname=name.split(".");var dbid=alasql.useid;var objname=sname[0];if(sname.length==2){dbid=sname[0];objname=sname[1]}var tables=alasql.databases[dbid].tables;dbid=alasql.databases[dbid].databaseid;for(var tableid in tables){if(tableid==objname){if(tables[tableid].view&&type=="V")return dbid+"."+tableid;if(!tables[tableid].view&&type=="T")return dbid+"."+tableid;return undefined}}return undefined}}if(alasql.options.mysql){}if(alasql.options.mysql||alasql.options.sqlite){alasql.from.INFORMATION_SCHEMA=function(filename,opts,cb,idx,query){if(filename=="VIEWS"||filename=="TABLES"){var res=[];for(var databaseid in alasql.databases){var tables=alasql.databases[databaseid].tables;for(var tableid in tables){if(tables[tableid].view&&filename=="VIEWS"||!tables[tableid].view&&filename=="TABLES"){res.push({TABLE_CATALOG:databaseid,TABLE_NAME:tableid})}}}if(cb)res=cb(res,idx,query);return res}throw new Error("Unknown INFORMATION_SCHEMA table")}}if(alasql.options.postgres){}if(alasql.options.oracle){}if(alasql.options.sqlite){}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.XLS=function(filename,opts,data,columns,cb){if(typeof filename=="object"){opts=filename;filename=undefined}var sheets={};if(opts&&opts.sheets){sheets=opts.sheets}var sheet={};if(typeof sheets["Sheet1"]!="undefined"){sheet=sheets[0]}else{if(typeof opts!="undefined"){sheet=opts}}if(typeof sheet.sheetid=="undefined"){sheet.sheetid="Sheet1"}var s=toHTML();var res=alasql.utils.saveFile(filename,s);if(cb)res=cb(res);return res;function toHTML(){var 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+="";return s}function style(a){var s=' style="';if(a&&typeof a.style!="undefined"){s+=a.style+";"}s+='" ';return s}};alasql.into.XLSXML=function(filename,opts,data,columns,cb){if(typeof filename=="object"){opts=filename;filename=undefined}var sheets={};if(opts&&opts.sheets){sheets=opts.sheets}else{sheets.Sheet1=opts}var res=alasql.utils.saveFile(filename,toXML());if(cb)res=cb(res);return res;function toXML(){var s1=' 0 ';var s2="";var s3=" ";var styles={};var stylesn=62;function hstyle(st){var s="";for(var key in st){s+="<"+key;for(var attr in st[key]){s+=" ";if(attr.substr(0,2)=="x:"){s+=attr}else{s+="ss:"}s+=attr+'="'+st[key][attr]+'"'}s+="/>"}var hh=hash(s);if(styles[hh]){}else{styles[hh]={styleid:stylesn};s2+='";stylesn++}return"s"+styles[hh].styleid}for(var sheetid in sheets){var sheet=sheets[sheetid];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&&typeof sheet.column.width!="undefined"){column.width=sheet.column.width}else{column.width=120}}if(typeof column.width=="number")column.width=column.width;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]});s3+=' ';columns.forEach(function(column,columnidx){s3+=''});if(sheet.headers){s3+='';columns.forEach(function(column,columnidx){s3+="';if(typeof column.title!="undefined"){if(typeof column.title=="function"){s3+=column.title(sheet,column,columnidx)}else{s3+=column.title}}s3+=""});s3+=""}if(data&&data.length>0){data.forEach(function(row,rowidx){if(rowidx>sheet.limit)return;var srow={};extend(srow,sheet.row);if(sheet.rows&&sheet.rows[rowidx]){extend(srow,sheet.rows[rowidx])}s3+="";columns.forEach(function(column,columnidx){var cell={};extend(cell,sheet.cell);extend(cell,srow.cell);if(typeof sheet.column!="undefined"){extend(cell,sheet.column.cell)}extend(cell,column.cell);if(sheet.cells&&sheet.cells[rowidx]&&sheet.cells[rowidx][columnidx]){extend(cell,sheet.cells[rowidx][columnidx])}var value=row[column.columnid];if(typeof cell.value=="function"){value=cell.value(value,sheet,row,column,cell,rowidx,columnidx)}var typeid=cell.typeid;if(typeof typeid=="function"){typeid=typeid(value,sheet,row,column,cell,rowidx,columnidx)}if(typeof typeid=="undefined"){if(typeof value=="number")typeid="number";else if(typeof value=="string")typeid="string";else if(typeof value=="boolean")typeid="boolean";else if(typeof value=="object"){if(value instanceof Date)typeid="date"}}var Type="String";if(typeid=="number")Type="Number";else if(typeid=="date")Type="Date";var typestyle="";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{if(opts.types&&opts.types[typeid]&&opts.types[typeid].typestyle){typestyle=opts.types[typeid].typestyle}}typestyle=typestyle||'mso-number-format:"\\@";';s3+="";s3+='';var format=cell.format;if(typeof value=="undefined"){s3+=""}else if(typeof format!="undefined"){if(typeof format=="function"){s3+=format(value)}else if(typeof format=="string"){s3+=value}else{throw new Error("Unknown format type. Should be function or string")}}else{if(typeid=="number"||typeid=="date"){s3+=value.toString()}else if(typeid=="money"){s3+=(+value).toFixed(2)}else{s3+=value}}s3+=""});s3+=""})}s3+="
"}s3+="
";return s1+s2+s3}};alasql.into.XLSX=function(filename,opts,data,columns,cb){var res=1;if(deepEqual(columns,[{columnid:"_"}])){data=data.map(function(dat){return dat._});columns=undefined}else{}if(typeof exports=="object"){var XLSX=require("xlsx")}else{var XLSX=window.XLSX}if(typeof filename=="object"){opts=filename;filename=undefined}var wb={SheetNames:[],Sheets:{}};if(opts.sourcefilename){alasql.utils.loadBinaryFile(opts.sourcefilename,!!cb,function(data){wb=XLSX.read(data,{type:"binary"});doExport()})}else{doExport()}if(cb)res=cb(res);return res;function doExport(){if(typeof opts=="object"&&opts instanceof Array){if(data&&data.length>0){data.forEach(function(dat,idx){prepareSheet(opts[idx],dat,undefined,idx+1)})}}else{prepareSheet(opts,data,columns,{},1)}saveWorkbook(cb)}function prepareSheet(opts,data,columns,idx){var opt={sheetid:"Sheet"+idx,headers:true};alasql.utils.extend(opt,opts);if((!columns||columns.length==0)&&data.length>0){columns=Object.keys(data[0]).map(function(columnid){return{columnid:columnid}})}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>>8^CRC_TABLE[offset]}return crc^-1}function pack(items){var data=arguments,idx=0,buffer,bufferSize=0;items=items.split("");items.forEach(function(type){if(type=="v"){bufferSize+=2}else if(type=="V"||type=="l"){bufferSize+=4}});buffer=new Buffer(bufferSize);items.forEach(function(type,index){if(type=="v"){buffer.writeUInt16LE(data[index+1],idx);idx+=2}else if(type=="V"){buffer.writeUInt32LE(data[index+1],idx);idx+=4}else if(type=="l"){buffer.writeInt32LE(data[index+1],idx);idx+=4}});return buffer}function normalizeZipPath(zipPath){return zipPath.replace(/\\/g,"/").replace(/^\/|\/$/g,"")}this.addEntry=function(entry){entry.path=normalizeZipPath(entry.path);entries.push(entry)};this.addDir=function(zipPath,localPath){this.addEntry({path:zipPath,file:localPath,isFile:false})};this.addData=function(zipPath,data){if(!Buffer.isBuffer(data)){data=new Buffer(data)}this.addEntry({path:zipPath,data:data})};function buildZipBuffer(){var buffers=[];var length=0;function append(buf){if(typeof buf=="string"){buf=new Buffer(buf)}buffers.push(buf);length+=buf.length}entries.forEach(function(entry){var mtime,mdate;entry.extra=entry.extra||"";entry.comment=entry.comment||"";entry.cmethod=0;mtime=entry.mtime;mdate=entry.mdate;if(entry.mtime instanceof Date){mtime=entry.mtime.getHours();mtime=mtime<<6;mtime=mtime|entry.mtime.getMinutes();mtime=mtime<<5;mtime=mtime|entry.mtime.getSeconds()/2;mdate=entry.mtime.getFullYear()-1980;mdate=mdate<<4;mdate=mdate|entry.mtime.getMonth()+1;mdate=mdate<<5;mdate=mdate|entry.mtime.getDate()}var fileName=entry.path;if(!entry.isFile&&fileName.charAt(fileName.length-1)!="/"){entry.path=fileName=fileName+"/"}entry.offset=length;append(pack("VvvvvvlVVvv",67324752,20,2,entry.cmethod,mtime,mdate,entry.crc32,entry.csize,entry.size,fileName.length,entry.extra.length));append(fileName);append(entry.extra);append(entry.data);entry.mtime=mtime;entry.mdate=mdate;entry.eattr=entry.isFile?32:48});var startOffset=length;var centralDirSize=0;entries.forEach(function(entry){append(pack("VvvvvvvlVVvvvvvVV",33639248,20,20,2,entry.cmethod,entry.mtime,entry.mdate,entry.crc32,entry.csize,entry.size,entry.path.length,entry.extra.length,entry.comment.length,0,0,entry.eattr,entry.offset));append(entry.path);append(entry.extra);append(entry.comment);centralDirSize+=46+entry.path.length+entry.extra.length+entry.comment.length});var comment="";append(pack("VvvvvVVv",101010256,0,0,entries.length,entries.length,centralDirSize,startOffset,comment.length));append(comment);var buffer=Buffer.concat(buffers);return buffer}this.toBuffer=function(callback){var index=-1;function deflateNext(){var data;var entry=entries[++index];if(entry){entry.csize=entry.size=entry.crc32=0;data=entry.data=entry.data?entry.data:new Buffer(0);entry.mtime=new Date;if(entry.isFile!==false){entry.crc32=calculateCrc32(data);entry.isFile=true;entry.size=data.length;entry.csize=entry.size;deflateNext()}else{deflateNext()}}else{callback(buildZipBuffer())}}deflateNext()}};alasql.from.METEOR=function(filename,opts,cb,idx,query){var res=filename.find(opts).fetch();if(cb)res=cb(res,idx,query);return res};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++/g,"");return document();function document(){return{declaration:declaration(),root:tag()}}function declaration(){var m=match(/^<\?xml\s*/);if(!m)return;var node={attributes:{}};while(!(eos()||is("?>"))){var attr=attribute();if(!attr)return node;node.attributes[attr.name]=attr.value}match(/\?>\s*/);return node}function tag(){var m=match(/^<([\w-:.]+)\s*/);if(!m)return;var node={name:m[1],attributes:{},children:[]};while(!(eos()||is(">")||is("?>")||is("/>"))){var attr=attribute();if(!attr)return node;node.attributes[attr.name]=attr.value}if(match(/^\s*\/>\s*/)){return node}match(/\??>\s*/);node.content=content();var child;while(child=tag()){node.children.push(child)}match(/^<\/[\w-:.]+>\s*/);return node}function content(){var m=match(/^([^<]*)/);if(m)return m[1];return""}function attribute(){var m=match(/([\w:-]+)\s*=\s*("[^"]*"|'[^']*'|\w+)\s*/);if(!m)return;return{name:m[1],value:strip(m[2])}}function strip(val){return val.replace(/^['"]|['"]$/g,"")}function match(re){var m=xml.match(re);if(!m)return;xml=xml.slice(m[0].length);return m}function eos(){return 0==xml.length}function is(prefix){return 0==xml.indexOf(prefix)}}alasql.from.GEXF=function(filename,opts,cb,idx,query){var res;alasql("SEARCH FROM XML("+filename+")",[],function(data){res=data;console.log(res);if(cb)res=cb(res)});return res};yy.Help=function(params){return yy.extend(this,params)};yy.Help.prototype.toString=function(){var s=K("HELP");if(this.subject)s+=" "+L(this.subject);return s};helpdocs=[{command:"ALTER TABLE table RENAME TO table"},{command:"ALTER TABLE table ADD COLUMN column coldef"},{command:"ALTER TABLE table MODIFY COLUMN column coldef"},{command:"ALTER TABLE table RENAME COLUMN column TO column"},{command:"ALTER TABLE table DROP column"},{command:"ATTACH engine DATABASE database"},{command:"ASSERT value"},{command:"BEGIN [TRANSACTION]"},{command:"COMMIT [TRANSACTION]"},{command:"CREATE [engine] DATABASE [IF NOT EXISTS] database"},{command:"CREATE TABLE [IF NOT EXISTS] table (column definitions)"},{command:"DELETE FROM table [WHERE expression]"},{command:"DETACH DATABASE database"},{command:"DROP [engine] DATABASE [IF EXISTS] database"},{command:"DROP TABLE [IF EXISTS] table"},{command:"INSERT INTO table VALUES value,..."},{command:"INSERT INTO table DEFAULT VALUES"},{command:"INSERT INTO table SELECT select"},{command:"HELP [subject]"},{command:"ROLLBACK [TRANSACTION]"},{command:"SELECT [modificator] columns [INTO table] [FROM table,...] [[mode] JOIN [ON] [USING]] [WHERE ] [GROUP BY] [HAVING] [ORDER BY] "},{command:"SET option value"},{command:"SHOW [engine] DATABASES"},{command:"SHOW TABLES"},{command:"SHOW CREATE TABLE table"},{command:"UPDATE table SET column1 = expression1, ... [WHERE expression]"},{command:"USE [DATABASE] database"},{command:"expression"},{command:'See also 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 self=this;var res=1;alasql.precompile(this,databaseid,params);if(this.exprs&&this.exprs.length>0){var rs=this.exprs.map(function(expr){var exprfn=new Function("params,alasql,p","var y;return "+expr.toJavaScript("({})","",null)).bind(self);var r=exprfn(params,alasql);return JSONtoString(r)});console.log.apply(console,rs)}else if(this.select){var r=this.select.execute(databaseid,params);console.log(JSONtoString(r))}else{console.log()}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(",")}if(this.plugins&&this.plugins.length>0){s+=this.plugins.map(function(plugin){return plugin.toUpperCase() +}).join(",")}return s};yy.Require.prototype.execute=function(databaseid,params,cb){var self=this;var res=0;var ss="";if(this.paths&&this.paths.length>0){this.paths.forEach(function(path){loadFile(path.value,!!cb,function(data){res++;ss+=data;if(res0){this.plugins.forEach(function(plugin){if(!alasql.plugins[plugin]){loadFile(alasql.path+"/alasql-"+plugin.toLowerCase()+".js",!!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;if(alasql.options.autocommit){var lsdb=LS.get(lsdbid)}else{var lsdb=alasql.databases[databaseid]}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/bower_components/jsdatachecker/.bower.json b/bower_components/jsdatachecker/.bower.json deleted file mode 100644 index f576fd0..0000000 --- a/bower_components/jsdatachecker/.bower.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "JSDataChecker", - "version": "0.0.1", - "homepage": "https://github.com/donpir/JSDataChecker", - "authors": [ - "'Donato Pirozzi <'donatopirozzi@gmail.com'>" - ], - "description": "Javascript library to read dataset content (e.g., Open Data), infer data types, give a data quality indicator and parse content", - "main": "jsdatachecker/jsdatachecker.js", - "license": "GPL", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ], - "devDependencies": { - "paper-progress": "PolymerElements/paper-progress#~1.0.8", - "polymer": "Polymer/polymer#1.2.0", - "qunit": "~1.22.0", - "csvjson": "0.1.0" - }, - "private": false, - "_release": "0.0.1", - "_resolution": { - "type": "version", - "tag": "v0.0.1", - "commit": "22c592624f3d359bc0cc325c5c4bc9dacce1befd" - }, - "_source": "git://github.com/donpir/JSDataChecker.git", - "_target": "0.0.1", - "_originalSource": "jsdatachecker" -} \ No newline at end of file diff --git a/bower_components/jsdatachecker/LICENSE b/bower_components/jsdatachecker/LICENSE deleted file mode 100644 index 9cecc1d..0000000 --- a/bower_components/jsdatachecker/LICENSE +++ /dev/null @@ -1,674 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - {one line to give the program's name and a brief idea of what it does.} - Copyright (C) {year} {name of author} - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - {project} Copyright (C) {year} {fullname} - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. diff --git a/bower_components/jsdatachecker/README.md b/bower_components/jsdatachecker/README.md deleted file mode 100644 index ab48b41..0000000 --- a/bower_components/jsdatachecker/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# JSDataChecker -JavaScript Library to read dataset content (e.g., Open Data), infer data types, give a data quality indicator and parse content. - -In details, it analysis the json (specified paths) to infer the data type. In addition, when request (via code) the library converts the json data based on the inferred type. - diff --git a/bower_components/jsdatachecker/bower.json b/bower_components/jsdatachecker/bower.json deleted file mode 100644 index b01dc77..0000000 --- a/bower_components/jsdatachecker/bower.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "JSDataChecker", - "version": "v0.0.1", - "homepage": "https://github.com/donpir/JSDataChecker", - "authors": [ - "'Donato Pirozzi <'donatopirozzi@gmail.com'>" - ], - "description": "Javascript library to read dataset content (e.g., Open Data), infer data types, give a data quality indicator and parse content", - "main": "jsdatachecker/jsdatachecker.js", - "license": "GPL", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ], - "devDependencies": { - "paper-progress": "PolymerElements/paper-progress#~1.0.8", - "polymer": "Polymer/polymer#1.2.0", - "qunit": "~1.22.0", - "csvjson": "0.1.0" - }, - "private": false -} diff --git a/bower_components/jsdatachecker/build.cmd b/bower_components/jsdatachecker/build.cmd deleted file mode 100644 index adabe1a..0000000 --- a/bower_components/jsdatachecker/build.cmd +++ /dev/null @@ -1,2 +0,0 @@ -del jsdatachecker.min.js -uglifyjs src\ArrayUtils.js src\DataTypeConverter.js src\DataTypesUtils.js --compress -o jsdatachecker.min.js \ No newline at end of file diff --git a/bower_components/jsdatachecker/jsdatachecker.min.js b/bower_components/jsdatachecker/jsdatachecker.min.js deleted file mode 100644 index 489f994..0000000 --- a/bower_components/jsdatachecker/jsdatachecker.min.js +++ /dev/null @@ -1 +0,0 @@ -function ArrayUtils(){}function DataTypeConverter(){this._fields=[],this._numOfRows=0}function DataTypesUtils(){}ArrayUtils.TestAndSet=function(arr,key,object){return"undefined"==typeof arr?null:0==Array.isArray(arr)?null:("undefined"==typeof arr[key]&&(arr[key]=object),arr[key])},ArrayUtils.TestAndIncrement=function(arr,key){var exists=arr[key];return"undefined"==typeof exists&&(arr[key]=0),arr[key]++,arr},ArrayUtils.IteratorOverKeys=function(arr,callback){for(var property in arr)if(arr.hasOwnProperty(property)){var item=arr[property];callback(item,property)}},ArrayUtils.FindMinMax=function(arr,fncompare){var result=null;for(var key in arr)(null==result||fncompare(arr[key],result.value))&&(result={index:-1,key:key,value:arr[key]});return result},DataTypeConverter.TYPES={TEXT:{value:0,name:"TEXT"},CODE:{value:1,name:"CODE"},NUMBER:{value:2,name:"NUMBER"},OBJECT:{value:3,name:"OBJECT"},BOOL:{value:5,name:"BOOL"},CONST:{value:6,name:"CONST"},CATEGORY:{value:7,name:"CATEGORY"},DATETIME:{value:8,name:"DATETIME"},EMPTY:{value:101,name:"NULL"}},DataTypeConverter.SUBTYPES={PERCENTAGE:{value:1e3,name:"PERCENTAGE"},LATITUDE:{value:1001,name:"LATITUDE"},LONGITUDE:{value:1002,name:"LONGITUDE"}},DataTypeConverter.prototype=function(){var _analyseDataTypes=function(fields){ArrayUtils.IteratorOverKeys(fields,function(field){if(field._inferredTypes[DataTypeConverter.TYPES.CODE.name]){var confidence=field._inferredTypes[DataTypeConverter.TYPES.CODE.name]/field.numOfItems,_numericalInferredType=field._inferredTypes[DataTypeConverter.TYPES.NUMBER.name];return"undefined"!=typeof _numericalInferredType&&(confidence+=_numericalInferredType/field.numOfItems),field.type=DataTypeConverter.TYPES.CODE.name,void(field.typeConfidence=confidence)}var max=ArrayUtils.FindMinMax(field._inferredTypes,function(curval,lastval){return curval>lastval});field.type=max.key,field.typeConfidence=field._inferredTypes[max.key]/field.numOfItems})},_processInferType=function(value){if(null===value||"undefined"==typeof value)return DataTypeConverter.TYPES.EMPTY;if("object"==typeof value)return DataTypeConverter.TYPES.OBJECT;if(/^0[0-9]+$/.test(value))return DataTypeConverter.TYPES.CODE;var isnumber=DataTypesUtils.FilterFloat(value);if(isNaN(isnumber)!==!0)return DataTypeConverter.TYPES.NUMBER;var _date=DataTypesUtils.FilterDateTime(value);return 0==isNaN(_date)&&null!=_date?DataTypeConverter.TYPES.DATETIME:DataTypeConverter.TYPES.TEXT},jsonTraverse=function(json,fieldKeys,callback){var stack=[],numOfRows=0;for(stack.push({item:json,fieldKeyIndex:0});stack.length>0;){var stackTask=stack.pop(),item=stackTask.item,fieldKeyIndex=stackTask.fieldKeyIndex,fieldKey=fieldKeys[fieldKeyIndex];if("*"!=fieldKey){var jsonSubtree=item[fieldKey];if(Array.isArray(jsonSubtree))for(var j=0;j0;){var stackTask=stack.pop(),item=stackTask.item,fieldKeyIndex=stackTask.fieldKeyIndex,fieldKey=fieldKeys[fieldKeyIndex];if("*"!=fieldKey){var jsonSubtree=item[fieldKey];if(Array.isArray(jsonSubtree))for(var j=0;j=3&&expNumber.test(splitted[2])?parseInt(splitted[2]):0,dt=new Date;return dt.setHours(HH),dt.setMinutes(MM),dt.setSeconds(SS),dt},DataTypesUtils.FilterDateTime=function(value){var _dtSplitted=value.split(/[T|\s]/);if(2==_dtSplitted.length){var dtTime=DataTypesUtils.FilterTime(_dtSplitted[1]);if(null==dtTime)return null;var dtDateTime=DataTypesUtils.FilterDate(_dtSplitted[0],dtTime);return dtDateTime}var dtDate=DataTypesUtils.FilterDate(value);if(null!=dtDate)return dtDate;var dtTime=DataTypesUtils.FilterTime(value);return dtTime},DataTypesUtils.FilterDate=function(value,dtDate){if(null==dtDate&&(dtDate=new Date),/^[0-9][0-9][0-9][0-9]\-[0-9][0-9]$/.test(value)){var year=parseInt(value.substring(0,4)),month=parseInt(value.substring(5));return dtDate.setYear(year),dtDate.setMonth(month),dtDate}var expDate=/^[0-9]{4}(\-|\/)[0-9]{2}((\-|\/)[0-9]{2})?$/;if(expDate.test(value)){var splitted=value.split(/[\-|\/]/),year=parseInt(splitted[0]),month=parseInt(splitted[1]),day=3==splitted.length?parseInt(splitted[2]):0;return dtDate.setYear(year),dtDate.setMonth(month),dtDate.setDate(day),dtDate}if(expDate=/^[0-9]{2}(\-|\/)[0-9]{2}(\-|\/)[0-9]{4}$/,expDate.test(value)){var splitted=value.split(/[\-|\/]/),year=parseInt(splitted[2]),month=parseInt(splitted[1]),day=parseInt(splitted[0]);return dtDate.setYear(year),dtDate.setMonth(month),dtDate.setDate(day),dtDate}return null},DataTypesUtils.FilterFloat=function(value){return/^(\-|\+)?((0|([1-9][0-9]*))(\.[0-9]+)?|Infinity)$/.test(value)?Number(value):NaN},DataTypesUtils.DecimalPlaces=function(num){var match=(""+num).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return match?Math.max(0,(match[1]?match[1].length:0)-(match[2]?+match[2]:0)):0}; \ No newline at end of file diff --git a/bower_components/jsdatachecker/src/ArrayUtils.js b/bower_components/jsdatachecker/src/ArrayUtils.js deleted file mode 100644 index 8559067..0000000 --- a/bower_components/jsdatachecker/src/ArrayUtils.js +++ /dev/null @@ -1,85 +0,0 @@ -/* - ** This file is part of JSDataChecker. - ** - ** JSDataChecker is free software: you can redistribute it and/or modify - ** it under the terms of the GNU General Public License as published by - ** the Free Software Foundation, either version 3 of the License, or - ** (at your option) any later version. - ** - ** JSDataChecker is distributed in the hope that it will be useful, - ** but WITHOUT ANY WARRANTY; without even the implied warranty of - ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - ** GNU General Public License for more details. - ** - ** You should have received a copy of the GNU General Public License - ** along with JSDataChecker. If not, see . - ** - ** Copyright (C) 2016 JSDataChecker - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - -function ArrayUtils() {} - -/** - * It tests if the array has an element with the specified key, - * if does not have the key it initialises it with the object. - * @param arr - * @param key - * @param object - * @returns {*} - * @constructor - */ -ArrayUtils.TestAndSet = function (arr, key, object) { - if (typeof arr == 'undefined') return null; - if (Array.isArray(arr) == false) return null; - if (typeof arr[key] == 'undefined') - arr[key] = object; - return arr[key]; -};//EndFunction. - -/*** - * It tests whether the array has the key, if not it insert it; - * then increases the value by one unit. - * @param arr - * @param key - * @returns {The array} - */ -ArrayUtils.TestAndIncrement = function (arr, key) { - var exists = arr[key]; - if (typeof exists === 'undefined') arr[key] = 0; - arr[key]++; - return arr; -};//EndFunction. - -/** - * Iterate over the key within the array arr. For each array - * value it calls the callback function. - * @param arr - * @param callback - * @constructor - */ -ArrayUtils.IteratorOverKeys = function (arr, callback) { - for (var property in arr) { - if (arr.hasOwnProperty(property)) { - var item = arr[property]; - callback(item, property); - } - } -};//EndFunction. - -/** - * Find the item with the max value within the array. - * @param arr - * @returns {*} It is an object with index, key, value. - */ -ArrayUtils.FindMinMax = function (arr, fncompare) { - var result = null; - for (var key in arr) { - if (result == null || fncompare(arr[key], result.value)) - result = { index: -1, key: key, value: arr[key] }; - } - - return result; -}//EndFunction. - diff --git a/bower_components/jsdatachecker/src/DataTypeConverter.js b/bower_components/jsdatachecker/src/DataTypeConverter.js deleted file mode 100644 index 98e7d03..0000000 --- a/bower_components/jsdatachecker/src/DataTypeConverter.js +++ /dev/null @@ -1,376 +0,0 @@ -/* - ** This file is part of JSDataChecker. - ** - ** JSDataChecker is free software: you can redistribute it and/or modify - ** it under the terms of the GNU General Public License as published by - ** the Free Software Foundation, either version 3 of the License, or - ** (at your option) any later version. - ** - ** JSDataChecker is distributed in the hope that it will be useful, - ** but WITHOUT ANY WARRANTY; without even the implied warranty of - ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - ** GNU General Public License for more details. - ** - ** You should have received a copy of the GNU General Public License - ** along with JSDataChecker. If not, see . - ** - ** Copyright (C) 2016 JSDataChecker - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - -function DataTypeConverter() { - this._fields = []; - this._numOfRows = 0; -};//EndConstructor. - -DataTypeConverter.TYPES = { - TEXT : { value: 0, name: "TEXT" }, - CODE : { value: 1, name: "CODE"}, - - NUMBER : { value: 2, name: "NUMBER" }, - OBJECT : { value: 3, name: "OBJECT" }, - - - BOOL : { value: 5, name: "BOOL"}, - CONST : { value: 6, name: "CONST" }, - CATEGORY : { value: 7, name: "CATEGORY" }, - - DATETIME : { value: 8, name: "DATETIME" }, - - - - EMPTY : { value: 101, name: "NULL" } -}; - -DataTypeConverter.SUBTYPES = { - PERCENTAGE : { value: 1000, name: "PERCENTAGE" }, - LATITUDE : { value: 1001, name: "LATITUDE" }, - LONGITUDE : { value: 1002, name: "LONGITUDE" } -}; - -DataTypeConverter.prototype = (function () { - - /*** - * Make an asynchronous call to load the content. - * @param theUrl - * @param callback - * @deprecated - */ - var httpGetAsync = function(theUrl, callbackOnFinish) { - console.warn("Calling deprecated function."); - var xhttp = new XMLHttpRequest(); - xhttp.onreadystatechange = function() { - if (xhttp.readyState == 4 && xhttp.status == 200) - _processDataset(xhttp.responseText, callbackOnFinish); - } - xhttp.open("GET", theUrl, true); // true for asynchronous - xhttp.send(null); - };//EndFunction. - - /*var _processDataset = function (jsonRows) { - //Check if the jsonRow is an array. - if (Array.isArray(jsonRows) == false) return; - - for (var i=0; i lastval; - }); - field.type = max.key; - field.typeConfidence = field._inferredTypes[max.key] / field.numOfItems; - - /*//TODO: improve this piece of code. - //LAT/LNG. - var fieldName = field.name.toLowerCase(); - var isLatType = (field.type === DataTypeConverter.TYPES.LATITUDE.name); - var fieldNameContainsLat = fieldName.indexOf('lat') >= 0; - var fieldNameContainsLon = fieldName.indexOf('ng') >= 0; //It could be 'lng'. - if (isLatType == true && fieldNameContainsLat == false && fieldNameContainsLon == true) { - field.type = DataTypeConverter.TYPES.LONGITUDE.name; - }*/ - - //BOOLEAN. - /*var numOfValues = Object.keys(field._inferredValues).length; - if (field.type === DataTypeConverter.TYPES.TEXT.name) { - //if (numOfValues == 1) field.type = DataTypeConverter.TYPES.CONST.name; - //else if (numOfValues == 2) field.type = DataTypeConverter.TYPES.BOOL.name; - //else - if (numOfValues < field.numOfItems * 0.20) field.type = DataTypeConverter.TYPES.CATEGORY.name; - }*/ - }); - };//EndFunction. - - /** - * Given a dataset value, it tries to recognise the data types. - * This is the central function within the library. - * @param value - * @returns {*} - * @private - */ - var _processInferType = function(value) { - //value = value.toLocaleString(); - - if (value === null || typeof value == 'undefined') - return DataTypeConverter.TYPES.EMPTY; - - if (typeof value === 'object') - return DataTypeConverter.TYPES.OBJECT; - - //If the value starts with a zero and contains all numbers, it is - //inferred as textual content. - if (/^0[0-9]+$/.test(value)) - return DataTypeConverter.TYPES.CODE; - - //Try to parse the float. - var isnumber = DataTypesUtils.FilterFloat(value); - if (isNaN(isnumber) !== true) {//It is a number. - //If the number ranges from -90.0 to 90.0, the value is marked as Latitude. - //if (-90.0 <= isnumber && isnumber <= 90.0 && _dataTypesUtils.decimalPlaces(isnumber) >= 5) - // return DataTypeConverter.TYPES.LATITUDE; - - //It the number ranges from -180.0 to 180.0, the value is marked as Longitude. - //if (-180.0 <= isnumber && isnumber <= 180.0 && _dataTypesUtils.decimalPlaces(isnumber) >= 5) - // return DataTypeConverter.TYPES.LONGITUDE; - - /*if (0.0 <= isnumber && isnumber <= 100.0) - if(/^(\+)?((0|([1-9][0-9]*))\.([0-9]+))$/ .test(value)) - return DataTypeConverter.TYPES.PERCENTAGE;*/ - - return DataTypeConverter.TYPES.NUMBER; - } - - var _date = DataTypesUtils.FilterDateTime(value); - if (isNaN(_date) == false && _date != null) - return DataTypeConverter.TYPES.DATETIME; - - - return DataTypeConverter.TYPES.TEXT; - };//EndFunction. - - var jsonTraverse = function(json, fieldKeys, callback) { - var stack = []; - var numOfRows = 0; - stack.push({ item: json, fieldKeyIndex: 0 }); - - while (stack.length > 0) { - var stackTask = stack.pop(); - var item = stackTask.item; - var fieldKeyIndex = stackTask.fieldKeyIndex; - var fieldKey = fieldKeys[fieldKeyIndex]; - - //Test fieldKey Value. - if (fieldKey == '*') { - var sProcessedKeys = fieldKeys.slice(0, fieldKeyIndex).toString(); - - ArrayUtils.IteratorOverKeys(item, function (value, key) { - var curKey = sProcessedKeys + "," + key; - var _value = callback(value, key, curKey, numOfRows); - item[key] = _value; - }); - - numOfRows++; - continue; - } - - var jsonSubtree = item[fieldKey]; - if (Array.isArray(jsonSubtree)) { //It is an array. - for (var j=0; jfield2->field3 - */ - convert: function (metadata) { - var lastRowIndex = 0; - var isRowInvalid = false; - var numOfRowsInvalid = 0; - - var numOfRows = 0; - var numOfValues = 0; - - var datasetErrors = 0; - var datasetMissingValues = 0; - - jsonTraverse(metadata.dataset, metadata.fieldKeys, function(value, key, traversedKeys, rowIndex) { - var inferredType = metadata.types[traversedKeys]; - numOfValues++; - - if (lastRowIndex != rowIndex) { - lastRowIndex = rowIndex; - numOfRows++; - //if (isRowInvalid) numOfRowsInvalid++; - } - - if (value == null || typeof value == 'undefined' || (value + "").length == 0) { - //datasetErrors++; - } //isRowInvalid = true; - - if (inferredType.type == DataTypeConverter.TYPES.NUMBER.name) { - var number = parseFloat(value); - - if (isNaN(number)) { - datasetErrors++; - return value; - } - - return number; - } - - return value; - }); - - - metadata.qualityIndex.notNullValues = (numOfValues - datasetMissingValues) / numOfValues; - metadata.qualityIndex.errors = (numOfValues - datasetErrors) / numOfValues; - - debugger; - return metadata; - },//EndFunction. - - /** - * It parses the json and infers the data types. - * @param json - * @param path Array of field keys/names. - */ - inferJsonDataType: function (json, fieldKeys) { - var stack = []; - var fieldsType = []; - var numOfRows = 0; - - if (typeof fieldKeys == 'undefined') - throw "IllegalArgumentException: undefined json path to analyse."; - - //Insert the first item (json root) within the stack. - stack.push({ item: json, fieldKeyIndex: 0 }); - - while (stack.length > 0) { - var stackTask = stack.pop(); - var item = stackTask.item; - var fieldKeyIndex = stackTask.fieldKeyIndex; - var fieldKey = fieldKeys[fieldKeyIndex]; - - //Test fieldKey Value. - if (fieldKey == '*') { - var sProcessedKeys = fieldKeys.slice(0, fieldKeyIndex).toString(); - - ArrayUtils.IteratorOverKeys(item, function (item, key) { - var inferredType = _processInferType(item); - var curKey = sProcessedKeys + "," + key; - - var fieldType = ArrayUtils.TestAndSet(fieldsType, curKey, { name: curKey, _inferredTypes: [], _inferredValues: [], numOfItems: 0 }); - fieldType.numOfItems++; - ArrayUtils.TestAndIncrement(fieldType._inferredTypes, inferredType.name); - if (inferredType === DataTypeConverter.TYPES.TEXT) - ArrayUtils.TestAndIncrement(fieldType._inferredValues, item); - //if (inferredType === DataTypeConverter.TYPES.LATITUDE || inferredType === DataTypeConverter.TYPES.LONGITUDE) - // ArrayUtils.TestAndIncrement(fieldType._inferredTypes, DataTypeConverter.TYPES.NUMBER); - - }); - - numOfRows++; - continue; - } - - var jsonSubtree = item[fieldKey]; - if (Array.isArray(jsonSubtree)) { //It is an array. - for (var j=0; j. - ** - ** Copyright (C) 2016 JSDataChecker - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - -function DataTypesUtils() {} - -DataTypesUtils.FilterTime = function (value) { - var expTime = /^[0-9]{2}:[0-9]{2}(:[0-9]{2})?(\+[0-9]{2}:[0-9]{2})?$/; - if (expTime.test(value) == false) return null; - - var splitted = value.split(/[:|\+]/); - - var expNumber = /^[0-9]{2}$/; - var HH = expNumber.test(splitted[0]) ? parseInt(splitted[0]) : 0; - var MM = expNumber.test(splitted[1]) ? parseInt(splitted[1]) : 0; - var SS = splitted.length >=3 && expNumber.test(splitted[2]) ? parseInt(splitted[2]) : 0; - - var dt = new Date(); - dt.setHours(HH); - dt.setMinutes(MM); - dt.setSeconds(SS); - return dt; -}//EndFunction. - -DataTypesUtils.FilterDateTime = function (value) { - var _dtSplitted = value.split(/[T|\s]/); - if (_dtSplitted.length == 2) { - var dtTime = DataTypesUtils.FilterTime(_dtSplitted[1]); - if (dtTime == null) return null; - - var dtDateTime = DataTypesUtils.FilterDate(_dtSplitted[0], dtTime); - return dtDateTime; - } else { - var dtDate = DataTypesUtils.FilterDate(value); - if (dtDate != null) return dtDate; - - var dtTime = DataTypesUtils.FilterTime(value); - return dtTime; - } -}//EndFunction. - -DataTypesUtils.FilterDate = function (value, dtDate) { - if (dtDate == null) dtDate = new Date(); - - //year-month. - if (/^[0-9][0-9][0-9][0-9]\-[0-9][0-9]$/.test(value)) { - var year = parseInt(value.substring(0, 4)); - var month = parseInt(value.substring(5)); - dtDate.setYear(year); - dtDate.setMonth(month); - return dtDate; - } - - var expDate = /^[0-9]{4}(\-|\/)[0-9]{2}((\-|\/)[0-9]{2})?$/; - if (expDate.test(value)) { - var splitted = value.split(/[\-|\/]/); - var year = parseInt(splitted[0]); - var month = parseInt(splitted[1]); - var day = splitted.length == 3 ? parseInt(splitted[2]) : 0; - dtDate.setYear(year); - dtDate.setMonth(month); - dtDate.setDate(day); - return dtDate; - } - - expDate = /^[0-9]{2}(\-|\/)[0-9]{2}(\-|\/)[0-9]{4}$/; - if (expDate.test(value)) { - var splitted = value.split(/[\-|\/]/); - var year = parseInt(splitted[2]); - var month = parseInt(splitted[1]); - var day = parseInt(splitted[0]); - dtDate.setYear(year); - dtDate.setMonth(month); - dtDate.setDate(day); - return dtDate; - } - - return null; -};//EndFunction. - -/** - * Converts the value in a number, NaN if it is not a number. - * @param value - * @returns {*} - */ -DataTypesUtils.FilterFloat = function (value) { - if(/^(\-|\+)?((0|([1-9][0-9]*))(\.[0-9]+)?|Infinity)$/ - .test(value)) - return Number(value); - return NaN; -};//EndFunction. - -/** - * Solution from here: - * http://stackoverflow.com/questions/10454518/javascript-how-to-retrieve-the-number-of-decimals-of-a-string-number - * @param num - * @returns {number} - */ -DataTypesUtils.DecimalPlaces = function (num) { - var match = (''+num).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/); - if (!match) { return 0; } - return Math.max( - 0, - // Number of digits right of decimal point. - (match[1] ? match[1].length : 0) - // Adjust for scientific notation. - - (match[2] ? +match[2] : 0)); -}//EndFunction. \ No newline at end of file diff --git a/bower_components/jsdatachecker/src/ODPlatforms/ODSApi.js b/bower_components/jsdatachecker/src/ODPlatforms/ODSApi.js deleted file mode 100644 index 8b1ee9e..0000000 --- a/bower_components/jsdatachecker/src/ODPlatforms/ODSApi.js +++ /dev/null @@ -1,98 +0,0 @@ -/* - ** This file is part of ChartViz. - ** - ** ChartViz is free software: you can redistribute it and/or modify - ** it under the terms of the GNU General Public License as published by - ** the Free Software Foundation, either version 3 of the License, or - ** (at your option) any later version. - ** - ** ChartViz is distributed in the hope that it will be useful, - ** but WITHOUT ANY WARRANTY; without even the implied warranty of - ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - ** GNU General Public License for more details. - ** - ** You should have received a copy of the GNU General Public License - ** along with ChartViz. If not, see . - ** - ** Copyright (C) 2016 ChartViz - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - -function ODSApi() { -} - -ODSApi.prototype = (function() { - - var _arrUtil = new ArrayUtils(); - - var httpGetAsync = function(theUrl, callback, callbackOnFinish) { - //var asynch = typeof asynch === 'undefined' ? true : asynch; - var xhttp = new XMLHttpRequest(); - xhttp.onreadystatechange = function() { - if (xhttp.readyState == 4 && xhttp.status == 200) - callback(theUrl, xhttp.responseText, callbackOnFinish); - }; - xhttp.open("GET", theUrl, true);//true for asynchronous. - xhttp.send(null); - };//EndFunction. - - var _processListOfDataset = function(baseUrl, requestContent, callbackOnFinish) { - var jsonContent = JSON.parse(requestContent); - var jsonDatasets = jsonContent.datasets; - - var resultDatasets = []; - - for (var i=0; i. - ** - ** Copyright (C) 2016 ChartViz - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - - -//This JS class allows the connection to a ckan platform. - -function CKANApi() { -}//EndFunction. - -CKANApi.prototype = (function() { - - var _arrUtil = new ArrayUtils(); - - var httpGetAsync = function(theUrl, callback) { - var xhttp = new XMLHttpRequest(); - xhttp.onreadystatechange = function() { - if (xhttp.readyState == 4 && xhttp.status == 200) - _processListOfDataset(xhttp.responseText); - }; - xhttp.open("GET", theUrl, true);//true for asynchronous. - xhttp.send(null); - };//EndFunction. - - var _processListOfDataset = function(requestContent) { - var jsonContent = JSON.parse(requestContent); - if (jsonContent.success == false) return; - var ckanresults = jsonContent.result.results; - - - var datasetsCSV = []; - var arrFormatsSummary = []; - - for (var i=0; i. - ** - ** Copyright (C) 2016 ChartViz - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - -function DataTypeAnalyser() {} - -DataTypeAnalyser.TYPES = { - TEXT : { value: 0, name: "TEXT" }, - NUMBER : { value: 1, name: "NUMBER" }, - PERCENTAGE : { value: 2, name: "PERCENTAGE" }, - - LATITUDE : { value: 3, name: "LATITUDE" }, - LONGITUDE : { value: 4, name: "LONGITUDE" }, - BOOL : { value: 5, name: "BOOL"}, - CONST : { value: 6, name: "CONST" }, - CATEGORY : { value: 7, name: "CATEGORY" }, - - DATETIME : { value: 8, name: "DATETIME" }, - OBJECT : { value: 100, name: "OBJECT" } -}; - -DataTypeAnalyser.prototype = (function () { - - var _fields = []; - var _numOfRows = 0; - var _arrUtil = new ArrayUtils(); - var _dataTypesUtils = new DataTypesUtils(); - - /*** - * Make an asynchronous call to load the content. - * @param theUrl - * @param callback - */ - var httpGetAsync = function(theUrl, callbackOnFinish) { - var xhttp = new XMLHttpRequest(); - xhttp.onreadystatechange = function() { - if (xhttp.readyState == 4 && xhttp.status == 200) - _processDataset(xhttp.responseText, callbackOnFinish); - } - xhttp.open("GET", theUrl, true); // true for asynchronous - xhttp.send(null); - };//EndFunction. - - var _processDataset = function (jsonRows) { - //Check if the jsonRow is an array. - if (Array.isArray(jsonRows) == false) return; - - for (var i=0; i lastval; - }); - field.type = max.key; - field.typeConfidence = field._inferredTypes[max.key] / _numOfRows; - - /*//TODO: improve this piece of code. - //LAT/LNG. - var fieldName = field.name.toLowerCase(); - var isLatType = (field.type === DataTypeAnalyser.TYPES.LATITUDE.name); - var fieldNameContainsLat = fieldName.indexOf('lat') >= 0; - var fieldNameContainsLon = fieldName.indexOf('ng') >= 0; //It could be 'lng'. - if (isLatType == true && fieldNameContainsLat == false && fieldNameContainsLon == true) { - field.type = DataTypeAnalyser.TYPES.LONGITUDE.name; - }*/ - - //BOOLEAN. - var numOfValues = Object.keys(field._inferredValues).length; - if (field.type === DataTypeAnalyser.TYPES.TEXT.name) { - if (numOfValues == 1) field.type = DataTypeAnalyser.TYPES.CONST.name; - //else if (numOfValues == 2) field.type = DataTypeAnalyser.TYPES.BOOL.name; - else if (numOfValues < _numOfRows * 0.20) field.type = DataTypeAnalyser.TYPES.CATEGORY.name; - } - }); - };//EndFunction. - - /*var _dataTypeAnalyserField = function (field) { - var max = _arrUtil.findMinMax(field._inferredTypes, function (curval, lastval) { - return curval > lastval; - }); - field.type = max.key; - field.typeConfidence = field._inferredTypes[max.key] / _numOfRows; - - //TODO: improve this piece of code. - //LAT/LNG. - var fieldName = field.name.toLowerCase(); - var isLatType = (field.type === ChartProcessor.TYPES.LATITUDE.name); - var fieldNameContainsLat = fieldName.indexOf('lat') >= 0; - var fieldNameContainsLon = fieldName.indexOf('ng') >= 0; //It could be 'lng'. - if (isLatType == true && fieldNameContainsLat == false && fieldNameContainsLon == true) { - field.type = ChartProcessor.TYPES.LONGITUDE.name; - } - - //BOOLEAN. - var numOfValues = Object.keys(field._inferredValues).length; - if (field.type === ChartProcessor.TYPES.TEXT.name) { - if (numOfValues == 1) field.type = ChartProcessor.TYPES.CONST.name; - else if (numOfValues == 2) field.type = ChartProcessor.TYPES.BOOL.name; - else if (numOfValues < _numOfRows * 0.10) field.type = ChartProcessor.TYPES.CATEGORY.name; - } - };//EndFunction.*/ - - /** - * Given a dataset value, it tries to recognise the data types. - * This is the central function within the library. - * @param value - * @returns {*} - * @private - */ - var _processInferType = function(value) { - //value = value.toLocaleString(); - - if (typeof value === 'object') - return DataTypeAnalyser.TYPES.OBJECT; - - //Try to parse the float. - var isnumber = _dataTypesUtils.filterFloat(value); - if (isNaN(isnumber) !== true) {//It is a number. - //If the number ranges from -90.0 to 90.0, the value is marked as Latitude. - //if (-90.0 <= isnumber && isnumber <= 90.0 && _dataTypesUtils.decimalPlaces(isnumber) >= 5) - // return DataTypeAnalyser.TYPES.LATITUDE; - - //It the number ranges from -180.0 to 180.0, the value is marked as Longitude. - //if (-180.0 <= isnumber && isnumber <= 180.0 && _dataTypesUtils.decimalPlaces(isnumber) >= 5) - // return DataTypeAnalyser.TYPES.LONGITUDE; - - if (0.0 <= isnumber && isnumber <= 100.0) - if(/^(\+)?((0|([1-9][0-9]*))\.([0-9]+))$/ .test(value)) - return DataTypeAnalyser.TYPES.PERCENTAGE; - - return DataTypeAnalyser.TYPES.NUMBER; - } - - var _date = Date.parse(value); - if (isNaN(_date) == false) - return DataTypeAnalyser.TYPES.DATETIME; - - - return DataTypeAnalyser.TYPES.TEXT; - };//EndFunction. - - return { - constructor: DataTypeAnalyser, - - inferDataTypes: function (jsonRows) { - _fields = []; - _numOfRows = 0; - _processDataset(jsonRows); - return _fields; - },//EndFunction. - - inferDataTypeOfValue: function (value) { - return _processInferType(value); - }//EndFunction. - - }; -})(); diff --git a/bower_components/jsdatachecker/src/oldsrc/chartviz.js b/bower_components/jsdatachecker/src/oldsrc/chartviz.js deleted file mode 100644 index f87a6fc..0000000 --- a/bower_components/jsdatachecker/src/oldsrc/chartviz.js +++ /dev/null @@ -1,178 +0,0 @@ - /* - ** This file is part of ChartViz. - ** - ** ChartViz is free software: you can redistribute it and/or modify - ** it under the terms of the GNU General Public License as published by - ** the Free Software Foundation, either version 3 of the License, or - ** (at your option) any later version. - ** - ** ChartViz is distributed in the hope that it will be useful, - ** but WITHOUT ANY WARRANTY; without even the implied warranty of - ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - ** GNU General Public License for more details. - ** - ** You should have received a copy of the GNU General Public License - ** along with ChartViz. If not, see . - ** - ** Copyright (C) 2016 ChartViz - Donato Pirozzi (donatopirozzi@gmail.com) - ** Distributed under the GNU GPL v3. For full terms see the file LICENSE. - ** License: http://www.gnu.org/licenses/gpl.html GPL version 3 or higher - **/ - -//. Find a batter way to include dependent scripts. -//document.write(''); -//document.write(''); - -function ChartProcessor() { -} - -ChartProcessor.TYPES = { - TEXT : { value: 0, name: "TEXT" }, - NUMBER : { value: 1, name: "NUMBER" }, - LATITUDE : { value: 2, name: "LATITUDE" }, - LONGITUDE : { value: 2, name: "LONGITUDE" }, - BOOL : { value: 3, name: "BOOL"}, - CONST : { value: 4, name: "BOOL" }, - CATEGORY : { value: 5, name: "CATEGORY" } -}; - -ChartProcessor.prototype = (function () { - - var _fields = []; - var _numOfRows = 0; - var _arrUtil = new ArrayUtils(); - var _dataTypesUtils = new DataTypesUtils(); - - /*** - * Make an asynchronous call to load the content. - * @param theUrl - * @param callback - */ - var httpGetAsync = function(theUrl, callbackOnFinish) { - var xhttp = new XMLHttpRequest(); - xhttp.onreadystatechange = function() { - if (xhttp.readyState == 4 && xhttp.status == 200) - _processDataset(xhttp.responseText, callbackOnFinish); - } - xhttp.open("GET", theUrl, true); // true for asynchronous - xhttp.send(null); - };//EndFunction. - - var _processDataset = function (datasetContent, callbackOnFinish) { - //Split the dataset rows. - var rows = datasetContent.split("\n"); - - //The assumption is that the first row is the header. - _processHeader(rows[0]); - - //Loop through the dataset's rows. - var i; - for (i=1; i lastval; - }); - field.type = max.key; - field.typeConfidence = field._inferredTypes[max.key] / _numOfRows; - - //TODO: improve this piece of code. - //LAT/LNG. - var fieldName = field.name.toLowerCase(); - var isLatType = (field.type === ChartProcessor.TYPES.LATITUDE.name); - var fieldNameContainsLat = fieldName.indexOf('lat') >= 0; - var fieldNameContainsLon = fieldName.indexOf('ng') >= 0; //It could be 'lng'. - if (isLatType == true && fieldNameContainsLat == false && fieldNameContainsLon == true) { - field.type = ChartProcessor.TYPES.LONGITUDE.name; - } - - //BOOLEAN. - var numOfValues = Object.keys(field._inferredValues).length; - if (field.type === ChartProcessor.TYPES.TEXT.name) { - if (numOfValues == 1) field.type = ChartProcessor.TYPES.CONST.name; - else if (numOfValues == 2) field.type = ChartProcessor.TYPES.BOOL.name; - else if (numOfValues < _numOfRows * 0.10) field.type = ChartProcessor.TYPES.CATEGORY.name; - } - - console.log("ccc"); - }); - - //Call the user function. - callbackOnFinish(_fields); - };//EndFunction. - - var _processHeader = function(header) { - var fields = _processSplitRow(header); - fields.map( function(item) { _fields.push({ name: item, _inferredTypes: [], _inferredValues: [] }); }); - };//EndFunction. - - var _processRow = function(row) { - //Avoid empty rows - if (typeof row === 'undefined') return; - row = row.trim(); - if (row.length == 0) return; - - //Process the ROW. - var values = _processSplitRow(row); - var i; - for (i=0; i - - - - - - -

Dataset Visualizer

- - Dataset URL: - - -
-
- - - - - - - - - - - - -
- - - - \ No newline at end of file diff --git a/bower_components/jsdatachecker/tooldemo/index.html b/bower_components/jsdatachecker/tooldemo/index.html deleted file mode 100644 index fd7934d..0000000 --- a/bower_components/jsdatachecker/tooldemo/index.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - - - - - - - - - - -

Dataset Visualizer

- - Dataset URL: - - -
- - - - - - - - - - - - - - - - - - -
Data homogeneity:sbiricuda
Dataset Consistent Values:sbiricuda
- - -
- - - - - - - - - - - - -
- - - - \ No newline at end of file diff --git a/controllets/data-table-controllet/data-table-controllet.html b/controllets/data-table-controllet/data-table-controllet.html new file mode 100644 index 0000000..258487e --- /dev/null +++ b/controllets/data-table-controllet/data-table-controllet.html @@ -0,0 +1,307 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/controllets/providers-utility-controllet/ckan.js b/controllets/providers-utility-controllet/ckan.js new file mode 100644 index 0000000..f150b25 --- /dev/null +++ b/controllets/providers-utility-controllet/ckan.js @@ -0,0 +1,17 @@ +//function _path() { +// return "result->records" +//} +// +//function _arrayPath() { +// return ["result", "records", "*"]; +//} + +function ckan_Provider (url) { + this.url = url; + this.path = "result->records"; +} + +ckan_Provider.prototype.getData = function() { + console.log("ckan"); + return 'ckan'; +}; \ No newline at end of file diff --git a/controllets/providers-utility-controllet/generic.js b/controllets/providers-utility-controllet/generic.js new file mode 100644 index 0000000..9496dfc --- /dev/null +++ b/controllets/providers-utility-controllet/generic.js @@ -0,0 +1,3 @@ +/** + * Created by renato on 25/05/16. + */ diff --git a/controllets/providers-utility-controllet/openDataSoft.js b/controllets/providers-utility-controllet/openDataSoft.js new file mode 100644 index 0000000..ffc3275 --- /dev/null +++ b/controllets/providers-utility-controllet/openDataSoft.js @@ -0,0 +1,8 @@ +function openDataSoft_Provider (url) { + this.url = url; + this.path = "result->records"; +} + +openDataSoft_Provider.prototype.getData = function() { + return 'openDataSoft'; +}; \ No newline at end of file diff --git a/controllets/providers-utility-controllet/providers-utility-controllet.html b/controllets/providers-utility-controllet/providers-utility-controllet.html new file mode 100644 index 0000000..d538fea --- /dev/null +++ b/controllets/providers-utility-controllet/providers-utility-controllet.html @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/controllets/select-data-controllet/select-data-controllet_old.html b/controllets/select-data-controllet/select-data-controllet_old.html new file mode 100755 index 0000000..5faabb6 --- /dev/null +++ b/controllets/select-data-controllet/select-data-controllet_old.html @@ -0,0 +1,206 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/controllets/select-fields-controllet/demo/index.html b/controllets/select-fields-controllet/demo/index.html new file mode 100755 index 0000000..b9d0b11 --- /dev/null +++ b/controllets/select-fields-controllet/demo/index.html @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + +
+ +
+ + + + +
+ +
+

Selected fields:

+

 

+
+ +
+ + + + + + + + + + + + + + \ No newline at end of file -- libgit2 0.21.4