Files
awx/ansibleworks/ui/static/lib/js-yaml/js-yaml.min.js

6 lines
166 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
var jsyaml=window.jsyaml=function(){require=function(e,t,n){function i(n,s){if(!t[n]){if(!e[n]){var o=typeof require=="function"&&require;if(!s&&o)return o(n,!0);if(r)return r(n,!0);throw new Error("Cannot find module '"+n+"'")}var u=t[n]={exports:{}};e[n][0].call(u.exports,function(t){var r=e[n][1][t];return i(r?r:t)},u,u.exports)}return t[n].exports}var r=typeof require=="function"&&require;for(var s=0;s<n.length;s++)i(n[s]);return i}({"./index":[function(require,module,exports){module.exports=require("jPUIy0")},{}],jPUIy0:[function(require,module,exports){module.exports=require("./lib/js-yaml.js")},{"./lib/js-yaml.js":1}],1:[function(require,module,exports){"use strict";var loader=require("./js-yaml/loader");var dumper=require("./js-yaml/dumper");function deprecated(name){return function(){throw new Error("Function "+name+" is deprecated and cannot be used.")}}module.exports.NIL=require("./js-yaml/common").NIL;module.exports.Type=require("./js-yaml/type");module.exports.Schema=require("./js-yaml/schema");module.exports.FAILSAFE_SCHEMA=require("./js-yaml/schema/failsafe");module.exports.JSON_SCHEMA=require("./js-yaml/schema/json");module.exports.CORE_SCHEMA=require("./js-yaml/schema/core");module.exports.DEFAULT_SAFE_SCHEMA=require("./js-yaml/schema/default_safe");module.exports.DEFAULT_FULL_SCHEMA=require("./js-yaml/schema/default_full");module.exports.load=loader.load;module.exports.loadAll=loader.loadAll;module.exports.safeLoad=loader.safeLoad;module.exports.safeLoadAll=loader.safeLoadAll;module.exports.dump=dumper.dump;module.exports.safeDump=dumper.safeDump;module.exports.YAMLException=require("./js-yaml/exception");module.exports.MINIMAL_SCHEMA=require("./js-yaml/schema/failsafe");module.exports.SAFE_SCHEMA=require("./js-yaml/schema/default_safe");module.exports.DEFAULT_SCHEMA=require("./js-yaml/schema/default_full");module.exports.scan=deprecated("scan");module.exports.parse=deprecated("parse");module.exports.compose=deprecated("compose");module.exports.addConstructor=deprecated("addConstructor");require("./js-yaml/require")},{"./js-yaml/loader":2,"./js-yaml/dumper":3,"./js-yaml/type":4,"./js-yaml/schema/failsafe":5,"./js-yaml/schema/json":6,"./js-yaml/schema/core":7,"./js-yaml/schema/default_safe":8,"./js-yaml/schema/default_full":9,"./js-yaml/require":10,"./js-yaml/schema":11,"./js-yaml/common":12,"./js-yaml/exception":13}],14:[function(require,module,exports){},{}],2:[function(require,module,exports){"use strict";var common=require("./common");var YAMLException=require("./exception");var Mark=require("./mark");var NIL=common.NIL;var DEFAULT_SAFE_SCHEMA=require("./schema/default_safe");var DEFAULT_FULL_SCHEMA=require("./schema/default_full");var _hasOwnProperty=Object.prototype.hasOwnProperty;var KIND_STRING="string";var KIND_ARRAY="array";var KIND_OBJECT="object";var CONTEXT_FLOW_IN=1;var CONTEXT_FLOW_OUT=2;var CONTEXT_BLOCK_IN=3;var CONTEXT_BLOCK_OUT=4;var CHOMPING_CLIP=1;var CHOMPING_STRIP=2;var CHOMPING_KEEP=3;var CHAR_TAB=9;var CHAR_LINE_FEED=10;var CHAR_CARRIAGE_RETURN=13;var CHAR_SPACE=32;var CHAR_EXCLAMATION=33;var CHAR_DOUBLE_QUOTE=34;var CHAR_SHARP=35;var CHAR_PERCENT=37;var CHAR_AMPERSAND=38;var CHAR_SINGLE_QUOTE=39;var CHAR_ASTERISK=42;var CHAR_PLUS=43;var CHAR_COMMA=44;var CHAR_MINUS=45;var CHAR_DOT=46;var CHAR_SLASH=47;var CHAR_DIGIT_ZERO=48;var CHAR_DIGIT_ONE=49;var CHAR_DIGIT_NINE=57;var CHAR_COLON=58;var CHAR_LESS_THAN=60;var CHAR_GREATER_THAN=62;var CHAR_QUESTION=63;var CHAR_COMMERCIAL_AT=64;var CHAR_CAPITAL_A=65;var CHAR_CAPITAL_F=70;var CHAR_CAPITAL_L=76;var CHAR_CAPITAL_N=78;var CHAR_CAPITAL_P=80;var CHAR_CAPITAL_U=85;var CHAR_LEFT_SQUARE_BRACKET=91;var CHAR_BACKSLASH=92;var CHAR_RIGHT_SQUARE_BRACKET=93;var CHAR_UNDERSCORE=95;var CHAR_GRAVE_ACCENT=96;var CHAR_SMALL_A=97;var CHAR_SMALL_B=98;var CHAR_SMALL_E=101;var CHAR_SMALL_F=102;var CHAR_SMALL_N=110;var CHAR_SMALL_R=114;var CHAR_SMALL_T=116;var CHAR_SMALL_U=117;var CHAR_SMALL_V=118;var CHAR_SMALL_X=120;var CHAR_LEFT_CURLY_BRACKET=123;var CHAR_VERTICAL_LINE=124;var CHAR_RIGHT_CURLY_BRACKET=125;var SIMPLE_ESCAPE_SEQUENCES={};SIMPLE_ESCAPE_SEQUENCES[CHAR_DIGIT_ZERO]="\0";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_A]="";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_B]="\b";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_T]=" ";SIMPLE_ESCAPE_SEQUENCES[CHAR_TAB]=" ";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_N]="\n";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_V]=" ";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_F]="\f";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_R]="\r";SIMPLE_ESCAPE_SEQUENCES[CHAR_SMALL_E]="";SIMPLE_ESCAPE_SEQUENCES[CHAR_SPACE]=" ";SIMPLE_ESCAPE_SEQUENCES[CHAR_DOUBLE_QUOTE]='"';SIMPLE_ESCAPE_SEQUENCES[CHAR_SLASH]="/";SIMPLE_ESCAPE_SEQUENCES[CHAR_BACKSLASH]="\\";SIMPLE_ESCAPE_SEQUENCES[CHAR_CAPITAL_N]="…";SIMPLE_ESCAPE_SEQUENCES[CHAR_UNDERSCORE]=" ";SIMPLE_ESCAPE_SEQUENCES[CHAR_CAPITAL_L]="\u2028";SIMPLE_ESCAPE_SEQUENCES[CHAR_CAPITAL_P]="\u2029";var HEXADECIMAL_ESCAPE_SEQUENCES={};HEXADECIMAL_ESCAPE_SEQUENCES[CHAR_SMALL_X]=2;HEXADECIMAL_ESCAPE_SEQUENCES[CHAR_SMALL_U]=4;HEXADECIMAL_ESCAPE_SEQUENCES[CHAR_CAPITAL_U]=8;var PATTERN_NON_PRINTABLE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uD800-\uDFFF\uFFFE\uFFFF]/;var PATTERN_NON_ASCII_LINE_BREAKS=/[\x85\u2028\u2029]/;var PATTERN_FLOW_INDICATORS=/[,\[\]\{\}]/;var PATTERN_TAG_HANDLE=/^(?:!|!!|![a-z\-]+!)$/i;var PATTERN_TAG_URI=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function loadAll(input,output,options){options=options||{};var filename=options["filename"]||null,schema=options["schema"]||DEFAULT_FULL_SCHEMA,resolve=options["resolve"]||true,validate=options["validate"]||true,strict=options["strict"]||false,legacy=options["legacy"]||false,directiveHandlers={},implicitTypes=schema.compiledImplicit,typeMap=schema.compiledTypeMap,length=input.length,position=0,line=0,lineStart=0,lineIndent=0,character=input.charCodeAt(position),version,checkLineBreaks,tagMap,anchorMap,tag,anchor,kind,result;function generateError(message){return new YAMLException(message,new Mark(filename,input,position,line,position-lineStart))}function throwError(message){throw generateError(message)}function throwWarning(message){var error=generateError(message);if(strict){throw error}else{console.warn(error.toString())}}directiveHandlers["YAML"]=function handleYamlDirective(name,args){var match,major,minor;if(null!==version){throwError("duplication of %YAML directive")}if(1!==args.length){throwError("YAML directive accepts exactly one argument")}match=/^([0-9]+)\.([0-9]+)$/.exec(args[0]);if(null===match){throwError("ill-formed argument of the YAML directive")}major=parseInt(match[1],10);minor=parseInt(match[2],10);if(1!==major){throwError("unacceptable YAML version of the document")}version=args[0];checkLineBreaks=minor<2;if(1!==minor&&2!==minor){throwWarning("unsupported YAML version of the document")}};directiveHandlers["TAG"]=function handleTagDirective(name,args){var handle,prefix;if(2!==args.length){throwError("TAG directive accepts exactly two arguments")}handle=args[0];prefix=args[1];if(!PATTERN_TAG_HANDLE.test(handle)){throwError("ill-formed tag handle (first argument) of the TAG directive")}if(_hasOwnProperty.call(tagMap,handle)){throwError('there is a previously declared suffix for "'+handle+'" tag handle')}if(!PATTERN_TAG_URI.test(prefix)){throwError("ill-formed tag prefix (second argument) of the TAG directive")}tagMap[handle]=prefix};function captureSegment(start,end,checkJson){var _position,_length,_character,_result;if(start<end){_result=input.slice(start,end);if(checkJson&&validate){for(_position=0,_length=_result.length;_position<_length;_position+=1){_character=_result.charCodeAt(_position);if(!(9===_character||32<=_character&&_character<=1114111)){throwError("expected valid JSON character")}}}result+=_result}}function mergeMappings(destination,source){var sourceKeys,key,index,quantity;if(!common.isObject(source)){throwError("cannot merge mappings; the provided source object is unacceptable")}sourceKeys=Object.keys(source);for(index=0,quantity=sourceKeys.length;index<quantity;index+=1){key=sourceKeys[index];if(!_hasOwnProperty.call(destination,key)){destination[key]=source[key]}}}function storeMappingPair(_result,keyTag,keyNode,valueNode){var index,quantity;keyNode=String(keyNode);if(null===_result){_result={}}if("tag:yaml.org,2002:merge"===keyTag){if(Array.isArray(valueNode)){for(index=0,quantity=valueNode.length;index<quantity;index+=1){mergeMappings(_result,valueNode[index])}}else{mergeMappings(_result,valueNode)}}else{_result[keyNode]=valueNode}return _result}function readLineBreak(){if(CHAR_LINE_FEED===character){position+=1}else if(CHAR_CARRIAGE_RETURN===character){if(CHAR_LINE_FEED===input.charCodeAt(position+1)){position+=2}else{position+=1}}else{throwError("a line break is expected")}line+=1;lineStart=position;character=input.charCodeAt(position)}function skipSeparationSpace(allowComments,checkIndent){var lineBreaks=0;while(position<length){while(CHAR_SPACE===character||CHAR_TAB===character){character=input.charCodeAt(++position)}if(allowComments&&CHAR_SHARP===character){do{character=input.charCodeAt(++position)}while(position<length&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character)}if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){readLineBreak();lineBreaks+=1;lineIndent=0;while(CHAR_SPACE===character){lineIndent+=1;character=input.charCodeAt(++position)}if(lineIndent<checkIndent){throwWarning("deficient indentation")}}else{break}}return lineBreaks}function testDocumentSeparator(){var _position,_character;if(position===lineStart&&(CHAR_MINUS===character||CHAR_DOT===character)&&input.charCodeAt(position+1)===character&&input.charCodeAt(position+2)===character){_position=position+3;_character=input.charCodeAt(_position);if(_position>=length||CHAR_SPACE===_character||CHAR_TAB===_character||CHAR_LINE_FEED===_character||CHAR_CARRIAGE_RETURN===_character){return true}}return false}function writeFoldedLines(count){if(1===count){result+=" "}else if(count>1){result+=common.repeat("\n",count-1)}}function readPlainScalar(nodeIndent,withinFlowCollection){var preceding,following,captureStart,captureEnd,hasPendingContent,_line,_lineStart,_lineIndent,_kind=kind,_result=result;if(CHAR_SPACE===character||CHAR_TAB===character||CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character||CHAR_COMMA===character||CHAR_LEFT_SQUARE_BRACKET===character||CHAR_RIGHT_SQUARE_BRACKET===character||CHAR_LEFT_CURLY_BRACKET===character||CHAR_RIGHT_CURLY_BRACKET===character||CHAR_SHARP===character||CHAR_AMPERSAND===character||CHAR_ASTERISK===character||CHAR_EXCLAMATION===character||CHAR_VERTICAL_LINE===character||CHAR_GREATER_THAN===character||CHAR_SINGLE_QUOTE===character||CHAR_DOUBLE_QUOTE===character||CHAR_PERCENT===character||CHAR_COMMERCIAL_AT===character||CHAR_GRAVE_ACCENT===character){return false}if(CHAR_QUESTION===character||CHAR_MINUS===character){following=input.charCodeAt(position+1);if(CHAR_SPACE===following||CHAR_TAB===following||CHAR_LINE_FEED===following||CHAR_CARRIAGE_RETURN===following||withinFlowCollection&&(CHAR_COMMA===following||CHAR_LEFT_SQUARE_BRACKET===following||CHAR_RIGHT_SQUARE_BRACKET===following||CHAR_LEFT_CURLY_BRACKET===following||CHAR_RIGHT_CURLY_BRACKET===following)){return false}}kind=KIND_STRING;result="";captureStart=captureEnd=position;hasPendingContent=false;while(position<length){if(CHAR_COLON===character){following=input.charCodeAt(position+1);if(CHAR_SPACE===following||CHAR_TAB===following||CHAR_LINE_FEED===following||CHAR_CARRIAGE_RETURN===following||withinFlowCollection&&(CHAR_COMMA===following||CHAR_LEFT_SQUARE_BRACKET===following||CHAR_RIGHT_SQUARE_BRACKET===following||CHAR_LEFT_CURLY_BRACKET===following||CHAR_RIGHT_CURLY_BRACKET===following)){break}}else if(CHAR_SHARP===character){preceding=input.charCodeAt(position-1);if(CHAR_SPACE===preceding||CHAR_TAB===preceding||CHAR_LINE_FEED===preceding||CHAR_CARRIAGE_RETURN===preceding){break}}else if(position===lineStart&&testDocumentSeparator()||withinFlowCollection&&(CHAR_COMMA===character||CHAR_LEFT_SQUARE_BRACKET===character||CHAR_RIGHT_SQUARE_BRACKET===character||CHAR_LEFT_CURLY_BRACKET===character||CHAR_RIGHT_CURLY_BRACKET===character)){break}else if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){_line=line;_lineStart=lineStart;_lineIndent=lineIndent;skipSeparationSpace(false,-1);if(lineIndent>=nodeIndent){hasPendingContent=true;continue}else{position=captureEnd;line=_line;lineStart=_lineStart;lineIndent=_lineIndent;character=input.charCodeAt(position);break}}if(hasPendingContent){captureSegment(captureStart,captureEnd,false);writeFoldedLines(line-_line);captureStart=captureEnd=position;hasPendingContent=false}if(CHAR_SPACE!==character&&CHAR_TAB!==character){captureEnd=position+1}character=input.charCodeAt(++position)}captureSegment(captureStart,captureEnd,false);if(result){return true}else{kind=_kind;result=_result;return false}}function readSingleQuotedScalar(nodeIndent){var captureStart,captureEnd;if(CHAR_SINGLE_QUOTE!==character){return false}kind=KIND_STRING;result="";character=input.charCodeAt(++position);captureStart=captureEnd=position;while(position<length){if(CHAR_SINGLE_QUOTE===character){captureSegment(captureStart,position,true);character=input.charCodeAt(++position);if(CHAR_SINGLE_QUOTE===character){captureStart=captureEnd=position;character=input.charCodeAt(++position)}else{return true}}else if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){captureSegment(captureStart,captureEnd,true);writeFoldedLines(skipSeparationSpace(false,nodeIndent));captureStart=captureEnd=position;character=input.charCodeAt(position)}else if(position===lineStart&&testDocumentSeparator()){throwError("unexpected end of the document within a single quoted scalar")}else{character=input.charCodeAt(++position);captureEnd=position}}throwError("unexpected end of the stream within a single quoted scalar")}function readDoubleQuotedScalar(nodeIndent){var captureStart,captureEnd,hexLength,hexIndex,hexOffset,hexResult;if(CHAR_DOUBLE_QUOTE!==character){return false}kind=KIND_STRING;result="";character=input.charCodeAt(++position);captureStart=captureEnd=position;while(position<length){if(CHAR_DOUBLE_QUOTE===character){captureSegment(captureStart,position,true);character=input.charCodeAt(++position);return true}else if(CHAR_BACKSLASH===character){captureSegment(captureStart,position,true);character=input.charCodeAt(++position);if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){skipSeparationSpace(false,nodeIndent)}else if(SIMPLE_ESCAPE_SEQUENCES[character]){result+=SIMPLE_ESCAPE_SEQUENCES[character];character=input.charCodeAt(++position)}else if(HEXADECIMAL_ESCAPE_SEQUENCES[character]){hexLength=HEXADECIMAL_ESCAPE_SEQUENCES[character];hexResult=0;for(hexIndex=1;hexIndex<=hexLength;hexIndex+=1){hexOffset=(hexLength-hexIndex)*4;character=input.charCodeAt(++position);if(CHAR_DIGIT_ZERO<=character&&character<=CHAR_DIGIT_NINE){hexResult|=character-CHAR_DIGIT_ZERO<<hexOffset}else if(CHAR_CAPITAL_A<=character&&character<=CHAR_CAPITAL_F){hexResult|=character-CHAR_CAPITAL_A+10<<hexOffset}else if(CHAR_SMALL_A<=character&&character<=CHAR_SMALL_F){hexResult|=character-CHAR_SMALL_A+10<<hexOffset}else{throwError("expected hexadecimal character")}}result+=String.fromCharCode(hexResult);character=input.charCodeAt(++position)}else{throwError("unknown escape sequence")}captureStart=captureEnd=position}else if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){captureSegment(captureStart,captureEnd,true);writeFoldedLines(skipSeparationSpace(false,nodeIndent));captureStart=captureEnd=position;character=input.charCodeAt(position)}else if(position===lineStart&&testDocumentSeparator()){throwError("unexpected end of the document within a double quoted scalar")}else{character=input.charCodeAt(++position);captureEnd=position}}throwError("unexpected end of the stream within a double quoted scalar")}function readFlowCollection(nodeIndent){var readNext=true,_line,_tag=tag,_result,following,terminator,isPair,isExplicitPair,isMapping,keyNode,keyTag,valueNode;switch(character){case CHAR_LEFT_SQUARE_BRACKET:terminator=CHAR_RIGHT_SQUARE_BRACKET;isMapping=false;_result=[];break;case CHAR_LEFT_CURLY_BRACKET:terminator=CHAR_RIGHT_CURLY_BRACKET;isMapping=true;_result={};break;default:return false}if(null!==anchor){anchorMap[anchor]=_result}character=input.charCodeAt(++position);while(position<length){skipSeparationSpace(true,nodeIndent);if(character===terminator){character=input.charCodeAt(++position);tag=_tag;kind=isMapping?KIND_OBJECT:KIND_ARRAY;result=_result;return true}else if(!readNext){throwError("missed comma between flow collection entries")}keyTag=keyNode=valueNode=null;isPair=isExplicitPair=false;if(CHAR_QUESTION===character){following=input.charCodeAt(position+1);if(CHAR_SPACE===following||CHAR_TAB===following||CHAR_LINE_FEED===following||CHAR_CARRIAGE_RETURN===following){isPair=isExplicitPair=true;position+=1;character=following;skipSeparationSpace(true,nodeIndent)}}_line=line;composeNode(nodeIndent,CONTEXT_FLOW_IN,false,true);keyTag=tag;keyNode=result;if((isExplicitPair||line===_line)&&CHAR_COLON===character){isPair=true;character=input.charCodeAt(++position);skipSeparationSpace(true,nodeIndent);composeNode(nodeIndent,CONTEXT_FLOW_IN,false,true);valueNode=result}if(isMapping){storeMappingPair(_result,keyTag,keyNode,valueNode)}else if(isPair){_result.push(storeMappingPair(null,keyTag,keyNode,valueNode))}else{_result.push(keyNode)}skipSeparationSpace(true,nodeIndent);if(CHAR_COMMA===character){readNext=true;character=input.charCodeAt(++position)}else{readNext=false}}throwError("unexpected end of the stream within a flow collection")}function readBlockScalar(nodeIndent){var captureStart,folding,chomping=CHOMPING_CLIP,detectedIndent=false,textIndent=nodeIndent,emptyLines=-1;switch(character){case CHAR_VERTICAL_LINE:folding=false;break;case CHAR_GREATER_THAN:folding=true;break;default:return false}kind=KIND_STRING;result="";while(position<length){character=input.charCodeAt(++position);if(CHAR_PLUS===character||CHAR_MINUS===character){if(CHOMPING_CLIP===chomping){chomping=CHAR_PLUS===character?CHOMPING_KEEP:CHOMPING_STRIP}else{throwError("repeat of a chomping mode identifier")}}else if(CHAR_DIGIT_ZERO<=character&&character<=CHAR_DIGIT_NINE){if(CHAR_DIGIT_ZERO===character){throwError("bad explicit indentation width of a block scalar; it cannot be less than one")}else if(!detectedIndent){textIndent=nodeIndent+(character-CHAR_DIGIT_ONE);detectedIndent=true}else{throwError("repeat of an indentation width identifier")}}else{break}}if(CHAR_SPACE===character||CHAR_TAB===character){do{character=input.charCodeAt(++position)}while(CHAR_SPACE===character||CHAR_TAB===character);if(CHAR_SHARP===character){do{character=input.charCodeAt(++position)}while(position<length&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character)}}while(position<length){readLineBreak();lineIndent=0;while((!detectedIndent||lineIndent<textIndent)&&CHAR_SPACE===character){lineIndent+=1;character=input.charCodeAt(++position)}if(!detectedIndent&&lineIndent>textIndent){textIndent=lineIndent}if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){emptyLines+=1;continue}if(lineIndent<textIndent){if(CHOMPING_KEEP===chomping){result+=common.repeat("\n",emptyLines+1)}else if(CHOMPING_CLIP===chomping){result+="\n"}break}detectedIndent=true;if(folding){if(CHAR_SPACE===character||CHAR_TAB===character){result+=common.repeat("\n",emptyLines+1);emptyLines=1}else if(0===emptyLines){result+=" ";emptyLines=0}else{result+=common.repeat("\n",emptyLines);emptyLines=0}}else{result+=common.repeat("\n",emptyLines+1);emptyLines=0}captureStart=position;do{character=input.charCodeAt(++position)}while(position<length&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character);captureSegment(captureStart,position,false)}return true}function readBlockSequence(nodeIndent){var _line,_tag=tag,_result=[],following,detected=false;if(null!==anchor){anchorMap[anchor]=_result}while(position<length){if(CHAR_MINUS!==character){break}following=input.charCodeAt(position+1);if(CHAR_SPACE!==following&&CHAR_TAB!==following&&CHAR_LINE_FEED!==following&&CHAR_CARRIAGE_RETURN!==following){break}detected=true;position+=1;character=following;if(skipSeparationSpace(true,-1)){if(lineIndent<=nodeIndent){_result.push(null);continue}}_line=line;composeNode(nodeIndent,CONTEXT_BLOCK_IN,false,true);_result.push(result);skipSeparationSpace(true,-1);if((line===_line||lineIndent>nodeIndent)&&position<length){throwError("bad indentation of a sequence entry")}else if(lineIndent<nodeIndent){break}}if(detected){tag=_tag;kind=KIND_ARRAY;result=_result;return true}else{return false}}function readBlockMapping(nodeIndent){var following,allowCompact,_line,_tag=tag,_result={},keyTag=null,keyNode=null,valueNode=null,atExplicitKey=false,detected=false;if(null!==anchor){anchorMap[anchor]=_result}while(position<length){following=input.charCodeAt(position+1);_line=line;if((CHAR_QUESTION===character||CHAR_COLON===character)&&(CHAR_SPACE===following||CHAR_TAB===following||CHAR_LINE_FEED===following||CHAR_CARRIAGE_RETURN===following)){if(CHAR_QUESTION===character){if(atExplicitKey){storeMappingPair(_result,keyTag,keyNode,null);keyTag=keyNode=valueNode=null}detected=true;atExplicitKey=true;allowCompact=true}else if(atExplicitKey){atExplicitKey=false;allowCompact=true}else{throwError("incomplete explicit mapping pair; a key node is missed")}position+=1;character=following}else if(composeNode(nodeIndent,CONTEXT_FLOW_OUT,false,true)){if(line===_line){while(CHAR_SPACE===character||CHAR_TAB===character){character=input.charCodeAt(++position)}if(CHAR_COLON===character){character=input.charCodeAt(++position);if(CHAR_SPACE!==character&&CHAR_TAB!==character&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character){throwError("a whitespace character is expected after the key-value separator within a block mapping")}if(atExplicitKey){storeMappingPair(_result,keyTag,keyNode,null);keyTag=keyNode=valueNode=null}detected=true;atExplicitKey=false;allowCompact=false;keyTag=tag;keyNode=result}else if(detected){throwError("can not read an implicit mapping pair; a colon is missed")}else{tag=_tag;return true}}else if(detected){throwError("can not read a block mapping entry; a multiline key may not be an implicit key")}else{tag=_tag;return true}}else{break}if(line===_line||lineIndent>nodeIndent){if(composeNode(nodeIndent,CONTEXT_BLOCK_OUT,true,allowCompact)){if(atExplicitKey){keyNode=result}else{valueNode=result}}if(!atExplicitKey){storeMappingPair(_result,keyTag,keyNode,valueNode);keyTag=keyNode=valueNode=null}skipSeparationSpace(true,-1)}if(lineIndent>nodeIndent&&position<length){throwError("bad indentation of a mapping entry")}else if(lineIndent<nodeIndent){break}}if(atExplicitKey){storeMappingPair(_result,keyTag,keyNode,null)}if(detected){tag=_tag;kind=KIND_OBJECT;result=_result}return detected}function readTagProperty(){var _position,isVerbatim=false,isNamed=false,tagHandle,tagName;if(CHAR_EXCLAMATION!==character){return false}if(null!==tag){throwError("duplication of a tag property")}character=input.charCodeAt(++position);if(CHAR_LESS_THAN===character){isVerbatim=true;character=input.charCodeAt(++position)}else if(CHAR_EXCLAMATION===character){isNamed=true;tagHandle="!!";character=input.charCodeAt(++position)}else{tagHandle="!"}_position=position;if(isVerbatim){do{character=input.charCodeAt(++position)}while(position<length&&CHAR_GREATER_THAN!==character);if(position<length){tagName=input.slice(_position,position);character=input.charCodeAt(++position)}else{throwError("unexpected end of the stream within a verbatim tag")}}else{while(position<length&&CHAR_SPACE!==character&&CHAR_TAB!==character&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character){if(CHAR_EXCLAMATION===character){if(!isNamed){tagHandle=input.slice(_position-1,position+1);if(validate&&!PATTERN_TAG_HANDLE.test(tagHandle)){throwError("named tag handle cannot contain such characters")}isNamed=true;_position=position+1}else{throwError("tag suffix cannot contain exclamation marks")}}character=input.charCodeAt(++position)}tagName=input.slice(_position,position);if(validate&&PATTERN_FLOW_INDICATORS.test(tagName)){throwError("tag suffix cannot contain flow indicator characters")}}if(validate&&tagName&&!PATTERN_TAG_URI.test(tagName)){throwError("tag name cannot contain such characters: "+tagName)}if(isVerbatim){tag=tagName}else if(_hasOwnProperty.call(tagMap,tagHandle)){tag=tagMap[tagHandle]+tagName}else if("!"===tagHandle){tag="!"+tagName}else if("!!"===tagHandle){tag="tag:yaml.org,2002:"+tagName}else{throwError('undeclared tag handle "'+tagHandle+'"')}return true}function readAnchorProperty(){var _position;if(CHAR_AMPERSAND!==character){return false}if(null!==anchor){throwError("duplication of an anchor property")}character=input.charCodeAt(++position);_position=position;while(position<length&&CHAR_SPACE!==character&&CHAR_TAB!==character&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character&&CHAR_COMMA!==character&&CHAR_LEFT_SQUARE_BRACKET!==character&&CHAR_RIGHT_SQUARE_BRACKET!==character&&CHAR_LEFT_CURLY_BRACKET!==character&&CHAR_RIGHT_CURLY_BRACKET!==character){character=input.charCodeAt(++position)}if(position===_position){throwError("name of an anchor node must contain at least one character")}anchor=input.slice(_position,position);return true}function readAlias(){var _position,alias;if(CHAR_ASTERISK!==character){return false}character=input.charCodeAt(++position);_position=position;while(position<length&&CHAR_SPACE!==character&&CHAR_TAB!==character&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character&&CHAR_COMMA!==character&&CHAR_LEFT_SQUARE_BRACKET!==character&&CHAR_RIGHT_SQUARE_BRACKET!==character&&CHAR_LEFT_CURLY_BRACKET!==character&&CHAR_RIGHT_CURLY_BRACKET!==character){character=input.charCodeAt(++position)}if(position===_position){throwError("name of an alias node must contain at least one character")}alias=input.slice(_position,position);if(!anchorMap.hasOwnProperty(alias)){throwError('unidentified alias "'+alias+'"')}result=anchorMap[alias];skipSeparationSpace(true,-1);return true}function composeNode(parentIndent,nodeContext,allowToSeek,allowCompact){var allowBlockStyles,allowBlockScalars,allowBlockCollections,atNewLine=false,isIndented=true,hasContent=false,typeIndex,typeQuantity,type,typeLoader,flowIndent,blockIndent,_result;tag=null;anchor=null;kind=null;result=null;allowBlockStyles=allowBlockScalars=allowBlockCollections=CONTEXT_BLOCK_OUT===nodeContext||CONTEXT_BLOCK_IN===nodeContext;if(allowToSeek){if(skipSeparationSpace(true,-1)){atNewLine=true;if(lineIndent===parentIndent){isIndented=false}else if(lineIndent>parentIndent){isIndented=true}else{return false}}}if(isIndented){while(readTagProperty()||readAnchorProperty()){if(skipSeparationSpace(true,-1)){atNewLine=true;if(lineIndent>parentIndent){isIndented=true;allowBlockCollections=allowBlockStyles}else if(lineIndent===parentIndent){isIndented=false;allowBlockCollections=allowBlockStyles}else{return true}}else{allowBlockCollections=false}}}if(allowBlockCollections){allowBlockCollections=atNewLine||allowCompact}if(isIndented||CONTEXT_BLOCK_OUT===nodeContext){if(CONTEXT_FLOW_IN===nodeContext||CONTEXT_FLOW_OUT===nodeContext){flowIndent=parentIndent}else{flowIndent=parentIndent+1}blockIndent=position-lineStart;if(isIndented){if(allowBlockCollections&&(readBlockSequence(blockIndent)||readBlockMapping(blockIndent))||readFlowCollection(flowIndent)){hasContent=true}else{if(allowBlockScalars&&readBlockScalar(flowIndent)||readSingleQuotedScalar(flowIndent)||readDoubleQuotedScalar(flowIndent)){hasContent=true}else if(readAlias()){hasContent=true;if(null!==tag||null!==anchor){throwError("alias node should not have any properties")}}else if(readPlainScalar(flowIndent,CONTEXT_FLOW_IN===nodeContext)){hasContent=true;if(null===tag){tag="?"}}if(null!==anchor){anchorMap[anchor]=result}}}else{hasContent=allowBlockCollections&&readBlockSequence(blockIndent)}}if(null!==tag&&"!"!==tag){if("?"===tag){if(resolve){for(typeIndex=0,typeQuantity=implicitTypes.length;typeIndex<typeQuantity;typeIndex+=1){type=implicitTypes[typeIndex];_result=type.loader.resolver(result,false);if(NIL!==_result){tag=type.tag;result=_result;break}}}}else if(_hasOwnProperty.call(typeMap,tag)){typeLoader=typeMap[tag].loader;if(null!==result&&typeLoader.kind!==kind){throwError("unacceptable node kind for !<"+tag+'> tag; it should be "'+typeLoader.kind+'", not "'+kind+'"')}if(typeLoader.resolver){_result=typeLoader.resolver(result,true);if(NIL!==_result){result=_result}else{throwError("cannot resolve a node with !<"+tag+"> explicit tag")}}}else{throwWarning("unknown tag !<"+tag+">")}}return null!==tag||null!==anchor||hasContent}function readDocument(){var documentStart=position,_position,directiveName,directiveArgs,hasDirectives=false;version=null;checkLineBreaks=legacy;tagMap={};anchorMap={};while(position<length){skipSeparationSpace(true,-1);if(lineIndent>0||CHAR_PERCENT!==character){break}hasDirectives=true;character=input.charCodeAt(++position);_position=position;while(position<length&&CHAR_SPACE!==character&&CHAR_TAB!==character&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character){character=input.charCodeAt(++position)}directiveName=input.slice(_position,position);directiveArgs=[];if(directiveName.length<1){throwError("directive name must not be less than one character in length")}while(position<length){while(CHAR_SPACE===character||CHAR_TAB===character){character=input.charCodeAt(++position)}if(CHAR_SHARP===character){do{character=input.charCodeAt(++position)}while(position<length&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character);break}if(CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character){break}_position=position;while(position<length&&CHAR_SPACE!==character&&CHAR_TAB!==character&&CHAR_LINE_FEED!==character&&CHAR_CARRIAGE_RETURN!==character){character=input.charCodeAt(++position)}directiveArgs.push(input.slice(_position,position))}if(position<length){readLineBreak()}if(_hasOwnProperty.call(directiveHandlers,directiveName)){directiveHandlers[directiveName](directiveName,directiveArgs)}else{throwWarning('unknown document directive "'+directiveName+'"')}}skipSeparationSpace(true,-1);if(0===lineIndent&&CHAR_MINUS===character&&CHAR_MINUS===input.charCodeAt(position+1)&&CHAR_MINUS===input.charCodeAt(position+2)){position+=3;character=input.charCodeAt(position);skipSeparationSpace(true,-1)}else if(hasDirectives){throwError("directives end mark is expected")}composeNode(lineIndent-1,CONTEXT_BLOCK_OUT,false,true);skipSeparationSpace(true,-1);if(validate&&checkLineBreaks&&PATTERN_NON_ASCII_LINE_BREAKS.test(input.slice(documentStart,position))){throwWarning("non-ASCII line breaks are interpreted as content")}output(result);if(position===lineStart&&testDocumentSeparator()){if(CHAR_DOT===character){position+=3;character=input.charCodeAt(position);skipSeparationSpace(true,-1)}return}if(position<length){throwError("end of the stream or a document separator is expected")}else{return}}if(validate&&PATTERN_NON_PRINTABLE.test(input)){throwError("the stream contains non-printable characters")}while(CHAR_SPACE===character){lineIndent+=1;character=input.charCodeAt(++position)}while(position<length){readDocument()}}function load(input,options){var result=null,received=false;function callback(data){if(!received){result=data;received=true}else{throw new YAMLException("expected a single document in the stream, but found more")}}loadAll(input,callback,options);return result}function safeLoadAll(input,output,options){loadAll(input,output,common.extend({schema:DEFAULT_SAFE_SCHEMA},options))}function safeLoad(input,options){return load(input,common.extend({schema:DEFAULT_SAFE_SCHEMA},options))}module.exports.loadAll=loadAll;module.exports.load=load;module.exports.safeLoadAll=safeLoadAll;module.exports.safeLoad=safeLoad},{"./common":12,"./exception":13,"./mark":15,"./schema/default_safe":8,"./schema/default_full":9}],3:[function(require,module,exports){(function(){"use strict";
var common=require("./common");var NIL=common.NIL;var YAMLException=require("./exception");var DEFAULT_FULL_SCHEMA=require("./schema/default_full");var DEFAULT_SAFE_SCHEMA=require("./schema/default_safe");var _hasOwnProperty=Object.prototype.hasOwnProperty;var CHAR_TAB=9;var CHAR_LINE_FEED=10;var CHAR_CARRIAGE_RETURN=13;var CHAR_SPACE=32;var CHAR_EXCLAMATION=33;var CHAR_DOUBLE_QUOTE=34;var CHAR_SHARP=35;var CHAR_PERCENT=37;var CHAR_AMPERSAND=38;var CHAR_SINGLE_QUOTE=39;var CHAR_ASTERISK=42;var CHAR_COMMA=44;var CHAR_MINUS=45;var CHAR_COLON=58;var CHAR_GREATER_THAN=62;var CHAR_QUESTION=63;var CHAR_COMMERCIAL_AT=64;var CHAR_LEFT_SQUARE_BRACKET=91;var CHAR_RIGHT_SQUARE_BRACKET=93;var CHAR_GRAVE_ACCENT=96;var CHAR_LEFT_CURLY_BRACKET=123;var CHAR_VERTICAL_LINE=124;var CHAR_RIGHT_CURLY_BRACKET=125;var ESCAPE_SEQUENCES={};ESCAPE_SEQUENCES[0]="\\0";ESCAPE_SEQUENCES[7]="\\a";ESCAPE_SEQUENCES[8]="\\b";ESCAPE_SEQUENCES[9]="\\t";ESCAPE_SEQUENCES[10]="\\n";ESCAPE_SEQUENCES[11]="\\v";ESCAPE_SEQUENCES[12]="\\f";ESCAPE_SEQUENCES[13]="\\r";ESCAPE_SEQUENCES[27]="\\e";ESCAPE_SEQUENCES[34]='\\"';ESCAPE_SEQUENCES[92]="\\\\";ESCAPE_SEQUENCES[133]="\\N";ESCAPE_SEQUENCES[160]="\\_";ESCAPE_SEQUENCES[8232]="\\L";ESCAPE_SEQUENCES[8233]="\\P";function kindOf(object){var kind=typeof object;if(null===object){return"null"}else if("number"===kind){return 0===object%1?"integer":"float"}else if("object"===kind&&Array.isArray(object)){return"array"}else{return kind}}function compileStyleMap(schema,map){var result,keys,index,length,tag,style,type;if(null===map){return{}}result={};keys=Object.keys(map);for(index=0,length=keys.length;index<length;index+=1){tag=keys[index];style=String(map[tag]);if("!!"===tag.slice(0,2)){tag="tag:yaml.org,2002:"+tag.slice(2)}type=schema.compiledTypeMap[tag];if(type&&type.dumper){if(_hasOwnProperty.call(type.dumper.styleAliases,style)){style=type.dumper.styleAliases[style]}}result[tag]=style}return result}function encodeHex(character){var string,handle,length;string=character.toString(16).toUpperCase();if(character<=255){handle="x";length=2}else if(character<=65535){handle="u";length=4}else if(character<=4294967295){handle="U";length=8}else{throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF")}return"\\"+handle+common.repeat("0",length-string.length)+string}function dump(input,options){options=options||{};var schema=options["schema"]||DEFAULT_FULL_SCHEMA,indent=Math.max(1,options["indent"]||2),skipInvalid=options["skipInvalid"]||false,flowLevel=common.isNothing(options["flowLevel"])?-1:options["flowLevel"],styleMap=compileStyleMap(schema,options["styles"]||null),implicitTypes=schema.compiledImplicit,explicitTypes=schema.compiledExplicit,kind,tag,result;function generateNextLine(level){return"\n"+common.repeat(" ",indent*level)}function testImplicitResolving(object){var index,length,type;for(index=0,length=implicitTypes.length;index<length;index+=1){type=implicitTypes[index];if(null!==type.loader&&NIL!==type.loader.resolver(object,false)){return true}}return false}function writeScalar(object){var isQuoted,checkpoint,position,length,character;result="";isQuoted=false;checkpoint=0;if(0===object.length||CHAR_SPACE===object.charCodeAt(0)||CHAR_SPACE===object.charCodeAt(object.length-1)){isQuoted=true}for(position=0,length=object.length;position<length;position+=1){character=object.charCodeAt(position);if(!isQuoted){if(CHAR_TAB===character||CHAR_LINE_FEED===character||CHAR_CARRIAGE_RETURN===character||CHAR_COMMA===character||CHAR_LEFT_SQUARE_BRACKET===character||CHAR_RIGHT_SQUARE_BRACKET===character||CHAR_LEFT_CURLY_BRACKET===character||CHAR_RIGHT_CURLY_BRACKET===character||CHAR_SHARP===character||CHAR_AMPERSAND===character||CHAR_ASTERISK===character||CHAR_EXCLAMATION===character||CHAR_VERTICAL_LINE===character||CHAR_GREATER_THAN===character||CHAR_SINGLE_QUOTE===character||CHAR_DOUBLE_QUOTE===character||CHAR_PERCENT===character||CHAR_COMMERCIAL_AT===character||CHAR_GRAVE_ACCENT===character||CHAR_QUESTION===character||CHAR_COLON===character||CHAR_MINUS===character){isQuoted=true}}if(ESCAPE_SEQUENCES[character]||!(32<=character&&character<=126||133===character||160<=character&&character<=55295||57344<=character&&character<=65533||65536<=character&&character<=1114111)){result+=object.slice(checkpoint,position);result+=ESCAPE_SEQUENCES[character]||encodeHex(character);checkpoint=position+1;isQuoted=true}}if(checkpoint<position){result+=object.slice(checkpoint,position)}if(!isQuoted&&testImplicitResolving(result)){isQuoted=true}if(isQuoted){result='"'+result+'"'}}function writeFlowSequence(level,object){var _result="",_tag=tag,index,length;for(index=0,length=object.length;index<length;index+=1){if(writeNode(level,object[index],false,false)){if(0!==index){_result+=", "}_result+=result}}tag=_tag;result="["+_result+"]"}function writeBlockSequence(level,object,compact){var _result="",_tag=tag,index,length;for(index=0,length=object.length;index<length;index+=1){if(writeNode(level+1,object[index],true,true)){if(!compact||0!==index){_result+=generateNextLine(level)}_result+="- "+result}}tag=_tag;result=_result||"[]"}function writeFlowMapping(level,object){var _result="",_tag=tag,objectKeyList=Object.keys(object),index,length,objectKey,objectValue,pairBuffer;for(index=0,length=objectKeyList.length;index<length;index+=1){pairBuffer="";if(0!==index){pairBuffer+=", "}objectKey=objectKeyList[index];objectValue=object[objectKey];if(!writeNode(level,objectKey,false,false)){continue}if(result.length>1024){pairBuffer+="? "}pairBuffer+=result+": ";if(!writeNode(level,objectValue,false,false)){continue}pairBuffer+=result;_result+=pairBuffer}tag=_tag;result="{"+_result+"}"}function writeBlockMapping(level,object,compact){var _result="",_tag=tag,objectKeyList=Object.keys(object),index,length,objectKey,objectValue,explicitPair,pairBuffer;for(index=0,length=objectKeyList.length;index<length;index+=1){pairBuffer="";if(!compact||0!==index){pairBuffer+=generateNextLine(level)}objectKey=objectKeyList[index];objectValue=object[objectKey];if(!writeNode(level+1,objectKey,true,true)){continue}explicitPair=null!==tag&&"?"!==tag&&result.length<=1024;if(explicitPair){pairBuffer+="? "}pairBuffer+=result;if(explicitPair){pairBuffer+=generateNextLine(level)}if(!writeNode(level+1,objectValue,true,explicitPair)){continue}pairBuffer+=": "+result;_result+=pairBuffer}tag=_tag;result=_result||"{}"}function detectType(object,explicit){var _result,typeList,index,length,type,style;typeList=explicit?explicitTypes:implicitTypes;kind=kindOf(object);for(index=0,length=typeList.length;index<length;index+=1){type=typeList[index];if(null!==type.dumper&&(null===type.dumper.kind||kind===type.dumper.kind)&&(null===type.dumper.instanceOf||object instanceof type.dumper.instanceOf)&&(null===type.dumper.predicate||type.dumper.predicate(object))){tag=explicit?type.tag:"?";if(null!==type.dumper.representer){style=styleMap[type.tag]||type.dumper.defaultStyle;if("function"===typeof type.dumper.representer){_result=type.dumper.representer(object,style)}else if(_hasOwnProperty.call(type.dumper.representer,style)){_result=type.dumper.representer[style](object,style)}else{throw new YAMLException("!<"+type.tag+'> tag resolver accepts not "'+style+'" style')}if(NIL!==_result){kind=kindOf(_result);result=_result}else{if(explicit){throw new YAMLException("cannot represent an object of !<"+type.tag+"> type")}else{continue}}}return true}}return false}function writeNode(level,object,block,compact){tag=null;result=object;if(!detectType(object,false)){detectType(object,true)}if(block){block=0>flowLevel||flowLevel>level}if(null!==tag&&"?"!==tag||2!==indent&&level>0){compact=false}if("object"===kind){if(block&&0!==Object.keys(result).length){writeBlockMapping(level,result,compact)}else{writeFlowMapping(level,result)}}else if("array"===kind){if(block&&0!==result.length){writeBlockSequence(level,result,compact)}else{writeFlowSequence(level,result)}}else if("string"===kind){if("?"!==tag){writeScalar(result)}}else if(skipInvalid){return false}else{throw new YAMLException("unacceptabe kind of an object to dump ("+kind+")")}if(null!==tag&&"?"!==tag){result="!<"+tag+"> "+result}return true}if(writeNode(0,input,true,true)){return result+"\n"}else{return""}}function safeDump(input,options){return dump(input,common.extend({schema:DEFAULT_SAFE_SCHEMA},options))}module.exports.dump=dump;module.exports.safeDump=safeDump})()},{"./common":12,"./exception":13,"./schema/default_full":9,"./schema/default_safe":8}],4:[function(require,module,exports){"use strict";var YAMLException=require("./exception");function Type(tag,options){options=options||{};this.tag=tag;this.loader=options["loader"]||null;this.dumper=options["dumper"]||null;if(null===this.loader&&null===this.dumper){throw new YAMLException('Incomplete YAML type definition. "loader" or "dumper" setting must be specified.')}if(null!==this.loader){this.loader=new Type.Loader(this.loader)}if(null!==this.dumper){this.dumper=new Type.Dumper(this.dumper)}}Type.Loader=function TypeLoader(options){options=options||{};this.kind=options["kind"]||null;this.resolver=options["resolver"]||null;if("string"!==this.kind&&"array"!==this.kind&&"object"!==this.kind){throw new YAMLException('Unacceptable "kind" setting of a type loader.')}};function compileAliases(map){var result={};if(null!==map){Object.keys(map).forEach(function(style){map[style].forEach(function(alias){result[String(alias)]=style})})}return result}Type.Dumper=function TypeDumper(options){options=options||{};this.kind=options["kind"]||null;this.defaultStyle=options["defaultStyle"]||null;this.instanceOf=options["instanceOf"]||null;this.predicate=options["predicate"]||null;this.representer=options["representer"]||null;this.styleAliases=compileAliases(options["styleAliases"]||null);if("undefined"!==this.kind&&"null"!==this.kind&&"boolean"!==this.kind&&"integer"!==this.kind&&"float"!==this.kind&&"string"!==this.kind&&"array"!==this.kind&&"object"!==this.kind&&"function"!==this.kind){throw new YAMLException('Unacceptable "kind" setting of a type dumper.')}};module.exports=Type},{"./exception":13}],10:[function(require,module,exports){"use strict";var fs=require("fs");var loader=require("./loader");function yamlRequireHandler(module,filename){var content=fs.readFileSync(filename,"utf8");module.exports=loader.safeLoad(content,{filename:filename})}if(undefined!==require.extensions){require.extensions[".yml"]=yamlRequireHandler;require.extensions[".yaml"]=yamlRequireHandler}module.exports=require},{fs:14,"./loader":2}],12:[function(require,module,exports){"use strict";var NIL={};function isNothing(subject){return undefined===subject||null===subject}function isObject(subject){return"object"===typeof subject&&null!==subject}function toArray(sequence){if(Array.isArray(sequence)){return sequence}else if(isNothing(sequence)){return[]}else{return[sequence]}}function extend(target,source){var index,length,key,sourceKeys;if(source){sourceKeys=Object.keys(source);for(index=0,length=sourceKeys.length;index<length;index+=1){key=sourceKeys[index];target[key]=source[key]}}return target}function repeat(string,count){var result="",cycle;for(cycle=0;cycle<count;cycle+=1){result+=string}return result}module.exports.NIL=NIL;module.exports.isNothing=isNothing;module.exports.isObject=isObject;module.exports.toArray=toArray;module.exports.repeat=repeat;module.exports.extend=extend},{}],13:[function(require,module,exports){"use strict";function YAMLException(reason,mark){this.name="YAMLException";this.reason=reason;this.mark=mark;this.message=this.toString(false)}YAMLException.prototype.toString=function toString(compact){var result;result="JS-YAML: "+(this.reason||"(unknown reason)");if(!compact&&this.mark){result+=" "+this.mark.toString()}return result};module.exports=YAMLException},{}],5:[function(require,module,exports){"use strict";var Schema=require("../schema");module.exports=new Schema({explicit:[require("../type/str"),require("../type/seq"),require("../type/map")]})},{"../schema":11,"../type/str":16,"../type/seq":17,"../type/map":18}],6:[function(require,module,exports){"use strict";var Schema=require("../schema");module.exports=new Schema({include:[require("./failsafe")],implicit:[require("../type/null"),require("../type/bool"),require("../type/int"),require("../type/float")]})},{"../schema":11,"./failsafe":5,"../type/null":19,"../type/bool":20,"../type/int":21,"../type/float":22}],7:[function(require,module,exports){"use strict";var Schema=require("../schema");module.exports=new Schema({include:[require("./json")]})},{"../schema":11,"./json":6}],8:[function(require,module,exports){"use strict";var Schema=require("../schema");module.exports=new Schema({include:[require("./core")],implicit:[require("../type/timestamp"),require("../type/merge")],explicit:[require("../type/binary"),require("../type/omap"),require("../type/pairs"),require("../type/set")]})},{"../schema":11,"./core":7,"../type/timestamp":23,"../type/merge":24,"../type/binary":25,"../type/omap":26,"../type/pairs":27,"../type/set":28}],9:[function(require,module,exports){"use strict";var Schema=require("../schema");module.exports=Schema.DEFAULT=new Schema({include:[require("./default_safe")],explicit:[require("../type/js/undefined"),require("../type/js/regexp"),require("../type/js/function")]})},{"../schema":11,"./default_safe":8,"../type/js/undefined":29,"../type/js/regexp":30,"../type/js/function":31}],11:[function(require,module,exports){"use strict";var common=require("./common");var YAMLException=require("./exception");var Type=require("./type");function compileList(schema,name,result){var exclude=[];schema.include.forEach(function(includedSchema){result=compileList(includedSchema,name,result)});schema[name].forEach(function(currentType){result.forEach(function(previousType,previousIndex){if(previousType.tag===currentType.tag){exclude.push(previousIndex)}});result.push(currentType)});return result.filter(function(type,index){return-1===exclude.indexOf(index)})}function compileMap(){var result={},index,length;function collectType(type){result[type.tag]=type}for(index=0,length=arguments.length;index<length;index+=1){arguments[index].forEach(collectType)}return result}function Schema(definition){this.include=definition.include||[];this.implicit=definition.implicit||[];this.explicit=definition.explicit||[];this.implicit.forEach(function(type){if(null!==type.loader&&"string"!==type.loader.kind){throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}});this.compiledImplicit=compileList(this,"implicit",[]);this.compiledExplicit=compileList(this,"explicit",[]);this.compiledTypeMap=compileMap(this.compiledImplicit,this.compiledExplicit)}Schema.DEFAULT=null;Schema.create=function createSchema(){var schemas,types;switch(arguments.length){case 1:schemas=Schema.DEFAULT;types=arguments[0];break;case 2:schemas=arguments[0];types=arguments[1];break;default:throw new YAMLException("Wrong number of arguments for Schema.create function")}schemas=common.toArray(schemas);types=common.toArray(types);if(!schemas.every(function(schema){return schema instanceof Schema})){throw new YAMLException("Specified list of super schemas (or a single Schema object) contains a non-Schema object.")}if(!types.every(function(type){return type instanceof Type})){throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object.")}return new Schema({include:schemas,explicit:types})};module.exports=Schema},{"./common":12,"./exception":13,"./type":4}],15:[function(require,module,exports){"use strict";var common=require("./common");function Mark(name,buffer,position,line,column){this.name=name;this.buffer=buffer;this.position=position;this.line=line;this.column=column}Mark.prototype.getSnippet=function getSnippet(indent,maxLength){var head,start,tail,end,snippet;if(!this.buffer){return null}indent=indent||4;maxLength=maxLength||75;head="";start=this.position;while(start>0&&-1==="\0\r\n…\u2028\u2029".indexOf(this.buffer.charAt(start-1))){start-=1;if(this.position-start>maxLength/2-1){head=" ... ";start+=5;break}}tail="";end=this.position;while(end<this.buffer.length&&-1==="\0\r\n…\u2028\u2029".indexOf(this.buffer.charAt(end))){end+=1;if(end-this.position>maxLength/2-1){tail=" ... ";end-=5;break}}snippet=this.buffer.slice(start,end);return common.repeat(" ",indent)+head+snippet+tail+"\n"+common.repeat(" ",indent+this.position-start+head.length)+"^"};Mark.prototype.toString=function toString(compact){var snippet,where="";if(this.name){where+='in "'+this.name+'" '}where+="at line "+(this.line+1)+", column "+(this.column+1);if(!compact){snippet=this.getSnippet();if(snippet){where+=":\n"+snippet}}return where};module.exports=Mark},{"./common":12}],32:[function(require,module,exports){(function(){var util=require("util");var Buffer=require("buffer").Buffer;var pSlice=Array.prototype.slice;function objectKeys(object){if(Object.keys)return Object.keys(object);var result=[];for(var name in object){if(Object.prototype.hasOwnProperty.call(object,name)){result.push(name)}}return result}var assert=module.exports=ok;assert.AssertionError=function AssertionError(options){this.name="AssertionError";this.message=options.message;this.actual=options.actual;this.expected=options.expected;this.operator=options.operator;var stackStartFunction=options.stackStartFunction||fail;if(Error.captureStackTrace){Error.captureStackTrace(this,stackStartFunction)}};util.inherits(assert.AssertionError,Error);function replacer(key,value){if(value===undefined){return""+value}if(typeof value==="number"&&(isNaN(value)||!isFinite(value))){return value.toString()}if(typeof value==="function"||value instanceof RegExp){return value.toString()}return value}function truncate(s,n){if(typeof s=="string"){return s.length<n?s:s.slice(0,n)}else{return s}}assert.AssertionError.prototype.toString=function(){if(this.message){return[this.name+":",this.message].join(" ")}else{return[this.name+":",truncate(JSON.stringify(this.actual,replacer),128),this.operator,truncate(JSON.stringify(this.expected,replacer),128)].join(" ")}};assert.AssertionError.__proto__=Error.prototype;function fail(actual,expected,message,operator,stackStartFunction){throw new assert.AssertionError({message:message,actual:actual,expected:expected,operator:operator,stackStartFunction:stackStartFunction})}assert.fail=fail;function ok(value,message){if(!!!value)fail(value,true,message,"==",assert.ok)}assert.ok=ok;assert.equal=function equal(actual,expected,message){if(actual!=expected)fail(actual,expected,message,"==",assert.equal)};assert.notEqual=function notEqual(actual,expected,message){if(actual==expected){fail(actual,expected,message,"!=",assert.notEqual)}};assert.deepEqual=function deepEqual(actual,expected,message){if(!_deepEqual(actual,expected)){fail(actual,expected,message,"deepEqual",assert.deepEqual)}};function _deepEqual(actual,expected){if(actual===expected){return true}else if(Buffer.isBuffer(actual)&&Buffer.isBuffer(expected)){if(actual.length!=expected.length)return false;for(var i=0;i<actual.length;i++){if(actual[i]!==expected[i])return false}return true}else if(actual instanceof Date&&expected instanceof Date){return actual.getTime()===expected.getTime()}else if(typeof actual!="object"&&typeof expected!="object"){return actual==expected}else{return objEquiv(actual,expected)}}function isUndefinedOrNull(value){return value===null||value===undefined}function isArguments(object){return Object.prototype.toString.call(object)=="[object Arguments]"}function objEquiv(a,b){if(isUndefinedOrNull(a)||isUndefinedOrNull(b))return false;if(a.prototype!==b.prototype)return false;if(isArguments(a)){if(!isArguments(b)){return false}a=pSlice.call(a);b=pSlice.call(b);return _deepEqual(a,b)}try{var ka=objectKeys(a),kb=objectKeys(b),key,i}catch(e){return false}if(ka.length!=kb.length)return false;ka.sort();kb.sort();for(i=ka.length-1;i>=0;i--){if(ka[i]!=kb[i])return false}for(i=ka.length-1;i>=0;i--){key=ka[i];if(!_deepEqual(a[key],b[key]))return false}return true}assert.notDeepEqual=function notDeepEqual(actual,expected,message){if(_deepEqual(actual,expected)){fail(actual,expected,message,"notDeepEqual",assert.notDeepEqual)}};assert.strictEqual=function strictEqual(actual,expected,message){if(actual!==expected){fail(actual,expected,message,"===",assert.strictEqual)}};assert.notStrictEqual=function notStrictEqual(actual,expected,message){if(actual===expected){fail(actual,expected,message,"!==",assert.notStrictEqual)}};function expectedException(actual,expected){if(!actual||!expected){return false}if(expected instanceof RegExp){return expected.test(actual)}else if(actual instanceof expected){return true}else if(expected.call({},actual)===true){return true}return false}function _throws(shouldThrow,block,expected,message){var actual;if(typeof expected==="string"){message=expected;expected=null}try{block()}catch(e){actual=e}message=(expected&&expected.name?" ("+expected.name+").":".")+(message?" "+message:".");if(shouldThrow&&!actual){fail("Missing expected exception"+message)}if(!shouldThrow&&expectedException(actual,expected)){fail("Got unwanted exception"+message)}if(shouldThrow&&actual&&expected&&!expectedException(actual,expected)||!shouldThrow&&actual){throw actual}}assert.throws=function(block,error,message){_throws.apply(this,[true].concat(pSlice.call(arguments)))};assert.doesNotThrow=function(block,error,message){_throws.apply(this,[false].concat(pSlice.call(arguments)))};assert.ifError=function(err){if(err){throw err}}})()},{util:33,buffer:34}],16:[function(require,module,exports){"use strict";var Type=require("../type");module.exports=new Type("tag:yaml.org,2002:str",{loader:{kind:"string"}})},{"../type":4}],17:[function(require,module,exports){"use strict";var Type=require("../type");module.exports=new Type("tag:yaml.org,2002:seq",{loader:{kind:"array"}})},{"../type":4}],18:[function(require,module,exports){"use strict";var Type=require("../type");module.exports=new Type("tag:yaml.org,2002:map",{loader:{kind:"object"}})},{"../type":4}],19:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var YAML_NULL_MAP={"~":true,"null":true,Null:true,NULL:true};function resolveYamlNull(object){return YAML_NULL_MAP[object]?null:NIL}module.exports=new Type("tag:yaml.org,2002:null",{loader:{kind:"string",resolver:resolveYamlNull},dumper:{kind:"null",defaultStyle:"lowercase",representer:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}}}})},{"../common":12,"../type":4}],20:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var YAML_IMPLICIT_BOOLEAN_MAP={"true":true,True:true,TRUE:true,"false":false,False:false,FALSE:false};var YAML_EXPLICIT_BOOLEAN_MAP={"true":true,True:true,TRUE:true,"false":false,False:false,FALSE:false,y:true,Y:true,yes:true,Yes:true,YES:true,n:false,N:false,no:false,No:false,NO:false,on:true,On:true,ON:true,off:false,Off:false,OFF:false};function resolveYamlBoolean(object,explicit){if(explicit){if(YAML_EXPLICIT_BOOLEAN_MAP.hasOwnProperty(object)){return YAML_EXPLICIT_BOOLEAN_MAP[object]}else{return NIL}}else{if(YAML_IMPLICIT_BOOLEAN_MAP.hasOwnProperty(object)){return YAML_IMPLICIT_BOOLEAN_MAP[object]}else{return NIL}}}module.exports=new Type("tag:yaml.org,2002:bool",{loader:{kind:"string",resolver:resolveYamlBoolean},dumper:{kind:"boolean",defaultStyle:"lowercase",representer:{lowercase:function(object){return object?"true":"false"},uppercase:function(object){return object?"TRUE":"FALSE"},camelcase:function(object){return object?"True":"False"}}}})},{"../common":12,"../type":4}],21:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var YAML_INTEGER_PATTERN=new RegExp("^(?:[-+]?0b[0-1_]+"+"|[-+]?0[0-7_]+"+"|[-+]?(?:0|[1-9][0-9_]*)"+"|[-+]?0x[0-9a-fA-F_]+"+"|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)$");function resolveYamlInteger(object){var value,sign,base,digits;if(!YAML_INTEGER_PATTERN.test(object)){return NIL}value=object.replace(/_/g,"");sign="-"===value[0]?-1:1;digits=[];if(0<="+-".indexOf(value[0])){value=value.slice(1)}if("0"===value){return 0}else if(/^0b/.test(value)){return sign*parseInt(value.slice(2),2)}else if(/^0x/.test(value)){return sign*parseInt(value,16)}else if("0"===value[0]){return sign*parseInt(value,8)}else if(0<=value.indexOf(":")){value.split(":").forEach(function(v){digits.unshift(parseInt(v,10))});value=0;base=1;digits.forEach(function(d){value+=d*base;base*=60});return sign*value}else{return sign*parseInt(value,10)}}module.exports=new Type("tag:yaml.org,2002:int",{loader:{kind:"string",resolver:resolveYamlInteger},dumper:{kind:"integer",defaultStyle:"decimal",representer:{binary:function(object){return"0b"+object.toString(2)},octal:function(object){return"0"+object.toString(8)},decimal:function(object){return object.toString(10)},hexadecimal:function(object){return"0x"+object.toString(16).toUpperCase()}},styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}})},{"../common":12,"../type":4}],22:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var YAML_FLOAT_PATTERN=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+][0-9]+)?"+"|\\.[0-9_]+(?:[eE][-+][0-9]+)?"+"|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*"+"|[-+]?\\.(?:inf|Inf|INF)"+"|\\.(?:nan|NaN|NAN))$");function resolveYamlFloat(object){var value,sign,base,digits;if(!YAML_FLOAT_PATTERN.test(object)){return NIL}value=object.replace(/_/g,"").toLowerCase();sign="-"===value[0]?-1:1;digits=[];if(0<="+-".indexOf(value[0])){value=value.slice(1)}if(".inf"===value){return 1===sign?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY}else if(".nan"===value){return NaN}else if(0<=value.indexOf(":")){value.split(":").forEach(function(v){digits.unshift(parseFloat(v,10))});value=0;base=1;digits.forEach(function(d){value+=d*base;base*=60});return sign*value}else{return sign*parseFloat(value,10)}}function representYamlFloat(object,style){if(isNaN(object)){switch(style){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}}else if(Number.POSITIVE_INFINITY===object){switch(style){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}}else if(Number.NEGATIVE_INFINITY===object){switch(style){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}}else{return object.toString(10)}}module.exports=new Type("tag:yaml.org,2002:float",{loader:{kind:"string",resolver:resolveYamlFloat},dumper:{kind:"float",defaultStyle:"lowercase",representer:representYamlFloat}})},{"../common":12,"../type":4}],23:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var YAML_TIMESTAMP_REGEXP=new RegExp("^([0-9][0-9][0-9][0-9])"+"-([0-9][0-9]?)"+"-([0-9][0-9]?)"+"(?:(?:[Tt]|[ \\t]+)"+"([0-9][0-9]?)"+":([0-9][0-9])"+":([0-9][0-9])"+"(?:\\.([0-9]*))?"+"(?:[ \\t]*(Z|([-+])([0-9][0-9]?)"+"(?::([0-9][0-9]))?))?)?$");function resolveYamlTimestamp(object){var match,year,month,day,hour,minute,second,fraction=0,delta=null,tz_hour,tz_minute,data;match=YAML_TIMESTAMP_REGEXP.exec(object);if(null===match){return NIL}year=+match[1];month=+match[2]-1;day=+match[3];if(!match[4]){return new Date(Date.UTC(year,month,day))}hour=+match[4];minute=+match[5];second=+match[6];if(match[7]){fraction=match[7].slice(0,3);while(fraction.length<3){fraction+="0"}fraction=+fraction}if(match[9]){tz_hour=+match[10];tz_minute=+(match[11]||0);delta=(tz_hour*60+tz_minute)*6e4;if("-"===match[9]){delta=-delta}}data=new Date(Date.UTC(year,month,day,hour,minute,second,fraction));if(delta){data.setTime(data.getTime()-delta)}return data}function representYamlTimestamp(object){return object.toISOString()}module.exports=new Type("tag:yaml.org,2002:timestamp",{loader:{kind:"string",resolver:resolveYamlTimestamp},dumper:{kind:"object",instanceOf:Date,representer:representYamlTimestamp}})},{"../common":12,"../type":4}],24:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");function resolveYamlMerge(object){return"<<"===object?object:NIL}module.exports=new Type("tag:yaml.org,2002:merge",{loader:{kind:"string",resolver:resolveYamlMerge}})},{"../common":12,"../type":4}],25:[function(require,module,exports){(function(){"use strict";var NodeBuffer=require("buffer").Buffer;var common=require("../common");var NIL=common.NIL;var Type=require("../type");var BASE64_PADDING="=";var BASE64_BINTABLE=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,0,-1,-1,-1,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,-1,-1,-1,-1,-1,-1,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,-1,-1,-1,-1,-1];var BASE64_CHARTABLE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");function resolveYamlBinary(object){var value,code,idx=0,result=[],leftbits,leftdata;leftbits=0;leftdata=0;for(idx=0;idx<object.length;idx+=1){code=object.charCodeAt(idx);value=BASE64_BINTABLE[code&127];if(10!==code&&13!==code){if(-1===value){return NIL}leftdata=leftdata<<6|value;leftbits+=6;if(leftbits>=8){leftbits-=8;if(BASE64_PADDING!==object.charAt(idx)){result.push(leftdata>>leftbits&255)}leftdata&=(1<<leftbits)-1}}}if(leftbits){return NIL}else{return new NodeBuffer(result)}}function representYamlBinary(object){var result="",index,length,rest;for(index=0,length=object.length-2;index<length;index+=3){result+=BASE64_CHARTABLE[object[index+0]>>2];result+=BASE64_CHARTABLE[((object[index+0]&3)<<4)+(object[index+1]>>4)];result+=BASE64_CHARTABLE[((object[index+1]&15)<<2)+(object[index+2]>>6)];result+=BASE64_CHARTABLE[object[index+2]&63]}rest=object.length%3;if(0!==rest){index=object.length-rest;result+=BASE64_CHARTABLE[object[index+0]>>2];if(2===rest){result+=BASE64_CHARTABLE[((object[index+0]&3)<<4)+(object[index+1]>>4)];result+=BASE64_CHARTABLE[(object[index+1]&15)<<2];result+=BASE64_PADDING}else{result+=BASE64_CHARTABLE[(object[index+0]&3)<<4];result+=BASE64_PADDING+BASE64_PADDING}}return result}module.exports=new Type("tag:yaml.org,2002:binary",{loader:{kind:"string",resolver:resolveYamlBinary},dumper:{kind:"object",instanceOf:NodeBuffer,representer:representYamlBinary}})})()},{buffer:34,"../common":12,"../type":4}],26:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var _hasOwnProperty=Object.prototype.hasOwnProperty;var _toString=Object.prototype.toString;function resolveYamlOmap(object){var objectKeys=[],index,length,pair,pairKey,pairHasKey;for(index=0,length=object.length;index<length;index+=1){pair=object[index];pairHasKey=false;if("[object Object]"!==_toString.call(pair)){return NIL}for(pairKey in pair){if(_hasOwnProperty.call(pair,pairKey)){if(!pairHasKey){pairHasKey=true}else{return NIL}}}if(!pairHasKey){return NIL}if(-1===objectKeys.indexOf(pairKey)){objectKeys.push(pairKey)}else{return NIL}}return object}module.exports=new Type("tag:yaml.org,2002:omap",{loader:{kind:"array",resolver:resolveYamlOmap}})},{"../common":12,"../type":4}],27:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var _toString=Object.prototype.toString;function resolveYamlPairs(object){var index,length,pair,keys,result;result=new Array(object.length);for(index=0,length=object.length;index<length;index+=1){pair=object[index];if("[object Object]"!==_toString.call(pair)){return NIL}keys=Object.keys(pair);if(1!==keys.length){return NIL}result[index]=[keys[0],pair[keys[0]]]}return result}module.exports=new Type("tag:yaml.org,2002:pairs",{loader:{kind:"array",resolver:resolveYamlPairs}})
},{"../common":12,"../type":4}],28:[function(require,module,exports){"use strict";var NIL=require("../common").NIL;var Type=require("../type");var _hasOwnProperty=Object.prototype.hasOwnProperty;function resolveYamlSet(object){var key;for(key in object){if(_hasOwnProperty.call(object,key)){if(null!==object[key]){return NIL}}}return object}module.exports=new Type("tag:yaml.org,2002:set",{loader:{kind:"object",resolver:resolveYamlSet}})},{"../common":12,"../type":4}],29:[function(require,module,exports){"use strict";var Type=require("../../type");function resolveJavascriptUndefined(){var undef;return undef}function representJavascriptUndefined(){return""}module.exports=new Type("tag:yaml.org,2002:js/undefined",{loader:{kind:"string",resolver:resolveJavascriptUndefined},dumper:{kind:"undefined",representer:representJavascriptUndefined}})},{"../../type":4}],30:[function(require,module,exports){(function(){"use strict";var NIL=require("../../common").NIL;var Type=require("../../type");function resolveJavascriptRegExp(object){var regexp=object,tail=/\/([gim]*)$/.exec(object),modifiers;if("/"===regexp[0]&&tail&&4>=tail[0].length){regexp=regexp.slice(1,regexp.length-tail[0].length);modifiers=tail[1]}try{return new RegExp(regexp,modifiers)}catch(error){return NIL}}function representJavascriptRegExp(object){var result="/"+object.source+"/";if(object.global){result+="g"}if(object.multiline){result+="m"}if(object.ignoreCase){result+="i"}return result}module.exports=new Type("tag:yaml.org,2002:js/regexp",{loader:{kind:"string",resolver:resolveJavascriptRegExp},dumper:{kind:"object",instanceOf:RegExp,representer:representJavascriptRegExp}})})()},{"../../common":12,"../../type":4}],35:[function(require,module,exports){exports.readIEEE754=function(buffer,offset,isBE,mLen,nBytes){var e,m,eLen=nBytes*8-mLen-1,eMax=(1<<eLen)-1,eBias=eMax>>1,nBits=-7,i=isBE?0:nBytes-1,d=isBE?1:-1,s=buffer[offset+i];i+=d;e=s&(1<<-nBits)-1;s>>=-nBits;nBits+=eLen;for(;nBits>0;e=e*256+buffer[offset+i],i+=d,nBits-=8);m=e&(1<<-nBits)-1;e>>=-nBits;nBits+=mLen;for(;nBits>0;m=m*256+buffer[offset+i],i+=d,nBits-=8);if(e===0){e=1-eBias}else if(e===eMax){return m?NaN:(s?-1:1)*Infinity}else{m=m+Math.pow(2,mLen);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-mLen)};exports.writeIEEE754=function(buffer,value,offset,isBE,mLen,nBytes){var e,m,c,eLen=nBytes*8-mLen-1,eMax=(1<<eLen)-1,eBias=eMax>>1,rt=mLen===23?Math.pow(2,-24)-Math.pow(2,-77):0,i=isBE?nBytes-1:0,d=isBE?-1:1,s=value<0||value===0&&1/value<0?1:0;value=Math.abs(value);if(isNaN(value)||value===Infinity){m=isNaN(value)?1:0;e=eMax}else{e=Math.floor(Math.log(value)/Math.LN2);if(value*(c=Math.pow(2,-e))<1){e--;c*=2}if(e+eBias>=1){value+=rt/c}else{value+=rt*Math.pow(2,1-eBias)}if(value*c>=2){e++;c/=2}if(e+eBias>=eMax){m=0;e=eMax}else if(e+eBias>=1){m=(value*c-1)*Math.pow(2,mLen);e=e+eBias}else{m=value*Math.pow(2,eBias-1)*Math.pow(2,mLen);e=0}}for(;mLen>=8;buffer[offset+i]=m&255,i+=d,m/=256,mLen-=8);e=e<<mLen|m;eLen+=mLen;for(;eLen>0;buffer[offset+i]=e&255,i+=d,e/=256,eLen-=8);buffer[offset+i-d]|=s*128}},{}],33:[function(require,module,exports){var events=require("events");exports.isArray=isArray;exports.isDate=function(obj){return Object.prototype.toString.call(obj)==="[object Date]"};exports.isRegExp=function(obj){return Object.prototype.toString.call(obj)==="[object RegExp]"};exports.print=function(){};exports.puts=function(){};exports.debug=function(){};exports.inspect=function(obj,showHidden,depth,colors){var seen=[];var stylize=function(str,styleType){var styles={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};var style={special:"cyan",number:"blue","boolean":"yellow",undefined:"grey","null":"bold",string:"green",date:"magenta",regexp:"red"}[styleType];if(style){return"["+styles[style][0]+"m"+str+"["+styles[style][1]+"m"}else{return str}};if(!colors){stylize=function(str,styleType){return str}}function format(value,recurseTimes){if(value&&typeof value.inspect==="function"&&value!==exports&&!(value.constructor&&value.constructor.prototype===value)){return value.inspect(recurseTimes)}switch(typeof value){case"undefined":return stylize("undefined","undefined");case"string":var simple="'"+JSON.stringify(value).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return stylize(simple,"string");case"number":return stylize(""+value,"number");case"boolean":return stylize(""+value,"boolean")}if(value===null){return stylize("null","null")}var visible_keys=Object_keys(value);var keys=showHidden?Object_getOwnPropertyNames(value):visible_keys;if(typeof value==="function"&&keys.length===0){if(isRegExp(value)){return stylize(""+value,"regexp")}else{var name=value.name?": "+value.name:"";return stylize("[Function"+name+"]","special")}}if(isDate(value)&&keys.length===0){return stylize(value.toUTCString(),"date")}var base,type,braces;if(isArray(value)){type="Array";braces=["[","]"]}else{type="Object";braces=["{","}"]}if(typeof value==="function"){var n=value.name?": "+value.name:"";base=isRegExp(value)?" "+value:" [Function"+n+"]"}else{base=""}if(isDate(value)){base=" "+value.toUTCString()}if(keys.length===0){return braces[0]+base+braces[1]}if(recurseTimes<0){if(isRegExp(value)){return stylize(""+value,"regexp")}else{return stylize("[Object]","special")}}seen.push(value);var output=keys.map(function(key){var name,str;if(value.__lookupGetter__){if(value.__lookupGetter__(key)){if(value.__lookupSetter__(key)){str=stylize("[Getter/Setter]","special")}else{str=stylize("[Getter]","special")}}else{if(value.__lookupSetter__(key)){str=stylize("[Setter]","special")}}}if(visible_keys.indexOf(key)<0){name="["+key+"]"}if(!str){if(seen.indexOf(value[key])<0){if(recurseTimes===null){str=format(value[key])}else{str=format(value[key],recurseTimes-1)}if(str.indexOf("\n")>-1){if(isArray(value)){str=str.split("\n").map(function(line){return" "+line}).join("\n").substr(2)}else{str="\n"+str.split("\n").map(function(line){return" "+line}).join("\n")}}}else{str=stylize("[Circular]","special")}}if(typeof name==="undefined"){if(type==="Array"&&key.match(/^\d+$/)){return str}name=JSON.stringify(""+key);if(name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)){name=name.substr(1,name.length-2);name=stylize(name,"name")}else{name=name.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'");name=stylize(name,"string")}}return name+": "+str});seen.pop();var numLinesEst=0;var length=output.reduce(function(prev,cur){numLinesEst++;if(cur.indexOf("\n")>=0)numLinesEst++;return prev+cur.length+1},0);if(length>50){output=braces[0]+(base===""?"":base+"\n ")+" "+output.join(",\n ")+" "+braces[1]}else{output=braces[0]+base+" "+output.join(", ")+" "+braces[1]}return output}return format(obj,typeof depth==="undefined"?2:depth)};function isArray(ar){return ar instanceof Array||Array.isArray(ar)||ar&&ar!==Object.prototype&&isArray(ar.__proto__)}function isRegExp(re){return re instanceof RegExp||typeof re==="object"&&Object.prototype.toString.call(re)==="[object RegExp]"}function isDate(d){if(d instanceof Date)return true;if(typeof d!=="object")return false;var properties=Date.prototype&&Object_getOwnPropertyNames(Date.prototype);var proto=d.__proto__&&Object_getOwnPropertyNames(d.__proto__);return JSON.stringify(proto)===JSON.stringify(properties)}function pad(n){return n<10?"0"+n.toString(10):n.toString(10)}var months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function timestamp(){var d=new Date;var time=[pad(d.getHours()),pad(d.getMinutes()),pad(d.getSeconds())].join(":");return[d.getDate(),months[d.getMonth()],time].join(" ")}exports.log=function(msg){};exports.pump=null;var Object_keys=Object.keys||function(obj){var res=[];for(var key in obj)res.push(key);return res};var Object_getOwnPropertyNames=Object.getOwnPropertyNames||function(obj){var res=[];for(var key in obj){if(Object.hasOwnProperty.call(obj,key))res.push(key)}return res};var Object_create=Object.create||function(prototype,properties){var object;if(prototype===null){object={__proto__:null}}else{if(typeof prototype!=="object"){throw new TypeError("typeof prototype["+typeof prototype+"] != 'object'")}var Type=function(){};Type.prototype=prototype;object=new Type;object.__proto__=prototype}if(typeof properties!=="undefined"&&Object.defineProperties){Object.defineProperties(object,properties)}return object};exports.inherits=function(ctor,superCtor){ctor.super_=superCtor;ctor.prototype=Object_create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}})};var formatRegExp=/%[sdj%]/g;exports.format=function(f){if(typeof f!=="string"){var objects=[];for(var i=0;i<arguments.length;i++){objects.push(exports.inspect(arguments[i]))}return objects.join(" ")}var i=1;var args=arguments;var len=args.length;var str=String(f).replace(formatRegExp,function(x){if(x==="%%")return"%";if(i>=len)return x;switch(x){case"%s":return String(args[i++]);case"%d":return Number(args[i++]);case"%j":return JSON.stringify(args[i++]);default:return x}});for(var x=args[i];i<len;x=args[++i]){if(x===null||typeof x!=="object"){str+=" "+x}else{str+=" "+exports.inspect(x)}}return str}},{events:36}],34:[function(require,module,exports){(function(){function SlowBuffer(size){this.length=size}var assert=require("assert");exports.INSPECT_MAX_BYTES=50;function toHex(n){if(n<16)return"0"+n.toString(16);return n.toString(16)}function utf8ToBytes(str){var byteArray=[];for(var i=0;i<str.length;i++)if(str.charCodeAt(i)<=127)byteArray.push(str.charCodeAt(i));else{var h=encodeURIComponent(str.charAt(i)).substr(1).split("%");for(var j=0;j<h.length;j++)byteArray.push(parseInt(h[j],16))}return byteArray}function asciiToBytes(str){var byteArray=[];for(var i=0;i<str.length;i++)byteArray.push(str.charCodeAt(i)&255);return byteArray}function base64ToBytes(str){return require("base64-js").toByteArray(str)}SlowBuffer.byteLength=function(str,encoding){switch(encoding||"utf8"){case"hex":return str.length/2;case"utf8":case"utf-8":return utf8ToBytes(str).length;case"ascii":case"binary":return str.length;case"base64":return base64ToBytes(str).length;default:throw new Error("Unknown encoding")}};function blitBuffer(src,dst,offset,length){var pos,i=0;while(i<length){if(i+offset>=dst.length||i>=src.length)break;dst[i+offset]=src[i];i++}return i}SlowBuffer.prototype.utf8Write=function(string,offset,length){var bytes,pos;return SlowBuffer._charsWritten=blitBuffer(utf8ToBytes(string),this,offset,length)};SlowBuffer.prototype.asciiWrite=function(string,offset,length){var bytes,pos;return SlowBuffer._charsWritten=blitBuffer(asciiToBytes(string),this,offset,length)};SlowBuffer.prototype.binaryWrite=SlowBuffer.prototype.asciiWrite;SlowBuffer.prototype.base64Write=function(string,offset,length){var bytes,pos;return SlowBuffer._charsWritten=blitBuffer(base64ToBytes(string),this,offset,length)};SlowBuffer.prototype.base64Slice=function(start,end){var bytes=Array.prototype.slice.apply(this,arguments);return require("base64-js").fromByteArray(bytes)};function decodeUtf8Char(str){try{return decodeURIComponent(str)}catch(err){return String.fromCharCode(65533)}}SlowBuffer.prototype.utf8Slice=function(){var bytes=Array.prototype.slice.apply(this,arguments);var res="";var tmp="";var i=0;while(i<bytes.length){if(bytes[i]<=127){res+=decodeUtf8Char(tmp)+String.fromCharCode(bytes[i]);tmp=""}else tmp+="%"+bytes[i].toString(16);i++}return res+decodeUtf8Char(tmp)};SlowBuffer.prototype.asciiSlice=function(){var bytes=Array.prototype.slice.apply(this,arguments);var ret="";for(var i=0;i<bytes.length;i++)ret+=String.fromCharCode(bytes[i]);return ret};SlowBuffer.prototype.binarySlice=SlowBuffer.prototype.asciiSlice;SlowBuffer.prototype.inspect=function(){var out=[],len=this.length;for(var i=0;i<len;i++){out[i]=toHex(this[i]);if(i==exports.INSPECT_MAX_BYTES){out[i+1]="...";break}}return"<SlowBuffer "+out.join(" ")+">"};SlowBuffer.prototype.hexSlice=function(start,end){var len=this.length;if(!start||start<0)start=0;if(!end||end<0||end>len)end=len;var out="";for(var i=start;i<end;i++){out+=toHex(this[i])}return out};SlowBuffer.prototype.toString=function(encoding,start,end){encoding=String(encoding||"utf8").toLowerCase();start=+start||0;if(typeof end=="undefined")end=this.length;if(+end==start){return""}switch(encoding){case"hex":return this.hexSlice(start,end);case"utf8":case"utf-8":return this.utf8Slice(start,end);case"ascii":return this.asciiSlice(start,end);case"binary":return this.binarySlice(start,end);case"base64":return this.base64Slice(start,end);case"ucs2":case"ucs-2":return this.ucs2Slice(start,end);default:throw new Error("Unknown encoding")}};SlowBuffer.prototype.hexWrite=function(string,offset,length){offset=+offset||0;var remaining=this.length-offset;if(!length){length=remaining}else{length=+length;if(length>remaining){length=remaining}}var strLen=string.length;if(strLen%2){throw new Error("Invalid hex string")}if(length>strLen/2){length=strLen/2}for(var i=0;i<length;i++){var byte=parseInt(string.substr(i*2,2),16);if(isNaN(byte))throw new Error("Invalid hex string");this[offset+i]=byte}SlowBuffer._charsWritten=i*2;return i};SlowBuffer.prototype.write=function(string,offset,length,encoding){if(isFinite(offset)){if(!isFinite(length)){encoding=length;length=undefined}}else{var swap=encoding;encoding=offset;offset=length;length=swap}offset=+offset||0;var remaining=this.length-offset;if(!length){length=remaining}else{length=+length;if(length>remaining){length=remaining}}encoding=String(encoding||"utf8").toLowerCase();switch(encoding){case"hex":return this.hexWrite(string,offset,length);case"utf8":case"utf-8":return this.utf8Write(string,offset,length);case"ascii":return this.asciiWrite(string,offset,length);case"binary":return this.binaryWrite(string,offset,length);case"base64":return this.base64Write(string,offset,length);case"ucs2":case"ucs-2":return this.ucs2Write(string,offset,length);default:throw new Error("Unknown encoding")}};SlowBuffer.prototype.slice=function(start,end){if(end===undefined)end=this.length;if(end>this.length){throw new Error("oob")}if(start>end){throw new Error("oob")}return new Buffer(this,end-start,+start)};SlowBuffer.prototype.copy=function(target,targetstart,sourcestart,sourceend){var temp=[];for(var i=sourcestart;i<sourceend;i++){assert.ok(typeof this[i]!=="undefined","copying undefined buffer bytes!");temp.push(this[i])}for(var i=targetstart;i<targetstart+temp.length;i++){target[i]=temp[i-targetstart]}};SlowBuffer.prototype.fill=function(value,start,end){if(end>this.length){throw new Error("oob")}if(start>end){throw new Error("oob")}for(var i=start;i<end;i++){this[i]=value}};function coerce(length){length=~~Math.ceil(+length);return length<0?0:length}function Buffer(subject,encoding,offset){if(!(this instanceof Buffer)){return new Buffer(subject,encoding,offset)}var type;if(typeof offset==="number"){this.length=coerce(encoding);this.parent=subject;this.offset=offset}else{switch(type=typeof subject){case"number":this.length=coerce(subject);break;case"string":this.length=Buffer.byteLength(subject,encoding);break;case"object":this.length=coerce(subject.length);break;default:throw new Error("First argument needs to be a number, "+"array or string.")}if(this.length>Buffer.poolSize){this.parent=new SlowBuffer(this.length);this.offset=0}else{if(!pool||pool.length-pool.used<this.length)allocPool();this.parent=pool;this.offset=pool.used;pool.used+=this.length}if(isArrayIsh(subject)){for(var i=0;i<this.length;i++){if(subject instanceof Buffer){this.parent[i+this.offset]=subject.readUInt8(i)}else{this.parent[i+this.offset]=subject[i]}}}else if(type=="string"){this.length=this.write(subject,0,encoding)}}}function isArrayIsh(subject){return Array.isArray(subject)||Buffer.isBuffer(subject)||subject&&typeof subject==="object"&&typeof subject.length==="number"}exports.SlowBuffer=SlowBuffer;exports.Buffer=Buffer;Buffer.poolSize=8*1024;var pool;function allocPool(){pool=new SlowBuffer(Buffer.poolSize);pool.used=0}Buffer.isBuffer=function isBuffer(b){return b instanceof Buffer||b instanceof SlowBuffer};Buffer.concat=function(list,totalLength){if(!Array.isArray(list)){throw new Error("Usage: Buffer.concat(list, [totalLength])\n list should be an Array.")}if(list.length===0){return new Buffer(0)}else if(list.length===1){return list[0]}if(typeof totalLength!=="number"){totalLength=0;for(var i=0;i<list.length;i++){var buf=list[i];totalLength+=buf.length}}var buffer=new Buffer(totalLength);var pos=0;for(var i=0;i<list.length;i++){var buf=list[i];buf.copy(buffer,pos);pos+=buf.length}return buffer};Buffer.prototype.inspect=function inspect(){var out=[],len=this.length;for(var i=0;i<len;i++){out[i]=toHex(this.parent[i+this.offset]);if(i==exports.INSPECT_MAX_BYTES){out[i+1]="...";break}}return"<Buffer "+out.join(" ")+">"};Buffer.prototype.get=function get(i){if(i<0||i>=this.length)throw new Error("oob");return this.parent[this.offset+i]};Buffer.prototype.set=function set(i,v){if(i<0||i>=this.length)throw new Error("oob");return this.parent[this.offset+i]=v};Buffer.prototype.write=function(string,offset,length,encoding){if(isFinite(offset)){if(!isFinite(length)){encoding=length;length=undefined}}else{var swap=encoding;encoding=offset;offset=length;length=swap}offset=+offset||0;var remaining=this.length-offset;if(!length){length=remaining}else{length=+length;if(length>remaining){length=remaining}}encoding=String(encoding||"utf8").toLowerCase();var ret;switch(encoding){case"hex":ret=this.parent.hexWrite(string,this.offset+offset,length);break;case"utf8":case"utf-8":ret=this.parent.utf8Write(string,this.offset+offset,length);break;case"ascii":ret=this.parent.asciiWrite(string,this.offset+offset,length);break;case"binary":ret=this.parent.binaryWrite(string,this.offset+offset,length);break;case"base64":ret=this.parent.base64Write(string,this.offset+offset,length);break;case"ucs2":case"ucs-2":ret=this.parent.ucs2Write(string,this.offset+offset,length);break;default:throw new Error("Unknown encoding")}Buffer._charsWritten=SlowBuffer._charsWritten;return ret};Buffer.prototype.toString=function(encoding,start,end){encoding=String(encoding||"utf8").toLowerCase();if(typeof start=="undefined"||start<0){start=0}else if(start>this.length){start=this.length}if(typeof end=="undefined"||end>this.length){end=this.length}else if(end<0){end=0}start=start+this.offset;end=end+this.offset;switch(encoding){case"hex":return this.parent.hexSlice(start,end);case"utf8":case"utf-8":return this.parent.utf8Slice(start,end);case"ascii":return this.parent.asciiSlice(start,end);case"binary":return this.parent.binarySlice(start,end);case"base64":return this.parent.base64Slice(start,end);case"ucs2":case"ucs-2":return this.parent.ucs2Slice(start,end);default:throw new Error("Unknown encoding")}};Buffer.byteLength=SlowBuffer.byteLength;Buffer.prototype.fill=function fill(value,start,end){value||(value=0);start||(start=0);end||(end=this.length);if(typeof value==="string"){value=value.charCodeAt(0)}if(!(typeof value==="number")||isNaN(value)){throw new Error("value is not a number")}if(end<start)throw new Error("end < start");if(end===start)return 0;if(this.length==0)return 0;if(start<0||start>=this.length){throw new Error("start out of bounds")}if(end<0||end>this.length){throw new Error("end out of bounds")}return this.parent.fill(value,start+this.offset,end+this.offset)};Buffer.prototype.copy=function(target,target_start,start,end){var source=this;start||(start=0);end||(end=this.length);target_start||(target_start=0);if(end<start)throw new Error("sourceEnd < sourceStart");if(end===start)return 0;if(target.length==0||source.length==0)return 0;if(target_start<0||target_start>=target.length){throw new Error("targetStart out of bounds")}if(start<0||start>=source.length){throw new Error("sourceStart out of bounds")}if(end<0||end>source.length){throw new Error("sourceEnd out of bounds")}if(end>this.length){end=this.length}if(target.length-target_start<end-start){end=target.length-target_start+start}return this.parent.copy(target.parent,target_start+target.offset,start+this.offset,end+this.offset)};Buffer.prototype.slice=function(start,end){if(end===undefined)end=this.length;if(end>this.length)throw new Error("oob");if(start>end)throw new Error("oob");return new Buffer(this.parent,end-start,+start+this.offset)};Buffer.prototype.utf8Slice=function(start,end){return this.toString("utf8",start,end)};Buffer.prototype.binarySlice=function(start,end){return this.toString("binary",start,end)};Buffer.prototype.asciiSlice=function(start,end){return this.toString("ascii",start,end)};Buffer.prototype.utf8Write=function(string,offset){return this.write(string,offset,"utf8")};Buffer.prototype.binaryWrite=function(string,offset){return this.write(string,offset,"binary")};Buffer.prototype.asciiWrite=function(string,offset){return this.write(string,offset,"ascii")};Buffer.prototype.readUInt8=function(offset,noAssert){var buffer=this;if(!noAssert){assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset<buffer.length,"Trying to read beyond buffer length")}if(offset>=buffer.length)return;return buffer.parent[buffer.offset+offset]};function readUInt16(buffer,offset,isBigEndian,noAssert){var val=0;if(!noAssert){assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+1<buffer.length,"Trying to read beyond buffer length")}if(offset>=buffer.length)return 0;if(isBigEndian){val=buffer.parent[buffer.offset+offset]<<8;if(offset+1<buffer.length){val|=buffer.parent[buffer.offset+offset+1]}}else{val=buffer.parent[buffer.offset+offset];if(offset+1<buffer.length){val|=buffer.parent[buffer.offset+offset+1]<<8}}return val}Buffer.prototype.readUInt16LE=function(offset,noAssert){return readUInt16(this,offset,false,noAssert)};Buffer.prototype.readUInt16BE=function(offset,noAssert){return readUInt16(this,offset,true,noAssert)};function readUInt32(buffer,offset,isBigEndian,noAssert){var val=0;if(!noAssert){assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+3<buffer.length,"Trying to read beyond buffer length")}if(offset>=buffer.length)return 0;if(isBigEndian){if(offset+1<buffer.length)val=buffer.parent[buffer.offset+offset+1]<<16;if(offset+2<buffer.length)val|=buffer.parent[buffer.offset+offset+2]<<8;if(offset+3<buffer.length)val|=buffer.parent[buffer.offset+offset+3];val=val+(buffer.parent[buffer.offset+offset]<<24>>>0)}else{if(offset+2<buffer.length)val=buffer.parent[buffer.offset+offset+2]<<16;if(offset+1<buffer.length)val|=buffer.parent[buffer.offset+offset+1]<<8;val|=buffer.parent[buffer.offset+offset];if(offset+3<buffer.length)val=val+(buffer.parent[buffer.offset+offset+3]<<24>>>0)}return val}Buffer.prototype.readUInt32LE=function(offset,noAssert){return readUInt32(this,offset,false,noAssert)};Buffer.prototype.readUInt32BE=function(offset,noAssert){return readUInt32(this,offset,true,noAssert)};Buffer.prototype.readInt8=function(offset,noAssert){var buffer=this;var neg;if(!noAssert){assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset<buffer.length,"Trying to read beyond buffer length")}if(offset>=buffer.length)return;neg=buffer.parent[buffer.offset+offset]&128;if(!neg){return buffer.parent[buffer.offset+offset]}return(255-buffer.parent[buffer.offset+offset]+1)*-1};function readInt16(buffer,offset,isBigEndian,noAssert){var neg,val;if(!noAssert){assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+1<buffer.length,"Trying to read beyond buffer length")}val=readUInt16(buffer,offset,isBigEndian,noAssert);neg=val&32768;if(!neg){return val}return(65535-val+1)*-1}Buffer.prototype.readInt16LE=function(offset,noAssert){return readInt16(this,offset,false,noAssert)};Buffer.prototype.readInt16BE=function(offset,noAssert){return readInt16(this,offset,true,noAssert)};function readInt32(buffer,offset,isBigEndian,noAssert){var neg,val;if(!noAssert){assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+3<buffer.length,"Trying to read beyond buffer length")}val=readUInt32(buffer,offset,isBigEndian,noAssert);neg=val&2147483648;if(!neg){return val}return(4294967295-val+1)*-1}Buffer.prototype.readInt32LE=function(offset,noAssert){return readInt32(this,offset,false,noAssert)};Buffer.prototype.readInt32BE=function(offset,noAssert){return readInt32(this,offset,true,noAssert)};function readFloat(buffer,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset+3<buffer.length,"Trying to read beyond buffer length")}return require("./buffer_ieee754").readIEEE754(buffer,offset,isBigEndian,23,4)}Buffer.prototype.readFloatLE=function(offset,noAssert){return readFloat(this,offset,false,noAssert)};Buffer.prototype.readFloatBE=function(offset,noAssert){return readFloat(this,offset,true,noAssert)};function readDouble(buffer,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset+7<buffer.length,"Trying to read beyond buffer length")}return require("./buffer_ieee754").readIEEE754(buffer,offset,isBigEndian,52,8)}Buffer.prototype.readDoubleLE=function(offset,noAssert){return readDouble(this,offset,false,noAssert)};Buffer.prototype.readDoubleBE=function(offset,noAssert){return readDouble(this,offset,true,noAssert)};function verifuint(value,max){assert.ok(typeof value=="number","cannot write a non-number as a number");assert.ok(value>=0,"specified a negative value for writing an unsigned value");assert.ok(value<=max,"value is larger than maximum value for type");assert.ok(Math.floor(value)===value,"value has a fractional component")}Buffer.prototype.writeUInt8=function(value,offset,noAssert){var buffer=this;if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset<buffer.length,"trying to write beyond buffer length");verifuint(value,255)}if(offset<buffer.length){buffer.parent[buffer.offset+offset]=value}};function writeUInt16(buffer,value,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+1<buffer.length,"trying to write beyond buffer length");verifuint(value,65535)}for(var i=0;i<Math.min(buffer.length-offset,2);i++){buffer.parent[buffer.offset+offset+i]=(value&255<<8*(isBigEndian?1-i:i))>>>(isBigEndian?1-i:i)*8}}Buffer.prototype.writeUInt16LE=function(value,offset,noAssert){writeUInt16(this,value,offset,false,noAssert)};Buffer.prototype.writeUInt16BE=function(value,offset,noAssert){writeUInt16(this,value,offset,true,noAssert)};function writeUInt32(buffer,value,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+3<buffer.length,"trying to write beyond buffer length");verifuint(value,4294967295)}for(var i=0;i<Math.min(buffer.length-offset,4);i++){buffer.parent[buffer.offset+offset+i]=value>>>(isBigEndian?3-i:i)*8&255}}Buffer.prototype.writeUInt32LE=function(value,offset,noAssert){writeUInt32(this,value,offset,false,noAssert)};Buffer.prototype.writeUInt32BE=function(value,offset,noAssert){writeUInt32(this,value,offset,true,noAssert)};function verifsint(value,max,min){assert.ok(typeof value=="number","cannot write a non-number as a number");assert.ok(value<=max,"value larger than maximum allowed value");assert.ok(value>=min,"value smaller than minimum allowed value");assert.ok(Math.floor(value)===value,"value has a fractional component")}function verifIEEE754(value,max,min){assert.ok(typeof value=="number","cannot write a non-number as a number");assert.ok(value<=max,"value larger than maximum allowed value");assert.ok(value>=min,"value smaller than minimum allowed value")}Buffer.prototype.writeInt8=function(value,offset,noAssert){var buffer=this;if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset<buffer.length,"Trying to write beyond buffer length");verifsint(value,127,-128)}if(value>=0){buffer.writeUInt8(value,offset,noAssert)}else{buffer.writeUInt8(255+value+1,offset,noAssert)}};function writeInt16(buffer,value,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+1<buffer.length,"Trying to write beyond buffer length");verifsint(value,32767,-32768)}if(value>=0){writeUInt16(buffer,value,offset,isBigEndian,noAssert)}else{writeUInt16(buffer,65535+value+1,offset,isBigEndian,noAssert)}}Buffer.prototype.writeInt16LE=function(value,offset,noAssert){writeInt16(this,value,offset,false,noAssert)};Buffer.prototype.writeInt16BE=function(value,offset,noAssert){writeInt16(this,value,offset,true,noAssert)};function writeInt32(buffer,value,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+3<buffer.length,"Trying to write beyond buffer length");verifsint(value,2147483647,-2147483648)}if(value>=0){writeUInt32(buffer,value,offset,isBigEndian,noAssert)}else{writeUInt32(buffer,4294967295+value+1,offset,isBigEndian,noAssert)}}Buffer.prototype.writeInt32LE=function(value,offset,noAssert){writeInt32(this,value,offset,false,noAssert)};Buffer.prototype.writeInt32BE=function(value,offset,noAssert){writeInt32(this,value,offset,true,noAssert)};function writeFloat(buffer,value,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+3<buffer.length,"Trying to write beyond buffer length");verifIEEE754(value,3.4028234663852886e38,-3.4028234663852886e38)}require("./buffer_ieee754").writeIEEE754(buffer,value,offset,isBigEndian,23,4)}Buffer.prototype.writeFloatLE=function(value,offset,noAssert){writeFloat(this,value,offset,false,noAssert)};Buffer.prototype.writeFloatBE=function(value,offset,noAssert){writeFloat(this,value,offset,true,noAssert)};function writeDouble(buffer,value,offset,isBigEndian,noAssert){if(!noAssert){assert.ok(value!==undefined&&value!==null,"missing value");assert.ok(typeof isBigEndian==="boolean","missing or invalid endian");assert.ok(offset!==undefined&&offset!==null,"missing offset");assert.ok(offset+7<buffer.length,"Trying to write beyond buffer length");verifIEEE754(value,1.7976931348623157e308,-1.7976931348623157e308)}require("./buffer_ieee754").writeIEEE754(buffer,value,offset,isBigEndian,52,8)}Buffer.prototype.writeDoubleLE=function(value,offset,noAssert){writeDouble(this,value,offset,false,noAssert)};Buffer.prototype.writeDoubleBE=function(value,offset,noAssert){writeDouble(this,value,offset,true,noAssert)};SlowBuffer.prototype.readUInt8=Buffer.prototype.readUInt8;SlowBuffer.prototype.readUInt16LE=Buffer.prototype.readUInt16LE;SlowBuffer.prototype.readUInt16BE=Buffer.prototype.readUInt16BE;SlowBuffer.prototype.readUInt32LE=Buffer.prototype.readUInt32LE;SlowBuffer.prototype.readUInt32BE=Buffer.prototype.readUInt32BE;SlowBuffer.prototype.readInt8=Buffer.prototype.readInt8;
SlowBuffer.prototype.readInt16LE=Buffer.prototype.readInt16LE;SlowBuffer.prototype.readInt16BE=Buffer.prototype.readInt16BE;SlowBuffer.prototype.readInt32LE=Buffer.prototype.readInt32LE;SlowBuffer.prototype.readInt32BE=Buffer.prototype.readInt32BE;SlowBuffer.prototype.readFloatLE=Buffer.prototype.readFloatLE;SlowBuffer.prototype.readFloatBE=Buffer.prototype.readFloatBE;SlowBuffer.prototype.readDoubleLE=Buffer.prototype.readDoubleLE;SlowBuffer.prototype.readDoubleBE=Buffer.prototype.readDoubleBE;SlowBuffer.prototype.writeUInt8=Buffer.prototype.writeUInt8;SlowBuffer.prototype.writeUInt16LE=Buffer.prototype.writeUInt16LE;SlowBuffer.prototype.writeUInt16BE=Buffer.prototype.writeUInt16BE;SlowBuffer.prototype.writeUInt32LE=Buffer.prototype.writeUInt32LE;SlowBuffer.prototype.writeUInt32BE=Buffer.prototype.writeUInt32BE;SlowBuffer.prototype.writeInt8=Buffer.prototype.writeInt8;SlowBuffer.prototype.writeInt16LE=Buffer.prototype.writeInt16LE;SlowBuffer.prototype.writeInt16BE=Buffer.prototype.writeInt16BE;SlowBuffer.prototype.writeInt32LE=Buffer.prototype.writeInt32LE;SlowBuffer.prototype.writeInt32BE=Buffer.prototype.writeInt32BE;SlowBuffer.prototype.writeFloatLE=Buffer.prototype.writeFloatLE;SlowBuffer.prototype.writeFloatBE=Buffer.prototype.writeFloatBE;SlowBuffer.prototype.writeDoubleLE=Buffer.prototype.writeDoubleLE;SlowBuffer.prototype.writeDoubleBE=Buffer.prototype.writeDoubleBE})()},{assert:32,"./buffer_ieee754":35,"base64-js":37}],38:[function(require,module,exports){var process=module.exports={};process.nextTick=function(){var canSetImmediate=typeof window!=="undefined"&&window.setImmediate;var canPost=typeof window!=="undefined"&&window.postMessage&&window.addEventListener;if(canSetImmediate){return function(f){return window.setImmediate(f)}}if(canPost){var queue=[];window.addEventListener("message",function(ev){if(ev.source===window&&ev.data==="process-tick"){ev.stopPropagation();if(queue.length>0){var fn=queue.shift();fn()}}},true);return function nextTick(fn){queue.push(fn);window.postMessage("process-tick","*")}}return function nextTick(fn){setTimeout(fn,0)}}();process.title="browser";process.browser=true;process.env={};process.argv=[];process.binding=function(name){throw new Error("process.binding is not supported")};process.cwd=function(){return"/"};process.chdir=function(dir){throw new Error("process.chdir is not supported")}},{}],36:[function(require,module,exports){(function(process){if(!process.EventEmitter)process.EventEmitter=function(){};var EventEmitter=exports.EventEmitter=process.EventEmitter;var isArray=typeof Array.isArray==="function"?Array.isArray:function(xs){return Object.prototype.toString.call(xs)==="[object Array]"};function indexOf(xs,x){if(xs.indexOf)return xs.indexOf(x);for(var i=0;i<xs.length;i++){if(x===xs[i])return i}return-1}var defaultMaxListeners=10;EventEmitter.prototype.setMaxListeners=function(n){if(!this._events)this._events={};this._events.maxListeners=n};EventEmitter.prototype.emit=function(type){if(type==="error"){if(!this._events||!this._events.error||isArray(this._events.error)&&!this._events.error.length){if(arguments[1]instanceof Error){throw arguments[1]}else{throw new Error("Uncaught, unspecified 'error' event.")}return false}}if(!this._events)return false;var handler=this._events[type];if(!handler)return false;if(typeof handler=="function"){switch(arguments.length){case 1:handler.call(this);break;case 2:handler.call(this,arguments[1]);break;case 3:handler.call(this,arguments[1],arguments[2]);break;default:var args=Array.prototype.slice.call(arguments,1);handler.apply(this,args)}return true}else if(isArray(handler)){var args=Array.prototype.slice.call(arguments,1);var listeners=handler.slice();for(var i=0,l=listeners.length;i<l;i++){listeners[i].apply(this,args)}return true}else{return false}};EventEmitter.prototype.addListener=function(type,listener){if("function"!==typeof listener){throw new Error("addListener only takes instances of Function")}if(!this._events)this._events={};this.emit("newListener",type,listener);if(!this._events[type]){this._events[type]=listener}else if(isArray(this._events[type])){if(!this._events[type].warned){var m;if(this._events.maxListeners!==undefined){m=this._events.maxListeners}else{m=defaultMaxListeners}if(m&&m>0&&this._events[type].length>m){this._events[type].warned=true;console.error("(node) warning: possible EventEmitter memory "+"leak detected. %d listeners added. "+"Use emitter.setMaxListeners() to increase limit.",this._events[type].length);console.trace()}}this._events[type].push(listener)}else{this._events[type]=[this._events[type],listener]}return this};EventEmitter.prototype.on=EventEmitter.prototype.addListener;EventEmitter.prototype.once=function(type,listener){var self=this;self.on(type,function g(){self.removeListener(type,g);listener.apply(this,arguments)});return this};EventEmitter.prototype.removeListener=function(type,listener){if("function"!==typeof listener){throw new Error("removeListener only takes instances of Function")}if(!this._events||!this._events[type])return this;var list=this._events[type];if(isArray(list)){var i=indexOf(list,listener);if(i<0)return this;list.splice(i,1);if(list.length==0)delete this._events[type]}else if(this._events[type]===listener){delete this._events[type]}return this};EventEmitter.prototype.removeAllListeners=function(type){if(arguments.length===0){this._events={};return this}if(type&&this._events&&this._events[type])this._events[type]=null;return this};EventEmitter.prototype.listeners=function(type){if(!this._events)this._events={};if(!this._events[type])this._events[type]=[];if(!isArray(this._events[type])){this._events[type]=[this._events[type]]}return this._events[type]}})(require("__browserify_process"))},{__browserify_process:38}],37:[function(require,module,exports){(function(exports){"use strict";var lookup="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function b64ToByteArray(b64){var i,j,l,tmp,placeHolders,arr;if(b64.length%4>0){throw"Invalid string. Length must be a multiple of 4"}placeHolders=b64.indexOf("=");placeHolders=placeHolders>0?b64.length-placeHolders:0;arr=[];l=placeHolders>0?b64.length-4:b64.length;for(i=0,j=0;i<l;i+=4,j+=3){tmp=lookup.indexOf(b64[i])<<18|lookup.indexOf(b64[i+1])<<12|lookup.indexOf(b64[i+2])<<6|lookup.indexOf(b64[i+3]);arr.push((tmp&16711680)>>16);arr.push((tmp&65280)>>8);arr.push(tmp&255)}if(placeHolders===2){tmp=lookup.indexOf(b64[i])<<2|lookup.indexOf(b64[i+1])>>4;arr.push(tmp&255)}else if(placeHolders===1){tmp=lookup.indexOf(b64[i])<<10|lookup.indexOf(b64[i+1])<<4|lookup.indexOf(b64[i+2])>>2;arr.push(tmp>>8&255);arr.push(tmp&255)}return arr}function uint8ToBase64(uint8){var i,extraBytes=uint8.length%3,output="",temp,length;function tripletToBase64(num){return lookup[num>>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[num&63]}for(i=0,length=uint8.length-extraBytes;i<length;i+=3){temp=(uint8[i]<<16)+(uint8[i+1]<<8)+uint8[i+2];output+=tripletToBase64(temp)}switch(extraBytes){case 1:temp=uint8[uint8.length-1];output+=lookup[temp>>2];output+=lookup[temp<<4&63];output+="==";break;case 2:temp=(uint8[uint8.length-2]<<8)+uint8[uint8.length-1];output+=lookup[temp>>10];output+=lookup[temp>>4&63];output+=lookup[temp<<2&63];output+="=";break}return output}module.exports.toByteArray=b64ToByteArray;module.exports.fromByteArray=uint8ToBase64})()},{}],31:[function(require,module,exports){"use strict";var esprima=require("esprima");var NIL=require("../../common").NIL;var Type=require("../../type");function resolveJavascriptFunction(object){try{var source="("+object+")",ast=esprima.parse(source,{range:true}),params=[],body;if("Program"!==ast.type||1!==ast.body.length||"ExpressionStatement"!==ast.body[0].type||"FunctionExpression"!==ast.body[0].expression.type){return NIL}ast.body[0].expression.params.forEach(function(param){params.push(param.name)});body=ast.body[0].expression.body.range;return new Function(params,source.slice(body[0]+1,body[1]-1))}catch(err){return NIL}}function representJavascriptFunction(object){return object.toString()}module.exports=new Type("tag:yaml.org,2002:js/function",{loader:{kind:"string",resolver:resolveJavascriptFunction},dumper:{kind:"function",representer:representJavascriptFunction}})},{"../../common":12,"../../type":4,esprima:39}],39:[function(require,module,exports){(function(){(function(root,factory){"use strict";if(typeof define==="function"&&define.amd){define(["exports"],factory)}else if(typeof exports!=="undefined"){factory(exports)}else{factory(root.esprima={})}})(this,function(exports){"use strict";var Token,TokenName,Syntax,PropertyKind,Messages,Regex,source,strict,index,lineNumber,lineStart,length,buffer,state,extra;Token={BooleanLiteral:1,EOF:2,Identifier:3,Keyword:4,NullLiteral:5,NumericLiteral:6,Punctuator:7,StringLiteral:8};TokenName={};TokenName[Token.BooleanLiteral]="Boolean";TokenName[Token.EOF]="<end>";TokenName[Token.Identifier]="Identifier";TokenName[Token.Keyword]="Keyword";TokenName[Token.NullLiteral]="Null";TokenName[Token.NumericLiteral]="Numeric";TokenName[Token.Punctuator]="Punctuator";TokenName[Token.StringLiteral]="String";Syntax={AssignmentExpression:"AssignmentExpression",ArrayExpression:"ArrayExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DoWhileStatement:"DoWhileStatement",DebuggerStatement:"DebuggerStatement",EmptyStatement:"EmptyStatement",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",Identifier:"Identifier",IfStatement:"IfStatement",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",Program:"Program",Property:"Property",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement"};PropertyKind={Data:1,Get:2,Set:4};Messages={UnexpectedToken:"Unexpected token %0",UnexpectedNumber:"Unexpected number",UnexpectedString:"Unexpected string",UnexpectedIdentifier:"Unexpected identifier",UnexpectedReserved:"Unexpected reserved word",UnexpectedEOS:"Unexpected end of input",NewlineAfterThrow:"Illegal newline after throw",InvalidRegExp:"Invalid regular expression",UnterminatedRegExp:"Invalid regular expression: missing /",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInForIn:"Invalid left-hand side in for-in",MultipleDefaultsInSwitch:"More than one default clause in switch statement",NoCatchOrFinally:"Missing catch or finally after try",UnknownLabel:"Undefined label '%0'",Redeclaration:"%0 '%1' has already been declared",IllegalContinue:"Illegal continue statement",IllegalBreak:"Illegal break statement",IllegalReturn:"Illegal return statement",StrictModeWith:"Strict mode code may not include a with statement",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictParamDupe:"Strict mode function may not have duplicate parameter names",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictDuplicateProperty:"Duplicate data property in object literal not allowed in strict mode",AccessorDataProperty:"Object literal may not have data and accessor property with the same name",AccessorGetSet:"Object literal may not have multiple get/set accessors with the same name",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictReservedWord:"Use of future reserved word in strict mode"};Regex={NonAsciiIdentifierStart:new RegExp("[ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԧԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॱ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ--ℝℤΩℨK--ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚗꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA--zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]"),NonAsciiIdentifierPart:new RegExp("[ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮ̀-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁ҃-҇Ҋ-ԧԱ-Ֆՙա-և֑-ׇֽֿׁׂׅׄא-תװ-ײؐ-ؚؠ-٩ٮ-ۓە-ۜ۟-۪ۨ-ۼۿܐ-݊ݍ-ޱ߀-ߵߺࠀ-࠭ࡀ-࡛ࢠࢢ-ࢬࣤ-ࣾऀ-ॣ०-९ॱ-ॷॹ-ॿঁ-ঃঅ-ঌএঐও-নপ-রলশ-হ়-ৄেৈো-ৎৗড়ঢ়য়-ৣ০-ৱਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ਼ਾ-ੂੇੈੋ-੍ੑਖ਼-ੜਫ਼੦-ੵઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ઼-ૅે-ૉો-્ૐૠ-ૣ૦-૯ଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ଼-ୄେୈୋ-୍ୖୗଡ଼ଢ଼ୟ-ୣ୦-୯ୱஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-்ௐௗ௦-௯ఁ-ఃఅ-ఌఎ-ఐఒ-నప-ళవ-హఽ-ౄె-ైొ-్ౕౖౘౙౠ-ౣ౦-౯ಂಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ಼-ೄೆ-ೈೊ-್ೕೖೞೠ-ೣ೦-೯ೱೲംഃഅ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൎൗൠ-ൣ൦-൯ൺ-ൿංඃඅ-ඖක-නඳ-රලව-ෆ්ා-ුූෘ-ෟෲෳก-ฺเ-๎๐-๙ກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ູົ-ຽເ-ໄໆ່-ໍ໐-໙ໜ-ໟༀ༘༙༠-༩༹༵༷༾-ཇཉ-ཬཱ-྄྆-ྗྙ-ྼ࿆က-၉ၐ-ႝႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፝-፟ᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-᜔ᜠ-᜴ᝀ-ᝓᝠ-ᝬᝮ-ᝰᝲᝳក-៓ៗៜ៝០-៩᠋-᠍᠐-᠙ᠠ-ᡷᢀ-ᢪᢰ-ᣵᤀ-ᤜᤠ-ᤫᤰ-᤻᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧙ᨀ-ᨛᨠ-ᩞ᩠-᩿᩼-᪉᪐-᪙ᪧᬀ-ᭋ᭐-᭙᭫-᭳ᮀ-᯳ᰀ-᰷᱀-᱉ᱍ-ᱽ᳐-᳔᳒-ᳶᴀ-ᷦ᷼-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ‌‍‿⁀⁔ⁱⁿₐ-ₜ⃐-⃥⃜⃡-⃰ℂℇℊ--ℝℤΩℨK--ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ⵿-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⷠ-ⷿⸯ々-〇〡-〯〱-〵〸-〼ぁ-ゖ゙゚ゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘫꙀ-꙯ꙴ-꙽ꙿ-ꚗꚟ-꛱ꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠧꡀ-ꡳꢀ-꣄꣐-꣙꣠-ꣷꣻ꤀-꤭ꤰ-꥓ꥠ-ꥼꦀ-꧀ꧏ-꧙ꨀ-ꨶꩀ-ꩍ꩐-꩙ꩠ-ꩶꩺꩻꪀ-ꫂꫛ-ꫝꫠ-ꫯꫲ-꫶ꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯪ꯬꯭꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻ︀-️︠-︦︳︴﹍-﹏ﹰ-ﹴﹶ-ﻼ0--_-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]")};function assert(condition,message){if(!condition){throw new Error("ASSERT: "+message)}}function sliceSource(from,to){return source.slice(from,to)}if(typeof"esprima"[0]==="undefined"){sliceSource=function sliceArraySource(from,to){return source.slice(from,to).join("")}}function isDecimalDigit(ch){return"0123456789".indexOf(ch)>=0}function isHexDigit(ch){return"0123456789abcdefABCDEF".indexOf(ch)>=0}function isOctalDigit(ch){return"01234567".indexOf(ch)>=0}function isWhiteSpace(ch){return ch===" "||ch===" "||ch===" "||ch==="\f"||ch===" "||ch.charCodeAt(0)>=5760&&"  ".indexOf(ch)>=0}function isLineTerminator(ch){return ch==="\n"||ch==="\r"||ch==="\u2028"||ch==="\u2029"}function isIdentifierStart(ch){return ch==="$"||ch==="_"||ch==="\\"||ch>="a"&&ch<="z"||ch>="A"&&ch<="Z"||ch.charCodeAt(0)>=128&&Regex.NonAsciiIdentifierStart.test(ch)}function isIdentifierPart(ch){return ch==="$"||ch==="_"||ch==="\\"||ch>="a"&&ch<="z"||ch>="A"&&ch<="Z"||ch>="0"&&ch<="9"||ch.charCodeAt(0)>=128&&Regex.NonAsciiIdentifierPart.test(ch)}function isFutureReservedWord(id){switch(id){case"class":case"enum":case"export":case"extends":case"import":case"super":return true}return false}function isStrictModeReservedWord(id){switch(id){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"yield":case"let":return true}return false}function isRestrictedWord(id){return id==="eval"||id==="arguments"}function isKeyword(id){var keyword=false;switch(id.length){case 2:keyword=id==="if"||id==="in"||id==="do";break;case 3:keyword=id==="var"||id==="for"||id==="new"||id==="try";break;case 4:keyword=id==="this"||id==="else"||id==="case"||id==="void"||id==="with";break;case 5:keyword=id==="while"||id==="break"||id==="catch"||id==="throw";break;case 6:keyword=id==="return"||id==="typeof"||id==="delete"||id==="switch";break;case 7:keyword=id==="default"||id==="finally";break;case 8:keyword=id==="function"||id==="continue"||id==="debugger";break;case 10:keyword=id==="instanceof";break}if(keyword){return true}switch(id){case"const":return true;case"yield":case"let":return true}if(strict&&isStrictModeReservedWord(id)){return true}return isFutureReservedWord(id)}function skipComment(){var ch,blockComment,lineComment;blockComment=false;lineComment=false;while(index<length){ch=source[index];if(lineComment){ch=source[index++];if(isLineTerminator(ch)){lineComment=false;if(ch==="\r"&&source[index]==="\n"){++index}++lineNumber;lineStart=index}}else if(blockComment){if(isLineTerminator(ch)){if(ch==="\r"&&source[index+1]==="\n"){++index}++lineNumber;++index;lineStart=index;if(index>=length){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}else{ch=source[index++];if(index>=length){throwError({},Messages.UnexpectedToken,"ILLEGAL")}if(ch==="*"){ch=source[index];if(ch==="/"){++index;blockComment=false}}}}else if(ch==="/"){ch=source[index+1];if(ch==="/"){index+=2;lineComment=true}else if(ch==="*"){index+=2;blockComment=true;if(index>=length){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}else{break}}else if(isWhiteSpace(ch)){++index}else if(isLineTerminator(ch)){++index;if(ch==="\r"&&source[index]==="\n"){++index}++lineNumber;lineStart=index}else{break}}}function scanHexEscape(prefix){var i,len,ch,code=0;len=prefix==="u"?4:2;for(i=0;i<len;++i){if(index<length&&isHexDigit(source[index])){ch=source[index++];code=code*16+"0123456789abcdef".indexOf(ch.toLowerCase())}else{return""}}return String.fromCharCode(code)}function scanIdentifier(){var ch,start,id,restore;ch=source[index];if(!isIdentifierStart(ch)){return}start=index;if(ch==="\\"){++index;if(source[index]!=="u"){return}++index;restore=index;ch=scanHexEscape("u");if(ch){if(ch==="\\"||!isIdentifierStart(ch)){return}id=ch}else{index=restore;id="u"}}else{id=source[index++]}while(index<length){ch=source[index];if(!isIdentifierPart(ch)){break}if(ch==="\\"){++index;if(source[index]!=="u"){return}++index;restore=index;ch=scanHexEscape("u");if(ch){if(ch==="\\"||!isIdentifierPart(ch)){return}id+=ch}else{index=restore;id+="u"}}else{id+=source[index++]}}if(id.length===1){return{type:Token.Identifier,value:id,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(isKeyword(id)){return{type:Token.Keyword,value:id,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(id==="null"){return{type:Token.NullLiteral,value:id,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(id==="true"||id==="false"){return{type:Token.BooleanLiteral,value:id,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}return{type:Token.Identifier,value:id,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}function scanPunctuator(){var start=index,ch1=source[index],ch2,ch3,ch4;if(ch1===";"||ch1==="{"||ch1==="}"){++index;return{type:Token.Punctuator,value:ch1,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(ch1===","||ch1==="("||ch1===")"){++index;return{type:Token.Punctuator,value:ch1,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}ch2=source[index+1];if(ch1==="."&&!isDecimalDigit(ch2)){return{type:Token.Punctuator,value:source[index++],lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}ch3=source[index+2];ch4=source[index+3];if(ch1===">"&&ch2===">"&&ch3===">"){if(ch4==="="){index+=4;return{type:Token.Punctuator,value:">>>=",lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}}if(ch1==="="&&ch2==="="&&ch3==="="){index+=3;return{type:Token.Punctuator,value:"===",lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(ch1==="!"&&ch2==="="&&ch3==="="){index+=3;return{type:Token.Punctuator,value:"!==",lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(ch1===">"&&ch2===">"&&ch3===">"){index+=3;return{type:Token.Punctuator,value:">>>",lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(ch1==="<"&&ch2==="<"&&ch3==="="){index+=3;return{type:Token.Punctuator,value:"<<=",lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(ch1===">"&&ch2===">"&&ch3==="="){index+=3;return{type:Token.Punctuator,value:">>=",lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(ch2==="="){if("<>=!+-*%&|^/".indexOf(ch1)>=0){index+=2;return{type:Token.Punctuator,value:ch1+ch2,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}}if(ch1===ch2&&"+-<>&|".indexOf(ch1)>=0){if("+-<>&|".indexOf(ch2)>=0){index+=2;return{type:Token.Punctuator,value:ch1+ch2,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}}if("[]<>+-*%&|^!~?:=/".indexOf(ch1)>=0){return{type:Token.Punctuator,value:source[index++],lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}}function scanNumericLiteral(){var number,start,ch;ch=source[index];assert(isDecimalDigit(ch)||ch===".","Numeric literal must start with a decimal digit or a decimal point");start=index;number="";if(ch!=="."){number=source[index++];ch=source[index];if(number==="0"){if(ch==="x"||ch==="X"){number+=source[index++];while(index<length){ch=source[index];if(!isHexDigit(ch)){break}number+=source[index++]}if(number.length<=2){throwError({},Messages.UnexpectedToken,"ILLEGAL")}if(index<length){ch=source[index];if(isIdentifierStart(ch)){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}return{type:Token.NumericLiteral,value:parseInt(number,16),lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}else if(isOctalDigit(ch)){number+=source[index++];while(index<length){ch=source[index];if(!isOctalDigit(ch)){break}number+=source[index++]}if(index<length){ch=source[index];if(isIdentifierStart(ch)||isDecimalDigit(ch)){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}return{type:Token.NumericLiteral,value:parseInt(number,8),octal:true,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}if(isDecimalDigit(ch)){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}while(index<length){ch=source[index];if(!isDecimalDigit(ch)){break}number+=source[index++]}}if(ch==="."){number+=source[index++];while(index<length){ch=source[index];if(!isDecimalDigit(ch)){break}number+=source[index++]}}if(ch==="e"||ch==="E"){number+=source[index++];ch=source[index];if(ch==="+"||ch==="-"){number+=source[index++]}ch=source[index];if(isDecimalDigit(ch)){number+=source[index++];while(index<length){ch=source[index];if(!isDecimalDigit(ch)){break}number+=source[index++]}}else{ch="character "+ch;if(index>=length){ch="<end>"}throwError({},Messages.UnexpectedToken,"ILLEGAL")}}if(index<length){ch=source[index];if(isIdentifierStart(ch)){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}return{type:Token.NumericLiteral,value:parseFloat(number),lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}function scanStringLiteral(){var str="",quote,start,ch,code,unescaped,restore,octal=false;quote=source[index];assert(quote==="'"||quote==='"',"String literal must starts with a quote");start=index;++index;while(index<length){ch=source[index++];if(ch===quote){quote="";break}else if(ch==="\\"){ch=source[index++];if(!isLineTerminator(ch)){switch(ch){case"n":str+="\n";break;case"r":str+="\r";break;case"t":str+=" ";break;case"u":case"x":restore=index;unescaped=scanHexEscape(ch);if(unescaped){str+=unescaped}else{index=restore;str+=ch}break;case"b":str+="\b";break;case"f":str+="\f";break;case"v":str+=" ";break;default:if(isOctalDigit(ch)){code="01234567".indexOf(ch);if(code!==0){octal=true}if(index<length&&isOctalDigit(source[index])){octal=true;code=code*8+"01234567".indexOf(source[index++]);if("0123".indexOf(ch)>=0&&index<length&&isOctalDigit(source[index])){code=code*8+"01234567".indexOf(source[index++])}}str+=String.fromCharCode(code)}else{str+=ch}break}}else{++lineNumber;if(ch==="\r"&&source[index]==="\n"){++index}}}else if(isLineTerminator(ch)){break}else{str+=ch}}if(quote!==""){throwError({},Messages.UnexpectedToken,"ILLEGAL")}return{type:Token.StringLiteral,value:str,octal:octal,lineNumber:lineNumber,lineStart:lineStart,range:[start,index]}}function scanRegExp(){var str,ch,start,pattern,flags,value,classMarker=false,restore,terminated=false;buffer=null;skipComment();start=index;ch=source[index];assert(ch==="/","Regular expression literal must start with a slash");str=source[index++];while(index<length){ch=source[index++];str+=ch;if(classMarker){if(ch==="]"){classMarker=false}}else{if(ch==="\\"){ch=source[index++];if(isLineTerminator(ch)){throwError({},Messages.UnterminatedRegExp)}str+=ch}else if(ch==="/"){terminated=true;break}else if(ch==="["){classMarker=true}else if(isLineTerminator(ch)){throwError({},Messages.UnterminatedRegExp)}}}if(!terminated){throwError({},Messages.UnterminatedRegExp)}pattern=str.substr(1,str.length-2);flags="";while(index<length){ch=source[index];if(!isIdentifierPart(ch)){break}++index;if(ch==="\\"&&index<length){ch=source[index];if(ch==="u"){++index;restore=index;ch=scanHexEscape("u");if(ch){flags+=ch;str+="\\u";for(;restore<index;++restore){str+=source[restore]}}else{index=restore;flags+="u";str+="\\u"}}else{str+="\\"}}else{flags+=ch;str+=ch}}try{value=new RegExp(pattern,flags)}catch(e){throwError({},Messages.InvalidRegExp)}return{literal:str,value:value,range:[start,index]}}function isIdentifierName(token){return token.type===Token.Identifier||token.type===Token.Keyword||token.type===Token.BooleanLiteral||token.type===Token.NullLiteral}function advance(){var ch,token;skipComment();if(index>=length){return{type:Token.EOF,lineNumber:lineNumber,lineStart:lineStart,range:[index,index]}}token=scanPunctuator();if(typeof token!=="undefined"){return token}ch=source[index];if(ch==="'"||ch==='"'){return scanStringLiteral()}if(ch==="."||isDecimalDigit(ch)){return scanNumericLiteral()}token=scanIdentifier();if(typeof token!=="undefined"){return token}throwError({},Messages.UnexpectedToken,"ILLEGAL")}function lex(){var token;if(buffer){index=buffer.range[1];lineNumber=buffer.lineNumber;lineStart=buffer.lineStart;token=buffer;buffer=null;return token}buffer=null;return advance()}function lookahead(){var pos,line,start;if(buffer!==null){return buffer}pos=index;line=lineNumber;start=lineStart;buffer=advance();index=pos;lineNumber=line;lineStart=start;return buffer}function peekLineTerminator(){var pos,line,start,found;pos=index;line=lineNumber;start=lineStart;skipComment();found=lineNumber!==line;index=pos;lineNumber=line;lineStart=start;return found}function throwError(token,messageFormat){var error,args=Array.prototype.slice.call(arguments,2),msg=messageFormat.replace(/%(\d)/g,function(whole,index){return args[index]||""});if(typeof token.lineNumber==="number"){error=new Error("Line "+token.lineNumber+": "+msg);error.index=token.range[0];error.lineNumber=token.lineNumber;error.column=token.range[0]-lineStart+1}else{error=new Error("Line "+lineNumber+": "+msg);error.index=index;error.lineNumber=lineNumber;error.column=index-lineStart+1}throw error}function throwErrorTolerant(){try{throwError.apply(null,arguments)}catch(e){if(extra.errors){extra.errors.push(e)}else{throw e}}}function throwUnexpected(token){if(token.type===Token.EOF){throwError(token,Messages.UnexpectedEOS)}if(token.type===Token.NumericLiteral){throwError(token,Messages.UnexpectedNumber)}if(token.type===Token.StringLiteral){throwError(token,Messages.UnexpectedString)}if(token.type===Token.Identifier){throwError(token,Messages.UnexpectedIdentifier)}if(token.type===Token.Keyword){if(isFutureReservedWord(token.value)){throwError(token,Messages.UnexpectedReserved)}else if(strict&&isStrictModeReservedWord(token.value)){throwErrorTolerant(token,Messages.StrictReservedWord);return}throwError(token,Messages.UnexpectedToken,token.value)}throwError(token,Messages.UnexpectedToken,token.value)}function expect(value){var token=lex();if(token.type!==Token.Punctuator||token.value!==value){throwUnexpected(token)}}function expectKeyword(keyword){var token=lex();if(token.type!==Token.Keyword||token.value!==keyword){throwUnexpected(token)}}function match(value){var token=lookahead();return token.type===Token.Punctuator&&token.value===value}function matchKeyword(keyword){var token=lookahead();return token.type===Token.Keyword&&token.value===keyword}function matchAssign(){var token=lookahead(),op=token.value;if(token.type!==Token.Punctuator){return false}return op==="="||op==="*="||op==="/="||op==="%="||op==="+="||op==="-="||op==="<<="||op===">>="||op===">>>="||op==="&="||op==="^="||op==="|="}function consumeSemicolon(){var token,line;if(source[index]===";"){lex();return}line=lineNumber;skipComment();if(lineNumber!==line){return}if(match(";")){lex();return}token=lookahead();if(token.type!==Token.EOF&&!match("}")){throwUnexpected(token)}}function isLeftHandSide(expr){return expr.type===Syntax.Identifier||expr.type===Syntax.MemberExpression}function parseArrayInitialiser(){var elements=[];expect("[");while(!match("]")){if(match(",")){lex();elements.push(null)}else{elements.push(parseAssignmentExpression());if(!match("]")){expect(",")}}}expect("]");return{type:Syntax.ArrayExpression,elements:elements}}function parsePropertyFunction(param,first){var previousStrict,body;previousStrict=strict;body=parseFunctionSourceElements();if(first&&strict&&isRestrictedWord(param[0].name)){throwErrorTolerant(first,Messages.StrictParamName)}strict=previousStrict;return{type:Syntax.FunctionExpression,id:null,params:param,defaults:[],body:body,rest:null,generator:false,expression:false}}function parseObjectPropertyKey(){var token=lex();if(token.type===Token.StringLiteral||token.type===Token.NumericLiteral){if(strict&&token.octal){throwErrorTolerant(token,Messages.StrictOctalLiteral)}return createLiteral(token)}return{type:Syntax.Identifier,name:token.value}}function parseObjectProperty(){var token,key,id,param;token=lookahead();if(token.type===Token.Identifier){id=parseObjectPropertyKey();if(token.value==="get"&&!match(":")){key=parseObjectPropertyKey();expect("(");expect(")");return{type:Syntax.Property,key:key,value:parsePropertyFunction([]),kind:"get"}}else if(token.value==="set"&&!match(":")){key=parseObjectPropertyKey();expect("(");token=lookahead();if(token.type!==Token.Identifier){throwUnexpected(lex())}param=[parseVariableIdentifier()];expect(")");return{type:Syntax.Property,key:key,value:parsePropertyFunction(param,token),kind:"set"}}else{expect(":");return{type:Syntax.Property,key:id,value:parseAssignmentExpression(),kind:"init"}}}else if(token.type===Token.EOF||token.type===Token.Punctuator){throwUnexpected(token)}else{key=parseObjectPropertyKey();expect(":");return{type:Syntax.Property,key:key,value:parseAssignmentExpression(),kind:"init"}}}function parseObjectInitialiser(){var properties=[],property,name,kind,map={},toString=String;expect("{");while(!match("}")){property=parseObjectProperty();if(property.key.type===Syntax.Identifier){name=property.key.name}else{name=toString(property.key.value)}kind=property.kind==="init"?PropertyKind.Data:property.kind==="get"?PropertyKind.Get:PropertyKind.Set;if(Object.prototype.hasOwnProperty.call(map,name)){if(map[name]===PropertyKind.Data){if(strict&&kind===PropertyKind.Data){throwErrorTolerant({},Messages.StrictDuplicateProperty)}else if(kind!==PropertyKind.Data){throwErrorTolerant({},Messages.AccessorDataProperty)}}else{if(kind===PropertyKind.Data){throwErrorTolerant({},Messages.AccessorDataProperty)}else if(map[name]&kind){throwErrorTolerant({},Messages.AccessorGetSet)}}map[name]|=kind
}else{map[name]=kind}properties.push(property);if(!match("}")){expect(",")}}expect("}");return{type:Syntax.ObjectExpression,properties:properties}}function parseGroupExpression(){var expr;expect("(");expr=parseExpression();expect(")");return expr}function parsePrimaryExpression(){var token=lookahead(),type=token.type;if(type===Token.Identifier){return{type:Syntax.Identifier,name:lex().value}}if(type===Token.StringLiteral||type===Token.NumericLiteral){if(strict&&token.octal){throwErrorTolerant(token,Messages.StrictOctalLiteral)}return createLiteral(lex())}if(type===Token.Keyword){if(matchKeyword("this")){lex();return{type:Syntax.ThisExpression}}if(matchKeyword("function")){return parseFunctionExpression()}}if(type===Token.BooleanLiteral){lex();token.value=token.value==="true";return createLiteral(token)}if(type===Token.NullLiteral){lex();token.value=null;return createLiteral(token)}if(match("[")){return parseArrayInitialiser()}if(match("{")){return parseObjectInitialiser()}if(match("(")){return parseGroupExpression()}if(match("/")||match("/=")){return createLiteral(scanRegExp())}return throwUnexpected(lex())}function parseArguments(){var args=[];expect("(");if(!match(")")){while(index<length){args.push(parseAssignmentExpression());if(match(")")){break}expect(",")}}expect(")");return args}function parseNonComputedProperty(){var token=lex();if(!isIdentifierName(token)){throwUnexpected(token)}return{type:Syntax.Identifier,name:token.value}}function parseNonComputedMember(){expect(".");return parseNonComputedProperty()}function parseComputedMember(){var expr;expect("[");expr=parseExpression();expect("]");return expr}function parseNewExpression(){var expr;expectKeyword("new");expr={type:Syntax.NewExpression,callee:parseLeftHandSideExpression(),arguments:[]};if(match("(")){expr["arguments"]=parseArguments()}return expr}function parseLeftHandSideExpressionAllowCall(){var expr;expr=matchKeyword("new")?parseNewExpression():parsePrimaryExpression();while(match(".")||match("[")||match("(")){if(match("(")){expr={type:Syntax.CallExpression,callee:expr,arguments:parseArguments()}}else if(match("[")){expr={type:Syntax.MemberExpression,computed:true,object:expr,property:parseComputedMember()}}else{expr={type:Syntax.MemberExpression,computed:false,object:expr,property:parseNonComputedMember()}}}return expr}function parseLeftHandSideExpression(){var expr;expr=matchKeyword("new")?parseNewExpression():parsePrimaryExpression();while(match(".")||match("[")){if(match("[")){expr={type:Syntax.MemberExpression,computed:true,object:expr,property:parseComputedMember()}}else{expr={type:Syntax.MemberExpression,computed:false,object:expr,property:parseNonComputedMember()}}}return expr}function parsePostfixExpression(){var expr=parseLeftHandSideExpressionAllowCall(),token;token=lookahead();if(token.type!==Token.Punctuator){return expr}if((match("++")||match("--"))&&!peekLineTerminator()){if(strict&&expr.type===Syntax.Identifier&&isRestrictedWord(expr.name)){throwErrorTolerant({},Messages.StrictLHSPostfix)}if(!isLeftHandSide(expr)){throwError({},Messages.InvalidLHSInAssignment)}expr={type:Syntax.UpdateExpression,operator:lex().value,argument:expr,prefix:false}}return expr}function parseUnaryExpression(){var token,expr;token=lookahead();if(token.type!==Token.Punctuator&&token.type!==Token.Keyword){return parsePostfixExpression()}if(match("++")||match("--")){token=lex();expr=parseUnaryExpression();if(strict&&expr.type===Syntax.Identifier&&isRestrictedWord(expr.name)){throwErrorTolerant({},Messages.StrictLHSPrefix)}if(!isLeftHandSide(expr)){throwError({},Messages.InvalidLHSInAssignment)}expr={type:Syntax.UpdateExpression,operator:token.value,argument:expr,prefix:true};return expr}if(match("+")||match("-")||match("~")||match("!")){expr={type:Syntax.UnaryExpression,operator:lex().value,argument:parseUnaryExpression()};return expr}if(matchKeyword("delete")||matchKeyword("void")||matchKeyword("typeof")){expr={type:Syntax.UnaryExpression,operator:lex().value,argument:parseUnaryExpression()};if(strict&&expr.operator==="delete"&&expr.argument.type===Syntax.Identifier){throwErrorTolerant({},Messages.StrictDelete)}return expr}return parsePostfixExpression()}function parseMultiplicativeExpression(){var expr=parseUnaryExpression();while(match("*")||match("/")||match("%")){expr={type:Syntax.BinaryExpression,operator:lex().value,left:expr,right:parseUnaryExpression()}}return expr}function parseAdditiveExpression(){var expr=parseMultiplicativeExpression();while(match("+")||match("-")){expr={type:Syntax.BinaryExpression,operator:lex().value,left:expr,right:parseMultiplicativeExpression()}}return expr}function parseShiftExpression(){var expr=parseAdditiveExpression();while(match("<<")||match(">>")||match(">>>")){expr={type:Syntax.BinaryExpression,operator:lex().value,left:expr,right:parseAdditiveExpression()}}return expr}function parseRelationalExpression(){var expr,previousAllowIn;previousAllowIn=state.allowIn;state.allowIn=true;expr=parseShiftExpression();while(match("<")||match(">")||match("<=")||match(">=")||previousAllowIn&&matchKeyword("in")||matchKeyword("instanceof")){expr={type:Syntax.BinaryExpression,operator:lex().value,left:expr,right:parseShiftExpression()}}state.allowIn=previousAllowIn;return expr}function parseEqualityExpression(){var expr=parseRelationalExpression();while(match("==")||match("!=")||match("===")||match("!==")){expr={type:Syntax.BinaryExpression,operator:lex().value,left:expr,right:parseRelationalExpression()}}return expr}function parseBitwiseANDExpression(){var expr=parseEqualityExpression();while(match("&")){lex();expr={type:Syntax.BinaryExpression,operator:"&",left:expr,right:parseEqualityExpression()}}return expr}function parseBitwiseXORExpression(){var expr=parseBitwiseANDExpression();while(match("^")){lex();expr={type:Syntax.BinaryExpression,operator:"^",left:expr,right:parseBitwiseANDExpression()}}return expr}function parseBitwiseORExpression(){var expr=parseBitwiseXORExpression();while(match("|")){lex();expr={type:Syntax.BinaryExpression,operator:"|",left:expr,right:parseBitwiseXORExpression()}}return expr}function parseLogicalANDExpression(){var expr=parseBitwiseORExpression();while(match("&&")){lex();expr={type:Syntax.LogicalExpression,operator:"&&",left:expr,right:parseBitwiseORExpression()}}return expr}function parseLogicalORExpression(){var expr=parseLogicalANDExpression();while(match("||")){lex();expr={type:Syntax.LogicalExpression,operator:"||",left:expr,right:parseLogicalANDExpression()}}return expr}function parseConditionalExpression(){var expr,previousAllowIn,consequent;expr=parseLogicalORExpression();if(match("?")){lex();previousAllowIn=state.allowIn;state.allowIn=true;consequent=parseAssignmentExpression();state.allowIn=previousAllowIn;expect(":");expr={type:Syntax.ConditionalExpression,test:expr,consequent:consequent,alternate:parseAssignmentExpression()}}return expr}function parseAssignmentExpression(){var token,expr;token=lookahead();expr=parseConditionalExpression();if(matchAssign()){if(!isLeftHandSide(expr)){throwError({},Messages.InvalidLHSInAssignment)}if(strict&&expr.type===Syntax.Identifier&&isRestrictedWord(expr.name)){throwErrorTolerant(token,Messages.StrictLHSAssignment)}expr={type:Syntax.AssignmentExpression,operator:lex().value,left:expr,right:parseAssignmentExpression()}}return expr}function parseExpression(){var expr=parseAssignmentExpression();if(match(",")){expr={type:Syntax.SequenceExpression,expressions:[expr]};while(index<length){if(!match(",")){break}lex();expr.expressions.push(parseAssignmentExpression())}}return expr}function parseStatementList(){var list=[],statement;while(index<length){if(match("}")){break}statement=parseSourceElement();if(typeof statement==="undefined"){break}list.push(statement)}return list}function parseBlock(){var block;expect("{");block=parseStatementList();expect("}");return{type:Syntax.BlockStatement,body:block}}function parseVariableIdentifier(){var token=lex();if(token.type!==Token.Identifier){throwUnexpected(token)}return{type:Syntax.Identifier,name:token.value}}function parseVariableDeclaration(kind){var id=parseVariableIdentifier(),init=null;if(strict&&isRestrictedWord(id.name)){throwErrorTolerant({},Messages.StrictVarName)}if(kind==="const"){expect("=");init=parseAssignmentExpression()}else if(match("=")){lex();init=parseAssignmentExpression()}return{type:Syntax.VariableDeclarator,id:id,init:init}}function parseVariableDeclarationList(kind){var list=[];while(index<length){list.push(parseVariableDeclaration(kind));if(!match(",")){break}lex()}return list}function parseVariableStatement(){var declarations;expectKeyword("var");declarations=parseVariableDeclarationList();consumeSemicolon();return{type:Syntax.VariableDeclaration,declarations:declarations,kind:"var"}}function parseConstLetDeclaration(kind){var declarations;expectKeyword(kind);declarations=parseVariableDeclarationList(kind);consumeSemicolon();return{type:Syntax.VariableDeclaration,declarations:declarations,kind:kind}}function parseEmptyStatement(){expect(";");return{type:Syntax.EmptyStatement}}function parseExpressionStatement(){var expr=parseExpression();consumeSemicolon();return{type:Syntax.ExpressionStatement,expression:expr}}function parseIfStatement(){var test,consequent,alternate;expectKeyword("if");expect("(");test=parseExpression();expect(")");consequent=parseStatement();if(matchKeyword("else")){lex();alternate=parseStatement()}else{alternate=null}return{type:Syntax.IfStatement,test:test,consequent:consequent,alternate:alternate}}function parseDoWhileStatement(){var body,test,oldInIteration;expectKeyword("do");oldInIteration=state.inIteration;state.inIteration=true;body=parseStatement();state.inIteration=oldInIteration;expectKeyword("while");expect("(");test=parseExpression();expect(")");if(match(";")){lex()}return{type:Syntax.DoWhileStatement,body:body,test:test}}function parseWhileStatement(){var test,body,oldInIteration;expectKeyword("while");expect("(");test=parseExpression();expect(")");oldInIteration=state.inIteration;state.inIteration=true;body=parseStatement();state.inIteration=oldInIteration;return{type:Syntax.WhileStatement,test:test,body:body}}function parseForVariableDeclaration(){var token=lex();return{type:Syntax.VariableDeclaration,declarations:parseVariableDeclarationList(),kind:token.value}}function parseForStatement(){var init,test,update,left,right,body,oldInIteration;init=test=update=null;expectKeyword("for");expect("(");if(match(";")){lex()}else{if(matchKeyword("var")||matchKeyword("let")){state.allowIn=false;init=parseForVariableDeclaration();state.allowIn=true;if(init.declarations.length===1&&matchKeyword("in")){lex();left=init;right=parseExpression();init=null}}else{state.allowIn=false;init=parseExpression();state.allowIn=true;if(matchKeyword("in")){if(!isLeftHandSide(init)){throwError({},Messages.InvalidLHSInForIn)}lex();left=init;right=parseExpression();init=null}}if(typeof left==="undefined"){expect(";")}}if(typeof left==="undefined"){if(!match(";")){test=parseExpression()}expect(";");if(!match(")")){update=parseExpression()}}expect(")");oldInIteration=state.inIteration;state.inIteration=true;body=parseStatement();state.inIteration=oldInIteration;if(typeof left==="undefined"){return{type:Syntax.ForStatement,init:init,test:test,update:update,body:body}}return{type:Syntax.ForInStatement,left:left,right:right,body:body,each:false}}function parseContinueStatement(){var token,label=null;expectKeyword("continue");if(source[index]===";"){lex();if(!state.inIteration){throwError({},Messages.IllegalContinue)}return{type:Syntax.ContinueStatement,label:null}}if(peekLineTerminator()){if(!state.inIteration){throwError({},Messages.IllegalContinue)}return{type:Syntax.ContinueStatement,label:null}}token=lookahead();if(token.type===Token.Identifier){label=parseVariableIdentifier();if(!Object.prototype.hasOwnProperty.call(state.labelSet,label.name)){throwError({},Messages.UnknownLabel,label.name)}}consumeSemicolon();if(label===null&&!state.inIteration){throwError({},Messages.IllegalContinue)}return{type:Syntax.ContinueStatement,label:label}}function parseBreakStatement(){var token,label=null;expectKeyword("break");if(source[index]===";"){lex();if(!(state.inIteration||state.inSwitch)){throwError({},Messages.IllegalBreak)}return{type:Syntax.BreakStatement,label:null}}if(peekLineTerminator()){if(!(state.inIteration||state.inSwitch)){throwError({},Messages.IllegalBreak)}return{type:Syntax.BreakStatement,label:null}}token=lookahead();if(token.type===Token.Identifier){label=parseVariableIdentifier();if(!Object.prototype.hasOwnProperty.call(state.labelSet,label.name)){throwError({},Messages.UnknownLabel,label.name)}}consumeSemicolon();if(label===null&&!(state.inIteration||state.inSwitch)){throwError({},Messages.IllegalBreak)}return{type:Syntax.BreakStatement,label:label}}function parseReturnStatement(){var token,argument=null;expectKeyword("return");if(!state.inFunctionBody){throwErrorTolerant({},Messages.IllegalReturn)}if(source[index]===" "){if(isIdentifierStart(source[index+1])){argument=parseExpression();consumeSemicolon();return{type:Syntax.ReturnStatement,argument:argument}}}if(peekLineTerminator()){return{type:Syntax.ReturnStatement,argument:null}}if(!match(";")){token=lookahead();if(!match("}")&&token.type!==Token.EOF){argument=parseExpression()}}consumeSemicolon();return{type:Syntax.ReturnStatement,argument:argument}}function parseWithStatement(){var object,body;if(strict){throwErrorTolerant({},Messages.StrictModeWith)}expectKeyword("with");expect("(");object=parseExpression();expect(")");body=parseStatement();return{type:Syntax.WithStatement,object:object,body:body}}function parseSwitchCase(){var test,consequent=[],statement;if(matchKeyword("default")){lex();test=null}else{expectKeyword("case");test=parseExpression()}expect(":");while(index<length){if(match("}")||matchKeyword("default")||matchKeyword("case")){break}statement=parseStatement();if(typeof statement==="undefined"){break}consequent.push(statement)}return{type:Syntax.SwitchCase,test:test,consequent:consequent}}function parseSwitchStatement(){var discriminant,cases,clause,oldInSwitch,defaultFound;expectKeyword("switch");expect("(");discriminant=parseExpression();expect(")");expect("{");if(match("}")){lex();return{type:Syntax.SwitchStatement,discriminant:discriminant}}cases=[];oldInSwitch=state.inSwitch;state.inSwitch=true;defaultFound=false;while(index<length){if(match("}")){break}clause=parseSwitchCase();if(clause.test===null){if(defaultFound){throwError({},Messages.MultipleDefaultsInSwitch)}defaultFound=true}cases.push(clause)}state.inSwitch=oldInSwitch;expect("}");return{type:Syntax.SwitchStatement,discriminant:discriminant,cases:cases}}function parseThrowStatement(){var argument;expectKeyword("throw");if(peekLineTerminator()){throwError({},Messages.NewlineAfterThrow)}argument=parseExpression();consumeSemicolon();return{type:Syntax.ThrowStatement,argument:argument}}function parseCatchClause(){var param;expectKeyword("catch");expect("(");if(!match(")")){param=parseExpression();if(strict&&param.type===Syntax.Identifier&&isRestrictedWord(param.name)){throwErrorTolerant({},Messages.StrictCatchVariable)}}expect(")");return{type:Syntax.CatchClause,param:param,body:parseBlock()}}function parseTryStatement(){var block,handlers=[],finalizer=null;expectKeyword("try");block=parseBlock();if(matchKeyword("catch")){handlers.push(parseCatchClause())}if(matchKeyword("finally")){lex();finalizer=parseBlock()}if(handlers.length===0&&!finalizer){throwError({},Messages.NoCatchOrFinally)}return{type:Syntax.TryStatement,block:block,guardedHandlers:[],handlers:handlers,finalizer:finalizer}}function parseDebuggerStatement(){expectKeyword("debugger");consumeSemicolon();return{type:Syntax.DebuggerStatement}}function parseStatement(){var token=lookahead(),expr,labeledBody;if(token.type===Token.EOF){throwUnexpected(token)}if(token.type===Token.Punctuator){switch(token.value){case";":return parseEmptyStatement();case"{":return parseBlock();case"(":return parseExpressionStatement();default:break}}if(token.type===Token.Keyword){switch(token.value){case"break":return parseBreakStatement();case"continue":return parseContinueStatement();case"debugger":return parseDebuggerStatement();case"do":return parseDoWhileStatement();case"for":return parseForStatement();case"function":return parseFunctionDeclaration();case"if":return parseIfStatement();case"return":return parseReturnStatement();case"switch":return parseSwitchStatement();case"throw":return parseThrowStatement();case"try":return parseTryStatement();case"var":return parseVariableStatement();case"while":return parseWhileStatement();case"with":return parseWithStatement();default:break}}expr=parseExpression();if(expr.type===Syntax.Identifier&&match(":")){lex();if(Object.prototype.hasOwnProperty.call(state.labelSet,expr.name)){throwError({},Messages.Redeclaration,"Label",expr.name)}state.labelSet[expr.name]=true;labeledBody=parseStatement();delete state.labelSet[expr.name];return{type:Syntax.LabeledStatement,label:expr,body:labeledBody}}consumeSemicolon();return{type:Syntax.ExpressionStatement,expression:expr}}function parseFunctionSourceElements(){var sourceElement,sourceElements=[],token,directive,firstRestricted,oldLabelSet,oldInIteration,oldInSwitch,oldInFunctionBody;expect("{");while(index<length){token=lookahead();if(token.type!==Token.StringLiteral){break}sourceElement=parseSourceElement();sourceElements.push(sourceElement);if(sourceElement.expression.type!==Syntax.Literal){break}directive=sliceSource(token.range[0]+1,token.range[1]-1);if(directive==="use strict"){strict=true;if(firstRestricted){throwErrorTolerant(firstRestricted,Messages.StrictOctalLiteral)}}else{if(!firstRestricted&&token.octal){firstRestricted=token}}}oldLabelSet=state.labelSet;oldInIteration=state.inIteration;oldInSwitch=state.inSwitch;oldInFunctionBody=state.inFunctionBody;state.labelSet={};state.inIteration=false;state.inSwitch=false;state.inFunctionBody=true;while(index<length){if(match("}")){break}sourceElement=parseSourceElement();if(typeof sourceElement==="undefined"){break}sourceElements.push(sourceElement)}expect("}");state.labelSet=oldLabelSet;state.inIteration=oldInIteration;state.inSwitch=oldInSwitch;state.inFunctionBody=oldInFunctionBody;return{type:Syntax.BlockStatement,body:sourceElements}}function parseFunctionDeclaration(){var id,param,params=[],body,token,stricted,firstRestricted,message,previousStrict,paramSet;expectKeyword("function");token=lookahead();id=parseVariableIdentifier();if(strict){if(isRestrictedWord(token.value)){throwErrorTolerant(token,Messages.StrictFunctionName)}}else{if(isRestrictedWord(token.value)){firstRestricted=token;message=Messages.StrictFunctionName}else if(isStrictModeReservedWord(token.value)){firstRestricted=token;message=Messages.StrictReservedWord}}expect("(");if(!match(")")){paramSet={};while(index<length){token=lookahead();param=parseVariableIdentifier();if(strict){if(isRestrictedWord(token.value)){stricted=token;message=Messages.StrictParamName}if(Object.prototype.hasOwnProperty.call(paramSet,token.value)){stricted=token;message=Messages.StrictParamDupe}}else if(!firstRestricted){if(isRestrictedWord(token.value)){firstRestricted=token;message=Messages.StrictParamName}else if(isStrictModeReservedWord(token.value)){firstRestricted=token;message=Messages.StrictReservedWord}else if(Object.prototype.hasOwnProperty.call(paramSet,token.value)){firstRestricted=token;message=Messages.StrictParamDupe}}params.push(param);paramSet[param.name]=true;if(match(")")){break}expect(",")}}expect(")");previousStrict=strict;body=parseFunctionSourceElements();if(strict&&firstRestricted){throwError(firstRestricted,message)}if(strict&&stricted){throwErrorTolerant(stricted,message)}strict=previousStrict;return{type:Syntax.FunctionDeclaration,id:id,params:params,defaults:[],body:body,rest:null,generator:false,expression:false}}function parseFunctionExpression(){var token,id=null,stricted,firstRestricted,message,param,params=[],body,previousStrict,paramSet;expectKeyword("function");if(!match("(")){token=lookahead();id=parseVariableIdentifier();if(strict){if(isRestrictedWord(token.value)){throwErrorTolerant(token,Messages.StrictFunctionName)}}else{if(isRestrictedWord(token.value)){firstRestricted=token;message=Messages.StrictFunctionName}else if(isStrictModeReservedWord(token.value)){firstRestricted=token;message=Messages.StrictReservedWord}}}expect("(");if(!match(")")){paramSet={};while(index<length){token=lookahead();param=parseVariableIdentifier();if(strict){if(isRestrictedWord(token.value)){stricted=token;message=Messages.StrictParamName}if(Object.prototype.hasOwnProperty.call(paramSet,token.value)){stricted=token;message=Messages.StrictParamDupe}}else if(!firstRestricted){if(isRestrictedWord(token.value)){firstRestricted=token;message=Messages.StrictParamName}else if(isStrictModeReservedWord(token.value)){firstRestricted=token;message=Messages.StrictReservedWord}else if(Object.prototype.hasOwnProperty.call(paramSet,token.value)){firstRestricted=token;message=Messages.StrictParamDupe}}params.push(param);paramSet[param.name]=true;if(match(")")){break}expect(",")}}expect(")");previousStrict=strict;body=parseFunctionSourceElements();if(strict&&firstRestricted){throwError(firstRestricted,message)}if(strict&&stricted){throwErrorTolerant(stricted,message)}strict=previousStrict;return{type:Syntax.FunctionExpression,id:id,params:params,defaults:[],body:body,rest:null,generator:false,expression:false}}function parseSourceElement(){var token=lookahead();if(token.type===Token.Keyword){switch(token.value){case"const":case"let":return parseConstLetDeclaration(token.value);case"function":return parseFunctionDeclaration();default:return parseStatement()}}if(token.type!==Token.EOF){return parseStatement()}}function parseSourceElements(){var sourceElement,sourceElements=[],token,directive,firstRestricted;while(index<length){token=lookahead();if(token.type!==Token.StringLiteral){break}sourceElement=parseSourceElement();sourceElements.push(sourceElement);if(sourceElement.expression.type!==Syntax.Literal){break}directive=sliceSource(token.range[0]+1,token.range[1]-1);if(directive==="use strict"){strict=true;if(firstRestricted){throwErrorTolerant(firstRestricted,Messages.StrictOctalLiteral)}}else{if(!firstRestricted&&token.octal){firstRestricted=token}}}while(index<length){sourceElement=parseSourceElement();if(typeof sourceElement==="undefined"){break}sourceElements.push(sourceElement)}return sourceElements}function parseProgram(){var program;strict=false;program={type:Syntax.Program,body:parseSourceElements()};return program}function addComment(type,value,start,end,loc){assert(typeof start==="number","Comment must have valid position");if(extra.comments.length>0){if(extra.comments[extra.comments.length-1].range[1]>start){return}}extra.comments.push({type:type,value:value,range:[start,end],loc:loc})}function scanComment(){var comment,ch,loc,start,blockComment,lineComment;comment="";blockComment=false;lineComment=false;while(index<length){ch=source[index];if(lineComment){ch=source[index++];if(isLineTerminator(ch)){loc.end={line:lineNumber,column:index-lineStart-1};lineComment=false;addComment("Line",comment,start,index-1,loc);if(ch==="\r"&&source[index]==="\n"){++index}++lineNumber;lineStart=index;comment=""}else if(index>=length){lineComment=false;comment+=ch;loc.end={line:lineNumber,column:length-lineStart};addComment("Line",comment,start,length,loc)}else{comment+=ch}}else if(blockComment){if(isLineTerminator(ch)){if(ch==="\r"&&source[index+1]==="\n"){++index;comment+="\r\n"}else{comment+=ch}++lineNumber;++index;lineStart=index;if(index>=length){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}else{ch=source[index++];if(index>=length){throwError({},Messages.UnexpectedToken,"ILLEGAL")}comment+=ch;if(ch==="*"){ch=source[index];if(ch==="/"){comment=comment.substr(0,comment.length-1);blockComment=false;++index;loc.end={line:lineNumber,column:index-lineStart};addComment("Block",comment,start,index,loc);comment=""}}}}else if(ch==="/"){ch=source[index+1];if(ch==="/"){loc={start:{line:lineNumber,column:index-lineStart}};start=index;index+=2;lineComment=true;if(index>=length){loc.end={line:lineNumber,column:index-lineStart};lineComment=false;addComment("Line",comment,start,index,loc)}}else if(ch==="*"){start=index;index+=2;blockComment=true;loc={start:{line:lineNumber,column:index-lineStart-2}};if(index>=length){throwError({},Messages.UnexpectedToken,"ILLEGAL")}}else{break}}else if(isWhiteSpace(ch)){++index}else if(isLineTerminator(ch)){++index;if(ch==="\r"&&source[index]==="\n"){++index}++lineNumber;lineStart=index}else{break}}}function filterCommentLocation(){var i,entry,comment,comments=[];for(i=0;i<extra.comments.length;++i){entry=extra.comments[i];comment={type:entry.type,value:entry.value};if(extra.range){comment.range=entry.range}if(extra.loc){comment.loc=entry.loc}comments.push(comment)}extra.comments=comments}function collectToken(){var start,loc,token,range,value;skipComment();start=index;loc={start:{line:lineNumber,column:index-lineStart}};token=extra.advance();loc.end={line:lineNumber,column:index-lineStart};if(token.type!==Token.EOF){range=[token.range[0],token.range[1]];value=sliceSource(token.range[0],token.range[1]);extra.tokens.push({type:TokenName[token.type],value:value,range:range,loc:loc})}return token}function collectRegex(){var pos,loc,regex,token;skipComment();pos=index;loc={start:{line:lineNumber,column:index-lineStart}};regex=extra.scanRegExp();loc.end={line:lineNumber,column:index-lineStart};if(extra.tokens.length>0){token=extra.tokens[extra.tokens.length-1];if(token.range[0]===pos&&token.type==="Punctuator"){if(token.value==="/"||token.value==="/="){extra.tokens.pop()}}}extra.tokens.push({type:"RegularExpression",value:regex.literal,range:[pos,index],loc:loc});return regex}function filterTokenLocation(){var i,entry,token,tokens=[];for(i=0;i<extra.tokens.length;++i){entry=extra.tokens[i];token={type:entry.type,value:entry.value};if(extra.range){token.range=entry.range}if(extra.loc){token.loc=entry.loc}tokens.push(token)}extra.tokens=tokens}function createLiteral(token){return{type:Syntax.Literal,value:token.value}}function createRawLiteral(token){return{type:Syntax.Literal,value:token.value,raw:sliceSource(token.range[0],token.range[1])}}function createLocationMarker(){var marker={};marker.range=[index,index];marker.loc={start:{line:lineNumber,column:index-lineStart},end:{line:lineNumber,column:index-lineStart}};marker.end=function(){this.range[1]=index;this.loc.end.line=lineNumber;this.loc.end.column=index-lineStart};marker.applyGroup=function(node){if(extra.range){node.groupRange=[this.range[0],this.range[1]]}if(extra.loc){node.groupLoc={start:{line:this.loc.start.line,column:this.loc.start.column},end:{line:this.loc.end.line,column:this.loc.end.column}}}};marker.apply=function(node){if(extra.range){node.range=[this.range[0],this.range[1]]}if(extra.loc){node.loc={start:{line:this.loc.start.line,column:this.loc.start.column},end:{line:this.loc.end.line,column:this.loc.end.column}}}};return marker}function trackGroupExpression(){var marker,expr;skipComment();marker=createLocationMarker();expect("(");expr=parseExpression();expect(")");marker.end();marker.applyGroup(expr);return expr}function trackLeftHandSideExpression(){var marker,expr;skipComment();marker=createLocationMarker();expr=matchKeyword("new")?parseNewExpression():parsePrimaryExpression();while(match(".")||match("[")){if(match("[")){expr={type:Syntax.MemberExpression,computed:true,object:expr,property:parseComputedMember()};marker.end();marker.apply(expr)}else{expr={type:Syntax.MemberExpression,computed:false,object:expr,property:parseNonComputedMember()};marker.end();marker.apply(expr)}}return expr}function trackLeftHandSideExpressionAllowCall(){var marker,expr;skipComment();marker=createLocationMarker();expr=matchKeyword("new")?parseNewExpression():parsePrimaryExpression();while(match(".")||match("[")||match("(")){if(match("(")){expr={type:Syntax.CallExpression,callee:expr,arguments:parseArguments()};marker.end();marker.apply(expr)}else if(match("[")){expr={type:Syntax.MemberExpression,computed:true,object:expr,property:parseComputedMember()};marker.end();marker.apply(expr)}else{expr={type:Syntax.MemberExpression,computed:false,object:expr,property:parseNonComputedMember()};marker.end();marker.apply(expr)}}return expr}function filterGroup(node){var n,i,entry;n=Object.prototype.toString.apply(node)==="[object Array]"?[]:{};for(i in node){if(node.hasOwnProperty(i)&&i!=="groupRange"&&i!=="groupLoc"){entry=node[i];if(entry===null||typeof entry!=="object"||entry instanceof RegExp){n[i]=entry}else{n[i]=filterGroup(entry)}}}return n}function wrapTrackingFunction(range,loc){return function(parseFunction){function isBinary(node){return node.type===Syntax.LogicalExpression||node.type===Syntax.BinaryExpression}function visit(node){var start,end;if(isBinary(node.left)){visit(node.left)}if(isBinary(node.right)){visit(node.right)}if(range){if(node.left.groupRange||node.right.groupRange){start=node.left.groupRange?node.left.groupRange[0]:node.left.range[0];end=node.right.groupRange?node.right.groupRange[1]:node.right.range[1];node.range=[start,end]}else if(typeof node.range==="undefined"){start=node.left.range[0];end=node.right.range[1];node.range=[start,end]}}if(loc){if(node.left.groupLoc||node.right.groupLoc){start=node.left.groupLoc?node.left.groupLoc.start:node.left.loc.start;end=node.right.groupLoc?node.right.groupLoc.end:node.right.loc.end;node.loc={start:start,end:end}}else if(typeof node.loc==="undefined"){node.loc={start:node.left.loc.start,end:node.right.loc.end}}}}return function(){var marker,node;skipComment();marker=createLocationMarker();node=parseFunction.apply(null,arguments);marker.end();if(range&&typeof node.range==="undefined"){marker.apply(node)}if(loc&&typeof node.loc==="undefined"){marker.apply(node)}if(isBinary(node)){visit(node)}return node}}}function patch(){var wrapTracking;if(extra.comments){extra.skipComment=skipComment;skipComment=scanComment}if(extra.raw){extra.createLiteral=createLiteral;createLiteral=createRawLiteral}if(extra.range||extra.loc){extra.parseGroupExpression=parseGroupExpression;extra.parseLeftHandSideExpression=parseLeftHandSideExpression;extra.parseLeftHandSideExpressionAllowCall=parseLeftHandSideExpressionAllowCall;parseGroupExpression=trackGroupExpression;parseLeftHandSideExpression=trackLeftHandSideExpression;parseLeftHandSideExpressionAllowCall=trackLeftHandSideExpressionAllowCall;wrapTracking=wrapTrackingFunction(extra.range,extra.loc);extra.parseAdditiveExpression=parseAdditiveExpression;extra.parseAssignmentExpression=parseAssignmentExpression;extra.parseBitwiseANDExpression=parseBitwiseANDExpression;extra.parseBitwiseORExpression=parseBitwiseORExpression;extra.parseBitwiseXORExpression=parseBitwiseXORExpression;extra.parseBlock=parseBlock;extra.parseFunctionSourceElements=parseFunctionSourceElements;extra.parseCatchClause=parseCatchClause;extra.parseComputedMember=parseComputedMember;extra.parseConditionalExpression=parseConditionalExpression;extra.parseConstLetDeclaration=parseConstLetDeclaration;extra.parseEqualityExpression=parseEqualityExpression;extra.parseExpression=parseExpression;extra.parseForVariableDeclaration=parseForVariableDeclaration;extra.parseFunctionDeclaration=parseFunctionDeclaration;extra.parseFunctionExpression=parseFunctionExpression;extra.parseLogicalANDExpression=parseLogicalANDExpression;extra.parseLogicalORExpression=parseLogicalORExpression;extra.parseMultiplicativeExpression=parseMultiplicativeExpression;extra.parseNewExpression=parseNewExpression;extra.parseNonComputedProperty=parseNonComputedProperty;extra.parseObjectProperty=parseObjectProperty;extra.parseObjectPropertyKey=parseObjectPropertyKey;extra.parsePostfixExpression=parsePostfixExpression;extra.parsePrimaryExpression=parsePrimaryExpression;extra.parseProgram=parseProgram;extra.parsePropertyFunction=parsePropertyFunction;
extra.parseRelationalExpression=parseRelationalExpression;extra.parseStatement=parseStatement;extra.parseShiftExpression=parseShiftExpression;extra.parseSwitchCase=parseSwitchCase;extra.parseUnaryExpression=parseUnaryExpression;extra.parseVariableDeclaration=parseVariableDeclaration;extra.parseVariableIdentifier=parseVariableIdentifier;parseAdditiveExpression=wrapTracking(extra.parseAdditiveExpression);parseAssignmentExpression=wrapTracking(extra.parseAssignmentExpression);parseBitwiseANDExpression=wrapTracking(extra.parseBitwiseANDExpression);parseBitwiseORExpression=wrapTracking(extra.parseBitwiseORExpression);parseBitwiseXORExpression=wrapTracking(extra.parseBitwiseXORExpression);parseBlock=wrapTracking(extra.parseBlock);parseFunctionSourceElements=wrapTracking(extra.parseFunctionSourceElements);parseCatchClause=wrapTracking(extra.parseCatchClause);parseComputedMember=wrapTracking(extra.parseComputedMember);parseConditionalExpression=wrapTracking(extra.parseConditionalExpression);parseConstLetDeclaration=wrapTracking(extra.parseConstLetDeclaration);parseEqualityExpression=wrapTracking(extra.parseEqualityExpression);parseExpression=wrapTracking(extra.parseExpression);parseForVariableDeclaration=wrapTracking(extra.parseForVariableDeclaration);parseFunctionDeclaration=wrapTracking(extra.parseFunctionDeclaration);parseFunctionExpression=wrapTracking(extra.parseFunctionExpression);parseLeftHandSideExpression=wrapTracking(parseLeftHandSideExpression);parseLogicalANDExpression=wrapTracking(extra.parseLogicalANDExpression);parseLogicalORExpression=wrapTracking(extra.parseLogicalORExpression);parseMultiplicativeExpression=wrapTracking(extra.parseMultiplicativeExpression);parseNewExpression=wrapTracking(extra.parseNewExpression);parseNonComputedProperty=wrapTracking(extra.parseNonComputedProperty);parseObjectProperty=wrapTracking(extra.parseObjectProperty);parseObjectPropertyKey=wrapTracking(extra.parseObjectPropertyKey);parsePostfixExpression=wrapTracking(extra.parsePostfixExpression);parsePrimaryExpression=wrapTracking(extra.parsePrimaryExpression);parseProgram=wrapTracking(extra.parseProgram);parsePropertyFunction=wrapTracking(extra.parsePropertyFunction);parseRelationalExpression=wrapTracking(extra.parseRelationalExpression);parseStatement=wrapTracking(extra.parseStatement);parseShiftExpression=wrapTracking(extra.parseShiftExpression);parseSwitchCase=wrapTracking(extra.parseSwitchCase);parseUnaryExpression=wrapTracking(extra.parseUnaryExpression);parseVariableDeclaration=wrapTracking(extra.parseVariableDeclaration);parseVariableIdentifier=wrapTracking(extra.parseVariableIdentifier)}if(typeof extra.tokens!=="undefined"){extra.advance=advance;extra.scanRegExp=scanRegExp;advance=collectToken;scanRegExp=collectRegex}}function unpatch(){if(typeof extra.skipComment==="function"){skipComment=extra.skipComment}if(extra.raw){createLiteral=extra.createLiteral}if(extra.range||extra.loc){parseAdditiveExpression=extra.parseAdditiveExpression;parseAssignmentExpression=extra.parseAssignmentExpression;parseBitwiseANDExpression=extra.parseBitwiseANDExpression;parseBitwiseORExpression=extra.parseBitwiseORExpression;parseBitwiseXORExpression=extra.parseBitwiseXORExpression;parseBlock=extra.parseBlock;parseFunctionSourceElements=extra.parseFunctionSourceElements;parseCatchClause=extra.parseCatchClause;parseComputedMember=extra.parseComputedMember;parseConditionalExpression=extra.parseConditionalExpression;parseConstLetDeclaration=extra.parseConstLetDeclaration;parseEqualityExpression=extra.parseEqualityExpression;parseExpression=extra.parseExpression;parseForVariableDeclaration=extra.parseForVariableDeclaration;parseFunctionDeclaration=extra.parseFunctionDeclaration;parseFunctionExpression=extra.parseFunctionExpression;parseGroupExpression=extra.parseGroupExpression;parseLeftHandSideExpression=extra.parseLeftHandSideExpression;parseLeftHandSideExpressionAllowCall=extra.parseLeftHandSideExpressionAllowCall;parseLogicalANDExpression=extra.parseLogicalANDExpression;parseLogicalORExpression=extra.parseLogicalORExpression;parseMultiplicativeExpression=extra.parseMultiplicativeExpression;parseNewExpression=extra.parseNewExpression;parseNonComputedProperty=extra.parseNonComputedProperty;parseObjectProperty=extra.parseObjectProperty;parseObjectPropertyKey=extra.parseObjectPropertyKey;parsePrimaryExpression=extra.parsePrimaryExpression;parsePostfixExpression=extra.parsePostfixExpression;parseProgram=extra.parseProgram;parsePropertyFunction=extra.parsePropertyFunction;parseRelationalExpression=extra.parseRelationalExpression;parseStatement=extra.parseStatement;parseShiftExpression=extra.parseShiftExpression;parseSwitchCase=extra.parseSwitchCase;parseUnaryExpression=extra.parseUnaryExpression;parseVariableDeclaration=extra.parseVariableDeclaration;parseVariableIdentifier=extra.parseVariableIdentifier}if(typeof extra.scanRegExp==="function"){advance=extra.advance;scanRegExp=extra.scanRegExp}}function stringToArray(str){var length=str.length,result=[],i;for(i=0;i<length;++i){result[i]=str.charAt(i)}return result}function parse(code,options){var program,toString;toString=String;if(typeof code!=="string"&&!(code instanceof String)){code=toString(code)}source=code;index=0;lineNumber=source.length>0?1:0;lineStart=0;length=source.length;buffer=null;state={allowIn:true,labelSet:{},inFunctionBody:false,inIteration:false,inSwitch:false};extra={};if(typeof options!=="undefined"){extra.range=typeof options.range==="boolean"&&options.range;extra.loc=typeof options.loc==="boolean"&&options.loc;extra.raw=typeof options.raw==="boolean"&&options.raw;if(typeof options.tokens==="boolean"&&options.tokens){extra.tokens=[]}if(typeof options.comment==="boolean"&&options.comment){extra.comments=[]}if(typeof options.tolerant==="boolean"&&options.tolerant){extra.errors=[]}}if(length>0){if(typeof source[0]==="undefined"){if(code instanceof String){source=code.valueOf()}if(typeof source[0]==="undefined"){source=stringToArray(code)}}}patch();try{program=parseProgram();if(typeof extra.comments!=="undefined"){filterCommentLocation();program.comments=extra.comments}if(typeof extra.tokens!=="undefined"){filterTokenLocation();program.tokens=extra.tokens}if(typeof extra.errors!=="undefined"){program.errors=extra.errors}if(extra.range||extra.loc){program.body=filterGroup(program.body)}}catch(e){throw e}finally{unpatch();extra={}}return program}exports.version="1.0.2";exports.parse=parse;exports.Syntax=function(){var name,types={};if(typeof Object.create==="function"){types=Object.create(null)}for(name in Syntax){if(Syntax.hasOwnProperty(name)){types[name]=Syntax[name]}}if(typeof Object.freeze==="function"){Object.freeze(types)}return types}()})})()},{}]},{},[]);return require("./index")}();